@semcore/modal 4.55.0 → 16.0.0-prerelease.11

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,11 +2,11 @@
2
2
 
3
3
  CHANGELOG.md standards are inspired by [keepachangelog.com](https://keepachangelog.com/en/1.0.0/).
4
4
 
5
- ## [4.55.0] - 2025-03-28
5
+ ## [16.0.0] - 2025-01-09
6
6
 
7
7
  ### Changed
8
8
 
9
- - Version minor update due to children dependencies update (`@semcore/button` [5.42.1 ~> 5.43.0]).
9
+ - `keyboardFocusEnhance` to css `:focus-visible` property for `Close` modal button.
10
10
 
11
11
  ## [4.54.1] - 2025-03-20
12
12
 
package/lib/cjs/Modal.js CHANGED
@@ -13,36 +13,34 @@ var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/hel
13
13
  var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
14
14
  var _createSuper2 = _interopRequireDefault(require("@babel/runtime/helpers/createSuper"));
15
15
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
16
- var _index = require("@semcore/utils/lib/core/index");
17
- var _core = _interopRequireWildcard(require("@semcore/core"));
16
+ var _core = require("@semcore/core");
18
17
  var _react = _interopRequireDefault(require("react"));
19
18
  var _animation = require("@semcore/animation");
20
19
  var _portal = _interopRequireWildcard(require("@semcore/portal"));
21
20
  var _button = _interopRequireDefault(require("@semcore/button"));
22
21
  var _outsideClick = _interopRequireDefault(require("@semcore/outside-click"));
23
22
  var _l = _interopRequireDefault(require("@semcore/icon/Close/l"));
24
- var _fire = _interopRequireDefault(require("@semcore/utils/lib/fire"));
25
- var _usePreventScroll = _interopRequireDefault(require("@semcore/utils/lib/use/usePreventScroll"));
26
- var _findComponent = require("@semcore/utils/lib/findComponent");
27
- var _keyboardFocusEnhance = _interopRequireDefault(require("@semcore/utils/lib/enhances/keyboardFocusEnhance"));
23
+ var _fire = _interopRequireDefault(require("@semcore/core/lib/utils/fire"));
24
+ var _usePreventScroll = _interopRequireDefault(require("@semcore/core/lib/utils/use/usePreventScroll"));
25
+ var _findComponent = require("@semcore/core/lib/utils/findComponent");
28
26
  var _intergalacticDynamicLocales = require("./translations/__intergalactic-dynamic-locales");
29
- var _i18nEnhance = _interopRequireDefault(require("@semcore/utils/lib/enhances/i18nEnhance"));
27
+ var _i18nEnhance = _interopRequireDefault(require("@semcore/core/lib/utils/enhances/i18nEnhance"));
30
28
  var _typography = require("@semcore/typography");
31
- var _uniqueID = _interopRequireDefault(require("@semcore/utils/lib/uniqueID"));
32
- var _useCssVariable = require("@semcore/utils/lib/useCssVariable");
33
- var _useFocusLock = require("@semcore/utils/lib/use/useFocusLock");
34
- var _ThemeProvider = require("@semcore/utils/lib/ThemeProvider");
35
- var _useColorResolver = require("@semcore/utils/lib/use/useColorResolver");
36
- var _zIndexStacking = require("@semcore/utils/lib/zIndexStacking");
29
+ var _uniqueID = _interopRequireDefault(require("@semcore/core/lib/utils/uniqueID"));
30
+ var _useCssVariable = require("@semcore/core/lib/utils/useCssVariable");
31
+ var _useFocusLock = require("@semcore/core/lib/utils/use/useFocusLock");
32
+ var _ThemeProvider = require("@semcore/core/lib/utils/ThemeProvider");
33
+ var _useColorResolver = require("@semcore/core/lib/utils/use/useColorResolver");
34
+ var _zIndexStacking = require("@semcore/core/lib/utils/zIndexStacking");
37
35
  /*__reshadow-styles__:"./style/modal.shadow.css"*/
38
- var style = ( /*__reshadow_css_start__*/_index.sstyled.insert( /*__inner_css_start__*/".___SWindow_1vjjl_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_1vjjl_gg_:focus{outline:0}.___SWindow_1vjjl_gg_ .___STitle_1vjjl_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_1vjjl_gg_ .___STitle_1vjjl_gg_.__color_1vjjl_gg_{color:var(--color_1vjjl)}.___SWindow_1vjjl_gg_ .___SClose_1vjjl_gg_{display:inline-flex;position:absolute;right:var(--intergalactic-spacing-2x, 8px);top:var(--intergalactic-spacing-2x, 8px)}.___SWindow_1vjjl_gg_ .___SClose_1vjjl_gg_.__ghost_1vjjl_gg_{right:0;top:0}.___SWindow_1vjjl_gg_.__ghost_1vjjl_gg_{background:0 0;padding:0;box-shadow:none}.___SOverlay_1vjjl_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_1vjjl_gg_ .___SOverlay_1vjjl_gg_{background:var(--intergalactic-overlay-secondary, rgba(25, 27, 35, 0.4))}@media (max-width:767px){.___SWindow_1vjjl_gg_{min-width:60%}.___SOverlay_1vjjl_gg_{padding:var(--intergalactic-spacing-3x, 12px)}}" /*__inner_css_end__*/, "1vjjl_gg_") /*__reshadow_css_end__*/, {
39
- "__SWindow": "___SWindow_1vjjl_gg_",
40
- "_ghost": "__ghost_1vjjl_gg_",
41
- "__SOverlay": "___SOverlay_1vjjl_gg_",
42
- "__STitle": "___STitle_1vjjl_gg_",
43
- "_color": "__color_1vjjl_gg_",
44
- "--color": "--color_1vjjl",
45
- "__SClose": "___SClose_1vjjl_gg_"
36
+ var style = ( /*__reshadow_css_start__*/_core.sstyled.insert( /*__inner_css_start__*/".___SWindow_1galp_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_1galp_gg_:focus{outline:0}.___SWindow_1galp_gg_ .___STitle_1galp_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_1galp_gg_ .___STitle_1galp_gg_.__color_1galp_gg_{color:var(--color_1galp)}.___SWindow_1galp_gg_ .___SClose_1galp_gg_{display:inline-flex;position:absolute;right:var(--intergalactic-spacing-2x, 8px);top:var(--intergalactic-spacing-2x, 8px)}.___SWindow_1galp_gg_ .___SClose_1galp_gg_.__ghost_1galp_gg_{right:0;top:0}.___SWindow_1galp_gg_.__ghost_1galp_gg_{background:0 0;padding:0;box-shadow:none}.___SOverlay_1galp_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_1galp_gg_ .___SOverlay_1galp_gg_{background:var(--intergalactic-overlay-secondary, rgba(25, 27, 35, 0.4))}@media (max-width:767px){.___SWindow_1galp_gg_{min-width:60%}.___SOverlay_1galp_gg_{padding:var(--intergalactic-spacing-3x, 12px)}}" /*__inner_css_end__*/, "1galp_gg_") /*__reshadow_css_end__*/, {
37
+ "__SWindow": "___SWindow_1galp_gg_",
38
+ "_ghost": "__ghost_1galp_gg_",
39
+ "__SOverlay": "___SOverlay_1galp_gg_",
40
+ "__STitle": "___STitle_1galp_gg_",
41
+ "_color": "__color_1galp_gg_",
42
+ "--color": "--color_1galp",
43
+ "__SClose": "___SClose_1galp_gg_"
46
44
  });
47
45
  var ModalRoot = /*#__PURE__*/function (_Component) {
48
46
  (0, _inherits2["default"])(ModalRoot, _Component);
@@ -232,7 +230,6 @@ function Close(props) {
232
230
  "title": getI18nText('close')
233
231
  }))));
234
232
  }
235
- Close.enhance = [(0, _keyboardFocusEnhance["default"])()];
236
233
  function Title(props) {
237
234
  var _ref5 = arguments[0],
238
235
  _ref9;
@@ -249,7 +246,7 @@ function Title(props) {
249
246
  "use:color": resolveColor(color)
250
247
  }, _ref5))));
251
248
  }
252
- var Modal = (0, _core["default"])(ModalRoot, {
249
+ var Modal = (0, _core.createComponent)(ModalRoot, {
253
250
  Window: Window,
254
251
  Overlay: Overlay,
255
252
  Close: Close,
@@ -1 +1 @@
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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"}
1
+ {"version":3,"file":"Modal.js","names":["_core","require","_react","_interopRequireDefault","_animation","_portal","_interopRequireWildcard","_button","_outsideClick","_l","_fire","_usePreventScroll","_findComponent","_intergalacticDynamicLocales","_i18nEnhance","_typography","_uniqueID","_useCssVariable","_useFocusLock","_ThemeProvider","_useColorResolver","_zIndexStacking","style","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","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/core/lib/utils/fire';\nimport usePreventScroll from '@semcore/core/lib/utils/use/usePreventScroll';\nimport { isAdvanceMode } from '@semcore/core/lib/utils/findComponent';\nimport style from './style/modal.shadow.css';\nimport { localizedMessages } from './translations/__intergalactic-dynamic-locales';\nimport i18nEnhance from '@semcore/core/lib/utils/enhances/i18nEnhance';\nimport { Text } from '@semcore/typography';\nimport uniqueIDEnhancement from '@semcore/core/lib/utils/uniqueID';\nimport { cssVariableEnhance } from '@semcore/core/lib/utils/useCssVariable';\nimport { useFocusLock } from '@semcore/core/lib/utils/use/useFocusLock';\nimport { useContextTheme } from '@semcore/core/lib/utils/ThemeProvider';\nimport { useColorResolver } from '@semcore/core/lib/utils/use/useColorResolver';\nimport {\n ZIndexStackingContextProvider,\n useZIndexStacking,\n} from '@semcore/core/lib/utils/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\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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"}
package/lib/es6/Modal.js CHANGED
@@ -5,7 +5,7 @@ import _assertThisInitialized from "@babel/runtime/helpers/assertThisInitialized
5
5
  import _inherits from "@babel/runtime/helpers/inherits";
6
6
  import _createSuper from "@babel/runtime/helpers/createSuper";
7
7
  import _defineProperty from "@babel/runtime/helpers/defineProperty";
8
- import { sstyled as _sstyled } from "@semcore/utils/lib/core/index";
8
+ import { sstyled as _sstyled } from "@semcore/core";
9
9
  import { assignProps as _assignProps5 } from "@semcore/core";
10
10
  import { assignProps as _assignProps4 } from "@semcore/core";
11
11
  import { assignProps as _assignProps3 } from "@semcore/core";
@@ -13,34 +13,33 @@ import { assignProps as _assignProps2 } from "@semcore/core";
13
13
  import { assignProps as _assignProps } from "@semcore/core";
14
14
  import React from 'react';
15
15
  import { FadeInOut, Slide } from '@semcore/animation';
16
- import createComponent, { Component, sstyled, Root } from '@semcore/core';
16
+ import { createComponent, Component, sstyled, Root } from '@semcore/core';
17
17
  import Portal, { PortalProvider } from '@semcore/portal';
18
18
  import Button from '@semcore/button';
19
19
  import OutsideClick from '@semcore/outside-click';
20
20
  import CloseIcon from '@semcore/icon/Close/l';
21
- import fire from '@semcore/utils/lib/fire';
22
- import usePreventScroll from '@semcore/utils/lib/use/usePreventScroll';
23
- import { isAdvanceMode } from '@semcore/utils/lib/findComponent';
24
- import keyboardFocusEnhance from '@semcore/utils/lib/enhances/keyboardFocusEnhance';
21
+ import fire from '@semcore/core/lib/utils/fire';
22
+ import usePreventScroll from '@semcore/core/lib/utils/use/usePreventScroll';
23
+ import { isAdvanceMode } from '@semcore/core/lib/utils/findComponent';
25
24
  /*__reshadow-styles__:"./style/modal.shadow.css"*/
26
- var style = ( /*__reshadow_css_start__*/_sstyled.insert( /*__inner_css_start__*/".___SWindow_1vjjl_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_1vjjl_gg_:focus{outline:0}.___SWindow_1vjjl_gg_ .___STitle_1vjjl_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_1vjjl_gg_ .___STitle_1vjjl_gg_.__color_1vjjl_gg_{color:var(--color_1vjjl)}.___SWindow_1vjjl_gg_ .___SClose_1vjjl_gg_{display:inline-flex;position:absolute;right:var(--intergalactic-spacing-2x, 8px);top:var(--intergalactic-spacing-2x, 8px)}.___SWindow_1vjjl_gg_ .___SClose_1vjjl_gg_.__ghost_1vjjl_gg_{right:0;top:0}.___SWindow_1vjjl_gg_.__ghost_1vjjl_gg_{background:0 0;padding:0;box-shadow:none}.___SOverlay_1vjjl_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_1vjjl_gg_ .___SOverlay_1vjjl_gg_{background:var(--intergalactic-overlay-secondary, rgba(25, 27, 35, 0.4))}@media (max-width:767px){.___SWindow_1vjjl_gg_{min-width:60%}.___SOverlay_1vjjl_gg_{padding:var(--intergalactic-spacing-3x, 12px)}}" /*__inner_css_end__*/, "1vjjl_gg_") /*__reshadow_css_end__*/, {
27
- "__SWindow": "___SWindow_1vjjl_gg_",
28
- "_ghost": "__ghost_1vjjl_gg_",
29
- "__SOverlay": "___SOverlay_1vjjl_gg_",
30
- "__STitle": "___STitle_1vjjl_gg_",
31
- "_color": "__color_1vjjl_gg_",
32
- "--color": "--color_1vjjl",
33
- "__SClose": "___SClose_1vjjl_gg_"
25
+ var style = ( /*__reshadow_css_start__*/_sstyled.insert( /*__inner_css_start__*/".___SWindow_1galp_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_1galp_gg_:focus{outline:0}.___SWindow_1galp_gg_ .___STitle_1galp_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_1galp_gg_ .___STitle_1galp_gg_.__color_1galp_gg_{color:var(--color_1galp)}.___SWindow_1galp_gg_ .___SClose_1galp_gg_{display:inline-flex;position:absolute;right:var(--intergalactic-spacing-2x, 8px);top:var(--intergalactic-spacing-2x, 8px)}.___SWindow_1galp_gg_ .___SClose_1galp_gg_.__ghost_1galp_gg_{right:0;top:0}.___SWindow_1galp_gg_.__ghost_1galp_gg_{background:0 0;padding:0;box-shadow:none}.___SOverlay_1galp_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_1galp_gg_ .___SOverlay_1galp_gg_{background:var(--intergalactic-overlay-secondary, rgba(25, 27, 35, 0.4))}@media (max-width:767px){.___SWindow_1galp_gg_{min-width:60%}.___SOverlay_1galp_gg_{padding:var(--intergalactic-spacing-3x, 12px)}}" /*__inner_css_end__*/, "1galp_gg_") /*__reshadow_css_end__*/, {
26
+ "__SWindow": "___SWindow_1galp_gg_",
27
+ "_ghost": "__ghost_1galp_gg_",
28
+ "__SOverlay": "___SOverlay_1galp_gg_",
29
+ "__STitle": "___STitle_1galp_gg_",
30
+ "_color": "__color_1galp_gg_",
31
+ "--color": "--color_1galp",
32
+ "__SClose": "___SClose_1galp_gg_"
34
33
  });
35
34
  import { localizedMessages } from './translations/__intergalactic-dynamic-locales';
36
- import i18nEnhance from '@semcore/utils/lib/enhances/i18nEnhance';
35
+ import i18nEnhance from '@semcore/core/lib/utils/enhances/i18nEnhance';
37
36
  import { Text } from '@semcore/typography';
38
- import uniqueIDEnhancement from '@semcore/utils/lib/uniqueID';
39
- import { cssVariableEnhance } from '@semcore/utils/lib/useCssVariable';
40
- import { useFocusLock } from '@semcore/utils/lib/use/useFocusLock';
41
- import { useContextTheme } from '@semcore/utils/lib/ThemeProvider';
42
- import { useColorResolver } from '@semcore/utils/lib/use/useColorResolver';
43
- import { ZIndexStackingContextProvider, useZIndexStacking } from '@semcore/utils/lib/zIndexStacking';
37
+ import uniqueIDEnhancement from '@semcore/core/lib/utils/uniqueID';
38
+ import { cssVariableEnhance } from '@semcore/core/lib/utils/useCssVariable';
39
+ import { useFocusLock } from '@semcore/core/lib/utils/use/useFocusLock';
40
+ import { useContextTheme } from '@semcore/core/lib/utils/ThemeProvider';
41
+ import { useColorResolver } from '@semcore/core/lib/utils/use/useColorResolver';
42
+ import { ZIndexStackingContextProvider, useZIndexStacking } from '@semcore/core/lib/utils/zIndexStacking';
44
43
  var ModalRoot = /*#__PURE__*/function (_Component) {
45
44
  _inherits(ModalRoot, _Component);
46
45
  var _super = _createSuper(ModalRoot);
@@ -229,7 +228,6 @@ function Close(props) {
229
228
  "title": getI18nText('close')
230
229
  }))));
231
230
  }
232
- Close.enhance = [keyboardFocusEnhance()];
233
231
  function Title(props) {
234
232
  var _ref5 = arguments[0],
235
233
  _ref9;
@@ -1 +1 @@
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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"}
1
+ {"version":3,"file":"Modal.js","names":["React","FadeInOut","Slide","createComponent","Component","sstyled","Root","Portal","PortalProvider","Button","OutsideClick","CloseIcon","fire","usePreventScroll","isAdvanceMode","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","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/core/lib/utils/fire';\nimport usePreventScroll from '@semcore/core/lib/utils/use/usePreventScroll';\nimport { isAdvanceMode } from '@semcore/core/lib/utils/findComponent';\nimport style from './style/modal.shadow.css';\nimport { localizedMessages } from './translations/__intergalactic-dynamic-locales';\nimport i18nEnhance from '@semcore/core/lib/utils/enhances/i18nEnhance';\nimport { Text } from '@semcore/typography';\nimport uniqueIDEnhancement from '@semcore/core/lib/utils/uniqueID';\nimport { cssVariableEnhance } from '@semcore/core/lib/utils/useCssVariable';\nimport { useFocusLock } from '@semcore/core/lib/utils/use/useFocusLock';\nimport { useContextTheme } from '@semcore/core/lib/utils/ThemeProvider';\nimport { useColorResolver } from '@semcore/core/lib/utils/use/useColorResolver';\nimport {\n ZIndexStackingContextProvider,\n useZIndexStacking,\n} from '@semcore/core/lib/utils/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\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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"}
package/lib/esm/Modal.mjs CHANGED
@@ -1,196 +1,223 @@
1
- import f from "@babel/runtime/helpers/esm/objectSpread2";
2
- import S from "@babel/runtime/helpers/esm/classCallCheck";
3
- import P from "@babel/runtime/helpers/esm/createClass";
4
- import g from "@babel/runtime/helpers/esm/assertThisInitialized";
5
- import w from "@babel/runtime/helpers/esm/inherits";
6
- import k from "@babel/runtime/helpers/esm/createSuper";
7
- import d from "@babel/runtime/helpers/esm/defineProperty";
8
- import { sstyled as T } from "@semcore/utils/lib/core/index";
9
- import E, { assignProps as m, Component as O, sstyled as p } from "@semcore/core";
10
- import n from "react";
11
- import { Slide as I, FadeInOut as W } from "@semcore/animation";
12
- import z, { PortalProvider as M } from "@semcore/portal";
13
- import C from "@semcore/button";
14
- import D from "@semcore/outside-click";
15
- import R from "@semcore/icon/Close/l";
16
- import j from "@semcore/utils/lib/fire";
17
- import A from "@semcore/utils/lib/use/usePreventScroll";
18
- import { isAdvanceMode as $ } from "@semcore/utils/lib/findComponent";
19
- import H from "@semcore/utils/lib/enhances/keyboardFocusEnhance";
20
- import { localizedMessages as x } from "./translations/__intergalactic-dynamic-locales.mjs";
21
- import N from "@semcore/utils/lib/enhances/i18nEnhance";
22
- import { Text as F } from "@semcore/typography";
23
- import K from "@semcore/utils/lib/uniqueID";
24
- import { cssVariableEnhance as Z } from "@semcore/utils/lib/useCssVariable";
25
- import { useFocusLock as q } from "@semcore/utils/lib/use/useFocusLock";
26
- import { useContextTheme as B } from "@semcore/utils/lib/ThemeProvider";
27
- import { useColorResolver as L } from "@semcore/utils/lib/use/useColorResolver";
28
- import { ZIndexStackingContextProvider as V, useZIndexStacking as G } from "@semcore/utils/lib/zIndexStacking";
29
- var J = (
1
+ import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2";
2
+ import _classCallCheck from "@babel/runtime/helpers/esm/classCallCheck";
3
+ import _createClass from "@babel/runtime/helpers/esm/createClass";
4
+ import _assertThisInitialized from "@babel/runtime/helpers/esm/assertThisInitialized";
5
+ import _inherits from "@babel/runtime/helpers/esm/inherits";
6
+ import _createSuper from "@babel/runtime/helpers/esm/createSuper";
7
+ import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
8
+ import { sstyled, createComponent, assignProps, Component } from "@semcore/core";
9
+ import React from "react";
10
+ import { Slide, FadeInOut } from "@semcore/animation";
11
+ import Portal, { PortalProvider } from "@semcore/portal";
12
+ import Button from "@semcore/button";
13
+ import OutsideClick from "@semcore/outside-click";
14
+ import CloseIcon from "@semcore/icon/Close/l";
15
+ import fire from "@semcore/core/lib/utils/fire";
16
+ import usePreventScroll from "@semcore/core/lib/utils/use/usePreventScroll";
17
+ import { isAdvanceMode } from "@semcore/core/lib/utils/findComponent";
18
+ import { localizedMessages } from "./translations/__intergalactic-dynamic-locales.mjs";
19
+ import i18nEnhance from "@semcore/core/lib/utils/enhances/i18nEnhance";
20
+ import { Text } from "@semcore/typography";
21
+ import uniqueIDEnhancement from "@semcore/core/lib/utils/uniqueID";
22
+ import { cssVariableEnhance } from "@semcore/core/lib/utils/useCssVariable";
23
+ import { useFocusLock } from "@semcore/core/lib/utils/use/useFocusLock";
24
+ import { useContextTheme } from "@semcore/core/lib/utils/ThemeProvider";
25
+ import { useColorResolver } from "@semcore/core/lib/utils/use/useColorResolver";
26
+ import { ZIndexStackingContextProvider, useZIndexStacking } from "@semcore/core/lib/utils/zIndexStacking";
27
+ var style = (
30
28
  /*__reshadow_css_start__*/
31
- (T.insert(
29
+ (sstyled.insert(
32
30
  /*__inner_css_start__*/
33
- ".___SWindow_1vjjl_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_1vjjl_gg_:focus{outline:0}.___SWindow_1vjjl_gg_ .___STitle_1vjjl_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_1vjjl_gg_ .___STitle_1vjjl_gg_.__color_1vjjl_gg_{color:var(--color_1vjjl)}.___SWindow_1vjjl_gg_ .___SClose_1vjjl_gg_{display:inline-flex;position:absolute;right:var(--intergalactic-spacing-2x, 8px);top:var(--intergalactic-spacing-2x, 8px)}.___SWindow_1vjjl_gg_ .___SClose_1vjjl_gg_.__ghost_1vjjl_gg_{right:0;top:0}.___SWindow_1vjjl_gg_.__ghost_1vjjl_gg_{background:0 0;padding:0;box-shadow:none}.___SOverlay_1vjjl_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_1vjjl_gg_ .___SOverlay_1vjjl_gg_{background:var(--intergalactic-overlay-secondary, rgba(25, 27, 35, 0.4))}@media (max-width:767px){.___SWindow_1vjjl_gg_{min-width:60%}.___SOverlay_1vjjl_gg_{padding:var(--intergalactic-spacing-3x, 12px)}}",
34
- "1vjjl_gg_"
31
+ ".___SWindow_1galp_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_1galp_gg_:focus{outline:0}.___SWindow_1galp_gg_ .___STitle_1galp_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_1galp_gg_ .___STitle_1galp_gg_.__color_1galp_gg_{color:var(--color_1galp)}.___SWindow_1galp_gg_ .___SClose_1galp_gg_{display:inline-flex;position:absolute;right:var(--intergalactic-spacing-2x, 8px);top:var(--intergalactic-spacing-2x, 8px)}.___SWindow_1galp_gg_ .___SClose_1galp_gg_.__ghost_1galp_gg_{right:0;top:0}.___SWindow_1galp_gg_.__ghost_1galp_gg_{background:0 0;padding:0;box-shadow:none}.___SOverlay_1galp_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_1galp_gg_ .___SOverlay_1galp_gg_{background:var(--intergalactic-overlay-secondary, rgba(25, 27, 35, 0.4))}@media (max-width:767px){.___SWindow_1galp_gg_{min-width:60%}.___SOverlay_1galp_gg_{padding:var(--intergalactic-spacing-3x, 12px)}}",
32
+ "1galp_gg_"
35
33
  ), {
36
- __SWindow: "___SWindow_1vjjl_gg_",
37
- _ghost: "__ghost_1vjjl_gg_",
38
- __SOverlay: "___SOverlay_1vjjl_gg_",
39
- __STitle: "___STitle_1vjjl_gg_",
40
- _color: "__color_1vjjl_gg_",
41
- "--color": "--color_1vjjl",
42
- __SClose: "___SClose_1vjjl_gg_"
34
+ "__SWindow": "___SWindow_1galp_gg_",
35
+ "_ghost": "__ghost_1galp_gg_",
36
+ "__SOverlay": "___SOverlay_1galp_gg_",
37
+ "__STitle": "___STitle_1galp_gg_",
38
+ "_color": "__color_1galp_gg_",
39
+ "--color": "--color_1galp",
40
+ "__SClose": "___SClose_1galp_gg_"
43
41
  })
44
- ), u = /* @__PURE__ */ function(i) {
45
- w(r, i);
46
- var c = k(r);
47
- function r() {
48
- var l;
49
- S(this, r);
50
- for (var e = arguments.length, a = new Array(e), t = 0; t < e; t++)
51
- a[t] = arguments[t];
52
- return l = c.call.apply(c, [this].concat(a)), d(g(l), "state", {
53
- hasTitle: !1
54
- }), d(g(l), "handleKeyDown", function(o) {
55
- o.key === "Escape" && (o.stopPropagation(), j(g(l), "onClose", "onEscape", o));
56
- }), d(g(l), "handleIconCloseClick", function(o) {
57
- j(g(l), "onClose", "onCloseClick", o);
58
- }), d(g(l), "handleOutsideClick", function(o) {
59
- j(g(l), "onClose", "onOutsideClick", o);
60
- }), l;
42
+ );
43
+ var ModalRoot = /* @__PURE__ */ function(_Component) {
44
+ _inherits(ModalRoot2, _Component);
45
+ var _super = _createSuper(ModalRoot2);
46
+ function ModalRoot2() {
47
+ var _this;
48
+ _classCallCheck(this, ModalRoot2);
49
+ for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
50
+ args[_key] = arguments[_key];
51
+ }
52
+ _this = _super.call.apply(_super, [this].concat(args));
53
+ _defineProperty(_assertThisInitialized(_this), "state", {
54
+ hasTitle: false
55
+ });
56
+ _defineProperty(_assertThisInitialized(_this), "handleKeyDown", function(e) {
57
+ if (e.key === "Escape") {
58
+ e.stopPropagation();
59
+ fire(_assertThisInitialized(_this), "onClose", "onEscape", e);
60
+ }
61
+ });
62
+ _defineProperty(_assertThisInitialized(_this), "handleIconCloseClick", function(e) {
63
+ fire(_assertThisInitialized(_this), "onClose", "onCloseClick", e);
64
+ });
65
+ _defineProperty(_assertThisInitialized(_this), "handleOutsideClick", function(e) {
66
+ fire(_assertThisInitialized(_this), "onClose", "onOutsideClick", e);
67
+ });
68
+ return _this;
61
69
  }
62
- return P(r, [{
70
+ _createClass(ModalRoot2, [{
63
71
  key: "getOverlayProps",
64
- value: function() {
65
- var e = this.asProps, a = e.duration, t = e.visible, o = e.animationsDisabled, s = e.disablePreventScroll;
72
+ value: function getOverlayProps() {
73
+ var _this$asProps = this.asProps, duration = _this$asProps.duration, visible = _this$asProps.visible, animationsDisabled = _this$asProps.animationsDisabled, disablePreventScroll = _this$asProps.disablePreventScroll;
66
74
  return {
67
- duration: a,
68
- visible: t,
75
+ duration,
76
+ visible,
69
77
  onOutsideClick: this.handleOutsideClick,
70
- animationsDisabled: o,
71
- disablePreventScroll: s
78
+ animationsDisabled,
79
+ disablePreventScroll
72
80
  };
73
81
  }
74
82
  }, {
75
83
  key: "getWindowProps",
76
- value: function() {
77
- var e = this.asProps, a = e.visible, t = e.closable, o = e.getI18nText, s = e.uid, _ = e.duration, h = e.animationsDisabled, b = this.state.hasTitle;
84
+ value: function getWindowProps() {
85
+ var _this$asProps2 = this.asProps, visible = _this$asProps2.visible, closable = _this$asProps2.closable, getI18nText = _this$asProps2.getI18nText, uid = _this$asProps2.uid, duration = _this$asProps2.duration, animationsDisabled = _this$asProps2.animationsDisabled;
86
+ var hasTitle = this.state.hasTitle;
78
87
  return {
79
- visible: a,
80
- closable: t,
88
+ visible,
89
+ closable,
81
90
  onKeyDown: this.handleKeyDown,
82
- "aria-label": b ? void 0 : o("title"),
83
- "aria-labelledby": b ? "igc-".concat(s, "-title") : void 0,
84
- duration: _,
85
- animationsDisabled: h
91
+ "aria-label": hasTitle ? void 0 : getI18nText("title"),
92
+ "aria-labelledby": hasTitle ? "igc-".concat(uid, "-title") : void 0,
93
+ duration,
94
+ animationsDisabled
86
95
  };
87
96
  }
88
97
  }, {
89
98
  key: "getCloseProps",
90
- value: function() {
91
- var e = this.asProps, a = e.getI18nText, t = e.ghost;
99
+ value: function getCloseProps() {
100
+ var _this$asProps3 = this.asProps, getI18nText = _this$asProps3.getI18nText, ghost = _this$asProps3.ghost;
92
101
  return {
93
102
  onClick: this.handleIconCloseClick,
94
- getI18nText: a,
95
- ghost: t
103
+ getI18nText,
104
+ ghost
96
105
  };
97
106
  }
98
107
  }, {
99
108
  key: "getTitleProps",
100
- value: function() {
101
- var e = this, a = this.asProps.uid, t = function() {
102
- return e.setState({
103
- hasTitle: !0
109
+ value: function getTitleProps() {
110
+ var _this2 = this;
111
+ var uid = this.asProps.uid;
112
+ var setHasTitle = function setHasTitle2() {
113
+ return _this2.setState({
114
+ hasTitle: true
104
115
  });
105
116
  };
106
117
  return {
107
- id: "igc-".concat(a, "-title"),
108
- setHasTitle: t
118
+ id: "igc-".concat(uid, "-title"),
119
+ setHasTitle
109
120
  };
110
121
  }
111
122
  }, {
112
123
  key: "render",
113
- value: function() {
114
- var e = this.asProps, a = this.asProps, t = a.Children, o = a.disablePortal, s = a.forcedAdvancedMode, _ = a.ignorePortalsStacking, h = s || $(t, [v.Overlay.displayName, v.Window.displayName]);
115
- return /* @__PURE__ */ n.createElement(z, {
116
- disablePortal: o,
117
- ignorePortalsStacking: _
118
- }, h ? /* @__PURE__ */ n.createElement(t, null) : /* @__PURE__ */ n.createElement(v.Overlay, null, /* @__PURE__ */ n.createElement(v.Window, m({}, e))));
124
+ value: function render() {
125
+ var _ref = this.asProps;
126
+ var _this$asProps4 = this.asProps, Children = _this$asProps4.Children, disablePortal = _this$asProps4.disablePortal, forcedAdvancedMode = _this$asProps4.forcedAdvancedMode, ignorePortalsStacking = _this$asProps4.ignorePortalsStacking;
127
+ var advancedMode = forcedAdvancedMode || isAdvanceMode(Children, [Modal.Overlay.displayName, Modal.Window.displayName]);
128
+ return /* @__PURE__ */ React.createElement(Portal, {
129
+ disablePortal,
130
+ ignorePortalsStacking
131
+ }, advancedMode ? /* @__PURE__ */ React.createElement(Children, null) : /* @__PURE__ */ React.createElement(Modal.Overlay, null, /* @__PURE__ */ React.createElement(Modal.Window, assignProps({}, _ref))));
119
132
  }
120
- }]), r;
121
- }(O);
122
- d(u, "displayName", "Modal");
123
- d(u, "style", J);
124
- d(u, "enhance", [N(x), K(), Z({
133
+ }]);
134
+ return ModalRoot2;
135
+ }(Component);
136
+ _defineProperty(ModalRoot, "displayName", "Modal");
137
+ _defineProperty(ModalRoot, "style", style);
138
+ _defineProperty(ModalRoot, "enhance", [i18nEnhance(localizedMessages), uniqueIDEnhancement(), cssVariableEnhance({
125
139
  variable: "--intergalactic-duration-modal",
126
140
  fallback: "200",
127
141
  map: Number.parseInt,
128
142
  prop: "duration"
129
143
  })]);
130
- d(u, "defaultProps", {
131
- closable: !0,
132
- i18n: x,
144
+ _defineProperty(ModalRoot, "defaultProps", {
145
+ closable: true,
146
+ i18n: localizedMessages,
133
147
  locale: "en",
134
- disablePreventScroll: !1
148
+ disablePreventScroll: false
135
149
  });
136
- function Q(i) {
137
- var c = arguments[0], r, l = I, e = i.Children, a = i.styles, t = i.visible, o = i.closable, s = i.duration, _ = n.useRef(null);
138
- return q(_, !0, "auto", !t, !0), r = p(a), /* @__PURE__ */ n.createElement(l, r.cn("SWindow", f({}, m({
139
- initialAnimation: !0,
140
- slideOrigin: "top",
141
- visible: t,
142
- role: "dialog",
143
- "aria-modal": !0,
144
- duration: s,
145
- ref: _
146
- }, c))), /* @__PURE__ */ n.createElement(V, r.cn("ZIndexStackingContextProvider", {
147
- designToken: "z-index-modal"
148
- }), /* @__PURE__ */ n.createElement(M, r.cn("PortalProvider", {
149
- value: _
150
- }), o && /* @__PURE__ */ n.createElement(v.Close, null), /* @__PURE__ */ n.createElement(e, r.cn("Children", {})))));
150
+ function Window(props) {
151
+ var _ref2 = arguments[0], _ref6;
152
+ var SWindow = Slide;
153
+ var Children = props.Children, styles = props.styles, visible = props.visible, closable = props.closable, duration = props.duration;
154
+ var windowRef = React.useRef(null);
155
+ useFocusLock(windowRef, true, "auto", !visible, true);
156
+ return _ref6 = sstyled(styles), /* @__PURE__ */ React.createElement(SWindow, _ref6.cn("SWindow", _objectSpread({}, assignProps({
157
+ "initialAnimation": true,
158
+ "slideOrigin": "top",
159
+ "visible": visible,
160
+ "role": "dialog",
161
+ "aria-modal": true,
162
+ "duration": duration,
163
+ "ref": windowRef
164
+ }, _ref2))), /* @__PURE__ */ React.createElement(ZIndexStackingContextProvider, _ref6.cn("ZIndexStackingContextProvider", {
165
+ "designToken": "z-index-modal"
166
+ }), /* @__PURE__ */ React.createElement(PortalProvider, _ref6.cn("PortalProvider", {
167
+ "value": windowRef
168
+ }), closable && /* @__PURE__ */ React.createElement(Modal.Close, null), /* @__PURE__ */ React.createElement(Children, _ref6.cn("Children", {})))));
151
169
  }
152
- function U(i) {
153
- var c = arguments[0], r, l = W, e = i.Children, a = i.styles, t = i.onOutsideClick, o = i.visible, s = n.useRef(null);
154
- A(o, i.disablePreventScroll), B(s, o);
155
- var _ = G("z-index-modal");
156
- return r = p(a), /* @__PURE__ */ n.createElement(l, r.cn("SOverlay", f({}, m({
157
- ref: s,
158
- zIndex: _
159
- }, c))), /* @__PURE__ */ n.createElement(D, r.cn("OutsideClick", {
160
- root: s,
161
- onOutsideClick: t
162
- }), /* @__PURE__ */ n.createElement(e, r.cn("Children", {}))));
170
+ function Overlay(props) {
171
+ var _ref3 = arguments[0], _ref7;
172
+ var SOverlay = FadeInOut;
173
+ var Children = props.Children, styles = props.styles, onOutsideClick = props.onOutsideClick, visible = props.visible;
174
+ var overlayRef = React.useRef(null);
175
+ usePreventScroll(visible, props.disablePreventScroll);
176
+ useContextTheme(overlayRef, visible);
177
+ var zIndex = useZIndexStacking("z-index-modal");
178
+ return _ref7 = sstyled(styles), /* @__PURE__ */ React.createElement(SOverlay, _ref7.cn("SOverlay", _objectSpread({}, assignProps({
179
+ "ref": overlayRef,
180
+ "zIndex": zIndex
181
+ }, _ref3))), /* @__PURE__ */ React.createElement(OutsideClick, _ref7.cn("OutsideClick", {
182
+ "root": overlayRef,
183
+ "onOutsideClick": onOutsideClick
184
+ }), /* @__PURE__ */ React.createElement(Children, _ref7.cn("Children", {}))));
163
185
  }
164
- function y(i) {
165
- var c = arguments[0], r, l = C, e = i.Children, a = i.children, t = i.getI18nText, o = i.ghost;
166
- return r = p(i.styles), /* @__PURE__ */ n.createElement(l, r.cn("SClose", f({}, m({
167
- use: "tertiary",
168
- size: "l",
169
- theme: o ? "invert" : "muted",
170
- "aria-label": t("close")
171
- }, c))), a ? /* @__PURE__ */ n.createElement(e, r.cn("Children", {})) : /* @__PURE__ */ n.createElement(C.Addon, {
186
+ function Close(props) {
187
+ var _ref4 = arguments[0], _ref8;
188
+ var SClose = Button;
189
+ var Children = props.Children, hasChildren = props.children, getI18nText = props.getI18nText, ghost = props.ghost;
190
+ return _ref8 = sstyled(props.styles), /* @__PURE__ */ React.createElement(SClose, _ref8.cn("SClose", _objectSpread({}, assignProps({
191
+ "use": "tertiary",
192
+ "size": "l",
193
+ "theme": ghost ? "invert" : "muted",
194
+ "aria-label": getI18nText("close")
195
+ }, _ref4))), hasChildren ? /* @__PURE__ */ React.createElement(Children, _ref8.cn("Children", {})) : /* @__PURE__ */ React.createElement(Button.Addon, {
172
196
  ml: "7px",
173
197
  mr: "7px"
174
- }, /* @__PURE__ */ n.createElement(R, r.cn("CloseIcon", {
175
- title: t("close")
198
+ }, /* @__PURE__ */ React.createElement(CloseIcon, _ref8.cn("CloseIcon", {
199
+ "title": getI18nText("close")
176
200
  }))));
177
201
  }
178
- y.enhance = [H()];
179
- function X(i) {
180
- var c = arguments[0], r, l = i.setHasTitle, e = i.styles, a = i.color, t = F, o = L();
181
- return n.useEffect(function() {
182
- return l();
183
- }), r = p(e), /* @__PURE__ */ n.createElement(t, r.cn("STitle", f({}, m({
184
- tag: "h2",
185
- "use:color": o(a)
186
- }, c))));
202
+ function Title(props) {
203
+ var _ref5 = arguments[0], _ref9;
204
+ var setHasTitle = props.setHasTitle, styles = props.styles, color = props.color;
205
+ var STitle = Text;
206
+ var resolveColor = useColorResolver();
207
+ React.useEffect(function() {
208
+ return setHasTitle();
209
+ });
210
+ return _ref9 = sstyled(styles), /* @__PURE__ */ React.createElement(STitle, _ref9.cn("STitle", _objectSpread({}, assignProps({
211
+ "tag": "h2",
212
+ "use:color": resolveColor(color)
213
+ }, _ref5))));
187
214
  }
188
- var v = E(u, {
189
- Window: Q,
190
- Overlay: U,
191
- Close: y,
192
- Title: X
215
+ var Modal = createComponent(ModalRoot, {
216
+ Window,
217
+ Overlay,
218
+ Close,
219
+ Title
193
220
  });
194
221
  export {
195
- v as default
222
+ Modal as default
196
223
  };
package/lib/esm/index.mjs CHANGED
@@ -1,4 +1,4 @@
1
- import { default as o } from "./Modal.mjs";
1
+ import { default as default2 } from "./Modal.mjs";
2
2
  export {
3
- o as default
3
+ default2 as default
4
4
  };
@@ -1,33 +1,33 @@
1
- import r from "./de.json.mjs";
2
- import o from "./en.json.mjs";
3
- import m from "./es.json.mjs";
4
- import t from "./fr.json.mjs";
5
- import i from "./it.json.mjs";
6
- import p from "./ja.json.mjs";
7
- import f from "./ko.json.mjs";
8
- import e from "./nl.json.mjs";
9
- import s from "./pt.json.mjs";
10
- import a from "./tr.json.mjs";
11
- import l from "./vi.json.mjs";
12
- import v from "./zh.json.mjs";
13
- import d from "./pl.json.mjs";
14
- import n from "./sv.json.mjs";
15
- var B = {
16
- de: r,
17
- en: o,
18
- es: m,
19
- fr: t,
20
- it: i,
21
- ja: p,
22
- ko: f,
23
- nl: e,
24
- pt: s,
25
- tr: a,
26
- vi: l,
27
- zh: v,
28
- pl: d,
29
- sv: n
1
+ import de from "./de.json.mjs";
2
+ import en from "./en.json.mjs";
3
+ import es from "./es.json.mjs";
4
+ import fr from "./fr.json.mjs";
5
+ import it from "./it.json.mjs";
6
+ import ja from "./ja.json.mjs";
7
+ import ko from "./ko.json.mjs";
8
+ import nl from "./nl.json.mjs";
9
+ import pt from "./pt.json.mjs";
10
+ import tr from "./tr.json.mjs";
11
+ import vi from "./vi.json.mjs";
12
+ import zh from "./zh.json.mjs";
13
+ import pl from "./pl.json.mjs";
14
+ import sv from "./sv.json.mjs";
15
+ var localizedMessages = {
16
+ de,
17
+ en,
18
+ es,
19
+ fr,
20
+ it,
21
+ ja,
22
+ ko,
23
+ nl,
24
+ pt,
25
+ tr,
26
+ vi,
27
+ zh,
28
+ pl,
29
+ sv
30
30
  };
31
31
  export {
32
- B as localizedMessages
32
+ localizedMessages
33
33
  };
@@ -1,9 +1,11 @@
1
- const e = "Dialogfenster", t = "Schließen", l = {
2
- title: e,
3
- close: t
1
+ const title = "Dialogfenster";
2
+ const close = "Schließen";
3
+ const de = {
4
+ title,
5
+ close
4
6
  };
5
7
  export {
6
- t as close,
7
- l as default,
8
- e as title
8
+ close,
9
+ de as default,
10
+ title
9
11
  };
@@ -1,9 +1,11 @@
1
- const o = "Modal window", t = "Close", e = {
2
- title: o,
3
- close: t
1
+ const title = "Modal window";
2
+ const close = "Close";
3
+ const en = {
4
+ title,
5
+ close
4
6
  };
5
7
  export {
6
- t as close,
7
- e as default,
8
- o as title
8
+ close,
9
+ en as default,
10
+ title
9
11
  };
@@ -1,9 +1,11 @@
1
- const t = "Ventana modal", e = "Cerrar", o = {
2
- title: t,
3
- close: e
1
+ const title = "Ventana modal";
2
+ const close = "Cerrar";
3
+ const es = {
4
+ title,
5
+ close
4
6
  };
5
7
  export {
6
- e as close,
7
- o as default,
8
- t as title
8
+ close,
9
+ es as default,
10
+ title
9
11
  };
@@ -1,9 +1,11 @@
1
- const e = "Fenêtre modale", t = "Fermer", o = {
2
- title: e,
3
- close: t
1
+ const title = "Fenêtre modale";
2
+ const close = "Fermer";
3
+ const fr = {
4
+ title,
5
+ close
4
6
  };
5
7
  export {
6
- t as close,
7
- o as default,
8
- e as title
8
+ close,
9
+ fr as default,
10
+ title
9
11
  };
@@ -1,9 +1,11 @@
1
- const t = "Finestra modale", e = "Chiudi", o = {
2
- title: t,
3
- close: e
1
+ const title = "Finestra modale";
2
+ const close = "Chiudi";
3
+ const it = {
4
+ title,
5
+ close
4
6
  };
5
7
  export {
6
- e as close,
7
- o as default,
8
- t as title
8
+ close,
9
+ it as default,
10
+ title
9
11
  };
@@ -1,9 +1,11 @@
1
- const t = "モーダルウィンドウ", e = "閉じる", o = {
2
- title: t,
3
- close: e
1
+ const title = "モーダルウィンドウ";
2
+ const close = "閉じる";
3
+ const ja = {
4
+ title,
5
+ close
4
6
  };
5
7
  export {
6
- e as close,
7
- o as default,
8
- t as title
8
+ close,
9
+ ja as default,
10
+ title
9
11
  };
@@ -1,9 +1,11 @@
1
- const t = "대화상자 창", o = "닫기", e = {
2
- title: t,
3
- close: o
1
+ const title = "대화상자 창";
2
+ const close = "닫기";
3
+ const ko = {
4
+ title,
5
+ close
4
6
  };
5
7
  export {
6
- o as close,
7
- e as default,
8
- t as title
8
+ close,
9
+ ko as default,
10
+ title
9
11
  };
@@ -1,9 +1,11 @@
1
- const t = "Modaal venster", e = "Sluiten", l = {
2
- title: t,
3
- close: e
1
+ const title = "Modaal venster";
2
+ const close = "Sluiten";
3
+ const nl = {
4
+ title,
5
+ close
4
6
  };
5
7
  export {
6
- e as close,
7
- l as default,
8
- t as title
8
+ close,
9
+ nl as default,
10
+ title
9
11
  };
@@ -1,9 +1,11 @@
1
- const t = "Okno modalne", o = "Zamknij", e = {
2
- title: t,
3
- close: o
1
+ const title = "Okno modalne";
2
+ const close = "Zamknij";
3
+ const pl = {
4
+ title,
5
+ close
4
6
  };
5
7
  export {
6
- o as close,
7
- e as default,
8
- t as title
8
+ close,
9
+ pl as default,
10
+ title
9
11
  };
@@ -1,9 +1,11 @@
1
- const t = "Janela modal", e = "Fechar", l = {
2
- title: t,
3
- close: e
1
+ const title = "Janela modal";
2
+ const close = "Fechar";
3
+ const pt = {
4
+ title,
5
+ close
4
6
  };
5
7
  export {
6
- e as close,
7
- l as default,
8
- t as title
8
+ close,
9
+ pt as default,
10
+ title
9
11
  };
@@ -1,9 +1,11 @@
1
- const t = "Modalt fönster", s = "Stäng", e = {
2
- title: t,
3
- close: s
1
+ const title = "Modalt fönster";
2
+ const close = "Stäng";
3
+ const sv = {
4
+ title,
5
+ close
4
6
  };
5
7
  export {
6
- s as close,
7
- e as default,
8
- t as title
8
+ close,
9
+ sv as default,
10
+ title
9
11
  };
@@ -1,9 +1,11 @@
1
- const t = "Modal pencere", e = "Kapat", o = {
2
- title: t,
3
- close: e
1
+ const title = "Modal pencere";
2
+ const close = "Kapat";
3
+ const tr = {
4
+ title,
5
+ close
4
6
  };
5
7
  export {
6
- e as close,
7
- o as default,
8
- t as title
8
+ close,
9
+ tr as default,
10
+ title
9
11
  };
@@ -1,9 +1,11 @@
1
- const t = "Cửa sổ phương thức", s = "Đóng", c = {
2
- title: t,
3
- close: s
1
+ const title = "Cửa sổ phương thức";
2
+ const close = "Đóng";
3
+ const vi = {
4
+ title,
5
+ close
4
6
  };
5
7
  export {
6
- s as close,
7
- c as default,
8
- t as title
8
+ close,
9
+ vi as default,
10
+ title
9
11
  };
@@ -1,9 +1,11 @@
1
- const t = "模态窗口", e = "关闭", o = {
2
- title: t,
3
- close: e
1
+ const title = "模态窗口";
2
+ const close = "关闭";
3
+ const zh = {
4
+ title,
5
+ close
4
6
  };
5
7
  export {
6
- e as close,
7
- o as default,
8
- t as title
8
+ close,
9
+ zh as default,
10
+ title
9
11
  };
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@semcore/modal",
3
3
  "description": "Semrush Modal Component",
4
- "version": "4.55.0",
4
+ "version": "16.0.0-prerelease.11",
5
5
  "main": "lib/cjs/index.js",
6
6
  "module": "lib/es6/index.js",
7
7
  "typings": "lib/types/index.d.ts",
@@ -14,19 +14,16 @@
14
14
  "types": "./lib/types/index.d.ts"
15
15
  },
16
16
  "dependencies": {
17
- "@semcore/button": "5.43.0",
18
- "@semcore/animation": "2.41.1",
19
- "@semcore/flex-box": "5.41.1",
20
- "@semcore/icon": "4.60.1",
21
- "@semcore/outside-click": "3.39.1",
22
- "@semcore/portal": "3.41.1",
23
- "@semcore/typography": "5.52.1",
24
- "@semcore/utils": "4.48.1"
17
+ "@semcore/button": "16.0.0-prerelease.11",
18
+ "@semcore/icon": "16.0.0-prerelease.11",
19
+ "@semcore/typography": "16.0.0-prerelease.11",
20
+ "@semcore/animation": "16.0.0-prerelease.11",
21
+ "@semcore/flex-box": "16.0.0-prerelease.11",
22
+ "@semcore/outside-click": "16.0.0-prerelease.11",
23
+ "@semcore/portal": "16.0.0-prerelease.11"
25
24
  },
26
25
  "peerDependencies": {
27
- "@semcore/core": "^2.17.5",
28
- "react": "16.8 - 18",
29
- "react-dom": "16.8 - 18"
26
+ "@semcore/base-components": "^16.0.0-prerelease.11"
30
27
  },
31
28
  "repository": {
32
29
  "type": "git",