@salutejs/plasma-new-hope 0.160.1-canary.1412.11161969451.0 → 0.160.1-canary.1412.11176429195.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -131,7 +131,7 @@ var popupRoot = function popupRoot(Root) {
131
131
  }, rootNode);
132
132
  }
133
133
  var withFrameId = typeof frame === 'string' && frame !== 'document';
134
- var containerElement = withFrameId && document.getElementById(frame);
134
+ var containerElement = withFrameId && canUseDOM.canUseDOM && document.getElementById(frame);
135
135
  if (containerElement) {
136
136
  return /*#__PURE__*/React.createElement(Portal.Portal, {
137
137
  container: containerElement
@@ -1 +1 @@
1
- {"version":3,"file":"Popup.js","sources":["../../../src/components/Popup/Popup.tsx"],"sourcesContent":["import React, { forwardRef, useRef } from 'react';\nimport { useForkRef, safeUseId } from '@salutejs/plasma-core';\n\nimport { RootProps } from '../../engines/types';\nimport { canUseDOM, cx } from '../../utils';\nimport { Portal } from '../Portal';\n\nimport type { PopupPlacementBasic, PopupPlacement, PopupPositionType, PopupProps } from './Popup.types';\nimport { PopupRoot } from './PopupRoot';\nimport { usePopup } from './hooks';\nimport { classes } from './Popup.tokens';\nimport { StyledPortalContainer } from './Popup.styles';\n\nexport const handlePosition = (\n placement: PopupPlacement,\n offset: [number, number] | [string, string],\n): PopupPositionType => {\n let x = '0rem';\n let y = '0rem';\n\n if (offset) {\n const [_x, _y] = offset;\n x = typeof _x === 'number' ? `${_x}rem` : _x;\n y = typeof _y === 'number' ? `${_y}rem` : _y;\n }\n\n if (!placement || placement === 'center') {\n return {\n left: `calc(50% + ${x})`,\n top: `calc(50% - ${y})`,\n transform: 'translate(-50%, -50%)',\n };\n }\n\n let left;\n let right;\n let top;\n let bottom;\n let transform;\n const placements = placement.split('-') as PopupPlacementBasic[];\n\n placements.forEach((placementValue: PopupPlacementBasic) => {\n switch (placementValue) {\n case 'left':\n left = x;\n break;\n case 'right':\n right = x;\n break;\n case 'top':\n top = y;\n break;\n case 'bottom':\n bottom = y;\n break;\n default:\n break;\n }\n });\n\n const isCenteredX = left === undefined && right === undefined;\n const isCenteredY = top === undefined && bottom === undefined;\n\n if (isCenteredX) {\n transform = 'translateX(-50%)';\n }\n\n if (isCenteredY) {\n transform = 'translateY(-50%)';\n }\n\n return {\n left: isCenteredX ? `calc(50% + ${x})` : left,\n right,\n top: isCenteredY ? `calc(50% - ${y})` : top,\n bottom,\n transform,\n };\n};\n\n/**\n * Базовый компонент Popup.\n */\nexport const popupRoot = (Root: RootProps<HTMLDivElement, PopupProps>) =>\n forwardRef<HTMLDivElement, PopupProps>(\n (\n {\n id,\n isOpen = false,\n opened = false,\n placement = 'center',\n offset = [0, 0],\n frame = 'document',\n children,\n overlay,\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n role,\n zIndex,\n popupInfo,\n withAnimation = false,\n className,\n ...rest\n },\n outerRootRef,\n ) => {\n const innerIsOpen = isOpen || opened;\n\n const uniqId = safeUseId();\n const innerId = id || uniqId;\n\n const { isVisible, animationInfo, setVisible, rootId } = usePopup({\n isOpen: innerIsOpen,\n id: innerId,\n popupInfo,\n withAnimation,\n });\n\n const portalRef = useRef<HTMLDivElement | null>(null);\n const contentRef = useRef<HTMLDivElement | null>(null);\n\n const innerRef = useForkRef<HTMLDivElement>(contentRef, outerRootRef);\n\n if (!isVisible && !innerIsOpen) {\n return null;\n }\n\n const cls = cx(\n className,\n animationInfo?.endAnimation ? classes.endAnimation : '',\n animationInfo?.endTransition ? classes.endTransition : '',\n );\n\n const rootNode = (\n <Root className={cls} {...rest}>\n {overlay}\n <PopupRoot\n id={innerId}\n ref={innerRef}\n position={handlePosition(placement, offset)}\n zIndex={zIndex}\n frame={frame}\n animationInfo={animationInfo}\n setVisible={setVisible}\n >\n {children}\n </PopupRoot>\n </Root>\n );\n\n if (typeof frame !== 'string' && frame && frame.current) {\n return <Portal container={frame.current}>{rootNode}</Portal>;\n }\n\n const withFrameId = typeof frame === 'string' && frame !== 'document';\n const containerElement = withFrameId && document.getElementById(frame as string);\n\n if (containerElement) {\n return (\n <Portal container={containerElement}>\n <StyledPortalContainer ref={portalRef}>\n {portalRef.current && <Portal container={portalRef.current}>{rootNode}</Portal>}\n </StyledPortalContainer>{' '}\n </Portal>\n );\n }\n\n const globalPortal = canUseDOM && document.getElementById(rootId);\n\n return <>{globalPortal && <Portal container={globalPortal}>{rootNode}</Portal>}</>;\n },\n );\n\nexport const popupConfig = {\n name: 'Popup',\n tag: 'div',\n layout: popupRoot,\n base: '',\n variations: {},\n defaults: {},\n};\n"],"names":["handlePosition","placement","offset","x","y","_offset","_slicedToArray","_x","_y","concat","left","top","transform","right","bottom","placements","split","forEach","placementValue","isCenteredX","undefined","isCenteredY","popupRoot","Root","forwardRef","_ref","outerRootRef","id","_ref$isOpen","isOpen","_ref$opened","opened","_ref$placement","_ref$offset","_ref$frame","frame","children","overlay","zIndex","popupInfo","_ref$withAnimation","withAnimation","className","rest","_objectWithoutProperties","_excluded","innerIsOpen","uniqId","safeUseId","innerId","_usePopup","usePopup","isVisible","animationInfo","setVisible","rootId","portalRef","useRef","contentRef","innerRef","useForkRef","cls","cx","endAnimation","classes","endTransition","rootNode","React","createElement","_extends","PopupRoot","ref","position","current","Portal","container","withFrameId","containerElement","document","getElementById","StyledPortalContainer","globalPortal","canUseDOM","Fragment","popupConfig","name","tag","layout","base","variations","defaults"],"mappings":"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"}
1
+ {"version":3,"file":"Popup.js","sources":["../../../src/components/Popup/Popup.tsx"],"sourcesContent":["import React, { forwardRef, useRef } from 'react';\nimport { useForkRef, safeUseId } from '@salutejs/plasma-core';\n\nimport { RootProps } from '../../engines/types';\nimport { canUseDOM, cx } from '../../utils';\nimport { Portal } from '../Portal';\n\nimport type { PopupPlacementBasic, PopupPlacement, PopupPositionType, PopupProps } from './Popup.types';\nimport { PopupRoot } from './PopupRoot';\nimport { usePopup } from './hooks';\nimport { classes } from './Popup.tokens';\nimport { StyledPortalContainer } from './Popup.styles';\n\nexport const handlePosition = (\n placement: PopupPlacement,\n offset: [number, number] | [string, string],\n): PopupPositionType => {\n let x = '0rem';\n let y = '0rem';\n\n if (offset) {\n const [_x, _y] = offset;\n x = typeof _x === 'number' ? `${_x}rem` : _x;\n y = typeof _y === 'number' ? `${_y}rem` : _y;\n }\n\n if (!placement || placement === 'center') {\n return {\n left: `calc(50% + ${x})`,\n top: `calc(50% - ${y})`,\n transform: 'translate(-50%, -50%)',\n };\n }\n\n let left;\n let right;\n let top;\n let bottom;\n let transform;\n const placements = placement.split('-') as PopupPlacementBasic[];\n\n placements.forEach((placementValue: PopupPlacementBasic) => {\n switch (placementValue) {\n case 'left':\n left = x;\n break;\n case 'right':\n right = x;\n break;\n case 'top':\n top = y;\n break;\n case 'bottom':\n bottom = y;\n break;\n default:\n break;\n }\n });\n\n const isCenteredX = left === undefined && right === undefined;\n const isCenteredY = top === undefined && bottom === undefined;\n\n if (isCenteredX) {\n transform = 'translateX(-50%)';\n }\n\n if (isCenteredY) {\n transform = 'translateY(-50%)';\n }\n\n return {\n left: isCenteredX ? `calc(50% + ${x})` : left,\n right,\n top: isCenteredY ? `calc(50% - ${y})` : top,\n bottom,\n transform,\n };\n};\n\n/**\n * Базовый компонент Popup.\n */\nexport const popupRoot = (Root: RootProps<HTMLDivElement, PopupProps>) =>\n forwardRef<HTMLDivElement, PopupProps>(\n (\n {\n id,\n isOpen = false,\n opened = false,\n placement = 'center',\n offset = [0, 0],\n frame = 'document',\n children,\n overlay,\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n role,\n zIndex,\n popupInfo,\n withAnimation = false,\n className,\n ...rest\n },\n outerRootRef,\n ) => {\n const innerIsOpen = isOpen || opened;\n\n const uniqId = safeUseId();\n const innerId = id || uniqId;\n\n const { isVisible, animationInfo, setVisible, rootId } = usePopup({\n isOpen: innerIsOpen,\n id: innerId,\n popupInfo,\n withAnimation,\n });\n\n const portalRef = useRef<HTMLDivElement | null>(null);\n const contentRef = useRef<HTMLDivElement | null>(null);\n\n const innerRef = useForkRef<HTMLDivElement>(contentRef, outerRootRef);\n\n if (!isVisible && !innerIsOpen) {\n return null;\n }\n\n const cls = cx(\n className,\n animationInfo?.endAnimation ? classes.endAnimation : '',\n animationInfo?.endTransition ? classes.endTransition : '',\n );\n\n const rootNode = (\n <Root className={cls} {...rest}>\n {overlay}\n <PopupRoot\n id={innerId}\n ref={innerRef}\n position={handlePosition(placement, offset)}\n zIndex={zIndex}\n frame={frame}\n animationInfo={animationInfo}\n setVisible={setVisible}\n >\n {children}\n </PopupRoot>\n </Root>\n );\n\n if (typeof frame !== 'string' && frame && frame.current) {\n return <Portal container={frame.current}>{rootNode}</Portal>;\n }\n\n const withFrameId = typeof frame === 'string' && frame !== 'document';\n const containerElement = withFrameId && canUseDOM && document.getElementById(frame as string);\n\n if (containerElement) {\n return (\n <Portal container={containerElement}>\n <StyledPortalContainer ref={portalRef}>\n {portalRef.current && <Portal container={portalRef.current}>{rootNode}</Portal>}\n </StyledPortalContainer>{' '}\n </Portal>\n );\n }\n\n const globalPortal = canUseDOM && document.getElementById(rootId);\n\n return <>{globalPortal && <Portal container={globalPortal}>{rootNode}</Portal>}</>;\n },\n );\n\nexport const popupConfig = {\n name: 'Popup',\n tag: 'div',\n layout: popupRoot,\n base: '',\n variations: {},\n defaults: {},\n};\n"],"names":["handlePosition","placement","offset","x","y","_offset","_slicedToArray","_x","_y","concat","left","top","transform","right","bottom","placements","split","forEach","placementValue","isCenteredX","undefined","isCenteredY","popupRoot","Root","forwardRef","_ref","outerRootRef","id","_ref$isOpen","isOpen","_ref$opened","opened","_ref$placement","_ref$offset","_ref$frame","frame","children","overlay","zIndex","popupInfo","_ref$withAnimation","withAnimation","className","rest","_objectWithoutProperties","_excluded","innerIsOpen","uniqId","safeUseId","innerId","_usePopup","usePopup","isVisible","animationInfo","setVisible","rootId","portalRef","useRef","contentRef","innerRef","useForkRef","cls","cx","endAnimation","classes","endTransition","rootNode","React","createElement","_extends","PopupRoot","ref","position","current","Portal","container","withFrameId","containerElement","canUseDOM","document","getElementById","StyledPortalContainer","globalPortal","Fragment","popupConfig","name","tag","layout","base","variations","defaults"],"mappings":"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"}
@@ -145,7 +145,7 @@ var popupRoot = exports.popupRoot = function popupRoot(Root) {
145
145
  }, rootNode);
146
146
  }
147
147
  var withFrameId = typeof frame === 'string' && frame !== 'document';
148
- var containerElement = withFrameId && document.getElementById(frame);
148
+ var containerElement = withFrameId && _utils.canUseDOM && document.getElementById(frame);
149
149
  if (containerElement) {
150
150
  return /*#__PURE__*/_react["default"].createElement(_Portal.Portal, {
151
151
  container: containerElement
@@ -136,7 +136,7 @@ export var popupRoot = function popupRoot(Root) {
136
136
  }, rootNode);
137
137
  }
138
138
  var withFrameId = typeof frame === 'string' && frame !== 'document';
139
- var containerElement = withFrameId && document.getElementById(frame);
139
+ var containerElement = withFrameId && canUseDOM && document.getElementById(frame);
140
140
  if (containerElement) {
141
141
  return /*#__PURE__*/React.createElement(Portal, {
142
142
  container: containerElement
@@ -127,7 +127,7 @@ var popupRoot = function popupRoot(Root) {
127
127
  }, rootNode);
128
128
  }
129
129
  var withFrameId = typeof frame === 'string' && frame !== 'document';
130
- var containerElement = withFrameId && document.getElementById(frame);
130
+ var containerElement = withFrameId && canUseDOM && document.getElementById(frame);
131
131
  if (containerElement) {
132
132
  return /*#__PURE__*/React.createElement(Portal, {
133
133
  container: containerElement
@@ -1 +1 @@
1
- {"version":3,"file":"Popup.js","sources":["../../../src/components/Popup/Popup.tsx"],"sourcesContent":["import React, { forwardRef, useRef } from 'react';\nimport { useForkRef, safeUseId } from '@salutejs/plasma-core';\n\nimport { RootProps } from '../../engines/types';\nimport { canUseDOM, cx } from '../../utils';\nimport { Portal } from '../Portal';\n\nimport type { PopupPlacementBasic, PopupPlacement, PopupPositionType, PopupProps } from './Popup.types';\nimport { PopupRoot } from './PopupRoot';\nimport { usePopup } from './hooks';\nimport { classes } from './Popup.tokens';\nimport { StyledPortalContainer } from './Popup.styles';\n\nexport const handlePosition = (\n placement: PopupPlacement,\n offset: [number, number] | [string, string],\n): PopupPositionType => {\n let x = '0rem';\n let y = '0rem';\n\n if (offset) {\n const [_x, _y] = offset;\n x = typeof _x === 'number' ? `${_x}rem` : _x;\n y = typeof _y === 'number' ? `${_y}rem` : _y;\n }\n\n if (!placement || placement === 'center') {\n return {\n left: `calc(50% + ${x})`,\n top: `calc(50% - ${y})`,\n transform: 'translate(-50%, -50%)',\n };\n }\n\n let left;\n let right;\n let top;\n let bottom;\n let transform;\n const placements = placement.split('-') as PopupPlacementBasic[];\n\n placements.forEach((placementValue: PopupPlacementBasic) => {\n switch (placementValue) {\n case 'left':\n left = x;\n break;\n case 'right':\n right = x;\n break;\n case 'top':\n top = y;\n break;\n case 'bottom':\n bottom = y;\n break;\n default:\n break;\n }\n });\n\n const isCenteredX = left === undefined && right === undefined;\n const isCenteredY = top === undefined && bottom === undefined;\n\n if (isCenteredX) {\n transform = 'translateX(-50%)';\n }\n\n if (isCenteredY) {\n transform = 'translateY(-50%)';\n }\n\n return {\n left: isCenteredX ? `calc(50% + ${x})` : left,\n right,\n top: isCenteredY ? `calc(50% - ${y})` : top,\n bottom,\n transform,\n };\n};\n\n/**\n * Базовый компонент Popup.\n */\nexport const popupRoot = (Root: RootProps<HTMLDivElement, PopupProps>) =>\n forwardRef<HTMLDivElement, PopupProps>(\n (\n {\n id,\n isOpen = false,\n opened = false,\n placement = 'center',\n offset = [0, 0],\n frame = 'document',\n children,\n overlay,\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n role,\n zIndex,\n popupInfo,\n withAnimation = false,\n className,\n ...rest\n },\n outerRootRef,\n ) => {\n const innerIsOpen = isOpen || opened;\n\n const uniqId = safeUseId();\n const innerId = id || uniqId;\n\n const { isVisible, animationInfo, setVisible, rootId } = usePopup({\n isOpen: innerIsOpen,\n id: innerId,\n popupInfo,\n withAnimation,\n });\n\n const portalRef = useRef<HTMLDivElement | null>(null);\n const contentRef = useRef<HTMLDivElement | null>(null);\n\n const innerRef = useForkRef<HTMLDivElement>(contentRef, outerRootRef);\n\n if (!isVisible && !innerIsOpen) {\n return null;\n }\n\n const cls = cx(\n className,\n animationInfo?.endAnimation ? classes.endAnimation : '',\n animationInfo?.endTransition ? classes.endTransition : '',\n );\n\n const rootNode = (\n <Root className={cls} {...rest}>\n {overlay}\n <PopupRoot\n id={innerId}\n ref={innerRef}\n position={handlePosition(placement, offset)}\n zIndex={zIndex}\n frame={frame}\n animationInfo={animationInfo}\n setVisible={setVisible}\n >\n {children}\n </PopupRoot>\n </Root>\n );\n\n if (typeof frame !== 'string' && frame && frame.current) {\n return <Portal container={frame.current}>{rootNode}</Portal>;\n }\n\n const withFrameId = typeof frame === 'string' && frame !== 'document';\n const containerElement = withFrameId && document.getElementById(frame as string);\n\n if (containerElement) {\n return (\n <Portal container={containerElement}>\n <StyledPortalContainer ref={portalRef}>\n {portalRef.current && <Portal container={portalRef.current}>{rootNode}</Portal>}\n </StyledPortalContainer>{' '}\n </Portal>\n );\n }\n\n const globalPortal = canUseDOM && document.getElementById(rootId);\n\n return <>{globalPortal && <Portal container={globalPortal}>{rootNode}</Portal>}</>;\n },\n );\n\nexport const popupConfig = {\n name: 'Popup',\n tag: 'div',\n layout: popupRoot,\n base: '',\n variations: {},\n defaults: {},\n};\n"],"names":["handlePosition","placement","offset","x","y","_offset","_slicedToArray","_x","_y","concat","left","top","transform","right","bottom","placements","split","forEach","placementValue","isCenteredX","undefined","isCenteredY","popupRoot","Root","forwardRef","_ref","outerRootRef","id","_ref$isOpen","isOpen","_ref$opened","opened","_ref$placement","_ref$offset","_ref$frame","frame","children","overlay","zIndex","popupInfo","_ref$withAnimation","withAnimation","className","rest","_objectWithoutProperties","_excluded","innerIsOpen","uniqId","safeUseId","innerId","_usePopup","usePopup","isVisible","animationInfo","setVisible","rootId","portalRef","useRef","contentRef","innerRef","useForkRef","cls","cx","endAnimation","classes","endTransition","rootNode","React","createElement","_extends","PopupRoot","ref","position","current","Portal","container","withFrameId","containerElement","document","getElementById","StyledPortalContainer","globalPortal","canUseDOM","Fragment","popupConfig","name","tag","layout","base","variations","defaults"],"mappings":"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"}
1
+ {"version":3,"file":"Popup.js","sources":["../../../src/components/Popup/Popup.tsx"],"sourcesContent":["import React, { forwardRef, useRef } from 'react';\nimport { useForkRef, safeUseId } from '@salutejs/plasma-core';\n\nimport { RootProps } from '../../engines/types';\nimport { canUseDOM, cx } from '../../utils';\nimport { Portal } from '../Portal';\n\nimport type { PopupPlacementBasic, PopupPlacement, PopupPositionType, PopupProps } from './Popup.types';\nimport { PopupRoot } from './PopupRoot';\nimport { usePopup } from './hooks';\nimport { classes } from './Popup.tokens';\nimport { StyledPortalContainer } from './Popup.styles';\n\nexport const handlePosition = (\n placement: PopupPlacement,\n offset: [number, number] | [string, string],\n): PopupPositionType => {\n let x = '0rem';\n let y = '0rem';\n\n if (offset) {\n const [_x, _y] = offset;\n x = typeof _x === 'number' ? `${_x}rem` : _x;\n y = typeof _y === 'number' ? `${_y}rem` : _y;\n }\n\n if (!placement || placement === 'center') {\n return {\n left: `calc(50% + ${x})`,\n top: `calc(50% - ${y})`,\n transform: 'translate(-50%, -50%)',\n };\n }\n\n let left;\n let right;\n let top;\n let bottom;\n let transform;\n const placements = placement.split('-') as PopupPlacementBasic[];\n\n placements.forEach((placementValue: PopupPlacementBasic) => {\n switch (placementValue) {\n case 'left':\n left = x;\n break;\n case 'right':\n right = x;\n break;\n case 'top':\n top = y;\n break;\n case 'bottom':\n bottom = y;\n break;\n default:\n break;\n }\n });\n\n const isCenteredX = left === undefined && right === undefined;\n const isCenteredY = top === undefined && bottom === undefined;\n\n if (isCenteredX) {\n transform = 'translateX(-50%)';\n }\n\n if (isCenteredY) {\n transform = 'translateY(-50%)';\n }\n\n return {\n left: isCenteredX ? `calc(50% + ${x})` : left,\n right,\n top: isCenteredY ? `calc(50% - ${y})` : top,\n bottom,\n transform,\n };\n};\n\n/**\n * Базовый компонент Popup.\n */\nexport const popupRoot = (Root: RootProps<HTMLDivElement, PopupProps>) =>\n forwardRef<HTMLDivElement, PopupProps>(\n (\n {\n id,\n isOpen = false,\n opened = false,\n placement = 'center',\n offset = [0, 0],\n frame = 'document',\n children,\n overlay,\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n role,\n zIndex,\n popupInfo,\n withAnimation = false,\n className,\n ...rest\n },\n outerRootRef,\n ) => {\n const innerIsOpen = isOpen || opened;\n\n const uniqId = safeUseId();\n const innerId = id || uniqId;\n\n const { isVisible, animationInfo, setVisible, rootId } = usePopup({\n isOpen: innerIsOpen,\n id: innerId,\n popupInfo,\n withAnimation,\n });\n\n const portalRef = useRef<HTMLDivElement | null>(null);\n const contentRef = useRef<HTMLDivElement | null>(null);\n\n const innerRef = useForkRef<HTMLDivElement>(contentRef, outerRootRef);\n\n if (!isVisible && !innerIsOpen) {\n return null;\n }\n\n const cls = cx(\n className,\n animationInfo?.endAnimation ? classes.endAnimation : '',\n animationInfo?.endTransition ? classes.endTransition : '',\n );\n\n const rootNode = (\n <Root className={cls} {...rest}>\n {overlay}\n <PopupRoot\n id={innerId}\n ref={innerRef}\n position={handlePosition(placement, offset)}\n zIndex={zIndex}\n frame={frame}\n animationInfo={animationInfo}\n setVisible={setVisible}\n >\n {children}\n </PopupRoot>\n </Root>\n );\n\n if (typeof frame !== 'string' && frame && frame.current) {\n return <Portal container={frame.current}>{rootNode}</Portal>;\n }\n\n const withFrameId = typeof frame === 'string' && frame !== 'document';\n const containerElement = withFrameId && canUseDOM && document.getElementById(frame as string);\n\n if (containerElement) {\n return (\n <Portal container={containerElement}>\n <StyledPortalContainer ref={portalRef}>\n {portalRef.current && <Portal container={portalRef.current}>{rootNode}</Portal>}\n </StyledPortalContainer>{' '}\n </Portal>\n );\n }\n\n const globalPortal = canUseDOM && document.getElementById(rootId);\n\n return <>{globalPortal && <Portal container={globalPortal}>{rootNode}</Portal>}</>;\n },\n );\n\nexport const popupConfig = {\n name: 'Popup',\n tag: 'div',\n layout: popupRoot,\n base: '',\n variations: {},\n defaults: {},\n};\n"],"names":["handlePosition","placement","offset","x","y","_offset","_slicedToArray","_x","_y","concat","left","top","transform","right","bottom","placements","split","forEach","placementValue","isCenteredX","undefined","isCenteredY","popupRoot","Root","forwardRef","_ref","outerRootRef","id","_ref$isOpen","isOpen","_ref$opened","opened","_ref$placement","_ref$offset","_ref$frame","frame","children","overlay","zIndex","popupInfo","_ref$withAnimation","withAnimation","className","rest","_objectWithoutProperties","_excluded","innerIsOpen","uniqId","safeUseId","innerId","_usePopup","usePopup","isVisible","animationInfo","setVisible","rootId","portalRef","useRef","contentRef","innerRef","useForkRef","cls","cx","endAnimation","classes","endTransition","rootNode","React","createElement","_extends","PopupRoot","ref","position","current","Portal","container","withFrameId","containerElement","canUseDOM","document","getElementById","StyledPortalContainer","globalPortal","Fragment","popupConfig","name","tag","layout","base","variations","defaults"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@salutejs/plasma-new-hope",
3
- "version": "0.160.1-canary.1412.11161969451.0",
3
+ "version": "0.160.1-canary.1412.11176429195.0",
4
4
  "description": "Salute Design System blueprint",
5
5
  "main": "cjs/index.js",
6
6
  "module": "es/index.js",
@@ -124,5 +124,5 @@
124
124
  "react-popper": "2.3.0",
125
125
  "storeon": "3.1.5"
126
126
  },
127
- "gitHead": "123ced4efdf88e24f13365951411f4ba83e3225c"
127
+ "gitHead": "a1e41d0f24fa632299a82f1b0911aa7a4d014d4d"
128
128
  }
@@ -145,7 +145,7 @@ var popupRoot = exports.popupRoot = function popupRoot(Root) {
145
145
  }, rootNode);
146
146
  }
147
147
  var withFrameId = typeof frame === 'string' && frame !== 'document';
148
- var containerElement = withFrameId && document.getElementById(frame);
148
+ var containerElement = withFrameId && _utils.canUseDOM && document.getElementById(frame);
149
149
  if (containerElement) {
150
150
  return /*#__PURE__*/_react["default"].createElement(_Portal.Portal, {
151
151
  container: containerElement
@@ -136,7 +136,7 @@ export var popupRoot = function popupRoot(Root) {
136
136
  }, rootNode);
137
137
  }
138
138
  var withFrameId = typeof frame === 'string' && frame !== 'document';
139
- var containerElement = withFrameId && document.getElementById(frame);
139
+ var containerElement = withFrameId && canUseDOM && document.getElementById(frame);
140
140
  if (containerElement) {
141
141
  return /*#__PURE__*/React.createElement(Portal, {
142
142
  container: containerElement