@artsy/palette 40.0.0-canary.1408.31244.0 → 40.0.0-canary.1408.31262.0

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.
@@ -1 +1 @@
1
- {"version":3,"file":"FilterInput.js","names":["React","_interopRequireWildcard","require","_CloseStrokeIcon","_interopRequireDefault","_SearchIcon","_LabeledInput","_Clickable","_FilterSelectContext","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","_typeof","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_extends","assign","bind","target","i","arguments","length","source","apply","FilterInput","props","_useFilterSelectConte","useFilterSelectContext","query","setQuery","placeholder","ref","useRef","handleChange","event","value","handleClick","_ref$current","current","focus","createElement","LabeledInput","role","label","Clickable","display","onClick","style","pointerEvents","onChange","exports","displayName"],"sources":["../../../../src/elements/FilterSelect/Components/FilterInput.tsx"],"sourcesContent":["import * as React from \"react\"\nimport CloseStrokeIcon from \"@artsy/icons/CloseStrokeIcon\"\nimport SearchIcon from \"@artsy/icons/SearchIcon\"\nimport { InputProps } from \"../../Input\"\nimport { LabeledInput } from \"../../LabeledInput\"\nimport { Clickable } from \"../../Clickable\"\nimport { useRef } from \"react\"\nimport { useFilterSelectContext } from \"./FilterSelectContext\"\n\nexport type FilterInputProps = InputProps\n\nexport const FilterInput: React.FC<React.PropsWithChildren<InputProps>> = (props) => {\n const { query, setQuery, placeholder } = useFilterSelectContext()\n const ref = useRef<HTMLInputElement | null>(null)\n\n const handleChange = (event: React.ChangeEvent<HTMLInputElement>) => {\n setQuery(event.target.value)\n }\n\n const handleClick = () => {\n setQuery(\"\")\n ref.current?.focus()\n }\n\n return (\n (<LabeledInput\n ref={ref}\n role=\"search\"\n label={\n query !== \"\" ? (\n // Active state\n (<Clickable\n display=\"flex\"\n onClick={handleClick}\n aria-label=\"Clear search input\"\n >\n <CloseStrokeIcon />\n </Clickable>)\n ) : (\n // Resting state\n (<SearchIcon style={{ pointerEvents: \"none\" }} />)\n )\n }\n onChange={handleChange}\n value={query}\n placeholder={placeholder}\n {...props}\n />)\n );\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"FilterInput.js","names":["React","_interopRequireWildcard","require","_CloseStrokeIcon","_interopRequireDefault","_SearchIcon","_LabeledInput","_Clickable","_FilterSelectContext","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","_typeof","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_extends","assign","bind","target","i","arguments","length","source","apply","FilterInput","props","_useFilterSelectConte","useFilterSelectContext","query","setQuery","placeholder","ref","useRef","handleChange","event","value","handleClick","_ref$current","current","focus","createElement","LabeledInput","role","label","Clickable","display","onClick","style","pointerEvents","onChange","exports","displayName"],"sources":["../../../../src/elements/FilterSelect/Components/FilterInput.tsx"],"sourcesContent":["import * as React from \"react\"\nimport CloseStrokeIcon from \"@artsy/icons/CloseStrokeIcon\"\nimport SearchIcon from \"@artsy/icons/SearchIcon\"\nimport { InputProps } from \"../../Input\"\nimport { LabeledInput } from \"../../LabeledInput\"\nimport { Clickable } from \"../../Clickable\"\nimport { useRef } from \"react\"\nimport { useFilterSelectContext } from \"./FilterSelectContext\"\n\nexport type FilterInputProps = InputProps\n\nexport const FilterInput: React.FC<React.PropsWithChildren<InputProps>> = (\n props\n) => {\n const { query, setQuery, placeholder } = useFilterSelectContext()\n const ref = useRef<HTMLInputElement | null>(null)\n\n const handleChange = (event: React.ChangeEvent<HTMLInputElement>) => {\n setQuery(event.target.value)\n }\n\n const handleClick = () => {\n setQuery(\"\")\n ref.current?.focus()\n }\n\n return (\n <LabeledInput\n ref={ref}\n role=\"search\"\n label={\n query !== \"\" ? (\n // Active state\n <Clickable\n display=\"flex\"\n onClick={handleClick}\n aria-label=\"Clear search input\"\n >\n <CloseStrokeIcon />\n </Clickable>\n ) : (\n // Resting state\n <SearchIcon style={{ pointerEvents: \"none\" }} />\n )\n }\n onChange={handleChange}\n value={query}\n placeholder={placeholder}\n {...props}\n />\n )\n}\n"],"mappings":"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"}
@@ -11,6 +11,7 @@ var _styledSystem = require("styled-system");
11
11
  var _usePortal2 = require("../../utils/usePortal");
12
12
  var _Flex = require("../Flex");
13
13
  var _reactFocusOn = require("react-focus-on");
14
+ var _utils = require("../../utils");
14
15
  var _excluded = ["children", "zIndex", "dialogProps", "onClose"];
15
16
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
16
17
  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); }
@@ -57,7 +58,8 @@ var DEFAULT_MODAL_Z_INDEX = 9999;
57
58
  */
58
59
  exports.DEFAULT_MODAL_Z_INDEX = DEFAULT_MODAL_Z_INDEX;
59
60
  var ModalBase = function ModalBase(props) {
60
- if (typeof window === "undefined") {
61
+ var isClient = (0, _utils.useDidMount)();
62
+ if (!isClient) {
61
63
  return null;
62
64
  }
63
65
  return /*#__PURE__*/_react.default.createElement(_ModalBase, props);
@@ -1 +1 @@
1
- {"version":3,"file":"ModalBase.js","names":["_react","_interopRequireWildcard","require","_styledComponents","_interopRequireDefault","_styledSystem","_usePortal2","_Flex","_reactFocusOn","_excluded","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","_typeof","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_extends","assign","bind","target","i","arguments","length","source","apply","_slicedToArray","arr","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","TypeError","o","minLen","_arrayLikeToArray","n","toString","slice","constructor","name","Array","from","test","len","arr2","_i","Symbol","iterator","_s","_e","_x","_r","_arr","_n","_d","next","done","push","value","err","return","isArray","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","getOwnPropertySymbols","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","keys","Focus","styled","FocusOn","withConfig","displayName","componentId","Backdrop","div","Container","Flex","systemZIndex","Dialog","attrs","role","DEFAULT_MODAL_Z_INDEX","exports","ModalBase","props","window","createElement","_ModalBase","_ref","children","_ref$zIndex","zIndex","_ref$dialogProps","dialogProps","_ref$onClose","onClose","rest","focusEl","useRef","backdropEl","handleMouseDown","event","current","useEffect","handleKeydown","preventDefault","stopPropagation","document","addEventListener","removeEventListener","_useState","useState","innerHeight","_useState2","maxHeight","setMaxHeight","updateMaxHeight","setTimeout","dispatchEvent","Event","passive","_usePortal","usePortal","createPortal","ref","onMouseDown"],"sources":["../../../src/elements/Modal/ModalBase.tsx"],"sourcesContent":["import React, { useEffect, useRef, useState } from \"react\"\nimport styled from \"styled-components\"\nimport { zIndex as systemZIndex, ZIndexProps } from \"styled-system\"\nimport { usePortal } from \"../../utils/usePortal\"\nimport { Flex, FlexProps } from \"../Flex\"\nimport { FocusOn } from \"react-focus-on\"\n\nconst Focus = styled(FocusOn)`\n width: 100%;\n height: 100%;\n display: flex;\n align-items: center;\n justify-content: center;\n`\n\nconst Backdrop = styled.div`\n width: 100%;\n height: 100%;\n display: flex;\n align-items: center;\n justify-content: center;\n`\n\nconst Container = styled(Flex)`\n position: fixed;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n align-items: center;\n justify-content: center;\n ${systemZIndex}\n`\n\nconst Dialog = styled(Flex).attrs({ role: \"dialog\" })`\n overflow-y: auto;\n -webkit-overflow-scrolling: touch;\n\n > * {\n max-height: 100%;\n }\n`\n\n/** BaseModal */\nexport type ModalBaseProps = React.HTMLAttributes<HTMLDivElement> &\n FlexProps &\n ZIndexProps & {\n children?: React.ReactNode\n dialogProps?: FlexProps\n onClose?(): void\n }\n\n/**\n * It seems we've landed on this value as the 'top'\n */\nexport const DEFAULT_MODAL_Z_INDEX = 9999\n\n/**\n * BaseModal\n * Low-level modal that has no opinions about layout/overlay\n * Modals content using a portal, locks scroll.\n */\nexport const ModalBase: React.FC<React.PropsWithChildren<ModalBaseProps>> = (props) => {\n if (typeof window === \"undefined\") {\n return null\n }\n return <_ModalBase {...props} />\n}\n\nexport const _ModalBase: React.FC<React.PropsWithChildren<ModalBaseProps>> = ({\n children,\n zIndex = DEFAULT_MODAL_Z_INDEX,\n dialogProps = {},\n onClose = () => null,\n ...rest\n}) => {\n const focusEl = useRef<HTMLDivElement | null>(null)\n const backdropEl = useRef<HTMLDivElement | null>(null)\n\n const handleMouseDown = (\n event: React.MouseEvent<HTMLDivElement, MouseEvent>\n ) => {\n if (event.target === backdropEl.current) {\n onClose()\n }\n }\n\n useEffect(() => {\n const handleKeydown = (event: KeyboardEvent) => {\n switch (event.key) {\n case \"Escape\":\n // Prevent <esc> from interfering with the returned focus\n event.preventDefault()\n event.stopPropagation()\n\n // Handle close\n return onClose()\n default:\n break\n }\n }\n\n document.addEventListener(\"keydown\", handleKeydown)\n return () => {\n document.removeEventListener(\"keydown\", handleKeydown)\n }\n }, [onClose])\n\n // Sets to `innerHeight` so as to simulate `100vh` on iOS\n const [maxHeight, setMaxHeight] = useState(window.innerHeight)\n\n // Keeps `maxHeight` in sync\n useEffect(() => {\n const updateMaxHeight = () => {\n setMaxHeight(window.innerHeight)\n }\n\n // Due to the dialog being portaled; we need to wait until the next tick\n // before we can perform any operations that rely on the sizing of elements.\n // Presumably anything that relies on this also listens to resize for updates.\n setTimeout(() => {\n window.dispatchEvent(new Event(\"resize\"))\n }, 0)\n\n window.addEventListener(\"resize\", updateMaxHeight, { passive: true })\n\n return () => {\n window.removeEventListener(\"resize\", updateMaxHeight)\n }\n }, [])\n\n const { createPortal } = usePortal()\n\n return createPortal(\n <Container zIndex={zIndex} {...rest}>\n <Focus ref={focusEl as any}>\n <Backdrop ref={backdropEl as any} onMouseDown={handleMouseDown}>\n <Dialog maxHeight={maxHeight} {...dialogProps}>\n {children}\n </Dialog>\n </Backdrop>\n </Focus>\n </Container>\n )\n}\n\nModalBase.displayName = \"ModalBase\"\n"],"mappings":"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"}
1
+ {"version":3,"file":"ModalBase.js","names":["_react","_interopRequireWildcard","require","_styledComponents","_interopRequireDefault","_styledSystem","_usePortal2","_Flex","_reactFocusOn","_utils","_excluded","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","_typeof","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_extends","assign","bind","target","i","arguments","length","source","apply","_slicedToArray","arr","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","TypeError","o","minLen","_arrayLikeToArray","n","toString","slice","constructor","name","Array","from","test","len","arr2","_i","Symbol","iterator","_s","_e","_x","_r","_arr","_n","_d","next","done","push","value","err","return","isArray","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","getOwnPropertySymbols","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","keys","Focus","styled","FocusOn","withConfig","displayName","componentId","Backdrop","div","Container","Flex","systemZIndex","Dialog","attrs","role","DEFAULT_MODAL_Z_INDEX","exports","ModalBase","props","isClient","useDidMount","createElement","_ModalBase","_ref","children","_ref$zIndex","zIndex","_ref$dialogProps","dialogProps","_ref$onClose","onClose","rest","focusEl","useRef","backdropEl","handleMouseDown","event","current","useEffect","handleKeydown","preventDefault","stopPropagation","document","addEventListener","removeEventListener","_useState","useState","window","innerHeight","_useState2","maxHeight","setMaxHeight","updateMaxHeight","setTimeout","dispatchEvent","Event","passive","_usePortal","usePortal","createPortal","ref","onMouseDown"],"sources":["../../../src/elements/Modal/ModalBase.tsx"],"sourcesContent":["import React, { useEffect, useRef, useState } from \"react\"\nimport styled from \"styled-components\"\nimport { zIndex as systemZIndex, ZIndexProps } from \"styled-system\"\nimport { usePortal } from \"../../utils/usePortal\"\nimport { Flex, FlexProps } from \"../Flex\"\nimport { FocusOn } from \"react-focus-on\"\nimport { useDidMount } from \"../../utils\"\n\nconst Focus = styled(FocusOn)`\n width: 100%;\n height: 100%;\n display: flex;\n align-items: center;\n justify-content: center;\n`\n\nconst Backdrop = styled.div`\n width: 100%;\n height: 100%;\n display: flex;\n align-items: center;\n justify-content: center;\n`\n\nconst Container = styled(Flex)`\n position: fixed;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n align-items: center;\n justify-content: center;\n ${systemZIndex}\n`\n\nconst Dialog = styled(Flex).attrs({ role: \"dialog\" })`\n overflow-y: auto;\n -webkit-overflow-scrolling: touch;\n\n > * {\n max-height: 100%;\n }\n`\n\n/** BaseModal */\nexport type ModalBaseProps = React.HTMLAttributes<HTMLDivElement> &\n FlexProps &\n ZIndexProps & {\n children?: React.ReactNode\n dialogProps?: FlexProps\n onClose?(): void\n }\n\n/**\n * It seems we've landed on this value as the 'top'\n */\nexport const DEFAULT_MODAL_Z_INDEX = 9999\n\n/**\n * BaseModal\n * Low-level modal that has no opinions about layout/overlay\n * Modals content using a portal, locks scroll.\n */\nexport const ModalBase: React.FC<React.PropsWithChildren<ModalBaseProps>> = (\n props\n) => {\n const isClient = useDidMount()\n\n if (!isClient) {\n return null\n }\n return <_ModalBase {...props} />\n}\n\nexport const _ModalBase: React.FC<React.PropsWithChildren<ModalBaseProps>> = ({\n children,\n zIndex = DEFAULT_MODAL_Z_INDEX,\n dialogProps = {},\n onClose = () => null,\n ...rest\n}) => {\n const focusEl = useRef<HTMLDivElement | null>(null)\n const backdropEl = useRef<HTMLDivElement | null>(null)\n\n const handleMouseDown = (\n event: React.MouseEvent<HTMLDivElement, MouseEvent>\n ) => {\n if (event.target === backdropEl.current) {\n onClose()\n }\n }\n\n useEffect(() => {\n const handleKeydown = (event: KeyboardEvent) => {\n switch (event.key) {\n case \"Escape\":\n // Prevent <esc> from interfering with the returned focus\n event.preventDefault()\n event.stopPropagation()\n\n // Handle close\n return onClose()\n default:\n break\n }\n }\n\n document.addEventListener(\"keydown\", handleKeydown)\n return () => {\n document.removeEventListener(\"keydown\", handleKeydown)\n }\n }, [onClose])\n\n // Sets to `innerHeight` so as to simulate `100vh` on iOS\n const [maxHeight, setMaxHeight] = useState(window.innerHeight)\n\n // Keeps `maxHeight` in sync\n useEffect(() => {\n const updateMaxHeight = () => {\n setMaxHeight(window.innerHeight)\n }\n\n // Due to the dialog being portaled; we need to wait until the next tick\n // before we can perform any operations that rely on the sizing of elements.\n // Presumably anything that relies on this also listens to resize for updates.\n setTimeout(() => {\n window.dispatchEvent(new Event(\"resize\"))\n }, 0)\n\n window.addEventListener(\"resize\", updateMaxHeight, { passive: true })\n\n return () => {\n window.removeEventListener(\"resize\", updateMaxHeight)\n }\n }, [])\n\n const { createPortal } = usePortal()\n\n return createPortal(\n <Container zIndex={zIndex} {...rest}>\n <Focus ref={focusEl as any}>\n <Backdrop ref={backdropEl as any} onMouseDown={handleMouseDown}>\n <Dialog maxHeight={maxHeight} {...dialogProps}>\n {children}\n </Dialog>\n </Backdrop>\n </Focus>\n </Container>\n )\n}\n\nModalBase.displayName = \"ModalBase\"\n"],"mappings":"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"}
@@ -6,7 +6,9 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.usePortal = void 0;
7
7
  var _react = require("react");
8
8
  var _reactDom = require("react-dom");
9
+ var _useDidMount = require("./useDidMount");
9
10
  var usePortal = function usePortal() {
11
+ var isClient = (0, _useDidMount.useDidMount)();
10
12
  var appendEl = (0, _react.useRef)(null);
11
13
  (0, _react.useEffect)(function () {
12
14
  var _appendEl$current;
@@ -23,13 +25,13 @@ var usePortal = function usePortal() {
23
25
  }, []);
24
26
  var createPortal = (0, _react.useCallback)(function (children) {
25
27
  var _appendEl$current2;
26
- if (typeof window === "undefined") return null;
28
+ if (!isClient) return null;
27
29
 
28
30
  // May execute before effect runs and appendEl is set
29
31
  var el = (_appendEl$current2 = appendEl.current) !== null && _appendEl$current2 !== void 0 ? _appendEl$current2 : document.createElement("div");
30
32
  appendEl.current = el;
31
33
  return /*#__PURE__*/(0, _reactDom.createPortal)(children, el);
32
- }, []);
34
+ }, [isClient]);
33
35
  return {
34
36
  createPortal: createPortal
35
37
  };
@@ -1 +1 @@
1
- {"version":3,"file":"usePortal.js","names":["_react","require","_reactDom","usePortal","appendEl","useRef","useEffect","_appendEl$current","el","current","document","createElement","body","appendChild","removeChild","e","createPortal","useCallback","children","_appendEl$current2","window","__createPortal__","exports"],"sources":["../../src/utils/usePortal.ts"],"sourcesContent":["import React, { useEffect, useRef, useCallback } from \"react\"\nimport { createPortal as __createPortal__ } from \"react-dom\"\n\nexport const usePortal = () => {\n const appendEl = useRef<HTMLDivElement | null>(null)\n\n useEffect(() => {\n const el = appendEl.current ?? document.createElement(\"div\")\n appendEl.current = el\n\n document.body.appendChild(el)\n\n return () => {\n try {\n document.body.removeChild(el)\n } catch (e) {\n // Ignore\n }\n }\n }, [])\n\n const createPortal = useCallback(\n (children: React.ReactNode): React.ReactPortal | null => {\n if (typeof window === \"undefined\") return null\n\n // May execute before effect runs and appendEl is set\n const el = appendEl.current ?? document.createElement(\"div\")\n appendEl.current = el\n\n return __createPortal__(children, el)\n },\n []\n )\n\n return { createPortal }\n}\n"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,SAAA,GAAAD,OAAA;AAEO,IAAME,SAAS,GAAG,SAAZA,SAASA,CAAA,EAAS;EAC7B,IAAMC,QAAQ,GAAG,IAAAC,aAAM,EAAwB,IAAI,CAAC;EAEpD,IAAAC,gBAAS,EAAC,YAAM;IAAA,IAAAC,iBAAA;IACd,IAAMC,EAAE,IAAAD,iBAAA,GAAGH,QAAQ,CAACK,OAAO,cAAAF,iBAAA,cAAAA,iBAAA,GAAIG,QAAQ,CAACC,aAAa,CAAC,KAAK,CAAC;IAC5DP,QAAQ,CAACK,OAAO,GAAGD,EAAE;IAErBE,QAAQ,CAACE,IAAI,CAACC,WAAW,CAACL,EAAE,CAAC;IAE7B,OAAO,YAAM;MACX,IAAI;QACFE,QAAQ,CAACE,IAAI,CAACE,WAAW,CAACN,EAAE,CAAC;MAC/B,CAAC,CAAC,OAAOO,CAAC,EAAE;QACV;MAAA;IAEJ,CAAC;EACH,CAAC,EAAE,EAAE,CAAC;EAEN,IAAMC,YAAY,GAAG,IAAAC,kBAAW,EAC9B,UAACC,QAAyB,EAA+B;IAAA,IAAAC,kBAAA;IACvD,IAAI,OAAOC,MAAM,KAAK,WAAW,EAAE,OAAO,IAAI;;IAE9C;IACA,IAAMZ,EAAE,IAAAW,kBAAA,GAAGf,QAAQ,CAACK,OAAO,cAAAU,kBAAA,cAAAA,kBAAA,GAAIT,QAAQ,CAACC,aAAa,CAAC,KAAK,CAAC;IAC5DP,QAAQ,CAACK,OAAO,GAAGD,EAAE;IAErB,oBAAO,IAAAa,sBAAgB,EAACH,QAAQ,EAAEV,EAAE,CAAC;EACvC,CAAC,EACD,EAAE,CACH;EAED,OAAO;IAAEQ,YAAY,EAAZA;EAAa,CAAC;AACzB,CAAC;AAAAM,OAAA,CAAAnB,SAAA,GAAAA,SAAA"}
1
+ {"version":3,"file":"usePortal.js","names":["_react","require","_reactDom","_useDidMount","usePortal","isClient","useDidMount","appendEl","useRef","useEffect","_appendEl$current","el","current","document","createElement","body","appendChild","removeChild","e","createPortal","useCallback","children","_appendEl$current2","__createPortal__","exports"],"sources":["../../src/utils/usePortal.ts"],"sourcesContent":["import React, { useEffect, useRef, useCallback } from \"react\"\nimport { createPortal as __createPortal__ } from \"react-dom\"\nimport { useDidMount } from \"./useDidMount\"\n\nexport const usePortal = () => {\n const isClient = useDidMount()\n\n const appendEl = useRef<HTMLDivElement | null>(null)\n\n useEffect(() => {\n const el = appendEl.current ?? document.createElement(\"div\")\n appendEl.current = el\n\n document.body.appendChild(el)\n\n return () => {\n try {\n document.body.removeChild(el)\n } catch (e) {\n // Ignore\n }\n }\n }, [])\n\n const createPortal = useCallback(\n (children: React.ReactNode): React.ReactPortal | null => {\n if (!isClient) return null\n\n // May execute before effect runs and appendEl is set\n const el = appendEl.current ?? document.createElement(\"div\")\n appendEl.current = el\n\n return __createPortal__(children, el)\n },\n [isClient]\n )\n\n return { createPortal }\n}\n"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,SAAA,GAAAD,OAAA;AACA,IAAAE,YAAA,GAAAF,OAAA;AAEO,IAAMG,SAAS,GAAG,SAAZA,SAASA,CAAA,EAAS;EAC7B,IAAMC,QAAQ,GAAG,IAAAC,wBAAW,GAAE;EAE9B,IAAMC,QAAQ,GAAG,IAAAC,aAAM,EAAwB,IAAI,CAAC;EAEpD,IAAAC,gBAAS,EAAC,YAAM;IAAA,IAAAC,iBAAA;IACd,IAAMC,EAAE,IAAAD,iBAAA,GAAGH,QAAQ,CAACK,OAAO,cAAAF,iBAAA,cAAAA,iBAAA,GAAIG,QAAQ,CAACC,aAAa,CAAC,KAAK,CAAC;IAC5DP,QAAQ,CAACK,OAAO,GAAGD,EAAE;IAErBE,QAAQ,CAACE,IAAI,CAACC,WAAW,CAACL,EAAE,CAAC;IAE7B,OAAO,YAAM;MACX,IAAI;QACFE,QAAQ,CAACE,IAAI,CAACE,WAAW,CAACN,EAAE,CAAC;MAC/B,CAAC,CAAC,OAAOO,CAAC,EAAE;QACV;MAAA;IAEJ,CAAC;EACH,CAAC,EAAE,EAAE,CAAC;EAEN,IAAMC,YAAY,GAAG,IAAAC,kBAAW,EAC9B,UAACC,QAAyB,EAA+B;IAAA,IAAAC,kBAAA;IACvD,IAAI,CAACjB,QAAQ,EAAE,OAAO,IAAI;;IAE1B;IACA,IAAMM,EAAE,IAAAW,kBAAA,GAAGf,QAAQ,CAACK,OAAO,cAAAU,kBAAA,cAAAA,kBAAA,GAAIT,QAAQ,CAACC,aAAa,CAAC,KAAK,CAAC;IAC5DP,QAAQ,CAACK,OAAO,GAAGD,EAAE;IAErB,oBAAO,IAAAY,sBAAgB,EAACF,QAAQ,EAAEV,EAAE,CAAC;EACvC,CAAC,EACD,CAACN,QAAQ,CAAC,CACX;EAED,OAAO;IAAEc,YAAY,EAAZA;EAAa,CAAC;AACzB,CAAC;AAAAK,OAAA,CAAApB,SAAA,GAAAA,SAAA"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@artsy/palette",
3
- "version": "40.0.0-canary.1408.31244.0",
3
+ "version": "40.0.0-canary.1408.31262.0",
4
4
  "description": "Design system library for react components",
5
5
  "main": "dist/index.js",
6
6
  "publishConfig": {
@@ -189,5 +189,5 @@
189
189
  "url": "http://localhost"
190
190
  }
191
191
  },
192
- "gitHead": "6c11516b357a45989d181aef2c23275cb6604009"
192
+ "gitHead": "5ca904036aaedbbf071b9cd99809c6c1f8598294"
193
193
  }