@laerdal/life-react-components 5.0.1 → 5.0.2-dev.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.
@@ -113,7 +113,9 @@ var ModalContainer = function ModalContainer(props) {
113
113
  _props$maxWidth = props.maxWidth,
114
114
  maxWidth = _props$maxWidth === void 0 ? '' : _props$maxWidth,
115
115
  _props$zIndex = props.zIndex,
116
- zIndex = _props$zIndex === void 0 ? parseInt(_styles.Z_INDEXES.modal) : _props$zIndex;
116
+ zIndex = _props$zIndex === void 0 ? parseInt(_styles.Z_INDEXES.modal) : _props$zIndex,
117
+ _props$shouldCloseOnO = props.shouldCloseOnOverlayClick,
118
+ shouldCloseOnOverlayClick = _props$shouldCloseOnO === void 0 ? true : _props$shouldCloseOnO;
117
119
 
118
120
  // should be at least z-index of modal and below z-index of toast
119
121
  var zIndexValue = Math.min(Math.max(zIndex, +_styles.Z_INDEXES.modal), +_styles.Z_INDEXES.toast - 1);
@@ -134,6 +136,7 @@ var ModalContainer = function ModalContainer(props) {
134
136
  id: id,
135
137
  isOpen: showModal,
136
138
  closeTimeoutMS: 120,
139
+ shouldCloseOnOverlayClick: shouldCloseOnOverlayClick,
137
140
  onRequestClose: function onRequestClose() {
138
141
  return closeModal();
139
142
  },
@@ -152,7 +155,8 @@ ModalContainer.propTypes = {
152
155
  padding: _propTypes["default"].string,
153
156
  minWidth: _propTypes["default"].string,
154
157
  maxWidth: _propTypes["default"].string,
155
- zIndex: _propTypes["default"].number
158
+ zIndex: _propTypes["default"].number,
159
+ shouldCloseOnOverlayClick: _propTypes["default"].bool
156
160
  };
157
161
  var _default = ModalContainer;
158
162
  exports["default"] = _default;
@@ -1 +1 @@
1
- {"version":3,"file":"ModalContainer.cjs","names":["React","_interopRequireWildcard","require","_reactModal","_interopRequireDefault","_styles","_jsxRuntime","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","_typeof","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","ownKeys","keys","getOwnPropertySymbols","o","filter","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","ModalContainerStyles","content","top","left","right","bottom","marginRight","width","height","borderRadius","boxSizing","margin","overflow","boxShadow","BOXSHADOWS","BOXSHADOW_L3","modalTransitions","concat","Z_INDEXES","backdrop","modal","Counter","openInstances","ModalContainer","props","_React$useState","useState","_React$useState2","_slicedToArray2","scroll","setScroll","_React$useState3","_React$useState4","wasOpened","setWasOpened","preventScroll","offset","document","body","style","position","resetScroll","window","scrollTo","useEffect","scrollY","showModal","ReactModal","defaultStyles","overlay","backgroundColor","querySelector","head","getElementsByTagName","createElement","setAttribute","appendChild","createTextNode","id","closeModal","children","_props$height","_props$width","_props$overflow","padding","_props$minWidth","minWidth","_props$maxWidth","maxWidth","_props$zIndex","zIndex","parseInt","zIndexValue","Math","min","max","toast","stylesConfiguration","assign","styles","setAppElement","jsx","isOpen","closeTimeoutMS","onRequestClose","propTypes","_propTypes","string","bool","isRequired","func","any","number","_default","exports"],"sources":["../../src/Modals/ModalContainer.tsx"],"sourcesContent":["import * as React from 'react';\r\nimport ReactModal from 'react-modal';\r\nimport {BOXSHADOWS} from '../styles';\r\nimport {Z_INDEXES} from '../styles';\r\nimport styled, {keyframes} from 'styled-components';\r\n\r\nconst ModalContainerStyles = {\r\n content: {\r\n top: 'auto',\r\n left: 'auto',\r\n right: 'auto',\r\n bottom: 'auto',\r\n marginRight: '-50%',\r\n width: '640px',\r\n height: '320px',\r\n borderRadius: '8px',\r\n boxSizing: 'border-box' as any,\r\n margin: 0,\r\n overflow: 'auto',\r\n boxShadow: BOXSHADOWS.BOXSHADOW_L3,\r\n },\r\n};\r\n\r\n//override modal classes to define the animations\r\nconst modalTransitions = `\r\n\r\n@keyframes modalOpenAnimation {\r\n from{\r\n transform: scale(1.1, 1.1);\r\n }\r\n to {\r\n transform: scale(1, 1);\r\n }\r\n}\r\n\r\n.ReactModal__Overlay {\r\n opacity: 0;\r\n z-index: ${Z_INDEXES.backdrop};\r\n display:flex;\r\n justify-content: center;\r\n align-items: center;\r\n}\r\n\r\n.ReactModal__Overlay--after-open {\r\n opacity: 1;\r\n transition: opacity 150ms cubic-bezier(0.22, 0.61, 0.35, 1);\r\n}\r\n\r\n.ReactModal__Content{\r\n z-index: ${Z_INDEXES.modal};\r\n opacity:0;\r\n transition: opacity 150ms cubic-bezier(0.22, 0.61, 0.35, 1);\r\n}\r\n\r\n.ReactModal__Content--after-open{\r\n opacity: 1;\r\n animation: modalOpenAnimation 150ms ease-in-out;\r\n}\r\n\r\n.ReactModal__Overlay--before-close {\r\n opacity: 0;\r\n transition: opacity 120ms linear;\r\n}\r\n\r\n.ReactModal__Content--before-close{\r\n opacity: 0;\r\n transform: scale(1.1, 1.1);\r\n transition: transform 120ms ease-in-out, opacity 120ms cubic-bezier(0.55, 0.05, 0.67, 0.19);\r\n}\r\n`;\r\n\r\n\r\ntype ModalContainerProps = {\r\n id?: string;\r\n showModal: boolean;\r\n closeModal: () => void;\r\n children: any;\r\n height?: any;\r\n width?: any;\r\n overflow?: string;\r\n padding?: string;\r\n minWidth?: string;\r\n maxWidth?: string;\r\n zIndex?: number;\r\n};\r\n\r\nconst Counter = { openInstances : 0};\r\nconst ModalContainer: React.FC<ModalContainerProps> = (props: ModalContainerProps) => {\r\n\r\n const [scroll, setScroll] = React.useState<number>();\r\n const [wasOpened, setWasOpened] = React.useState<boolean>(false);\r\n \r\n const preventScroll = (offset: number) => {\r\n Counter.openInstances++;\r\n setWasOpened(true);\r\n if (document) {\r\n setScroll(offset);\r\n document.body.style.position = 'fixed';\r\n document.body.style.left = `0px`;\r\n document.body.style.right = `0px`;\r\n document.body.style.top = `-${offset}px`;\r\n }\r\n }\r\n\r\n const resetScroll = () => {\r\n Counter.openInstances--;\r\n if (!Counter.openInstances && document) {\r\n //@ts-ignore\r\n document.body.style.position = null;\r\n //@ts-ignore\r\n document.body.style.left = null;\r\n //@ts-ignore\r\n document.body.style.top = null;\r\n //@ts-ignore\r\n document.body.style.right = null;\r\n scroll && window.scrollTo(0, scroll);\r\n setScroll(0);\r\n }\r\n }\r\n\r\n React.useEffect(() => {\r\n window && setScroll(window.scrollY);\r\n });\r\n\r\n React.useEffect(() => {\r\n //modal was opened\r\n window && !props.showModal && wasOpened && resetScroll();\r\n //modal was closed\r\n window && props.showModal && preventScroll(window.scrollY);\r\n }, [props.showModal]);\r\n\r\n\r\n React.useEffect(() => {\r\n if (ReactModal.defaultStyles.overlay) {\r\n ReactModal.defaultStyles.overlay.backgroundColor = 'rgba(0,0,0,0.5)';\r\n }\r\n\r\n //append style node to override modal transition classes\r\n if (document && !document.querySelector('[modal-custom-styling=\"active\"]')) {\r\n const head = document.head || document.getElementsByTagName('head')[0];\r\n const style = document.createElement('style');\r\n style.setAttribute('modal-custom-styling', 'active');\r\n head.appendChild(style);\r\n style.appendChild(document.createTextNode(modalTransitions));\r\n }\r\n \r\n }, []);\r\n\r\n const {\r\n id,\r\n showModal,\r\n closeModal,\r\n children,\r\n height = 'auto',\r\n width = 'auto',\r\n overflow = 'visible',\r\n padding,\r\n minWidth = '',\r\n maxWidth = '',\r\n zIndex = parseInt(Z_INDEXES.modal)\r\n } = props;\r\n\r\n // should be at least z-index of modal and below z-index of toast\r\n const zIndexValue = Math.min(Math.max(zIndex, +Z_INDEXES.modal), +Z_INDEXES.toast - 1);\r\n const stylesConfiguration = Object.assign({...ModalContainerStyles.content}, {\r\n height,\r\n width,\r\n padding,\r\n overflow,\r\n minWidth,\r\n maxWidth,\r\n zIndex: zIndexValue\r\n });\r\n const styles = {content: stylesConfiguration};\r\n ReactModal.setAppElement('body');\r\n return (\r\n <ReactModal id={id}\r\n isOpen={showModal}\r\n closeTimeoutMS={120}\r\n onRequestClose={() => closeModal()}\r\n style={styles}>\r\n {children}\r\n </ReactModal>\r\n );\r\n}\r\n\r\nexport default ModalContainer;\r\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"ModalContainer.cjs","names":["React","_interopRequireWildcard","require","_reactModal","_interopRequireDefault","_styles","_jsxRuntime","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","_typeof","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","ownKeys","keys","getOwnPropertySymbols","o","filter","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","ModalContainerStyles","content","top","left","right","bottom","marginRight","width","height","borderRadius","boxSizing","margin","overflow","boxShadow","BOXSHADOWS","BOXSHADOW_L3","modalTransitions","concat","Z_INDEXES","backdrop","modal","Counter","openInstances","ModalContainer","props","_React$useState","useState","_React$useState2","_slicedToArray2","scroll","setScroll","_React$useState3","_React$useState4","wasOpened","setWasOpened","preventScroll","offset","document","body","style","position","resetScroll","window","scrollTo","useEffect","scrollY","showModal","ReactModal","defaultStyles","overlay","backgroundColor","querySelector","head","getElementsByTagName","createElement","setAttribute","appendChild","createTextNode","id","closeModal","children","_props$height","_props$width","_props$overflow","padding","_props$minWidth","minWidth","_props$maxWidth","maxWidth","_props$zIndex","zIndex","parseInt","_props$shouldCloseOnO","shouldCloseOnOverlayClick","zIndexValue","Math","min","max","toast","stylesConfiguration","assign","styles","setAppElement","jsx","isOpen","closeTimeoutMS","onRequestClose","propTypes","_propTypes","string","bool","isRequired","func","any","number","_default","exports"],"sources":["../../src/Modals/ModalContainer.tsx"],"sourcesContent":["import * as React from 'react';\r\nimport ReactModal from 'react-modal';\r\nimport {BOXSHADOWS} from '../styles';\r\nimport {Z_INDEXES} from '../styles';\r\nimport styled, {keyframes} from 'styled-components';\r\n\r\nconst ModalContainerStyles = {\r\n content: {\r\n top: 'auto',\r\n left: 'auto',\r\n right: 'auto',\r\n bottom: 'auto',\r\n marginRight: '-50%',\r\n width: '640px',\r\n height: '320px',\r\n borderRadius: '8px',\r\n boxSizing: 'border-box' as any,\r\n margin: 0,\r\n overflow: 'auto',\r\n boxShadow: BOXSHADOWS.BOXSHADOW_L3,\r\n },\r\n};\r\n\r\n//override modal classes to define the animations\r\nconst modalTransitions = `\r\n\r\n@keyframes modalOpenAnimation {\r\n from{\r\n transform: scale(1.1, 1.1);\r\n }\r\n to {\r\n transform: scale(1, 1);\r\n }\r\n}\r\n\r\n.ReactModal__Overlay {\r\n opacity: 0;\r\n z-index: ${Z_INDEXES.backdrop};\r\n display:flex;\r\n justify-content: center;\r\n align-items: center;\r\n}\r\n\r\n.ReactModal__Overlay--after-open {\r\n opacity: 1;\r\n transition: opacity 150ms cubic-bezier(0.22, 0.61, 0.35, 1);\r\n}\r\n\r\n.ReactModal__Content{\r\n z-index: ${Z_INDEXES.modal};\r\n opacity:0;\r\n transition: opacity 150ms cubic-bezier(0.22, 0.61, 0.35, 1);\r\n}\r\n\r\n.ReactModal__Content--after-open{\r\n opacity: 1;\r\n animation: modalOpenAnimation 150ms ease-in-out;\r\n}\r\n\r\n.ReactModal__Overlay--before-close {\r\n opacity: 0;\r\n transition: opacity 120ms linear;\r\n}\r\n\r\n.ReactModal__Content--before-close{\r\n opacity: 0;\r\n transform: scale(1.1, 1.1);\r\n transition: transform 120ms ease-in-out, opacity 120ms cubic-bezier(0.55, 0.05, 0.67, 0.19);\r\n}\r\n`;\r\n\r\n\r\ntype ModalContainerProps = {\r\n id?: string;\r\n showModal: boolean;\r\n closeModal: () => void;\r\n children: any;\r\n height?: any;\r\n width?: any;\r\n overflow?: string;\r\n padding?: string;\r\n minWidth?: string;\r\n maxWidth?: string;\r\n zIndex?: number;\r\n shouldCloseOnOverlayClick?: boolean;\r\n};\r\n\r\nconst Counter = { openInstances : 0};\r\nconst ModalContainer: React.FC<ModalContainerProps> = (props: ModalContainerProps) => {\r\n\r\n const [scroll, setScroll] = React.useState<number>();\r\n const [wasOpened, setWasOpened] = React.useState<boolean>(false);\r\n \r\n const preventScroll = (offset: number) => {\r\n Counter.openInstances++;\r\n setWasOpened(true);\r\n if (document) {\r\n setScroll(offset);\r\n document.body.style.position = 'fixed';\r\n document.body.style.left = `0px`;\r\n document.body.style.right = `0px`;\r\n document.body.style.top = `-${offset}px`;\r\n }\r\n }\r\n\r\n const resetScroll = () => {\r\n Counter.openInstances--;\r\n if (!Counter.openInstances && document) {\r\n //@ts-ignore\r\n document.body.style.position = null;\r\n //@ts-ignore\r\n document.body.style.left = null;\r\n //@ts-ignore\r\n document.body.style.top = null;\r\n //@ts-ignore\r\n document.body.style.right = null;\r\n scroll && window.scrollTo(0, scroll);\r\n setScroll(0);\r\n }\r\n }\r\n\r\n React.useEffect(() => {\r\n window && setScroll(window.scrollY);\r\n });\r\n\r\n React.useEffect(() => {\r\n //modal was opened\r\n window && !props.showModal && wasOpened && resetScroll();\r\n //modal was closed\r\n window && props.showModal && preventScroll(window.scrollY);\r\n }, [props.showModal]);\r\n\r\n\r\n React.useEffect(() => {\r\n if (ReactModal.defaultStyles.overlay) {\r\n ReactModal.defaultStyles.overlay.backgroundColor = 'rgba(0,0,0,0.5)';\r\n }\r\n\r\n //append style node to override modal transition classes\r\n if (document && !document.querySelector('[modal-custom-styling=\"active\"]')) {\r\n const head = document.head || document.getElementsByTagName('head')[0];\r\n const style = document.createElement('style');\r\n style.setAttribute('modal-custom-styling', 'active');\r\n head.appendChild(style);\r\n style.appendChild(document.createTextNode(modalTransitions));\r\n }\r\n \r\n }, []);\r\n\r\n const {\r\n id,\r\n showModal,\r\n closeModal,\r\n children,\r\n height = 'auto',\r\n width = 'auto',\r\n overflow = 'visible',\r\n padding,\r\n minWidth = '',\r\n maxWidth = '',\r\n zIndex = parseInt(Z_INDEXES.modal),\r\n shouldCloseOnOverlayClick = true\r\n } = props;\r\n\r\n // should be at least z-index of modal and below z-index of toast\r\n const zIndexValue = Math.min(Math.max(zIndex, +Z_INDEXES.modal), +Z_INDEXES.toast - 1);\r\n const stylesConfiguration = Object.assign({...ModalContainerStyles.content}, {\r\n height,\r\n width,\r\n padding,\r\n overflow,\r\n minWidth,\r\n maxWidth,\r\n zIndex: zIndexValue\r\n });\r\n const styles = {content: stylesConfiguration};\r\n ReactModal.setAppElement('body');\r\n return (\r\n <ReactModal id={id}\r\n isOpen={showModal}\r\n closeTimeoutMS={120}\r\n shouldCloseOnOverlayClick={shouldCloseOnOverlayClick}\r\n onRequestClose={() => closeModal()}\r\n style={styles}>\r\n {children}\r\n </ReactModal>\r\n );\r\n}\r\n\r\nexport default ModalContainer;\r\n"],"mappings":"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","ignoreList":[]}
@@ -11,6 +11,7 @@ type ModalContainerProps = {
11
11
  minWidth?: string;
12
12
  maxWidth?: string;
13
13
  zIndex?: number;
14
+ shouldCloseOnOverlayClick?: boolean;
14
15
  };
15
16
  declare const ModalContainer: React.FC<ModalContainerProps>;
16
17
  export default ModalContainer;
@@ -104,7 +104,9 @@ var ModalContainer = function ModalContainer(props) {
104
104
  _props$maxWidth = props.maxWidth,
105
105
  maxWidth = _props$maxWidth === void 0 ? '' : _props$maxWidth,
106
106
  _props$zIndex = props.zIndex,
107
- zIndex = _props$zIndex === void 0 ? parseInt(Z_INDEXES.modal) : _props$zIndex;
107
+ zIndex = _props$zIndex === void 0 ? parseInt(Z_INDEXES.modal) : _props$zIndex,
108
+ _props$shouldCloseOnO = props.shouldCloseOnOverlayClick,
109
+ shouldCloseOnOverlayClick = _props$shouldCloseOnO === void 0 ? true : _props$shouldCloseOnO;
108
110
 
109
111
  // should be at least z-index of modal and below z-index of toast
110
112
  var zIndexValue = Math.min(Math.max(zIndex, +Z_INDEXES.modal), +Z_INDEXES.toast - 1);
@@ -125,6 +127,7 @@ var ModalContainer = function ModalContainer(props) {
125
127
  id: id,
126
128
  isOpen: showModal,
127
129
  closeTimeoutMS: 120,
130
+ shouldCloseOnOverlayClick: shouldCloseOnOverlayClick,
128
131
  onRequestClose: function onRequestClose() {
129
132
  return closeModal();
130
133
  },
@@ -143,7 +146,8 @@ ModalContainer.propTypes = {
143
146
  padding: _pt.string,
144
147
  minWidth: _pt.string,
145
148
  maxWidth: _pt.string,
146
- zIndex: _pt.number
149
+ zIndex: _pt.number,
150
+ shouldCloseOnOverlayClick: _pt.bool
147
151
  };
148
152
  export default ModalContainer;
149
153
  //# sourceMappingURL=ModalContainer.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ModalContainer.js","names":["React","ReactModal","BOXSHADOWS","Z_INDEXES","jsx","_jsx","ModalContainerStyles","content","top","left","right","bottom","marginRight","width","height","borderRadius","boxSizing","margin","overflow","boxShadow","BOXSHADOW_L3","modalTransitions","concat","backdrop","modal","Counter","openInstances","ModalContainer","props","_React$useState","useState","_React$useState2","_slicedToArray","scroll","setScroll","_React$useState3","_React$useState4","wasOpened","setWasOpened","preventScroll","offset","document","body","style","position","resetScroll","window","scrollTo","useEffect","scrollY","showModal","defaultStyles","overlay","backgroundColor","querySelector","head","getElementsByTagName","createElement","setAttribute","appendChild","createTextNode","id","closeModal","children","_props$height","_props$width","_props$overflow","padding","_props$minWidth","minWidth","_props$maxWidth","maxWidth","_props$zIndex","zIndex","parseInt","zIndexValue","Math","min","max","toast","stylesConfiguration","Object","assign","_objectSpread","styles","setAppElement","isOpen","closeTimeoutMS","onRequestClose","propTypes","_pt","string","bool","isRequired","func","any","number"],"sources":["../../src/Modals/ModalContainer.tsx"],"sourcesContent":["import * as React from 'react';\r\nimport ReactModal from 'react-modal';\r\nimport {BOXSHADOWS} from '../styles';\r\nimport {Z_INDEXES} from '../styles';\r\nimport styled, {keyframes} from 'styled-components';\r\n\r\nconst ModalContainerStyles = {\r\n content: {\r\n top: 'auto',\r\n left: 'auto',\r\n right: 'auto',\r\n bottom: 'auto',\r\n marginRight: '-50%',\r\n width: '640px',\r\n height: '320px',\r\n borderRadius: '8px',\r\n boxSizing: 'border-box' as any,\r\n margin: 0,\r\n overflow: 'auto',\r\n boxShadow: BOXSHADOWS.BOXSHADOW_L3,\r\n },\r\n};\r\n\r\n//override modal classes to define the animations\r\nconst modalTransitions = `\r\n\r\n@keyframes modalOpenAnimation {\r\n from{\r\n transform: scale(1.1, 1.1);\r\n }\r\n to {\r\n transform: scale(1, 1);\r\n }\r\n}\r\n\r\n.ReactModal__Overlay {\r\n opacity: 0;\r\n z-index: ${Z_INDEXES.backdrop};\r\n display:flex;\r\n justify-content: center;\r\n align-items: center;\r\n}\r\n\r\n.ReactModal__Overlay--after-open {\r\n opacity: 1;\r\n transition: opacity 150ms cubic-bezier(0.22, 0.61, 0.35, 1);\r\n}\r\n\r\n.ReactModal__Content{\r\n z-index: ${Z_INDEXES.modal};\r\n opacity:0;\r\n transition: opacity 150ms cubic-bezier(0.22, 0.61, 0.35, 1);\r\n}\r\n\r\n.ReactModal__Content--after-open{\r\n opacity: 1;\r\n animation: modalOpenAnimation 150ms ease-in-out;\r\n}\r\n\r\n.ReactModal__Overlay--before-close {\r\n opacity: 0;\r\n transition: opacity 120ms linear;\r\n}\r\n\r\n.ReactModal__Content--before-close{\r\n opacity: 0;\r\n transform: scale(1.1, 1.1);\r\n transition: transform 120ms ease-in-out, opacity 120ms cubic-bezier(0.55, 0.05, 0.67, 0.19);\r\n}\r\n`;\r\n\r\n\r\ntype ModalContainerProps = {\r\n id?: string;\r\n showModal: boolean;\r\n closeModal: () => void;\r\n children: any;\r\n height?: any;\r\n width?: any;\r\n overflow?: string;\r\n padding?: string;\r\n minWidth?: string;\r\n maxWidth?: string;\r\n zIndex?: number;\r\n};\r\n\r\nconst Counter = { openInstances : 0};\r\nconst ModalContainer: React.FC<ModalContainerProps> = (props: ModalContainerProps) => {\r\n\r\n const [scroll, setScroll] = React.useState<number>();\r\n const [wasOpened, setWasOpened] = React.useState<boolean>(false);\r\n \r\n const preventScroll = (offset: number) => {\r\n Counter.openInstances++;\r\n setWasOpened(true);\r\n if (document) {\r\n setScroll(offset);\r\n document.body.style.position = 'fixed';\r\n document.body.style.left = `0px`;\r\n document.body.style.right = `0px`;\r\n document.body.style.top = `-${offset}px`;\r\n }\r\n }\r\n\r\n const resetScroll = () => {\r\n Counter.openInstances--;\r\n if (!Counter.openInstances && document) {\r\n //@ts-ignore\r\n document.body.style.position = null;\r\n //@ts-ignore\r\n document.body.style.left = null;\r\n //@ts-ignore\r\n document.body.style.top = null;\r\n //@ts-ignore\r\n document.body.style.right = null;\r\n scroll && window.scrollTo(0, scroll);\r\n setScroll(0);\r\n }\r\n }\r\n\r\n React.useEffect(() => {\r\n window && setScroll(window.scrollY);\r\n });\r\n\r\n React.useEffect(() => {\r\n //modal was opened\r\n window && !props.showModal && wasOpened && resetScroll();\r\n //modal was closed\r\n window && props.showModal && preventScroll(window.scrollY);\r\n }, [props.showModal]);\r\n\r\n\r\n React.useEffect(() => {\r\n if (ReactModal.defaultStyles.overlay) {\r\n ReactModal.defaultStyles.overlay.backgroundColor = 'rgba(0,0,0,0.5)';\r\n }\r\n\r\n //append style node to override modal transition classes\r\n if (document && !document.querySelector('[modal-custom-styling=\"active\"]')) {\r\n const head = document.head || document.getElementsByTagName('head')[0];\r\n const style = document.createElement('style');\r\n style.setAttribute('modal-custom-styling', 'active');\r\n head.appendChild(style);\r\n style.appendChild(document.createTextNode(modalTransitions));\r\n }\r\n \r\n }, []);\r\n\r\n const {\r\n id,\r\n showModal,\r\n closeModal,\r\n children,\r\n height = 'auto',\r\n width = 'auto',\r\n overflow = 'visible',\r\n padding,\r\n minWidth = '',\r\n maxWidth = '',\r\n zIndex = parseInt(Z_INDEXES.modal)\r\n } = props;\r\n\r\n // should be at least z-index of modal and below z-index of toast\r\n const zIndexValue = Math.min(Math.max(zIndex, +Z_INDEXES.modal), +Z_INDEXES.toast - 1);\r\n const stylesConfiguration = Object.assign({...ModalContainerStyles.content}, {\r\n height,\r\n width,\r\n padding,\r\n overflow,\r\n minWidth,\r\n maxWidth,\r\n zIndex: zIndexValue\r\n });\r\n const styles = {content: stylesConfiguration};\r\n ReactModal.setAppElement('body');\r\n return (\r\n <ReactModal id={id}\r\n isOpen={showModal}\r\n closeTimeoutMS={120}\r\n onRequestClose={() => closeModal()}\r\n style={styles}>\r\n {children}\r\n </ReactModal>\r\n );\r\n}\r\n\r\nexport default ModalContainer;\r\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"ModalContainer.js","names":["React","ReactModal","BOXSHADOWS","Z_INDEXES","jsx","_jsx","ModalContainerStyles","content","top","left","right","bottom","marginRight","width","height","borderRadius","boxSizing","margin","overflow","boxShadow","BOXSHADOW_L3","modalTransitions","concat","backdrop","modal","Counter","openInstances","ModalContainer","props","_React$useState","useState","_React$useState2","_slicedToArray","scroll","setScroll","_React$useState3","_React$useState4","wasOpened","setWasOpened","preventScroll","offset","document","body","style","position","resetScroll","window","scrollTo","useEffect","scrollY","showModal","defaultStyles","overlay","backgroundColor","querySelector","head","getElementsByTagName","createElement","setAttribute","appendChild","createTextNode","id","closeModal","children","_props$height","_props$width","_props$overflow","padding","_props$minWidth","minWidth","_props$maxWidth","maxWidth","_props$zIndex","zIndex","parseInt","_props$shouldCloseOnO","shouldCloseOnOverlayClick","zIndexValue","Math","min","max","toast","stylesConfiguration","Object","assign","_objectSpread","styles","setAppElement","isOpen","closeTimeoutMS","onRequestClose","propTypes","_pt","string","bool","isRequired","func","any","number"],"sources":["../../src/Modals/ModalContainer.tsx"],"sourcesContent":["import * as React from 'react';\r\nimport ReactModal from 'react-modal';\r\nimport {BOXSHADOWS} from '../styles';\r\nimport {Z_INDEXES} from '../styles';\r\nimport styled, {keyframes} from 'styled-components';\r\n\r\nconst ModalContainerStyles = {\r\n content: {\r\n top: 'auto',\r\n left: 'auto',\r\n right: 'auto',\r\n bottom: 'auto',\r\n marginRight: '-50%',\r\n width: '640px',\r\n height: '320px',\r\n borderRadius: '8px',\r\n boxSizing: 'border-box' as any,\r\n margin: 0,\r\n overflow: 'auto',\r\n boxShadow: BOXSHADOWS.BOXSHADOW_L3,\r\n },\r\n};\r\n\r\n//override modal classes to define the animations\r\nconst modalTransitions = `\r\n\r\n@keyframes modalOpenAnimation {\r\n from{\r\n transform: scale(1.1, 1.1);\r\n }\r\n to {\r\n transform: scale(1, 1);\r\n }\r\n}\r\n\r\n.ReactModal__Overlay {\r\n opacity: 0;\r\n z-index: ${Z_INDEXES.backdrop};\r\n display:flex;\r\n justify-content: center;\r\n align-items: center;\r\n}\r\n\r\n.ReactModal__Overlay--after-open {\r\n opacity: 1;\r\n transition: opacity 150ms cubic-bezier(0.22, 0.61, 0.35, 1);\r\n}\r\n\r\n.ReactModal__Content{\r\n z-index: ${Z_INDEXES.modal};\r\n opacity:0;\r\n transition: opacity 150ms cubic-bezier(0.22, 0.61, 0.35, 1);\r\n}\r\n\r\n.ReactModal__Content--after-open{\r\n opacity: 1;\r\n animation: modalOpenAnimation 150ms ease-in-out;\r\n}\r\n\r\n.ReactModal__Overlay--before-close {\r\n opacity: 0;\r\n transition: opacity 120ms linear;\r\n}\r\n\r\n.ReactModal__Content--before-close{\r\n opacity: 0;\r\n transform: scale(1.1, 1.1);\r\n transition: transform 120ms ease-in-out, opacity 120ms cubic-bezier(0.55, 0.05, 0.67, 0.19);\r\n}\r\n`;\r\n\r\n\r\ntype ModalContainerProps = {\r\n id?: string;\r\n showModal: boolean;\r\n closeModal: () => void;\r\n children: any;\r\n height?: any;\r\n width?: any;\r\n overflow?: string;\r\n padding?: string;\r\n minWidth?: string;\r\n maxWidth?: string;\r\n zIndex?: number;\r\n shouldCloseOnOverlayClick?: boolean;\r\n};\r\n\r\nconst Counter = { openInstances : 0};\r\nconst ModalContainer: React.FC<ModalContainerProps> = (props: ModalContainerProps) => {\r\n\r\n const [scroll, setScroll] = React.useState<number>();\r\n const [wasOpened, setWasOpened] = React.useState<boolean>(false);\r\n \r\n const preventScroll = (offset: number) => {\r\n Counter.openInstances++;\r\n setWasOpened(true);\r\n if (document) {\r\n setScroll(offset);\r\n document.body.style.position = 'fixed';\r\n document.body.style.left = `0px`;\r\n document.body.style.right = `0px`;\r\n document.body.style.top = `-${offset}px`;\r\n }\r\n }\r\n\r\n const resetScroll = () => {\r\n Counter.openInstances--;\r\n if (!Counter.openInstances && document) {\r\n //@ts-ignore\r\n document.body.style.position = null;\r\n //@ts-ignore\r\n document.body.style.left = null;\r\n //@ts-ignore\r\n document.body.style.top = null;\r\n //@ts-ignore\r\n document.body.style.right = null;\r\n scroll && window.scrollTo(0, scroll);\r\n setScroll(0);\r\n }\r\n }\r\n\r\n React.useEffect(() => {\r\n window && setScroll(window.scrollY);\r\n });\r\n\r\n React.useEffect(() => {\r\n //modal was opened\r\n window && !props.showModal && wasOpened && resetScroll();\r\n //modal was closed\r\n window && props.showModal && preventScroll(window.scrollY);\r\n }, [props.showModal]);\r\n\r\n\r\n React.useEffect(() => {\r\n if (ReactModal.defaultStyles.overlay) {\r\n ReactModal.defaultStyles.overlay.backgroundColor = 'rgba(0,0,0,0.5)';\r\n }\r\n\r\n //append style node to override modal transition classes\r\n if (document && !document.querySelector('[modal-custom-styling=\"active\"]')) {\r\n const head = document.head || document.getElementsByTagName('head')[0];\r\n const style = document.createElement('style');\r\n style.setAttribute('modal-custom-styling', 'active');\r\n head.appendChild(style);\r\n style.appendChild(document.createTextNode(modalTransitions));\r\n }\r\n \r\n }, []);\r\n\r\n const {\r\n id,\r\n showModal,\r\n closeModal,\r\n children,\r\n height = 'auto',\r\n width = 'auto',\r\n overflow = 'visible',\r\n padding,\r\n minWidth = '',\r\n maxWidth = '',\r\n zIndex = parseInt(Z_INDEXES.modal),\r\n shouldCloseOnOverlayClick = true\r\n } = props;\r\n\r\n // should be at least z-index of modal and below z-index of toast\r\n const zIndexValue = Math.min(Math.max(zIndex, +Z_INDEXES.modal), +Z_INDEXES.toast - 1);\r\n const stylesConfiguration = Object.assign({...ModalContainerStyles.content}, {\r\n height,\r\n width,\r\n padding,\r\n overflow,\r\n minWidth,\r\n maxWidth,\r\n zIndex: zIndexValue\r\n });\r\n const styles = {content: stylesConfiguration};\r\n ReactModal.setAppElement('body');\r\n return (\r\n <ReactModal id={id}\r\n isOpen={showModal}\r\n closeTimeoutMS={120}\r\n shouldCloseOnOverlayClick={shouldCloseOnOverlayClick}\r\n onRequestClose={() => closeModal()}\r\n style={styles}>\r\n {children}\r\n </ReactModal>\r\n );\r\n}\r\n\r\nexport default ModalContainer;\r\n"],"mappings":"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","ignoreList":[]}
@@ -33,6 +33,7 @@ var ModalDialog = function ModalDialog(_ref) {
33
33
  tooltip = _ref.tooltip,
34
34
  children = _ref.children,
35
35
  note = _ref.note,
36
+ shouldCloseOnOverlayClick = _ref.shouldCloseOnOverlayClick,
36
37
  state = _ref.state,
37
38
  icon = _ref.icon,
38
39
  zIndex = _ref.zIndex,
@@ -255,6 +256,7 @@ var ModalDialog = function ModalDialog(_ref) {
255
256
  showModal: isModalOpen,
256
257
  closeModal: closeAction,
257
258
  minWidth: getMinWidth(),
259
+ shouldCloseOnOverlayClick: shouldCloseOnOverlayClick,
258
260
  maxWidth: getMaxWidth(),
259
261
  height: "auto",
260
262
  padding: getPadding(),
@@ -344,7 +346,8 @@ ModalDialog.propTypes = {
344
346
  zIndex: _propTypes["default"].number,
345
347
  contentOverflow: _propTypes["default"].string,
346
348
  width: _propTypes["default"].string,
347
- hasContentBorders: _propTypes["default"].bool
349
+ hasContentBorders: _propTypes["default"].bool,
350
+ shouldCloseOnOverlayClick: _propTypes["default"].bool
348
351
  };
349
352
  var _default = ModalDialog;
350
353
  exports["default"] = _default;
@@ -1 +1 @@
1
- {"version":3,"file":"ModalDialog.cjs","names":["_react","_interopRequireDefault","require","_Button","_icons","_styles","_types","_ModalContainer","_ModalStyles","_ModalNote","_Tooltips","_","_styledComponents","_jsxRuntime","ModalDialog","_ref","size","isModalOpen","title","topImage","topImageWithFallbacksProps","topImageGrayscale","buttons","leftFooterAction","backButton","closeAction","submitAction","tooltip","children","note","state","icon","zIndex","contentOverflow","width","hasContentBorders","theme","useTheme","getMinWidth","Size","Small","Large","Medium","getMaxWidth","getImageHeight","getMarginBottom","getPadding","getMaxHeight","ModalTitle","jsx","ComponentM","textStyle","ComponentTextStyle","Bold","ComponentL","ComponentXL","ModalTootip","ModalHoverModifier","TooltipWrapper","delay","XSmall","align","position","withArrow","label","IconButton","variant","shape","action","SystemIcons","Help","color","COLORS","getColor","ModalCloseButton","onClick","CloseButtonWrapper","$hasImage","$size","borderRadius","Close","ModalBackButton","BackButtonWrapper","ArrowLineLeft","getLeftActionIconElement","React","cloneElement","LeftFooterAction","_button$variant","_button$children","text","actionType","disabled","button","Button","id","type","loading","style","order","marginRight","jsxs","HyperLink","className","href","e","preventDefault","showModal","closeModal","minWidth","maxWidth","height","padding","Column","onSubmit","display","flexDirection","maxHeight","StyledModalHeader","$height","$marginBottom","ImageContainer","ImageOverlay","src","alt","ImageWithFallbacks","loader","fallbacks","ModalHeaderActionsWithImage","$hasBackButton","ModalTitleSection","FlexContainer","ModalHeaderActions","ModalBody","$overflow","$hasContentBorders","ModalNote","ModalFooter","map","b","i","_b$children","exports","propTypes","_propTypes","bool","isRequired","node","oneOfType","string","any","array","func","number","_default"],"sources":["../../src/Modals/ModalDialog.tsx"],"sourcesContent":["import React from 'react';\r\nimport { Button, IconButton } from '../Button';\r\nimport { SystemIcons } from '../icons';\r\nimport { COLORS, ComponentL, ComponentM, ComponentTextStyle, ComponentXL } from '../styles';\r\nimport { Size } from '../types';\r\nimport ModalContainer from './ModalContainer';\r\nimport {\r\n BackButtonWrapper,\r\n CloseButtonWrapper,\r\n Column,\r\n FlexContainer,\r\n ModalBody,\r\n ModalFooter,\r\n ModalHeaderActions,\r\n ModalHeaderActionsWithImage,\r\n ModalTitleSection,\r\n StyledModalHeader,\r\n ModalHoverModifier,\r\n ImageOverlay,\r\n ImageContainer,\r\n} from './ModalStyles';\r\n\r\nimport { ModalNote } from './ModalNote';\r\nimport { TooltipWrapper } from '../Tooltips';\r\nimport { ButtonAction, LeftFooterAction, LeftFooterButton, LeftFooterHyperlink } from './ModalTypes';\r\nimport { HyperLink, ImageWithFallbacks } from '..';\r\nimport { ImageWithFallbacksProps } from '../Image/ImageWithFallbacks';\r\nimport { useTheme } from 'styled-components';\r\n\r\nexport interface ModalDialogProps {\r\n /** Optional. Size of the modal. Defaults to 'medium' */\r\n size?: Size.Small | Size.Medium | Size.Large;\r\n /** Required. Current state of the modal. */\r\n isModalOpen: boolean;\r\n /** Optional. Content of the ModalDialog. */\r\n children?: React.ReactNode;\r\n /** Optional. Title of the ModalDialog. */\r\n title?: string | React.ReactNode;\r\n /** Optional. Content of the image to be shown in the header of the modal. */\r\n topImage?: any;\r\n /** Optional. Serves same purpose as 'topImage' except adds support for fallback options. Has higher priority than 'topImage'. */\r\n topImageWithFallbacksProps?: ImageWithFallbacksProps;\r\n /** Optional. If flag is set then overlay is added that converts image to grey color. */\r\n topImageGrayscale?: boolean;\r\n /** Optional. Collection of Buttons that will be shown in the footer on the right side of the ModalDialog. */\r\n buttons?: ButtonAction[];\r\n /** Optional. Left footer action that will be shown on the left side of the footer of ModalDialog. Can be a hyperlink, button or a note. */\r\n leftFooterAction?: LeftFooterAction;\r\n /** Optional. Tooltip that will be shown */\r\n tooltip?: string;\r\n /** */\r\n backButton?: () => void;\r\n closeAction: () => void;\r\n submitAction: (event?: React.FormEvent<HTMLFormElement> | undefined) => void;\r\n note?: string | React.ReactNode;\r\n state?: string;\r\n icon?: React.ReactNode;\r\n zIndex?: number;\r\n contentOverflow?: string;\r\n width?: string;\r\n hasContentBorders?: boolean;\r\n}\r\n\r\nexport const ModalDialog: React.FunctionComponent<ModalDialogProps> = ({\r\n size,\r\n isModalOpen,\r\n title,\r\n topImage,\r\n topImageWithFallbacksProps,\r\n topImageGrayscale,\r\n buttons,\r\n leftFooterAction,\r\n backButton,\r\n closeAction,\r\n submitAction,\r\n tooltip,\r\n children,\r\n note,\r\n state,\r\n icon,\r\n zIndex,\r\n contentOverflow,\r\n width,\r\n hasContentBorders,\r\n}) => {\r\n\r\n const theme = useTheme();\r\n const getMinWidth = () => {\r\n switch (size) {\r\n case Size.Small:\r\n return '320px';\r\n case Size.Large:\r\n return '640px';\r\n case Size.Medium:\r\n default:\r\n return '480px';\r\n }\r\n };\r\n\r\n const getMaxWidth = () => {\r\n switch (size) {\r\n case Size.Small:\r\n return '480px';\r\n case Size.Large:\r\n return '720px';\r\n case Size.Medium:\r\n default:\r\n return '640px';\r\n }\r\n };\r\n\r\n const getImageHeight = () => {\r\n switch (size) {\r\n case Size.Small:\r\n return 160;\r\n case Size.Medium:\r\n return 200;\r\n case Size.Large:\r\n return 240;\r\n default:\r\n return 200;\r\n }\r\n };\r\n\r\n const getMarginBottom = () => {\r\n switch (size) {\r\n case Size.Small:\r\n return '16px';\r\n case Size.Medium:\r\n return '24px';\r\n case Size.Large:\r\n return '32px';\r\n default:\r\n return '24px';\r\n }\r\n };\r\n\r\n const getPadding = () => {\r\n switch (size) {\r\n case Size.Small:\r\n return '16px 16px 8px';\r\n case Size.Medium:\r\n return '24px 24px 20px';\r\n case Size.Large:\r\n return '32px';\r\n default:\r\n return '24px 24px 16px';\r\n }\r\n };\r\n\r\n const getMaxHeight = () => {\r\n switch (size) {\r\n case Size.Small:\r\n return 'calc(100vh - 56px)';\r\n case Size.Medium:\r\n return 'calc(100vh - 76px)';\r\n case Size.Large:\r\n return 'calc(100vh - 96px)';\r\n default:\r\n return 'calc(100vh - 72px)';\r\n }\r\n };\r\n\r\n const ModalTitle = (title: string | React.ReactNode, size?: Size) => {\r\n if (typeof title === 'string') {\r\n switch (size) {\r\n case Size.Small:\r\n return <ComponentM textStyle={ComponentTextStyle.Bold}>{title}</ComponentM>;\r\n case Size.Medium:\r\n return <ComponentL textStyle={ComponentTextStyle.Bold}>{title}</ComponentL>;\r\n case Size.Large:\r\n return <ComponentXL textStyle={ComponentTextStyle.Bold}>{title}</ComponentXL>;\r\n default:\r\n return <ComponentL textStyle={ComponentTextStyle.Bold}>{title}</ComponentL>;\r\n }\r\n } else {\r\n return title;\r\n }\r\n };\r\n\r\n const ModalTootip = (tooltip: string) => {\r\n return (\r\n <ModalHoverModifier>\r\n <TooltipWrapper delay=\"0s\" size={Size.XSmall} align=\"center\" position=\"top\" withArrow={false} label={tooltip}>\r\n <IconButton variant=\"secondary\" shape=\"circular\" action={() => {}}>\r\n <SystemIcons.Help size=\"24px\" color={COLORS.getColor('neutral_600', theme)} />\r\n </IconButton>\r\n </TooltipWrapper>\r\n </ModalHoverModifier>\r\n );\r\n };\r\n\r\n const ModalCloseButton = (onClick: any) => {\r\n return (\r\n <CloseButtonWrapper $hasImage={!!topImage || !!topImageWithFallbacksProps} $size={size}>\r\n <IconButton variant=\"secondary\" shape=\"circular\" action={() => onClick()} borderRadius={48}>\r\n <SystemIcons.Close size=\"24px\" color={COLORS.getColor('black', theme)} />\r\n </IconButton>\r\n </CloseButtonWrapper>\r\n );\r\n };\r\n\r\n const ModalBackButton = () => {\r\n if (backButton) {\r\n return (\r\n <BackButtonWrapper $hasImage={!!topImage || !!topImageWithFallbacksProps} $size={size}>\r\n <IconButton variant=\"secondary\" shape=\"circular\" action={() => backButton()} borderRadius={48}>\r\n <SystemIcons.ArrowLineLeft size=\"24px\" color={COLORS.getColor('black', theme)} />\r\n </IconButton>\r\n </BackButtonWrapper>\r\n );\r\n }\r\n };\r\n\r\n const getLeftActionIconElement = (icon: React.ReactNode) => {\r\n return React.cloneElement(icon as React.ReactElement, { size: size === Size.Small ? '20px' : size === Size.Large ? '28px' : '24px' });\r\n };\r\n\r\n const LeftFooterAction = (leftFooterAction: LeftFooterAction) => {\r\n const { text, actionType, disabled, icon, action } = leftFooterAction;\r\n switch (actionType) {\r\n case 'button':\r\n const button = leftFooterAction as LeftFooterButton;\r\n return (\r\n <Button\r\n id={'left-action-button'}\r\n type={button?.type}\r\n disabled={disabled}\r\n loading={button?.loading}\r\n icon={icon}\r\n size={size}\r\n onClick={action}\r\n variant={button?.variant ?? 'secondary'}\r\n style={{ order: -1, marginRight: 'auto' }}>\r\n {button?.children ?? button?.text}\r\n </Button>\r\n );\r\n case 'hyperlink':\r\n return (\r\n <HyperLink\r\n id=\"left-action-hyperlink\"\r\n className=\"footer-action\"\r\n href={(leftFooterAction as LeftFooterHyperlink).href}\r\n disabled={disabled}\r\n variant=\"default\"\r\n onClick={(e) => {\r\n if (action) {\r\n e.preventDefault();\r\n action(e);\r\n }\r\n }}>\r\n {text}\r\n {icon && getLeftActionIconElement(icon)}\r\n </HyperLink>\r\n );\r\n case 'note':\r\n return (\r\n <div className=\"footer-action note\">\r\n {icon && getLeftActionIconElement(icon)}\r\n <span>{text}</span>\r\n </div>\r\n );\r\n }\r\n };\r\n\r\n return (\r\n <ModalContainer\r\n showModal={isModalOpen}\r\n closeModal={closeAction}\r\n minWidth={getMinWidth()}\r\n maxWidth={getMaxWidth()}\r\n height=\"auto\"\r\n padding={getPadding()}\r\n zIndex={zIndex}\r\n width={width}>\r\n <Column>\r\n <form onSubmit={submitAction} style={{ display: 'flex', flexDirection: 'column', maxHeight: getMaxHeight() }}>\r\n {(topImage || topImageWithFallbacksProps) && (\r\n <StyledModalHeader $size={size} $height={getImageHeight()} $marginBottom={getMarginBottom()}>\r\n <ImageContainer $height={getImageHeight()}>\r\n {topImageGrayscale && <ImageOverlay $height={getImageHeight()} />}\r\n {topImage && <img src={topImage} alt=\"Modal top\" />}\r\n {!topImage && topImageWithFallbacksProps && (\r\n <ImageWithFallbacks\r\n loader={topImageWithFallbacksProps.loader}\r\n alt={topImageWithFallbacksProps.alt}\r\n fallbacks={topImageWithFallbacksProps.fallbacks}\r\n src={topImageWithFallbacksProps.src}\r\n />\r\n )}\r\n </ImageContainer>\r\n <ModalHeaderActionsWithImage $hasBackButton={!!backButton}>\r\n {ModalBackButton()}\r\n {ModalCloseButton(closeAction)}\r\n </ModalHeaderActionsWithImage>\r\n </StyledModalHeader>\r\n )}\r\n <ModalTitleSection>\r\n <FlexContainer>\r\n {!(topImage || topImageWithFallbacksProps) && ModalBackButton()}\r\n {title && ModalTitle(title, size)}\r\n </FlexContainer>\r\n {(tooltip || !(topImage || topImageWithFallbacksProps)) && (\r\n <ModalHeaderActions>\r\n {tooltip && ModalTootip(tooltip)}\r\n {!(topImage || topImageWithFallbacksProps) && ModalCloseButton(closeAction)}\r\n </ModalHeaderActions>\r\n )}\r\n </ModalTitleSection>\r\n\r\n <ModalBody $size={size} $overflow={contentOverflow} $hasContentBorders={hasContentBorders}>\r\n {children}\r\n </ModalBody>\r\n\r\n {note && <ModalNote note={note} state={state} size={size} icon={icon} />}\r\n\r\n <ModalFooter $size={size}>\r\n {leftFooterAction && LeftFooterAction(leftFooterAction)}\r\n {buttons?.map((b, i) => (\r\n <Button key={b.id || i} icon={b.icon} id={b.id} disabled={b.disabled} loading={b.loading} size={size} onClick={b.action} type={b.type} variant={b.variant}>\r\n {b.children ?? b.text}\r\n </Button>\r\n ))}\r\n </ModalFooter>\r\n </form>\r\n </Column>\r\n </ModalContainer>\r\n );\r\n};\r\n\r\nexport default ModalDialog;\r\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"ModalDialog.cjs","names":["_react","_interopRequireDefault","require","_Button","_icons","_styles","_types","_ModalContainer","_ModalStyles","_ModalNote","_Tooltips","_","_styledComponents","_jsxRuntime","ModalDialog","_ref","size","isModalOpen","title","topImage","topImageWithFallbacksProps","topImageGrayscale","buttons","leftFooterAction","backButton","closeAction","submitAction","tooltip","children","note","shouldCloseOnOverlayClick","state","icon","zIndex","contentOverflow","width","hasContentBorders","theme","useTheme","getMinWidth","Size","Small","Large","Medium","getMaxWidth","getImageHeight","getMarginBottom","getPadding","getMaxHeight","ModalTitle","jsx","ComponentM","textStyle","ComponentTextStyle","Bold","ComponentL","ComponentXL","ModalTootip","ModalHoverModifier","TooltipWrapper","delay","XSmall","align","position","withArrow","label","IconButton","variant","shape","action","SystemIcons","Help","color","COLORS","getColor","ModalCloseButton","onClick","CloseButtonWrapper","$hasImage","$size","borderRadius","Close","ModalBackButton","BackButtonWrapper","ArrowLineLeft","getLeftActionIconElement","React","cloneElement","LeftFooterAction","_button$variant","_button$children","text","actionType","disabled","button","Button","id","type","loading","style","order","marginRight","jsxs","HyperLink","className","href","e","preventDefault","showModal","closeModal","minWidth","maxWidth","height","padding","Column","onSubmit","display","flexDirection","maxHeight","StyledModalHeader","$height","$marginBottom","ImageContainer","ImageOverlay","src","alt","ImageWithFallbacks","loader","fallbacks","ModalHeaderActionsWithImage","$hasBackButton","ModalTitleSection","FlexContainer","ModalHeaderActions","ModalBody","$overflow","$hasContentBorders","ModalNote","ModalFooter","map","b","i","_b$children","exports","propTypes","_propTypes","bool","isRequired","node","oneOfType","string","any","array","func","number","_default"],"sources":["../../src/Modals/ModalDialog.tsx"],"sourcesContent":["import React from 'react';\r\nimport { Button, IconButton } from '../Button';\r\nimport { SystemIcons } from '../icons';\r\nimport { COLORS, ComponentL, ComponentM, ComponentTextStyle, ComponentXL } from '../styles';\r\nimport { Size } from '../types';\r\nimport ModalContainer from './ModalContainer';\r\nimport {\r\n BackButtonWrapper,\r\n CloseButtonWrapper,\r\n Column,\r\n FlexContainer,\r\n ModalBody,\r\n ModalFooter,\r\n ModalHeaderActions,\r\n ModalHeaderActionsWithImage,\r\n ModalTitleSection,\r\n StyledModalHeader,\r\n ModalHoverModifier,\r\n ImageOverlay,\r\n ImageContainer,\r\n} from './ModalStyles';\r\n\r\nimport { ModalNote } from './ModalNote';\r\nimport { TooltipWrapper } from '../Tooltips';\r\nimport { ButtonAction, LeftFooterAction, LeftFooterButton, LeftFooterHyperlink } from './ModalTypes';\r\nimport { HyperLink, ImageWithFallbacks } from '..';\r\nimport { ImageWithFallbacksProps } from '../Image/ImageWithFallbacks';\r\nimport { useTheme } from 'styled-components';\r\n\r\nexport interface ModalDialogProps {\r\n /** Optional. Size of the modal. Defaults to 'medium' */\r\n size?: Size.Small | Size.Medium | Size.Large;\r\n /** Required. Current state of the modal. */\r\n isModalOpen: boolean;\r\n /** Optional. Content of the ModalDialog. */\r\n children?: React.ReactNode;\r\n /** Optional. Title of the ModalDialog. */\r\n title?: string | React.ReactNode;\r\n /** Optional. Content of the image to be shown in the header of the modal. */\r\n topImage?: any;\r\n /** Optional. Serves same purpose as 'topImage' except adds support for fallback options. Has higher priority than 'topImage'. */\r\n topImageWithFallbacksProps?: ImageWithFallbacksProps;\r\n /** Optional. If flag is set then overlay is added that converts image to grey color. */\r\n topImageGrayscale?: boolean;\r\n /** Optional. Collection of Buttons that will be shown in the footer on the right side of the ModalDialog. */\r\n buttons?: ButtonAction[];\r\n /** Optional. Left footer action that will be shown on the left side of the footer of ModalDialog. Can be a hyperlink, button or a note. */\r\n leftFooterAction?: LeftFooterAction;\r\n /** Optional. Tooltip that will be shown */\r\n tooltip?: string;\r\n /** */\r\n backButton?: () => void;\r\n closeAction: () => void;\r\n submitAction: (event?: React.FormEvent<HTMLFormElement> | undefined) => void;\r\n note?: string | React.ReactNode;\r\n state?: string;\r\n icon?: React.ReactNode;\r\n zIndex?: number;\r\n contentOverflow?: string;\r\n width?: string;\r\n hasContentBorders?: boolean;\r\n shouldCloseOnOverlayClick?: boolean;\r\n}\r\n\r\nexport const ModalDialog: React.FunctionComponent<ModalDialogProps> = ({\r\n size,\r\n isModalOpen,\r\n title,\r\n topImage,\r\n topImageWithFallbacksProps,\r\n topImageGrayscale,\r\n buttons,\r\n leftFooterAction,\r\n backButton,\r\n closeAction,\r\n submitAction,\r\n tooltip,\r\n children,\r\n note,\r\n shouldCloseOnOverlayClick,\r\n state,\r\n icon,\r\n zIndex,\r\n contentOverflow,\r\n width,\r\n hasContentBorders,\r\n}) => {\r\n\r\n const theme = useTheme();\r\n const getMinWidth = () => {\r\n switch (size) {\r\n case Size.Small:\r\n return '320px';\r\n case Size.Large:\r\n return '640px';\r\n case Size.Medium:\r\n default:\r\n return '480px';\r\n }\r\n };\r\n\r\n const getMaxWidth = () => {\r\n switch (size) {\r\n case Size.Small:\r\n return '480px';\r\n case Size.Large:\r\n return '720px';\r\n case Size.Medium:\r\n default:\r\n return '640px';\r\n }\r\n };\r\n\r\n const getImageHeight = () => {\r\n switch (size) {\r\n case Size.Small:\r\n return 160;\r\n case Size.Medium:\r\n return 200;\r\n case Size.Large:\r\n return 240;\r\n default:\r\n return 200;\r\n }\r\n };\r\n\r\n const getMarginBottom = () => {\r\n switch (size) {\r\n case Size.Small:\r\n return '16px';\r\n case Size.Medium:\r\n return '24px';\r\n case Size.Large:\r\n return '32px';\r\n default:\r\n return '24px';\r\n }\r\n };\r\n\r\n const getPadding = () => {\r\n switch (size) {\r\n case Size.Small:\r\n return '16px 16px 8px';\r\n case Size.Medium:\r\n return '24px 24px 20px';\r\n case Size.Large:\r\n return '32px';\r\n default:\r\n return '24px 24px 16px';\r\n }\r\n };\r\n\r\n const getMaxHeight = () => {\r\n switch (size) {\r\n case Size.Small:\r\n return 'calc(100vh - 56px)';\r\n case Size.Medium:\r\n return 'calc(100vh - 76px)';\r\n case Size.Large:\r\n return 'calc(100vh - 96px)';\r\n default:\r\n return 'calc(100vh - 72px)';\r\n }\r\n };\r\n\r\n const ModalTitle = (title: string | React.ReactNode, size?: Size) => {\r\n if (typeof title === 'string') {\r\n switch (size) {\r\n case Size.Small:\r\n return <ComponentM textStyle={ComponentTextStyle.Bold}>{title}</ComponentM>;\r\n case Size.Medium:\r\n return <ComponentL textStyle={ComponentTextStyle.Bold}>{title}</ComponentL>;\r\n case Size.Large:\r\n return <ComponentXL textStyle={ComponentTextStyle.Bold}>{title}</ComponentXL>;\r\n default:\r\n return <ComponentL textStyle={ComponentTextStyle.Bold}>{title}</ComponentL>;\r\n }\r\n } else {\r\n return title;\r\n }\r\n };\r\n\r\n const ModalTootip = (tooltip: string) => {\r\n return (\r\n <ModalHoverModifier>\r\n <TooltipWrapper delay=\"0s\" size={Size.XSmall} align=\"center\" position=\"top\" withArrow={false} label={tooltip}>\r\n <IconButton variant=\"secondary\" shape=\"circular\" action={() => {}}>\r\n <SystemIcons.Help size=\"24px\" color={COLORS.getColor('neutral_600', theme)} />\r\n </IconButton>\r\n </TooltipWrapper>\r\n </ModalHoverModifier>\r\n );\r\n };\r\n\r\n const ModalCloseButton = (onClick: any) => {\r\n return (\r\n <CloseButtonWrapper $hasImage={!!topImage || !!topImageWithFallbacksProps} $size={size}>\r\n <IconButton variant=\"secondary\" shape=\"circular\" action={() => onClick()} borderRadius={48}>\r\n <SystemIcons.Close size=\"24px\" color={COLORS.getColor('black', theme)} />\r\n </IconButton>\r\n </CloseButtonWrapper>\r\n );\r\n };\r\n\r\n const ModalBackButton = () => {\r\n if (backButton) {\r\n return (\r\n <BackButtonWrapper $hasImage={!!topImage || !!topImageWithFallbacksProps} $size={size}>\r\n <IconButton variant=\"secondary\" shape=\"circular\" action={() => backButton()} borderRadius={48}>\r\n <SystemIcons.ArrowLineLeft size=\"24px\" color={COLORS.getColor('black', theme)} />\r\n </IconButton>\r\n </BackButtonWrapper>\r\n );\r\n }\r\n };\r\n\r\n const getLeftActionIconElement = (icon: React.ReactNode) => {\r\n return React.cloneElement(icon as React.ReactElement, { size: size === Size.Small ? '20px' : size === Size.Large ? '28px' : '24px' });\r\n };\r\n\r\n const LeftFooterAction = (leftFooterAction: LeftFooterAction) => {\r\n const { text, actionType, disabled, icon, action } = leftFooterAction;\r\n switch (actionType) {\r\n case 'button':\r\n const button = leftFooterAction as LeftFooterButton;\r\n return (\r\n <Button\r\n id={'left-action-button'}\r\n type={button?.type}\r\n disabled={disabled}\r\n loading={button?.loading}\r\n icon={icon}\r\n size={size}\r\n onClick={action}\r\n variant={button?.variant ?? 'secondary'}\r\n style={{ order: -1, marginRight: 'auto' }}>\r\n {button?.children ?? button?.text}\r\n </Button>\r\n );\r\n case 'hyperlink':\r\n return (\r\n <HyperLink\r\n id=\"left-action-hyperlink\"\r\n className=\"footer-action\"\r\n href={(leftFooterAction as LeftFooterHyperlink).href}\r\n disabled={disabled}\r\n variant=\"default\"\r\n onClick={(e) => {\r\n if (action) {\r\n e.preventDefault();\r\n action(e);\r\n }\r\n }}>\r\n {text}\r\n {icon && getLeftActionIconElement(icon)}\r\n </HyperLink>\r\n );\r\n case 'note':\r\n return (\r\n <div className=\"footer-action note\">\r\n {icon && getLeftActionIconElement(icon)}\r\n <span>{text}</span>\r\n </div>\r\n );\r\n }\r\n };\r\n\r\n return (\r\n <ModalContainer\r\n showModal={isModalOpen}\r\n closeModal={closeAction}\r\n minWidth={getMinWidth()}\r\n shouldCloseOnOverlayClick={shouldCloseOnOverlayClick}\r\n maxWidth={getMaxWidth()}\r\n height=\"auto\"\r\n padding={getPadding()}\r\n zIndex={zIndex}\r\n width={width}>\r\n <Column>\r\n <form onSubmit={submitAction} style={{ display: 'flex', flexDirection: 'column', maxHeight: getMaxHeight() }}>\r\n {(topImage || topImageWithFallbacksProps) && (\r\n <StyledModalHeader $size={size} $height={getImageHeight()} $marginBottom={getMarginBottom()}>\r\n <ImageContainer $height={getImageHeight()}>\r\n {topImageGrayscale && <ImageOverlay $height={getImageHeight()} />}\r\n {topImage && <img src={topImage} alt=\"Modal top\" />}\r\n {!topImage && topImageWithFallbacksProps && (\r\n <ImageWithFallbacks\r\n loader={topImageWithFallbacksProps.loader}\r\n alt={topImageWithFallbacksProps.alt}\r\n fallbacks={topImageWithFallbacksProps.fallbacks}\r\n src={topImageWithFallbacksProps.src}\r\n />\r\n )}\r\n </ImageContainer>\r\n <ModalHeaderActionsWithImage $hasBackButton={!!backButton}>\r\n {ModalBackButton()}\r\n {ModalCloseButton(closeAction)}\r\n </ModalHeaderActionsWithImage>\r\n </StyledModalHeader>\r\n )}\r\n <ModalTitleSection>\r\n <FlexContainer>\r\n {!(topImage || topImageWithFallbacksProps) && ModalBackButton()}\r\n {title && ModalTitle(title, size)}\r\n </FlexContainer>\r\n {(tooltip || !(topImage || topImageWithFallbacksProps)) && (\r\n <ModalHeaderActions>\r\n {tooltip && ModalTootip(tooltip)}\r\n {!(topImage || topImageWithFallbacksProps) && ModalCloseButton(closeAction)}\r\n </ModalHeaderActions>\r\n )}\r\n </ModalTitleSection>\r\n\r\n <ModalBody $size={size} $overflow={contentOverflow} $hasContentBorders={hasContentBorders}>\r\n {children}\r\n </ModalBody>\r\n\r\n {note && <ModalNote note={note} state={state} size={size} icon={icon} />}\r\n\r\n <ModalFooter $size={size}>\r\n {leftFooterAction && LeftFooterAction(leftFooterAction)}\r\n {buttons?.map((b, i) => (\r\n <Button key={b.id || i} icon={b.icon} id={b.id} disabled={b.disabled} loading={b.loading} size={size} onClick={b.action} type={b.type} variant={b.variant}>\r\n {b.children ?? b.text}\r\n </Button>\r\n ))}\r\n </ModalFooter>\r\n </form>\r\n </Column>\r\n </ModalContainer>\r\n );\r\n};\r\n\r\nexport default ModalDialog;\r\n"],"mappings":"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","ignoreList":[]}
@@ -34,6 +34,7 @@ export interface ModalDialogProps {
34
34
  contentOverflow?: string;
35
35
  width?: string;
36
36
  hasContentBorders?: boolean;
37
+ shouldCloseOnOverlayClick?: boolean;
37
38
  }
38
39
  export declare const ModalDialog: React.FunctionComponent<ModalDialogProps>;
39
40
  export default ModalDialog;
@@ -27,6 +27,7 @@ export var ModalDialog = function ModalDialog(_ref) {
27
27
  tooltip = _ref.tooltip,
28
28
  children = _ref.children,
29
29
  note = _ref.note,
30
+ shouldCloseOnOverlayClick = _ref.shouldCloseOnOverlayClick,
30
31
  state = _ref.state,
31
32
  icon = _ref.icon,
32
33
  zIndex = _ref.zIndex,
@@ -249,6 +250,7 @@ export var ModalDialog = function ModalDialog(_ref) {
249
250
  showModal: isModalOpen,
250
251
  closeModal: closeAction,
251
252
  minWidth: getMinWidth(),
253
+ shouldCloseOnOverlayClick: shouldCloseOnOverlayClick,
252
254
  maxWidth: getMaxWidth(),
253
255
  height: "auto",
254
256
  padding: getPadding(),
@@ -337,7 +339,8 @@ ModalDialog.propTypes = {
337
339
  zIndex: _pt.number,
338
340
  contentOverflow: _pt.string,
339
341
  width: _pt.string,
340
- hasContentBorders: _pt.bool
342
+ hasContentBorders: _pt.bool,
343
+ shouldCloseOnOverlayClick: _pt.bool
341
344
  };
342
345
  export default ModalDialog;
343
346
  //# sourceMappingURL=ModalDialog.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ModalDialog.js","names":["React","Button","IconButton","SystemIcons","COLORS","ComponentL","ComponentM","ComponentTextStyle","ComponentXL","Size","ModalContainer","BackButtonWrapper","CloseButtonWrapper","Column","FlexContainer","ModalBody","ModalFooter","ModalHeaderActions","ModalHeaderActionsWithImage","ModalTitleSection","StyledModalHeader","ModalHoverModifier","ImageOverlay","ImageContainer","ModalNote","TooltipWrapper","HyperLink","ImageWithFallbacks","useTheme","jsx","_jsx","jsxs","_jsxs","ModalDialog","_ref","size","isModalOpen","title","topImage","topImageWithFallbacksProps","topImageGrayscale","buttons","leftFooterAction","backButton","closeAction","submitAction","tooltip","children","note","state","icon","zIndex","contentOverflow","width","hasContentBorders","theme","getMinWidth","Small","Large","Medium","getMaxWidth","getImageHeight","getMarginBottom","getPadding","getMaxHeight","ModalTitle","textStyle","Bold","ModalTootip","delay","XSmall","align","position","withArrow","label","variant","shape","action","Help","color","getColor","ModalCloseButton","onClick","$hasImage","$size","borderRadius","Close","ModalBackButton","ArrowLineLeft","getLeftActionIconElement","cloneElement","LeftFooterAction","_button$variant","_button$children","text","actionType","disabled","button","id","type","loading","style","order","marginRight","className","href","e","preventDefault","showModal","closeModal","minWidth","maxWidth","height","padding","onSubmit","display","flexDirection","maxHeight","$height","$marginBottom","src","alt","loader","fallbacks","$hasBackButton","$overflow","$hasContentBorders","map","b","i","_b$children","propTypes","_pt","bool","isRequired","node","oneOfType","string","any","array","func","number"],"sources":["../../src/Modals/ModalDialog.tsx"],"sourcesContent":["import React from 'react';\r\nimport { Button, IconButton } from '../Button';\r\nimport { SystemIcons } from '../icons';\r\nimport { COLORS, ComponentL, ComponentM, ComponentTextStyle, ComponentXL } from '../styles';\r\nimport { Size } from '../types';\r\nimport ModalContainer from './ModalContainer';\r\nimport {\r\n BackButtonWrapper,\r\n CloseButtonWrapper,\r\n Column,\r\n FlexContainer,\r\n ModalBody,\r\n ModalFooter,\r\n ModalHeaderActions,\r\n ModalHeaderActionsWithImage,\r\n ModalTitleSection,\r\n StyledModalHeader,\r\n ModalHoverModifier,\r\n ImageOverlay,\r\n ImageContainer,\r\n} from './ModalStyles';\r\n\r\nimport { ModalNote } from './ModalNote';\r\nimport { TooltipWrapper } from '../Tooltips';\r\nimport { ButtonAction, LeftFooterAction, LeftFooterButton, LeftFooterHyperlink } from './ModalTypes';\r\nimport { HyperLink, ImageWithFallbacks } from '..';\r\nimport { ImageWithFallbacksProps } from '../Image/ImageWithFallbacks';\r\nimport { useTheme } from 'styled-components';\r\n\r\nexport interface ModalDialogProps {\r\n /** Optional. Size of the modal. Defaults to 'medium' */\r\n size?: Size.Small | Size.Medium | Size.Large;\r\n /** Required. Current state of the modal. */\r\n isModalOpen: boolean;\r\n /** Optional. Content of the ModalDialog. */\r\n children?: React.ReactNode;\r\n /** Optional. Title of the ModalDialog. */\r\n title?: string | React.ReactNode;\r\n /** Optional. Content of the image to be shown in the header of the modal. */\r\n topImage?: any;\r\n /** Optional. Serves same purpose as 'topImage' except adds support for fallback options. Has higher priority than 'topImage'. */\r\n topImageWithFallbacksProps?: ImageWithFallbacksProps;\r\n /** Optional. If flag is set then overlay is added that converts image to grey color. */\r\n topImageGrayscale?: boolean;\r\n /** Optional. Collection of Buttons that will be shown in the footer on the right side of the ModalDialog. */\r\n buttons?: ButtonAction[];\r\n /** Optional. Left footer action that will be shown on the left side of the footer of ModalDialog. Can be a hyperlink, button or a note. */\r\n leftFooterAction?: LeftFooterAction;\r\n /** Optional. Tooltip that will be shown */\r\n tooltip?: string;\r\n /** */\r\n backButton?: () => void;\r\n closeAction: () => void;\r\n submitAction: (event?: React.FormEvent<HTMLFormElement> | undefined) => void;\r\n note?: string | React.ReactNode;\r\n state?: string;\r\n icon?: React.ReactNode;\r\n zIndex?: number;\r\n contentOverflow?: string;\r\n width?: string;\r\n hasContentBorders?: boolean;\r\n}\r\n\r\nexport const ModalDialog: React.FunctionComponent<ModalDialogProps> = ({\r\n size,\r\n isModalOpen,\r\n title,\r\n topImage,\r\n topImageWithFallbacksProps,\r\n topImageGrayscale,\r\n buttons,\r\n leftFooterAction,\r\n backButton,\r\n closeAction,\r\n submitAction,\r\n tooltip,\r\n children,\r\n note,\r\n state,\r\n icon,\r\n zIndex,\r\n contentOverflow,\r\n width,\r\n hasContentBorders,\r\n}) => {\r\n\r\n const theme = useTheme();\r\n const getMinWidth = () => {\r\n switch (size) {\r\n case Size.Small:\r\n return '320px';\r\n case Size.Large:\r\n return '640px';\r\n case Size.Medium:\r\n default:\r\n return '480px';\r\n }\r\n };\r\n\r\n const getMaxWidth = () => {\r\n switch (size) {\r\n case Size.Small:\r\n return '480px';\r\n case Size.Large:\r\n return '720px';\r\n case Size.Medium:\r\n default:\r\n return '640px';\r\n }\r\n };\r\n\r\n const getImageHeight = () => {\r\n switch (size) {\r\n case Size.Small:\r\n return 160;\r\n case Size.Medium:\r\n return 200;\r\n case Size.Large:\r\n return 240;\r\n default:\r\n return 200;\r\n }\r\n };\r\n\r\n const getMarginBottom = () => {\r\n switch (size) {\r\n case Size.Small:\r\n return '16px';\r\n case Size.Medium:\r\n return '24px';\r\n case Size.Large:\r\n return '32px';\r\n default:\r\n return '24px';\r\n }\r\n };\r\n\r\n const getPadding = () => {\r\n switch (size) {\r\n case Size.Small:\r\n return '16px 16px 8px';\r\n case Size.Medium:\r\n return '24px 24px 20px';\r\n case Size.Large:\r\n return '32px';\r\n default:\r\n return '24px 24px 16px';\r\n }\r\n };\r\n\r\n const getMaxHeight = () => {\r\n switch (size) {\r\n case Size.Small:\r\n return 'calc(100vh - 56px)';\r\n case Size.Medium:\r\n return 'calc(100vh - 76px)';\r\n case Size.Large:\r\n return 'calc(100vh - 96px)';\r\n default:\r\n return 'calc(100vh - 72px)';\r\n }\r\n };\r\n\r\n const ModalTitle = (title: string | React.ReactNode, size?: Size) => {\r\n if (typeof title === 'string') {\r\n switch (size) {\r\n case Size.Small:\r\n return <ComponentM textStyle={ComponentTextStyle.Bold}>{title}</ComponentM>;\r\n case Size.Medium:\r\n return <ComponentL textStyle={ComponentTextStyle.Bold}>{title}</ComponentL>;\r\n case Size.Large:\r\n return <ComponentXL textStyle={ComponentTextStyle.Bold}>{title}</ComponentXL>;\r\n default:\r\n return <ComponentL textStyle={ComponentTextStyle.Bold}>{title}</ComponentL>;\r\n }\r\n } else {\r\n return title;\r\n }\r\n };\r\n\r\n const ModalTootip = (tooltip: string) => {\r\n return (\r\n <ModalHoverModifier>\r\n <TooltipWrapper delay=\"0s\" size={Size.XSmall} align=\"center\" position=\"top\" withArrow={false} label={tooltip}>\r\n <IconButton variant=\"secondary\" shape=\"circular\" action={() => {}}>\r\n <SystemIcons.Help size=\"24px\" color={COLORS.getColor('neutral_600', theme)} />\r\n </IconButton>\r\n </TooltipWrapper>\r\n </ModalHoverModifier>\r\n );\r\n };\r\n\r\n const ModalCloseButton = (onClick: any) => {\r\n return (\r\n <CloseButtonWrapper $hasImage={!!topImage || !!topImageWithFallbacksProps} $size={size}>\r\n <IconButton variant=\"secondary\" shape=\"circular\" action={() => onClick()} borderRadius={48}>\r\n <SystemIcons.Close size=\"24px\" color={COLORS.getColor('black', theme)} />\r\n </IconButton>\r\n </CloseButtonWrapper>\r\n );\r\n };\r\n\r\n const ModalBackButton = () => {\r\n if (backButton) {\r\n return (\r\n <BackButtonWrapper $hasImage={!!topImage || !!topImageWithFallbacksProps} $size={size}>\r\n <IconButton variant=\"secondary\" shape=\"circular\" action={() => backButton()} borderRadius={48}>\r\n <SystemIcons.ArrowLineLeft size=\"24px\" color={COLORS.getColor('black', theme)} />\r\n </IconButton>\r\n </BackButtonWrapper>\r\n );\r\n }\r\n };\r\n\r\n const getLeftActionIconElement = (icon: React.ReactNode) => {\r\n return React.cloneElement(icon as React.ReactElement, { size: size === Size.Small ? '20px' : size === Size.Large ? '28px' : '24px' });\r\n };\r\n\r\n const LeftFooterAction = (leftFooterAction: LeftFooterAction) => {\r\n const { text, actionType, disabled, icon, action } = leftFooterAction;\r\n switch (actionType) {\r\n case 'button':\r\n const button = leftFooterAction as LeftFooterButton;\r\n return (\r\n <Button\r\n id={'left-action-button'}\r\n type={button?.type}\r\n disabled={disabled}\r\n loading={button?.loading}\r\n icon={icon}\r\n size={size}\r\n onClick={action}\r\n variant={button?.variant ?? 'secondary'}\r\n style={{ order: -1, marginRight: 'auto' }}>\r\n {button?.children ?? button?.text}\r\n </Button>\r\n );\r\n case 'hyperlink':\r\n return (\r\n <HyperLink\r\n id=\"left-action-hyperlink\"\r\n className=\"footer-action\"\r\n href={(leftFooterAction as LeftFooterHyperlink).href}\r\n disabled={disabled}\r\n variant=\"default\"\r\n onClick={(e) => {\r\n if (action) {\r\n e.preventDefault();\r\n action(e);\r\n }\r\n }}>\r\n {text}\r\n {icon && getLeftActionIconElement(icon)}\r\n </HyperLink>\r\n );\r\n case 'note':\r\n return (\r\n <div className=\"footer-action note\">\r\n {icon && getLeftActionIconElement(icon)}\r\n <span>{text}</span>\r\n </div>\r\n );\r\n }\r\n };\r\n\r\n return (\r\n <ModalContainer\r\n showModal={isModalOpen}\r\n closeModal={closeAction}\r\n minWidth={getMinWidth()}\r\n maxWidth={getMaxWidth()}\r\n height=\"auto\"\r\n padding={getPadding()}\r\n zIndex={zIndex}\r\n width={width}>\r\n <Column>\r\n <form onSubmit={submitAction} style={{ display: 'flex', flexDirection: 'column', maxHeight: getMaxHeight() }}>\r\n {(topImage || topImageWithFallbacksProps) && (\r\n <StyledModalHeader $size={size} $height={getImageHeight()} $marginBottom={getMarginBottom()}>\r\n <ImageContainer $height={getImageHeight()}>\r\n {topImageGrayscale && <ImageOverlay $height={getImageHeight()} />}\r\n {topImage && <img src={topImage} alt=\"Modal top\" />}\r\n {!topImage && topImageWithFallbacksProps && (\r\n <ImageWithFallbacks\r\n loader={topImageWithFallbacksProps.loader}\r\n alt={topImageWithFallbacksProps.alt}\r\n fallbacks={topImageWithFallbacksProps.fallbacks}\r\n src={topImageWithFallbacksProps.src}\r\n />\r\n )}\r\n </ImageContainer>\r\n <ModalHeaderActionsWithImage $hasBackButton={!!backButton}>\r\n {ModalBackButton()}\r\n {ModalCloseButton(closeAction)}\r\n </ModalHeaderActionsWithImage>\r\n </StyledModalHeader>\r\n )}\r\n <ModalTitleSection>\r\n <FlexContainer>\r\n {!(topImage || topImageWithFallbacksProps) && ModalBackButton()}\r\n {title && ModalTitle(title, size)}\r\n </FlexContainer>\r\n {(tooltip || !(topImage || topImageWithFallbacksProps)) && (\r\n <ModalHeaderActions>\r\n {tooltip && ModalTootip(tooltip)}\r\n {!(topImage || topImageWithFallbacksProps) && ModalCloseButton(closeAction)}\r\n </ModalHeaderActions>\r\n )}\r\n </ModalTitleSection>\r\n\r\n <ModalBody $size={size} $overflow={contentOverflow} $hasContentBorders={hasContentBorders}>\r\n {children}\r\n </ModalBody>\r\n\r\n {note && <ModalNote note={note} state={state} size={size} icon={icon} />}\r\n\r\n <ModalFooter $size={size}>\r\n {leftFooterAction && LeftFooterAction(leftFooterAction)}\r\n {buttons?.map((b, i) => (\r\n <Button key={b.id || i} icon={b.icon} id={b.id} disabled={b.disabled} loading={b.loading} size={size} onClick={b.action} type={b.type} variant={b.variant}>\r\n {b.children ?? b.text}\r\n </Button>\r\n ))}\r\n </ModalFooter>\r\n </form>\r\n </Column>\r\n </ModalContainer>\r\n );\r\n};\r\n\r\nexport default ModalDialog;\r\n"],"mappings":";AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,MAAM,EAAEC,UAAU,QAAQ,WAAW;AAC9C,SAASC,WAAW,QAAQ,UAAU;AACtC,SAASC,MAAM,EAAEC,UAAU,EAAEC,UAAU,EAAEC,kBAAkB,EAAEC,WAAW,QAAQ,WAAW;AAC3F,SAASC,IAAI,QAAQ,UAAU;AAC/B,OAAOC,cAAc,MAAM,kBAAkB;AAC7C,SACEC,iBAAiB,EACjBC,kBAAkB,EAClBC,MAAM,EACNC,aAAa,EACbC,SAAS,EACTC,WAAW,EACXC,kBAAkB,EAClBC,2BAA2B,EAC3BC,iBAAiB,EACjBC,iBAAiB,EACjBC,kBAAkB,EAClBC,YAAY,EACZC,cAAc,QACT,eAAe;AAEtB,SAASC,SAAS,QAAQ,aAAa;AACvC,SAASC,cAAc,QAAQ,aAAa;AAE5C,SAASC,SAAS,EAAEC,kBAAkB,QAAQ,IAAI;AAElD,SAASC,QAAQ,QAAQ,mBAAmB;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAAA,SAAAC,IAAA,IAAAC,KAAA;AAoC7C,OAAO,IAAMC,WAAsD,GAAG,SAAzDA,WAAsDA,CAAAC,IAAA,EAqB7D;EAAA,IApBJC,IAAI,GAAAD,IAAA,CAAJC,IAAI;IACJC,WAAW,GAAAF,IAAA,CAAXE,WAAW;IACXC,KAAK,GAAAH,IAAA,CAALG,KAAK;IACLC,QAAQ,GAAAJ,IAAA,CAARI,QAAQ;IACRC,0BAA0B,GAAAL,IAAA,CAA1BK,0BAA0B;IAC1BC,iBAAiB,GAAAN,IAAA,CAAjBM,iBAAiB;IACjBC,OAAO,GAAAP,IAAA,CAAPO,OAAO;IACPC,gBAAgB,GAAAR,IAAA,CAAhBQ,gBAAgB;IAChBC,UAAU,GAAAT,IAAA,CAAVS,UAAU;IACVC,WAAW,GAAAV,IAAA,CAAXU,WAAW;IACXC,YAAY,GAAAX,IAAA,CAAZW,YAAY;IACZC,OAAO,GAAAZ,IAAA,CAAPY,OAAO;IACPC,QAAQ,GAAAb,IAAA,CAARa,QAAQ;IACRC,IAAI,GAAAd,IAAA,CAAJc,IAAI;IACJC,KAAK,GAAAf,IAAA,CAALe,KAAK;IACLC,IAAI,GAAAhB,IAAA,CAAJgB,IAAI;IACJC,MAAM,GAAAjB,IAAA,CAANiB,MAAM;IACNC,eAAe,GAAAlB,IAAA,CAAfkB,eAAe;IACfC,KAAK,GAAAnB,IAAA,CAALmB,KAAK;IACLC,iBAAiB,GAAApB,IAAA,CAAjBoB,iBAAiB;EAGjB,IAAMC,KAAK,GAAG3B,QAAQ,CAAC,CAAC;EACxB,IAAM4B,WAAW,GAAG,SAAdA,WAAWA,CAAA,EAAS;IACxB,QAAQrB,IAAI;MACV,KAAK1B,IAAI,CAACgD,KAAK;QACb,OAAO,OAAO;MAChB,KAAKhD,IAAI,CAACiD,KAAK;QACb,OAAO,OAAO;MAChB,KAAKjD,IAAI,CAACkD,MAAM;MAChB;QACE,OAAO,OAAO;IAClB;EACF,CAAC;EAED,IAAMC,WAAW,GAAG,SAAdA,WAAWA,CAAA,EAAS;IACxB,QAAQzB,IAAI;MACV,KAAK1B,IAAI,CAACgD,KAAK;QACb,OAAO,OAAO;MAChB,KAAKhD,IAAI,CAACiD,KAAK;QACb,OAAO,OAAO;MAChB,KAAKjD,IAAI,CAACkD,MAAM;MAChB;QACE,OAAO,OAAO;IAClB;EACF,CAAC;EAED,IAAME,cAAc,GAAG,SAAjBA,cAAcA,CAAA,EAAS;IAC3B,QAAQ1B,IAAI;MACV,KAAK1B,IAAI,CAACgD,KAAK;QACb,OAAO,GAAG;MACZ,KAAKhD,IAAI,CAACkD,MAAM;QACd,OAAO,GAAG;MACZ,KAAKlD,IAAI,CAACiD,KAAK;QACb,OAAO,GAAG;MACZ;QACE,OAAO,GAAG;IACd;EACF,CAAC;EAED,IAAMI,eAAe,GAAG,SAAlBA,eAAeA,CAAA,EAAS;IAC5B,QAAQ3B,IAAI;MACV,KAAK1B,IAAI,CAACgD,KAAK;QACb,OAAO,MAAM;MACf,KAAKhD,IAAI,CAACkD,MAAM;QACd,OAAO,MAAM;MACf,KAAKlD,IAAI,CAACiD,KAAK;QACb,OAAO,MAAM;MACf;QACE,OAAO,MAAM;IACjB;EACF,CAAC;EAED,IAAMK,UAAU,GAAG,SAAbA,UAAUA,CAAA,EAAS;IACvB,QAAQ5B,IAAI;MACV,KAAK1B,IAAI,CAACgD,KAAK;QACb,OAAO,eAAe;MACxB,KAAKhD,IAAI,CAACkD,MAAM;QACd,OAAO,gBAAgB;MACzB,KAAKlD,IAAI,CAACiD,KAAK;QACb,OAAO,MAAM;MACf;QACE,OAAO,gBAAgB;IAC3B;EACF,CAAC;EAED,IAAMM,YAAY,GAAG,SAAfA,YAAYA,CAAA,EAAS;IACzB,QAAQ7B,IAAI;MACV,KAAK1B,IAAI,CAACgD,KAAK;QACb,OAAO,oBAAoB;MAC7B,KAAKhD,IAAI,CAACkD,MAAM;QACd,OAAO,oBAAoB;MAC7B,KAAKlD,IAAI,CAACiD,KAAK;QACb,OAAO,oBAAoB;MAC7B;QACE,OAAO,oBAAoB;IAC/B;EACF,CAAC;EAED,IAAMO,UAAU,GAAG,SAAbA,UAAUA,CAAI5B,KAA+B,EAAEF,IAAW,EAAK;IACnE,IAAI,OAAOE,KAAK,KAAK,QAAQ,EAAE;MAC7B,QAAQF,IAAI;QACV,KAAK1B,IAAI,CAACgD,KAAK;UACb,oBAAO3B,IAAA,CAACxB,UAAU;YAAC4D,SAAS,EAAE3D,kBAAkB,CAAC4D,IAAK;YAAApB,QAAA,EAAEV;UAAK,CAAa,CAAC;QAC7E,KAAK5B,IAAI,CAACkD,MAAM;UACd,oBAAO7B,IAAA,CAACzB,UAAU;YAAC6D,SAAS,EAAE3D,kBAAkB,CAAC4D,IAAK;YAAApB,QAAA,EAAEV;UAAK,CAAa,CAAC;QAC7E,KAAK5B,IAAI,CAACiD,KAAK;UACb,oBAAO5B,IAAA,CAACtB,WAAW;YAAC0D,SAAS,EAAE3D,kBAAkB,CAAC4D,IAAK;YAAApB,QAAA,EAAEV;UAAK,CAAc,CAAC;QAC/E;UACE,oBAAOP,IAAA,CAACzB,UAAU;YAAC6D,SAAS,EAAE3D,kBAAkB,CAAC4D,IAAK;YAAApB,QAAA,EAAEV;UAAK,CAAa,CAAC;MAC/E;IACF,CAAC,MAAM;MACL,OAAOA,KAAK;IACd;EACF,CAAC;EAED,IAAM+B,WAAW,GAAG,SAAdA,WAAWA,CAAItB,OAAe,EAAK;IACvC,oBACEhB,IAAA,CAACT,kBAAkB;MAAA0B,QAAA,eACjBjB,IAAA,CAACL,cAAc;QAAC4C,KAAK,EAAC,IAAI;QAAClC,IAAI,EAAE1B,IAAI,CAAC6D,MAAO;QAACC,KAAK,EAAC,QAAQ;QAACC,QAAQ,EAAC,KAAK;QAACC,SAAS,EAAE,KAAM;QAACC,KAAK,EAAE5B,OAAQ;QAAAC,QAAA,eAC3GjB,IAAA,CAAC5B,UAAU;UAACyE,OAAO,EAAC,WAAW;UAACC,KAAK,EAAC,UAAU;UAACC,MAAM,EAAE,SAAAA,OAAA,EAAM,CAAC,CAAE;UAAA9B,QAAA,eAChEjB,IAAA,CAAC3B,WAAW,CAAC2E,IAAI;YAAC3C,IAAI,EAAC,MAAM;YAAC4C,KAAK,EAAE3E,MAAM,CAAC4E,QAAQ,CAAC,aAAa,EAAEzB,KAAK;UAAE,CAAE;QAAC,CACpE;MAAC,CACC;IAAC,CACC,CAAC;EAEzB,CAAC;EAED,IAAM0B,gBAAgB,GAAG,SAAnBA,gBAAgBA,CAAIC,OAAY,EAAK;IACzC,oBACEpD,IAAA,CAAClB,kBAAkB;MAACuE,SAAS,EAAE,CAAC,CAAC7C,QAAQ,IAAI,CAAC,CAACC,0BAA2B;MAAC6C,KAAK,EAAEjD,IAAK;MAAAY,QAAA,eACrFjB,IAAA,CAAC5B,UAAU;QAACyE,OAAO,EAAC,WAAW;QAACC,KAAK,EAAC,UAAU;QAACC,MAAM,EAAE,SAAAA,OAAA;UAAA,OAAMK,OAAO,CAAC,CAAC;QAAA,CAAC;QAACG,YAAY,EAAE,EAAG;QAAAtC,QAAA,eACzFjB,IAAA,CAAC3B,WAAW,CAACmF,KAAK;UAACnD,IAAI,EAAC,MAAM;UAAC4C,KAAK,EAAE3E,MAAM,CAAC4E,QAAQ,CAAC,OAAO,EAAEzB,KAAK;QAAE,CAAE;MAAC,CAC/D;IAAC,CACK,CAAC;EAEzB,CAAC;EAED,IAAMgC,eAAe,GAAG,SAAlBA,eAAeA,CAAA,EAAS;IAC5B,IAAI5C,UAAU,EAAE;MACd,oBACEb,IAAA,CAACnB,iBAAiB;QAACwE,SAAS,EAAE,CAAC,CAAC7C,QAAQ,IAAI,CAAC,CAACC,0BAA2B;QAAC6C,KAAK,EAAEjD,IAAK;QAAAY,QAAA,eACpFjB,IAAA,CAAC5B,UAAU;UAACyE,OAAO,EAAC,WAAW;UAACC,KAAK,EAAC,UAAU;UAACC,MAAM,EAAE,SAAAA,OAAA;YAAA,OAAMlC,UAAU,CAAC,CAAC;UAAA,CAAC;UAAC0C,YAAY,EAAE,EAAG;UAAAtC,QAAA,eAC5FjB,IAAA,CAAC3B,WAAW,CAACqF,aAAa;YAACrD,IAAI,EAAC,MAAM;YAAC4C,KAAK,EAAE3E,MAAM,CAAC4E,QAAQ,CAAC,OAAO,EAAEzB,KAAK;UAAE,CAAE;QAAC,CACvE;MAAC,CACI,CAAC;IAExB;EACF,CAAC;EAED,IAAMkC,wBAAwB,GAAG,SAA3BA,wBAAwBA,CAAIvC,IAAqB,EAAK;IAC1D,oBAAOlD,KAAK,CAAC0F,YAAY,CAACxC,IAAI,EAAwB;MAAEf,IAAI,EAAEA,IAAI,KAAK1B,IAAI,CAACgD,KAAK,GAAG,MAAM,GAAGtB,IAAI,KAAK1B,IAAI,CAACiD,KAAK,GAAG,MAAM,GAAG;IAAO,CAAC,CAAC;EACvI,CAAC;EAED,IAAMiC,gBAAgB,GAAG,SAAnBA,gBAAgBA,CAAIjD,gBAAkC,EAAK;IAAA,IAAAkD,eAAA,EAAAC,gBAAA;IAC/D,IAAQC,IAAI,GAAyCpD,gBAAgB,CAA7DoD,IAAI;MAAEC,UAAU,GAA6BrD,gBAAgB,CAAvDqD,UAAU;MAAEC,QAAQ,GAAmBtD,gBAAgB,CAA3CsD,QAAQ;MAAE9C,IAAI,GAAaR,gBAAgB,CAAjCQ,IAAI;MAAE2B,MAAM,GAAKnC,gBAAgB,CAA3BmC,MAAM;IAChD,QAAQkB,UAAU;MAChB,KAAK,QAAQ;QACX,IAAME,MAAM,GAAGvD,gBAAoC;QACnD,oBACEZ,IAAA,CAAC7B,MAAM;UACLiG,EAAE,EAAE,oBAAqB;UACzBC,IAAI,EAAEF,MAAM,aAANA,MAAM,uBAANA,MAAM,CAAEE,IAAK;UACnBH,QAAQ,EAAEA,QAAS;UACnBI,OAAO,EAAEH,MAAM,aAANA,MAAM,uBAANA,MAAM,CAAEG,OAAQ;UACzBlD,IAAI,EAAEA,IAAK;UACXf,IAAI,EAAEA,IAAK;UACX+C,OAAO,EAAEL,MAAO;UAChBF,OAAO,GAAAiB,eAAA,GAAEK,MAAM,aAANA,MAAM,uBAANA,MAAM,CAAEtB,OAAO,cAAAiB,eAAA,cAAAA,eAAA,GAAI,WAAY;UACxCS,KAAK,EAAE;YAAEC,KAAK,EAAE,CAAC,CAAC;YAAEC,WAAW,EAAE;UAAO,CAAE;UAAAxD,QAAA,GAAA8C,gBAAA,GACzCI,MAAM,aAANA,MAAM,uBAANA,MAAM,CAAElD,QAAQ,cAAA8C,gBAAA,cAAAA,gBAAA,GAAII,MAAM,aAANA,MAAM,uBAANA,MAAM,CAAEH;QAAI,CAC3B,CAAC;MAEb,KAAK,WAAW;QACd,oBACE9D,KAAA,CAACN,SAAS;UACRwE,EAAE,EAAC,uBAAuB;UAC1BM,SAAS,EAAC,eAAe;UACzBC,IAAI,EAAG/D,gBAAgB,CAAyB+D,IAAK;UACrDT,QAAQ,EAAEA,QAAS;UACnBrB,OAAO,EAAC,SAAS;UACjBO,OAAO,EAAE,SAAAA,QAACwB,CAAC,EAAK;YACd,IAAI7B,MAAM,EAAE;cACV6B,CAAC,CAACC,cAAc,CAAC,CAAC;cAClB9B,MAAM,CAAC6B,CAAC,CAAC;YACX;UACF,CAAE;UAAA3D,QAAA,GACD+C,IAAI,EACJ5C,IAAI,IAAIuC,wBAAwB,CAACvC,IAAI,CAAC;QAAA,CAC9B,CAAC;MAEhB,KAAK,MAAM;QACT,oBACElB,KAAA;UAAKwE,SAAS,EAAC,oBAAoB;UAAAzD,QAAA,GAChCG,IAAI,IAAIuC,wBAAwB,CAACvC,IAAI,CAAC,eACvCpB,IAAA;YAAAiB,QAAA,EAAO+C;UAAI,CAAO,CAAC;QAAA,CAChB,CAAC;IAEZ;EACF,CAAC;EAED,oBACEhE,IAAA,CAACpB,cAAc;IACbkG,SAAS,EAAExE,WAAY;IACvByE,UAAU,EAAEjE,WAAY;IACxBkE,QAAQ,EAAEtD,WAAW,CAAC,CAAE;IACxBuD,QAAQ,EAAEnD,WAAW,CAAC,CAAE;IACxBoD,MAAM,EAAC,MAAM;IACbC,OAAO,EAAElD,UAAU,CAAC,CAAE;IACtBZ,MAAM,EAAEA,MAAO;IACfE,KAAK,EAAEA,KAAM;IAAAN,QAAA,eACbjB,IAAA,CAACjB,MAAM;MAAAkC,QAAA,eACLf,KAAA;QAAMkF,QAAQ,EAAErE,YAAa;QAACwD,KAAK,EAAE;UAAEc,OAAO,EAAE,MAAM;UAAEC,aAAa,EAAE,QAAQ;UAAEC,SAAS,EAAErD,YAAY,CAAC;QAAE,CAAE;QAAAjB,QAAA,GAC1G,CAACT,QAAQ,IAAIC,0BAA0B,kBACtCP,KAAA,CAACZ,iBAAiB;UAACgE,KAAK,EAAEjD,IAAK;UAACmF,OAAO,EAAEzD,cAAc,CAAC,CAAE;UAAC0D,aAAa,EAAEzD,eAAe,CAAC,CAAE;UAAAf,QAAA,gBAC1Ff,KAAA,CAACT,cAAc;YAAC+F,OAAO,EAAEzD,cAAc,CAAC,CAAE;YAAAd,QAAA,GACvCP,iBAAiB,iBAAIV,IAAA,CAACR,YAAY;cAACgG,OAAO,EAAEzD,cAAc,CAAC;YAAE,CAAE,CAAC,EAChEvB,QAAQ,iBAAIR,IAAA;cAAK0F,GAAG,EAAElF,QAAS;cAACmF,GAAG,EAAC;YAAW,CAAE,CAAC,EAClD,CAACnF,QAAQ,IAAIC,0BAA0B,iBACtCT,IAAA,CAACH,kBAAkB;cACjB+F,MAAM,EAAEnF,0BAA0B,CAACmF,MAAO;cAC1CD,GAAG,EAAElF,0BAA0B,CAACkF,GAAI;cACpCE,SAAS,EAAEpF,0BAA0B,CAACoF,SAAU;cAChDH,GAAG,EAAEjF,0BAA0B,CAACiF;YAAI,CACrC,CACF;UAAA,CACa,CAAC,eACjBxF,KAAA,CAACd,2BAA2B;YAAC0G,cAAc,EAAE,CAAC,CAACjF,UAAW;YAAAI,QAAA,GACvDwC,eAAe,CAAC,CAAC,EACjBN,gBAAgB,CAACrC,WAAW,CAAC;UAAA,CACH,CAAC;QAAA,CACb,CACpB,eACDZ,KAAA,CAACb,iBAAiB;UAAA4B,QAAA,gBAChBf,KAAA,CAAClB,aAAa;YAAAiC,QAAA,GACX,EAAET,QAAQ,IAAIC,0BAA0B,CAAC,IAAIgD,eAAe,CAAC,CAAC,EAC9DlD,KAAK,IAAI4B,UAAU,CAAC5B,KAAK,EAAEF,IAAI,CAAC;UAAA,CACpB,CAAC,EACf,CAACW,OAAO,IAAI,EAAER,QAAQ,IAAIC,0BAA0B,CAAC,kBACpDP,KAAA,CAACf,kBAAkB;YAAA8B,QAAA,GAChBD,OAAO,IAAIsB,WAAW,CAACtB,OAAO,CAAC,EAC/B,EAAER,QAAQ,IAAIC,0BAA0B,CAAC,IAAI0C,gBAAgB,CAACrC,WAAW,CAAC;UAAA,CACzD,CACrB;QAAA,CACgB,CAAC,eAEpBd,IAAA,CAACf,SAAS;UAACqE,KAAK,EAAEjD,IAAK;UAAC0F,SAAS,EAAEzE,eAAgB;UAAC0E,kBAAkB,EAAExE,iBAAkB;UAAAP,QAAA,EACvFA;QAAQ,CACA,CAAC,EAEXC,IAAI,iBAAIlB,IAAA,CAACN,SAAS;UAACwB,IAAI,EAAEA,IAAK;UAACC,KAAK,EAAEA,KAAM;UAACd,IAAI,EAAEA,IAAK;UAACe,IAAI,EAAEA;QAAK,CAAE,CAAC,eAExElB,KAAA,CAAChB,WAAW;UAACoE,KAAK,EAAEjD,IAAK;UAAAY,QAAA,GACtBL,gBAAgB,IAAIiD,gBAAgB,CAACjD,gBAAgB,CAAC,EACtDD,OAAO,aAAPA,OAAO,uBAAPA,OAAO,CAAEsF,GAAG,CAAC,UAACC,CAAC,EAAEC,CAAC;YAAA,IAAAC,WAAA;YAAA,oBACjBpG,IAAA,CAAC7B,MAAM;cAAiBiD,IAAI,EAAE8E,CAAC,CAAC9E,IAAK;cAACgD,EAAE,EAAE8B,CAAC,CAAC9B,EAAG;cAACF,QAAQ,EAAEgC,CAAC,CAAChC,QAAS;cAACI,OAAO,EAAE4B,CAAC,CAAC5B,OAAQ;cAACjE,IAAI,EAAEA,IAAK;cAAC+C,OAAO,EAAE8C,CAAC,CAACnD,MAAO;cAACsB,IAAI,EAAE6B,CAAC,CAAC7B,IAAK;cAACxB,OAAO,EAAEqD,CAAC,CAACrD,OAAQ;cAAA5B,QAAA,GAAAmF,WAAA,GACvJF,CAAC,CAACjF,QAAQ,cAAAmF,WAAA,cAAAA,WAAA,GAAIF,CAAC,CAAClC;YAAI,GADVkC,CAAC,CAAC9B,EAAE,IAAI+B,CAEb,CAAC;UAAA,CACV,CAAC;QAAA,CACS,CAAC;MAAA,CACV;IAAC,CACD;EAAC,CACK,CAAC;AAErB,CAAC;AAAChG,WAAA,CAAAkG,SAAA;EAvSA/F,WAAW,EAAAgG,GAAA,CAAAC,IAAA,CAAAC,UAAA;EAEXvF,QAAQ,EAAAqF,GAAA,CAAAG,IAAA;EAERlG,KAAK,EAAA+F,GAAA,CAAAI,SAAA,EAAAJ,GAAA,CAAAK,MAAA,EAAAL,GAAA,CAAAG,IAAA;EAELjG,QAAQ,EAAA8F,GAAA,CAAAM,GAAA;EAIRlG,iBAAiB,EAAA4F,GAAA,CAAAC,IAAA;EAEjB5F,OAAO,EAAA2F,GAAA,CAAAO,KAAA;EAIP7F,OAAO,EAAAsF,GAAA,CAAAK,MAAA;EAEP9F,UAAU,EAAAyF,GAAA,CAAAQ,IAAA;EACVhG,WAAW,EAAAwF,GAAA,CAAAQ,IAAA,CAAAN,UAAA;EACXzF,YAAY,EAAAuF,GAAA,CAAAQ,IAAA,CAAAN,UAAA;EACZtF,IAAI,EAAAoF,GAAA,CAAAI,SAAA,EAAAJ,GAAA,CAAAK,MAAA,EAAAL,GAAA,CAAAG,IAAA;EACJtF,KAAK,EAAAmF,GAAA,CAAAK,MAAA;EACLvF,IAAI,EAAAkF,GAAA,CAAAG,IAAA;EACJpF,MAAM,EAAAiF,GAAA,CAAAS,MAAA;EACNzF,eAAe,EAAAgF,GAAA,CAAAK,MAAA;EACfpF,KAAK,EAAA+E,GAAA,CAAAK,MAAA;EACLnF,iBAAiB,EAAA8E,GAAA,CAAAC;AAAA;AA8QnB,eAAepG,WAAW","ignoreList":[]}
1
+ {"version":3,"file":"ModalDialog.js","names":["React","Button","IconButton","SystemIcons","COLORS","ComponentL","ComponentM","ComponentTextStyle","ComponentXL","Size","ModalContainer","BackButtonWrapper","CloseButtonWrapper","Column","FlexContainer","ModalBody","ModalFooter","ModalHeaderActions","ModalHeaderActionsWithImage","ModalTitleSection","StyledModalHeader","ModalHoverModifier","ImageOverlay","ImageContainer","ModalNote","TooltipWrapper","HyperLink","ImageWithFallbacks","useTheme","jsx","_jsx","jsxs","_jsxs","ModalDialog","_ref","size","isModalOpen","title","topImage","topImageWithFallbacksProps","topImageGrayscale","buttons","leftFooterAction","backButton","closeAction","submitAction","tooltip","children","note","shouldCloseOnOverlayClick","state","icon","zIndex","contentOverflow","width","hasContentBorders","theme","getMinWidth","Small","Large","Medium","getMaxWidth","getImageHeight","getMarginBottom","getPadding","getMaxHeight","ModalTitle","textStyle","Bold","ModalTootip","delay","XSmall","align","position","withArrow","label","variant","shape","action","Help","color","getColor","ModalCloseButton","onClick","$hasImage","$size","borderRadius","Close","ModalBackButton","ArrowLineLeft","getLeftActionIconElement","cloneElement","LeftFooterAction","_button$variant","_button$children","text","actionType","disabled","button","id","type","loading","style","order","marginRight","className","href","e","preventDefault","showModal","closeModal","minWidth","maxWidth","height","padding","onSubmit","display","flexDirection","maxHeight","$height","$marginBottom","src","alt","loader","fallbacks","$hasBackButton","$overflow","$hasContentBorders","map","b","i","_b$children","propTypes","_pt","bool","isRequired","node","oneOfType","string","any","array","func","number"],"sources":["../../src/Modals/ModalDialog.tsx"],"sourcesContent":["import React from 'react';\r\nimport { Button, IconButton } from '../Button';\r\nimport { SystemIcons } from '../icons';\r\nimport { COLORS, ComponentL, ComponentM, ComponentTextStyle, ComponentXL } from '../styles';\r\nimport { Size } from '../types';\r\nimport ModalContainer from './ModalContainer';\r\nimport {\r\n BackButtonWrapper,\r\n CloseButtonWrapper,\r\n Column,\r\n FlexContainer,\r\n ModalBody,\r\n ModalFooter,\r\n ModalHeaderActions,\r\n ModalHeaderActionsWithImage,\r\n ModalTitleSection,\r\n StyledModalHeader,\r\n ModalHoverModifier,\r\n ImageOverlay,\r\n ImageContainer,\r\n} from './ModalStyles';\r\n\r\nimport { ModalNote } from './ModalNote';\r\nimport { TooltipWrapper } from '../Tooltips';\r\nimport { ButtonAction, LeftFooterAction, LeftFooterButton, LeftFooterHyperlink } from './ModalTypes';\r\nimport { HyperLink, ImageWithFallbacks } from '..';\r\nimport { ImageWithFallbacksProps } from '../Image/ImageWithFallbacks';\r\nimport { useTheme } from 'styled-components';\r\n\r\nexport interface ModalDialogProps {\r\n /** Optional. Size of the modal. Defaults to 'medium' */\r\n size?: Size.Small | Size.Medium | Size.Large;\r\n /** Required. Current state of the modal. */\r\n isModalOpen: boolean;\r\n /** Optional. Content of the ModalDialog. */\r\n children?: React.ReactNode;\r\n /** Optional. Title of the ModalDialog. */\r\n title?: string | React.ReactNode;\r\n /** Optional. Content of the image to be shown in the header of the modal. */\r\n topImage?: any;\r\n /** Optional. Serves same purpose as 'topImage' except adds support for fallback options. Has higher priority than 'topImage'. */\r\n topImageWithFallbacksProps?: ImageWithFallbacksProps;\r\n /** Optional. If flag is set then overlay is added that converts image to grey color. */\r\n topImageGrayscale?: boolean;\r\n /** Optional. Collection of Buttons that will be shown in the footer on the right side of the ModalDialog. */\r\n buttons?: ButtonAction[];\r\n /** Optional. Left footer action that will be shown on the left side of the footer of ModalDialog. Can be a hyperlink, button or a note. */\r\n leftFooterAction?: LeftFooterAction;\r\n /** Optional. Tooltip that will be shown */\r\n tooltip?: string;\r\n /** */\r\n backButton?: () => void;\r\n closeAction: () => void;\r\n submitAction: (event?: React.FormEvent<HTMLFormElement> | undefined) => void;\r\n note?: string | React.ReactNode;\r\n state?: string;\r\n icon?: React.ReactNode;\r\n zIndex?: number;\r\n contentOverflow?: string;\r\n width?: string;\r\n hasContentBorders?: boolean;\r\n shouldCloseOnOverlayClick?: boolean;\r\n}\r\n\r\nexport const ModalDialog: React.FunctionComponent<ModalDialogProps> = ({\r\n size,\r\n isModalOpen,\r\n title,\r\n topImage,\r\n topImageWithFallbacksProps,\r\n topImageGrayscale,\r\n buttons,\r\n leftFooterAction,\r\n backButton,\r\n closeAction,\r\n submitAction,\r\n tooltip,\r\n children,\r\n note,\r\n shouldCloseOnOverlayClick,\r\n state,\r\n icon,\r\n zIndex,\r\n contentOverflow,\r\n width,\r\n hasContentBorders,\r\n}) => {\r\n\r\n const theme = useTheme();\r\n const getMinWidth = () => {\r\n switch (size) {\r\n case Size.Small:\r\n return '320px';\r\n case Size.Large:\r\n return '640px';\r\n case Size.Medium:\r\n default:\r\n return '480px';\r\n }\r\n };\r\n\r\n const getMaxWidth = () => {\r\n switch (size) {\r\n case Size.Small:\r\n return '480px';\r\n case Size.Large:\r\n return '720px';\r\n case Size.Medium:\r\n default:\r\n return '640px';\r\n }\r\n };\r\n\r\n const getImageHeight = () => {\r\n switch (size) {\r\n case Size.Small:\r\n return 160;\r\n case Size.Medium:\r\n return 200;\r\n case Size.Large:\r\n return 240;\r\n default:\r\n return 200;\r\n }\r\n };\r\n\r\n const getMarginBottom = () => {\r\n switch (size) {\r\n case Size.Small:\r\n return '16px';\r\n case Size.Medium:\r\n return '24px';\r\n case Size.Large:\r\n return '32px';\r\n default:\r\n return '24px';\r\n }\r\n };\r\n\r\n const getPadding = () => {\r\n switch (size) {\r\n case Size.Small:\r\n return '16px 16px 8px';\r\n case Size.Medium:\r\n return '24px 24px 20px';\r\n case Size.Large:\r\n return '32px';\r\n default:\r\n return '24px 24px 16px';\r\n }\r\n };\r\n\r\n const getMaxHeight = () => {\r\n switch (size) {\r\n case Size.Small:\r\n return 'calc(100vh - 56px)';\r\n case Size.Medium:\r\n return 'calc(100vh - 76px)';\r\n case Size.Large:\r\n return 'calc(100vh - 96px)';\r\n default:\r\n return 'calc(100vh - 72px)';\r\n }\r\n };\r\n\r\n const ModalTitle = (title: string | React.ReactNode, size?: Size) => {\r\n if (typeof title === 'string') {\r\n switch (size) {\r\n case Size.Small:\r\n return <ComponentM textStyle={ComponentTextStyle.Bold}>{title}</ComponentM>;\r\n case Size.Medium:\r\n return <ComponentL textStyle={ComponentTextStyle.Bold}>{title}</ComponentL>;\r\n case Size.Large:\r\n return <ComponentXL textStyle={ComponentTextStyle.Bold}>{title}</ComponentXL>;\r\n default:\r\n return <ComponentL textStyle={ComponentTextStyle.Bold}>{title}</ComponentL>;\r\n }\r\n } else {\r\n return title;\r\n }\r\n };\r\n\r\n const ModalTootip = (tooltip: string) => {\r\n return (\r\n <ModalHoverModifier>\r\n <TooltipWrapper delay=\"0s\" size={Size.XSmall} align=\"center\" position=\"top\" withArrow={false} label={tooltip}>\r\n <IconButton variant=\"secondary\" shape=\"circular\" action={() => {}}>\r\n <SystemIcons.Help size=\"24px\" color={COLORS.getColor('neutral_600', theme)} />\r\n </IconButton>\r\n </TooltipWrapper>\r\n </ModalHoverModifier>\r\n );\r\n };\r\n\r\n const ModalCloseButton = (onClick: any) => {\r\n return (\r\n <CloseButtonWrapper $hasImage={!!topImage || !!topImageWithFallbacksProps} $size={size}>\r\n <IconButton variant=\"secondary\" shape=\"circular\" action={() => onClick()} borderRadius={48}>\r\n <SystemIcons.Close size=\"24px\" color={COLORS.getColor('black', theme)} />\r\n </IconButton>\r\n </CloseButtonWrapper>\r\n );\r\n };\r\n\r\n const ModalBackButton = () => {\r\n if (backButton) {\r\n return (\r\n <BackButtonWrapper $hasImage={!!topImage || !!topImageWithFallbacksProps} $size={size}>\r\n <IconButton variant=\"secondary\" shape=\"circular\" action={() => backButton()} borderRadius={48}>\r\n <SystemIcons.ArrowLineLeft size=\"24px\" color={COLORS.getColor('black', theme)} />\r\n </IconButton>\r\n </BackButtonWrapper>\r\n );\r\n }\r\n };\r\n\r\n const getLeftActionIconElement = (icon: React.ReactNode) => {\r\n return React.cloneElement(icon as React.ReactElement, { size: size === Size.Small ? '20px' : size === Size.Large ? '28px' : '24px' });\r\n };\r\n\r\n const LeftFooterAction = (leftFooterAction: LeftFooterAction) => {\r\n const { text, actionType, disabled, icon, action } = leftFooterAction;\r\n switch (actionType) {\r\n case 'button':\r\n const button = leftFooterAction as LeftFooterButton;\r\n return (\r\n <Button\r\n id={'left-action-button'}\r\n type={button?.type}\r\n disabled={disabled}\r\n loading={button?.loading}\r\n icon={icon}\r\n size={size}\r\n onClick={action}\r\n variant={button?.variant ?? 'secondary'}\r\n style={{ order: -1, marginRight: 'auto' }}>\r\n {button?.children ?? button?.text}\r\n </Button>\r\n );\r\n case 'hyperlink':\r\n return (\r\n <HyperLink\r\n id=\"left-action-hyperlink\"\r\n className=\"footer-action\"\r\n href={(leftFooterAction as LeftFooterHyperlink).href}\r\n disabled={disabled}\r\n variant=\"default\"\r\n onClick={(e) => {\r\n if (action) {\r\n e.preventDefault();\r\n action(e);\r\n }\r\n }}>\r\n {text}\r\n {icon && getLeftActionIconElement(icon)}\r\n </HyperLink>\r\n );\r\n case 'note':\r\n return (\r\n <div className=\"footer-action note\">\r\n {icon && getLeftActionIconElement(icon)}\r\n <span>{text}</span>\r\n </div>\r\n );\r\n }\r\n };\r\n\r\n return (\r\n <ModalContainer\r\n showModal={isModalOpen}\r\n closeModal={closeAction}\r\n minWidth={getMinWidth()}\r\n shouldCloseOnOverlayClick={shouldCloseOnOverlayClick}\r\n maxWidth={getMaxWidth()}\r\n height=\"auto\"\r\n padding={getPadding()}\r\n zIndex={zIndex}\r\n width={width}>\r\n <Column>\r\n <form onSubmit={submitAction} style={{ display: 'flex', flexDirection: 'column', maxHeight: getMaxHeight() }}>\r\n {(topImage || topImageWithFallbacksProps) && (\r\n <StyledModalHeader $size={size} $height={getImageHeight()} $marginBottom={getMarginBottom()}>\r\n <ImageContainer $height={getImageHeight()}>\r\n {topImageGrayscale && <ImageOverlay $height={getImageHeight()} />}\r\n {topImage && <img src={topImage} alt=\"Modal top\" />}\r\n {!topImage && topImageWithFallbacksProps && (\r\n <ImageWithFallbacks\r\n loader={topImageWithFallbacksProps.loader}\r\n alt={topImageWithFallbacksProps.alt}\r\n fallbacks={topImageWithFallbacksProps.fallbacks}\r\n src={topImageWithFallbacksProps.src}\r\n />\r\n )}\r\n </ImageContainer>\r\n <ModalHeaderActionsWithImage $hasBackButton={!!backButton}>\r\n {ModalBackButton()}\r\n {ModalCloseButton(closeAction)}\r\n </ModalHeaderActionsWithImage>\r\n </StyledModalHeader>\r\n )}\r\n <ModalTitleSection>\r\n <FlexContainer>\r\n {!(topImage || topImageWithFallbacksProps) && ModalBackButton()}\r\n {title && ModalTitle(title, size)}\r\n </FlexContainer>\r\n {(tooltip || !(topImage || topImageWithFallbacksProps)) && (\r\n <ModalHeaderActions>\r\n {tooltip && ModalTootip(tooltip)}\r\n {!(topImage || topImageWithFallbacksProps) && ModalCloseButton(closeAction)}\r\n </ModalHeaderActions>\r\n )}\r\n </ModalTitleSection>\r\n\r\n <ModalBody $size={size} $overflow={contentOverflow} $hasContentBorders={hasContentBorders}>\r\n {children}\r\n </ModalBody>\r\n\r\n {note && <ModalNote note={note} state={state} size={size} icon={icon} />}\r\n\r\n <ModalFooter $size={size}>\r\n {leftFooterAction && LeftFooterAction(leftFooterAction)}\r\n {buttons?.map((b, i) => (\r\n <Button key={b.id || i} icon={b.icon} id={b.id} disabled={b.disabled} loading={b.loading} size={size} onClick={b.action} type={b.type} variant={b.variant}>\r\n {b.children ?? b.text}\r\n </Button>\r\n ))}\r\n </ModalFooter>\r\n </form>\r\n </Column>\r\n </ModalContainer>\r\n );\r\n};\r\n\r\nexport default ModalDialog;\r\n"],"mappings":"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","ignoreList":[]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@laerdal/life-react-components",
3
- "version": "5.0.1",
3
+ "version": "5.0.2-dev.1",
4
4
  "private": false,
5
5
  "author": "Erik Martirosyan <erik.martirosyan@laerdal.com>",
6
6
  "contributors": [],