@mirai/ui 2.0.21 → 2.0.22
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.
|
@@ -11,7 +11,7 @@ var _helpers = require("../../helpers");
|
|
|
11
11
|
var _primitives = require("../../primitives");
|
|
12
12
|
var _helpers2 = require("./helpers");
|
|
13
13
|
var _TooltipModule = _interopRequireDefault(require("./Tooltip.module.css"));
|
|
14
|
-
var _excluded = ["children", "left", "pressable", "right", "Template", "text", "timestamp", "top", "visible"],
|
|
14
|
+
var _excluded = ["children", "left", "pressable", "right", "Template", "text", "timestamp", "top", "visible", "onPress"],
|
|
15
15
|
_excluded2 = ["fixed", "testId"];
|
|
16
16
|
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
17
17
|
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
@@ -42,6 +42,8 @@ var Tooltip = function Tooltip(_ref) {
|
|
|
42
42
|
propTop = _ref.top,
|
|
43
43
|
_ref$visible = _ref.visible,
|
|
44
44
|
propVisible = _ref$visible === void 0 ? false : _ref$visible,
|
|
45
|
+
_ref$onPress = _ref.onPress,
|
|
46
|
+
onPress = _ref$onPress === void 0 ? function () {} : _ref$onPress,
|
|
45
47
|
inherit = _objectWithoutProperties(_ref, _excluded);
|
|
46
48
|
var _useState = (0, _react.useState)(propVisible),
|
|
47
49
|
_useState2 = _slicedToArray(_useState, 2),
|
|
@@ -97,6 +99,7 @@ var Tooltip = function Tooltip(_ref) {
|
|
|
97
99
|
onClick: pressable ? function (event) {
|
|
98
100
|
event.stopPropagation();
|
|
99
101
|
setVisible(!visible);
|
|
102
|
+
onPress(event, !visible);
|
|
100
103
|
} : undefined
|
|
101
104
|
}, _defineProperty(_objectSpread2, (0, _helpers2.isPressableInstance)(child) ? 'onEnter' : 'onMouseEnter', !pressable ? function () {
|
|
102
105
|
return setVisible(true);
|
|
@@ -124,6 +127,7 @@ Tooltip.propTypes = {
|
|
|
124
127
|
text: _propTypes.default.string,
|
|
125
128
|
timestamp: _propTypes.default.number,
|
|
126
129
|
top: _propTypes.default.bool,
|
|
127
|
-
visible: _propTypes.default.bool
|
|
130
|
+
visible: _propTypes.default.bool,
|
|
131
|
+
onPress: _propTypes.default.func
|
|
128
132
|
};
|
|
129
133
|
//# sourceMappingURL=Tooltip.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Tooltip.js","names":["Tooltip","children","propLeft","left","pressable","propRight","right","Template","text","timestamp","propTop","top","visible","propVisible","inherit","useState","setVisible","position","setPosition","contentRef","useRef","ref","fixed","testId","others","useEffect","handleClickOutside","target","current","contains","document","addEventListener","removeEventListener","React","createElement","View","Fragment","undefined","Children","map","child","index","cloneElement","key","props","onClick","event","stopPropagation","isPressableInstance","styles","style","dispatcher","className","tooltip","align","bottom","displayName","propTypes","PropTypes","node","isRequired","bool","oneOfType","func","string","number"],"sources":["../../../src/components/Tooltip/Tooltip.jsx"],"sourcesContent":["import PropTypes from 'prop-types';\nimport React, { useEffect, useState, useRef } from 'react';\n\nimport { styles } from '../../helpers';\nimport { Layer, LayerContent, Text, View } from '../../primitives';\nimport { isPressableInstance } from './helpers';\nimport style from './Tooltip.module.css';\n\nconst Tooltip = ({\n children,\n left: propLeft,\n pressable = false,\n right: propRight,\n Template,\n text,\n timestamp,\n top: propTop,\n visible: propVisible = false,\n ...inherit\n}) => {\n const [visible, setVisible] = useState(propVisible);\n const [position, setPosition] = useState({});\n const contentRef = useRef();\n const ref = useRef();\n\n const { fixed, testId, ...others } = inherit;\n const { left, right, top = propTop } = position;\n\n useEffect(() => {\n if (!pressable || !visible) return;\n\n const handleClickOutside = ({ target } = {}) =>\n !contentRef.current?.contains(target) && !ref.current?.contains(target) && setVisible(false);\n\n document.addEventListener('click', handleClickOutside, true);\n\n return () => document.removeEventListener('click', handleClickOutside, true);\n\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [visible]);\n\n return text || Template ? (\n <Layer\n {...{ fixed, testId, timestamp, top, visible }}\n centered\n forceRender={false}\n left={propLeft}\n right={propRight}\n tag=\"tooltip\"\n onPosition={setPosition}\n >\n {React.createElement(\n pressable ? View : React.Fragment,\n { ...(pressable ? { ref } : undefined) },\n React.Children.map(children, (child, index) => {\n return React.cloneElement(child, {\n key: index,\n ...child.props,\n onClick: pressable\n ? (event) => {\n event.stopPropagation();\n setVisible(!visible);\n }\n : undefined,\n [isPressableInstance(child) ? 'onEnter' : 'onMouseEnter']: !pressable ? () => setVisible(true) : undefined,\n [isPressableInstance(child) ? 'onLeave' : 'onMouseLeave']: !pressable ? () => setVisible(false) : undefined,\n className: styles(style.dispatcher, child.props.className),\n testId: testId ? `${testId}-dispatcher` : undefined,\n });\n }),\n )}\n\n <LayerContent>\n <View\n {...others}\n {...(pressable ? { ref: contentRef } : undefined)}\n className={styles(\n style.tooltip,\n (propLeft || propRight) && style.align,\n left && style.left,\n right && style.right,\n top ? style.top : style.bottom,\n others.className,\n )}\n >\n {Template ? (\n <Template />\n ) : (\n <Text bold small className={style.text}>\n {text}\n </Text>\n )}\n </View>\n </LayerContent>\n </Layer>\n ) : (\n <>{children}</>\n );\n};\n\nTooltip.displayName = 'Component:Tooltip';\n\nTooltip.propTypes = {\n children: PropTypes.node.isRequired,\n left: PropTypes.bool,\n pressable: PropTypes.bool,\n right: PropTypes.bool,\n Template: PropTypes.oneOfType([PropTypes.node, PropTypes.func]),\n text: PropTypes.string,\n timestamp: PropTypes.number,\n top: PropTypes.bool,\n visible: PropTypes.bool,\n};\n\nexport { Tooltip };\n"],"mappings":";;;;;;;AAAA;AACA;AAEA;AACA;AACA;AACA;AAAyC;EAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAEzC,IAAMA,OAAO,GAAG,SAAVA,OAAO,
|
|
1
|
+
{"version":3,"file":"Tooltip.js","names":["Tooltip","children","propLeft","left","pressable","propRight","right","Template","text","timestamp","propTop","top","visible","propVisible","onPress","inherit","useState","setVisible","position","setPosition","contentRef","useRef","ref","fixed","testId","others","useEffect","handleClickOutside","target","current","contains","document","addEventListener","removeEventListener","React","createElement","View","Fragment","undefined","Children","map","child","index","cloneElement","key","props","onClick","event","stopPropagation","isPressableInstance","styles","style","dispatcher","className","tooltip","align","bottom","displayName","propTypes","PropTypes","node","isRequired","bool","oneOfType","func","string","number"],"sources":["../../../src/components/Tooltip/Tooltip.jsx"],"sourcesContent":["import PropTypes from 'prop-types';\nimport React, { useEffect, useState, useRef } from 'react';\n\nimport { styles } from '../../helpers';\nimport { Layer, LayerContent, Text, View } from '../../primitives';\nimport { isPressableInstance } from './helpers';\nimport style from './Tooltip.module.css';\n\nconst Tooltip = ({\n children,\n left: propLeft,\n pressable = false,\n right: propRight,\n Template,\n text,\n timestamp,\n top: propTop,\n visible: propVisible = false,\n onPress = () => {},\n ...inherit\n}) => {\n const [visible, setVisible] = useState(propVisible);\n const [position, setPosition] = useState({});\n const contentRef = useRef();\n const ref = useRef();\n\n const { fixed, testId, ...others } = inherit;\n const { left, right, top = propTop } = position;\n\n useEffect(() => {\n if (!pressable || !visible) return;\n\n const handleClickOutside = ({ target } = {}) =>\n !contentRef.current?.contains(target) && !ref.current?.contains(target) && setVisible(false);\n\n document.addEventListener('click', handleClickOutside, true);\n\n return () => document.removeEventListener('click', handleClickOutside, true);\n\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [visible]);\n\n return text || Template ? (\n <Layer\n {...{ fixed, testId, timestamp, top, visible }}\n centered\n forceRender={false}\n left={propLeft}\n right={propRight}\n tag=\"tooltip\"\n onPosition={setPosition}\n >\n {React.createElement(\n pressable ? View : React.Fragment,\n { ...(pressable ? { ref } : undefined) },\n React.Children.map(children, (child, index) => {\n return React.cloneElement(child, {\n key: index,\n ...child.props,\n onClick: pressable\n ? (event) => {\n event.stopPropagation();\n setVisible(!visible);\n onPress(event, !visible);\n }\n : undefined,\n [isPressableInstance(child) ? 'onEnter' : 'onMouseEnter']: !pressable ? () => setVisible(true) : undefined,\n [isPressableInstance(child) ? 'onLeave' : 'onMouseLeave']: !pressable ? () => setVisible(false) : undefined,\n className: styles(style.dispatcher, child.props.className),\n testId: testId ? `${testId}-dispatcher` : undefined,\n });\n }),\n )}\n\n <LayerContent>\n <View\n {...others}\n {...(pressable ? { ref: contentRef } : undefined)}\n className={styles(\n style.tooltip,\n (propLeft || propRight) && style.align,\n left && style.left,\n right && style.right,\n top ? style.top : style.bottom,\n others.className,\n )}\n >\n {Template ? (\n <Template />\n ) : (\n <Text bold small className={style.text}>\n {text}\n </Text>\n )}\n </View>\n </LayerContent>\n </Layer>\n ) : (\n <>{children}</>\n );\n};\n\nTooltip.displayName = 'Component:Tooltip';\n\nTooltip.propTypes = {\n children: PropTypes.node.isRequired,\n left: PropTypes.bool,\n pressable: PropTypes.bool,\n right: PropTypes.bool,\n Template: PropTypes.oneOfType([PropTypes.node, PropTypes.func]),\n text: PropTypes.string,\n timestamp: PropTypes.number,\n top: PropTypes.bool,\n visible: PropTypes.bool,\n onPress: PropTypes.func,\n};\n\nexport { Tooltip };\n"],"mappings":"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"}
|