@elliemae/ds-popover 3.1.0-next.2 → 3.1.0-next.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/DSPopover.js +19 -20
- package/dist/cjs/DSPopover.js.map +2 -2
- package/dist/cjs/Popover.js +2 -2
- package/dist/cjs/Popover.js.map +2 -2
- package/dist/esm/DSPopover.js +1 -2
- package/dist/esm/DSPopover.js.map +2 -2
- package/dist/esm/Popover.js +1 -1
- package/dist/esm/Popover.js.map +1 -1
- package/package.json +17 -15
package/dist/cjs/DSPopover.js
CHANGED
|
@@ -48,7 +48,6 @@ __export(DSPopover_exports, {
|
|
|
48
48
|
module.exports = __toCommonJS(DSPopover_exports);
|
|
49
49
|
var React = __toESM(require("react"));
|
|
50
50
|
var import_react = __toESM(require("react"));
|
|
51
|
-
var import_react_desc = require("react-desc");
|
|
52
51
|
var import_ds_utilities = require("@elliemae/ds-utilities");
|
|
53
52
|
var import_ds_hidden = require("@elliemae/ds-hidden");
|
|
54
53
|
var import_Popover = __toESM(require("./Popover"));
|
|
@@ -137,28 +136,28 @@ DSPopover.defaultProps = {
|
|
|
137
136
|
isOpen: void 0
|
|
138
137
|
};
|
|
139
138
|
const popoverProps = {
|
|
140
|
-
containerProps:
|
|
141
|
-
destroyOnHidden:
|
|
142
|
-
renderer:
|
|
143
|
-
popperProps:
|
|
144
|
-
visible:
|
|
145
|
-
content:
|
|
146
|
-
onClickOutside:
|
|
147
|
-
interaction:
|
|
148
|
-
offset:
|
|
149
|
-
showArrow:
|
|
150
|
-
placement:
|
|
151
|
-
boundaries:
|
|
152
|
-
modifiers:
|
|
153
|
-
style:
|
|
154
|
-
referenceEl:
|
|
155
|
-
renderTrigger:
|
|
156
|
-
interactionType:
|
|
157
|
-
isOpen:
|
|
139
|
+
containerProps: import_ds_utilities.PropTypes.shape({}).description("Set of Properties attached to the main container"),
|
|
140
|
+
destroyOnHidden: import_ds_utilities.PropTypes.bool.description("destroy popover on hidden or not").defaultValue(true),
|
|
141
|
+
renderer: import_ds_utilities.PropTypes.func.description("custom renderer"),
|
|
142
|
+
popperProps: import_ds_utilities.PropTypes.object.description("Popper props attached to container"),
|
|
143
|
+
visible: import_ds_utilities.PropTypes.bool.description("is visible or not").defaultValue(false),
|
|
144
|
+
content: import_ds_utilities.PropTypes.oneOfType([import_ds_utilities.PropTypes.element, import_ds_utilities.PropTypes.string]).description("popover content"),
|
|
145
|
+
onClickOutside: import_ds_utilities.PropTypes.func.description("function called on click outside"),
|
|
146
|
+
interaction: import_ds_utilities.PropTypes.string.description("interaction type: hover, click"),
|
|
147
|
+
offset: import_ds_utilities.PropTypes.object.description("offset"),
|
|
148
|
+
showArrow: import_ds_utilities.PropTypes.bool.description("show tooltip arrow or not"),
|
|
149
|
+
placement: import_ds_utilities.PropTypes.string.description("popover placement: top, bottom, right, left"),
|
|
150
|
+
boundaries: import_ds_utilities.PropTypes.string.description("popover boundaries"),
|
|
151
|
+
modifiers: import_ds_utilities.PropTypes.object.description("modifiers"),
|
|
152
|
+
style: import_ds_utilities.PropTypes.object.description("css style object"),
|
|
153
|
+
referenceEl: import_ds_utilities.PropTypes.element.description("reference element"),
|
|
154
|
+
renderTrigger: import_ds_utilities.PropTypes.func.description("render trigger element"),
|
|
155
|
+
interactionType: import_ds_utilities.PropTypes.string.description("interaction type"),
|
|
156
|
+
isOpen: import_ds_utilities.PropTypes.bool.description("open or not").defaultValue(false)
|
|
158
157
|
};
|
|
159
158
|
DSPopover.propTypes = popoverProps;
|
|
160
159
|
DSPopover.displayName = "DSPopover";
|
|
161
|
-
const PopoverWithSchema = (0,
|
|
160
|
+
const PopoverWithSchema = (0, import_ds_utilities.describe)(DSPopover);
|
|
162
161
|
PopoverWithSchema.propTypes = popoverProps;
|
|
163
162
|
var DSPopover_default = DSPopover;
|
|
164
163
|
//# sourceMappingURL=DSPopover.js.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
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
|
|
5
|
-
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADCvB,mBAAkB;AAClB,
|
|
4
|
+
"sourcesContent": ["/* eslint-disable max-lines */\nimport React from 'react';\nimport { PropTypes, describe, 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;\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
6
|
"names": []
|
|
7
7
|
}
|
package/dist/cjs/Popover.js
CHANGED
|
@@ -59,7 +59,7 @@ var import_ds_classnames = require("@elliemae/ds-classnames");
|
|
|
59
59
|
var import_ds_utilities = require("@elliemae/ds-utilities");
|
|
60
60
|
var import_ds_hidden = require("@elliemae/ds-hidden");
|
|
61
61
|
var import_ds_portal = __toESM(require("@elliemae/ds-portal"));
|
|
62
|
-
var
|
|
62
|
+
var import_ds_system = require("@elliemae/ds-system");
|
|
63
63
|
const blockName = "popover";
|
|
64
64
|
const PopoverComponent = (0, import_ds_classnames.aggregatedClasses)("div")(blockName);
|
|
65
65
|
function Popover(_a) {
|
|
@@ -90,7 +90,7 @@ function Popover(_a) {
|
|
|
90
90
|
ref: popoverRef
|
|
91
91
|
}, otherProps), hiddenTransitionProps));
|
|
92
92
|
(0, import_ds_utilities.useOnClickOutside)(popoverRef, onClickOutside);
|
|
93
|
-
const theme = (0, import_react.useContext)(
|
|
93
|
+
const theme = (0, import_react.useContext)(import_ds_system.ThemeContext);
|
|
94
94
|
const wrapStyle = (0, import_lodash.omit)(style, "zIndex") || {};
|
|
95
95
|
return destroyOnHidden && !hiddenTransitionProps.destroyed && /* @__PURE__ */ import_react.default.createElement(import_ds_portal.default, null, /* @__PURE__ */ import_react.default.createElement("div", __spreadProps(__spreadValues({}, popperProps), {
|
|
96
96
|
style: __spreadValues(__spreadValues({ zIndex: theme.zIndex.popper }, style), popperProps.style)
|
package/dist/cjs/Popover.js.map
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
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-classnames';\nimport { isFunction, removeUndefinedProperties, useOnClickOutside } from '@elliemae/ds-utilities';\nimport { useHiddenTransition } from '@elliemae/ds-hidden';\nimport DSPortal from '@elliemae/ds-portal';\nimport { ThemeContext } from '
|
|
5
|
-
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADAvB,mBAA0C;AAC1C,oBAAqB;AACrB,2BAAkC;AAClC,0BAAyE;AACzE,uBAAoC;AACpC,uBAAqB;AACrB
|
|
4
|
+
"sourcesContent": ["import React, { useRef, useContext } 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';\nimport { ThemeContext } from '@elliemae/ds-system';\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 theme = useContext(ThemeContext);\n\n const wrapStyle = omit(style, 'zIndex') || {};\n return (\n destroyOnHidden &&\n !hiddenTransitionProps.destroyed && (\n <DSPortal>\n <div {...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;ADAvB,mBAA0C;AAC1C,oBAAqB;AACrB,2BAAkC;AAClC,0BAAyE;AACzE,uBAAoC;AACpC,uBAAqB;AACrB,uBAA6B;AAE7B,MAAM,YAAY;AAClB,MAAM,mBAAmB,4CAAkB,KAAK,EAAE,SAAS;AAE3D,iBAAiB,IAUd;AAVc,eACf;AAAA;AAAA,IACA,kBAAkB;AAAA,IAClB,WAAW;AAAA,IACX,cAAc,CAAC;AAAA,IACf,UAAU;AAAA,IACV,UAAU;AAAA,IACV,iBAAiB,MAAM;AAAA,IACvB;AAAA,MARe,IASZ,uBATY,IASZ;AAAA,IARH;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA;AAGA,QAAM,aAAa,yBAAO;AAC1B,QAAM,wBAAwB,0CAAoB,EAAE,QAAQ,CAAC;AAC7D,QAAM,eAAe,mDAA0B;AAAA,IAC7C,gBAAgB;AAAA,IAChB;AAAA,IACA,KAAK;AAAA,KACF,aACA,sBACJ;AAED,6CAAkB,YAAY,cAAc;AAE5C,QAAM,QAAQ,6BAAW,6BAAY;AAErC,QAAM,YAAY,wBAAK,OAAO,QAAQ,KAAK,CAAC;AAC5C,SACE,mBACA,CAAC,sBAAsB,aACrB,mDAAC,gCACC,mDAAC,wCAAQ,cAAR;AAAA,IAAqB,OAAO,gCAAE,QAAQ,MAAM,OAAO,UAAW,QAAU,YAAY;AAAA,MAClF,oCAAW,QAAQ,IAAI,SAAS,YAAY,IAAI,mDAAC,mDAAqB,eAArB;AAAA,IAAmC,OAAO;AAAA,IAAW,CACzG,CACF;AAGN;AAEA,IAAO,kBAAQ;",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
package/dist/esm/DSPopover.js
CHANGED
|
@@ -19,8 +19,7 @@ var __spreadValues = (a, b) => {
|
|
|
19
19
|
var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
|
|
20
20
|
import * as React from "react";
|
|
21
21
|
import React2 from "react";
|
|
22
|
-
import { PropTypes, describe } from "
|
|
23
|
-
import { useHoverHandlersDelay } from "@elliemae/ds-utilities";
|
|
22
|
+
import { PropTypes, describe, useHoverHandlersDelay } from "@elliemae/ds-utilities";
|
|
24
23
|
import { useHiddenController } from "@elliemae/ds-hidden";
|
|
25
24
|
import Popover from "./Popover";
|
|
26
25
|
import usePopper from "./usePopper";
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../scripts/build/transpile/react-shim.js", "../../src/DSPopover.tsx"],
|
|
4
|
-
"sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable max-lines */\nimport React from 'react';\nimport { PropTypes, describe
|
|
5
|
-
"mappings": ";;;;;;;;;;;;;;;;;;;AAAA;ACCA;AACA;AACA;AACA;AACA;AACA;AACA;
|
|
4
|
+
"sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable max-lines */\nimport React from 'react';\nimport { PropTypes, describe, 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;\nDSPopover.displayName = 'DSPopover';\nconst PopoverWithSchema = describe(DSPopover);\nPopoverWithSchema.propTypes = popoverProps;\n\nexport { DSPopover, usePopper, usePopoverProviderState, PopoverWithSchema };\n\nexport default DSPopover;\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
package/dist/esm/Popover.js
CHANGED
|
@@ -36,7 +36,7 @@ import { aggregatedClasses } from "@elliemae/ds-classnames";
|
|
|
36
36
|
import { isFunction, removeUndefinedProperties, useOnClickOutside } from "@elliemae/ds-utilities";
|
|
37
37
|
import { useHiddenTransition } from "@elliemae/ds-hidden";
|
|
38
38
|
import DSPortal from "@elliemae/ds-portal";
|
|
39
|
-
import { ThemeContext } from "
|
|
39
|
+
import { ThemeContext } from "@elliemae/ds-system";
|
|
40
40
|
const blockName = "popover";
|
|
41
41
|
const PopoverComponent = aggregatedClasses("div")(blockName);
|
|
42
42
|
function Popover(_a) {
|
package/dist/esm/Popover.js.map
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../scripts/build/transpile/react-shim.js", "../../src/Popover.tsx"],
|
|
4
|
-
"sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import React, { useRef, useContext } 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';\nimport { ThemeContext } from '
|
|
4
|
+
"sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import React, { useRef, useContext } 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';\nimport { ThemeContext } from '@elliemae/ds-system';\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 theme = useContext(ThemeContext);\n\n const wrapStyle = omit(style, 'zIndex') || {};\n return (\n destroyOnHidden &&\n !hiddenTransitionProps.destroyed && (\n <DSPortal>\n <div {...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"],
|
|
5
5
|
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;ACAA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA,MAAM,YAAY;AAClB,MAAM,mBAAmB,kBAAkB,KAAK,EAAE,SAAS;AAE3D,iBAAiB,IAUd;AAVc,eACf;AAAA;AAAA,IACA,kBAAkB;AAAA,IAClB,WAAW;AAAA,IACX,cAAc,CAAC;AAAA,IACf,UAAU;AAAA,IACV,UAAU;AAAA,IACV,iBAAiB,MAAM;AAAA,IACvB;AAAA,MARe,IASZ,uBATY,IASZ;AAAA,IARH;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA;AAGA,QAAM,aAAa,OAAO;AAC1B,QAAM,wBAAwB,oBAAoB,EAAE,QAAQ,CAAC;AAC7D,QAAM,eAAe,0BAA0B;AAAA,IAC7C,gBAAgB;AAAA,IAChB;AAAA,IACA,KAAK;AAAA,KACF,aACA,sBACJ;AAED,oBAAkB,YAAY,cAAc;AAE5C,QAAM,QAAQ,WAAW,YAAY;AAErC,QAAM,YAAY,KAAK,OAAO,QAAQ,KAAK,CAAC;AAC5C,SACE,mBACA,CAAC,sBAAsB,aACrB,qCAAC,gBACC,qCAAC,wCAAQ,cAAR;AAAA,IAAqB,OAAO,gCAAE,QAAQ,MAAM,OAAO,UAAW,QAAU,YAAY;AAAA,MAClF,WAAW,QAAQ,IAAI,SAAS,YAAY,IAAI,qCAAC,mDAAqB,eAArB;AAAA,IAAmC,OAAO;AAAA,IAAW,CACzG,CACF;AAGN;AAEA,IAAO,kBAAQ;",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@elliemae/ds-popover",
|
|
3
|
-
"version": "3.1.0-next.
|
|
3
|
+
"version": "3.1.0-next.5",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"description": "ICE MT - Dimsum - Popover",
|
|
6
6
|
"files": [
|
|
@@ -62,21 +62,15 @@
|
|
|
62
62
|
"reportFile": "tests.xml",
|
|
63
63
|
"indent": 4
|
|
64
64
|
},
|
|
65
|
-
"scripts": {
|
|
66
|
-
"dev": "cross-env NODE_ENV=development node ../../scripts/build/build.mjs --watch",
|
|
67
|
-
"test": "node ../../scripts/testing/test.mjs",
|
|
68
|
-
"lint": "node ../../scripts/lint.mjs",
|
|
69
|
-
"dts": "node ../../scripts/dts.mjs",
|
|
70
|
-
"build": "cross-env NODE_ENV=production node ../../scripts/build/build.mjs"
|
|
71
|
-
},
|
|
72
65
|
"dependencies": {
|
|
73
|
-
"@elliemae/ds-classnames": "3.1.0-next.
|
|
74
|
-
"@elliemae/ds-hidden": "3.1.0-next.
|
|
75
|
-
"@elliemae/ds-popper": "3.1.0-next.
|
|
76
|
-
"@elliemae/ds-portal": "3.1.0-next.
|
|
77
|
-
"@elliemae/ds-
|
|
66
|
+
"@elliemae/ds-classnames": "3.1.0-next.5",
|
|
67
|
+
"@elliemae/ds-hidden": "3.1.0-next.5",
|
|
68
|
+
"@elliemae/ds-popper": "3.1.0-next.5",
|
|
69
|
+
"@elliemae/ds-portal": "3.1.0-next.5",
|
|
70
|
+
"@elliemae/ds-system": "3.1.0-next.5",
|
|
71
|
+
"@elliemae/ds-utilities": "3.1.0-next.5",
|
|
78
72
|
"popper.js": "~1.16.1",
|
|
79
|
-
"
|
|
73
|
+
"styled-components": "~5.3.5"
|
|
80
74
|
},
|
|
81
75
|
"peerDependencies": {
|
|
82
76
|
"lodash": "^4.17.21",
|
|
@@ -86,5 +80,13 @@
|
|
|
86
80
|
"publishConfig": {
|
|
87
81
|
"access": "public",
|
|
88
82
|
"typeSafety": false
|
|
83
|
+
},
|
|
84
|
+
"scripts": {
|
|
85
|
+
"dev": "cross-env NODE_ENV=development node ../../scripts/build/build.mjs --watch",
|
|
86
|
+
"test": "node ../../scripts/testing/test.mjs",
|
|
87
|
+
"lint": "node ../../scripts/lint.mjs",
|
|
88
|
+
"dts": "node ../../scripts/dts.mjs",
|
|
89
|
+
"build": "cross-env NODE_ENV=production node ../../scripts/build/build.mjs",
|
|
90
|
+
"checkDeps": "npx -yes ../ds-codemods check-missing-packages --projectFolderPath=\"./\" --ignorePackagesGlobPattern=\"\" --ignoreFilesGlobPattern=\"**/test-ables/*,**/tests/*\""
|
|
89
91
|
}
|
|
90
|
-
}
|
|
92
|
+
}
|