@fluentui/react-popover 9.0.0-alpha.8 → 9.0.0-nightly.f81b28ceb3.1
Sign up to get free protection for your applications and to get access to all the features.
- package/CHANGELOG.json +1800 -1
- package/CHANGELOG.md +566 -2
- package/Spec.md +6 -6
- package/dist/react-popover.d.ts +59 -77
- package/lib/Popover.js.map +1 -1
- package/lib/PopoverSurface.js.map +1 -1
- package/lib/PopoverTrigger.js.map +1 -1
- package/lib/common/isConformant.d.ts +1 -1
- package/lib/common/isConformant.js +9 -5
- package/lib/common/isConformant.js.map +1 -1
- package/lib/common/mockUsePopoverContext.d.ts +1 -1
- package/lib/common/mockUsePopoverContext.js +28 -6
- package/lib/common/mockUsePopoverContext.js.map +1 -1
- package/lib/components/Popover/Popover.d.ts +2 -2
- package/lib/components/Popover/Popover.js +4 -3
- package/lib/components/Popover/Popover.js.map +1 -1
- package/lib/components/Popover/Popover.types.d.ts +24 -33
- package/lib/components/Popover/Popover.types.js.map +1 -1
- package/lib/components/Popover/index.js.map +1 -1
- package/lib/components/Popover/renderPopover.d.ts +1 -1
- package/lib/components/Popover/renderPopover.js +29 -17
- package/lib/components/Popover/renderPopover.js.map +1 -1
- package/lib/components/Popover/usePopover.d.ts +2 -3
- package/lib/components/Popover/usePopover.js +110 -88
- package/lib/components/Popover/usePopover.js.map +1 -1
- package/lib/components/PopoverSurface/PopoverSurface.d.ts +3 -3
- package/lib/components/PopoverSurface/PopoverSurface.js +5 -4
- package/lib/components/PopoverSurface/PopoverSurface.js.map +1 -1
- package/lib/components/PopoverSurface/PopoverSurface.types.d.ts +9 -18
- package/lib/components/PopoverSurface/PopoverSurface.types.js.map +1 -1
- package/lib/components/PopoverSurface/index.js.map +1 -1
- package/lib/components/PopoverSurface/renderPopoverSurface.d.ts +1 -1
- package/lib/components/PopoverSurface/renderPopoverSurface.js +18 -10
- package/lib/components/PopoverSurface/renderPopoverSurface.js.map +1 -1
- package/lib/components/PopoverSurface/usePopoverSurface.d.ts +4 -4
- package/lib/components/PopoverSurface/usePopoverSurface.js +94 -54
- package/lib/components/PopoverSurface/usePopoverSurface.js.map +1 -1
- package/lib/components/PopoverSurface/usePopoverSurfaceStyles.d.ts +2 -2
- package/lib/components/PopoverSurface/usePopoverSurfaceStyles.js +88 -64
- package/lib/components/PopoverSurface/usePopoverSurfaceStyles.js.map +1 -1
- package/lib/components/PopoverTrigger/PopoverTrigger.d.ts +2 -2
- package/lib/components/PopoverTrigger/PopoverTrigger.js +4 -3
- package/lib/components/PopoverTrigger/PopoverTrigger.js.map +1 -1
- package/lib/components/PopoverTrigger/PopoverTrigger.types.d.ts +3 -4
- package/lib/components/PopoverTrigger/PopoverTrigger.types.js.map +1 -1
- package/lib/components/PopoverTrigger/index.js.map +1 -1
- package/lib/components/PopoverTrigger/renderPopoverTrigger.d.ts +1 -1
- package/lib/components/PopoverTrigger/renderPopoverTrigger.js +1 -1
- package/lib/components/PopoverTrigger/renderPopoverTrigger.js.map +1 -1
- package/lib/components/PopoverTrigger/usePopoverTrigger.d.ts +2 -3
- package/lib/components/PopoverTrigger/usePopoverTrigger.js +83 -60
- package/lib/components/PopoverTrigger/usePopoverTrigger.js.map +1 -1
- package/lib/index.js.map +1 -1
- package/lib/popoverContext.d.ts +4 -5
- package/lib/popoverContext.js +19 -12
- package/lib/popoverContext.js.map +1 -1
- package/lib/tsdoc-metadata.json +1 -1
- package/lib-commonjs/Popover.js +7 -2
- package/lib-commonjs/Popover.js.map +1 -1
- package/lib-commonjs/PopoverSurface.js +7 -2
- package/lib-commonjs/PopoverSurface.js.map +1 -1
- package/lib-commonjs/PopoverTrigger.js +7 -2
- package/lib-commonjs/PopoverTrigger.js.map +1 -1
- package/lib-commonjs/common/isConformant.d.ts +1 -1
- package/lib-commonjs/common/isConformant.js +18 -7
- package/lib-commonjs/common/isConformant.js.map +1 -1
- package/lib-commonjs/common/mockUsePopoverContext.d.ts +1 -1
- package/lib-commonjs/common/mockUsePopoverContext.js +38 -9
- package/lib-commonjs/common/mockUsePopoverContext.js.map +1 -1
- package/lib-commonjs/components/Popover/Popover.d.ts +2 -2
- package/lib-commonjs/components/Popover/Popover.js +14 -6
- package/lib-commonjs/components/Popover/Popover.js.map +1 -1
- package/lib-commonjs/components/Popover/Popover.types.d.ts +24 -33
- package/lib-commonjs/components/Popover/Popover.types.js +4 -1
- package/lib-commonjs/components/Popover/Popover.types.js.map +1 -1
- package/lib-commonjs/components/Popover/index.js +10 -2
- package/lib-commonjs/components/Popover/index.js.map +1 -1
- package/lib-commonjs/components/Popover/renderPopover.d.ts +1 -1
- package/lib-commonjs/components/Popover/renderPopover.js +39 -20
- package/lib-commonjs/components/Popover/renderPopover.js.map +1 -1
- package/lib-commonjs/components/Popover/usePopover.d.ts +2 -3
- package/lib-commonjs/components/Popover/usePopover.js +127 -93
- package/lib-commonjs/components/Popover/usePopover.js.map +1 -1
- package/lib-commonjs/components/PopoverSurface/PopoverSurface.d.ts +3 -3
- package/lib-commonjs/components/PopoverSurface/PopoverSurface.js +18 -9
- package/lib-commonjs/components/PopoverSurface/PopoverSurface.js.map +1 -1
- package/lib-commonjs/components/PopoverSurface/PopoverSurface.types.d.ts +9 -18
- package/lib-commonjs/components/PopoverSurface/PopoverSurface.types.js +4 -1
- package/lib-commonjs/components/PopoverSurface/PopoverSurface.types.js.map +1 -1
- package/lib-commonjs/components/PopoverSurface/index.js +11 -2
- package/lib-commonjs/components/PopoverSurface/index.js.map +1 -1
- package/lib-commonjs/components/PopoverSurface/renderPopoverSurface.d.ts +1 -1
- package/lib-commonjs/components/PopoverSurface/renderPopoverSurface.js +32 -14
- package/lib-commonjs/components/PopoverSurface/renderPopoverSurface.js.map +1 -1
- package/lib-commonjs/components/PopoverSurface/usePopoverSurface.d.ts +4 -4
- package/lib-commonjs/components/PopoverSurface/usePopoverSurface.js +110 -60
- package/lib-commonjs/components/PopoverSurface/usePopoverSurface.js.map +1 -1
- package/lib-commonjs/components/PopoverSurface/usePopoverSurfaceStyles.d.ts +2 -2
- package/lib-commonjs/components/PopoverSurface/usePopoverSurfaceStyles.js +95 -65
- package/lib-commonjs/components/PopoverSurface/usePopoverSurfaceStyles.js.map +1 -1
- package/lib-commonjs/components/PopoverTrigger/PopoverTrigger.d.ts +2 -2
- package/lib-commonjs/components/PopoverTrigger/PopoverTrigger.js +14 -6
- package/lib-commonjs/components/PopoverTrigger/PopoverTrigger.js.map +1 -1
- package/lib-commonjs/components/PopoverTrigger/PopoverTrigger.types.d.ts +3 -4
- package/lib-commonjs/components/PopoverTrigger/PopoverTrigger.types.js +4 -1
- package/lib-commonjs/components/PopoverTrigger/PopoverTrigger.types.js.map +1 -1
- package/lib-commonjs/components/PopoverTrigger/index.js +10 -2
- package/lib-commonjs/components/PopoverTrigger/index.js.map +1 -1
- package/lib-commonjs/components/PopoverTrigger/renderPopoverTrigger.d.ts +1 -1
- package/lib-commonjs/components/PopoverTrigger/renderPopoverTrigger.js +7 -2
- package/lib-commonjs/components/PopoverTrigger/renderPopoverTrigger.js.map +1 -1
- package/lib-commonjs/components/PopoverTrigger/usePopoverTrigger.d.ts +2 -3
- package/lib-commonjs/components/PopoverTrigger/usePopoverTrigger.js +98 -65
- package/lib-commonjs/components/PopoverTrigger/usePopoverTrigger.js.map +1 -1
- package/lib-commonjs/index.js +10 -2
- package/lib-commonjs/index.js.map +1 -1
- package/lib-commonjs/popoverContext.d.ts +4 -5
- package/lib-commonjs/popoverContext.js +28 -14
- package/lib-commonjs/popoverContext.js.map +1 -1
- package/package.json +18 -15
- package/.storybook/main.js +0 -11
- package/.storybook/preview.js +0 -4
- package/bundle-size/Popover.fixture.js +0 -7
- package/config/api-extractor.json +0 -3
- package/config/tests.js +0 -7
- package/e2e/Popover.e2e.ts +0 -139
- package/etc/react-popover.api.md +0 -135
- package/just.config.ts +0 -3
- package/lib/Popover.stories.d.ts +0 -62
- package/lib/Popover.stories.js +0 -114
- package/lib/Popover.stories.js.map +0 -1
- package/lib/components/Popover/getOffsetWithArrow.d.ts +0 -7
- package/lib/components/Popover/getOffsetWithArrow.js +0 -34
- package/lib/components/Popover/getOffsetWithArrow.js.map +0 -1
- package/lib-amd/Popover.d.ts +0 -1
- package/lib-amd/Popover.js +0 -6
- package/lib-amd/Popover.js.map +0 -1
- package/lib-amd/Popover.stories.d.ts +0 -62
- package/lib-amd/Popover.stories.js +0 -121
- package/lib-amd/Popover.stories.js.map +0 -1
- package/lib-amd/PopoverSurface.d.ts +0 -1
- package/lib-amd/PopoverSurface.js +0 -6
- package/lib-amd/PopoverSurface.js.map +0 -1
- package/lib-amd/PopoverTrigger.d.ts +0 -1
- package/lib-amd/PopoverTrigger.js +0 -6
- package/lib-amd/PopoverTrigger.js.map +0 -1
- package/lib-amd/common/isConformant.d.ts +0 -4
- package/lib-amd/common/isConformant.js +0 -14
- package/lib-amd/common/isConformant.js.map +0 -1
- package/lib-amd/common/mockUsePopoverContext.d.ts +0 -7
- package/lib-amd/common/mockUsePopoverContext.js +0 -20
- package/lib-amd/common/mockUsePopoverContext.js.map +0 -1
- package/lib-amd/components/Popover/Popover.d.ts +0 -6
- package/lib-amd/components/Popover/Popover.js +0 -15
- package/lib-amd/components/Popover/Popover.js.map +0 -1
- package/lib-amd/components/Popover/Popover.types.d.ts +0 -109
- package/lib-amd/components/Popover/Popover.types.js +0 -5
- package/lib-amd/components/Popover/Popover.types.js.map +0 -1
- package/lib-amd/components/Popover/getOffsetWithArrow.d.ts +0 -7
- package/lib-amd/components/Popover/getOffsetWithArrow.js +0 -40
- package/lib-amd/components/Popover/getOffsetWithArrow.js.map +0 -1
- package/lib-amd/components/Popover/index.d.ts +0 -4
- package/lib-amd/components/Popover/index.js +0 -9
- package/lib-amd/components/Popover/index.js.map +0 -1
- package/lib-amd/components/Popover/renderPopover.d.ts +0 -5
- package/lib-amd/components/Popover/renderPopover.js +0 -29
- package/lib-amd/components/Popover/renderPopover.js.map +0 -1
- package/lib-amd/components/Popover/usePopover.d.ts +0 -11
- package/lib-amd/components/Popover/usePopover.js +0 -112
- package/lib-amd/components/Popover/usePopover.js.map +0 -1
- package/lib-amd/components/PopoverSurface/PopoverSurface.d.ts +0 -6
- package/lib-amd/components/PopoverSurface/PopoverSurface.js +0 -15
- package/lib-amd/components/PopoverSurface/PopoverSurface.js.map +0 -1
- package/lib-amd/components/PopoverSurface/PopoverSurface.types.d.ts +0 -30
- package/lib-amd/components/PopoverSurface/PopoverSurface.types.js +0 -5
- package/lib-amd/components/PopoverSurface/PopoverSurface.types.js.map +0 -1
- package/lib-amd/components/PopoverSurface/index.d.ts +0 -5
- package/lib-amd/components/PopoverSurface/index.js +0 -10
- package/lib-amd/components/PopoverSurface/index.js.map +0 -1
- package/lib-amd/components/PopoverSurface/renderPopoverSurface.d.ts +0 -5
- package/lib-amd/components/PopoverSurface/renderPopoverSurface.js +0 -21
- package/lib-amd/components/PopoverSurface/renderPopoverSurface.js.map +0 -1
- package/lib-amd/components/PopoverSurface/usePopoverSurface.d.ts +0 -13
- package/lib-amd/components/PopoverSurface/usePopoverSurface.js +0 -69
- package/lib-amd/components/PopoverSurface/usePopoverSurface.js.map +0 -1
- package/lib-amd/components/PopoverSurface/usePopoverSurfaceStyles.d.ts +0 -7
- package/lib-amd/components/PopoverSurface/usePopoverSurfaceStyles.js +0 -81
- package/lib-amd/components/PopoverSurface/usePopoverSurfaceStyles.js.map +0 -1
- package/lib-amd/components/PopoverTrigger/PopoverTrigger.d.ts +0 -6
- package/lib-amd/components/PopoverTrigger/PopoverTrigger.js +0 -15
- package/lib-amd/components/PopoverTrigger/PopoverTrigger.js.map +0 -1
- package/lib-amd/components/PopoverTrigger/PopoverTrigger.types.d.ts +0 -12
- package/lib-amd/components/PopoverTrigger/PopoverTrigger.types.js +0 -5
- package/lib-amd/components/PopoverTrigger/PopoverTrigger.types.js.map +0 -1
- package/lib-amd/components/PopoverTrigger/index.d.ts +0 -4
- package/lib-amd/components/PopoverTrigger/index.js +0 -9
- package/lib-amd/components/PopoverTrigger/index.js.map +0 -1
- package/lib-amd/components/PopoverTrigger/renderPopoverTrigger.d.ts +0 -5
- package/lib-amd/components/PopoverTrigger/renderPopoverTrigger.js +0 -13
- package/lib-amd/components/PopoverTrigger/renderPopoverTrigger.js.map +0 -1
- package/lib-amd/components/PopoverTrigger/usePopoverTrigger.d.ts +0 -11
- package/lib-amd/components/PopoverTrigger/usePopoverTrigger.js +0 -75
- package/lib-amd/components/PopoverTrigger/usePopoverTrigger.js.map +0 -1
- package/lib-amd/index.d.ts +0 -4
- package/lib-amd/index.js +0 -9
- package/lib-amd/index.js.map +0 -1
- package/lib-amd/popoverContext.d.ts +0 -9
- package/lib-amd/popoverContext.js +0 -22
- package/lib-amd/popoverContext.js.map +0 -1
- package/lib-commonjs/Popover.stories.d.ts +0 -62
- package/lib-commonjs/Popover.stories.js +0 -122
- package/lib-commonjs/Popover.stories.js.map +0 -1
- package/lib-commonjs/components/Popover/getOffsetWithArrow.d.ts +0 -7
- package/lib-commonjs/components/Popover/getOffsetWithArrow.js +0 -38
- package/lib-commonjs/components/Popover/getOffsetWithArrow.js.map +0 -1
- package/src/components/Popover/Popover.types.ts +0 -124
- package/src/components/PopoverSurface/PopoverSurface.types.ts +0 -36
- package/src/components/PopoverTrigger/PopoverTrigger.types.ts +0 -13
@@ -1,122 +0,0 @@
|
|
1
|
-
"use strict";
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
-
exports.NestedPopovers = exports.WithCustomTrigger = exports.Controlled = exports.AnchorToTarget = exports.Default = void 0;
|
4
|
-
var tslib_1 = require("tslib");
|
5
|
-
var React = require("react");
|
6
|
-
var index_1 = require("./index");
|
7
|
-
var ExampleContent = function () {
|
8
|
-
return (React.createElement("div", null,
|
9
|
-
React.createElement("h3", null, "Popover content"),
|
10
|
-
React.createElement("div", null, "This is some popover content")));
|
11
|
-
};
|
12
|
-
var Default = function (props) { return (React.createElement(index_1.Popover, tslib_1.__assign({}, props),
|
13
|
-
React.createElement(index_1.PopoverTrigger, null,
|
14
|
-
React.createElement("button", null, "Popover trigger")),
|
15
|
-
React.createElement(index_1.PopoverSurface, null,
|
16
|
-
React.createElement(ExampleContent, null),
|
17
|
-
React.createElement("div", null,
|
18
|
-
React.createElement("button", null, "Action"),
|
19
|
-
React.createElement("button", null, "Action"))))); };
|
20
|
-
exports.Default = Default;
|
21
|
-
exports.Default.argTypes = {
|
22
|
-
open: {
|
23
|
-
defaultValue: false,
|
24
|
-
control: 'boolean',
|
25
|
-
},
|
26
|
-
openOnContext: {
|
27
|
-
defaultValue: false,
|
28
|
-
control: 'boolean',
|
29
|
-
},
|
30
|
-
openOnHover: {
|
31
|
-
defaultValue: false,
|
32
|
-
control: 'boolean',
|
33
|
-
},
|
34
|
-
position: {
|
35
|
-
type: { name: 'string', required: false },
|
36
|
-
control: {
|
37
|
-
type: 'select',
|
38
|
-
options: ['above', 'below', 'before', 'after'],
|
39
|
-
},
|
40
|
-
},
|
41
|
-
align: {
|
42
|
-
type: { name: 'string', required: false },
|
43
|
-
control: {
|
44
|
-
type: 'select',
|
45
|
-
options: ['top', 'bottom', 'start', 'end', 'center'],
|
46
|
-
},
|
47
|
-
},
|
48
|
-
size: {
|
49
|
-
type: { name: 'string', required: false },
|
50
|
-
control: {
|
51
|
-
type: 'select',
|
52
|
-
options: ['small', 'medium', 'large'],
|
53
|
-
},
|
54
|
-
},
|
55
|
-
trapFocus: {
|
56
|
-
defaultValue: true,
|
57
|
-
control: 'boolean',
|
58
|
-
},
|
59
|
-
};
|
60
|
-
var AnchorToTarget = function () {
|
61
|
-
var _a = React.useState(), target = _a[0], setTarget = _a[1];
|
62
|
-
return (React.createElement(React.Fragment, null,
|
63
|
-
React.createElement("div", null,
|
64
|
-
React.createElement(index_1.Popover, { target: target },
|
65
|
-
React.createElement(index_1.PopoverTrigger, null,
|
66
|
-
React.createElement("button", null, "Popover trigger")),
|
67
|
-
React.createElement(index_1.PopoverSurface, null,
|
68
|
-
React.createElement(ExampleContent, null)))),
|
69
|
-
React.createElement("button", { ref: setTarget }, "Custom target")));
|
70
|
-
};
|
71
|
-
exports.AnchorToTarget = AnchorToTarget;
|
72
|
-
var Controlled = function () {
|
73
|
-
var _a = React.useState(false), open = _a[0], setOpen = _a[1];
|
74
|
-
var onOpenChange = function (_, data) { return setOpen(data.open || false); };
|
75
|
-
return (React.createElement(index_1.Popover, { open: open, onOpenChange: onOpenChange },
|
76
|
-
React.createElement(index_1.PopoverTrigger, null,
|
77
|
-
React.createElement("button", null, "Controlled trigger")),
|
78
|
-
React.createElement(index_1.PopoverSurface, null,
|
79
|
-
React.createElement(ExampleContent, null))));
|
80
|
-
};
|
81
|
-
exports.Controlled = Controlled;
|
82
|
-
var WithCustomTrigger = function () {
|
83
|
-
var _a = React.useState(false), open = _a[0], setOpen = _a[1];
|
84
|
-
var _b = React.useState(null), target = _b[0], setTarget = _b[1];
|
85
|
-
var onClick = function () { return setOpen(function (s) { return !s; }); };
|
86
|
-
var onOpenChange = function (_, data) { return setOpen(data.open || false); };
|
87
|
-
return (React.createElement(React.Fragment, null,
|
88
|
-
React.createElement("button", { "aria-haspopup": true, ref: setTarget, onClick: onClick }, "Custom trigger"),
|
89
|
-
React.createElement(index_1.Popover, { target: target, open: open, onOpenChange: onOpenChange },
|
90
|
-
React.createElement(index_1.PopoverSurface, null,
|
91
|
-
React.createElement(ExampleContent, null)))));
|
92
|
-
};
|
93
|
-
exports.WithCustomTrigger = WithCustomTrigger;
|
94
|
-
var FirstNestedPopover = function () { return (React.createElement(index_1.Popover, { trapFocus: true },
|
95
|
-
React.createElement(index_1.PopoverTrigger, null,
|
96
|
-
React.createElement("button", null, "First nested trigger")),
|
97
|
-
React.createElement(index_1.PopoverSurface, null,
|
98
|
-
React.createElement(ExampleContent, null),
|
99
|
-
React.createElement("button", null, "First nested button"),
|
100
|
-
React.createElement(SecondNestedPopover, null),
|
101
|
-
React.createElement(SecondNestedPopover, null)))); };
|
102
|
-
var SecondNestedPopover = function () { return (React.createElement(index_1.Popover, { trapFocus: true },
|
103
|
-
React.createElement(index_1.PopoverTrigger, null,
|
104
|
-
React.createElement("button", null, "Second nested trigger")),
|
105
|
-
React.createElement(index_1.PopoverSurface, null,
|
106
|
-
React.createElement(ExampleContent, null),
|
107
|
-
React.createElement("button", null, "Second nested button")))); };
|
108
|
-
var NestedPopovers = function () {
|
109
|
-
return (React.createElement(index_1.Popover, { trapFocus: true },
|
110
|
-
React.createElement(index_1.PopoverTrigger, null,
|
111
|
-
React.createElement("button", null, "Root trigger")),
|
112
|
-
React.createElement(index_1.PopoverSurface, null,
|
113
|
-
React.createElement(ExampleContent, null),
|
114
|
-
React.createElement("button", null, "Root button"),
|
115
|
-
React.createElement(FirstNestedPopover, null))));
|
116
|
-
};
|
117
|
-
exports.NestedPopovers = NestedPopovers;
|
118
|
-
exports.default = {
|
119
|
-
title: 'Components/Popover',
|
120
|
-
component: index_1.Popover,
|
121
|
-
};
|
122
|
-
//# sourceMappingURL=Popover.stories.js.map
|
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"file":"Popover.stories.js","sourceRoot":"../src/","sources":["Popover.stories.tsx"],"names":[],"mappings":"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","sourcesContent":["import * as React from 'react';\nimport { Popover, PopoverTrigger, PopoverSurface, PopoverProps } from './index';\n\nconst ExampleContent = () => {\n return (\n <div>\n <h3>Popover content</h3>\n\n <div>This is some popover content</div>\n </div>\n );\n};\n\nexport const Default = (props: PopoverProps) => (\n <Popover {...props}>\n <PopoverTrigger>\n <button>Popover trigger</button>\n </PopoverTrigger>\n\n <PopoverSurface>\n <ExampleContent />\n\n <div>\n <button>Action</button>\n <button>Action</button>\n </div>\n </PopoverSurface>\n </Popover>\n);\n\nDefault.argTypes = {\n open: {\n defaultValue: false,\n control: 'boolean',\n },\n\n openOnContext: {\n defaultValue: false,\n control: 'boolean',\n },\n\n openOnHover: {\n defaultValue: false,\n control: 'boolean',\n },\n\n position: {\n type: { name: 'string', required: false },\n control: {\n type: 'select',\n options: ['above', 'below', 'before', 'after'],\n },\n },\n\n align: {\n type: { name: 'string', required: false },\n control: {\n type: 'select',\n options: ['top', 'bottom', 'start', 'end', 'center'],\n },\n },\n\n size: {\n type: { name: 'string', required: false },\n control: {\n type: 'select',\n options: ['small', 'medium', 'large'],\n },\n },\n\n trapFocus: {\n defaultValue: true,\n control: 'boolean',\n },\n};\n\nexport const AnchorToTarget = () => {\n const [target, setTarget] = React.useState<HTMLButtonElement | null>();\n\n return (\n <>\n <div>\n <Popover target={target}>\n <PopoverTrigger>\n <button>Popover trigger</button>\n </PopoverTrigger>\n\n <PopoverSurface>\n <ExampleContent />\n </PopoverSurface>\n </Popover>\n </div>\n\n <button ref={setTarget}>Custom target</button>\n </>\n );\n};\n\nexport const Controlled = () => {\n const [open, setOpen] = React.useState(false);\n const onOpenChange: PopoverProps['onOpenChange'] = (_, data) => setOpen(data.open || false);\n\n return (\n <Popover open={open} onOpenChange={onOpenChange}>\n <PopoverTrigger>\n <button>Controlled trigger</button>\n </PopoverTrigger>\n <PopoverSurface>\n <ExampleContent />\n </PopoverSurface>\n </Popover>\n );\n};\n\nexport const WithCustomTrigger = () => {\n const [open, setOpen] = React.useState(false);\n const [target, setTarget] = React.useState<HTMLElement | null>(null);\n const onClick = () => setOpen(s => !s);\n const onOpenChange: PopoverProps['onOpenChange'] = (_, data) => setOpen(data.open || false);\n\n return (\n <>\n <button aria-haspopup ref={setTarget} onClick={onClick}>\n Custom trigger\n </button>\n <Popover target={target} open={open} onOpenChange={onOpenChange}>\n <PopoverSurface>\n <ExampleContent />\n </PopoverSurface>\n </Popover>\n </>\n );\n};\n\nconst FirstNestedPopover = () => (\n <Popover trapFocus>\n <PopoverTrigger>\n <button>First nested trigger</button>\n </PopoverTrigger>\n\n <PopoverSurface>\n <ExampleContent />\n <button>First nested button</button>\n <SecondNestedPopover />\n <SecondNestedPopover />\n </PopoverSurface>\n </Popover>\n);\n\nconst SecondNestedPopover = () => (\n <Popover trapFocus>\n <PopoverTrigger>\n <button>Second nested trigger</button>\n </PopoverTrigger>\n\n <PopoverSurface>\n <ExampleContent />\n <button>Second nested button</button>\n </PopoverSurface>\n </Popover>\n);\n\nexport const NestedPopovers = () => {\n return (\n <Popover trapFocus>\n <PopoverTrigger>\n <button>Root trigger</button>\n </PopoverTrigger>\n\n <PopoverSurface>\n <ExampleContent />\n <button>Root button</button>\n <FirstNestedPopover />\n </PopoverSurface>\n </Popover>\n );\n};\n\nexport default {\n title: 'Components/Popover',\n component: Popover,\n};\n"]}
|
@@ -1,7 +0,0 @@
|
|
1
|
-
import { Offset } from '@fluentui/react-positioning';
|
2
|
-
/**
|
3
|
-
* @param userOffset - The offset provided by the user
|
4
|
-
* @param arrowHeight - The height of the arrow in px
|
5
|
-
* @returns User offset augmented with arrow height
|
6
|
-
*/
|
7
|
-
export declare function getOffsetWithArrow(userOffset: Offset | undefined | null, arrowHeight: number): Offset;
|
@@ -1,38 +0,0 @@
|
|
1
|
-
"use strict";
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
-
exports.getOffsetWithArrow = void 0;
|
4
|
-
/**
|
5
|
-
* @param userOffset - The offset provided by the user
|
6
|
-
* @param arrowHeight - The height of the arrow in px
|
7
|
-
* @returns User offset augmented with arrow height
|
8
|
-
*/
|
9
|
-
function getOffsetWithArrow(userOffset, arrowHeight) {
|
10
|
-
var offsetWithArrow = userOffset;
|
11
|
-
if (!userOffset) {
|
12
|
-
return [0, arrowHeight];
|
13
|
-
}
|
14
|
-
if (Array.isArray(offsetWithArrow)) {
|
15
|
-
setArrowOffset(offsetWithArrow, arrowHeight);
|
16
|
-
return offsetWithArrow;
|
17
|
-
}
|
18
|
-
if (typeof offsetWithArrow === 'function') {
|
19
|
-
var userOffsetFn_1 = offsetWithArrow;
|
20
|
-
offsetWithArrow = function (offsetParams) {
|
21
|
-
var offset = userOffsetFn_1(offsetParams);
|
22
|
-
setArrowOffset(offset, arrowHeight);
|
23
|
-
return offset;
|
24
|
-
};
|
25
|
-
}
|
26
|
-
// This should never happen
|
27
|
-
return [0, 0];
|
28
|
-
}
|
29
|
-
exports.getOffsetWithArrow = getOffsetWithArrow;
|
30
|
-
var setArrowOffset = function (offset, arrowHeight) {
|
31
|
-
if (offset[1] !== null && offset[1] !== undefined) {
|
32
|
-
offset[1] += arrowHeight;
|
33
|
-
}
|
34
|
-
else {
|
35
|
-
offset[1] = arrowHeight;
|
36
|
-
}
|
37
|
-
};
|
38
|
-
//# sourceMappingURL=getOffsetWithArrow.js.map
|
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"file":"getOffsetWithArrow.js","sourceRoot":"../src/","sources":["components/Popover/getOffsetWithArrow.ts"],"names":[],"mappings":";;;AAEA;;;;GAIG;AACH,SAAgB,kBAAkB,CAAC,UAAqC,EAAE,WAAmB;IAC3F,IAAI,eAAe,GAAG,UAAU,CAAC;IACjC,IAAI,CAAC,UAAU,EAAE;QACf,OAAO,CAAC,CAAC,EAAE,WAAW,CAAC,CAAC;KACzB;IAED,IAAI,KAAK,CAAC,OAAO,CAAC,eAAe,CAAC,EAAE;QAClC,cAAc,CAAC,eAAe,EAAE,WAAW,CAAC,CAAC;QAC7C,OAAO,eAAe,CAAC;KACxB;IAED,IAAI,OAAO,eAAe,KAAK,UAAU,EAAE;QACzC,IAAM,cAAY,GAAG,eAAe,CAAC;QACrC,eAAe,GAAG,UAAA,YAAY;YAC5B,IAAM,MAAM,GAAG,cAAY,CAAC,YAAY,CAAC,CAAC;YAC1C,cAAc,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;YACpC,OAAO,MAAM,CAAC;QAChB,CAAC,CAAC;KACH;IAED,2BAA2B;IAC3B,OAAO,CAAC,CAAC,EAAE,CAAC,CAAU,CAAC;AACzB,CAAC;AAtBD,gDAsBC;AAED,IAAM,cAAc,GAAG,UAAC,MAA8D,EAAE,WAAmB;IACzG,IAAI,MAAM,CAAC,CAAC,CAAC,KAAK,IAAI,IAAI,MAAM,CAAC,CAAC,CAAC,KAAK,SAAS,EAAE;QACjD,MAAM,CAAC,CAAC,CAAC,IAAI,WAAW,CAAC;KAC1B;SAAM;QACL,MAAM,CAAC,CAAC,CAAC,GAAG,WAAW,CAAC;KACzB;AACH,CAAC,CAAC","sourcesContent":["import { Offset } from '@fluentui/react-positioning';\n\n/**\n * @param userOffset - The offset provided by the user\n * @param arrowHeight - The height of the arrow in px\n * @returns User offset augmented with arrow height\n */\nexport function getOffsetWithArrow(userOffset: Offset | undefined | null, arrowHeight: number): Offset {\n let offsetWithArrow = userOffset;\n if (!userOffset) {\n return [0, arrowHeight];\n }\n\n if (Array.isArray(offsetWithArrow)) {\n setArrowOffset(offsetWithArrow, arrowHeight);\n return offsetWithArrow;\n }\n\n if (typeof offsetWithArrow === 'function') {\n const userOffsetFn = offsetWithArrow;\n offsetWithArrow = offsetParams => {\n const offset = userOffsetFn(offsetParams);\n setArrowOffset(offset, arrowHeight);\n return offset;\n };\n }\n\n // This should never happen\n return [0, 0] as never;\n}\n\nconst setArrowOffset = (offset: [number | null | undefined, number | null | undefined], arrowHeight: number) => {\n if (offset[1] !== null && offset[1] !== undefined) {\n offset[1] += arrowHeight;\n } else {\n offset[1] = arrowHeight;\n }\n};\n"]}
|
@@ -1,124 +0,0 @@
|
|
1
|
-
import * as React from 'react';
|
2
|
-
import { PopperOptions, PopperVirtualElement } from '@fluentui/react-positioning';
|
3
|
-
import { PortalProps } from '@fluentui/react-portal';
|
4
|
-
import { ComponentState } from '@fluentui/react-utilities';
|
5
|
-
|
6
|
-
/**
|
7
|
-
* Determines popover padding and arrow size
|
8
|
-
*/
|
9
|
-
export type PopoverSize = 'small' | 'medium' | 'large';
|
10
|
-
|
11
|
-
/**
|
12
|
-
* Popover Props
|
13
|
-
*/
|
14
|
-
export interface PopoverProps
|
15
|
-
extends Pick<PopperOptions, 'position' | 'align' | 'offset' | 'coverTarget' | 'target'>,
|
16
|
-
Pick<PortalProps, 'mountNode'> {
|
17
|
-
children: React.ReactNode;
|
18
|
-
/**
|
19
|
-
* Controls the opening of the Popover
|
20
|
-
*/
|
21
|
-
open?: boolean;
|
22
|
-
/**
|
23
|
-
* Used to set the initial open state of the Popover in uncontrolled mode
|
24
|
-
*/
|
25
|
-
defaultOpen?: boolean;
|
26
|
-
/**
|
27
|
-
* Call back when the component requests to change value
|
28
|
-
* The `open` value is used as a hint when directly controlling the component
|
29
|
-
*/
|
30
|
-
onOpenChange?: (e: OpenPopoverEvents, data: OnOpenChangeData) => void;
|
31
|
-
/**
|
32
|
-
* Flag to open the Popover by hovering the trigger
|
33
|
-
*/
|
34
|
-
openOnHover?: boolean;
|
35
|
-
/**
|
36
|
-
* Flag to open the Popover as a context menu. Disables all other interactions
|
37
|
-
*/
|
38
|
-
openOnContext?: boolean;
|
39
|
-
/**
|
40
|
-
* Do not display the arrow
|
41
|
-
*/
|
42
|
-
noArrow?: boolean;
|
43
|
-
/**
|
44
|
-
* Determines popover padding and arrow size
|
45
|
-
* @default medium
|
46
|
-
*/
|
47
|
-
size?: PopoverSize;
|
48
|
-
/**
|
49
|
-
* Uses brand colour as background
|
50
|
-
* Mutually exclusive with `inverted`
|
51
|
-
*/
|
52
|
-
brand?: boolean;
|
53
|
-
/**
|
54
|
-
* Inverts the foreground/background colour of the popover
|
55
|
-
* Mutually exclusive with `brand`
|
56
|
-
*/
|
57
|
-
inverted?: boolean;
|
58
|
-
|
59
|
-
/**
|
60
|
-
* Should trap focus
|
61
|
-
*/
|
62
|
-
trapFocus?: boolean;
|
63
|
-
}
|
64
|
-
|
65
|
-
/**
|
66
|
-
* Names of the shorthand properties in PopoverProps
|
67
|
-
*/
|
68
|
-
export type PopoverShorthandProps = never;
|
69
|
-
|
70
|
-
/**
|
71
|
-
* Names of PopoverProps that have a default value in usePopover
|
72
|
-
*/
|
73
|
-
export type PopoverDefaultedProps = never;
|
74
|
-
|
75
|
-
/**
|
76
|
-
* Popover State
|
77
|
-
*/
|
78
|
-
export interface PopoverState extends ComponentState<PopoverProps, PopoverShorthandProps, PopoverDefaultedProps> {
|
79
|
-
/**
|
80
|
-
* Open state of the Popover
|
81
|
-
*/
|
82
|
-
open: boolean;
|
83
|
-
/**
|
84
|
-
* Callback to open/close the Popover
|
85
|
-
*/
|
86
|
-
setOpen: (e: OpenPopoverEvents, open: boolean) => void;
|
87
|
-
/**
|
88
|
-
* Ref of the PopoverTrigger
|
89
|
-
*/
|
90
|
-
triggerRef: React.MutableRefObject<HTMLElement | null>;
|
91
|
-
/**
|
92
|
-
* Ref of the PopoverSurface
|
93
|
-
*/
|
94
|
-
contentRef: React.MutableRefObject<HTMLElement | null>;
|
95
|
-
/**
|
96
|
-
* Ref of the pointing arrow
|
97
|
-
*/
|
98
|
-
arrowRef: React.MutableRefObject<HTMLDivElement | null>;
|
99
|
-
/**
|
100
|
-
* Anchors the popper to the mouse click for context events
|
101
|
-
*/
|
102
|
-
contextTarget: PopperVirtualElement | undefined;
|
103
|
-
/**
|
104
|
-
* A callback to set the target of the popper to the mouse click for context events
|
105
|
-
*/
|
106
|
-
setContextTarget: React.Dispatch<PopperVirtualElement | undefined>;
|
107
|
-
|
108
|
-
size: NonNullable<PopoverProps['size']>;
|
109
|
-
}
|
110
|
-
|
111
|
-
/**
|
112
|
-
* Data attached to open/close events
|
113
|
-
*/
|
114
|
-
export interface OnOpenChangeData extends Pick<PopoverState, 'open'> {}
|
115
|
-
|
116
|
-
/**
|
117
|
-
* The supported events that will trigger open/close of the menu
|
118
|
-
*/
|
119
|
-
export type OpenPopoverEvents =
|
120
|
-
| MouseEvent
|
121
|
-
| TouchEvent
|
122
|
-
| React.MouseEvent<HTMLElement>
|
123
|
-
| React.KeyboardEvent<HTMLElement>
|
124
|
-
| React.FocusEvent<HTMLElement>;
|
@@ -1,36 +0,0 @@
|
|
1
|
-
import * as React from 'react';
|
2
|
-
import { ComponentProps, ComponentState } from '@fluentui/react-utilities';
|
3
|
-
import { PopoverContextValue } from '../../popoverContext';
|
4
|
-
|
5
|
-
/**
|
6
|
-
* PopoverSurface Props
|
7
|
-
*/
|
8
|
-
export interface PopoverSurfaceProps extends ComponentProps, React.HTMLAttributes<HTMLElement> {}
|
9
|
-
|
10
|
-
/**
|
11
|
-
* Names of the shorthand properties in PopoverSurfaceProps
|
12
|
-
*/
|
13
|
-
export type PopoverSurfaceShorthandProps = never;
|
14
|
-
|
15
|
-
/**
|
16
|
-
* Names of PopoverSurfaceProps that have a default value in usePopoverSurface
|
17
|
-
*/
|
18
|
-
export type PopoverSurfaceDefaultedProps = never;
|
19
|
-
|
20
|
-
/**
|
21
|
-
* PopoverSurface State
|
22
|
-
*/
|
23
|
-
export interface PopoverSurfaceState
|
24
|
-
extends ComponentState<PopoverSurfaceProps, PopoverSurfaceShorthandProps, PopoverSurfaceDefaultedProps>,
|
25
|
-
Pick<PopoverContextValue, 'open' | 'mountNode' | 'noArrow' | 'size' | 'brand' | 'inverted'> {
|
26
|
-
ref: React.Ref<HTMLElement>;
|
27
|
-
/**
|
28
|
-
* Ref to the arrow element
|
29
|
-
*/
|
30
|
-
arrowRef?: React.Ref<HTMLDivElement>;
|
31
|
-
|
32
|
-
/**
|
33
|
-
* CSS class for the arrow element
|
34
|
-
*/
|
35
|
-
arrowClassName?: string;
|
36
|
-
}
|
@@ -1,13 +0,0 @@
|
|
1
|
-
import * as React from 'react';
|
2
|
-
|
3
|
-
/**
|
4
|
-
* PopoverTrigger Props
|
5
|
-
*/
|
6
|
-
export interface PopoverTriggerProps {
|
7
|
-
children: React.ReactElement;
|
8
|
-
}
|
9
|
-
|
10
|
-
/**
|
11
|
-
* PopoverTrigger State
|
12
|
-
*/
|
13
|
-
export interface PopoverTriggerState extends PopoverTriggerProps {}
|