@elliemae/ds-popover 2.3.0-alpha.6 → 2.3.0-next.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (57) hide show
  1. package/cjs/Arrow.js +63 -0
  2. package/cjs/DSPopover.js +167 -0
  3. package/cjs/Popover.js +66 -0
  4. package/cjs/PopoverTrigger.js +68 -0
  5. package/cjs/index.js +23 -0
  6. package/cjs/usePopover.js +41 -0
  7. package/cjs/usePopoverProviderState.js +75 -0
  8. package/cjs/usePopper.js +123 -0
  9. package/esm/Arrow.js +55 -0
  10. package/esm/DSPopover.js +148 -0
  11. package/esm/Popover.js +57 -0
  12. package/esm/PopoverTrigger.js +58 -0
  13. package/esm/index.js +4 -0
  14. package/esm/usePopover.js +34 -0
  15. package/esm/usePopoverProviderState.js +69 -0
  16. package/esm/usePopper.js +116 -0
  17. package/package.json +35 -37
  18. package/types/Arrow.d.ts +3 -0
  19. package/types/DSPopover.d.ts +150 -0
  20. package/types/Popover.d.ts +13 -0
  21. package/types/PopoverTrigger.d.ts +10 -0
  22. package/types/index.d.ts +2 -0
  23. package/types/usePopover.d.ts +21 -0
  24. package/types/usePopoverProviderState.d.ts +19 -0
  25. package/types/usePopper.d.ts +28 -0
  26. package/dist/cjs/Arrow.js +0 -62
  27. package/dist/cjs/Arrow.js.map +0 -7
  28. package/dist/cjs/DSPopover.js +0 -155
  29. package/dist/cjs/DSPopover.js.map +0 -7
  30. package/dist/cjs/Popover.js +0 -73
  31. package/dist/cjs/Popover.js.map +0 -7
  32. package/dist/cjs/PopoverTrigger.js +0 -72
  33. package/dist/cjs/PopoverTrigger.js.map +0 -7
  34. package/dist/cjs/index.js +0 -36
  35. package/dist/cjs/index.js.map +0 -7
  36. package/dist/cjs/usePopover.js +0 -45
  37. package/dist/cjs/usePopover.js.map +0 -7
  38. package/dist/cjs/usePopoverProviderState.js +0 -85
  39. package/dist/cjs/usePopoverProviderState.js.map +0 -7
  40. package/dist/cjs/usePopper.js +0 -135
  41. package/dist/cjs/usePopper.js.map +0 -7
  42. package/dist/esm/Arrow.js +0 -33
  43. package/dist/esm/Arrow.js.map +0 -7
  44. package/dist/esm/DSPopover.js +0 -126
  45. package/dist/esm/DSPopover.js.map +0 -7
  46. package/dist/esm/Popover.js +0 -44
  47. package/dist/esm/Popover.js.map +0 -7
  48. package/dist/esm/PopoverTrigger.js +0 -43
  49. package/dist/esm/PopoverTrigger.js.map +0 -7
  50. package/dist/esm/index.js +0 -7
  51. package/dist/esm/index.js.map +0 -7
  52. package/dist/esm/usePopover.js +0 -16
  53. package/dist/esm/usePopover.js.map +0 -7
  54. package/dist/esm/usePopoverProviderState.js +0 -56
  55. package/dist/esm/usePopoverProviderState.js.map +0 -7
  56. package/dist/esm/usePopper.js +0 -106
  57. package/dist/esm/usePopper.js.map +0 -7
@@ -0,0 +1,150 @@
1
+ /// <reference path="../../../../shared/typings/react-desc.d.ts" />
2
+ /// <reference types="react" />
3
+ import usePopper from './usePopper';
4
+ import usePopoverProviderState from './usePopoverProviderState';
5
+ export * from '@elliemae/ds-popper';
6
+ export declare const Interaction: {
7
+ CLICK: string;
8
+ HOVER: string;
9
+ };
10
+ declare const DSPopover: {
11
+ ({ containerProps, content, renderer, visible: visibleProp, offset, showArrow, placement, boundaries, modifiers, referenceEl, renderTrigger, onClickOutside, destroyOnHidden, interactionType, isOpen, style, }: {
12
+ containerProps: any;
13
+ content: any;
14
+ renderer: any;
15
+ visible: any;
16
+ offset: any;
17
+ showArrow: any;
18
+ placement: any;
19
+ boundaries: any;
20
+ modifiers: any;
21
+ referenceEl: any;
22
+ renderTrigger: any;
23
+ onClickOutside: any;
24
+ destroyOnHidden: any;
25
+ interactionType: any;
26
+ isOpen: any;
27
+ style: any;
28
+ }): JSX.Element;
29
+ defaultProps: {
30
+ containerProps: {};
31
+ renderer: undefined;
32
+ visible: undefined;
33
+ offset: undefined;
34
+ showArrow: boolean;
35
+ placement: string;
36
+ modifiers: {};
37
+ renderTrigger: () => null;
38
+ onClickOutside: () => null;
39
+ destroyOnHidden: boolean;
40
+ isOpen: undefined;
41
+ };
42
+ propTypes: {
43
+ containerProps: {
44
+ defaultValue(arg: import("react-desc").ReactDescPossibleDefaultValues): {
45
+ deprecated: import("react-desc").PropTypesDescValidator;
46
+ };
47
+ isRequired: import("react-desc").PropTypesDescValue;
48
+ };
49
+ destroyOnHidden: {
50
+ deprecated: import("react-desc").PropTypesDescValidator;
51
+ };
52
+ renderer: {
53
+ defaultValue(arg: import("react-desc").ReactDescPossibleDefaultValues): {
54
+ deprecated: import("react-desc").PropTypesDescValidator;
55
+ };
56
+ isRequired: import("react-desc").PropTypesDescValue;
57
+ };
58
+ popperProps: {
59
+ defaultValue(arg: import("react-desc").ReactDescPossibleDefaultValues): {
60
+ deprecated: import("react-desc").PropTypesDescValidator;
61
+ };
62
+ isRequired: import("react-desc").PropTypesDescValue;
63
+ };
64
+ visible: {
65
+ deprecated: import("react-desc").PropTypesDescValidator;
66
+ };
67
+ content: {
68
+ defaultValue(arg: import("react-desc").ReactDescPossibleDefaultValues): {
69
+ deprecated: import("react-desc").PropTypesDescValidator;
70
+ };
71
+ isRequired: import("react-desc").PropTypesDescValue;
72
+ };
73
+ onClickOutside: {
74
+ defaultValue(arg: import("react-desc").ReactDescPossibleDefaultValues): {
75
+ deprecated: import("react-desc").PropTypesDescValidator;
76
+ };
77
+ isRequired: import("react-desc").PropTypesDescValue;
78
+ };
79
+ interaction: {
80
+ defaultValue(arg: import("react-desc").ReactDescPossibleDefaultValues): {
81
+ deprecated: import("react-desc").PropTypesDescValidator;
82
+ };
83
+ isRequired: import("react-desc").PropTypesDescValue;
84
+ };
85
+ offset: {
86
+ defaultValue(arg: import("react-desc").ReactDescPossibleDefaultValues): {
87
+ deprecated: import("react-desc").PropTypesDescValidator;
88
+ };
89
+ isRequired: import("react-desc").PropTypesDescValue;
90
+ };
91
+ showArrow: {
92
+ defaultValue(arg: import("react-desc").ReactDescPossibleDefaultValues): {
93
+ deprecated: import("react-desc").PropTypesDescValidator;
94
+ };
95
+ isRequired: import("react-desc").PropTypesDescValue;
96
+ };
97
+ placement: {
98
+ defaultValue(arg: import("react-desc").ReactDescPossibleDefaultValues): {
99
+ deprecated: import("react-desc").PropTypesDescValidator;
100
+ };
101
+ isRequired: import("react-desc").PropTypesDescValue;
102
+ };
103
+ boundaries: {
104
+ defaultValue(arg: import("react-desc").ReactDescPossibleDefaultValues): {
105
+ deprecated: import("react-desc").PropTypesDescValidator;
106
+ };
107
+ isRequired: import("react-desc").PropTypesDescValue;
108
+ };
109
+ modifiers: {
110
+ defaultValue(arg: import("react-desc").ReactDescPossibleDefaultValues): {
111
+ deprecated: import("react-desc").PropTypesDescValidator;
112
+ };
113
+ isRequired: import("react-desc").PropTypesDescValue;
114
+ };
115
+ style: {
116
+ defaultValue(arg: import("react-desc").ReactDescPossibleDefaultValues): {
117
+ deprecated: import("react-desc").PropTypesDescValidator;
118
+ };
119
+ isRequired: import("react-desc").PropTypesDescValue;
120
+ };
121
+ referenceEl: {
122
+ defaultValue(arg: import("react-desc").ReactDescPossibleDefaultValues): {
123
+ deprecated: import("react-desc").PropTypesDescValidator;
124
+ };
125
+ isRequired: import("react-desc").PropTypesDescValue;
126
+ };
127
+ renderTrigger: {
128
+ defaultValue(arg: import("react-desc").ReactDescPossibleDefaultValues): {
129
+ deprecated: import("react-desc").PropTypesDescValidator;
130
+ };
131
+ isRequired: import("react-desc").PropTypesDescValue;
132
+ };
133
+ interactionType: {
134
+ defaultValue(arg: import("react-desc").ReactDescPossibleDefaultValues): {
135
+ deprecated: import("react-desc").PropTypesDescValidator;
136
+ };
137
+ isRequired: import("react-desc").PropTypesDescValue;
138
+ };
139
+ isOpen: {
140
+ deprecated: import("react-desc").PropTypesDescValidator;
141
+ };
142
+ };
143
+ };
144
+ declare const PopoverWithSchema: {
145
+ (props?: unknown): JSX.Element;
146
+ propTypes: unknown;
147
+ toTypescript: () => import("react-desc").TypescriptSchema;
148
+ };
149
+ export { DSPopover, usePopper, usePopoverProviderState, PopoverWithSchema };
150
+ export default DSPopover;
@@ -0,0 +1,13 @@
1
+ /// <reference types="react" />
2
+ declare function Popover({ containerProps, destroyOnHidden, renderer, popperProps, visible, content, onClickOutside, style, ...otherProps }: {
3
+ [x: string]: any;
4
+ containerProps: any;
5
+ destroyOnHidden?: boolean | undefined;
6
+ renderer?: undefined;
7
+ popperProps?: {} | undefined;
8
+ visible?: boolean | undefined;
9
+ content?: undefined;
10
+ onClickOutside?: (() => null) | undefined;
11
+ style: any;
12
+ }): false | JSX.Element;
13
+ export default Popover;
@@ -0,0 +1,10 @@
1
+ /// <reference types="react" />
2
+ export declare const Interaction: {
3
+ CLICK: string;
4
+ HOVER: string;
5
+ };
6
+ declare function PopoverTrigger({ as: Component, ...props }: {
7
+ [x: string]: any;
8
+ as: any;
9
+ }): JSX.Element;
10
+ export default PopoverTrigger;
@@ -0,0 +1,2 @@
1
+ export * from './DSPopover';
2
+ export { default } from './DSPopover';
@@ -0,0 +1,21 @@
1
+ /// <reference types="react" />
2
+ declare function usePopover({ ...otherProps }: {
3
+ [x: string]: any;
4
+ }): {
5
+ popperInstance: undefined;
6
+ popperData: {};
7
+ triggerProps: {
8
+ ref: import("react").MutableRefObject<undefined>;
9
+ };
10
+ popoverProps: {
11
+ style: any;
12
+ ref: import("react").Dispatch<import("react").SetStateAction<null>>;
13
+ placement: any;
14
+ 'data-testid': string;
15
+ };
16
+ arrowProps: {
17
+ ref: import("react").MutableRefObject<undefined>;
18
+ style: any;
19
+ };
20
+ };
21
+ export default usePopover;
@@ -0,0 +1,19 @@
1
+ declare function usePopoverProviderState({ initialState, delay, }: {
2
+ initialState?: {
3
+ reference: null;
4
+ visible: boolean;
5
+ value: string;
6
+ options: {};
7
+ } | undefined;
8
+ delay: any;
9
+ }): {
10
+ show: (state: any, e: any) => void;
11
+ hide: (state: any) => void;
12
+ state: {
13
+ reference: null;
14
+ visible: boolean;
15
+ value: string;
16
+ options: {};
17
+ };
18
+ };
19
+ export default usePopoverProviderState;
@@ -0,0 +1,28 @@
1
+ /// <reference types="react" />
2
+ export default function usePopper({ offset, showArrow, placement, isOpen, modifiers, eventsEnabled, positionFixed, boundaries, referenceEl: refEl, }: {
3
+ offset: any;
4
+ showArrow: any;
5
+ placement: any;
6
+ isOpen: any;
7
+ modifiers: any;
8
+ eventsEnabled?: boolean | undefined;
9
+ positionFixed: any;
10
+ boundaries?: string | undefined;
11
+ referenceEl: any;
12
+ }): {
13
+ popperInstance: undefined;
14
+ popper: {
15
+ style: any;
16
+ ref: import("react").Dispatch<import("react").SetStateAction<null>>;
17
+ placement: any;
18
+ 'data-testid': string;
19
+ };
20
+ arrow: {
21
+ ref: import("react").MutableRefObject<undefined>;
22
+ style: any;
23
+ };
24
+ reference: {
25
+ ref: import("react").MutableRefObject<undefined>;
26
+ };
27
+ popperData: {};
28
+ };
package/dist/cjs/Arrow.js DELETED
@@ -1,62 +0,0 @@
1
- var __create = Object.create;
2
- var __defProp = Object.defineProperty;
3
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
- var __getOwnPropNames = Object.getOwnPropertyNames;
5
- var __getProtoOf = Object.getPrototypeOf;
6
- var __hasOwnProp = Object.prototype.hasOwnProperty;
7
- var __markAsModule = (target) => __defProp(target, "__esModule", { value: true });
8
- var __export = (target, all) => {
9
- for (var name in all)
10
- __defProp(target, name, { get: all[name], enumerable: true });
11
- };
12
- var __reExport = (target, module2, copyDefault, desc) => {
13
- if (module2 && typeof module2 === "object" || typeof module2 === "function") {
14
- for (let key of __getOwnPropNames(module2))
15
- if (!__hasOwnProp.call(target, key) && (copyDefault || key !== "default"))
16
- __defProp(target, key, { get: () => module2[key], enumerable: !(desc = __getOwnPropDesc(module2, key)) || desc.enumerable });
17
- }
18
- return target;
19
- };
20
- var __toESM = (module2, isNodeMode) => {
21
- return __reExport(__markAsModule(__defProp(module2 != null ? __create(__getProtoOf(module2)) : {}, "default", !isNodeMode && module2 && module2.__esModule ? { get: () => module2.default, enumerable: true } : { value: module2, enumerable: true })), module2);
22
- };
23
- var __toCommonJS = /* @__PURE__ */ ((cache) => {
24
- return (module2, temp) => {
25
- return cache && cache.get(module2) || (temp = __reExport(__markAsModule({}), module2, 1), cache && cache.set(module2, temp), temp);
26
- };
27
- })(typeof WeakMap !== "undefined" ? /* @__PURE__ */ new WeakMap() : 0);
28
- var Arrow_exports = {};
29
- __export(Arrow_exports, {
30
- default: () => Arrow_default
31
- });
32
- var React = __toESM(require("react"));
33
- var import_react = __toESM(require("react"));
34
- var import_ds_classnames = require("@elliemae/ds-classnames");
35
- var import_ds_popper = require("@elliemae/ds-popper");
36
- const ArrowWrapper = (0, import_ds_classnames.aggregatedClasses)("span")("popover", "arrow");
37
- function Arrow({ style, className, innerRef, blockName = "popover", placement, ...otherProps }) {
38
- return /* @__PURE__ */ import_react.default.createElement(ArrowWrapper, {
39
- className,
40
- "data-placement": placement,
41
- ...otherProps,
42
- innerRef,
43
- style: {
44
- ...style,
45
- ...(0, import_ds_popper.getArrowStylesBySize)(placement, 25)
46
- }
47
- }, /* @__PURE__ */ import_react.default.createElement("svg", {
48
- viewBox: "0 0 30 30"
49
- }, /* @__PURE__ */ import_react.default.createElement("path", {
50
- className: "stroke",
51
- d: "M23.7,27.1L17,19.9C16.5,19.3,15.8,19,15,19s-1.6,0.3-2.1,0.9l-6.6,7.2C5.3,28.1,3.4,29,2,29h26\n C26.7,29,24.6,28.1,23.7,27.1z"
52
- }), /* @__PURE__ */ import_react.default.createElement("path", {
53
- className: "fill",
54
- d: "M23,27.8c1.1,1.2,3.4,2.2,5,2.2h2H0h2c1.7,0,3.9-1,5-2.2l6.6-7.2c0.7-0.8,2-0.8,2.7,0L23,27.8L23,27.8z"
55
- })));
56
- }
57
- var Arrow_default = (0, import_react.forwardRef)((props, ref) => /* @__PURE__ */ import_react.default.createElement(Arrow, {
58
- ...props,
59
- innerRef: ref || props.innerRef
60
- }));
61
- module.exports = __toCommonJS(Arrow_exports);
62
- //# sourceMappingURL=Arrow.js.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../src/Arrow.tsx", "../../../../scripts/build/transpile/react-shim.js"],
4
- "sourcesContent": ["import React, { forwardRef } from 'react';\nimport { aggregatedClasses } from '@elliemae/ds-classnames';\nimport { getArrowStylesBySize } from '@elliemae/ds-popper';\n\nconst ArrowWrapper = aggregatedClasses('span')('popover', 'arrow');\nfunction Arrow({ style, className, innerRef, blockName = 'popover', placement, ...otherProps }) {\n return (\n <ArrowWrapper\n className={className}\n data-placement={placement}\n {...otherProps}\n innerRef={innerRef}\n style={{\n ...style,\n ...getArrowStylesBySize(placement, 25),\n }}\n >\n <svg viewBox=\"0 0 30 30\">\n <path\n className=\"stroke\"\n d=\"M23.7,27.1L17,19.9C16.5,19.3,15.8,19,15,19s-1.6,0.3-2.1,0.9l-6.6,7.2C5.3,28.1,3.4,29,2,29h26\n C26.7,29,24.6,28.1,23.7,27.1z\"\n />\n <path\n className=\"fill\"\n d=\"M23,27.8c1.1,1.2,3.4,2.2,5,2.2h2H0h2c1.7,0,3.9-1,5-2.2l6.6-7.2c0.7-0.8,2-0.8,2.7,0L23,27.8L23,27.8z\"\n />\n </svg>\n </ArrowWrapper>\n );\n}\n\nexport default forwardRef((props, ref) => <Arrow {...props} innerRef={ref || props.innerRef} />);\n", "import * as React from 'react';\nexport { React };\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADAvB,mBAAkC;AAClC,2BAAkC;AAClC,uBAAqC;AAErC,MAAM,eAAe,4CAAkB,QAAQ,WAAW;AAC1D,eAAe,EAAE,OAAO,WAAW,UAAU,YAAY,WAAW,cAAc,cAAc;AAC9F,SACE,mDAAC,cAAD;AAAA,IACE;AAAA,IACA,kBAAgB;AAAA,OACZ;AAAA,IACJ;AAAA,IACA,OAAO;AAAA,SACF;AAAA,SACA,2CAAqB,WAAW;AAAA;AAAA,KAGrC,mDAAC,OAAD;AAAA,IAAK,SAAQ;AAAA,KACX,mDAAC,QAAD;AAAA,IACE,WAAU;AAAA,IACV,GAAE;AAAA,MAGJ,mDAAC,QAAD;AAAA,IACE,WAAU;AAAA,IACV,GAAE;AAAA;AAAA;AAOZ,IAAO,gBAAQ,6BAAW,CAAC,OAAO,QAAQ,mDAAC,OAAD;AAAA,KAAW;AAAA,EAAO,UAAU,OAAO,MAAM;AAAA;",
6
- "names": []
7
- }
@@ -1,155 +0,0 @@
1
- var __create = Object.create;
2
- var __defProp = Object.defineProperty;
3
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
- var __getOwnPropNames = Object.getOwnPropertyNames;
5
- var __getProtoOf = Object.getPrototypeOf;
6
- var __hasOwnProp = Object.prototype.hasOwnProperty;
7
- var __markAsModule = (target) => __defProp(target, "__esModule", { value: true });
8
- var __export = (target, all) => {
9
- for (var name in all)
10
- __defProp(target, name, { get: all[name], enumerable: true });
11
- };
12
- var __reExport = (target, module2, copyDefault, desc) => {
13
- if (module2 && typeof module2 === "object" || typeof module2 === "function") {
14
- for (let key of __getOwnPropNames(module2))
15
- if (!__hasOwnProp.call(target, key) && (copyDefault || key !== "default"))
16
- __defProp(target, key, { get: () => module2[key], enumerable: !(desc = __getOwnPropDesc(module2, key)) || desc.enumerable });
17
- }
18
- return target;
19
- };
20
- var __toESM = (module2, isNodeMode) => {
21
- return __reExport(__markAsModule(__defProp(module2 != null ? __create(__getProtoOf(module2)) : {}, "default", !isNodeMode && module2 && module2.__esModule ? { get: () => module2.default, enumerable: true } : { value: module2, enumerable: true })), module2);
22
- };
23
- var __toCommonJS = /* @__PURE__ */ ((cache) => {
24
- return (module2, temp) => {
25
- return cache && cache.get(module2) || (temp = __reExport(__markAsModule({}), module2, 1), cache && cache.set(module2, temp), temp);
26
- };
27
- })(typeof WeakMap !== "undefined" ? /* @__PURE__ */ new WeakMap() : 0);
28
- var DSPopover_exports = {};
29
- __export(DSPopover_exports, {
30
- DSPopover: () => DSPopover,
31
- Interaction: () => Interaction,
32
- PopoverWithSchema: () => PopoverWithSchema,
33
- default: () => DSPopover_default,
34
- usePopoverProviderState: () => import_usePopoverProviderState.default,
35
- usePopper: () => import_usePopper.default
36
- });
37
- var React = __toESM(require("react"));
38
- var import_react = __toESM(require("react"));
39
- var import_react_desc = require("react-desc");
40
- var import_ds_utilities = require("@elliemae/ds-utilities");
41
- var import_ds_hidden = require("@elliemae/ds-hidden");
42
- var import_Popover = __toESM(require("./Popover"));
43
- var import_usePopper = __toESM(require("./usePopper"));
44
- var import_Arrow = __toESM(require("./Arrow"));
45
- var import_usePopoverProviderState = __toESM(require("./usePopoverProviderState"));
46
- __reExport(DSPopover_exports, require("@elliemae/ds-popper"));
47
- const Interaction = {
48
- CLICK: "click",
49
- HOVER: "hover"
50
- };
51
- const DSPopover = ({
52
- containerProps,
53
- content,
54
- renderer,
55
- visible: visibleProp,
56
- offset,
57
- showArrow,
58
- placement,
59
- boundaries,
60
- modifiers,
61
- referenceEl,
62
- renderTrigger,
63
- onClickOutside,
64
- destroyOnHidden,
65
- interactionType,
66
- isOpen,
67
- style
68
- }) => {
69
- const { visible, onShow, onHide, onToggle } = (0, import_ds_hidden.useHiddenController)(visibleProp);
70
- const { reference, popper, arrow, popperData } = (0, import_usePopper.default)({
71
- placement,
72
- showArrow,
73
- boundaries,
74
- modifiers,
75
- offset,
76
- referenceEl,
77
- eventsEnabled: visible,
78
- isOpen
79
- });
80
- const hoverHandlers = (0, import_ds_utilities.useHoverHandlersDelay)({
81
- onMouseOver: onShow,
82
- onMouseLeave: onHide
83
- });
84
- const isPopoverVisible = visible || isOpen;
85
- return /* @__PURE__ */ import_react.default.createElement(import_react.default.Fragment, null, renderTrigger({
86
- ...reference,
87
- handlers: interactionType === "click" ? { onClick: onToggle } : hoverHandlers,
88
- onShow,
89
- onToggle,
90
- onHide,
91
- "aria-haspopup": true,
92
- "aria-expanded": visible
93
- }), isPopoverVisible && reference.ref && /* @__PURE__ */ import_react.default.createElement(import_Popover.default, {
94
- containerProps,
95
- destroyOnHidden,
96
- interactionType,
97
- isOpen,
98
- onClickOutside: (...args) => {
99
- onClickOutside(...args);
100
- if (interactionType === "click")
101
- onHide();
102
- },
103
- popperProps: popper,
104
- renderer: renderer && ((props) => renderer({
105
- ...props,
106
- onShow,
107
- onToggle,
108
- onHide
109
- })),
110
- style,
111
- visible: isPopoverVisible
112
- }, showArrow && /* @__PURE__ */ import_react.default.createElement(import_Arrow.default, {
113
- ...arrow,
114
- placement: popperData.placement
115
- }), isPopoverVisible && content));
116
- };
117
- DSPopover.defaultProps = {
118
- containerProps: {},
119
- renderer: void 0,
120
- visible: void 0,
121
- offset: void 0,
122
- showArrow: false,
123
- placement: "top",
124
- modifiers: {},
125
- renderTrigger: () => null,
126
- onClickOutside: () => null,
127
- destroyOnHidden: true,
128
- isOpen: void 0
129
- };
130
- const popoverProps = {
131
- containerProps: import_react_desc.PropTypes.shape({}).description("Set of Properties attached to the main container"),
132
- destroyOnHidden: import_react_desc.PropTypes.bool.description("destroy popover on hidden or not").defaultValue(true),
133
- renderer: import_react_desc.PropTypes.func.description("custom renderer"),
134
- popperProps: import_react_desc.PropTypes.object.description("Popper props attached to container"),
135
- visible: import_react_desc.PropTypes.bool.description("is visible or not").defaultValue(false),
136
- content: import_react_desc.PropTypes.oneOfType([import_react_desc.PropTypes.element, import_react_desc.PropTypes.string]).description("popover content"),
137
- onClickOutside: import_react_desc.PropTypes.func.description("function called on click outside"),
138
- interaction: import_react_desc.PropTypes.string.description("interaction type: hover, click"),
139
- offset: import_react_desc.PropTypes.object.description("offset"),
140
- showArrow: import_react_desc.PropTypes.bool.description("show tooltip arrow or not"),
141
- placement: import_react_desc.PropTypes.string.description("popover placement: top, bottom, right, left"),
142
- boundaries: import_react_desc.PropTypes.string.description("popover boundaries"),
143
- modifiers: import_react_desc.PropTypes.object.description("modifiers"),
144
- style: import_react_desc.PropTypes.object.description("css style object"),
145
- referenceEl: import_react_desc.PropTypes.element.description("reference element"),
146
- renderTrigger: import_react_desc.PropTypes.func.description("render trigger element"),
147
- interactionType: import_react_desc.PropTypes.string.description("interaction type"),
148
- isOpen: import_react_desc.PropTypes.bool.description("open or not").defaultValue(false)
149
- };
150
- DSPopover.propTypes = popoverProps;
151
- const PopoverWithSchema = (0, import_react_desc.describe)(DSPopover);
152
- PopoverWithSchema.propTypes = popoverProps;
153
- var DSPopover_default = DSPopover;
154
- module.exports = __toCommonJS(DSPopover_exports);
155
- //# sourceMappingURL=DSPopover.js.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../src/DSPopover.tsx", "../../../../scripts/build/transpile/react-shim.js"],
4
- "sourcesContent": ["/* eslint-disable max-lines */\nimport React from 'react';\nimport { PropTypes, describe } from 'react-desc';\nimport { useHoverHandlersDelay } from '@elliemae/ds-utilities';\nimport { useHiddenController } from '@elliemae/ds-hidden';\nimport Popover from './Popover';\nimport usePopper from './usePopper';\nimport Arrow from './Arrow';\nimport usePopoverProviderState from './usePopoverProviderState';\n\nexport * from '@elliemae/ds-popper';\nexport const Interaction = {\n CLICK: 'click',\n HOVER: 'hover',\n};\n\n/* Unstable Popover, not yet fully working */\nconst DSPopover = ({\n containerProps,\n content, // react component inside the popover to render its content\n renderer, // function to render the popover component, ex: (popoverProps) => (<div {...popoverProps}></div>)\n visible: visibleProp,\n offset,\n showArrow,\n // popper props options\n placement,\n boundaries, // scrollParent | window | viewport\n modifiers,\n referenceEl,\n renderTrigger,\n onClickOutside,\n destroyOnHidden,\n interactionType,\n isOpen,\n style,\n}) => {\n const { visible, onShow, onHide, onToggle } = useHiddenController(visibleProp);\n\n const { reference, popper, arrow, popperData } = usePopper({\n placement,\n showArrow,\n boundaries,\n modifiers,\n offset,\n referenceEl,\n eventsEnabled: visible,\n isOpen,\n });\n\n const hoverHandlers = useHoverHandlersDelay({\n onMouseOver: onShow,\n onMouseLeave: onHide,\n });\n const isPopoverVisible = visible || isOpen;\n return (\n <>\n {renderTrigger({\n ...reference,\n handlers: interactionType === 'click' ? { onClick: onToggle } : hoverHandlers,\n onShow,\n onToggle,\n onHide,\n 'aria-haspopup': true,\n 'aria-expanded': visible,\n })}\n {isPopoverVisible && reference.ref && (\n <Popover\n containerProps={containerProps}\n destroyOnHidden={destroyOnHidden}\n interactionType={interactionType}\n isOpen={isOpen}\n onClickOutside={(...args) => {\n onClickOutside(...args);\n if (interactionType === 'click') onHide();\n }}\n popperProps={popper}\n renderer={\n renderer &&\n ((props) =>\n renderer({\n ...props,\n onShow,\n onToggle,\n onHide,\n }))\n }\n style={style}\n visible={isPopoverVisible}\n >\n {showArrow && <Arrow {...arrow} placement={popperData.placement} />}\n {isPopoverVisible && content}\n </Popover>\n )}\n </>\n );\n};\n\nDSPopover.defaultProps = {\n containerProps: {},\n renderer: undefined,\n visible: undefined,\n offset: undefined,\n showArrow: false,\n placement: 'top',\n modifiers: {},\n renderTrigger: () => null,\n onClickOutside: () => null,\n destroyOnHidden: true,\n isOpen: undefined,\n};\n\nconst popoverProps = {\n containerProps: PropTypes.shape({}).description('Set of Properties attached to the main container'),\n destroyOnHidden: PropTypes.bool.description('destroy popover on hidden or not').defaultValue(true),\n renderer: PropTypes.func.description('custom renderer'),\n popperProps: PropTypes.object.description('Popper props attached to container'),\n visible: PropTypes.bool.description('is visible or not').defaultValue(false),\n content: PropTypes.oneOfType([PropTypes.element, PropTypes.string]).description('popover content'),\n onClickOutside: PropTypes.func.description('function called on click outside'),\n interaction: PropTypes.string.description('interaction type: hover, click'),\n offset: PropTypes.object.description('offset'),\n showArrow: PropTypes.bool.description('show tooltip arrow or not'),\n placement: PropTypes.string.description('popover placement: top, bottom, right, left'),\n boundaries: PropTypes.string.description('popover boundaries'),\n modifiers: PropTypes.object.description('modifiers'),\n style: PropTypes.object.description('css style object'),\n referenceEl: PropTypes.element.description('reference element'),\n renderTrigger: PropTypes.func.description('render trigger element'),\n interactionType: PropTypes.string.description('interaction type'),\n isOpen: PropTypes.bool.description('open or not').defaultValue(false),\n};\n\nDSPopover.propTypes = popoverProps;\n\nconst PopoverWithSchema = describe(DSPopover);\nPopoverWithSchema.propTypes = popoverProps;\n\nexport { DSPopover, usePopper, usePopoverProviderState, PopoverWithSchema };\n\nexport default DSPopover;\n", "import * as React from 'react';\nexport { React };\n"],
5
- "mappings": "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",
6
- "names": []
7
- }
@@ -1,73 +0,0 @@
1
- var __create = Object.create;
2
- var __defProp = Object.defineProperty;
3
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
- var __getOwnPropNames = Object.getOwnPropertyNames;
5
- var __getProtoOf = Object.getPrototypeOf;
6
- var __hasOwnProp = Object.prototype.hasOwnProperty;
7
- var __markAsModule = (target) => __defProp(target, "__esModule", { value: true });
8
- var __export = (target, all) => {
9
- for (var name in all)
10
- __defProp(target, name, { get: all[name], enumerable: true });
11
- };
12
- var __reExport = (target, module2, copyDefault, desc) => {
13
- if (module2 && typeof module2 === "object" || typeof module2 === "function") {
14
- for (let key of __getOwnPropNames(module2))
15
- if (!__hasOwnProp.call(target, key) && (copyDefault || key !== "default"))
16
- __defProp(target, key, { get: () => module2[key], enumerable: !(desc = __getOwnPropDesc(module2, key)) || desc.enumerable });
17
- }
18
- return target;
19
- };
20
- var __toESM = (module2, isNodeMode) => {
21
- return __reExport(__markAsModule(__defProp(module2 != null ? __create(__getProtoOf(module2)) : {}, "default", !isNodeMode && module2 && module2.__esModule ? { get: () => module2.default, enumerable: true } : { value: module2, enumerable: true })), module2);
22
- };
23
- var __toCommonJS = /* @__PURE__ */ ((cache) => {
24
- return (module2, temp) => {
25
- return cache && cache.get(module2) || (temp = __reExport(__markAsModule({}), module2, 1), cache && cache.set(module2, temp), temp);
26
- };
27
- })(typeof WeakMap !== "undefined" ? /* @__PURE__ */ new WeakMap() : 0);
28
- var Popover_exports = {};
29
- __export(Popover_exports, {
30
- default: () => Popover_default
31
- });
32
- var React = __toESM(require("react"));
33
- var import_react = __toESM(require("react"));
34
- var import_lodash = require("lodash");
35
- var import_ds_classnames = require("@elliemae/ds-classnames");
36
- var import_ds_utilities = require("@elliemae/ds-utilities");
37
- var import_ds_hidden = require("@elliemae/ds-hidden");
38
- var import_ds_portal = __toESM(require("@elliemae/ds-portal"));
39
- const blockName = "popover";
40
- const PopoverComponent = (0, import_ds_classnames.aggregatedClasses)("div")(blockName);
41
- function Popover({
42
- containerProps,
43
- destroyOnHidden = true,
44
- renderer = void 0,
45
- popperProps = {},
46
- visible = false,
47
- content = void 0,
48
- onClickOutside = () => null,
49
- style,
50
- ...otherProps
51
- }) {
52
- const popoverRef = (0, import_react.useRef)();
53
- const hiddenTransitionProps = (0, import_ds_hidden.useHiddenTransition)({ visible });
54
- const popoverProps = (0, import_ds_utilities.removeUndefinedProperties)({
55
- containerprops: containerProps,
56
- content,
57
- ref: popoverRef,
58
- ...otherProps,
59
- ...hiddenTransitionProps
60
- });
61
- (0, import_ds_utilities.useOnClickOutside)(popoverRef, onClickOutside);
62
- const wrapStyle = (0, import_lodash.omit)(style, "zIndex") || {};
63
- return destroyOnHidden && !hiddenTransitionProps.destroyed && /* @__PURE__ */ import_react.default.createElement(import_ds_portal.default, null, /* @__PURE__ */ import_react.default.createElement("div", {
64
- ...popperProps,
65
- style: { ...style, ...popperProps.style }
66
- }, (0, import_ds_utilities.isFunction)(renderer) ? renderer(popoverProps) : /* @__PURE__ */ import_react.default.createElement(PopoverComponent, {
67
- ...popoverProps,
68
- style: wrapStyle
69
- })));
70
- }
71
- var Popover_default = Popover;
72
- module.exports = __toCommonJS(Popover_exports);
73
- //# sourceMappingURL=Popover.js.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../src/Popover.tsx", "../../../../scripts/build/transpile/react-shim.js"],
4
- "sourcesContent": ["import React, { useRef } from 'react';\nimport { omit } from 'lodash';\nimport { aggregatedClasses } from '@elliemae/ds-classnames';\nimport { isFunction, removeUndefinedProperties, useOnClickOutside } from '@elliemae/ds-utilities';\nimport { useHiddenTransition } from '@elliemae/ds-hidden';\nimport DSPortal from '@elliemae/ds-portal';\n\nconst blockName = 'popover';\nconst PopoverComponent = aggregatedClasses('div')(blockName);\n\nfunction Popover({\n containerProps,\n destroyOnHidden = true,\n renderer = undefined,\n popperProps = {},\n visible = false,\n content = undefined,\n onClickOutside = () => null,\n style,\n ...otherProps\n}) {\n const popoverRef = useRef();\n const hiddenTransitionProps = useHiddenTransition({ visible });\n const popoverProps = removeUndefinedProperties({\n containerprops: containerProps,\n content,\n ref: popoverRef,\n ...otherProps,\n ...hiddenTransitionProps,\n });\n\n useOnClickOutside(popoverRef, onClickOutside);\n\n const wrapStyle = omit(style, 'zIndex') || {};\n return (\n destroyOnHidden &&\n !hiddenTransitionProps.destroyed && (\n <DSPortal>\n <div {...popperProps} style={{ ...style, ...popperProps.style }}>\n {isFunction(renderer) ? renderer(popoverProps) : <PopoverComponent {...popoverProps} style={wrapStyle} />}\n </div>\n </DSPortal>\n )\n );\n}\n\nexport default Popover;\n", "import * as React from 'react';\nexport { React };\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADAvB,mBAA8B;AAC9B,oBAAqB;AACrB,2BAAkC;AAClC,0BAAyE;AACzE,uBAAoC;AACpC,uBAAqB;AAErB,MAAM,YAAY;AAClB,MAAM,mBAAmB,4CAAkB,OAAO;AAElD,iBAAiB;AAAA,EACf;AAAA,EACA,kBAAkB;AAAA,EAClB,WAAW;AAAA,EACX,cAAc;AAAA,EACd,UAAU;AAAA,EACV,UAAU;AAAA,EACV,iBAAiB,MAAM;AAAA,EACvB;AAAA,KACG;AAAA,GACF;AACD,QAAM,aAAa;AACnB,QAAM,wBAAwB,0CAAoB,EAAE;AACpD,QAAM,eAAe,mDAA0B;AAAA,IAC7C,gBAAgB;AAAA,IAChB;AAAA,IACA,KAAK;AAAA,OACF;AAAA,OACA;AAAA;AAGL,6CAAkB,YAAY;AAE9B,QAAM,YAAY,wBAAK,OAAO,aAAa;AAC3C,SACE,mBACA,CAAC,sBAAsB,aACrB,mDAAC,0BAAD,MACE,mDAAC,OAAD;AAAA,OAAS;AAAA,IAAa,OAAO,KAAK,UAAU,YAAY;AAAA,KACrD,oCAAW,YAAY,SAAS,gBAAgB,mDAAC,kBAAD;AAAA,OAAsB;AAAA,IAAc,OAAO;AAAA;AAAA;AAOtG,IAAO,kBAAQ;",
6
- "names": []
7
- }
@@ -1,72 +0,0 @@
1
- var __create = Object.create;
2
- var __defProp = Object.defineProperty;
3
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
- var __getOwnPropNames = Object.getOwnPropertyNames;
5
- var __getProtoOf = Object.getPrototypeOf;
6
- var __hasOwnProp = Object.prototype.hasOwnProperty;
7
- var __markAsModule = (target) => __defProp(target, "__esModule", { value: true });
8
- var __export = (target, all) => {
9
- for (var name in all)
10
- __defProp(target, name, { get: all[name], enumerable: true });
11
- };
12
- var __reExport = (target, module2, copyDefault, desc) => {
13
- if (module2 && typeof module2 === "object" || typeof module2 === "function") {
14
- for (let key of __getOwnPropNames(module2))
15
- if (!__hasOwnProp.call(target, key) && (copyDefault || key !== "default"))
16
- __defProp(target, key, { get: () => module2[key], enumerable: !(desc = __getOwnPropDesc(module2, key)) || desc.enumerable });
17
- }
18
- return target;
19
- };
20
- var __toESM = (module2, isNodeMode) => {
21
- return __reExport(__markAsModule(__defProp(module2 != null ? __create(__getProtoOf(module2)) : {}, "default", !isNodeMode && module2 && module2.__esModule ? { get: () => module2.default, enumerable: true } : { value: module2, enumerable: true })), module2);
22
- };
23
- var __toCommonJS = /* @__PURE__ */ ((cache) => {
24
- return (module2, temp) => {
25
- return cache && cache.get(module2) || (temp = __reExport(__markAsModule({}), module2, 1), cache && cache.set(module2, temp), temp);
26
- };
27
- })(typeof WeakMap !== "undefined" ? /* @__PURE__ */ new WeakMap() : 0);
28
- var PopoverTrigger_exports = {};
29
- __export(PopoverTrigger_exports, {
30
- Interaction: () => Interaction,
31
- default: () => PopoverTrigger_default
32
- });
33
- var React = __toESM(require("react"));
34
- var import_react = __toESM(require("react"));
35
- const Interaction = {
36
- CLICK: "click",
37
- HOVER: "hover"
38
- };
39
- const noop = () => {
40
- };
41
- function useHiddenTrigger({
42
- hiddenId,
43
- visible = false,
44
- interaction = "click",
45
- onToggle = noop,
46
- onShow = noop,
47
- onHide = noop
48
- }) {
49
- const handlers = {
50
- [Interaction.CLICK]: {
51
- onClick: onToggle
52
- },
53
- [Interaction.HOVER]: {
54
- onMouseEnter: onShow,
55
- onMouseLeave: onHide
56
- }
57
- };
58
- return {
59
- "aria-expanded": visible,
60
- ...handlers[interaction],
61
- "aria-controls": hiddenId
62
- };
63
- }
64
- function PopoverTrigger({ as: Component, ...props }) {
65
- const hiddenTriggerProps = useHiddenTrigger(props);
66
- return /* @__PURE__ */ import_react.default.createElement(Component, {
67
- ...hiddenTriggerProps
68
- });
69
- }
70
- var PopoverTrigger_default = PopoverTrigger;
71
- module.exports = __toCommonJS(PopoverTrigger_exports);
72
- //# sourceMappingURL=PopoverTrigger.js.map