@elliemae/ds-legacy-popover 1.0.0-rc.1

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 (43) hide show
  1. package/dist/cjs/Arrow.js +70 -0
  2. package/dist/cjs/Arrow.js.map +7 -0
  3. package/dist/cjs/DSPopover.js +169 -0
  4. package/dist/cjs/DSPopover.js.map +7 -0
  5. package/dist/cjs/Popover.js +71 -0
  6. package/dist/cjs/Popover.js.map +7 -0
  7. package/dist/cjs/PopoverTrigger.js +71 -0
  8. package/dist/cjs/PopoverTrigger.js.map +7 -0
  9. package/dist/cjs/index.js +38 -0
  10. package/dist/cjs/index.js.map +7 -0
  11. package/dist/cjs/package.json +7 -0
  12. package/dist/cjs/usePopover.js +46 -0
  13. package/dist/cjs/usePopover.js.map +7 -0
  14. package/dist/cjs/usePopoverProviderState.js +86 -0
  15. package/dist/cjs/usePopoverProviderState.js.map +7 -0
  16. package/dist/cjs/usePopper.js +129 -0
  17. package/dist/cjs/usePopper.js.map +7 -0
  18. package/dist/esm/Arrow.js +40 -0
  19. package/dist/esm/Arrow.js.map +7 -0
  20. package/dist/esm/DSPopover.js +138 -0
  21. package/dist/esm/DSPopover.js.map +7 -0
  22. package/dist/esm/Popover.js +41 -0
  23. package/dist/esm/Popover.js.map +7 -0
  24. package/dist/esm/PopoverTrigger.js +41 -0
  25. package/dist/esm/PopoverTrigger.js.map +7 -0
  26. package/dist/esm/index.js +7 -0
  27. package/dist/esm/index.js.map +7 -0
  28. package/dist/esm/package.json +7 -0
  29. package/dist/esm/usePopover.js +16 -0
  30. package/dist/esm/usePopover.js.map +7 -0
  31. package/dist/esm/usePopoverProviderState.js +56 -0
  32. package/dist/esm/usePopoverProviderState.js.map +7 -0
  33. package/dist/esm/usePopper.js +99 -0
  34. package/dist/esm/usePopper.js.map +7 -0
  35. package/dist/types/Arrow.d.ts +3 -0
  36. package/dist/types/DSPopover.d.ts +81 -0
  37. package/dist/types/Popover.d.ts +12 -0
  38. package/dist/types/PopoverTrigger.d.ts +9 -0
  39. package/dist/types/index.d.ts +2 -0
  40. package/dist/types/usePopover.d.ts +21 -0
  41. package/dist/types/usePopoverProviderState.d.ts +19 -0
  42. package/dist/types/usePopper.d.ts +28 -0
  43. package/package.json +101 -0
@@ -0,0 +1,70 @@
1
+ "use strict";
2
+ var __create = Object.create;
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __getProtoOf = Object.getPrototypeOf;
7
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
8
+ var __export = (target, all) => {
9
+ for (var name in all)
10
+ __defProp(target, name, { get: all[name], enumerable: true });
11
+ };
12
+ var __copyProps = (to, from, except, desc) => {
13
+ if (from && typeof from === "object" || typeof from === "function") {
14
+ for (let key of __getOwnPropNames(from))
15
+ if (!__hasOwnProp.call(to, key) && key !== except)
16
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
17
+ }
18
+ return to;
19
+ };
20
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
+ // If the importer is in node compatibility mode or this is not an ESM
22
+ // file that has been converted to a CommonJS file using a Babel-
23
+ // compatible transform (i.e. "__esModule" has not been set), then set
24
+ // "default" to the CommonJS "module.exports" for node compatibility.
25
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
26
+ mod
27
+ ));
28
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
+ var Arrow_exports = {};
30
+ __export(Arrow_exports, {
31
+ default: () => Arrow_default
32
+ });
33
+ module.exports = __toCommonJS(Arrow_exports);
34
+ var React = __toESM(require("react"));
35
+ var import_jsx_runtime = require("react/jsx-runtime");
36
+ var import_react = require("react");
37
+ var import_ds_legacy_classnames = require("@elliemae/ds-legacy-classnames");
38
+ var import_ds_legacy_popper = require("@elliemae/ds-legacy-popper");
39
+ const ArrowWrapper = (0, import_ds_legacy_classnames.aggregatedClasses)("span")("popover", "arrow");
40
+ const Arrow = ({ style, className, innerRef, blockName = "popover", placement, ...otherProps }) => /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
41
+ ArrowWrapper,
42
+ {
43
+ className,
44
+ "data-placement": placement,
45
+ ...otherProps,
46
+ innerRef,
47
+ style: {
48
+ ...style,
49
+ ...(0, import_ds_legacy_popper.getArrowStylesBySize)(placement, 25)
50
+ },
51
+ children: /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("svg", { viewBox: "0 0 30 30", children: [
52
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
53
+ "path",
54
+ {
55
+ className: "stroke",
56
+ 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"
57
+ }
58
+ ),
59
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
60
+ "path",
61
+ {
62
+ className: "fill",
63
+ 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"
64
+ }
65
+ )
66
+ ] })
67
+ }
68
+ );
69
+ var Arrow_default = (0, import_react.forwardRef)((props, ref) => /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Arrow, { ...props, innerRef: ref || props.innerRef }));
70
+ //# sourceMappingURL=Arrow.js.map
@@ -0,0 +1,7 @@
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-legacy-classnames';\nimport { getArrowStylesBySize } from '@elliemae/ds-legacy-popper';\n\nconst ArrowWrapper = aggregatedClasses('span')('popover', 'arrow');\nconst Arrow = ({ style, className, innerRef, blockName = 'popover', placement, ...otherProps }) => (\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\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;AAAA;ACAA,YAAuB;ADgBnB;AAhBJ,mBAAkC;AAClC,kCAAkC;AAClC,8BAAqC;AAErC,MAAM,mBAAe,+CAAkB,MAAM,EAAE,WAAW,OAAO;AACjE,MAAM,QAAQ,CAAC,EAAE,OAAO,WAAW,UAAU,YAAY,WAAW,WAAW,GAAG,WAAW,MAC3F;AAAA,EAAC;AAAA;AAAA,IACC;AAAA,IACA,kBAAgB;AAAA,IACf,GAAG;AAAA,IACJ;AAAA,IACA,OAAO;AAAA,MACL,GAAG;AAAA,MACH,OAAG,8CAAqB,WAAW,EAAE;AAAA,IACvC;AAAA,IAEA,uDAAC,SAAI,SAAQ,aACX;AAAA;AAAA,QAAC;AAAA;AAAA,UACC,WAAU;AAAA,UACV,GAAE;AAAA;AAAA,MAEJ;AAAA,MACA;AAAA,QAAC;AAAA;AAAA,UACC,WAAU;AAAA,UACV,GAAE;AAAA;AAAA,MACJ;AAAA,OACF;AAAA;AACF;AAGF,IAAO,oBAAQ,yBAAW,CAAC,OAAO,QAAQ,4CAAC,SAAO,GAAG,OAAO,UAAU,OAAO,MAAM,UAAU,CAAE;",
6
+ "names": []
7
+ }
@@ -0,0 +1,169 @@
1
+ "use strict";
2
+ var __create = Object.create;
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __getProtoOf = Object.getPrototypeOf;
7
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
8
+ var __export = (target, all) => {
9
+ for (var name in all)
10
+ __defProp(target, name, { get: all[name], enumerable: true });
11
+ };
12
+ var __copyProps = (to, from, except, desc) => {
13
+ if (from && typeof from === "object" || typeof from === "function") {
14
+ for (let key of __getOwnPropNames(from))
15
+ if (!__hasOwnProp.call(to, key) && key !== except)
16
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
17
+ }
18
+ return to;
19
+ };
20
+ var __reExport = (target, mod, secondTarget) => (__copyProps(target, mod, "default"), secondTarget && __copyProps(secondTarget, mod, "default"));
21
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
22
+ // If the importer is in node compatibility mode or this is not an ESM
23
+ // file that has been converted to a CommonJS file using a Babel-
24
+ // compatible transform (i.e. "__esModule" has not been set), then set
25
+ // "default" to the CommonJS "module.exports" for node compatibility.
26
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
27
+ mod
28
+ ));
29
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
30
+ var DSPopover_exports = {};
31
+ __export(DSPopover_exports, {
32
+ DSPopover: () => DSPopover,
33
+ Interaction: () => Interaction,
34
+ PopoverWithSchema: () => PopoverWithSchema,
35
+ default: () => DSPopover_default,
36
+ usePopoverProviderState: () => import_usePopoverProviderState.default,
37
+ usePopper: () => import_usePopper.default
38
+ });
39
+ module.exports = __toCommonJS(DSPopover_exports);
40
+ var React = __toESM(require("react"));
41
+ var import_jsx_runtime = require("react/jsx-runtime");
42
+ var import_ds_legacy_utilities = require("@elliemae/ds-legacy-utilities");
43
+ var import_ds_legacy_props_helpers = require("@elliemae/ds-legacy-props-helpers");
44
+ var import_ds_legacy_hidden = require("@elliemae/ds-legacy-hidden");
45
+ var import_Popover = __toESM(require("./Popover.js"));
46
+ var import_usePopper = __toESM(require("./usePopper.js"));
47
+ var import_Arrow = __toESM(require("./Arrow.js"));
48
+ var import_usePopoverProviderState = __toESM(require("./usePopoverProviderState.js"));
49
+ __reExport(DSPopover_exports, require("@elliemae/ds-legacy-popper"), module.exports);
50
+ const Interaction = {
51
+ CLICK: "click",
52
+ HOVER: "hover"
53
+ };
54
+ const DSPopover = ({
55
+ containerProps,
56
+ content,
57
+ // react component inside the popover to render its content
58
+ renderer,
59
+ // function to render the popover component, ex: (popoverProps) => (<div {...popoverProps}></div>)
60
+ visible: visibleProp,
61
+ offset,
62
+ showArrow,
63
+ // popper props options
64
+ placement,
65
+ boundaries,
66
+ // scrollParent | window | viewport
67
+ modifiers,
68
+ referenceEl,
69
+ renderTrigger,
70
+ onClickOutside,
71
+ destroyOnHidden,
72
+ interactionType,
73
+ isOpen,
74
+ style
75
+ }) => {
76
+ const { visible, onShow, onHide, onToggle } = (0, import_ds_legacy_hidden.useHiddenController)(visibleProp);
77
+ const { reference, popper, arrow, popperData } = (0, import_usePopper.default)({
78
+ placement,
79
+ showArrow,
80
+ boundaries,
81
+ modifiers,
82
+ offset,
83
+ referenceEl,
84
+ eventsEnabled: visible,
85
+ isOpen
86
+ });
87
+ const hoverHandlers = (0, import_ds_legacy_utilities.useHoverHandlersDelay)({
88
+ onMouseOver: onShow,
89
+ onMouseLeave: onHide
90
+ });
91
+ const isPopoverVisible = visible || isOpen;
92
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_jsx_runtime.Fragment, { children: [
93
+ renderTrigger({
94
+ ...reference,
95
+ handlers: interactionType === "click" ? { onClick: onToggle } : hoverHandlers,
96
+ onShow,
97
+ onToggle,
98
+ onHide,
99
+ "aria-haspopup": true,
100
+ "aria-expanded": visible
101
+ }),
102
+ isPopoverVisible && reference.ref && /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(
103
+ import_Popover.default,
104
+ {
105
+ containerProps,
106
+ destroyOnHidden,
107
+ interactionType,
108
+ isOpen,
109
+ onClickOutside: (...args) => {
110
+ onClickOutside(...args);
111
+ if (interactionType === "click")
112
+ onHide();
113
+ },
114
+ popperProps: popper,
115
+ renderer: renderer && ((props) => renderer({
116
+ ...props,
117
+ onShow,
118
+ onToggle,
119
+ onHide
120
+ })),
121
+ style,
122
+ visible: isPopoverVisible,
123
+ children: [
124
+ showArrow && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_Arrow.default, { ...arrow, placement: popperData.placement }),
125
+ isPopoverVisible && content
126
+ ]
127
+ }
128
+ )
129
+ ] });
130
+ };
131
+ DSPopover.defaultProps = {
132
+ containerProps: {},
133
+ renderer: void 0,
134
+ visible: void 0,
135
+ offset: void 0,
136
+ showArrow: false,
137
+ placement: "top",
138
+ modifiers: {},
139
+ renderTrigger: () => null,
140
+ onClickOutside: () => null,
141
+ destroyOnHidden: true,
142
+ isOpen: void 0
143
+ };
144
+ const popoverProps = {
145
+ containerProps: import_ds_legacy_props_helpers.PropTypes.shape({}).description("Set of Properties attached to the main container"),
146
+ destroyOnHidden: import_ds_legacy_props_helpers.PropTypes.bool.description("destroy popover on hidden or not").defaultValue(true),
147
+ renderer: import_ds_legacy_props_helpers.PropTypes.func.description("custom renderer"),
148
+ popperProps: import_ds_legacy_props_helpers.PropTypes.object.description("Popper props attached to container"),
149
+ visible: import_ds_legacy_props_helpers.PropTypes.bool.description("is visible or not").defaultValue(false),
150
+ content: import_ds_legacy_props_helpers.PropTypes.oneOfType([import_ds_legacy_props_helpers.PropTypes.element, import_ds_legacy_props_helpers.PropTypes.string]).description("popover content"),
151
+ onClickOutside: import_ds_legacy_props_helpers.PropTypes.func.description("function called on click outside"),
152
+ interaction: import_ds_legacy_props_helpers.PropTypes.string.description("interaction type: hover, click"),
153
+ offset: import_ds_legacy_props_helpers.PropTypes.object.description("offset"),
154
+ showArrow: import_ds_legacy_props_helpers.PropTypes.bool.description("show tooltip arrow or not"),
155
+ placement: import_ds_legacy_props_helpers.PropTypes.string.description("popover placement: top, bottom, right, left"),
156
+ boundaries: import_ds_legacy_props_helpers.PropTypes.string.description("popover boundaries"),
157
+ modifiers: import_ds_legacy_props_helpers.PropTypes.object.description("modifiers"),
158
+ style: import_ds_legacy_props_helpers.PropTypes.object.description("css style object"),
159
+ referenceEl: import_ds_legacy_props_helpers.PropTypes.element.description("reference element"),
160
+ renderTrigger: import_ds_legacy_props_helpers.PropTypes.func.description("render trigger element"),
161
+ interactionType: import_ds_legacy_props_helpers.PropTypes.string.description("interaction type"),
162
+ isOpen: import_ds_legacy_props_helpers.PropTypes.bool.description("open or not").defaultValue(false)
163
+ };
164
+ DSPopover.propTypes = popoverProps;
165
+ DSPopover.displayName = "DSPopover";
166
+ const PopoverWithSchema = (0, import_ds_legacy_props_helpers.describe)(DSPopover);
167
+ PopoverWithSchema.propTypes = popoverProps;
168
+ var DSPopover_default = DSPopover;
169
+ //# sourceMappingURL=DSPopover.js.map
@@ -0,0 +1,7 @@
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 { useHoverHandlersDelay } from '@elliemae/ds-legacy-utilities';\nimport { PropTypes, describe } from '@elliemae/ds-legacy-props-helpers';\nimport { useHiddenController } from '@elliemae/ds-legacy-hidden';\nimport Popover from './Popover.js';\nimport usePopper from './usePopper.js';\nimport Arrow from './Arrow.js';\nimport usePopoverProviderState from './usePopoverProviderState.js';\n\nexport * from '@elliemae/ds-legacy-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;\nDSPopover.displayName = 'DSPopover';\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": ["usePopoverProviderState", "usePopper", "usePopper", "Popover", "Arrow"]
7
+ }
@@ -0,0 +1,71 @@
1
+ "use strict";
2
+ var __create = Object.create;
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __getProtoOf = Object.getPrototypeOf;
7
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
8
+ var __export = (target, all) => {
9
+ for (var name in all)
10
+ __defProp(target, name, { get: all[name], enumerable: true });
11
+ };
12
+ var __copyProps = (to, from, except, desc) => {
13
+ if (from && typeof from === "object" || typeof from === "function") {
14
+ for (let key of __getOwnPropNames(from))
15
+ if (!__hasOwnProp.call(to, key) && key !== except)
16
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
17
+ }
18
+ return to;
19
+ };
20
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
+ // If the importer is in node compatibility mode or this is not an ESM
22
+ // file that has been converted to a CommonJS file using a Babel-
23
+ // compatible transform (i.e. "__esModule" has not been set), then set
24
+ // "default" to the CommonJS "module.exports" for node compatibility.
25
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
26
+ mod
27
+ ));
28
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
+ var Popover_exports = {};
30
+ __export(Popover_exports, {
31
+ default: () => Popover_default
32
+ });
33
+ module.exports = __toCommonJS(Popover_exports);
34
+ var React = __toESM(require("react"));
35
+ var import_jsx_runtime = require("react/jsx-runtime");
36
+ var import_react = require("react");
37
+ var import_lodash = require("lodash");
38
+ var import_ds_legacy_classnames = require("@elliemae/ds-legacy-classnames");
39
+ var import_ds_legacy_utilities = require("@elliemae/ds-legacy-utilities");
40
+ var import_ds_legacy_hidden = require("@elliemae/ds-legacy-hidden");
41
+ var import_ds_legacy_portal = __toESM(require("@elliemae/ds-legacy-portal"));
42
+ var import_ds_legacy_system = require("@elliemae/ds-legacy-system");
43
+ const blockName = "popover";
44
+ const PopoverComponent = (0, import_ds_legacy_classnames.aggregatedClasses)("div")(blockName);
45
+ const Popover = ({
46
+ containerProps,
47
+ destroyOnHidden = true,
48
+ renderer = void 0,
49
+ popperProps = {},
50
+ visible = false,
51
+ content = void 0,
52
+ onClickOutside = () => null,
53
+ style,
54
+ ...otherProps
55
+ }) => {
56
+ const popoverRef = (0, import_react.useRef)();
57
+ const hiddenTransitionProps = (0, import_ds_legacy_hidden.useHiddenTransition)({ visible });
58
+ const popoverProps = (0, import_ds_legacy_utilities.removeUndefinedProperties)({
59
+ containerprops: containerProps,
60
+ content,
61
+ ref: popoverRef,
62
+ ...otherProps,
63
+ ...hiddenTransitionProps
64
+ });
65
+ (0, import_ds_legacy_utilities.useOnClickOutside)(popoverRef, onClickOutside);
66
+ const theme = (0, import_react.useContext)(import_ds_legacy_system.ThemeContext);
67
+ const wrapStyle = (0, import_lodash.omit)(style, "zIndex") || {};
68
+ return destroyOnHidden && !hiddenTransitionProps.destroyed && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_ds_legacy_portal.default, { children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { role: "region", "aria-label": "popover menu", ...popperProps, style: { zIndex: theme.zIndex.popper, ...style, ...popperProps.style }, children: (0, import_ds_legacy_utilities.isFunction)(renderer) ? renderer(popoverProps) : /* @__PURE__ */ (0, import_jsx_runtime.jsx)(PopoverComponent, { ...popoverProps, style: wrapStyle }) }) });
69
+ };
70
+ var Popover_default = Popover;
71
+ //# sourceMappingURL=Popover.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/Popover.tsx", "../../../../../scripts/build/transpile/react-shim.js"],
4
+ "sourcesContent": ["import React, { useRef, useContext } from 'react';\nimport { omit } from 'lodash';\nimport { aggregatedClasses } from '@elliemae/ds-legacy-classnames';\nimport { isFunction, removeUndefinedProperties, useOnClickOutside } from '@elliemae/ds-legacy-utilities';\nimport { useHiddenTransition } from '@elliemae/ds-legacy-hidden';\nimport DSPortal from '@elliemae/ds-legacy-portal';\nimport { ThemeContext } from '@elliemae/ds-legacy-system';\n\nconst blockName = 'popover';\nconst PopoverComponent = aggregatedClasses('div')(blockName);\n\nconst 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 theme = useContext(ThemeContext);\n\n const wrapStyle = omit(style, 'zIndex') || {};\n return (\n destroyOnHidden &&\n !hiddenTransitionProps.destroyed && (\n <DSPortal>\n <div role=\"region\" aria-label=\"popover menu\" {...popperProps} style={{ zIndex: theme.zIndex.popper, ...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;AAAA;ACAA,YAAuB;AD0CoC;AA1C3D,mBAA0C;AAC1C,oBAAqB;AACrB,kCAAkC;AAClC,iCAAyE;AACzE,8BAAoC;AACpC,8BAAqB;AACrB,8BAA6B;AAE7B,MAAM,YAAY;AAClB,MAAM,uBAAmB,+CAAkB,KAAK,EAAE,SAAS;AAE3D,MAAM,UAAU,CAAC;AAAA,EACf;AAAA,EACA,kBAAkB;AAAA,EAClB,WAAW;AAAA,EACX,cAAc,CAAC;AAAA,EACf,UAAU;AAAA,EACV,UAAU;AAAA,EACV,iBAAiB,MAAM;AAAA,EACvB;AAAA,EACA,GAAG;AACL,MAAM;AACJ,QAAM,iBAAa,qBAAO;AAC1B,QAAM,4BAAwB,6CAAoB,EAAE,QAAQ,CAAC;AAC7D,QAAM,mBAAe,sDAA0B;AAAA,IAC7C,gBAAgB;AAAA,IAChB;AAAA,IACA,KAAK;AAAA,IACL,GAAG;AAAA,IACH,GAAG;AAAA,EACL,CAAC;AAED,oDAAkB,YAAY,cAAc;AAE5C,QAAM,YAAQ,yBAAW,oCAAY;AAErC,QAAM,gBAAY,oBAAK,OAAO,QAAQ,KAAK,CAAC;AAC5C,SACE,mBACA,CAAC,sBAAsB,aACrB,4CAAC,wBAAAA,SAAA,EACC,sDAAC,SAAI,MAAK,UAAS,cAAW,gBAAgB,GAAG,aAAa,OAAO,EAAE,QAAQ,MAAM,OAAO,QAAQ,GAAG,OAAO,GAAG,YAAY,MAAM,GAChI,qDAAW,QAAQ,IAAI,SAAS,YAAY,IAAI,4CAAC,oBAAkB,GAAG,cAAc,OAAO,WAAW,GACzG,GACF;AAGN;AAEA,IAAO,kBAAQ;",
6
+ "names": ["DSPortal"]
7
+ }
@@ -0,0 +1,71 @@
1
+ "use strict";
2
+ var __create = Object.create;
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __getProtoOf = Object.getPrototypeOf;
7
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
8
+ var __export = (target, all) => {
9
+ for (var name in all)
10
+ __defProp(target, name, { get: all[name], enumerable: true });
11
+ };
12
+ var __copyProps = (to, from, except, desc) => {
13
+ if (from && typeof from === "object" || typeof from === "function") {
14
+ for (let key of __getOwnPropNames(from))
15
+ if (!__hasOwnProp.call(to, key) && key !== except)
16
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
17
+ }
18
+ return to;
19
+ };
20
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
+ // If the importer is in node compatibility mode or this is not an ESM
22
+ // file that has been converted to a CommonJS file using a Babel-
23
+ // compatible transform (i.e. "__esModule" has not been set), then set
24
+ // "default" to the CommonJS "module.exports" for node compatibility.
25
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
26
+ mod
27
+ ));
28
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
+ var PopoverTrigger_exports = {};
30
+ __export(PopoverTrigger_exports, {
31
+ Interaction: () => Interaction,
32
+ default: () => PopoverTrigger_default
33
+ });
34
+ module.exports = __toCommonJS(PopoverTrigger_exports);
35
+ var React = __toESM(require("react"));
36
+ var import_jsx_runtime = require("react/jsx-runtime");
37
+ const Interaction = {
38
+ CLICK: "click",
39
+ HOVER: "hover"
40
+ };
41
+ const noop = () => {
42
+ };
43
+ function useHiddenTrigger({
44
+ hiddenId,
45
+ visible = false,
46
+ interaction = "click",
47
+ onToggle = noop,
48
+ onShow = noop,
49
+ onHide = noop
50
+ }) {
51
+ const handlers = {
52
+ [Interaction.CLICK]: {
53
+ onClick: onToggle
54
+ },
55
+ [Interaction.HOVER]: {
56
+ onMouseEnter: onShow,
57
+ onMouseLeave: onHide
58
+ }
59
+ };
60
+ return {
61
+ "aria-expanded": visible,
62
+ ...handlers[interaction],
63
+ "aria-controls": hiddenId
64
+ };
65
+ }
66
+ const PopoverTrigger = ({ as: Component, ...props }) => {
67
+ const hiddenTriggerProps = useHiddenTrigger(props);
68
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Component, { ...hiddenTriggerProps });
69
+ };
70
+ var PopoverTrigger_default = PopoverTrigger;
71
+ //# sourceMappingURL=PopoverTrigger.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/PopoverTrigger.tsx", "../../../../../scripts/build/transpile/react-shim.js"],
4
+ "sourcesContent": ["import React from 'react';\n\nexport const Interaction = {\n CLICK: 'click',\n HOVER: 'hover',\n};\n\nconst noop = () => {};\n\nfunction useHiddenTrigger({\n hiddenId,\n visible = false,\n interaction = 'click',\n onToggle = noop,\n onShow = noop,\n onHide = noop,\n}) {\n const handlers = {\n [Interaction.CLICK]: {\n onClick: onToggle,\n },\n [Interaction.HOVER]: {\n onMouseEnter: onShow,\n onMouseLeave: onHide,\n },\n };\n return {\n 'aria-expanded': visible,\n ...handlers[interaction],\n 'aria-controls': hiddenId,\n };\n}\n\nconst PopoverTrigger = ({ as: Component, ...props }) => {\n const hiddenTriggerProps = useHiddenTrigger(props);\n\n return <Component {...hiddenTriggerProps} />;\n};\n\nexport default PopoverTrigger;\n", "import * as React from 'react';\nexport { React };\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADoCd;AAlCF,MAAM,cAAc;AAAA,EACzB,OAAO;AAAA,EACP,OAAO;AACT;AAEA,MAAM,OAAO,MAAM;AAAC;AAEpB,SAAS,iBAAiB;AAAA,EACxB;AAAA,EACA,UAAU;AAAA,EACV,cAAc;AAAA,EACd,WAAW;AAAA,EACX,SAAS;AAAA,EACT,SAAS;AACX,GAAG;AACD,QAAM,WAAW;AAAA,IACf,CAAC,YAAY,KAAK,GAAG;AAAA,MACnB,SAAS;AAAA,IACX;AAAA,IACA,CAAC,YAAY,KAAK,GAAG;AAAA,MACnB,cAAc;AAAA,MACd,cAAc;AAAA,IAChB;AAAA,EACF;AACA,SAAO;AAAA,IACL,iBAAiB;AAAA,IACjB,GAAG,SAAS,WAAW;AAAA,IACvB,iBAAiB;AAAA,EACnB;AACF;AAEA,MAAM,iBAAiB,CAAC,EAAE,IAAI,WAAW,GAAG,MAAM,MAAM;AACtD,QAAM,qBAAqB,iBAAiB,KAAK;AAEjD,SAAO,4CAAC,aAAW,GAAG,oBAAoB;AAC5C;AAEA,IAAO,yBAAQ;",
6
+ "names": []
7
+ }
@@ -0,0 +1,38 @@
1
+ "use strict";
2
+ var __create = Object.create;
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __getProtoOf = Object.getPrototypeOf;
7
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
8
+ var __export = (target, all) => {
9
+ for (var name in all)
10
+ __defProp(target, name, { get: all[name], enumerable: true });
11
+ };
12
+ var __copyProps = (to, from, except, desc) => {
13
+ if (from && typeof from === "object" || typeof from === "function") {
14
+ for (let key of __getOwnPropNames(from))
15
+ if (!__hasOwnProp.call(to, key) && key !== except)
16
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
17
+ }
18
+ return to;
19
+ };
20
+ var __reExport = (target, mod, secondTarget) => (__copyProps(target, mod, "default"), secondTarget && __copyProps(secondTarget, mod, "default"));
21
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
22
+ // If the importer is in node compatibility mode or this is not an ESM
23
+ // file that has been converted to a CommonJS file using a Babel-
24
+ // compatible transform (i.e. "__esModule" has not been set), then set
25
+ // "default" to the CommonJS "module.exports" for node compatibility.
26
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
27
+ mod
28
+ ));
29
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
30
+ var src_exports = {};
31
+ __export(src_exports, {
32
+ default: () => import_DSPopover.default
33
+ });
34
+ module.exports = __toCommonJS(src_exports);
35
+ var React = __toESM(require("react"));
36
+ __reExport(src_exports, require("./DSPopover.js"), module.exports);
37
+ var import_DSPopover = __toESM(require("./DSPopover.js"));
38
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/index.tsx", "../../../../../scripts/build/transpile/react-shim.js"],
4
+ "sourcesContent": ["export * from './DSPopover.js';\nexport { default } from './DSPopover.js';\n", "import * as React from 'react';\nexport { React };\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADAvB,wBAAc,2BAAd;AACA,uBAAwB;",
6
+ "names": []
7
+ }
@@ -0,0 +1,7 @@
1
+ {
2
+ "type": "commonjs",
3
+ "sideEffects": [
4
+ "*.css",
5
+ "*.scss"
6
+ ]
7
+ }
@@ -0,0 +1,46 @@
1
+ "use strict";
2
+ var __create = Object.create;
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __getProtoOf = Object.getPrototypeOf;
7
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
8
+ var __export = (target, all) => {
9
+ for (var name in all)
10
+ __defProp(target, name, { get: all[name], enumerable: true });
11
+ };
12
+ var __copyProps = (to, from, except, desc) => {
13
+ if (from && typeof from === "object" || typeof from === "function") {
14
+ for (let key of __getOwnPropNames(from))
15
+ if (!__hasOwnProp.call(to, key) && key !== except)
16
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
17
+ }
18
+ return to;
19
+ };
20
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
+ // If the importer is in node compatibility mode or this is not an ESM
22
+ // file that has been converted to a CommonJS file using a Babel-
23
+ // compatible transform (i.e. "__esModule" has not been set), then set
24
+ // "default" to the CommonJS "module.exports" for node compatibility.
25
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
26
+ mod
27
+ ));
28
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
+ var usePopover_exports = {};
30
+ __export(usePopover_exports, {
31
+ default: () => usePopover_default
32
+ });
33
+ module.exports = __toCommonJS(usePopover_exports);
34
+ var React = __toESM(require("react"));
35
+ var import_usePopper = __toESM(require("./usePopper.js"));
36
+ function usePopover({ ...otherProps }) {
37
+ const { reference, popper, arrow, ...popperProps } = (0, import_usePopper.default)(otherProps);
38
+ return {
39
+ triggerProps: { ...reference },
40
+ popoverProps: { ...popper },
41
+ arrowProps: { ...arrow },
42
+ ...popperProps
43
+ };
44
+ }
45
+ var usePopover_default = usePopover;
46
+ //# sourceMappingURL=usePopover.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/usePopover.tsx", "../../../../../scripts/build/transpile/react-shim.js"],
4
+ "sourcesContent": ["import usePopper from './usePopper.js';\n\nfunction usePopover({ ...otherProps }) {\n const { reference, popper, arrow, ...popperProps } = usePopper(otherProps);\n\n return {\n triggerProps: { ...reference },\n popoverProps: { ...popper },\n arrowProps: { ...arrow },\n ...popperProps,\n };\n}\n\nexport default usePopover;\n", "import * as React from 'react';\nexport { React };\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADAvB,uBAAsB;AAEtB,SAAS,WAAW,EAAE,GAAG,WAAW,GAAG;AACrC,QAAM,EAAE,WAAW,QAAQ,OAAO,GAAG,YAAY,QAAI,iBAAAA,SAAU,UAAU;AAEzE,SAAO;AAAA,IACL,cAAc,EAAE,GAAG,UAAU;AAAA,IAC7B,cAAc,EAAE,GAAG,OAAO;AAAA,IAC1B,YAAY,EAAE,GAAG,MAAM;AAAA,IACvB,GAAG;AAAA,EACL;AACF;AAEA,IAAO,qBAAQ;",
6
+ "names": ["usePopper"]
7
+ }
@@ -0,0 +1,86 @@
1
+ "use strict";
2
+ var __create = Object.create;
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __getProtoOf = Object.getPrototypeOf;
7
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
8
+ var __export = (target, all) => {
9
+ for (var name in all)
10
+ __defProp(target, name, { get: all[name], enumerable: true });
11
+ };
12
+ var __copyProps = (to, from, except, desc) => {
13
+ if (from && typeof from === "object" || typeof from === "function") {
14
+ for (let key of __getOwnPropNames(from))
15
+ if (!__hasOwnProp.call(to, key) && key !== except)
16
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
17
+ }
18
+ return to;
19
+ };
20
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
+ // If the importer is in node compatibility mode or this is not an ESM
22
+ // file that has been converted to a CommonJS file using a Babel-
23
+ // compatible transform (i.e. "__esModule" has not been set), then set
24
+ // "default" to the CommonJS "module.exports" for node compatibility.
25
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
26
+ mod
27
+ ));
28
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
+ var usePopoverProviderState_exports = {};
30
+ __export(usePopoverProviderState_exports, {
31
+ default: () => usePopoverProviderState_default
32
+ });
33
+ module.exports = __toCommonJS(usePopoverProviderState_exports);
34
+ var React = __toESM(require("react"));
35
+ var import_react = require("react");
36
+ var import_lodash = require("lodash");
37
+ var import_ds_legacy_utilities = require("@elliemae/ds-legacy-utilities");
38
+ function usePopoverProviderState({
39
+ initialState = {
40
+ reference: null,
41
+ visible: false,
42
+ value: "",
43
+ options: {}
44
+ },
45
+ delay
46
+ }) {
47
+ const triggerRef = (0, import_react.useRef)();
48
+ const [tooltipState, setTooltipState] = (0, import_react.useState)(initialState);
49
+ const show = (state) => {
50
+ setTooltipState((prevState) => ({
51
+ ...prevState,
52
+ ...state,
53
+ visible: true
54
+ }));
55
+ };
56
+ const hide = (state) => {
57
+ setTooltipState((prevState) => ({
58
+ ...prevState,
59
+ ...state,
60
+ visible: false
61
+ }));
62
+ };
63
+ const [showTooltip, hideTooltip] = (0, import_ds_legacy_utilities.useExecutionTimer)(show, hide, delay);
64
+ const handleShowTooltip = (state, e) => {
65
+ triggerRef.current = e.target;
66
+ showTooltip({ ...state, reference: e.target });
67
+ };
68
+ const handleHideTooltip = (state) => {
69
+ hideTooltip(state);
70
+ };
71
+ (0, import_react.useEffect)(() => {
72
+ window.addEventListener("scroll", (0, import_lodash.throttle)(handleHideTooltip, 300), true);
73
+ window.addEventListener("click", handleHideTooltip, true);
74
+ return () => {
75
+ window.removeEventListener("scroll", (0, import_lodash.throttle)(handleHideTooltip, 300), true);
76
+ window.addEventListener("click", handleHideTooltip, true);
77
+ };
78
+ }, [tooltipState.reference]);
79
+ return {
80
+ show: handleShowTooltip,
81
+ hide: handleHideTooltip,
82
+ state: tooltipState
83
+ };
84
+ }
85
+ var usePopoverProviderState_default = usePopoverProviderState;
86
+ //# sourceMappingURL=usePopoverProviderState.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/usePopoverProviderState.tsx", "../../../../../scripts/build/transpile/react-shim.js"],
4
+ "sourcesContent": ["import { useState, useEffect, useRef } from 'react';\nimport { throttle } from 'lodash';\nimport { useExecutionTimer } from '@elliemae/ds-legacy-utilities';\n\nfunction usePopoverProviderState({\n initialState = {\n reference: null,\n visible: false,\n value: '',\n options: {},\n },\n delay,\n}) {\n const triggerRef = useRef();\n const [tooltipState, setTooltipState] = useState(initialState);\n\n const show = (state) => {\n setTooltipState((prevState) => ({\n ...prevState,\n ...state,\n visible: true,\n }));\n };\n const hide = (state) => {\n setTooltipState((prevState) => ({\n ...prevState,\n ...state,\n visible: false,\n }));\n };\n\n const [showTooltip, hideTooltip] = useExecutionTimer(show, hide, delay);\n\n const handleShowTooltip = (state, e) => {\n triggerRef.current = e.target;\n showTooltip({ ...state, reference: e.target });\n };\n\n const handleHideTooltip = (state) => {\n hideTooltip(state);\n };\n\n useEffect(() => {\n window.addEventListener('scroll', throttle(handleHideTooltip, 300), true);\n window.addEventListener('click', handleHideTooltip, true);\n return () => {\n window.removeEventListener('scroll', throttle(handleHideTooltip, 300), true);\n window.addEventListener('click', handleHideTooltip, true);\n };\n }, [tooltipState.reference]);\n\n return {\n show: handleShowTooltip,\n hide: handleHideTooltip,\n state: tooltipState,\n };\n}\n\nexport default usePopoverProviderState;\n", "import * as React from 'react';\nexport { React };\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADAvB,mBAA4C;AAC5C,oBAAyB;AACzB,iCAAkC;AAElC,SAAS,wBAAwB;AAAA,EAC/B,eAAe;AAAA,IACb,WAAW;AAAA,IACX,SAAS;AAAA,IACT,OAAO;AAAA,IACP,SAAS,CAAC;AAAA,EACZ;AAAA,EACA;AACF,GAAG;AACD,QAAM,iBAAa,qBAAO;AAC1B,QAAM,CAAC,cAAc,eAAe,QAAI,uBAAS,YAAY;AAE7D,QAAM,OAAO,CAAC,UAAU;AACtB,oBAAgB,CAAC,eAAe;AAAA,MAC9B,GAAG;AAAA,MACH,GAAG;AAAA,MACH,SAAS;AAAA,IACX,EAAE;AAAA,EACJ;AACA,QAAM,OAAO,CAAC,UAAU;AACtB,oBAAgB,CAAC,eAAe;AAAA,MAC9B,GAAG;AAAA,MACH,GAAG;AAAA,MACH,SAAS;AAAA,IACX,EAAE;AAAA,EACJ;AAEA,QAAM,CAAC,aAAa,WAAW,QAAI,8CAAkB,MAAM,MAAM,KAAK;AAEtE,QAAM,oBAAoB,CAAC,OAAO,MAAM;AACtC,eAAW,UAAU,EAAE;AACvB,gBAAY,EAAE,GAAG,OAAO,WAAW,EAAE,OAAO,CAAC;AAAA,EAC/C;AAEA,QAAM,oBAAoB,CAAC,UAAU;AACnC,gBAAY,KAAK;AAAA,EACnB;AAEA,8BAAU,MAAM;AACd,WAAO,iBAAiB,cAAU,wBAAS,mBAAmB,GAAG,GAAG,IAAI;AACxE,WAAO,iBAAiB,SAAS,mBAAmB,IAAI;AACxD,WAAO,MAAM;AACX,aAAO,oBAAoB,cAAU,wBAAS,mBAAmB,GAAG,GAAG,IAAI;AAC3E,aAAO,iBAAiB,SAAS,mBAAmB,IAAI;AAAA,IAC1D;AAAA,EACF,GAAG,CAAC,aAAa,SAAS,CAAC;AAE3B,SAAO;AAAA,IACL,MAAM;AAAA,IACN,MAAM;AAAA,IACN,OAAO;AAAA,EACT;AACF;AAEA,IAAO,kCAAQ;",
6
+ "names": []
7
+ }