@semcore/modal 3.0.8 → 3.0.9

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.
package/CHANGELOG.md CHANGED
@@ -2,6 +2,12 @@
2
2
 
3
3
  CHANGELOG.md standards are inspired by [keepachangelog.com](https://keepachangelog.com/en/1.0.0/).
4
4
 
5
+ ## [3.0.9] - 2022-07-22
6
+
7
+ ### Changed
8
+
9
+ - Version patch update due to children dependencies update (`@semcore/utils` [3.34.0 ~> 3.35.0], `@semcore/animation` [1.5.4 ~> 1.5.5], `@semcore/flex-box` [4.5.6 ~> 4.5.7], `@semcore/icon` [2.29.0 ~> 2.29.1]).
10
+
5
11
  ## [3.0.8] - 2022-07-21
6
12
 
7
13
  ### Changed
package/lib/cjs/Modal.js CHANGED
@@ -70,15 +70,15 @@ var style = (
70
70
  /*__reshadow_css_start__*/
71
71
  _core.sstyled.insert(
72
72
  /*__inner_css_start__*/
73
- ".___SWindow_uplm1_gg_{position:relative;border-radius:12px;background:#ffffff;box-sizing:border-box;margin:auto;padding:40px;box-shadow:0 3px 8px rgba(25,27,35,.2)}.___SWindow_uplm1_gg_:focus{outline:none}.___SOverlay_uplm1_gg_{position:fixed;top:0;bottom:0;left:0;right:0;margin:0;display:flex;justify-content:center;align-items:center;padding:40px;background:rgba(25,27,35,.7);overflow:auto;z-index:10005;-webkit-overflow-scrolling:touch}.___SOverlay_uplm1_gg_ .___SOverlay_uplm1_gg_{background:rgba(25,27,35,.4)}.___SClose_uplm1_gg_{display:inline-flex;position:absolute;right:0;top:0;padding:12px;color:#a9abb6;cursor:pointer;z-index:1;border:none;background:none;outline:none}.___SClose_uplm1_gg_:hover{color:#8a8e9b}.___SClose_uplm1_gg_.__keyboardFocused_uplm1_gg_{box-shadow:0 0 0 3px rgba(0, 143, 248, 0.2)}@media (max-width:767px){.___SWindow_uplm1_gg_{min-width:60%}.___SOverlay_uplm1_gg_{padding:12px}}"
73
+ ".___SWindow_145u9_gg_{position:relative;border-radius:12px;background:#ffffff;box-sizing:border-box;margin:auto;padding:40px;box-shadow:0 3px 8px rgba(25,27,35,.2)}.___SWindow_145u9_gg_:focus{outline:none}.___SOverlay_145u9_gg_{position:fixed;top:0;bottom:0;left:0;right:0;margin:0;display:flex;justify-content:center;align-items:center;padding:40px;background:rgba(25,27,35,.7);overflow:auto;z-index:10005;-webkit-overflow-scrolling:touch}.___SOverlay_145u9_gg_ .___SOverlay_145u9_gg_{background:rgba(25,27,35,.4)}.___SClose_145u9_gg_{display:inline-flex;position:absolute;right:0;top:0;padding:12px;color:#a9abb6;cursor:pointer;z-index:1;border:none;background:none;outline:none}.___SClose_145u9_gg_:hover{color:#8a8e9b}.___SClose_145u9_gg_.__keyboardFocused_145u9_gg_{box-shadow:0 0 0 3px rgba(0, 143, 248, 0.2)}@media (max-width:767px){.___SWindow_145u9_gg_{min-width:60%}.___SOverlay_145u9_gg_{padding:12px}}"
74
74
  /*__inner_css_end__*/
75
- , "uplm1_gg_")
75
+ , "145u9_gg_")
76
76
  /*__reshadow_css_end__*/
77
77
  , {
78
- "__SWindow": "___SWindow_uplm1_gg_",
79
- "__SOverlay": "___SOverlay_uplm1_gg_",
80
- "__SClose": "___SClose_uplm1_gg_",
81
- "_keyboardFocused": "__keyboardFocused_uplm1_gg_"
78
+ "__SWindow": "___SWindow_145u9_gg_",
79
+ "__SOverlay": "___SOverlay_145u9_gg_",
80
+ "__SClose": "___SClose_145u9_gg_",
81
+ "_keyboardFocused": "__keyboardFocused_145u9_gg_"
82
82
  });
83
83
 
84
84
  var ModalRoot = /*#__PURE__*/function (_Component) {
@@ -165,7 +165,7 @@ var ModalRoot = /*#__PURE__*/function (_Component) {
165
165
  closable: true
166
166
  });
167
167
 
168
- var FocusLockWrapper = _react["default"].forwardRef(function (_ref8, ref) {
168
+ var FocusLockWrapper = /*#__PURE__*/_react["default"].forwardRef(function (_ref8, ref) {
169
169
  var tag = _ref8.tag,
170
170
  other = (0, _objectWithoutProperties2["default"])(_ref8, _excluded);
171
171
  return /*#__PURE__*/_react["default"].createElement(_reactFocusLock["default"], (0, _extends2["default"])({
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/Modal.jsx"],"names":["ModalRoot","e","key","stopPropagation","asProps","duration","visible","onOutsideClick","handleOutsideClick","closable","onKeyDown","handleKeyDown","onClick","handleIconCloseClick","Children","disablePortal","advanceMode","Modal","Overlay","displayName","Window","Component","style","FocusLockWrapper","React","forwardRef","ref","tag","other","props","SWindow","styles","windowRef","Box","SOverlay","FadeInOut","overlayRef","Close","SClose","defaultProps","children","enhance"],"mappings":"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","sourcesContent":["import React, { useRef } from 'react';\nimport FocusLock from 'react-focus-lock';\nimport { FadeInOut } from '@semcore/animation';\nimport createComponent, { Component, sstyled, Root } from '@semcore/core';\nimport Portal, { PortalProvider } from '@semcore/portal';\nimport { Box } from '@semcore/flex-box';\nimport OutsideClick from '@semcore/outside-click';\nimport CloseIcon from '@semcore/icon/Close/l';\nimport fire from '@semcore/utils/lib/fire';\nimport usePreventScroll from '@semcore/utils/lib/use/usePreventScroll';\nimport { isAdvanceMode } from '@semcore/utils/lib/findComponent';\nimport keyboardFocusEnhance from '@semcore/utils/lib/enhances/keyboardFocusEnhance';\nimport style from './style/modal.shadow.css';\n\nclass ModalRoot extends Component {\n static displayName = 'Modal';\n static style = style;\n static defaultProps = {\n duration: 200,\n closable: true,\n };\n\n handleKeyDown = (e) => {\n if (e.key === 'Escape') {\n e.stopPropagation();\n fire(this, 'onClose', 'onEscape', e);\n }\n };\n\n handleIconCloseClick = (e) => {\n fire(this, 'onClose', 'onCloseClick', e);\n };\n\n handleOutsideClick = (e) => {\n fire(this, 'onClose', 'onOutsideClick', e);\n };\n\n getOverlayProps() {\n const { duration, visible } = this.asProps;\n return {\n duration,\n visible,\n onOutsideClick: this.handleOutsideClick,\n };\n }\n\n getWindowProps() {\n const { visible, closable } = this.asProps;\n return {\n visible,\n closable,\n onKeyDown: this.handleKeyDown,\n };\n }\n\n getCloseProps() {\n return {\n onClick: this.handleIconCloseClick,\n };\n }\n\n render() {\n const { Children, disablePortal } = this.asProps;\n\n const advanceMode = isAdvanceMode(Children, [\n Modal.Overlay.displayName,\n Modal.Window.displayName,\n ]);\n\n return (\n <Portal disablePortal={disablePortal}>\n {advanceMode ? (\n <Children />\n ) : (\n <Modal.Overlay>\n <Root render={Modal.Window} />\n </Modal.Overlay>\n )}\n </Portal>\n );\n }\n}\n\nconst FocusLockWrapper = React.forwardRef(function ({ tag, ...other }, ref) {\n return <FocusLock ref={ref} as={tag} lockProps={other} {...other} />;\n});\n\nfunction Window(props) {\n const SWindow = Root;\n const { Children, styles, visible, closable } = props;\n const windowRef = useRef(null);\n\n if (!visible) return null;\n\n return sstyled(styles)(\n <SWindow\n render={FocusLockWrapper}\n tag={Box}\n ref={windowRef}\n returnFocus={true}\n tabIndex={-1}\n autoFocus={true}\n role=\"dialog\"\n aria-modal={true}\n aria-label=\"Modal window\"\n >\n <PortalProvider value={windowRef}>\n {closable && <Modal.Close />}\n <Children />\n </PortalProvider>\n </SWindow>,\n );\n}\n\nfunction Overlay(props) {\n const SOverlay = Root;\n const { Children, styles, onOutsideClick, visible } = props;\n const overlayRef = useRef(null);\n usePreventScroll(visible);\n\n return sstyled(styles)(\n <SOverlay render={FadeInOut} ref={overlayRef}>\n <OutsideClick root={overlayRef} onOutsideClick={onOutsideClick}>\n <Children />\n </OutsideClick>\n </SOverlay>,\n );\n}\n\nfunction Close(props) {\n const SClose = Root;\n return sstyled(props.styles)(\n <SClose render={Box} tag=\"button\" tabIndex={0} aria-label=\"Close\" />,\n );\n}\n\nClose.defaultProps = {\n children: <CloseIcon title=\"Close\" />,\n};\n\nClose.enhance = [keyboardFocusEnhance()];\n\nconst Modal = createComponent(ModalRoot, {\n Window,\n Overlay,\n Close,\n});\n\nexport default Modal;\n"],"file":"Modal.js"}
1
+ {"version":3,"file":"Modal.js","names":["ModalRoot","e","key","stopPropagation","fire","asProps","duration","visible","onOutsideClick","handleOutsideClick","closable","onKeyDown","handleKeyDown","onClick","handleIconCloseClick","Children","disablePortal","advanceMode","isAdvanceMode","Modal","Overlay","displayName","Window","Component","style","FocusLockWrapper","React","forwardRef","ref","tag","other","props","SWindow","styles","windowRef","useRef","sstyled","Box","SOverlay","FadeInOut","overlayRef","usePreventScroll","Close","SClose","defaultProps","children","enhance","keyboardFocusEnhance","createComponent"],"sources":["../../src/Modal.jsx"],"sourcesContent":["import React, { useRef } from 'react';\nimport FocusLock from 'react-focus-lock';\nimport { FadeInOut } from '@semcore/animation';\nimport createComponent, { Component, sstyled, Root } from '@semcore/core';\nimport Portal, { PortalProvider } from '@semcore/portal';\nimport { Box } from '@semcore/flex-box';\nimport OutsideClick from '@semcore/outside-click';\nimport CloseIcon from '@semcore/icon/Close/l';\nimport fire from '@semcore/utils/lib/fire';\nimport usePreventScroll from '@semcore/utils/lib/use/usePreventScroll';\nimport { isAdvanceMode } from '@semcore/utils/lib/findComponent';\nimport keyboardFocusEnhance from '@semcore/utils/lib/enhances/keyboardFocusEnhance';\nimport style from './style/modal.shadow.css';\n\nclass ModalRoot extends Component {\n static displayName = 'Modal';\n static style = style;\n static defaultProps = {\n duration: 200,\n closable: true,\n };\n\n handleKeyDown = (e) => {\n if (e.key === 'Escape') {\n e.stopPropagation();\n fire(this, 'onClose', 'onEscape', e);\n }\n };\n\n handleIconCloseClick = (e) => {\n fire(this, 'onClose', 'onCloseClick', e);\n };\n\n handleOutsideClick = (e) => {\n fire(this, 'onClose', 'onOutsideClick', e);\n };\n\n getOverlayProps() {\n const { duration, visible } = this.asProps;\n return {\n duration,\n visible,\n onOutsideClick: this.handleOutsideClick,\n };\n }\n\n getWindowProps() {\n const { visible, closable } = this.asProps;\n return {\n visible,\n closable,\n onKeyDown: this.handleKeyDown,\n };\n }\n\n getCloseProps() {\n return {\n onClick: this.handleIconCloseClick,\n };\n }\n\n render() {\n const { Children, disablePortal } = this.asProps;\n\n const advanceMode = isAdvanceMode(Children, [\n Modal.Overlay.displayName,\n Modal.Window.displayName,\n ]);\n\n return (\n <Portal disablePortal={disablePortal}>\n {advanceMode ? (\n <Children />\n ) : (\n <Modal.Overlay>\n <Root render={Modal.Window} />\n </Modal.Overlay>\n )}\n </Portal>\n );\n }\n}\n\nconst FocusLockWrapper = React.forwardRef(function ({ tag, ...other }, ref) {\n return <FocusLock ref={ref} as={tag} lockProps={other} {...other} />;\n});\n\nfunction Window(props) {\n const SWindow = Root;\n const { Children, styles, visible, closable } = props;\n const windowRef = useRef(null);\n\n if (!visible) return null;\n\n return sstyled(styles)(\n <SWindow\n render={FocusLockWrapper}\n tag={Box}\n ref={windowRef}\n returnFocus={true}\n tabIndex={-1}\n autoFocus={true}\n role=\"dialog\"\n aria-modal={true}\n aria-label=\"Modal window\"\n >\n <PortalProvider value={windowRef}>\n {closable && <Modal.Close />}\n <Children />\n </PortalProvider>\n </SWindow>,\n );\n}\n\nfunction Overlay(props) {\n const SOverlay = Root;\n const { Children, styles, onOutsideClick, visible } = props;\n const overlayRef = useRef(null);\n usePreventScroll(visible);\n\n return sstyled(styles)(\n <SOverlay render={FadeInOut} ref={overlayRef}>\n <OutsideClick root={overlayRef} onOutsideClick={onOutsideClick}>\n <Children />\n </OutsideClick>\n </SOverlay>,\n );\n}\n\nfunction Close(props) {\n const SClose = Root;\n return sstyled(props.styles)(\n <SClose render={Box} tag=\"button\" tabIndex={0} aria-label=\"Close\" />,\n );\n}\n\nClose.defaultProps = {\n children: <CloseIcon title=\"Close\" />,\n};\n\nClose.enhance = [keyboardFocusEnhance()];\n\nconst Modal = createComponent(ModalRoot, {\n Window,\n Overlay,\n Close,\n});\n\nexport default Modal;\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/index.js"],"names":[],"mappings":";;;;;;;;;;;;;;AAAA","sourcesContent":["export { default } from './Modal';\n"],"file":"index.js"}
1
+ {"version":3,"file":"index.js","names":[],"sources":["../../src/index.js"],"sourcesContent":["export { default } from './Modal';\n"],"mappings":";;;;;;;;;;;;;;AAAA"}
package/lib/es6/Modal.js CHANGED
@@ -40,15 +40,15 @@ var style = (
40
40
  /*__reshadow_css_start__*/
41
41
  _sstyled.insert(
42
42
  /*__inner_css_start__*/
43
- ".___SWindow_uplm1_gg_{position:relative;border-radius:12px;background:#ffffff;box-sizing:border-box;margin:auto;padding:40px;box-shadow:0 3px 8px rgba(25,27,35,.2)}.___SWindow_uplm1_gg_:focus{outline:none}.___SOverlay_uplm1_gg_{position:fixed;top:0;bottom:0;left:0;right:0;margin:0;display:flex;justify-content:center;align-items:center;padding:40px;background:rgba(25,27,35,.7);overflow:auto;z-index:10005;-webkit-overflow-scrolling:touch}.___SOverlay_uplm1_gg_ .___SOverlay_uplm1_gg_{background:rgba(25,27,35,.4)}.___SClose_uplm1_gg_{display:inline-flex;position:absolute;right:0;top:0;padding:12px;color:#a9abb6;cursor:pointer;z-index:1;border:none;background:none;outline:none}.___SClose_uplm1_gg_:hover{color:#8a8e9b}.___SClose_uplm1_gg_.__keyboardFocused_uplm1_gg_{box-shadow:0 0 0 3px rgba(0, 143, 248, 0.2)}@media (max-width:767px){.___SWindow_uplm1_gg_{min-width:60%}.___SOverlay_uplm1_gg_{padding:12px}}"
43
+ ".___SWindow_145u9_gg_{position:relative;border-radius:12px;background:#ffffff;box-sizing:border-box;margin:auto;padding:40px;box-shadow:0 3px 8px rgba(25,27,35,.2)}.___SWindow_145u9_gg_:focus{outline:none}.___SOverlay_145u9_gg_{position:fixed;top:0;bottom:0;left:0;right:0;margin:0;display:flex;justify-content:center;align-items:center;padding:40px;background:rgba(25,27,35,.7);overflow:auto;z-index:10005;-webkit-overflow-scrolling:touch}.___SOverlay_145u9_gg_ .___SOverlay_145u9_gg_{background:rgba(25,27,35,.4)}.___SClose_145u9_gg_{display:inline-flex;position:absolute;right:0;top:0;padding:12px;color:#a9abb6;cursor:pointer;z-index:1;border:none;background:none;outline:none}.___SClose_145u9_gg_:hover{color:#8a8e9b}.___SClose_145u9_gg_.__keyboardFocused_145u9_gg_{box-shadow:0 0 0 3px rgba(0, 143, 248, 0.2)}@media (max-width:767px){.___SWindow_145u9_gg_{min-width:60%}.___SOverlay_145u9_gg_{padding:12px}}"
44
44
  /*__inner_css_end__*/
45
- , "uplm1_gg_")
45
+ , "145u9_gg_")
46
46
  /*__reshadow_css_end__*/
47
47
  , {
48
- "__SWindow": "___SWindow_uplm1_gg_",
49
- "__SOverlay": "___SOverlay_uplm1_gg_",
50
- "__SClose": "___SClose_uplm1_gg_",
51
- "_keyboardFocused": "__keyboardFocused_uplm1_gg_"
48
+ "__SWindow": "___SWindow_145u9_gg_",
49
+ "__SOverlay": "___SOverlay_145u9_gg_",
50
+ "__SClose": "___SClose_145u9_gg_",
51
+ "_keyboardFocused": "__keyboardFocused_145u9_gg_"
52
52
  });
53
53
 
54
54
  var ModalRoot = /*#__PURE__*/function (_Component) {
@@ -142,7 +142,7 @@ _defineProperty(ModalRoot, "defaultProps", {
142
142
  closable: true
143
143
  });
144
144
 
145
- var FocusLockWrapper = React.forwardRef(function (_ref8, ref) {
145
+ var FocusLockWrapper = /*#__PURE__*/React.forwardRef(function (_ref8, ref) {
146
146
  var tag = _ref8.tag,
147
147
  other = _objectWithoutProperties(_ref8, _excluded);
148
148
 
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/Modal.jsx"],"names":["React","useRef","FocusLock","FadeInOut","createComponent","Component","sstyled","Root","Portal","PortalProvider","Box","OutsideClick","CloseIcon","fire","usePreventScroll","isAdvanceMode","keyboardFocusEnhance","ModalRoot","e","key","stopPropagation","asProps","duration","visible","onOutsideClick","handleOutsideClick","closable","onKeyDown","handleKeyDown","onClick","handleIconCloseClick","Children","disablePortal","advanceMode","Modal","Overlay","displayName","Window","style","FocusLockWrapper","forwardRef","ref","tag","other","props","SWindow","styles","windowRef","SOverlay","overlayRef","Close","SClose","defaultProps","children","enhance"],"mappings":"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","sourcesContent":["import React, { useRef } from 'react';\nimport FocusLock from 'react-focus-lock';\nimport { FadeInOut } from '@semcore/animation';\nimport createComponent, { Component, sstyled, Root } from '@semcore/core';\nimport Portal, { PortalProvider } from '@semcore/portal';\nimport { Box } from '@semcore/flex-box';\nimport OutsideClick from '@semcore/outside-click';\nimport CloseIcon from '@semcore/icon/Close/l';\nimport fire from '@semcore/utils/lib/fire';\nimport usePreventScroll from '@semcore/utils/lib/use/usePreventScroll';\nimport { isAdvanceMode } from '@semcore/utils/lib/findComponent';\nimport keyboardFocusEnhance from '@semcore/utils/lib/enhances/keyboardFocusEnhance';\nimport style from './style/modal.shadow.css';\n\nclass ModalRoot extends Component {\n static displayName = 'Modal';\n static style = style;\n static defaultProps = {\n duration: 200,\n closable: true,\n };\n\n handleKeyDown = (e) => {\n if (e.key === 'Escape') {\n e.stopPropagation();\n fire(this, 'onClose', 'onEscape', e);\n }\n };\n\n handleIconCloseClick = (e) => {\n fire(this, 'onClose', 'onCloseClick', e);\n };\n\n handleOutsideClick = (e) => {\n fire(this, 'onClose', 'onOutsideClick', e);\n };\n\n getOverlayProps() {\n const { duration, visible } = this.asProps;\n return {\n duration,\n visible,\n onOutsideClick: this.handleOutsideClick,\n };\n }\n\n getWindowProps() {\n const { visible, closable } = this.asProps;\n return {\n visible,\n closable,\n onKeyDown: this.handleKeyDown,\n };\n }\n\n getCloseProps() {\n return {\n onClick: this.handleIconCloseClick,\n };\n }\n\n render() {\n const { Children, disablePortal } = this.asProps;\n\n const advanceMode = isAdvanceMode(Children, [\n Modal.Overlay.displayName,\n Modal.Window.displayName,\n ]);\n\n return (\n <Portal disablePortal={disablePortal}>\n {advanceMode ? (\n <Children />\n ) : (\n <Modal.Overlay>\n <Root render={Modal.Window} />\n </Modal.Overlay>\n )}\n </Portal>\n );\n }\n}\n\nconst FocusLockWrapper = React.forwardRef(function ({ tag, ...other }, ref) {\n return <FocusLock ref={ref} as={tag} lockProps={other} {...other} />;\n});\n\nfunction Window(props) {\n const SWindow = Root;\n const { Children, styles, visible, closable } = props;\n const windowRef = useRef(null);\n\n if (!visible) return null;\n\n return sstyled(styles)(\n <SWindow\n render={FocusLockWrapper}\n tag={Box}\n ref={windowRef}\n returnFocus={true}\n tabIndex={-1}\n autoFocus={true}\n role=\"dialog\"\n aria-modal={true}\n aria-label=\"Modal window\"\n >\n <PortalProvider value={windowRef}>\n {closable && <Modal.Close />}\n <Children />\n </PortalProvider>\n </SWindow>,\n );\n}\n\nfunction Overlay(props) {\n const SOverlay = Root;\n const { Children, styles, onOutsideClick, visible } = props;\n const overlayRef = useRef(null);\n usePreventScroll(visible);\n\n return sstyled(styles)(\n <SOverlay render={FadeInOut} ref={overlayRef}>\n <OutsideClick root={overlayRef} onOutsideClick={onOutsideClick}>\n <Children />\n </OutsideClick>\n </SOverlay>,\n );\n}\n\nfunction Close(props) {\n const SClose = Root;\n return sstyled(props.styles)(\n <SClose render={Box} tag=\"button\" tabIndex={0} aria-label=\"Close\" />,\n );\n}\n\nClose.defaultProps = {\n children: <CloseIcon title=\"Close\" />,\n};\n\nClose.enhance = [keyboardFocusEnhance()];\n\nconst Modal = createComponent(ModalRoot, {\n Window,\n Overlay,\n Close,\n});\n\nexport default Modal;\n"],"file":"Modal.js"}
1
+ {"version":3,"file":"Modal.js","names":["React","useRef","FocusLock","FadeInOut","createComponent","Component","sstyled","Root","Portal","PortalProvider","Box","OutsideClick","CloseIcon","fire","usePreventScroll","isAdvanceMode","keyboardFocusEnhance","ModalRoot","e","key","stopPropagation","asProps","duration","visible","onOutsideClick","handleOutsideClick","closable","onKeyDown","handleKeyDown","onClick","handleIconCloseClick","Children","disablePortal","advanceMode","Modal","Overlay","displayName","Window","style","FocusLockWrapper","forwardRef","ref","tag","other","props","SWindow","styles","windowRef","SOverlay","overlayRef","Close","SClose","defaultProps","children","enhance"],"sources":["../../src/Modal.jsx"],"sourcesContent":["import React, { useRef } from 'react';\nimport FocusLock from 'react-focus-lock';\nimport { FadeInOut } from '@semcore/animation';\nimport createComponent, { Component, sstyled, Root } from '@semcore/core';\nimport Portal, { PortalProvider } from '@semcore/portal';\nimport { Box } from '@semcore/flex-box';\nimport OutsideClick from '@semcore/outside-click';\nimport CloseIcon from '@semcore/icon/Close/l';\nimport fire from '@semcore/utils/lib/fire';\nimport usePreventScroll from '@semcore/utils/lib/use/usePreventScroll';\nimport { isAdvanceMode } from '@semcore/utils/lib/findComponent';\nimport keyboardFocusEnhance from '@semcore/utils/lib/enhances/keyboardFocusEnhance';\nimport style from './style/modal.shadow.css';\n\nclass ModalRoot extends Component {\n static displayName = 'Modal';\n static style = style;\n static defaultProps = {\n duration: 200,\n closable: true,\n };\n\n handleKeyDown = (e) => {\n if (e.key === 'Escape') {\n e.stopPropagation();\n fire(this, 'onClose', 'onEscape', e);\n }\n };\n\n handleIconCloseClick = (e) => {\n fire(this, 'onClose', 'onCloseClick', e);\n };\n\n handleOutsideClick = (e) => {\n fire(this, 'onClose', 'onOutsideClick', e);\n };\n\n getOverlayProps() {\n const { duration, visible } = this.asProps;\n return {\n duration,\n visible,\n onOutsideClick: this.handleOutsideClick,\n };\n }\n\n getWindowProps() {\n const { visible, closable } = this.asProps;\n return {\n visible,\n closable,\n onKeyDown: this.handleKeyDown,\n };\n }\n\n getCloseProps() {\n return {\n onClick: this.handleIconCloseClick,\n };\n }\n\n render() {\n const { Children, disablePortal } = this.asProps;\n\n const advanceMode = isAdvanceMode(Children, [\n Modal.Overlay.displayName,\n Modal.Window.displayName,\n ]);\n\n return (\n <Portal disablePortal={disablePortal}>\n {advanceMode ? (\n <Children />\n ) : (\n <Modal.Overlay>\n <Root render={Modal.Window} />\n </Modal.Overlay>\n )}\n </Portal>\n );\n }\n}\n\nconst FocusLockWrapper = React.forwardRef(function ({ tag, ...other }, ref) {\n return <FocusLock ref={ref} as={tag} lockProps={other} {...other} />;\n});\n\nfunction Window(props) {\n const SWindow = Root;\n const { Children, styles, visible, closable } = props;\n const windowRef = useRef(null);\n\n if (!visible) return null;\n\n return sstyled(styles)(\n <SWindow\n render={FocusLockWrapper}\n tag={Box}\n ref={windowRef}\n returnFocus={true}\n tabIndex={-1}\n autoFocus={true}\n role=\"dialog\"\n aria-modal={true}\n aria-label=\"Modal window\"\n >\n <PortalProvider value={windowRef}>\n {closable && <Modal.Close />}\n <Children />\n </PortalProvider>\n </SWindow>,\n );\n}\n\nfunction Overlay(props) {\n const SOverlay = Root;\n const { Children, styles, onOutsideClick, visible } = props;\n const overlayRef = useRef(null);\n usePreventScroll(visible);\n\n return sstyled(styles)(\n <SOverlay render={FadeInOut} ref={overlayRef}>\n <OutsideClick root={overlayRef} onOutsideClick={onOutsideClick}>\n <Children />\n </OutsideClick>\n </SOverlay>,\n );\n}\n\nfunction Close(props) {\n const SClose = Root;\n return sstyled(props.styles)(\n <SClose render={Box} tag=\"button\" tabIndex={0} aria-label=\"Close\" />,\n );\n}\n\nClose.defaultProps = {\n children: <CloseIcon title=\"Close\" />,\n};\n\nClose.enhance = [keyboardFocusEnhance()];\n\nconst Modal = createComponent(ModalRoot, {\n Window,\n Overlay,\n Close,\n});\n\nexport default Modal;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAAA,OAAOA,KAAP,IAAgBC,MAAhB,QAA8B,OAA9B;AACA,OAAOC,SAAP,MAAsB,kBAAtB;AACA,SAASC,SAAT,QAA0B,oBAA1B;AACA,OAAOC,eAAP,IAA0BC,SAA1B,EAAqCC,OAArC,EAA8CC,IAA9C,QAA0D,eAA1D;AACA,OAAOC,MAAP,IAAiBC,cAAjB,QAAuC,iBAAvC;AACA,SAASC,GAAT,QAAoB,mBAApB;AACA,OAAOC,YAAP,MAAyB,wBAAzB;AACA,OAAOC,SAAP,MAAsB,uBAAtB;AACA,OAAOC,IAAP,MAAiB,yBAAjB;AACA,OAAOC,gBAAP,MAA6B,yCAA7B;AACA,SAASC,aAAT,QAA8B,kCAA9B;AACA,OAAOC,oBAAP,MAAiC,kDAAjC;;;;;;;;;;;;;;;;;;IAGMC,S;;;;;;;;;;;;;;;;oEAQY,UAACC,CAAD,EAAO;MACrB,IAAIA,CAAC,CAACC,GAAF,KAAU,QAAd,EAAwB;QACtBD,CAAC,CAACE,eAAF;QACAP,IAAI,gCAAO,SAAP,EAAkB,UAAlB,EAA8BK,CAA9B,CAAJ;MACD;IACF,C;;2EAEsB,UAACA,CAAD,EAAO;MAC5BL,IAAI,gCAAO,SAAP,EAAkB,cAAlB,EAAkCK,CAAlC,CAAJ;IACD,C;;yEAEoB,UAACA,CAAD,EAAO;MAC1BL,IAAI,gCAAO,SAAP,EAAkB,gBAAlB,EAAoCK,CAApC,CAAJ;IACD,C;;;;;;;WAED,2BAAkB;MAChB,oBAA8B,KAAKG,OAAnC;MAAA,IAAQC,QAAR,iBAAQA,QAAR;MAAA,IAAkBC,OAAlB,iBAAkBA,OAAlB;MACA,OAAO;QACLD,QAAQ,EAARA,QADK;QAELC,OAAO,EAAPA,OAFK;QAGLC,cAAc,EAAE,KAAKC;MAHhB,CAAP;IAKD;;;WAED,0BAAiB;MACf,qBAA8B,KAAKJ,OAAnC;MAAA,IAAQE,OAAR,kBAAQA,OAAR;MAAA,IAAiBG,QAAjB,kBAAiBA,QAAjB;MACA,OAAO;QACLH,OAAO,EAAPA,OADK;QAELG,QAAQ,EAARA,QAFK;QAGLC,SAAS,EAAE,KAAKC;MAHX,CAAP;IAKD;;;WAED,yBAAgB;MACd,OAAO;QACLC,OAAO,EAAE,KAAKC;MADT,CAAP;IAGD;;;WAED,kBAAS;MAAA;MACP,qBAAoC,KAAKT,OAAzC;MAAA,IAAQU,QAAR,kBAAQA,QAAR;MAAA,IAAkBC,aAAlB,kBAAkBA,aAAlB;MAEA,IAAMC,WAAW,GAAGlB,aAAa,CAACgB,QAAD,EAAW,CAC1CG,KAAK,CAACC,OAAN,CAAcC,WAD4B,EAE1CF,KAAK,CAACG,MAAN,CAAaD,WAF6B,CAAX,CAAjC;MAKA,oBACE,oBAAC,MAAD;QAAQ,aAAa,EAAEJ;MAAvB,GACGC,WAAW,gBACV,oBAAC,QAAD,OADU,gBAGV,oBAAC,KAAD,CAAO,OAAP,qBACE,oBAAcC,KAAK,CAACG,MAApB,yBADF,CAJJ,CADF;IAWD;;;;EAlEqBhC,S;;gBAAlBY,S,iBACiB,O;;gBADjBA,S,WAEWqB,K;;gBAFXrB,S,kBAGkB;EACpBK,QAAQ,EAAE,GADU;EAEpBI,QAAQ,EAAE;AAFU,C;;AAkExB,IAAMa,gBAAgB,gBAAGvC,KAAK,CAACwC,UAAN,CAAiB,iBAA6BC,GAA7B,EAAkC;EAAA,IAAtBC,GAAsB,SAAtBA,GAAsB;EAAA,IAAdC,KAAc;;EAC1E,oBAAO,oBAAC,SAAD;IAAW,GAAG,EAAEF,GAAhB;IAAqB,EAAE,EAAEC,GAAzB;IAA8B,SAAS,EAAEC;EAAzC,GAAoDA,KAApD,EAAP;AACD,CAFwB,CAAzB;;AAIA,SAASN,MAAT,CAAgBO,KAAhB,EAAuB;EAAA;EAAA;;EACrB,IAAMC,OAAO,GAQDN,gBARZ;EACA,IAAQR,QAAR,GAAgDa,KAAhD,CAAQb,QAAR;EAAA,IAAkBe,MAAlB,GAAgDF,KAAhD,CAAkBE,MAAlB;EAAA,IAA0BvB,OAA1B,GAAgDqB,KAAhD,CAA0BrB,OAA1B;EAAA,IAAmCG,QAAnC,GAAgDkB,KAAhD,CAAmClB,QAAnC;EACA,IAAMqB,SAAS,GAAG9C,MAAM,CAAC,IAAD,CAAxB;EAEA,IAAI,CAACsB,OAAL,EAAc,OAAO,IAAP;EAEd,eAAOjB,OAAO,CAACwC,MAAD,CAAd,eACE,oBAAC,OAAD;IAAA,OAEOpC,GAFP;IAAA,OAGOqC,SAHP;IAAA,eAIe,IAJf;IAAA,YAKY,CAAC,CALb;IAAA,aAMa,IANb;IAAA,QAOO,QAPP;IAAA,cAQc,IARd;IAAA,cASa;EATb,0BAWE,oBAAC,cAAD;IAAA,SAAuBA;EAAvB,IACGrB,QAAQ,iBAAI,oBAAC,KAAD,CAAO,KAAP,OADf,eAEE,oBAAC,QAAD,2BAFF,CAXF,CADF;AAkBD;;AAED,SAASS,OAAT,CAAiBS,KAAjB,EAAwB;EAAA;EAAA;;EACtB,IAAMI,QAAQ,GAMM7C,SANpB;EACA,IAAQ4B,QAAR,GAAsDa,KAAtD,CAAQb,QAAR;EAAA,IAAkBe,MAAlB,GAAsDF,KAAtD,CAAkBE,MAAlB;EAAA,IAA0BtB,cAA1B,GAAsDoB,KAAtD,CAA0BpB,cAA1B;EAAA,IAA0CD,OAA1C,GAAsDqB,KAAtD,CAA0CrB,OAA1C;EACA,IAAM0B,UAAU,GAAGhD,MAAM,CAAC,IAAD,CAAzB;EACAa,gBAAgB,CAACS,OAAD,CAAhB;EAEA,eAAOjB,OAAO,CAACwC,MAAD,CAAd,eACE,oBAAC,QAAD;IAAA,OAAkCG;EAAlC,0BACE,oBAAC,YAAD;IAAA,QAAoBA,UAApB;IAAA,kBAAgDzB;EAAhD,iBACE,oBAAC,QAAD,2BADF,CADF,CADF;AAOD;;AAED,SAAS0B,KAAT,CAAeN,KAAf,EAAsB;EAAA;EAAA;;EACpB,IAAMO,MAAM,GAEMzC,GAFlB;EACA,eAAOJ,OAAO,CAACsC,KAAK,CAACE,MAAP,CAAd,eACE,oBAAC,MAAD;IAAA,OAAyB,QAAzB;IAAA,YAA4C,CAA5C;IAAA,cAA0D;EAA1D,YADF;AAGD;;AAEDI,KAAK,CAACE,YAAN,GAAqB;EACnBC,QAAQ,eAAE,oBAAC,SAAD;IAAW,KAAK,EAAC;EAAjB;AADS,CAArB;AAIAH,KAAK,CAACI,OAAN,GAAgB,CAACtC,oBAAoB,EAArB,CAAhB;AAEA,IAAMkB,KAAK,GAAG9B,eAAe,CAACa,SAAD,EAAY;EACvCoB,MAAM,EAANA,MADuC;EAEvCF,OAAO,EAAPA,OAFuC;EAGvCe,KAAK,EAALA;AAHuC,CAAZ,CAA7B;AAMA,eAAehB,KAAf"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/index.js"],"names":["default"],"mappings":"AAAA,SAASA,OAAT,QAAwB,SAAxB","sourcesContent":["export { default } from './Modal';\n"],"file":"index.js"}
1
+ {"version":3,"file":"index.js","names":["default"],"sources":["../../src/index.js"],"sourcesContent":["export { default } from './Modal';\n"],"mappings":"AAAA,SAASA,OAAT,QAAwB,SAAxB"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@semcore/modal",
3
3
  "description": "SEMRush Modal Component",
4
- "version": "3.0.8",
4
+ "version": "3.0.9",
5
5
  "main": "lib/cjs/index.js",
6
6
  "module": "lib/es6/index.js",
7
7
  "typings": "lib/types/index.d.ts",