@laerdal/life-react-components 5.0.0-dev.3 → 5.0.0-dev.4
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.
|
@@ -45,6 +45,7 @@ var ModalContainer = function ModalContainer(props) {
|
|
|
45
45
|
scroll = _React$useState2[0],
|
|
46
46
|
setScroll = _React$useState2[1];
|
|
47
47
|
var preventScroll = function preventScroll(offset) {
|
|
48
|
+
Counter.openInstances++;
|
|
48
49
|
if (!Counter.openInstances && document) {
|
|
49
50
|
setScroll(offset);
|
|
50
51
|
document.body.style.position = 'fixed';
|
|
@@ -52,7 +53,6 @@ var ModalContainer = function ModalContainer(props) {
|
|
|
52
53
|
document.body.style.right = "0px";
|
|
53
54
|
document.body.style.top = "-".concat(offset, "px");
|
|
54
55
|
}
|
|
55
|
-
Counter.openInstances++;
|
|
56
56
|
};
|
|
57
57
|
var resetScroll = function resetScroll() {
|
|
58
58
|
Counter.openInstances--;
|
|
@@ -91,9 +91,6 @@ var ModalContainer = function ModalContainer(props) {
|
|
|
91
91
|
head.appendChild(style);
|
|
92
92
|
style.appendChild(document.createTextNode(modalTransitions));
|
|
93
93
|
}
|
|
94
|
-
if (props.showModal) {
|
|
95
|
-
preventScroll(window.scrollY);
|
|
96
|
-
}
|
|
97
94
|
return function () {
|
|
98
95
|
return resetScroll();
|
|
99
96
|
};
|
|
@@ -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","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\r\n \r\n const preventScroll = (offset: number) => {\r\n if (!Counter.openInstances && 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 Counter.openInstances++;\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 && 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 if (props.showModal) {\r\n preventScroll(window.scrollY);\r\n }\r\n\r\n return () => resetScroll();\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":";;;;;;;;;;;AAAA,IAAAA,KAAA,GAAAC,uBAAA,CAAAC,OAAA;AACA,IAAAC,WAAA,GAAAC,sBAAA,CAAAF,OAAA;AACA,IAAAG,OAAA,GAAAH,OAAA;AAAqC,IAAAI,WAAA,GAAAJ,OAAA;AAAA,SAAAK,yBAAAC,CAAA,6BAAAC,OAAA,mBAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,yBAAAC,CAAA,WAAAA,CAAA,GAAAG,CAAA,GAAAD,CAAA,KAAAF,CAAA;AAAA,SAAAP,wBAAAO,CAAA,EAAAE,CAAA,SAAAA,CAAA,IAAAF,CAAA,IAAAA,CAAA,CAAAI,UAAA,SAAAJ,CAAA,eAAAA,CAAA,gBAAAK,OAAA,CAAAL,CAAA,0BAAAA,CAAA,sBAAAA,CAAA,QAAAG,CAAA,GAAAJ,wBAAA,CAAAG,CAAA,OAAAC,CAAA,IAAAA,CAAA,CAAAG,GAAA,CAAAN,CAAA,UAAAG,CAAA,CAAAI,GAAA,CAAAP,CAAA,OAAAQ,CAAA,KAAAC,SAAA,UAAAC,CAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,CAAA,IAAAd,CAAA,oBAAAc,CAAA,OAAAC,cAAA,CAAAC,IAAA,CAAAhB,CAAA,EAAAc,CAAA,SAAAG,CAAA,GAAAP,CAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAb,CAAA,EAAAc,CAAA,UAAAG,CAAA,KAAAA,CAAA,CAAAV,GAAA,IAAAU,CAAA,CAAAC,GAAA,IAAAP,MAAA,CAAAC,cAAA,CAAAJ,CAAA,EAAAM,CAAA,EAAAG,CAAA,IAAAT,CAAA,CAAAM,CAAA,IAAAd,CAAA,CAAAc,CAAA,YAAAN,CAAA,cAAAR,CAAA,EAAAG,CAAA,IAAAA,CAAA,CAAAe,GAAA,CAAAlB,CAAA,EAAAQ,CAAA,GAAAA,CAAA;AAAA,SAAAW,QAAAnB,CAAA,EAAAE,CAAA,QAAAC,CAAA,GAAAQ,MAAA,CAAAS,IAAA,CAAApB,CAAA,OAAAW,MAAA,CAAAU,qBAAA,QAAAC,CAAA,GAAAX,MAAA,CAAAU,qBAAA,CAAArB,CAAA,GAAAE,CAAA,KAAAoB,CAAA,GAAAA,CAAA,CAAAC,MAAA,WAAArB,CAAA,WAAAS,MAAA,CAAAE,wBAAA,CAAAb,CAAA,EAAAE,CAAA,EAAAsB,UAAA,OAAArB,CAAA,CAAAsB,IAAA,CAAAC,KAAA,CAAAvB,CAAA,EAAAmB,CAAA,YAAAnB,CAAA;AAAA,SAAAwB,cAAA3B,CAAA,aAAAE,CAAA,MAAAA,CAAA,GAAA0B,SAAA,CAAAC,MAAA,EAAA3B,CAAA,UAAAC,CAAA,WAAAyB,SAAA,CAAA1B,CAAA,IAAA0B,SAAA,CAAA1B,CAAA,QAAAA,CAAA,OAAAiB,OAAA,CAAAR,MAAA,CAAAR,CAAA,OAAA2B,OAAA,WAAA5B,CAAA,QAAA6B,gBAAA,aAAA/B,CAAA,EAAAE,CAAA,EAAAC,CAAA,CAAAD,CAAA,SAAAS,MAAA,CAAAqB,yBAAA,GAAArB,MAAA,CAAAsB,gBAAA,CAAAjC,CAAA,EAAAW,MAAA,CAAAqB,yBAAA,CAAA7B,CAAA,KAAAgB,OAAA,CAAAR,MAAA,CAAAR,CAAA,GAAA2B,OAAA,WAAA5B,CAAA,IAAAS,MAAA,CAAAC,cAAA,CAAAZ,CAAA,EAAAE,CAAA,EAAAS,MAAA,CAAAE,wBAAA,CAAAV,CAAA,EAAAD,CAAA,iBAAAF,CAAA;AAIrC,IAAMkC,oBAAoB,GAAG;EAC3BC,OAAO,EAAE;IACPC,GAAG,EAAE,MAAM;IACXC,IAAI,EAAE,MAAM;IACZC,KAAK,EAAE,MAAM;IACbC,MAAM,EAAE,MAAM;IACdC,WAAW,EAAE,MAAM;IACnBC,KAAK,EAAE,OAAO;IACdC,MAAM,EAAE,OAAO;IACfC,YAAY,EAAE,KAAK;IACnBC,SAAS,EAAE,YAAmB;IAC9BC,MAAM,EAAE,CAAC;IACTC,QAAQ,EAAE,MAAM;IAChBC,SAAS,EAAEC,kBAAU,CAACC;EACxB;AACF,CAAC;;AAED;AACA,IAAMC,gBAAgB,2LAAAC,MAAA,CAaTC,iBAAS,CAACC,QAAQ,6OAAAF,MAAA,CAYlBC,iBAAS,CAACE,KAAK,2dAoB3B;AAiBD,IAAMC,OAAO,GAAG;EAAEC,aAAa,EAAG;AAAC,CAAC;AACpC,IAAMC,cAA6C,GAAG,SAAhDA,cAA6CA,CAAIC,KAA0B,EAAK;EAEpF,IAAAC,eAAA,GAA4BnE,KAAK,CAACoE,QAAQ,CAAS,CAAC;IAAAC,gBAAA,OAAAC,eAAA,aAAAH,eAAA;IAA7CI,MAAM,GAAAF,gBAAA;IAAEG,SAAS,GAAAH,gBAAA;EAGxB,IAAMI,aAAa,GAAG,SAAhBA,aAAaA,CAAIC,MAAc,EAAK;IACxC,IAAI,CAACX,OAAO,CAACC,aAAa,IAAIW,QAAQ,EAAE;MACtCH,SAAS,CAACE,MAAM,CAAC;MACjBC,QAAQ,CAACC,IAAI,CAACC,KAAK,CAACC,QAAQ,GAAG,OAAO;MACtCH,QAAQ,CAACC,IAAI,CAACC,KAAK,CAAChC,IAAI,QAAQ;MAChC8B,QAAQ,CAACC,IAAI,CAACC,KAAK,CAAC/B,KAAK,QAAQ;MACjC6B,QAAQ,CAACC,IAAI,CAACC,KAAK,CAACjC,GAAG,OAAAe,MAAA,CAAOe,MAAM,OAAI;IAC1C;IACAX,OAAO,CAACC,aAAa,EAAE;EACzB,CAAC;EAED,IAAMe,WAAW,GAAG,SAAdA,WAAWA,CAAA,EAAS;IACxBhB,OAAO,CAACC,aAAa,EAAE;IACvB,IAAI,CAACD,OAAO,CAACC,aAAa,IAAIW,QAAQ,EAAE;MACtC;MACAA,QAAQ,CAACC,IAAI,CAACC,KAAK,CAACC,QAAQ,GAAG,IAAI;MACnC;MACAH,QAAQ,CAACC,IAAI,CAACC,KAAK,CAAChC,IAAI,GAAG,IAAI;MAC/B;MACA8B,QAAQ,CAACC,IAAI,CAACC,KAAK,CAACjC,GAAG,GAAG,IAAI;MAC9B;MACA+B,QAAQ,CAACC,IAAI,CAACC,KAAK,CAAC/B,KAAK,GAAG,IAAI;MAChCyB,MAAM,IAAIS,MAAM,CAACC,QAAQ,CAAC,CAAC,EAAEV,MAAM,CAAC;MACpCC,SAAS,CAAC,CAAC,CAAC;IACd;EACF,CAAC;EAEDxE,KAAK,CAACkF,SAAS,CAAC,YAAM;IACpBF,MAAM,IAAIR,SAAS,CAACQ,MAAM,CAACG,OAAO,CAAC;EACrC,CAAC,CAAC;EAEFnF,KAAK,CAACkF,SAAS,CAAC,YAAM;IACpB;IACAF,MAAM,IAAI,CAACd,KAAK,CAACkB,SAAS,IAAIL,WAAW,CAAC,CAAC;IAC3C;IACAC,MAAM,IAAId,KAAK,CAACkB,SAAS,IAAIX,aAAa,CAACO,MAAM,CAACG,OAAO,CAAC;EAC5D,CAAC,EAAE,CAACjB,KAAK,CAACkB,SAAS,CAAC,CAAC;EAGrBpF,KAAK,CAACkF,SAAS,CAAC,YAAM;IACpB,IAAIG,sBAAU,CAACC,aAAa,CAACC,OAAO,EAAE;MACpCF,sBAAU,CAACC,aAAa,CAACC,OAAO,CAACC,eAAe,GAAG,iBAAiB;IACtE;;IAEA;IACA,IAAIb,QAAQ,IAAI,CAACA,QAAQ,CAACc,aAAa,CAAC,iCAAiC,CAAC,EAAE;MAC1E,IAAMC,IAAI,GAAGf,QAAQ,CAACe,IAAI,IAAIf,QAAQ,CAACgB,oBAAoB,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;MACtE,IAAMd,KAAK,GAAGF,QAAQ,CAACiB,aAAa,CAAC,OAAO,CAAC;MAC7Cf,KAAK,CAACgB,YAAY,CAAC,sBAAsB,EAAE,QAAQ,CAAC;MACpDH,IAAI,CAACI,WAAW,CAACjB,KAAK,CAAC;MACvBA,KAAK,CAACiB,WAAW,CAACnB,QAAQ,CAACoB,cAAc,CAACrC,gBAAgB,CAAC,CAAC;IAC9D;IAEA,IAAIQ,KAAK,CAACkB,SAAS,EAAE;MACnBX,aAAa,CAACO,MAAM,CAACG,OAAO,CAAC;IAC/B;IAEA,OAAO;MAAA,OAAMJ,WAAW,CAAC,CAAC;IAAA;EAC5B,CAAC,EAAE,EAAE,CAAC;EAEN,IACEiB,EAAE,GAWA9B,KAAK,CAXP8B,EAAE;IACFZ,SAAS,GAUPlB,KAAK,CAVPkB,SAAS;IACTa,UAAU,GASR/B,KAAK,CATP+B,UAAU;IACVC,QAAQ,GAQNhC,KAAK,CARPgC,QAAQ;IAAAC,aAAA,GAQNjC,KAAK,CAPPhB,MAAM;IAANA,MAAM,GAAAiD,aAAA,cAAG,MAAM,GAAAA,aAAA;IAAAC,YAAA,GAOblC,KAAK,CANPjB,KAAK;IAALA,KAAK,GAAAmD,YAAA,cAAG,MAAM,GAAAA,YAAA;IAAAC,eAAA,GAMZnC,KAAK,CALPZ,QAAQ;IAARA,QAAQ,GAAA+C,eAAA,cAAG,SAAS,GAAAA,eAAA;IACpBC,OAAO,GAILpC,KAAK,CAJPoC,OAAO;IAAAC,eAAA,GAILrC,KAAK,CAHPsC,QAAQ;IAARA,QAAQ,GAAAD,eAAA,cAAG,EAAE,GAAAA,eAAA;IAAAE,eAAA,GAGXvC,KAAK,CAFPwC,QAAQ;IAARA,QAAQ,GAAAD,eAAA,cAAG,EAAE,GAAAA,eAAA;IAAAE,aAAA,GAEXzC,KAAK,CADP0C,MAAM;IAANA,MAAM,GAAAD,aAAA,cAAGE,QAAQ,CAACjD,iBAAS,CAACE,KAAK,CAAC,GAAA6C,aAAA;;EAGpC;EACA,IAAMG,WAAW,GAAGC,IAAI,CAACC,GAAG,CAACD,IAAI,CAACE,GAAG,CAACL,MAAM,EAAE,CAAChD,iBAAS,CAACE,KAAK,CAAC,EAAE,CAACF,iBAAS,CAACsD,KAAK,GAAG,CAAC,CAAC;EACtF,IAAMC,mBAAmB,GAAGhG,MAAM,CAACiG,MAAM,CAAAjF,aAAA,KAAKO,oBAAoB,CAACC,OAAO,GAAG;IAC3EO,MAAM,EAANA,MAAM;IACND,KAAK,EAALA,KAAK;IACLqD,OAAO,EAAPA,OAAO;IACPhD,QAAQ,EAARA,QAAQ;IACRkD,QAAQ,EAARA,QAAQ;IACRE,QAAQ,EAARA,QAAQ;IACRE,MAAM,EAAEE;EACV,CAAC,CAAC;EACF,IAAMO,MAAM,GAAG;IAAC1E,OAAO,EAAEwE;EAAmB,CAAC;EAC7C9B,sBAAU,CAACiC,aAAa,CAAC,MAAM,CAAC;EAChC,oBACE,IAAAhH,WAAA,CAAAiH,GAAA,EAACpH,WAAA,WAAU;IAAC6F,EAAE,EAAEA,EAAG;IACPwB,MAAM,EAAEpC,SAAU;IAClBqC,cAAc,EAAE,GAAI;IACpBC,cAAc,EAAE,SAAAA,eAAA;MAAA,OAAMzB,UAAU,CAAC,CAAC;IAAA,CAAC;IACnCpB,KAAK,EAAEwC,MAAO;IAAAnB,QAAA,EACvBA;EAAQ,CACC,CAAC;AAEjB,CAAC;AAAAjC,cAAA,CAAA0D,SAAA;EAnHC3B,EAAE,EAAA4B,UAAA,YAAAC,MAAA;EACFzC,SAAS,EAAAwC,UAAA,YAAAE,IAAA,CAAAC,UAAA;EACT9B,UAAU,EAAA2B,UAAA,YAAAI,IAAA,CAAAD,UAAA;EACV7B,QAAQ,EAAA0B,UAAA,YAAAK,GAAA,CAAAF,UAAA;EACR7E,MAAM,EAAA0E,UAAA,YAAAK,GAAA;EACNhF,KAAK,EAAA2E,UAAA,YAAAK,GAAA;EACL3E,QAAQ,EAAAsE,UAAA,YAAAC,MAAA;EACRvB,OAAO,EAAAsB,UAAA,YAAAC,MAAA;EACPrB,QAAQ,EAAAoB,UAAA,YAAAC,MAAA;EACRnB,QAAQ,EAAAkB,UAAA,YAAAC,MAAA;EACRjB,MAAM,EAAAgB,UAAA,YAAAM;AAAA;AAAA,IAAAC,QAAA,GA2GOlE,cAAc;AAAAmE,OAAA,cAAAD,QAAA","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","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\r\n \r\n const preventScroll = (offset: number) => {\r\n Counter.openInstances++;\r\n if (!Counter.openInstances && 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 && 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 return () => resetScroll();\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":[]}
|
|
@@ -36,6 +36,7 @@ var ModalContainer = function ModalContainer(props) {
|
|
|
36
36
|
scroll = _React$useState2[0],
|
|
37
37
|
setScroll = _React$useState2[1];
|
|
38
38
|
var preventScroll = function preventScroll(offset) {
|
|
39
|
+
Counter.openInstances++;
|
|
39
40
|
if (!Counter.openInstances && document) {
|
|
40
41
|
setScroll(offset);
|
|
41
42
|
document.body.style.position = 'fixed';
|
|
@@ -43,7 +44,6 @@ var ModalContainer = function ModalContainer(props) {
|
|
|
43
44
|
document.body.style.right = "0px";
|
|
44
45
|
document.body.style.top = "-".concat(offset, "px");
|
|
45
46
|
}
|
|
46
|
-
Counter.openInstances++;
|
|
47
47
|
};
|
|
48
48
|
var resetScroll = function resetScroll() {
|
|
49
49
|
Counter.openInstances--;
|
|
@@ -82,9 +82,6 @@ var ModalContainer = function ModalContainer(props) {
|
|
|
82
82
|
head.appendChild(style);
|
|
83
83
|
style.appendChild(document.createTextNode(modalTransitions));
|
|
84
84
|
}
|
|
85
|
-
if (props.showModal) {
|
|
86
|
-
preventScroll(window.scrollY);
|
|
87
|
-
}
|
|
88
85
|
return function () {
|
|
89
86
|
return resetScroll();
|
|
90
87
|
};
|
|
@@ -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","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\r\n \r\n const preventScroll = (offset: number) => {\r\n if (!Counter.openInstances && 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 Counter.openInstances++;\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 && 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 if (props.showModal) {\r\n preventScroll(window.scrollY);\r\n }\r\n\r\n return () => resetScroll();\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","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\r\n \r\n const preventScroll = (offset: number) => {\r\n Counter.openInstances++;\r\n if (!Counter.openInstances && 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 && 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 return () => resetScroll();\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":[]}
|