@semcore/modal 4.42.1 → 4.43.0-prerelease.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +6 -0
- package/lib/cjs/Modal.js +20 -16
- package/lib/cjs/Modal.js.map +1 -1
- package/lib/cjs/style/modal.shadow.css +6 -25
- package/lib/es6/Modal.js +20 -16
- package/lib/es6/Modal.js.map +1 -1
- package/lib/es6/style/modal.shadow.css +6 -25
- package/package.json +9 -9
package/CHANGELOG.md
CHANGED
package/lib/cjs/Modal.js
CHANGED
|
@@ -18,7 +18,7 @@ var _core = _interopRequireWildcard(require("@semcore/core"));
|
|
|
18
18
|
var _react = _interopRequireDefault(require("react"));
|
|
19
19
|
var _animation = require("@semcore/animation");
|
|
20
20
|
var _portal = _interopRequireWildcard(require("@semcore/portal"));
|
|
21
|
-
var
|
|
21
|
+
var _button = _interopRequireDefault(require("@semcore/button"));
|
|
22
22
|
var _outsideClick = _interopRequireDefault(require("@semcore/outside-click"));
|
|
23
23
|
var _l = _interopRequireDefault(require("@semcore/icon/Close/l"));
|
|
24
24
|
var _fire = _interopRequireDefault(require("@semcore/utils/lib/fire"));
|
|
@@ -35,15 +35,14 @@ var _ThemeProvider = require("@semcore/utils/lib/ThemeProvider");
|
|
|
35
35
|
var _useColorResolver = require("@semcore/utils/lib/use/useColorResolver");
|
|
36
36
|
var _zIndexStacking = require("@semcore/utils/lib/zIndexStacking");
|
|
37
37
|
/*__reshadow-styles__:"./style/modal.shadow.css"*/
|
|
38
|
-
var style = ( /*__reshadow_css_start__*/_index.sstyled.insert( /*__inner_css_start__*/".
|
|
39
|
-
"__SWindow": "
|
|
40
|
-
"_ghost": "
|
|
41
|
-
"__SClose": "
|
|
42
|
-
"
|
|
43
|
-
"
|
|
44
|
-
"
|
|
45
|
-
"
|
|
46
|
-
"--color": "--color_t159k"
|
|
38
|
+
var style = ( /*__reshadow_css_start__*/_index.sstyled.insert( /*__inner_css_start__*/".___SWindow_cc9lm_gg_{position:relative;border-radius:var(--intergalactic-modal-rounded, 12px);background:var(--intergalactic-bg-primary-neutral, #ffffff);box-sizing:border-box;margin:auto;padding:var(--intergalactic-spacing-10x, 40px);box-shadow:var(--intergalactic-box-shadow-modal, 0px 3px 8px 0px rgba(25, 27, 35, 0.2));color:var(--intergalactic-text-primary, #191b23)}.___SWindow_cc9lm_gg_:focus{outline:0}.___SWindow_cc9lm_gg_ .___STitle_cc9lm_gg_{color:var(--intergalactic-text-primary, #191b23);font-size:var(--intergalactic-fs-500, 24px);line-height:var(--intergalactic-lh-500, 117%);font-weight:var(--intergalactic-semi-bold, 600);margin-bottom:var(--intergalactic-spacing-2x, 8px);margin-right:var(--intergalactic-spacing-4x, 16px)}.___SWindow_cc9lm_gg_ .___STitle_cc9lm_gg_.__color_cc9lm_gg_{color:var(--color_cc9lm)}.___SWindow_cc9lm_gg_.__ghost_cc9lm_gg_{background:0 0;padding:0;box-shadow:none}.___SOverlay_cc9lm_gg_{position:fixed;top:0;bottom:0;left:0;right:0;margin:0;display:flex;justify-content:center;align-items:center;padding:var(--intergalactic-spacing-10x, 40px);background:var(--intergalactic-overlay-primary, rgba(25, 27, 35, 0.7));overflow:auto;-webkit-overflow-scrolling:touch}.___SOverlay_cc9lm_gg_ .___SOverlay_cc9lm_gg_{background:var(--intergalactic-overlay-secondary, rgba(25, 27, 35, 0.4))}.___SClose_cc9lm_gg_{display:inline-flex;position:absolute;right:var(--intergalactic-spacing-2x, 8px);top:var(--intergalactic-spacing-2x, 8px)}.___SClose_cc9lm_gg_.__ghost_cc9lm_gg_{right:0;top:0}@media (max-width:767px){.___SWindow_cc9lm_gg_{min-width:60%}.___SOverlay_cc9lm_gg_{padding:var(--intergalactic-spacing-3x, 12px)}}" /*__inner_css_end__*/, "cc9lm_gg_") /*__reshadow_css_end__*/, {
|
|
39
|
+
"__SWindow": "___SWindow_cc9lm_gg_",
|
|
40
|
+
"_ghost": "__ghost_cc9lm_gg_",
|
|
41
|
+
"__SClose": "___SClose_cc9lm_gg_",
|
|
42
|
+
"__SOverlay": "___SOverlay_cc9lm_gg_",
|
|
43
|
+
"__STitle": "___STitle_cc9lm_gg_",
|
|
44
|
+
"_color": "__color_cc9lm_gg_",
|
|
45
|
+
"--color": "--color_cc9lm"
|
|
47
46
|
});
|
|
48
47
|
var ModalRoot = /*#__PURE__*/function (_Component) {
|
|
49
48
|
(0, _inherits2["default"])(ModalRoot, _Component);
|
|
@@ -216,17 +215,22 @@ function Overlay(props) {
|
|
|
216
215
|
function Close(props) {
|
|
217
216
|
var _ref4 = arguments[0],
|
|
218
217
|
_ref8;
|
|
219
|
-
var SClose =
|
|
218
|
+
var SClose = _button["default"];
|
|
220
219
|
var Children = props.Children,
|
|
221
220
|
hasChildren = props.children,
|
|
222
|
-
getI18nText = props.getI18nText
|
|
221
|
+
getI18nText = props.getI18nText,
|
|
222
|
+
ghost = props.ghost;
|
|
223
223
|
return _ref8 = (0, _core.sstyled)(props.styles), /*#__PURE__*/_react["default"].createElement(SClose, _ref8.cn("SClose", (0, _objectSpread2["default"])({}, (0, _core.assignProps)({
|
|
224
|
-
"
|
|
225
|
-
"
|
|
224
|
+
"use": 'tertiary',
|
|
225
|
+
"size": 'l',
|
|
226
|
+
"theme": ghost ? 'invert' : 'muted',
|
|
226
227
|
"aria-label": getI18nText('close')
|
|
227
|
-
}, _ref4))), hasChildren ? /*#__PURE__*/_react["default"].createElement(Children, _ref8.cn("Children", {})) : /*#__PURE__*/_react["default"].createElement(
|
|
228
|
+
}, _ref4))), hasChildren ? /*#__PURE__*/_react["default"].createElement(Children, _ref8.cn("Children", {})) : /*#__PURE__*/_react["default"].createElement(_button["default"].Addon, {
|
|
229
|
+
ml: '7px',
|
|
230
|
+
mr: '7px'
|
|
231
|
+
}, /*#__PURE__*/_react["default"].createElement(_l["default"], _ref8.cn("CloseIcon", {
|
|
228
232
|
"title": getI18nText('close')
|
|
229
|
-
})));
|
|
233
|
+
}))));
|
|
230
234
|
}
|
|
231
235
|
Close.enhance = [(0, _keyboardFocusEnhance["default"])()];
|
|
232
236
|
function Title(props) {
|
package/lib/cjs/Modal.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Modal.js","names":["_core","_interopRequireWildcard","require","_react","_interopRequireDefault","_animation","_portal","_flexBox","_outsideClick","_l","_fire","_usePreventScroll","_findComponent","_keyboardFocusEnhance","_intergalacticDynamicLocales","_i18nEnhance","_typography","_uniqueID","_useCssVariable","_useFocusLock","_ThemeProvider","_useColorResolver","_zIndexStacking","style","_index","sstyled","insert","ModalRoot","_Component","_inherits2","_super","_createSuper2","_this","_classCallCheck2","_len","arguments","length","args","Array","_key","call","apply","concat","_defineProperty2","_assertThisInitialized2","hasTitle","e","key","stopPropagation","fire","_createClass2","value","getOverlayProps","_this$asProps","asProps","duration","visible","animationsDisabled","disablePreventScroll","onOutsideClick","handleOutsideClick","getWindowProps","_this$asProps2","closable","getI18nText","uid","state","onKeyDown","handleKeyDown","undefined","getCloseProps","_this$asProps3","ghost","onClick","handleIconCloseClick","getTitleProps","_this2","setHasTitle","setState","id","render","_ref","_this$asProps4","Children","disablePortal","forcedAdvancedMode","ignorePortalsStacking","advancedMode","isAdvanceMode","Modal","Overlay","displayName","Window","createElement","assignProps","Component","i18nEnhance","localizedMessages","uniqueIDEnhancement","cssVariableEnhance","variable","fallback","map","Number","parseInt","prop","i18n","locale","props","_ref2","arguments[0]","_ref6","SWindow","Slide","styles","windowRef","React","useRef","useFocusLock","cn","_objectSpread2","ZIndexStackingContextProvider","PortalProvider","Close","_ref3","_ref7","SOverlay","FadeInOut","overlayRef","usePreventScroll","useContextTheme","zIndex","useZIndexStacking","_ref4","_ref8","SClose","Box","hasChildren","children","enhance","keyboardFocusEnhance","Title","_ref5","_ref9","color","STitle","Text","resolveColor","useColorResolver","useEffect","createComponent","_default","exports"],"sources":["../../src/Modal.jsx"],"sourcesContent":["import React from 'react';\nimport { FadeInOut, Slide } 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';\nimport { localizedMessages } from './translations/__intergalactic-dynamic-locales';\nimport i18nEnhance from '@semcore/utils/lib/enhances/i18nEnhance';\nimport { Text } from '@semcore/typography';\nimport uniqueIDEnhancement from '@semcore/utils/lib/uniqueID';\nimport { cssVariableEnhance } from '@semcore/utils/lib/useCssVariable';\nimport { useFocusLock } from '@semcore/utils/lib/use/useFocusLock';\nimport { useContextTheme } from '@semcore/utils/lib/ThemeProvider';\nimport { useColorResolver } from '@semcore/utils/lib/use/useColorResolver';\nimport {\n ZIndexStackingContextProvider,\n useZIndexStacking,\n} from '@semcore/utils/lib/zIndexStacking';\n\nclass ModalRoot extends Component {\n static displayName = 'Modal';\n static style = style;\n static enhance = [\n i18nEnhance(localizedMessages),\n uniqueIDEnhancement(),\n cssVariableEnhance({\n variable: '--intergalactic-duration-modal',\n fallback: '200',\n map: Number.parseInt,\n prop: 'duration',\n }),\n ];\n static defaultProps = {\n closable: true,\n i18n: localizedMessages,\n locale: 'en',\n disablePreventScroll: false,\n };\n state = { hasTitle: false };\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, animationsDisabled, disablePreventScroll } = this.asProps;\n return {\n duration,\n visible,\n onOutsideClick: this.handleOutsideClick,\n animationsDisabled,\n disablePreventScroll,\n };\n }\n\n getWindowProps() {\n const { visible, closable, getI18nText, uid, duration, animationsDisabled } = this.asProps;\n const { hasTitle } = this.state;\n return {\n visible,\n closable,\n onKeyDown: this.handleKeyDown,\n 'aria-label': hasTitle ? undefined : getI18nText('title'),\n 'aria-labelledby': hasTitle ? `igc-${uid}-title` : undefined,\n duration,\n animationsDisabled,\n };\n }\n\n getCloseProps() {\n const { getI18nText, ghost } = this.asProps;\n\n return {\n onClick: this.handleIconCloseClick,\n getI18nText,\n ghost,\n };\n }\n\n getTitleProps() {\n const { uid } = this.asProps;\n const setHasTitle = () => this.setState({ hasTitle: true });\n\n return {\n id: `igc-${uid}-title`,\n setHasTitle,\n };\n }\n\n render() {\n const { Children, disablePortal, forcedAdvancedMode, ignorePortalsStacking } = this.asProps;\n\n const advancedMode =\n forcedAdvancedMode ||\n isAdvanceMode(Children, [Modal.Overlay.displayName, Modal.Window.displayName]);\n\n return (\n <Portal disablePortal={disablePortal} ignorePortalsStacking={ignorePortalsStacking}>\n {advancedMode ? (\n <Children />\n ) : (\n <Modal.Overlay>\n <Root render={Modal.Window} />\n </Modal.Overlay>\n )}\n </Portal>\n );\n }\n}\n\nfunction Window(props) {\n const SWindow = Root;\n const { Children, styles, visible, closable, duration } = props;\n const windowRef = React.useRef(null);\n\n useFocusLock(windowRef, true, 'auto', !visible, true);\n\n return sstyled(styles)(\n <SWindow\n render={Slide}\n initialAnimation={true}\n slideOrigin='top'\n visible={visible}\n role='dialog'\n aria-modal={true}\n duration={duration}\n ref={windowRef}\n >\n <ZIndexStackingContextProvider designToken='z-index-modal'>\n <PortalProvider value={windowRef}>\n {closable && <Modal.Close />}\n <Children />\n </PortalProvider>\n </ZIndexStackingContextProvider>\n </SWindow>,\n );\n}\n\nfunction Overlay(props) {\n const SOverlay = Root;\n const { Children, styles, onOutsideClick, visible } = props;\n const overlayRef = React.useRef(null);\n usePreventScroll(visible, props.disablePreventScroll);\n useContextTheme(overlayRef, visible);\n const zIndex = useZIndexStacking('z-index-modal');\n\n return sstyled(styles)(\n <SOverlay render={FadeInOut} ref={overlayRef} zIndex={zIndex}>\n <OutsideClick root={overlayRef} onOutsideClick={onOutsideClick}>\n <Children />\n </OutsideClick>\n </SOverlay>,\n );\n}\n\nfunction Close(props) {\n const SClose = Root;\n const { Children, children: hasChildren, getI18nText } = props;\n return sstyled(props.styles)(\n <SClose render={Box} tag='button' tabIndex={0} aria-label={getI18nText('close')}>\n {hasChildren ? <Children /> : <CloseIcon title={getI18nText('close')} />}\n </SClose>,\n );\n}\n\nClose.enhance = [keyboardFocusEnhance()];\n\nfunction Title(props) {\n const { setHasTitle, styles, color } = props;\n const STitle = Root;\n\n const resolveColor = useColorResolver();\n React.useEffect(() => setHasTitle());\n\n return sstyled(styles)(<STitle render={Text} tag='h2' use:color={resolveColor(color)} />);\n}\n\nconst Modal = createComponent(ModalRoot, {\n Window,\n Overlay,\n Close,\n Title,\n});\n\nexport default Modal;\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Modal.js","names":["_core","_interopRequireWildcard","require","_react","_interopRequireDefault","_animation","_portal","_button","_outsideClick","_l","_fire","_usePreventScroll","_findComponent","_keyboardFocusEnhance","_intergalacticDynamicLocales","_i18nEnhance","_typography","_uniqueID","_useCssVariable","_useFocusLock","_ThemeProvider","_useColorResolver","_zIndexStacking","style","_index","sstyled","insert","ModalRoot","_Component","_inherits2","_super","_createSuper2","_this","_classCallCheck2","_len","arguments","length","args","Array","_key","call","apply","concat","_defineProperty2","_assertThisInitialized2","hasTitle","e","key","stopPropagation","fire","_createClass2","value","getOverlayProps","_this$asProps","asProps","duration","visible","animationsDisabled","disablePreventScroll","onOutsideClick","handleOutsideClick","getWindowProps","_this$asProps2","closable","getI18nText","uid","state","onKeyDown","handleKeyDown","undefined","getCloseProps","_this$asProps3","ghost","onClick","handleIconCloseClick","getTitleProps","_this2","setHasTitle","setState","id","render","_ref","_this$asProps4","Children","disablePortal","forcedAdvancedMode","ignorePortalsStacking","advancedMode","isAdvanceMode","Modal","Overlay","displayName","Window","createElement","assignProps","Component","i18nEnhance","localizedMessages","uniqueIDEnhancement","cssVariableEnhance","variable","fallback","map","Number","parseInt","prop","i18n","locale","props","_ref2","arguments[0]","_ref6","SWindow","Slide","styles","windowRef","React","useRef","useFocusLock","cn","_objectSpread2","ZIndexStackingContextProvider","PortalProvider","Close","_ref3","_ref7","SOverlay","FadeInOut","overlayRef","usePreventScroll","useContextTheme","zIndex","useZIndexStacking","_ref4","_ref8","SClose","Button","hasChildren","children","Addon","ml","mr","enhance","keyboardFocusEnhance","Title","_ref5","_ref9","color","STitle","Text","resolveColor","useColorResolver","useEffect","createComponent","_default","exports"],"sources":["../../src/Modal.jsx"],"sourcesContent":["import React from 'react';\nimport { FadeInOut, Slide } from '@semcore/animation';\nimport createComponent, { Component, sstyled, Root } from '@semcore/core';\nimport Portal, { PortalProvider } from '@semcore/portal';\nimport Button from '@semcore/button';\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';\nimport { localizedMessages } from './translations/__intergalactic-dynamic-locales';\nimport i18nEnhance from '@semcore/utils/lib/enhances/i18nEnhance';\nimport { Text } from '@semcore/typography';\nimport uniqueIDEnhancement from '@semcore/utils/lib/uniqueID';\nimport { cssVariableEnhance } from '@semcore/utils/lib/useCssVariable';\nimport { useFocusLock } from '@semcore/utils/lib/use/useFocusLock';\nimport { useContextTheme } from '@semcore/utils/lib/ThemeProvider';\nimport { useColorResolver } from '@semcore/utils/lib/use/useColorResolver';\nimport {\n ZIndexStackingContextProvider,\n useZIndexStacking,\n} from '@semcore/utils/lib/zIndexStacking';\n\nclass ModalRoot extends Component {\n static displayName = 'Modal';\n static style = style;\n static enhance = [\n i18nEnhance(localizedMessages),\n uniqueIDEnhancement(),\n cssVariableEnhance({\n variable: '--intergalactic-duration-modal',\n fallback: '200',\n map: Number.parseInt,\n prop: 'duration',\n }),\n ];\n static defaultProps = {\n closable: true,\n i18n: localizedMessages,\n locale: 'en',\n disablePreventScroll: false,\n };\n state = { hasTitle: false };\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, animationsDisabled, disablePreventScroll } = this.asProps;\n return {\n duration,\n visible,\n onOutsideClick: this.handleOutsideClick,\n animationsDisabled,\n disablePreventScroll,\n };\n }\n\n getWindowProps() {\n const { visible, closable, getI18nText, uid, duration, animationsDisabled } = this.asProps;\n const { hasTitle } = this.state;\n return {\n visible,\n closable,\n onKeyDown: this.handleKeyDown,\n 'aria-label': hasTitle ? undefined : getI18nText('title'),\n 'aria-labelledby': hasTitle ? `igc-${uid}-title` : undefined,\n duration,\n animationsDisabled,\n };\n }\n\n getCloseProps() {\n const { getI18nText, ghost } = this.asProps;\n\n return {\n onClick: this.handleIconCloseClick,\n getI18nText,\n ghost,\n };\n }\n\n getTitleProps() {\n const { uid } = this.asProps;\n const setHasTitle = () => this.setState({ hasTitle: true });\n\n return {\n id: `igc-${uid}-title`,\n setHasTitle,\n };\n }\n\n render() {\n const { Children, disablePortal, forcedAdvancedMode, ignorePortalsStacking } = this.asProps;\n\n const advancedMode =\n forcedAdvancedMode ||\n isAdvanceMode(Children, [Modal.Overlay.displayName, Modal.Window.displayName]);\n\n return (\n <Portal disablePortal={disablePortal} ignorePortalsStacking={ignorePortalsStacking}>\n {advancedMode ? (\n <Children />\n ) : (\n <Modal.Overlay>\n <Root render={Modal.Window} />\n </Modal.Overlay>\n )}\n </Portal>\n );\n }\n}\n\nfunction Window(props) {\n const SWindow = Root;\n const { Children, styles, visible, closable, duration } = props;\n const windowRef = React.useRef(null);\n\n useFocusLock(windowRef, true, 'auto', !visible, true);\n\n return sstyled(styles)(\n <SWindow\n render={Slide}\n initialAnimation={true}\n slideOrigin='top'\n visible={visible}\n role='dialog'\n aria-modal={true}\n duration={duration}\n ref={windowRef}\n >\n <ZIndexStackingContextProvider designToken='z-index-modal'>\n <PortalProvider value={windowRef}>\n {closable && <Modal.Close />}\n <Children />\n </PortalProvider>\n </ZIndexStackingContextProvider>\n </SWindow>,\n );\n}\n\nfunction Overlay(props) {\n const SOverlay = Root;\n const { Children, styles, onOutsideClick, visible } = props;\n const overlayRef = React.useRef(null);\n usePreventScroll(visible, props.disablePreventScroll);\n useContextTheme(overlayRef, visible);\n const zIndex = useZIndexStacking('z-index-modal');\n\n return sstyled(styles)(\n <SOverlay render={FadeInOut} ref={overlayRef} zIndex={zIndex}>\n <OutsideClick root={overlayRef} onOutsideClick={onOutsideClick}>\n <Children />\n </OutsideClick>\n </SOverlay>,\n );\n}\n\nfunction Close(props) {\n const SClose = Root;\n const { Children, children: hasChildren, getI18nText, ghost } = props;\n return sstyled(props.styles)(\n <SClose\n render={Button}\n use='tertiary'\n size='l'\n theme={ghost ? 'invert' : 'muted'}\n aria-label={getI18nText('close')}\n >\n {hasChildren ? (\n <Children />\n ) : (\n <Button.Addon ml={'7px'} mr={'7px'}>\n <CloseIcon title={getI18nText('close')} />\n </Button.Addon>\n )}\n </SClose>,\n );\n}\n\nClose.enhance = [keyboardFocusEnhance()];\n\nfunction Title(props) {\n const { setHasTitle, styles, color } = props;\n const STitle = Root;\n\n const resolveColor = useColorResolver();\n React.useEffect(() => setHasTitle());\n\n return sstyled(styles)(<STitle render={Text} tag='h2' use:color={resolveColor(color)} />);\n}\n\nconst Modal = createComponent(ModalRoot, {\n Window,\n Overlay,\n Close,\n Title,\n});\n\nexport default Modal;\n"],"mappings":"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"}
|
|
@@ -18,6 +18,7 @@ SWindow {
|
|
|
18
18
|
line-height: var(--intergalactic-lh-500, 117%);
|
|
19
19
|
font-weight: var(--intergalactic-semi-bold, 600);
|
|
20
20
|
margin-bottom: var(--intergalactic-spacing-2x, 8px);
|
|
21
|
+
margin-right: var(--intergalactic-spacing-4x, 16px);
|
|
21
22
|
}
|
|
22
23
|
|
|
23
24
|
STitle[color] {
|
|
@@ -54,32 +55,12 @@ SOverlay {
|
|
|
54
55
|
SClose {
|
|
55
56
|
display: inline-flex;
|
|
56
57
|
position: absolute;
|
|
57
|
-
right:
|
|
58
|
-
top:
|
|
59
|
-
padding: var(--intergalactic-spacing-3x, 12px);
|
|
60
|
-
color: var(--intergalactic-icon-secondary-neutral, #a9abb6);
|
|
61
|
-
cursor: pointer;
|
|
62
|
-
z-index: 1;
|
|
63
|
-
border: none;
|
|
64
|
-
background: none;
|
|
65
|
-
outline: none;
|
|
66
|
-
|
|
67
|
-
&:hover {
|
|
68
|
-
color: var(--intergalactic-icon-secondary-neutral-hover-active, #878992);
|
|
69
|
-
}
|
|
58
|
+
right: var(--intergalactic-spacing-2x, 8px);
|
|
59
|
+
top: var(--intergalactic-spacing-2x, 8px);
|
|
70
60
|
}
|
|
71
|
-
|
|
72
61
|
SClose[ghost] {
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
&:hover {
|
|
77
|
-
background-color: var(--intergalactic-control-tertiary-invert-active, rgba(255, 255, 255, 0.3));
|
|
78
|
-
}
|
|
79
|
-
}
|
|
80
|
-
|
|
81
|
-
SClose[keyboardFocused] {
|
|
82
|
-
box-shadow: var(--intergalactic-keyboard-focus, 0px 0px 0px 3px rgba(0, 143, 248, 0.5));
|
|
62
|
+
right: 0;
|
|
63
|
+
top: 0;
|
|
83
64
|
}
|
|
84
65
|
|
|
85
66
|
@media (max-width: 767px) {
|
|
@@ -90,4 +71,4 @@ SClose[keyboardFocused] {
|
|
|
90
71
|
SOverlay {
|
|
91
72
|
padding: var(--intergalactic-spacing-3x, 12px);
|
|
92
73
|
}
|
|
93
|
-
}
|
|
74
|
+
}
|
package/lib/es6/Modal.js
CHANGED
|
@@ -15,7 +15,7 @@ import React from 'react';
|
|
|
15
15
|
import { FadeInOut, Slide } from '@semcore/animation';
|
|
16
16
|
import createComponent, { Component, sstyled, Root } from '@semcore/core';
|
|
17
17
|
import Portal, { PortalProvider } from '@semcore/portal';
|
|
18
|
-
import
|
|
18
|
+
import Button from '@semcore/button';
|
|
19
19
|
import OutsideClick from '@semcore/outside-click';
|
|
20
20
|
import CloseIcon from '@semcore/icon/Close/l';
|
|
21
21
|
import fire from '@semcore/utils/lib/fire';
|
|
@@ -23,15 +23,14 @@ import usePreventScroll from '@semcore/utils/lib/use/usePreventScroll';
|
|
|
23
23
|
import { isAdvanceMode } from '@semcore/utils/lib/findComponent';
|
|
24
24
|
import keyboardFocusEnhance from '@semcore/utils/lib/enhances/keyboardFocusEnhance';
|
|
25
25
|
/*__reshadow-styles__:"./style/modal.shadow.css"*/
|
|
26
|
-
var style = ( /*__reshadow_css_start__*/_sstyled.insert( /*__inner_css_start__*/".
|
|
27
|
-
"__SWindow": "
|
|
28
|
-
"_ghost": "
|
|
29
|
-
"__SClose": "
|
|
30
|
-
"
|
|
31
|
-
"
|
|
32
|
-
"
|
|
33
|
-
"
|
|
34
|
-
"--color": "--color_t159k"
|
|
26
|
+
var style = ( /*__reshadow_css_start__*/_sstyled.insert( /*__inner_css_start__*/".___SWindow_cc9lm_gg_{position:relative;border-radius:var(--intergalactic-modal-rounded, 12px);background:var(--intergalactic-bg-primary-neutral, #ffffff);box-sizing:border-box;margin:auto;padding:var(--intergalactic-spacing-10x, 40px);box-shadow:var(--intergalactic-box-shadow-modal, 0px 3px 8px 0px rgba(25, 27, 35, 0.2));color:var(--intergalactic-text-primary, #191b23)}.___SWindow_cc9lm_gg_:focus{outline:0}.___SWindow_cc9lm_gg_ .___STitle_cc9lm_gg_{color:var(--intergalactic-text-primary, #191b23);font-size:var(--intergalactic-fs-500, 24px);line-height:var(--intergalactic-lh-500, 117%);font-weight:var(--intergalactic-semi-bold, 600);margin-bottom:var(--intergalactic-spacing-2x, 8px);margin-right:var(--intergalactic-spacing-4x, 16px)}.___SWindow_cc9lm_gg_ .___STitle_cc9lm_gg_.__color_cc9lm_gg_{color:var(--color_cc9lm)}.___SWindow_cc9lm_gg_.__ghost_cc9lm_gg_{background:0 0;padding:0;box-shadow:none}.___SOverlay_cc9lm_gg_{position:fixed;top:0;bottom:0;left:0;right:0;margin:0;display:flex;justify-content:center;align-items:center;padding:var(--intergalactic-spacing-10x, 40px);background:var(--intergalactic-overlay-primary, rgba(25, 27, 35, 0.7));overflow:auto;-webkit-overflow-scrolling:touch}.___SOverlay_cc9lm_gg_ .___SOverlay_cc9lm_gg_{background:var(--intergalactic-overlay-secondary, rgba(25, 27, 35, 0.4))}.___SClose_cc9lm_gg_{display:inline-flex;position:absolute;right:var(--intergalactic-spacing-2x, 8px);top:var(--intergalactic-spacing-2x, 8px)}.___SClose_cc9lm_gg_.__ghost_cc9lm_gg_{right:0;top:0}@media (max-width:767px){.___SWindow_cc9lm_gg_{min-width:60%}.___SOverlay_cc9lm_gg_{padding:var(--intergalactic-spacing-3x, 12px)}}" /*__inner_css_end__*/, "cc9lm_gg_") /*__reshadow_css_end__*/, {
|
|
27
|
+
"__SWindow": "___SWindow_cc9lm_gg_",
|
|
28
|
+
"_ghost": "__ghost_cc9lm_gg_",
|
|
29
|
+
"__SClose": "___SClose_cc9lm_gg_",
|
|
30
|
+
"__SOverlay": "___SOverlay_cc9lm_gg_",
|
|
31
|
+
"__STitle": "___STitle_cc9lm_gg_",
|
|
32
|
+
"_color": "__color_cc9lm_gg_",
|
|
33
|
+
"--color": "--color_cc9lm"
|
|
35
34
|
});
|
|
36
35
|
import { localizedMessages } from './translations/__intergalactic-dynamic-locales';
|
|
37
36
|
import i18nEnhance from '@semcore/utils/lib/enhances/i18nEnhance';
|
|
@@ -213,17 +212,22 @@ function Overlay(props) {
|
|
|
213
212
|
function Close(props) {
|
|
214
213
|
var _ref4 = arguments[0],
|
|
215
214
|
_ref8;
|
|
216
|
-
var SClose =
|
|
215
|
+
var SClose = Button;
|
|
217
216
|
var Children = props.Children,
|
|
218
217
|
hasChildren = props.children,
|
|
219
|
-
getI18nText = props.getI18nText
|
|
218
|
+
getI18nText = props.getI18nText,
|
|
219
|
+
ghost = props.ghost;
|
|
220
220
|
return _ref8 = sstyled(props.styles), /*#__PURE__*/React.createElement(SClose, _ref8.cn("SClose", _objectSpread({}, _assignProps4({
|
|
221
|
-
"
|
|
222
|
-
"
|
|
221
|
+
"use": 'tertiary',
|
|
222
|
+
"size": 'l',
|
|
223
|
+
"theme": ghost ? 'invert' : 'muted',
|
|
223
224
|
"aria-label": getI18nText('close')
|
|
224
|
-
}, _ref4))), hasChildren ? /*#__PURE__*/React.createElement(Children, _ref8.cn("Children", {})) : /*#__PURE__*/React.createElement(
|
|
225
|
+
}, _ref4))), hasChildren ? /*#__PURE__*/React.createElement(Children, _ref8.cn("Children", {})) : /*#__PURE__*/React.createElement(Button.Addon, {
|
|
226
|
+
ml: '7px',
|
|
227
|
+
mr: '7px'
|
|
228
|
+
}, /*#__PURE__*/React.createElement(CloseIcon, _ref8.cn("CloseIcon", {
|
|
225
229
|
"title": getI18nText('close')
|
|
226
|
-
})));
|
|
230
|
+
}))));
|
|
227
231
|
}
|
|
228
232
|
Close.enhance = [keyboardFocusEnhance()];
|
|
229
233
|
function Title(props) {
|
package/lib/es6/Modal.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Modal.js","names":["React","FadeInOut","Slide","createComponent","Component","sstyled","Root","Portal","PortalProvider","Box","OutsideClick","CloseIcon","fire","usePreventScroll","isAdvanceMode","keyboardFocusEnhance","style","_sstyled","insert","localizedMessages","i18nEnhance","Text","uniqueIDEnhancement","cssVariableEnhance","useFocusLock","useContextTheme","useColorResolver","ZIndexStackingContextProvider","useZIndexStacking","ModalRoot","_Component","_inherits","_super","_createSuper","_this","_classCallCheck","_len","arguments","length","args","Array","_key","call","apply","concat","_defineProperty","_assertThisInitialized","hasTitle","e","key","stopPropagation","_createClass","value","getOverlayProps","_this$asProps","asProps","duration","visible","animationsDisabled","disablePreventScroll","onOutsideClick","handleOutsideClick","getWindowProps","_this$asProps2","closable","getI18nText","uid","state","onKeyDown","handleKeyDown","undefined","getCloseProps","_this$asProps3","ghost","onClick","handleIconCloseClick","getTitleProps","_this2","setHasTitle","setState","id","render","_ref","_this$asProps4","Children","disablePortal","forcedAdvancedMode","ignorePortalsStacking","advancedMode","Modal","Overlay","displayName","Window","createElement","_assignProps","variable","fallback","map","Number","parseInt","prop","i18n","locale","props","_ref2","arguments[0]","_ref6","SWindow","styles","windowRef","useRef","cn","_objectSpread","_assignProps2","Close","_ref3","_ref7","SOverlay","overlayRef","zIndex","_assignProps3","_ref4","_ref8","SClose","hasChildren","children","_assignProps4","enhance","Title","_ref5","_ref9","color","STitle","resolveColor","useEffect","_assignProps5"],"sources":["../../src/Modal.jsx"],"sourcesContent":["import React from 'react';\nimport { FadeInOut, Slide } 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';\nimport { localizedMessages } from './translations/__intergalactic-dynamic-locales';\nimport i18nEnhance from '@semcore/utils/lib/enhances/i18nEnhance';\nimport { Text } from '@semcore/typography';\nimport uniqueIDEnhancement from '@semcore/utils/lib/uniqueID';\nimport { cssVariableEnhance } from '@semcore/utils/lib/useCssVariable';\nimport { useFocusLock } from '@semcore/utils/lib/use/useFocusLock';\nimport { useContextTheme } from '@semcore/utils/lib/ThemeProvider';\nimport { useColorResolver } from '@semcore/utils/lib/use/useColorResolver';\nimport {\n ZIndexStackingContextProvider,\n useZIndexStacking,\n} from '@semcore/utils/lib/zIndexStacking';\n\nclass ModalRoot extends Component {\n static displayName = 'Modal';\n static style = style;\n static enhance = [\n i18nEnhance(localizedMessages),\n uniqueIDEnhancement(),\n cssVariableEnhance({\n variable: '--intergalactic-duration-modal',\n fallback: '200',\n map: Number.parseInt,\n prop: 'duration',\n }),\n ];\n static defaultProps = {\n closable: true,\n i18n: localizedMessages,\n locale: 'en',\n disablePreventScroll: false,\n };\n state = { hasTitle: false };\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, animationsDisabled, disablePreventScroll } = this.asProps;\n return {\n duration,\n visible,\n onOutsideClick: this.handleOutsideClick,\n animationsDisabled,\n disablePreventScroll,\n };\n }\n\n getWindowProps() {\n const { visible, closable, getI18nText, uid, duration, animationsDisabled } = this.asProps;\n const { hasTitle } = this.state;\n return {\n visible,\n closable,\n onKeyDown: this.handleKeyDown,\n 'aria-label': hasTitle ? undefined : getI18nText('title'),\n 'aria-labelledby': hasTitle ? `igc-${uid}-title` : undefined,\n duration,\n animationsDisabled,\n };\n }\n\n getCloseProps() {\n const { getI18nText, ghost } = this.asProps;\n\n return {\n onClick: this.handleIconCloseClick,\n getI18nText,\n ghost,\n };\n }\n\n getTitleProps() {\n const { uid } = this.asProps;\n const setHasTitle = () => this.setState({ hasTitle: true });\n\n return {\n id: `igc-${uid}-title`,\n setHasTitle,\n };\n }\n\n render() {\n const { Children, disablePortal, forcedAdvancedMode, ignorePortalsStacking } = this.asProps;\n\n const advancedMode =\n forcedAdvancedMode ||\n isAdvanceMode(Children, [Modal.Overlay.displayName, Modal.Window.displayName]);\n\n return (\n <Portal disablePortal={disablePortal} ignorePortalsStacking={ignorePortalsStacking}>\n {advancedMode ? (\n <Children />\n ) : (\n <Modal.Overlay>\n <Root render={Modal.Window} />\n </Modal.Overlay>\n )}\n </Portal>\n );\n }\n}\n\nfunction Window(props) {\n const SWindow = Root;\n const { Children, styles, visible, closable, duration } = props;\n const windowRef = React.useRef(null);\n\n useFocusLock(windowRef, true, 'auto', !visible, true);\n\n return sstyled(styles)(\n <SWindow\n render={Slide}\n initialAnimation={true}\n slideOrigin='top'\n visible={visible}\n role='dialog'\n aria-modal={true}\n duration={duration}\n ref={windowRef}\n >\n <ZIndexStackingContextProvider designToken='z-index-modal'>\n <PortalProvider value={windowRef}>\n {closable && <Modal.Close />}\n <Children />\n </PortalProvider>\n </ZIndexStackingContextProvider>\n </SWindow>,\n );\n}\n\nfunction Overlay(props) {\n const SOverlay = Root;\n const { Children, styles, onOutsideClick, visible } = props;\n const overlayRef = React.useRef(null);\n usePreventScroll(visible, props.disablePreventScroll);\n useContextTheme(overlayRef, visible);\n const zIndex = useZIndexStacking('z-index-modal');\n\n return sstyled(styles)(\n <SOverlay render={FadeInOut} ref={overlayRef} zIndex={zIndex}>\n <OutsideClick root={overlayRef} onOutsideClick={onOutsideClick}>\n <Children />\n </OutsideClick>\n </SOverlay>,\n );\n}\n\nfunction Close(props) {\n const SClose = Root;\n const { Children, children: hasChildren, getI18nText } = props;\n return sstyled(props.styles)(\n <SClose render={Box} tag='button' tabIndex={0} aria-label={getI18nText('close')}>\n {hasChildren ? <Children /> : <CloseIcon title={getI18nText('close')} />}\n </SClose>,\n );\n}\n\nClose.enhance = [keyboardFocusEnhance()];\n\nfunction Title(props) {\n const { setHasTitle, styles, color } = props;\n const STitle = Root;\n\n const resolveColor = useColorResolver();\n React.useEffect(() => setHasTitle());\n\n return sstyled(styles)(<STitle render={Text} tag='h2' use:color={resolveColor(color)} />);\n}\n\nconst Modal = createComponent(ModalRoot, {\n Window,\n Overlay,\n Close,\n Title,\n});\n\nexport default Modal;\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Modal.js","names":["React","FadeInOut","Slide","createComponent","Component","sstyled","Root","Portal","PortalProvider","Button","OutsideClick","CloseIcon","fire","usePreventScroll","isAdvanceMode","keyboardFocusEnhance","style","_sstyled","insert","localizedMessages","i18nEnhance","Text","uniqueIDEnhancement","cssVariableEnhance","useFocusLock","useContextTheme","useColorResolver","ZIndexStackingContextProvider","useZIndexStacking","ModalRoot","_Component","_inherits","_super","_createSuper","_this","_classCallCheck","_len","arguments","length","args","Array","_key","call","apply","concat","_defineProperty","_assertThisInitialized","hasTitle","e","key","stopPropagation","_createClass","value","getOverlayProps","_this$asProps","asProps","duration","visible","animationsDisabled","disablePreventScroll","onOutsideClick","handleOutsideClick","getWindowProps","_this$asProps2","closable","getI18nText","uid","state","onKeyDown","handleKeyDown","undefined","getCloseProps","_this$asProps3","ghost","onClick","handleIconCloseClick","getTitleProps","_this2","setHasTitle","setState","id","render","_ref","_this$asProps4","Children","disablePortal","forcedAdvancedMode","ignorePortalsStacking","advancedMode","Modal","Overlay","displayName","Window","createElement","_assignProps","variable","fallback","map","Number","parseInt","prop","i18n","locale","props","_ref2","arguments[0]","_ref6","SWindow","styles","windowRef","useRef","cn","_objectSpread","_assignProps2","Close","_ref3","_ref7","SOverlay","overlayRef","zIndex","_assignProps3","_ref4","_ref8","SClose","hasChildren","children","_assignProps4","Addon","ml","mr","enhance","Title","_ref5","_ref9","color","STitle","resolveColor","useEffect","_assignProps5"],"sources":["../../src/Modal.jsx"],"sourcesContent":["import React from 'react';\nimport { FadeInOut, Slide } from '@semcore/animation';\nimport createComponent, { Component, sstyled, Root } from '@semcore/core';\nimport Portal, { PortalProvider } from '@semcore/portal';\nimport Button from '@semcore/button';\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';\nimport { localizedMessages } from './translations/__intergalactic-dynamic-locales';\nimport i18nEnhance from '@semcore/utils/lib/enhances/i18nEnhance';\nimport { Text } from '@semcore/typography';\nimport uniqueIDEnhancement from '@semcore/utils/lib/uniqueID';\nimport { cssVariableEnhance } from '@semcore/utils/lib/useCssVariable';\nimport { useFocusLock } from '@semcore/utils/lib/use/useFocusLock';\nimport { useContextTheme } from '@semcore/utils/lib/ThemeProvider';\nimport { useColorResolver } from '@semcore/utils/lib/use/useColorResolver';\nimport {\n ZIndexStackingContextProvider,\n useZIndexStacking,\n} from '@semcore/utils/lib/zIndexStacking';\n\nclass ModalRoot extends Component {\n static displayName = 'Modal';\n static style = style;\n static enhance = [\n i18nEnhance(localizedMessages),\n uniqueIDEnhancement(),\n cssVariableEnhance({\n variable: '--intergalactic-duration-modal',\n fallback: '200',\n map: Number.parseInt,\n prop: 'duration',\n }),\n ];\n static defaultProps = {\n closable: true,\n i18n: localizedMessages,\n locale: 'en',\n disablePreventScroll: false,\n };\n state = { hasTitle: false };\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, animationsDisabled, disablePreventScroll } = this.asProps;\n return {\n duration,\n visible,\n onOutsideClick: this.handleOutsideClick,\n animationsDisabled,\n disablePreventScroll,\n };\n }\n\n getWindowProps() {\n const { visible, closable, getI18nText, uid, duration, animationsDisabled } = this.asProps;\n const { hasTitle } = this.state;\n return {\n visible,\n closable,\n onKeyDown: this.handleKeyDown,\n 'aria-label': hasTitle ? undefined : getI18nText('title'),\n 'aria-labelledby': hasTitle ? `igc-${uid}-title` : undefined,\n duration,\n animationsDisabled,\n };\n }\n\n getCloseProps() {\n const { getI18nText, ghost } = this.asProps;\n\n return {\n onClick: this.handleIconCloseClick,\n getI18nText,\n ghost,\n };\n }\n\n getTitleProps() {\n const { uid } = this.asProps;\n const setHasTitle = () => this.setState({ hasTitle: true });\n\n return {\n id: `igc-${uid}-title`,\n setHasTitle,\n };\n }\n\n render() {\n const { Children, disablePortal, forcedAdvancedMode, ignorePortalsStacking } = this.asProps;\n\n const advancedMode =\n forcedAdvancedMode ||\n isAdvanceMode(Children, [Modal.Overlay.displayName, Modal.Window.displayName]);\n\n return (\n <Portal disablePortal={disablePortal} ignorePortalsStacking={ignorePortalsStacking}>\n {advancedMode ? (\n <Children />\n ) : (\n <Modal.Overlay>\n <Root render={Modal.Window} />\n </Modal.Overlay>\n )}\n </Portal>\n );\n }\n}\n\nfunction Window(props) {\n const SWindow = Root;\n const { Children, styles, visible, closable, duration } = props;\n const windowRef = React.useRef(null);\n\n useFocusLock(windowRef, true, 'auto', !visible, true);\n\n return sstyled(styles)(\n <SWindow\n render={Slide}\n initialAnimation={true}\n slideOrigin='top'\n visible={visible}\n role='dialog'\n aria-modal={true}\n duration={duration}\n ref={windowRef}\n >\n <ZIndexStackingContextProvider designToken='z-index-modal'>\n <PortalProvider value={windowRef}>\n {closable && <Modal.Close />}\n <Children />\n </PortalProvider>\n </ZIndexStackingContextProvider>\n </SWindow>,\n );\n}\n\nfunction Overlay(props) {\n const SOverlay = Root;\n const { Children, styles, onOutsideClick, visible } = props;\n const overlayRef = React.useRef(null);\n usePreventScroll(visible, props.disablePreventScroll);\n useContextTheme(overlayRef, visible);\n const zIndex = useZIndexStacking('z-index-modal');\n\n return sstyled(styles)(\n <SOverlay render={FadeInOut} ref={overlayRef} zIndex={zIndex}>\n <OutsideClick root={overlayRef} onOutsideClick={onOutsideClick}>\n <Children />\n </OutsideClick>\n </SOverlay>,\n );\n}\n\nfunction Close(props) {\n const SClose = Root;\n const { Children, children: hasChildren, getI18nText, ghost } = props;\n return sstyled(props.styles)(\n <SClose\n render={Button}\n use='tertiary'\n size='l'\n theme={ghost ? 'invert' : 'muted'}\n aria-label={getI18nText('close')}\n >\n {hasChildren ? (\n <Children />\n ) : (\n <Button.Addon ml={'7px'} mr={'7px'}>\n <CloseIcon title={getI18nText('close')} />\n </Button.Addon>\n )}\n </SClose>,\n );\n}\n\nClose.enhance = [keyboardFocusEnhance()];\n\nfunction Title(props) {\n const { setHasTitle, styles, color } = props;\n const STitle = Root;\n\n const resolveColor = useColorResolver();\n React.useEffect(() => setHasTitle());\n\n return sstyled(styles)(<STitle render={Text} tag='h2' use:color={resolveColor(color)} />);\n}\n\nconst Modal = createComponent(ModalRoot, {\n Window,\n Overlay,\n Close,\n Title,\n});\n\nexport default Modal;\n"],"mappings":"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"}
|
|
@@ -18,6 +18,7 @@ SWindow {
|
|
|
18
18
|
line-height: var(--intergalactic-lh-500, 117%);
|
|
19
19
|
font-weight: var(--intergalactic-semi-bold, 600);
|
|
20
20
|
margin-bottom: var(--intergalactic-spacing-2x, 8px);
|
|
21
|
+
margin-right: var(--intergalactic-spacing-4x, 16px);
|
|
21
22
|
}
|
|
22
23
|
|
|
23
24
|
STitle[color] {
|
|
@@ -54,32 +55,12 @@ SOverlay {
|
|
|
54
55
|
SClose {
|
|
55
56
|
display: inline-flex;
|
|
56
57
|
position: absolute;
|
|
57
|
-
right:
|
|
58
|
-
top:
|
|
59
|
-
padding: var(--intergalactic-spacing-3x, 12px);
|
|
60
|
-
color: var(--intergalactic-icon-secondary-neutral, #a9abb6);
|
|
61
|
-
cursor: pointer;
|
|
62
|
-
z-index: 1;
|
|
63
|
-
border: none;
|
|
64
|
-
background: none;
|
|
65
|
-
outline: none;
|
|
66
|
-
|
|
67
|
-
&:hover {
|
|
68
|
-
color: var(--intergalactic-icon-secondary-neutral-hover-active, #878992);
|
|
69
|
-
}
|
|
58
|
+
right: var(--intergalactic-spacing-2x, 8px);
|
|
59
|
+
top: var(--intergalactic-spacing-2x, 8px);
|
|
70
60
|
}
|
|
71
|
-
|
|
72
61
|
SClose[ghost] {
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
&:hover {
|
|
77
|
-
background-color: var(--intergalactic-control-tertiary-invert-active, rgba(255, 255, 255, 0.3));
|
|
78
|
-
}
|
|
79
|
-
}
|
|
80
|
-
|
|
81
|
-
SClose[keyboardFocused] {
|
|
82
|
-
box-shadow: var(--intergalactic-keyboard-focus, 0px 0px 0px 3px rgba(0, 143, 248, 0.5));
|
|
62
|
+
right: 0;
|
|
63
|
+
top: 0;
|
|
83
64
|
}
|
|
84
65
|
|
|
85
66
|
@media (max-width: 767px) {
|
|
@@ -90,4 +71,4 @@ SClose[keyboardFocused] {
|
|
|
90
71
|
SOverlay {
|
|
91
72
|
padding: var(--intergalactic-spacing-3x, 12px);
|
|
92
73
|
}
|
|
93
|
-
}
|
|
74
|
+
}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@semcore/modal",
|
|
3
3
|
"description": "Semrush Modal Component",
|
|
4
|
-
"version": "4.
|
|
4
|
+
"version": "4.43.0-prerelease.0",
|
|
5
5
|
"main": "lib/cjs/index.js",
|
|
6
6
|
"module": "lib/es6/index.js",
|
|
7
7
|
"typings": "lib/types/index.d.ts",
|
|
@@ -9,16 +9,16 @@
|
|
|
9
9
|
"author": "UI-kit team <ui-kit-team@semrush.com>",
|
|
10
10
|
"license": "MIT",
|
|
11
11
|
"dependencies": {
|
|
12
|
-
"@semcore/animation": "2.31.
|
|
13
|
-
"@semcore/flex-box": "5.31.
|
|
14
|
-
"@semcore/icon": "4.43.
|
|
15
|
-
"@semcore/outside-click": "3.29.
|
|
16
|
-
"@semcore/portal": "3.31.
|
|
17
|
-
"@semcore/typography": "5.40.
|
|
18
|
-
"@semcore/utils": "4.32.
|
|
12
|
+
"@semcore/animation": "2.31.2-prerelease.0",
|
|
13
|
+
"@semcore/flex-box": "5.31.2-prerelease.0",
|
|
14
|
+
"@semcore/icon": "4.43.2-prerelease.0",
|
|
15
|
+
"@semcore/outside-click": "3.29.2-prerelease.0",
|
|
16
|
+
"@semcore/portal": "3.31.2-prerelease.0",
|
|
17
|
+
"@semcore/typography": "5.40.2-prerelease.0",
|
|
18
|
+
"@semcore/utils": "4.32.2-prerelease.0"
|
|
19
19
|
},
|
|
20
20
|
"peerDependencies": {
|
|
21
|
-
"@semcore/core": "^2.
|
|
21
|
+
"@semcore/core": "^2.29.2-prerelease.0",
|
|
22
22
|
"react": "16.8 - 18",
|
|
23
23
|
"react-dom": "16.8 - 18"
|
|
24
24
|
},
|