@elliemae/ds-popper 2.3.1-rc.2 → 3.0.0-alpha.2

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 (56) hide show
  1. package/dist/cjs/DSPopper.js +117 -0
  2. package/dist/cjs/DSPopper.js.map +7 -0
  3. package/dist/cjs/PopperContent.js +158 -0
  4. package/dist/cjs/PopperContent.js.map +7 -0
  5. package/dist/cjs/PopperImpl.js +281 -0
  6. package/dist/cjs/PopperImpl.js.map +7 -0
  7. package/dist/cjs/getArrowStylesBySize.js +73 -0
  8. package/dist/cjs/getArrowStylesBySize.js.map +7 -0
  9. package/dist/cjs/index.js +37 -0
  10. package/dist/cjs/index.js.map +7 -0
  11. package/dist/cjs/interaction.js +40 -0
  12. package/dist/cjs/interaction.js.map +7 -0
  13. package/dist/cjs/positions.js +69 -0
  14. package/dist/cjs/positions.js.map +7 -0
  15. package/dist/cjs/props.js +89 -0
  16. package/dist/cjs/props.js.map +7 -0
  17. package/dist/esm/DSPopper.js +88 -0
  18. package/dist/esm/DSPopper.js.map +7 -0
  19. package/dist/esm/PopperContent.js +131 -0
  20. package/dist/esm/PopperContent.js.map +7 -0
  21. package/{esm → dist/esm}/PopperImpl.js +75 -143
  22. package/dist/esm/PopperImpl.js.map +7 -0
  23. package/dist/esm/getArrowStylesBySize.js +46 -0
  24. package/dist/esm/getArrowStylesBySize.js.map +7 -0
  25. package/dist/esm/index.js +8 -0
  26. package/dist/esm/index.js.map +7 -0
  27. package/dist/esm/interaction.js +11 -0
  28. package/dist/esm/interaction.js.map +7 -0
  29. package/dist/esm/positions.js +40 -0
  30. package/dist/esm/positions.js.map +7 -0
  31. package/dist/esm/props.js +60 -0
  32. package/dist/esm/props.js.map +7 -0
  33. package/package.json +41 -32
  34. package/cjs/DSPopper.js +0 -97
  35. package/cjs/PopperContent.js +0 -156
  36. package/cjs/PopperImpl.js +0 -335
  37. package/cjs/getArrowStylesBySize.js +0 -46
  38. package/cjs/index.js +0 -19
  39. package/cjs/interaction.js +0 -12
  40. package/cjs/positions.js +0 -25
  41. package/cjs/props.js +0 -88
  42. package/esm/DSPopper.js +0 -83
  43. package/esm/PopperContent.js +0 -147
  44. package/esm/getArrowStylesBySize.js +0 -37
  45. package/esm/index.js +0 -4
  46. package/esm/interaction.js +0 -7
  47. package/esm/positions.js +0 -20
  48. package/esm/props.js +0 -83
  49. package/types/DSPopper.d.ts +0 -156
  50. package/types/PopperContent.d.ts +0 -21
  51. package/types/PopperImpl.d.ts +0 -52
  52. package/types/getArrowStylesBySize.d.ts +0 -2
  53. package/types/index.d.ts +0 -3
  54. package/types/interaction.d.ts +0 -5
  55. package/types/positions.d.ts +0 -18
  56. package/types/props.d.ts +0 -119
package/package.json CHANGED
@@ -1,43 +1,46 @@
1
1
  {
2
2
  "name": "@elliemae/ds-popper",
3
- "version": "2.3.1-rc.2",
3
+ "version": "3.0.0-alpha.2",
4
4
  "license": "MIT",
5
5
  "description": "ICE MT - Dimsum - Popper",
6
- "module": "./esm/index.js",
7
- "main": "./cjs/index.js",
8
- "types": "./types/index.d.ts",
6
+ "files": [
7
+ "dist"
8
+ ],
9
+ "module": "./dist/esm/index.js",
10
+ "main": "./dist/cjs/index.js",
11
+ "types": "./dist/types/index.d.ts",
9
12
  "exports": {
10
13
  ".": {
11
- "import": "./esm/index.js",
12
- "require": "./cjs/index.js"
14
+ "import": "./dist/esm/index.js",
15
+ "require": "./dist/cjs/index.js"
13
16
  },
14
17
  "./props": {
15
- "import": "./esm/props.js",
16
- "require": "./cjs/props.js"
18
+ "import": "./dist/esm/props.js",
19
+ "require": "./dist/cjs/props.js"
17
20
  },
18
21
  "./positions": {
19
- "import": "./esm/positions.js",
20
- "require": "./cjs/positions.js"
22
+ "import": "./dist/esm/positions.js",
23
+ "require": "./dist/cjs/positions.js"
21
24
  },
22
25
  "./PopperImpl": {
23
- "import": "./esm/PopperImpl.js",
24
- "require": "./cjs/PopperImpl.js"
26
+ "import": "./dist/esm/PopperImpl.js",
27
+ "require": "./dist/cjs/PopperImpl.js"
25
28
  },
26
29
  "./PopperContent": {
27
- "import": "./esm/PopperContent.js",
28
- "require": "./cjs/PopperContent.js"
30
+ "import": "./dist/esm/PopperContent.js",
31
+ "require": "./dist/cjs/PopperContent.js"
29
32
  },
30
33
  "./interaction": {
31
- "import": "./esm/interaction.js",
32
- "require": "./cjs/interaction.js"
34
+ "import": "./dist/esm/interaction.js",
35
+ "require": "./dist/cjs/interaction.js"
33
36
  },
34
37
  "./getArrowStylesBySize": {
35
- "import": "./esm/getArrowStylesBySize.js",
36
- "require": "./cjs/getArrowStylesBySize.js"
38
+ "import": "./dist/esm/getArrowStylesBySize.js",
39
+ "require": "./dist/cjs/getArrowStylesBySize.js"
37
40
  },
38
41
  "./DSPopper": {
39
- "import": "./esm/DSPopper.js",
40
- "require": "./cjs/DSPopper.js"
42
+ "import": "./dist/esm/DSPopper.js",
43
+ "require": "./dist/cjs/DSPopper.js"
41
44
  }
42
45
  },
43
46
  "sideEffects": [
@@ -49,23 +52,23 @@
49
52
  "url": "https://git.elliemae.io/platform-ui/dimsum.git"
50
53
  },
51
54
  "engines": {
52
- "npm": ">=7",
53
- "node": ">=14"
55
+ "pnpm": ">=6",
56
+ "node": ">=16"
54
57
  },
55
58
  "author": "ICE MT",
56
- "scripts": {
57
- "dev": "cross-env NODE_ENV=development && node ../../scripts/build/build.js -w",
58
- "prebuild": "exit 0",
59
- "predev": "exit 0",
60
- "build": "node ../../scripts/build/build.js"
59
+ "jestSonar": {
60
+ "sonar56x": true,
61
+ "reportPath": "reports",
62
+ "reportFile": "tests.xml",
63
+ "indent": 4
61
64
  },
62
65
  "dependencies": {
63
- "@elliemae/ds-overlay": "2.3.1-rc.2",
64
- "@elliemae/ds-utilities": "2.3.1-rc.2",
65
- "@elliemae/react-popper": "1.0.2",
66
+ "@elliemae/ds-overlay": "3.0.0-alpha.2",
67
+ "@elliemae/ds-utilities": "3.0.0-alpha.2",
66
68
  "memoize-one": "~5.1.1",
67
69
  "prop-types": "~15.7.2",
68
70
  "react-desc": "~4.1.3",
71
+ "react-popper": "~1.3.11",
69
72
  "react-spring": "~8.0.27"
70
73
  },
71
74
  "peerDependencies": {
@@ -74,7 +77,13 @@
74
77
  },
75
78
  "publishConfig": {
76
79
  "access": "public",
77
- "directory": "dist",
78
- "generateSubmodules": true
80
+ "typeSafety": false
81
+ },
82
+ "scripts": {
83
+ "dev": "cross-env NODE_ENV=development node ../../scripts/build/build.mjs --watch",
84
+ "test": "node ../../scripts/testing/test.mjs",
85
+ "lint": "node ../../scripts/lint.mjs",
86
+ "dts": "node ../../scripts/dts.mjs",
87
+ "build": "cross-env NODE_ENV=production node ../../scripts/build/build.mjs"
79
88
  }
80
89
  }
package/cjs/DSPopper.js DELETED
@@ -1,97 +0,0 @@
1
- 'use strict';
2
-
3
- Object.defineProperty(exports, '__esModule', { value: true });
4
-
5
- var _jsx = require('@babel/runtime/helpers/jsx');
6
- require('react');
7
- var reactDesc = require('react-desc');
8
- var PopperImpl = require('./PopperImpl.js');
9
- var positions = require('./positions.js');
10
- var interaction = require('./interaction.js');
11
- var props = require('./props.js');
12
-
13
- function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
14
-
15
- var _jsx__default = /*#__PURE__*/_interopDefaultLegacy(_jsx);
16
-
17
- const DSPopper = _ref => {
18
- let {
19
- containerProps,
20
- arrowGap,
21
- arrowSize,
22
- blockName,
23
- contentOffset,
24
- contentStyle,
25
- contentComponent,
26
- delayClose,
27
- delayOpen,
28
- interactionType,
29
- isOpen,
30
- // if this is set DSPopper would be a controlled component if not, an uncontrolled one
31
- onOpen,
32
- onClose,
33
- onPlacementChange,
34
- placement,
35
- preventOverflow,
36
- showArrow,
37
- closeAnimationConfig,
38
- openAnimationConfig,
39
- usePortal,
40
- triggerComponent,
41
- wrapExtraComponent,
42
- getTargetFromChildren,
43
- getContentFromChildren,
44
- modifiers,
45
- triggerRef,
46
- children: customPopper,
47
- renderReference,
48
- referenceNode,
49
- zIndex,
50
- hideIfNotVisible
51
- } = _ref;
52
- return /*#__PURE__*/_jsx__default["default"](PopperImpl["default"], {
53
- arrowGap: arrowGap,
54
- arrowSize: arrowSize,
55
- blockName: blockName,
56
- closeAnimationConfig: closeAnimationConfig,
57
- containerProps: containerProps,
58
- contentComponent: contentComponent,
59
- contentOffset: contentOffset,
60
- contentStyle: contentStyle,
61
- delayClose: delayClose,
62
- delayOpen: delayOpen,
63
- getContentFromChildren: getContentFromChildren,
64
- getTargetFromChildren: getTargetFromChildren,
65
- interactionType: interactionType,
66
- isOpen: isOpen,
67
- modifiers: modifiers,
68
- onOpen: onOpen,
69
- onClose: onClose,
70
- onPlacementChange: onPlacementChange,
71
- openAnimationConfig: openAnimationConfig,
72
- placement: placement,
73
- preventOverflow: preventOverflow,
74
- referenceNode: referenceNode,
75
- renderReference: renderReference,
76
- showArrow: showArrow,
77
- triggerComponent: triggerComponent,
78
- triggerRef: triggerRef,
79
- usePortal: usePortal,
80
- wrapExtraComponent: wrapExtraComponent,
81
- zIndex: zIndex,
82
- hideIfNotVisible: hideIfNotVisible
83
- }, void 0, customPopper);
84
- }; // @deprecated: There's the NEW (not finished) popover that uses its own popper implementation.
85
-
86
-
87
- DSPopper.defaultProps = props.defaultProps;
88
- const DSPopperWithSchema = reactDesc.describe(DSPopper);
89
- DSPopperWithSchema.propTypes = props.popperProps;
90
-
91
- exports.PopperPositions = positions.Position;
92
- exports.positions = positions.positions;
93
- exports.PopperInteractions = interaction.Interaction;
94
- exports.interactions = interaction.interactions;
95
- exports.DSPopper = DSPopper;
96
- exports.DSPopperWithSchema = DSPopperWithSchema;
97
- exports["default"] = DSPopper;
@@ -1,156 +0,0 @@
1
- 'use strict';
2
-
3
- require('core-js/modules/esnext.async-iterator.filter.js');
4
- require('core-js/modules/esnext.iterator.constructor.js');
5
- require('core-js/modules/esnext.iterator.filter.js');
6
- require('core-js/modules/esnext.async-iterator.for-each.js');
7
- require('core-js/modules/esnext.iterator.for-each.js');
8
- var _jsx = require('@babel/runtime/helpers/jsx');
9
- var _defineProperty = require('@babel/runtime/helpers/defineProperty');
10
- var react = require('react');
11
- var reactPopper = require('@elliemae/react-popper');
12
- var renderprops = require('react-spring/renderprops');
13
- var getComponentFromProps = require('@elliemae/ds-utilities/getComponentFromProps');
14
- var DSOverlay = require('@elliemae/ds-overlay');
15
- var getArrowStylesBySize = require('./getArrowStylesBySize.js');
16
- var jsxRuntime = require('react/jsx-runtime');
17
-
18
- function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
19
-
20
- var _jsx__default = /*#__PURE__*/_interopDefaultLegacy(_jsx);
21
- var _defineProperty__default = /*#__PURE__*/_interopDefaultLegacy(_defineProperty);
22
- var getComponentFromProps__default = /*#__PURE__*/_interopDefaultLegacy(getComponentFromProps);
23
- var DSOverlay__default = /*#__PURE__*/_interopDefaultLegacy(DSOverlay);
24
-
25
- var _svg;
26
-
27
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
28
-
29
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty__default["default"](target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
30
- const Content = renderprops.Keyframes.Spring({});
31
- class PopperContent extends react.PureComponent {
32
- // eslint-disable-next-line react/static-property-placement
33
- constructor(props) {
34
- super(props);
35
- this.renderContent = this.renderContent.bind(this);
36
- this.renderArrow = this.renderArrow.bind(this);
37
- this.handleRestAnimation = this.handleRestAnimation.bind(this);
38
- this.handleRestAnimation = this.handleRestAnimation.bind(this);
39
- }
40
-
41
- handleRestAnimation() {
42
- const {
43
- isOpen,
44
- onContentDestroyed
45
- } = this.props;
46
-
47
- if (!isOpen) {
48
- onContentDestroyed();
49
- }
50
- }
51
-
52
- renderArrow(_ref, placement) {
53
- let {
54
- ref,
55
- style
56
- } = _ref;
57
- const {
58
- blockName,
59
- showArrow
60
- } = this.props;
61
- if (!showArrow) return null;
62
- return /*#__PURE__*/jsxRuntime.jsx("div", {
63
- ref: ref,
64
- className: "".concat(blockName || 'popper', "__arrow"),
65
- "data-placement": placement,
66
- style: _objectSpread(_objectSpread({}, style), getArrowStylesBySize.getArrowStylesBySize(placement, 25)),
67
- children: _svg || (_svg = /*#__PURE__*/_jsx__default["default"]("svg", {
68
- viewBox: "0 0 30 30"
69
- }, void 0, /*#__PURE__*/_jsx__default["default"]("path", {
70
- className: "stroke",
71
- 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 C26.7,29,24.6,28.1,23.7,27.1z"
72
- }), /*#__PURE__*/_jsx__default["default"]("path", {
73
- className: "fill",
74
- 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"
75
- })))
76
- }, "popper-arrow");
77
- }
78
-
79
- renderContent(_ref2) {
80
- let {
81
- ref,
82
- style,
83
- placement,
84
- arrowProps,
85
- scheduleUpdate,
86
- outOfBoundaries
87
- } = _ref2;
88
- const {
89
- contentComponent,
90
- contentStyle,
91
- isOpen,
92
- closeAnimationConfig,
93
- openAnimationConfig,
94
- onMouseEnter,
95
- onMouseLeave,
96
- containerProps,
97
- zIndex,
98
- hideIfNotVisible
99
- } = this.props;
100
-
101
- const computedStyle = _objectSpread(_objectSpread(_objectSpread({}, style), contentStyle), {}, {
102
- zIndex
103
- });
104
-
105
- return /*#__PURE__*/jsxRuntime.jsx("div", _objectSpread(_objectSpread({}, containerProps), {}, {
106
- "data-placement": placement,
107
- onMouseEnter: onMouseEnter,
108
- onMouseLeave: onMouseLeave,
109
- style: computedStyle,
110
- "data-testid": "popper-container",
111
- children: /*#__PURE__*/_jsx__default["default"](Content, {
112
- native: true,
113
- onRest: this.handleRestAnimation,
114
- state: isOpen && (!outOfBoundaries || !hideIfNotVisible) ? 'open' : 'close',
115
- states: {
116
- open: _objectSpread(_objectSpread({}, openAnimationConfig), {}, {
117
- from: closeAnimationConfig.to
118
- }),
119
- close: closeAnimationConfig
120
- }
121
- }, void 0, animationStyle => /*#__PURE__*/jsxRuntime.jsx(renderprops.animated.div, {
122
- ref: ref,
123
- style: animationStyle,
124
- children: getComponentFromProps__default["default"](contentComponent, {
125
- scheduleUpdate
126
- }, [this.renderArrow(arrowProps, placement)])
127
- }))
128
- }));
129
- }
130
-
131
- render() {
132
- const {
133
- destroyed = false,
134
- onClickOutside = () => null,
135
- placement = 'bottom-start',
136
- modifiers = {},
137
- referenceNode,
138
- usePortal = true
139
- } = this.props;
140
- return /*#__PURE__*/_jsx__default["default"](DSOverlay__default["default"], {
141
- isOpen: !destroyed,
142
- onClickOutside: onClickOutside,
143
- usePortal: usePortal
144
- }, void 0, /*#__PURE__*/_jsx__default["default"](reactPopper.Popper, {
145
- modifiers: modifiers,
146
- placement: placement,
147
- referenceElement: referenceNode
148
- }, void 0, this.renderContent));
149
- }
150
-
151
- }
152
- PopperContent.defaultProps = {
153
- onContentDestroyed: () => null
154
- };
155
-
156
- module.exports = PopperContent;