@artsy/palette 29.4.0 → 29.4.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.
|
@@ -83,7 +83,8 @@ var Popover = function Popover(_ref) {
|
|
|
83
83
|
variant = _ref$variant === void 0 ? "defaultLight" : _ref$variant,
|
|
84
84
|
_ref$visible = _ref.visible,
|
|
85
85
|
_visible = _ref$visible === void 0 ? false : _ref$visible,
|
|
86
|
-
zIndex = _ref.zIndex,
|
|
86
|
+
_ref$zIndex = _ref.zIndex,
|
|
87
|
+
zIndex = _ref$zIndex === void 0 ? 1 : _ref$zIndex,
|
|
87
88
|
rest = _objectWithoutProperties(_ref, _excluded);
|
|
88
89
|
|
|
89
90
|
var _useState = (0, _react.useState)(false),
|
|
@@ -154,7 +155,7 @@ var Popover = function Popover(_ref) {
|
|
|
154
155
|
}), visible && createPortal( /*#__PURE__*/_react.default.createElement(Tip, {
|
|
155
156
|
tabIndex: 0,
|
|
156
157
|
ref: tooltipRef,
|
|
157
|
-
zIndex: zIndex
|
|
158
|
+
zIndex: zIndex,
|
|
158
159
|
display: "inline-block",
|
|
159
160
|
position: "relative",
|
|
160
161
|
variant: variant
|
|
@@ -186,7 +187,7 @@ exports.Popover = Popover;
|
|
|
186
187
|
var Tip = (0, _styledComponents.default)(_Box.Box).withConfig({
|
|
187
188
|
displayName: "Popover__Tip",
|
|
188
189
|
componentId: "x2qqfz-0"
|
|
189
|
-
})(["position:fixed;
|
|
190
|
+
})(["position:fixed;text-align:left;transition:opacity 250ms ease-out;box-shadow:", ";", ""], _helpers.DROP_SHADOW, (0, _styledSystem.variant)({
|
|
190
191
|
variants: POPOVER_VARIANTS
|
|
191
192
|
}));
|
|
192
193
|
var Panel = (0, _styledComponents.default)(_Box.Box).withConfig({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/elements/Popover/Popover.tsx"],"names":["POPOVER_VARIANTS","defaultLight","backgroundColor","color","defaultDark","Popover","children","onClose","offset","placement","pointer","popover","variant","visible","_visible","zIndex","rest","setVisible","tooltipRef","current","focus","anchorRef","onVisible","onHide","handleHide","handleKeydown","event","key","document","addEventListener","removeEventListener","position","active","isFlipped","state","ref","onClickOutside","when","type","createPortal","Tip","Box","DROP_SHADOW","variants","Panel","Close","Clickable"],"mappings":";;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEO,IAAMA,gBAAgB,GAAG;AAC9BC,EAAAA,YAAY,EAAE;AACZC,IAAAA,eAAe,EAAE,UADL;AAEZC,IAAAA,KAAK,EAAE;AAFK,GADgB;AAK9BC,EAAAA,WAAW,EAAE;AACXF,IAAAA,eAAe,EAAE,UADN;AAEXC,IAAAA,KAAK,EAAE;AAFI;AALiB,CAAzB;;;AAmCP;AACA;AACA;AACA;AACO,IAAME,OAA+B,GAAG,SAAlCA,OAAkC,OAWzC;AAAA,MAVJC,QAUI,QAVJA,QAUI;AAAA,MATJC,OASI,QATJA,OASI;AAAA,yBARJC,MAQI;AAAA,MARJA,MAQI,4BARK,EAQL;AAAA,4BAPJC,SAOI;AAAA,MAPJA,SAOI,+BAPQ,KAOR;AAAA,0BANJC,OAMI;AAAA,MANJA,OAMI,6BANM,KAMN;AAAA,MALJC,OAKI,QALJA,OAKI;AAAA,0BAJJC,OAII;AAAA,MAJJA,OAII,6BAJM,cAIN;AAAA,0BAHJC,OAGI;AAAA,MAHKC,QAGL,6BAHgB,KAGhB;AAAA,
|
|
1
|
+
{"version":3,"sources":["../../../src/elements/Popover/Popover.tsx"],"names":["POPOVER_VARIANTS","defaultLight","backgroundColor","color","defaultDark","Popover","children","onClose","offset","placement","pointer","popover","variant","visible","_visible","zIndex","rest","setVisible","tooltipRef","current","focus","anchorRef","onVisible","onHide","handleHide","handleKeydown","event","key","document","addEventListener","removeEventListener","position","active","isFlipped","state","ref","onClickOutside","when","type","createPortal","Tip","Box","DROP_SHADOW","variants","Panel","Close","Clickable"],"mappings":"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","sourcesContent":["import React, { useCallback, useEffect, useState } from \"react\"\nimport styled from \"styled-components\"\nimport { variant } from \"styled-system\"\nimport { DROP_SHADOW } from \"../../helpers\"\nimport { CloseIcon } from \"../../svgs\"\nimport { Position, useClickOutside, usePortal, usePosition } from \"../../utils\"\nimport { useUpdateEffect } from \"../../utils/useUpdateEffect\"\nimport { Box, BoxProps } from \"../Box\"\nimport { Clickable } from \"../Clickable\"\nimport { Pointer } from \"../Pointer\"\n\nexport const POPOVER_VARIANTS = {\n defaultLight: {\n backgroundColor: \"white100\",\n color: \"black100\",\n },\n defaultDark: {\n backgroundColor: \"black100\",\n color: \"white100\",\n },\n}\n\nexport type PopoverVariant = keyof typeof POPOVER_VARIANTS\n\nexport interface PopoverActions {\n /** Call to show popover */\n onVisible(): void\n /** Call to hide popover */\n onHide(): void\n /** Pass ref to element you want the popover to be anchored to */\n anchorRef: React.MutableRefObject<HTMLElement>\n}\n\nexport interface PopoverProps extends BoxProps {\n children: ({ anchorRef, onVisible, onHide }: PopoverActions) => JSX.Element\n offset?: number\n onClose?: () => void\n placement?: Position\n /** Display triangular pointer back to anchor node */\n pointer?: boolean\n popover: React.ReactNode\n variant?: PopoverVariant\n /** Initial default visibility */\n visible?: boolean\n}\n\n/**\n * A `Popover` is a small modal-type element which is anchored, and can be\n * positioned relative to, another element.\n */\nexport const Popover: React.FC<PopoverProps> = ({\n children,\n onClose,\n offset = 10,\n placement = \"top\",\n pointer = false,\n popover,\n variant = \"defaultLight\",\n visible: _visible = false,\n zIndex = 1,\n ...rest\n}) => {\n const [visible, setVisible] = useState(false)\n\n // If prop updates/set initial visibility.\n useEffect(() => {\n setVisible(_visible)\n }, [_visible])\n\n // Yields focus back and forth between popover and anchor\n useUpdateEffect(() => {\n if (visible && tooltipRef.current) {\n tooltipRef.current.focus()\n return\n }\n\n if (!anchorRef.current) return\n anchorRef.current.focus()\n }, [visible])\n\n const onVisible = useCallback(() => {\n setVisible(true)\n }, [])\n\n const onHide = useCallback(() => {\n setVisible(false)\n }, [])\n\n const handleHide = useCallback(() => {\n onHide()\n onClose?.()\n }, [onHide, onClose])\n\n useEffect(() => {\n const handleKeydown = (event: KeyboardEvent) => {\n if (event.key === \"Escape\") {\n handleHide()\n }\n }\n\n document.addEventListener(\"keydown\", handleKeydown)\n\n return () => {\n document.removeEventListener(\"keydown\", handleKeydown)\n }\n }, [handleHide])\n\n const {\n anchorRef,\n tooltipRef,\n state: { isFlipped },\n } = usePosition({\n position: placement,\n offset,\n active: visible,\n })\n\n useClickOutside({\n ref: tooltipRef,\n onClickOutside: handleHide,\n when: visible,\n type: \"click\",\n })\n\n const { createPortal } = usePortal()\n\n return (\n <>\n {children({ anchorRef: anchorRef as any, onVisible, onHide })}\n\n {visible &&\n createPortal(\n <Tip\n tabIndex={0}\n ref={tooltipRef as any}\n zIndex={zIndex}\n display=\"inline-block\"\n position=\"relative\"\n variant={variant}\n >\n {pointer && (\n <Pointer\n anchorRef={anchorRef}\n tooltipRef={tooltipRef}\n variant={variant}\n placement={placement}\n isFlipped={isFlipped}\n />\n )}\n\n <Close\n position=\"relative\"\n zIndex={2}\n p={1}\n onClick={handleHide}\n aria-label=\"Close\"\n >\n <CloseIcon fill=\"currentColor\" display=\"block\" />\n </Close>\n\n <Panel\n variant={variant}\n position=\"relative\"\n py={2}\n px={1}\n zIndex={1}\n {...rest}\n >\n {popover}\n </Panel>\n </Tip>\n )}\n </>\n )\n}\n\nconst Tip = styled(Box)<{ variant?: PopoverVariant }>`\n position: fixed;\n text-align: left;\n transition: opacity 250ms ease-out;\n box-shadow: ${DROP_SHADOW};\n ${variant({ variants: POPOVER_VARIANTS })}\n`\n\nconst Panel = styled(Box)<{ variant?: PopoverVariant }>`\n ${variant({ variants: POPOVER_VARIANTS })}\n`\n\nconst Close = styled(Clickable)`\n float: right;\n`\n"],"file":"Popover.js"}
|
|
@@ -23,7 +23,7 @@ var _Pointer = require("../Pointer");
|
|
|
23
23
|
|
|
24
24
|
var _Text = require("../Text");
|
|
25
25
|
|
|
26
|
-
var _excluded = ["children", "content", "width", "offset", "placement", "pointer", "variant", "visible"];
|
|
26
|
+
var _excluded = ["children", "content", "width", "offset", "placement", "pointer", "variant", "visible", "zIndex"];
|
|
27
27
|
|
|
28
28
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
29
29
|
|
|
@@ -80,6 +80,8 @@ var Tooltip = function Tooltip(_ref) {
|
|
|
80
80
|
_ref$variant = _ref.variant,
|
|
81
81
|
variant = _ref$variant === void 0 ? "defaultLight" : _ref$variant,
|
|
82
82
|
visible = _ref.visible,
|
|
83
|
+
_ref$zIndex = _ref.zIndex,
|
|
84
|
+
zIndex = _ref$zIndex === void 0 ? 1 : _ref$zIndex,
|
|
83
85
|
rest = _objectWithoutProperties(_ref, _excluded);
|
|
84
86
|
|
|
85
87
|
var _useState = (0, _react.useState)(false),
|
|
@@ -122,7 +124,7 @@ var Tooltip = function Tooltip(_ref) {
|
|
|
122
124
|
ref: tooltipRef,
|
|
123
125
|
variant: variant,
|
|
124
126
|
width: width,
|
|
125
|
-
zIndex:
|
|
127
|
+
zIndex: zIndex,
|
|
126
128
|
style: // If visible is explictly set to `false` then the tooltip should be hidden
|
|
127
129
|
// Otherwise it should be visible or utilize the active state.
|
|
128
130
|
visible !== false ? {
|
|
@@ -148,7 +150,7 @@ exports.Tooltip = Tooltip;
|
|
|
148
150
|
var Tip = (0, _styledComponents.default)(_Box.Box).withConfig({
|
|
149
151
|
displayName: "Tooltip__Tip",
|
|
150
152
|
componentId: "ymkaxc-0"
|
|
151
|
-
})(["position:absolute;
|
|
153
|
+
})(["position:absolute;transition:opacity 250ms ease-out;text-align:left;box-shadow:", ";cursor:default;pointer-events:none;", ""], _helpers.DROP_SHADOW, (0, _styledSystem.variant)({
|
|
152
154
|
variants: TOOLTIP_VARIANTS
|
|
153
155
|
}));
|
|
154
156
|
var Panel = (0, _styledComponents.default)(_Box.Box).withConfig({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/elements/Tooltip/Tooltip.tsx"],"names":["TOOLTIP_VARIANTS","defaultLight","backgroundColor","color","defaultDark","Tooltip","children","content","width","offset","placement","pointer","variant","visible","rest","active","setActive","handleClick","prevActive","activate","deactivate","position","anchorRef","tooltipRef","isFlipped","state","React","cloneElement","ref","tabIndex","onClick","compose","props","onMouseOver","onMouseOut","onFocus","onBlur","opacity","Tip","Box","DROP_SHADOW","variants","Panel","a","b","args"],"mappings":";;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEO,IAAMA,gBAAgB,GAAG;AAC9BC,EAAAA,YAAY,EAAE;AACZC,IAAAA,eAAe,EAAE,UADL;AAEZC,IAAAA,KAAK,EAAE;AAFK,GADgB;AAK9BC,EAAAA,WAAW,EAAE;AACXF,IAAAA,eAAe,EAAE,UADN;AAEXC,IAAAA,KAAK,EAAE;AAFI;AALiB,CAAzB;;;AAyBP;AACA;AACA;AACO,IAAME,OAA+B,GAAG,SAAlCA,OAAkC,
|
|
1
|
+
{"version":3,"sources":["../../../src/elements/Tooltip/Tooltip.tsx"],"names":["TOOLTIP_VARIANTS","defaultLight","backgroundColor","color","defaultDark","Tooltip","children","content","width","offset","placement","pointer","variant","visible","zIndex","rest","active","setActive","handleClick","prevActive","activate","deactivate","position","anchorRef","tooltipRef","isFlipped","state","React","cloneElement","ref","tabIndex","onClick","compose","props","onMouseOver","onMouseOut","onFocus","onBlur","opacity","Tip","Box","DROP_SHADOW","variants","Panel","a","b","args"],"mappings":"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","sourcesContent":["import React, { useState } from \"react\"\nimport styled from \"styled-components\"\nimport { variant } from \"styled-system\"\nimport { DROP_SHADOW, isText } from \"../../helpers\"\nimport { Position, usePosition } from \"../../utils/usePosition\"\nimport { Box, BoxProps } from \"../Box\"\nimport { Pointer } from \"../Pointer\"\nimport { Text } from \"../Text\"\n\nexport const TOOLTIP_VARIANTS = {\n defaultLight: {\n backgroundColor: \"white100\",\n color: \"black100\",\n },\n defaultDark: {\n backgroundColor: \"black100\",\n color: \"white100\",\n },\n}\n\nexport type TooltipVariant = keyof typeof TOOLTIP_VARIANTS\n\nexport interface TooltipProps extends BoxProps {\n /** Anchor element to attach to tooltip */\n children: React.ReactElement<any, string | React.JSXElementConstructor<any>>\n /** Content of tooltip */\n content: React.ReactNode\n offset?: number\n placement?: Position\n pointer?: boolean\n variant?: TooltipVariant\n visible?: boolean\n}\n\n/**\n * A tooltip\n */\nexport const Tooltip: React.FC<TooltipProps> = ({\n children,\n content,\n width = 230,\n offset = 10,\n placement = \"top\",\n pointer = false,\n variant = \"defaultLight\",\n visible,\n zIndex = 1,\n ...rest\n}) => {\n const [active, setActive] = useState(false)\n\n const handleClick = () => {\n setActive((prevActive) => !prevActive)\n }\n\n const activate = () => {\n setActive(true)\n }\n\n const deactivate = () => {\n setActive(false)\n }\n\n const {\n anchorRef,\n tooltipRef,\n state: { isFlipped },\n } = usePosition({\n position: placement,\n offset,\n active: visible ?? active,\n })\n\n return (\n <>\n {React.cloneElement(children, {\n ref: anchorRef,\n tabIndex: 0,\n onClick: compose(handleClick, children.props?.onClick),\n onMouseOver: compose(activate, children.props?.onMouseOver),\n onMouseOut: compose(deactivate, children.props?.onMouseOut),\n onFocus: compose(activate, children.props?.onFocus),\n onBlur: compose(deactivate, children.props?.onBlur),\n })}\n\n <Tip\n ref={tooltipRef as any}\n variant={variant}\n width={width}\n zIndex={zIndex}\n style={\n // If visible is explictly set to `false` then the tooltip should be hidden\n // Otherwise it should be visible or utilize the active state.\n visible !== false\n ? {\n opacity: visible ?? active ? 1 : 0,\n }\n : { opacity: 0 }\n }\n >\n {pointer && (\n <Pointer\n anchorRef={anchorRef}\n tooltipRef={tooltipRef}\n variant={variant}\n placement={placement}\n isFlipped={isFlipped}\n />\n )}\n\n <Panel variant={variant} p={1} {...rest}>\n {isText(content) ? <Text variant=\"xs\">{content}</Text> : content}\n </Panel>\n </Tip>\n </>\n )\n}\n\nconst Tip = styled(Box)<{ variant?: TooltipVariant }>`\n position: absolute;\n transition: opacity 250ms ease-out;\n text-align: left;\n box-shadow: ${DROP_SHADOW};\n cursor: default;\n pointer-events: none;\n ${variant({ variants: TOOLTIP_VARIANTS })}\n`\n\nconst Panel = styled(Box)<{ variant?: TooltipVariant }>`\n ${variant({ variants: TOOLTIP_VARIANTS })}\n`\n\nconst compose = (a?: (...args: any) => any, b?: (...args: any) => any) => {\n return (...args) => {\n a?.(...args)\n b?.(...args)\n }\n}\n"],"file":"Tooltip.js"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@artsy/palette",
|
|
3
|
-
"version": "29.4.
|
|
3
|
+
"version": "29.4.1",
|
|
4
4
|
"description": "Design system library for react components",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"publishConfig": {
|
|
@@ -174,5 +174,5 @@
|
|
|
174
174
|
"<rootDir>/www/"
|
|
175
175
|
]
|
|
176
176
|
},
|
|
177
|
-
"gitHead": "
|
|
177
|
+
"gitHead": "0ed93b36eddc65565d9c13eb4e5f457c78f3b0e7"
|
|
178
178
|
}
|