@semcore/modal 3.8.1 → 3.8.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -2,6 +2,12 @@
2
2
 
3
3
  CHANGELOG.md standards are inspired by [keepachangelog.com](https://keepachangelog.com/en/1.0.0/).
4
4
 
5
+ ## [3.8.2] - 2023-06-27
6
+
7
+ ### Changed
8
+
9
+ - Version patch update due to children dependencies update (`@semcore/animation` [1.10.19 ~> 1.10.20], `@semcore/flex-box` [4.7.31 ~> 4.7.32], `@semcore/icon` [3.15.2 ~> 3.15.3], `@semcore/utils` [3.53.4 ~> 3.54.0]).
10
+
5
11
  ## [3.8.1] - 2023-06-14
6
12
 
7
13
  ### Changed
package/lib/cjs/Modal.js CHANGED
@@ -32,12 +32,12 @@ var _useCssVariable = require("@semcore/utils/lib/useCssVariable");
32
32
  var _useFocusLock = require("@semcore/utils/lib/use/useFocusLock");
33
33
  var _ThemeProvider = require("@semcore/utils/lib/ThemeProvider");
34
34
  /*__reshadow-styles__:"./style/modal.shadow.css"*/
35
- var style = ( /*__reshadow_css_start__*/_core.sstyled.insert( /*__inner_css_start__*/".___SWindow_1axoi_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_1axoi_gg_:focus{outline:0}.___SOverlay_1axoi_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;z-index:var(--intergalactic-z-index-modal, 600);-webkit-overflow-scrolling:touch}.___SOverlay_1axoi_gg_ .___SOverlay_1axoi_gg_{background:var(--intergalactic-overlay-secondary, rgba(25, 27, 35, 0.4))}.___SClose_1axoi_gg_{display:inline-flex;position:absolute;right:0;top:0;padding:var(--intergalactic-spacing-3x, 12px);color:var(--intergalactic-icon-secondary-neutral, #a9abb6);cursor:pointer;z-index:1;border:0;background:0 0;outline:0}@media (hover:hover){.___SClose_1axoi_gg_:hover{color:var(--intergalactic-icon-secondary-neutral-hover-active, #8a8e9b)}}.___SClose_1axoi_gg_.__keyboardFocused_1axoi_gg_{box-shadow:var(--intergalactic-keyboard-focus, 0px 0px 0px 3px rgba(0, 143, 248, 0.5))}.___STitle_1axoi_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)}@media (max-width:767px){.___SWindow_1axoi_gg_{min-width:60%}.___SOverlay_1axoi_gg_{padding:var(--intergalactic-spacing-3x, 12px)}}" /*__inner_css_end__*/, "1axoi_gg_") /*__reshadow_css_end__*/, {
36
- "__SWindow": "___SWindow_1axoi_gg_",
37
- "__SOverlay": "___SOverlay_1axoi_gg_",
38
- "__SClose": "___SClose_1axoi_gg_",
39
- "_keyboardFocused": "__keyboardFocused_1axoi_gg_",
40
- "__STitle": "___STitle_1axoi_gg_"
35
+ var style = ( /*__reshadow_css_start__*/_core.sstyled.insert( /*__inner_css_start__*/".___SWindow_9rb45_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_9rb45_gg_:focus{outline:0}.___SOverlay_9rb45_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;z-index:var(--intergalactic-z-index-modal, 600);-webkit-overflow-scrolling:touch}.___SOverlay_9rb45_gg_ .___SOverlay_9rb45_gg_{background:var(--intergalactic-overlay-secondary, rgba(25, 27, 35, 0.4))}.___SClose_9rb45_gg_{display:inline-flex;position:absolute;right:0;top:0;padding:var(--intergalactic-spacing-3x, 12px);color:var(--intergalactic-icon-secondary-neutral, #a9abb6);cursor:pointer;z-index:1;border:0;background:0 0;outline:0}@media (hover:hover){.___SClose_9rb45_gg_:hover{color:var(--intergalactic-icon-secondary-neutral-hover-active, #8a8e9b)}}.___SClose_9rb45_gg_.__keyboardFocused_9rb45_gg_{box-shadow:var(--intergalactic-keyboard-focus, 0px 0px 0px 3px rgba(0, 143, 248, 0.5))}.___STitle_9rb45_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)}@media (max-width:767px){.___SWindow_9rb45_gg_{min-width:60%}.___SOverlay_9rb45_gg_{padding:var(--intergalactic-spacing-3x, 12px)}}" /*__inner_css_end__*/, "9rb45_gg_") /*__reshadow_css_end__*/, {
36
+ "__SWindow": "___SWindow_9rb45_gg_",
37
+ "__SOverlay": "___SOverlay_9rb45_gg_",
38
+ "__SClose": "___SClose_9rb45_gg_",
39
+ "_keyboardFocused": "__keyboardFocused_9rb45_gg_",
40
+ "__STitle": "___STitle_9rb45_gg_"
41
41
  });
42
42
  var ModalRoot = /*#__PURE__*/function (_Component) {
43
43
  (0, _inherits2["default"])(ModalRoot, _Component);
@@ -169,9 +169,9 @@ function Window(props) {
169
169
  (0, _useFocusLock.useFocusLock)(windowRef, true, 'auto', !visible);
170
170
  return _ref6 = (0, _core.sstyled)(styles), /*#__PURE__*/_react["default"].createElement(SWindow, _ref6.cn("SWindow", (0, _objectSpread2["default"])({}, (0, _core.assignProps)({
171
171
  "initialAnimation": true,
172
- "slideOrigin": "top",
172
+ "slideOrigin": 'top',
173
173
  "visible": visible,
174
- "role": "dialog",
174
+ "role": 'dialog',
175
175
  "aria-modal": true,
176
176
  "duration": duration,
177
177
  "ref": windowRef
@@ -205,7 +205,7 @@ function Close(props) {
205
205
  hasChildren = props.children,
206
206
  getI18nText = props.getI18nText;
207
207
  return _ref8 = (0, _core.sstyled)(props.styles), /*#__PURE__*/_react["default"].createElement(SClose, _ref8.cn("SClose", (0, _objectSpread2["default"])({}, (0, _core.assignProps)({
208
- "tag": "button",
208
+ "tag": 'button',
209
209
  "tabIndex": 0,
210
210
  "aria-label": getI18nText('close')
211
211
  }, _ref4))), hasChildren ? /*#__PURE__*/_react["default"].createElement(Children, _ref8.cn("Children", {})) : /*#__PURE__*/_react["default"].createElement(_l["default"], _ref8.cn("CloseIcon", {
@@ -223,7 +223,7 @@ function Title(props) {
223
223
  return setHasTitle();
224
224
  });
225
225
  return _ref9 = (0, _core.sstyled)(styles), /*#__PURE__*/_react["default"].createElement(STitle, _ref9.cn("STitle", (0, _objectSpread2["default"])({}, (0, _core.assignProps)({
226
- "tag": "h2"
226
+ "tag": 'h2'
227
227
  }, _ref5))));
228
228
  }
229
229
  var Modal = (0, _core["default"])(ModalRoot, {
@@ -1 +1 @@
1
- {"version":3,"file":"Modal.js","names":["_core","_interopRequireWildcard","require","_react","_animation","_portal","_flexBox","_outsideClick","_interopRequireDefault","_l","_fire","_usePreventScroll","_findComponent","_keyboardFocusEnhance","_intergalacticDynamicLocales","_i18nEnhance","_typography","_uniqueID","_useCssVariable","_useFocusLock","_ThemeProvider","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","onClick","handleIconCloseClick","getTitleProps","_this2","setHasTitle","setState","id","render","_ref","_this$asProps3","Children","disablePortal","advanceMode","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","useRef","useFocusLock","cn","_objectSpread2","PortalProvider","Close","_ref3","_ref7","SOverlay","FadeInOut","overlayRef","usePreventScroll","useContextTheme","_ref4","_ref8","SClose","Box","hasChildren","children","enhance","keyboardFocusEnhance","Title","_ref5","_ref9","STitle","Text","useEffect","createComponent","_default","exports"],"sources":["../../src/Modal.jsx"],"sourcesContent":["import React, { useRef, useEffect } 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';\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 } = this.asProps;\n\n return {\n onClick: this.handleIconCloseClick,\n getI18nText,\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 } = this.asProps;\n\n const advanceMode = isAdvanceMode(Children, [\n Modal.Overlay.displayName,\n Modal.Window.displayName,\n ]);\n\n return (\n <Portal disablePortal={disablePortal}>\n {advanceMode ? (\n <Children />\n ) : (\n <Modal.Overlay>\n <Root render={Modal.Window} />\n </Modal.Overlay>\n )}\n </Portal>\n );\n }\n}\n\nfunction Window(props) {\n const SWindow = Root;\n const { Children, styles, visible, closable, duration } = props;\n const windowRef = useRef(null);\n\n useFocusLock(windowRef, true, 'auto', !visible);\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 <PortalProvider value={windowRef}>\n {closable && <Modal.Close />}\n <Children />\n </PortalProvider>\n </SWindow>,\n );\n}\n\nfunction Overlay(props) {\n const SOverlay = Root;\n const { Children, styles, onOutsideClick, visible } = props;\n const overlayRef = useRef(null);\n usePreventScroll(visible, props.disablePreventScroll);\n useContextTheme(overlayRef, visible);\n\n return sstyled(styles)(\n <SOverlay render={FadeInOut} ref={overlayRef}>\n <OutsideClick root={overlayRef} onOutsideClick={onOutsideClick}>\n <Children />\n </OutsideClick>\n </SOverlay>,\n );\n}\n\nfunction Close(props) {\n const SClose = Root;\n 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 } = props;\n const STitle = Root;\n\n useEffect(() => setHasTitle());\n\n return sstyled(styles)(<STitle render={Text} tag=\"h2\" />);\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","_animation","_portal","_flexBox","_outsideClick","_interopRequireDefault","_l","_fire","_usePreventScroll","_findComponent","_keyboardFocusEnhance","_intergalacticDynamicLocales","_i18nEnhance","_typography","_uniqueID","_useCssVariable","_useFocusLock","_ThemeProvider","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","onClick","handleIconCloseClick","getTitleProps","_this2","setHasTitle","setState","id","render","_ref","_this$asProps3","Children","disablePortal","advanceMode","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","useRef","useFocusLock","cn","_objectSpread2","PortalProvider","Close","_ref3","_ref7","SOverlay","FadeInOut","overlayRef","usePreventScroll","useContextTheme","_ref4","_ref8","SClose","Box","hasChildren","children","enhance","keyboardFocusEnhance","Title","_ref5","_ref9","STitle","Text","useEffect","createComponent","_default","exports"],"sources":["../../src/Modal.jsx"],"sourcesContent":["import React, { useRef, useEffect } 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';\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 } = this.asProps;\n\n return {\n onClick: this.handleIconCloseClick,\n getI18nText,\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 } = this.asProps;\n\n const advanceMode = isAdvanceMode(Children, [\n Modal.Overlay.displayName,\n Modal.Window.displayName,\n ]);\n\n return (\n <Portal disablePortal={disablePortal}>\n {advanceMode ? (\n <Children />\n ) : (\n <Modal.Overlay>\n <Root render={Modal.Window} />\n </Modal.Overlay>\n )}\n </Portal>\n );\n }\n}\n\nfunction Window(props) {\n const SWindow = Root;\n const { Children, styles, visible, closable, duration } = props;\n const windowRef = useRef(null);\n\n useFocusLock(windowRef, true, 'auto', !visible);\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 <PortalProvider value={windowRef}>\n {closable && <Modal.Close />}\n <Children />\n </PortalProvider>\n </SWindow>,\n );\n}\n\nfunction Overlay(props) {\n const SOverlay = Root;\n const { Children, styles, onOutsideClick, visible } = props;\n const overlayRef = useRef(null);\n usePreventScroll(visible, props.disablePreventScroll);\n useContextTheme(overlayRef, visible);\n\n return sstyled(styles)(\n <SOverlay render={FadeInOut} ref={overlayRef}>\n <OutsideClick root={overlayRef} onOutsideClick={onOutsideClick}>\n <Children />\n </OutsideClick>\n </SOverlay>,\n );\n}\n\nfunction Close(props) {\n const SClose = Root;\n 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 } = props;\n const STitle = Root;\n\n useEffect(() => setHasTitle());\n\n return sstyled(styles)(<STitle render={Text} tag='h2' />);\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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"}
@@ -3,21 +3,20 @@
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
4
  var _regeneratorRuntime2 = _interopRequireDefault(require("@babel/runtime/helpers/regeneratorRuntime"));
5
5
  var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
6
- var _test = require("@playwright/test");
7
- var _playwright = require("@guidepup/playwright");
8
- var _e2eStand = require("@semcore/jest-preset-ui/e2e-stand");
9
- var _path = require("path");
6
+ var _playwright = require("@semcore/testing-utils/playwright");
7
+ var _playwright2 = require("@guidepup/playwright");
8
+ var _e2eStand = require("@semcore/testing-utils/e2e-stand");
10
9
  var _promises = require("fs/promises");
11
- var _voReporter = require("@semcore/jest-preset-ui/vo-reporter");
12
- (0, _playwright.voTest)('Users can interact with Modal via VoiceOver', /*#__PURE__*/function () {
10
+ var _voReporter = require("@semcore/testing-utils/vo-reporter");
11
+ (0, _playwright2.voTest)('Users can interact with Modal via VoiceOver', /*#__PURE__*/function () {
13
12
  var _ref2 = (0, _asyncToGenerator2["default"])( /*#__PURE__*/(0, _regeneratorRuntime2["default"])().mark(function _callee(_ref) {
14
13
  var page, pureVoiceOver, standPath, reportPath, htmlContent, _yield$makeVoiceOverR, voiceOver, getReport, report;
15
14
  return (0, _regeneratorRuntime2["default"])().wrap(function _callee$(_context) {
16
15
  while (1) switch (_context.prev = _context.next) {
17
16
  case 0:
18
17
  page = _ref.page, pureVoiceOver = _ref.voiceOver;
19
- standPath = (0, _path.resolve)(__dirname, '../../../website/docs/components/modal/examples/modal.tsx');
20
- reportPath = (0, _path.resolve)(__dirname, '../../../website/docs/components/modal/modal-a11y-report.md');
18
+ standPath = 'website/docs/components/modal/examples/modal.tsx';
19
+ reportPath = 'website/docs/components/modal/modal-a11y-report.md';
21
20
  _context.next = 5;
22
21
  return (0, _e2eStand.e2eStandToHtml)(standPath, 'en');
23
22
  case 5:
@@ -34,7 +33,7 @@ var _voReporter = require("@semcore/jest-preset-ui/vo-reporter");
34
33
  _context.next = 15;
35
34
  return voiceOver.interact();
36
35
  case 15:
37
- _context.t0 = _test.expect;
36
+ _context.t0 = _playwright.expect;
38
37
  _context.next = 18;
39
38
  return voiceOver.itemText();
40
39
  case 18:
@@ -43,7 +42,7 @@ var _voReporter = require("@semcore/jest-preset-ui/vo-reporter");
43
42
  _context.next = 22;
44
43
  return voiceOver.act();
45
44
  case 22:
46
- _context.t2 = _test.expect;
45
+ _context.t2 = _playwright.expect;
47
46
  _context.next = 25;
48
47
  return voiceOver.lastSpokenPhrase();
49
48
  case 25:
@@ -52,7 +51,7 @@ var _voReporter = require("@semcore/jest-preset-ui/vo-reporter");
52
51
  _context.next = 29;
53
52
  return voiceOver.next();
54
53
  case 29:
55
- _context.t4 = _test.expect;
54
+ _context.t4 = _playwright.expect;
56
55
  _context.next = 32;
57
56
  return voiceOver.itemText();
58
57
  case 32:
@@ -64,7 +63,7 @@ var _voReporter = require("@semcore/jest-preset-ui/vo-reporter");
64
63
  _context.next = 38;
65
64
  return voiceOver.next();
66
65
  case 38:
67
- _context.t6 = _test.expect;
66
+ _context.t6 = _playwright.expect;
68
67
  _context.next = 41;
69
68
  return voiceOver.itemText();
70
69
  case 41:
@@ -76,7 +75,7 @@ var _voReporter = require("@semcore/jest-preset-ui/vo-reporter");
76
75
  _context.next = 47;
77
76
  return voiceOver.act();
78
77
  case 47:
79
- _context.t8 = _test.expect;
78
+ _context.t8 = _playwright.expect;
80
79
  _context.next = 50;
81
80
  return voiceOver.itemText();
82
81
  case 50:
@@ -1 +1 @@
1
- {"version":3,"file":"modal.vo-test.js","names":["_test","require","_playwright","_e2eStand","_path","_promises","_voReporter","test","_ref2","_asyncToGenerator2","_regeneratorRuntime2","mark","_callee","_ref","page","pureVoiceOver","standPath","reportPath","htmlContent","_yield$makeVoiceOverR","voiceOver","getReport","report","wrap","_callee$","_context","prev","next","resolvePath","__dirname","e2eStandToHtml","sent","setContent","makeVoiceOverReporter","interact","t0","expect","itemText","t1","toBe","act","t2","lastSpokenPhrase","t3","t4","t5","t6","t7","t8","t9","getReportHeader","t10","t11","t12","writeFile","stop","_x","apply","arguments"],"sources":["../../src/modal.vo-test.ts"],"sourcesContent":["import { expect } from '@playwright/test';\nimport { voTest as test } from '@guidepup/playwright';\nimport { e2eStandToHtml } from '@semcore/jest-preset-ui/e2e-stand';\nimport { resolve as resolvePath } from 'path';\nimport { writeFile } from 'fs/promises';\nimport { getReportHeader, makeVoiceOverReporter } from '@semcore/jest-preset-ui/vo-reporter';\n\ntest('Users can interact with Modal via VoiceOver', async ({ page, voiceOver: pureVoiceOver }) => {\n const standPath = resolvePath(\n __dirname,\n '../../../website/docs/components/modal/examples/modal.tsx',\n );\n const reportPath = resolvePath(\n __dirname,\n '../../../website/docs/components/modal/modal-a11y-report.md',\n );\n const htmlContent = await e2eStandToHtml(standPath, 'en');\n\n await page.setContent(htmlContent);\n const { voiceOver, getReport } = await makeVoiceOverReporter(pureVoiceOver);\n await voiceOver.interact();\n\n expect(await voiceOver.itemText()).toBe('Open modal button');\n await voiceOver.act();\n expect(await voiceOver.lastSpokenPhrase()).toBe(\n 'Do you want to save your changes? web dialog with 5 items Close button',\n );\n await voiceOver.next();\n expect(await voiceOver.itemText()).toBe('Do you want to save your changes? heading level 2');\n await voiceOver.next();\n await voiceOver.next();\n expect(await voiceOver.itemText()).toBe('Save changes button');\n await voiceOver.act();\n\n await voiceOver.act();\n expect(await voiceOver.itemText()).toBe('Open modal button');\n\n const report = (await getReportHeader()) + '\\n\\n' + (await getReport(standPath));\n\n await writeFile(reportPath, report);\n});\n"],"mappings":";;;;;AAAA,IAAAA,KAAA,GAAAC,OAAA;AACA,IAAAC,WAAA,GAAAD,OAAA;AACA,IAAAE,SAAA,GAAAF,OAAA;AACA,IAAAG,KAAA,GAAAH,OAAA;AACA,IAAAI,SAAA,GAAAJ,OAAA;AACA,IAAAK,WAAA,GAAAL,OAAA;AAEA,IAAAM,kBAAI,EAAC,6CAA6C;EAAA,IAAAC,KAAA,OAAAC,kBAAA,+BAAAC,oBAAA,eAAAC,IAAA,CAAE,SAAAC,QAAAC,IAAA;IAAA,IAAAC,IAAA,EAAAC,aAAA,EAAAC,SAAA,EAAAC,UAAA,EAAAC,WAAA,EAAAC,qBAAA,EAAAC,SAAA,EAAAC,SAAA,EAAAC,MAAA;IAAA,WAAAZ,oBAAA,eAAAa,IAAA,UAAAC,SAAAC,QAAA;MAAA,kBAAAA,QAAA,CAAAC,IAAA,GAAAD,QAAA,CAAAE,IAAA;QAAA;UAASb,IAAI,GAAAD,IAAA,CAAJC,IAAI,EAAaC,aAAa,GAAAF,IAAA,CAAxBO,SAAS;UACpEJ,SAAS,GAAG,IAAAY,aAAW,EAC3BC,SAAS,EACT,2DAA2D,CAC5D;UACKZ,UAAU,GAAG,IAAAW,aAAW,EAC5BC,SAAS,EACT,6DAA6D,CAC9D;UAAAJ,QAAA,CAAAE,IAAA;UAAA,OACyB,IAAAG,wBAAc,EAACd,SAAS,EAAE,IAAI,CAAC;QAAA;UAAnDE,WAAW,GAAAO,QAAA,CAAAM,IAAA;UAAAN,QAAA,CAAAE,IAAA;UAAA,OAEXb,IAAI,CAACkB,UAAU,CAACd,WAAW,CAAC;QAAA;UAAAO,QAAA,CAAAE,IAAA;UAAA,OACK,IAAAM,iCAAqB,EAAClB,aAAa,CAAC;QAAA;UAAAI,qBAAA,GAAAM,QAAA,CAAAM,IAAA;UAAnEX,SAAS,GAAAD,qBAAA,CAATC,SAAS;UAAEC,SAAS,GAAAF,qBAAA,CAATE,SAAS;UAAAI,QAAA,CAAAE,IAAA;UAAA,OACtBP,SAAS,CAACc,QAAQ,EAAE;QAAA;UAAAT,QAAA,CAAAU,EAAA,GAE1BC,YAAM;UAAAX,QAAA,CAAAE,IAAA;UAAA,OAAOP,SAAS,CAACiB,QAAQ,EAAE;QAAA;UAAAZ,QAAA,CAAAa,EAAA,GAAAb,QAAA,CAAAM,IAAA;UAAA,IAAAN,QAAA,CAAAU,EAAA,EAAAV,QAAA,CAAAa,EAAA,EAAEC,IAAI,CAAC,mBAAmB;UAAAd,QAAA,CAAAE,IAAA;UAAA,OACrDP,SAAS,CAACoB,GAAG,EAAE;QAAA;UAAAf,QAAA,CAAAgB,EAAA,GACrBL,YAAM;UAAAX,QAAA,CAAAE,IAAA;UAAA,OAAOP,SAAS,CAACsB,gBAAgB,EAAE;QAAA;UAAAjB,QAAA,CAAAkB,EAAA,GAAAlB,QAAA,CAAAM,IAAA;UAAA,IAAAN,QAAA,CAAAgB,EAAA,EAAAhB,QAAA,CAAAkB,EAAA,EAAEJ,IAAI,CAC7C,wEAAwE;UAAAd,QAAA,CAAAE,IAAA;UAAA,OAEpEP,SAAS,CAACO,IAAI,EAAE;QAAA;UAAAF,QAAA,CAAAmB,EAAA,GACtBR,YAAM;UAAAX,QAAA,CAAAE,IAAA;UAAA,OAAOP,SAAS,CAACiB,QAAQ,EAAE;QAAA;UAAAZ,QAAA,CAAAoB,EAAA,GAAApB,QAAA,CAAAM,IAAA;UAAA,IAAAN,QAAA,CAAAmB,EAAA,EAAAnB,QAAA,CAAAoB,EAAA,EAAEN,IAAI,CAAC,mDAAmD;UAAAd,QAAA,CAAAE,IAAA;UAAA,OACrFP,SAAS,CAACO,IAAI,EAAE;QAAA;UAAAF,QAAA,CAAAE,IAAA;UAAA,OAChBP,SAAS,CAACO,IAAI,EAAE;QAAA;UAAAF,QAAA,CAAAqB,EAAA,GACtBV,YAAM;UAAAX,QAAA,CAAAE,IAAA;UAAA,OAAOP,SAAS,CAACiB,QAAQ,EAAE;QAAA;UAAAZ,QAAA,CAAAsB,EAAA,GAAAtB,QAAA,CAAAM,IAAA;UAAA,IAAAN,QAAA,CAAAqB,EAAA,EAAArB,QAAA,CAAAsB,EAAA,EAAER,IAAI,CAAC,qBAAqB;UAAAd,QAAA,CAAAE,IAAA;UAAA,OACvDP,SAAS,CAACoB,GAAG,EAAE;QAAA;UAAAf,QAAA,CAAAE,IAAA;UAAA,OAEfP,SAAS,CAACoB,GAAG,EAAE;QAAA;UAAAf,QAAA,CAAAuB,EAAA,GACrBZ,YAAM;UAAAX,QAAA,CAAAE,IAAA;UAAA,OAAOP,SAAS,CAACiB,QAAQ,EAAE;QAAA;UAAAZ,QAAA,CAAAwB,EAAA,GAAAxB,QAAA,CAAAM,IAAA;UAAA,IAAAN,QAAA,CAAAuB,EAAA,EAAAvB,QAAA,CAAAwB,EAAA,EAAEV,IAAI,CAAC,mBAAmB;UAAAd,QAAA,CAAAE,IAAA;UAAA,OAErC,IAAAuB,2BAAe,GAAE;QAAA;UAAAzB,QAAA,CAAA0B,GAAA,GAAA1B,QAAA,CAAAM,IAAA;UAAAN,QAAA,CAAA2B,GAAA,GAAA3B,QAAA,CAAA0B,GAAA,GAAI,MAAM;UAAA1B,QAAA,CAAAE,IAAA;UAAA,OAAUN,SAAS,CAACL,SAAS,CAAC;QAAA;UAAAS,QAAA,CAAA4B,GAAA,GAAA5B,QAAA,CAAAM,IAAA;UAAzET,MAAM,GAAAG,QAAA,CAAA2B,GAAA,GAAA3B,QAAA,CAAA4B,GAAA;UAAA5B,QAAA,CAAAE,IAAA;UAAA,OAEN,IAAA2B,mBAAS,EAACrC,UAAU,EAAEK,MAAM,CAAC;QAAA;QAAA;UAAA,OAAAG,QAAA,CAAA8B,IAAA;MAAA;IAAA,GAAA3C,OAAA;EAAA,CACpC;EAAA,iBAAA4C,EAAA;IAAA,OAAAhD,KAAA,CAAAiD,KAAA,OAAAC,SAAA;EAAA;AAAA,IAAC"}
1
+ {"version":3,"file":"modal.vo-test.js","names":["_playwright","require","_playwright2","_e2eStand","_promises","_voReporter","test","_ref2","_asyncToGenerator2","_regeneratorRuntime2","mark","_callee","_ref","page","pureVoiceOver","standPath","reportPath","htmlContent","_yield$makeVoiceOverR","voiceOver","getReport","report","wrap","_callee$","_context","prev","next","e2eStandToHtml","sent","setContent","makeVoiceOverReporter","interact","t0","expect","itemText","t1","toBe","act","t2","lastSpokenPhrase","t3","t4","t5","t6","t7","t8","t9","getReportHeader","t10","t11","t12","writeFile","stop","_x","apply","arguments"],"sources":["../../src/modal.vo-test.ts"],"sourcesContent":["import { expect } from '@semcore/testing-utils/playwright';\nimport { voTest as test } from '@guidepup/playwright';\nimport { e2eStandToHtml } from '@semcore/testing-utils/e2e-stand';\nimport { writeFile } from 'fs/promises';\nimport { getReportHeader, makeVoiceOverReporter } from '@semcore/testing-utils/vo-reporter';\n\ntest('Users can interact with Modal via VoiceOver', async ({ page, voiceOver: pureVoiceOver }) => {\n const standPath = 'website/docs/components/modal/examples/modal.tsx';\n const reportPath = 'website/docs/components/modal/modal-a11y-report.md';\n const htmlContent = await e2eStandToHtml(standPath, 'en');\n\n await page.setContent(htmlContent);\n const { voiceOver, getReport } = await makeVoiceOverReporter(pureVoiceOver);\n await voiceOver.interact();\n\n expect(await voiceOver.itemText()).toBe('Open modal button');\n await voiceOver.act();\n expect(await voiceOver.lastSpokenPhrase()).toBe(\n 'Do you want to save your changes? web dialog with 5 items Close button',\n );\n await voiceOver.next();\n expect(await voiceOver.itemText()).toBe('Do you want to save your changes? heading level 2');\n await voiceOver.next();\n await voiceOver.next();\n expect(await voiceOver.itemText()).toBe('Save changes button');\n await voiceOver.act();\n\n await voiceOver.act();\n expect(await voiceOver.itemText()).toBe('Open modal button');\n\n const report = (await getReportHeader()) + '\\n\\n' + (await getReport(standPath));\n\n await writeFile(reportPath, report);\n});\n"],"mappings":"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"}
package/lib/es6/Modal.js CHANGED
@@ -23,12 +23,12 @@ 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__*/".___SWindow_1axoi_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_1axoi_gg_:focus{outline:0}.___SOverlay_1axoi_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;z-index:var(--intergalactic-z-index-modal, 600);-webkit-overflow-scrolling:touch}.___SOverlay_1axoi_gg_ .___SOverlay_1axoi_gg_{background:var(--intergalactic-overlay-secondary, rgba(25, 27, 35, 0.4))}.___SClose_1axoi_gg_{display:inline-flex;position:absolute;right:0;top:0;padding:var(--intergalactic-spacing-3x, 12px);color:var(--intergalactic-icon-secondary-neutral, #a9abb6);cursor:pointer;z-index:1;border:0;background:0 0;outline:0}@media (hover:hover){.___SClose_1axoi_gg_:hover{color:var(--intergalactic-icon-secondary-neutral-hover-active, #8a8e9b)}}.___SClose_1axoi_gg_.__keyboardFocused_1axoi_gg_{box-shadow:var(--intergalactic-keyboard-focus, 0px 0px 0px 3px rgba(0, 143, 248, 0.5))}.___STitle_1axoi_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)}@media (max-width:767px){.___SWindow_1axoi_gg_{min-width:60%}.___SOverlay_1axoi_gg_{padding:var(--intergalactic-spacing-3x, 12px)}}" /*__inner_css_end__*/, "1axoi_gg_") /*__reshadow_css_end__*/, {
27
- "__SWindow": "___SWindow_1axoi_gg_",
28
- "__SOverlay": "___SOverlay_1axoi_gg_",
29
- "__SClose": "___SClose_1axoi_gg_",
30
- "_keyboardFocused": "__keyboardFocused_1axoi_gg_",
31
- "__STitle": "___STitle_1axoi_gg_"
26
+ var style = ( /*__reshadow_css_start__*/_sstyled.insert( /*__inner_css_start__*/".___SWindow_9rb45_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_9rb45_gg_:focus{outline:0}.___SOverlay_9rb45_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;z-index:var(--intergalactic-z-index-modal, 600);-webkit-overflow-scrolling:touch}.___SOverlay_9rb45_gg_ .___SOverlay_9rb45_gg_{background:var(--intergalactic-overlay-secondary, rgba(25, 27, 35, 0.4))}.___SClose_9rb45_gg_{display:inline-flex;position:absolute;right:0;top:0;padding:var(--intergalactic-spacing-3x, 12px);color:var(--intergalactic-icon-secondary-neutral, #a9abb6);cursor:pointer;z-index:1;border:0;background:0 0;outline:0}@media (hover:hover){.___SClose_9rb45_gg_:hover{color:var(--intergalactic-icon-secondary-neutral-hover-active, #8a8e9b)}}.___SClose_9rb45_gg_.__keyboardFocused_9rb45_gg_{box-shadow:var(--intergalactic-keyboard-focus, 0px 0px 0px 3px rgba(0, 143, 248, 0.5))}.___STitle_9rb45_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)}@media (max-width:767px){.___SWindow_9rb45_gg_{min-width:60%}.___SOverlay_9rb45_gg_{padding:var(--intergalactic-spacing-3x, 12px)}}" /*__inner_css_end__*/, "9rb45_gg_") /*__reshadow_css_end__*/, {
27
+ "__SWindow": "___SWindow_9rb45_gg_",
28
+ "__SOverlay": "___SOverlay_9rb45_gg_",
29
+ "__SClose": "___SClose_9rb45_gg_",
30
+ "_keyboardFocused": "__keyboardFocused_9rb45_gg_",
31
+ "__STitle": "___STitle_9rb45_gg_"
32
32
  });
33
33
  import { localizedMessages } from './translations/__intergalactic-dynamic-locales';
34
34
  import i18nEnhance from '@semcore/utils/lib/enhances/i18nEnhance';
@@ -167,9 +167,9 @@ function Window(props) {
167
167
  useFocusLock(windowRef, true, 'auto', !visible);
168
168
  return _ref6 = sstyled(styles), /*#__PURE__*/React.createElement(SWindow, _ref6.cn("SWindow", _objectSpread({}, _assignProps2({
169
169
  "initialAnimation": true,
170
- "slideOrigin": "top",
170
+ "slideOrigin": 'top',
171
171
  "visible": visible,
172
- "role": "dialog",
172
+ "role": 'dialog',
173
173
  "aria-modal": true,
174
174
  "duration": duration,
175
175
  "ref": windowRef
@@ -203,7 +203,7 @@ function Close(props) {
203
203
  hasChildren = props.children,
204
204
  getI18nText = props.getI18nText;
205
205
  return _ref8 = sstyled(props.styles), /*#__PURE__*/React.createElement(SClose, _ref8.cn("SClose", _objectSpread({}, _assignProps4({
206
- "tag": "button",
206
+ "tag": 'button',
207
207
  "tabIndex": 0,
208
208
  "aria-label": getI18nText('close')
209
209
  }, _ref4))), hasChildren ? /*#__PURE__*/React.createElement(Children, _ref8.cn("Children", {})) : /*#__PURE__*/React.createElement(CloseIcon, _ref8.cn("CloseIcon", {
@@ -221,7 +221,7 @@ function Title(props) {
221
221
  return setHasTitle();
222
222
  });
223
223
  return _ref9 = sstyled(styles), /*#__PURE__*/React.createElement(STitle, _ref9.cn("STitle", _objectSpread({}, _assignProps5({
224
- "tag": "h2"
224
+ "tag": 'h2'
225
225
  }, _ref5))));
226
226
  }
227
227
  var Modal = createComponent(ModalRoot, {
@@ -1 +1 @@
1
- {"version":3,"file":"Modal.js","names":["React","useRef","useEffect","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","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","onClick","handleIconCloseClick","getTitleProps","_this2","setHasTitle","setState","id","render","_ref","_this$asProps3","Children","disablePortal","advanceMode","Modal","Overlay","displayName","Window","createElement","_assignProps","variable","fallback","map","Number","parseInt","prop","i18n","locale","props","_ref2","arguments[0]","_ref6","SWindow","styles","windowRef","cn","_objectSpread","_assignProps2","Close","_ref3","_ref7","SOverlay","overlayRef","_assignProps3","_ref4","_ref8","SClose","hasChildren","children","_assignProps4","enhance","Title","_ref5","_ref9","STitle","_assignProps5"],"sources":["../../src/Modal.jsx"],"sourcesContent":["import React, { useRef, useEffect } 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';\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 } = this.asProps;\n\n return {\n onClick: this.handleIconCloseClick,\n getI18nText,\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 } = this.asProps;\n\n const advanceMode = isAdvanceMode(Children, [\n Modal.Overlay.displayName,\n Modal.Window.displayName,\n ]);\n\n return (\n <Portal disablePortal={disablePortal}>\n {advanceMode ? (\n <Children />\n ) : (\n <Modal.Overlay>\n <Root render={Modal.Window} />\n </Modal.Overlay>\n )}\n </Portal>\n );\n }\n}\n\nfunction Window(props) {\n const SWindow = Root;\n const { Children, styles, visible, closable, duration } = props;\n const windowRef = useRef(null);\n\n useFocusLock(windowRef, true, 'auto', !visible);\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 <PortalProvider value={windowRef}>\n {closable && <Modal.Close />}\n <Children />\n </PortalProvider>\n </SWindow>,\n );\n}\n\nfunction Overlay(props) {\n const SOverlay = Root;\n const { Children, styles, onOutsideClick, visible } = props;\n const overlayRef = useRef(null);\n usePreventScroll(visible, props.disablePreventScroll);\n useContextTheme(overlayRef, visible);\n\n return sstyled(styles)(\n <SOverlay render={FadeInOut} ref={overlayRef}>\n <OutsideClick root={overlayRef} onOutsideClick={onOutsideClick}>\n <Children />\n </OutsideClick>\n </SOverlay>,\n );\n}\n\nfunction Close(props) {\n const SClose = Root;\n 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 } = props;\n const STitle = Root;\n\n useEffect(() => setHasTitle());\n\n return sstyled(styles)(<STitle render={Text} tag=\"h2\" />);\n}\n\nconst Modal = createComponent(ModalRoot, {\n Window,\n Overlay,\n Close,\n Title,\n});\n\nexport default Modal;\n"],"mappings":";;;;;;;;;;;;;AAAA,OAAOA,KAAK,IAAIC,MAAM,EAAEC,SAAS,QAAQ,OAAO;AAChD,SAASC,SAAS,EAAEC,KAAK,QAAQ,oBAAoB;AACrD,OAAOC,eAAe,IAAIC,SAAS,EAAEC,OAAO,EAAEC,IAAI,QAAQ,eAAe;AACzE,OAAOC,MAAM,IAAIC,cAAc,QAAQ,iBAAiB;AACxD,SAASC,GAAG,QAAQ,mBAAmB;AACvC,OAAOC,YAAY,MAAM,wBAAwB;AACjD,OAAOC,SAAS,MAAM,uBAAuB;AAC7C,OAAOC,IAAI,MAAM,yBAAyB;AAC1C,OAAOC,gBAAgB,MAAM,yCAAyC;AACtE,SAASC,aAAa,QAAQ,kCAAkC;AAChE,OAAOC,oBAAoB,MAAM,kDAAkD;AAAC;AAAA,IAAAC,KAAA,+BAAAC,QAAA,CAAAC,MAAA;EAAA;EAAA;EAAA;EAAA;EAAA;AAAA;AAEpF,SAASC,iBAAiB,QAAQ,gDAAgD;AAClF,OAAOC,WAAW,MAAM,yCAAyC;AACjE,SAASC,IAAI,QAAQ,qBAAqB;AAC1C,OAAOC,mBAAmB,MAAM,6BAA6B;AAC7D,SAASC,kBAAkB,QAAQ,mCAAmC;AACtE,SAASC,YAAY,QAAQ,qCAAqC;AAClE,SAASC,eAAe,QAAQ,kCAAkC;AAAC,IAE7DC,SAAS,0BAAAC,UAAA;EAAAC,SAAA,CAAAF,SAAA,EAAAC,UAAA;EAAA,IAAAE,MAAA,GAAAC,YAAA,CAAAJ,SAAA;EAAA,SAAAA,UAAA;IAAA,IAAAK,KAAA;IAAAC,eAAA,OAAAN,SAAA;IAAA,SAAAO,IAAA,GAAAC,SAAA,CAAAC,MAAA,EAAAC,IAAA,OAAAC,KAAA,CAAAJ,IAAA,GAAAK,IAAA,MAAAA,IAAA,GAAAL,IAAA,EAAAK,IAAA;MAAAF,IAAA,CAAAE,IAAA,IAAAJ,SAAA,CAAAI,IAAA;IAAA;IAAAP,KAAA,GAAAF,MAAA,CAAAU,IAAA,CAAAC,KAAA,CAAAX,MAAA,SAAAY,MAAA,CAAAL,IAAA;IAAAM,eAAA,CAAAC,sBAAA,CAAAZ,KAAA,YAmBL;MAAEa,QAAQ,EAAE;IAAM,CAAC;IAAAF,eAAA,CAAAC,sBAAA,CAAAZ,KAAA,oBAEX,UAACc,CAAC,EAAK;MACrB,IAAIA,CAAC,CAACC,GAAG,KAAK,QAAQ,EAAE;QACtBD,CAAC,CAACE,eAAe,EAAE;QACnBnC,IAAI,CAAA+B,sBAAA,CAAAZ,KAAA,GAAO,SAAS,EAAE,UAAU,EAAEc,CAAC,CAAC;MACtC;IACF,CAAC;IAAAH,eAAA,CAAAC,sBAAA,CAAAZ,KAAA,2BAEsB,UAACc,CAAC,EAAK;MAC5BjC,IAAI,CAAA+B,sBAAA,CAAAZ,KAAA,GAAO,SAAS,EAAE,cAAc,EAAEc,CAAC,CAAC;IAC1C,CAAC;IAAAH,eAAA,CAAAC,sBAAA,CAAAZ,KAAA,yBAEoB,UAACc,CAAC,EAAK;MAC1BjC,IAAI,CAAA+B,sBAAA,CAAAZ,KAAA,GAAO,SAAS,EAAE,gBAAgB,EAAEc,CAAC,CAAC;IAC5C,CAAC;IAAA,OAAAd,KAAA;EAAA;EAAAiB,YAAA,CAAAtB,SAAA;IAAAoB,GAAA;IAAAG,KAAA,EAED,SAAAC,gBAAA,EAAkB;MAChB,IAAAC,aAAA,GAAwE,IAAI,CAACC,OAAO;QAA5EC,QAAQ,GAAAF,aAAA,CAARE,QAAQ;QAAEC,OAAO,GAAAH,aAAA,CAAPG,OAAO;QAAEC,kBAAkB,GAAAJ,aAAA,CAAlBI,kBAAkB;QAAEC,oBAAoB,GAAAL,aAAA,CAApBK,oBAAoB;MACnE,OAAO;QACLH,QAAQ,EAARA,QAAQ;QACRC,OAAO,EAAPA,OAAO;QACPG,cAAc,EAAE,IAAI,CAACC,kBAAkB;QACvCH,kBAAkB,EAAlBA,kBAAkB;QAClBC,oBAAoB,EAApBA;MACF,CAAC;IACH;EAAC;IAAAV,GAAA;IAAAG,KAAA,EAED,SAAAU,eAAA,EAAiB;MACf,IAAAC,cAAA,GAA8E,IAAI,CAACR,OAAO;QAAlFE,OAAO,GAAAM,cAAA,CAAPN,OAAO;QAAEO,QAAQ,GAAAD,cAAA,CAARC,QAAQ;QAAEC,WAAW,GAAAF,cAAA,CAAXE,WAAW;QAAEC,GAAG,GAAAH,cAAA,CAAHG,GAAG;QAAEV,QAAQ,GAAAO,cAAA,CAARP,QAAQ;QAAEE,kBAAkB,GAAAK,cAAA,CAAlBL,kBAAkB;MACzE,IAAQX,QAAQ,GAAK,IAAI,CAACoB,KAAK,CAAvBpB,QAAQ;MAChB,OAAO;QACLU,OAAO,EAAPA,OAAO;QACPO,QAAQ,EAARA,QAAQ;QACRI,SAAS,EAAE,IAAI,CAACC,aAAa;QAC7B,YAAY,EAAEtB,QAAQ,GAAGuB,SAAS,GAAGL,WAAW,CAAC,OAAO,CAAC;QACzD,iBAAiB,EAAElB,QAAQ,UAAAH,MAAA,CAAUsB,GAAG,cAAWI,SAAS;QAC5Dd,QAAQ,EAARA,QAAQ;QACRE,kBAAkB,EAAlBA;MACF,CAAC;IACH;EAAC;IAAAT,GAAA;IAAAG,KAAA,EAED,SAAAmB,cAAA,EAAgB;MACd,IAAQN,WAAW,GAAK,IAAI,CAACV,OAAO,CAA5BU,WAAW;MAEnB,OAAO;QACLO,OAAO,EAAE,IAAI,CAACC,oBAAoB;QAClCR,WAAW,EAAXA;MACF,CAAC;IACH;EAAC;IAAAhB,GAAA;IAAAG,KAAA,EAED,SAAAsB,cAAA,EAAgB;MAAA,IAAAC,MAAA;MACd,IAAQT,GAAG,GAAK,IAAI,CAACX,OAAO,CAApBW,GAAG;MACX,IAAMU,WAAW,GAAG,SAAdA,WAAWA,CAAA;QAAA,OAASD,MAAI,CAACE,QAAQ,CAAC;UAAE9B,QAAQ,EAAE;QAAK,CAAC,CAAC;MAAA;MAE3D,OAAO;QACL+B,EAAE,SAAAlC,MAAA,CAASsB,GAAG,WAAQ;QACtBU,WAAW,EAAXA;MACF,CAAC;IACH;EAAC;IAAA3B,GAAA;IAAAG,KAAA,EAED,SAAA2B,OAAA,EAAS;MAAA,IAAAC,IAAA,QAAAzB,OAAA;MACP,IAAA0B,cAAA,GAAoC,IAAI,CAAC1B,OAAO;QAAxC2B,QAAQ,GAAAD,cAAA,CAARC,QAAQ;QAAEC,aAAa,GAAAF,cAAA,CAAbE,aAAa;MAE/B,IAAMC,WAAW,GAAGnE,aAAa,CAACiE,QAAQ,EAAE,CAC1CG,KAAK,CAACC,OAAO,CAACC,WAAW,EACzBF,KAAK,CAACG,MAAM,CAACD,WAAW,CACzB,CAAC;MAEF,oBACEtF,KAAA,CAAAwF,aAAA,CAAC/E,MAAM;QAACyE,aAAa,EAAEA;MAAc,GAClCC,WAAW,gBACVnF,KAAA,CAAAwF,aAAA,CAACP,QAAQ,OAAG,gBAEZjF,KAAA,CAAAwF,aAAA,CAACJ,KAAK,CAACC,OAAO,qBACZrF,KAAA,CAAAwF,aAAA,CAAcJ,KAAK,CAACG,MAAM,EAAAE,YAAA,KAAAV,IAAA,EAAI,CAEjC,CACM;IAEb;EAAC;EAAA,OAAAnD,SAAA;AAAA,EAnGqBtB,SAAS;AAAAsC,eAAA,CAA3BhB,SAAS,iBACQ,OAAO;AAAAgB,eAAA,CADxBhB,SAAS,WAEEV,KAAK;AAAA0B,eAAA,CAFhBhB,SAAS,aAGI,CACfN,WAAW,CAACD,iBAAiB,CAAC,EAC9BG,mBAAmB,EAAE,EACrBC,kBAAkB,CAAC;EACjBiE,QAAQ,EAAE,gCAAgC;EAC1CC,QAAQ,EAAE,KAAK;EACfC,GAAG,EAAEC,MAAM,CAACC,QAAQ;EACpBC,IAAI,EAAE;AACR,CAAC,CAAC,CACH;AAAAnD,eAAA,CAZGhB,SAAS,kBAaS;EACpBmC,QAAQ,EAAE,IAAI;EACdiC,IAAI,EAAE3E,iBAAiB;EACvB4E,MAAM,EAAE,IAAI;EACZvC,oBAAoB,EAAE;AACxB,CAAC;AAoFH,SAAS6B,MAAMA,CAACW,KAAK,EAAE;EAAA,IAAAC,KAAA,GAAAC,YAAA;IAAAC,KAAA;EACrB,IAAMC,OAAO,GAQDlG,KAAK;EAPjB,IAAQ6E,QAAQ,GAA0CiB,KAAK,CAAvDjB,QAAQ;IAAEsB,MAAM,GAAkCL,KAAK,CAA7CK,MAAM;IAAE/C,OAAO,GAAyB0C,KAAK,CAArC1C,OAAO;IAAEO,QAAQ,GAAemC,KAAK,CAA5BnC,QAAQ;IAAER,QAAQ,GAAK2C,KAAK,CAAlB3C,QAAQ;EACrD,IAAMiD,SAAS,GAAGvG,MAAM,CAAC,IAAI,CAAC;EAE9ByB,YAAY,CAAC8E,SAAS,EAAE,IAAI,EAAE,MAAM,EAAE,CAAChD,OAAO,CAAC;EAE/C,OAAA6C,KAAA,GAAO9F,OAAO,CAACgG,MAAM,CAAC,eACpBvG,KAAA,CAAAwF,aAAA,CAACc,OAAO,EAAAD,KAAA,CAAAI,EAAA,YAAAC,aAAA,KAAAC,aAAA;IAAA,oBAEY,IAAI;IAAA,eACV,KAAK;IAAA,WACRnD,OAAO;IAAA,QACX,QAAQ;IAAA,cACD,IAAI;IAAA,YACND,QAAQ;IAAA,OACbiD;EAAS,GAAAL,KAAA,kBAEdnG,KAAA,CAAAwF,aAAA,CAAC9E,cAAc,EAAA2F,KAAA,CAAAI,EAAA;IAAA,SAAQD;EAAS,IAC7BzC,QAAQ,iBAAI/D,KAAA,CAAAwF,aAAA,CAACJ,KAAK,CAACwB,KAAK,OAAG,eAC5B5G,KAAA,CAAAwF,aAAA,CAACP,QAAQ,EAAAoB,KAAA,CAAAI,EAAA,iBAAG,CACG,CACT;AAEd;AAEA,SAASpB,OAAOA,CAACa,KAAK,EAAE;EAAA,IAAAW,KAAA,GAAAT,YAAA;IAAAU,KAAA;EACtB,IAAMC,QAAQ,GAOM5G,SAAS;EAN7B,IAAQ8E,QAAQ,GAAsCiB,KAAK,CAAnDjB,QAAQ;IAAEsB,MAAM,GAA8BL,KAAK,CAAzCK,MAAM;IAAE5C,cAAc,GAAcuC,KAAK,CAAjCvC,cAAc;IAAEH,OAAO,GAAK0C,KAAK,CAAjB1C,OAAO;EACjD,IAAMwD,UAAU,GAAG/G,MAAM,CAAC,IAAI,CAAC;EAC/Bc,gBAAgB,CAACyC,OAAO,EAAE0C,KAAK,CAACxC,oBAAoB,CAAC;EACrD/B,eAAe,CAACqF,UAAU,EAAExD,OAAO,CAAC;EAEpC,OAAAsD,KAAA,GAAOvG,OAAO,CAACgG,MAAM,CAAC,eACpBvG,KAAA,CAAAwF,aAAA,CAACuB,QAAQ,EAAAD,KAAA,CAAAL,EAAA,aAAAC,aAAA,KAAAO,aAAA;IAAA,OAAyBD;EAAU,GAAAH,KAAA,kBAC1C7G,KAAA,CAAAwF,aAAA,CAAC5E,YAAY,EAAAkG,KAAA,CAAAL,EAAA;IAAA,QAAOO,UAAU;IAAA,kBAAkBrD;EAAc,iBAC5D3D,KAAA,CAAAwF,aAAA,CAACP,QAAQ,EAAA6B,KAAA,CAAAL,EAAA,iBAAG,CACC,CACN;AAEf;AAEA,SAASG,KAAKA,CAACV,KAAK,EAAE;EAAA,IAAAgB,KAAA,GAAAd,YAAA;IAAAe,KAAA;EACpB,IAAMC,MAAM,GAGMzG,GAAG;EAFrB,IAAQsE,QAAQ,GAAyCiB,KAAK,CAAtDjB,QAAQ;IAAYoC,WAAW,GAAkBnB,KAAK,CAA5CoB,QAAQ;IAAetD,WAAW,GAAKkC,KAAK,CAArBlC,WAAW;EACpD,OAAAmD,KAAA,GAAO5G,OAAO,CAAC2F,KAAK,CAACK,MAAM,CAAC,eAC1BvG,KAAA,CAAAwF,aAAA,CAAC4B,MAAM,EAAAD,KAAA,CAAAV,EAAA,WAAAC,aAAA,KAAAa,aAAA;IAAA,OAAkB,QAAQ;IAAA,YAAW,CAAC;IAAA,cAAcvD,WAAW,CAAC,OAAO;EAAC,GAAAkD,KAAA,KAC5EG,WAAW,gBAAGrH,KAAA,CAAAwF,aAAA,CAACP,QAAQ,EAAAkC,KAAA,CAAAV,EAAA,iBAAG,gBAAGzG,KAAA,CAAAwF,aAAA,CAAC3E,SAAS,EAAAsG,KAAA,CAAAV,EAAA;IAAA,SAAQzC,WAAW,CAAC,OAAO;EAAC,GAAI,CACjE;AAEb;AAEA4C,KAAK,CAACY,OAAO,GAAG,CAACvG,oBAAoB,EAAE,CAAC;AAExC,SAASwG,KAAKA,CAACvB,KAAK,EAAE;EAAA,IAAAwB,KAAA,GAAAtB,YAAA;IAAAuB,KAAA;EACpB,IAAQhD,WAAW,GAAauB,KAAK,CAA7BvB,WAAW;IAAE4B,MAAM,GAAKL,KAAK,CAAhBK,MAAM;EAC3B,IAAMqB,MAAM,GAI2BrG,IAAI;EAF3CrB,SAAS,CAAC;IAAA,OAAMyE,WAAW,EAAE;EAAA,EAAC;EAE9B,OAAAgD,KAAA,GAAOpH,OAAO,CAACgG,MAAM,CAAC,eAACvG,KAAA,CAAAwF,aAAA,CAACoC,MAAM,EAAAD,KAAA,CAAAlB,EAAA,WAAAC,aAAA,KAAAmB,aAAA;IAAA,OAAmB;EAAI,GAAAH,KAAA,IAAG;AAC1D;AAEA,IAAMtC,KAAK,GAAG/E,eAAe,CAACuB,SAAS,EAAE;EACvC2D,MAAM,EAANA,MAAM;EACNF,OAAO,EAAPA,OAAO;EACPuB,KAAK,EAALA,KAAK;EACLa,KAAK,EAALA;AACF,CAAC,CAAC;AAEF,eAAerC,KAAK"}
1
+ {"version":3,"file":"Modal.js","names":["React","useRef","useEffect","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","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","onClick","handleIconCloseClick","getTitleProps","_this2","setHasTitle","setState","id","render","_ref","_this$asProps3","Children","disablePortal","advanceMode","Modal","Overlay","displayName","Window","createElement","_assignProps","variable","fallback","map","Number","parseInt","prop","i18n","locale","props","_ref2","arguments[0]","_ref6","SWindow","styles","windowRef","cn","_objectSpread","_assignProps2","Close","_ref3","_ref7","SOverlay","overlayRef","_assignProps3","_ref4","_ref8","SClose","hasChildren","children","_assignProps4","enhance","Title","_ref5","_ref9","STitle","_assignProps5"],"sources":["../../src/Modal.jsx"],"sourcesContent":["import React, { useRef, useEffect } 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';\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 } = this.asProps;\n\n return {\n onClick: this.handleIconCloseClick,\n getI18nText,\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 } = this.asProps;\n\n const advanceMode = isAdvanceMode(Children, [\n Modal.Overlay.displayName,\n Modal.Window.displayName,\n ]);\n\n return (\n <Portal disablePortal={disablePortal}>\n {advanceMode ? (\n <Children />\n ) : (\n <Modal.Overlay>\n <Root render={Modal.Window} />\n </Modal.Overlay>\n )}\n </Portal>\n );\n }\n}\n\nfunction Window(props) {\n const SWindow = Root;\n const { Children, styles, visible, closable, duration } = props;\n const windowRef = useRef(null);\n\n useFocusLock(windowRef, true, 'auto', !visible);\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 <PortalProvider value={windowRef}>\n {closable && <Modal.Close />}\n <Children />\n </PortalProvider>\n </SWindow>,\n );\n}\n\nfunction Overlay(props) {\n const SOverlay = Root;\n const { Children, styles, onOutsideClick, visible } = props;\n const overlayRef = useRef(null);\n usePreventScroll(visible, props.disablePreventScroll);\n useContextTheme(overlayRef, visible);\n\n return sstyled(styles)(\n <SOverlay render={FadeInOut} ref={overlayRef}>\n <OutsideClick root={overlayRef} onOutsideClick={onOutsideClick}>\n <Children />\n </OutsideClick>\n </SOverlay>,\n );\n}\n\nfunction Close(props) {\n const SClose = Root;\n 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 } = props;\n const STitle = Root;\n\n useEffect(() => setHasTitle());\n\n return sstyled(styles)(<STitle render={Text} tag='h2' />);\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,11 +1,10 @@
1
1
  import _regeneratorRuntime from "@babel/runtime/helpers/regeneratorRuntime";
2
2
  import _asyncToGenerator from "@babel/runtime/helpers/asyncToGenerator";
3
- import { expect } from '@playwright/test';
3
+ import { expect } from '@semcore/testing-utils/playwright';
4
4
  import { voTest as test } from '@guidepup/playwright';
5
- import { e2eStandToHtml } from '@semcore/jest-preset-ui/e2e-stand';
6
- import { resolve as resolvePath } from 'path';
5
+ import { e2eStandToHtml } from '@semcore/testing-utils/e2e-stand';
7
6
  import { writeFile } from 'fs/promises';
8
- import { getReportHeader, makeVoiceOverReporter } from '@semcore/jest-preset-ui/vo-reporter';
7
+ import { getReportHeader, makeVoiceOverReporter } from '@semcore/testing-utils/vo-reporter';
9
8
  test('Users can interact with Modal via VoiceOver', /*#__PURE__*/function () {
10
9
  var _ref2 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee(_ref) {
11
10
  var page, pureVoiceOver, standPath, reportPath, htmlContent, _yield$makeVoiceOverR, voiceOver, getReport, report;
@@ -13,8 +12,8 @@ test('Users can interact with Modal via VoiceOver', /*#__PURE__*/function () {
13
12
  while (1) switch (_context.prev = _context.next) {
14
13
  case 0:
15
14
  page = _ref.page, pureVoiceOver = _ref.voiceOver;
16
- standPath = resolvePath(__dirname, '../../../website/docs/components/modal/examples/modal.tsx');
17
- reportPath = resolvePath(__dirname, '../../../website/docs/components/modal/modal-a11y-report.md');
15
+ standPath = 'website/docs/components/modal/examples/modal.tsx';
16
+ reportPath = 'website/docs/components/modal/modal-a11y-report.md';
18
17
  _context.next = 5;
19
18
  return e2eStandToHtml(standPath, 'en');
20
19
  case 5:
@@ -1 +1 @@
1
- {"version":3,"file":"modal.vo-test.js","names":["expect","voTest","test","e2eStandToHtml","resolve","resolvePath","writeFile","getReportHeader","makeVoiceOverReporter","_ref2","_asyncToGenerator","_regeneratorRuntime","mark","_callee","_ref","page","pureVoiceOver","standPath","reportPath","htmlContent","_yield$makeVoiceOverR","voiceOver","getReport","report","wrap","_callee$","_context","prev","next","__dirname","sent","setContent","interact","t0","itemText","t1","toBe","act","t2","lastSpokenPhrase","t3","t4","t5","t6","t7","t8","t9","t10","t11","t12","stop","_x","apply","arguments"],"sources":["../../src/modal.vo-test.ts"],"sourcesContent":["import { expect } from '@playwright/test';\nimport { voTest as test } from '@guidepup/playwright';\nimport { e2eStandToHtml } from '@semcore/jest-preset-ui/e2e-stand';\nimport { resolve as resolvePath } from 'path';\nimport { writeFile } from 'fs/promises';\nimport { getReportHeader, makeVoiceOverReporter } from '@semcore/jest-preset-ui/vo-reporter';\n\ntest('Users can interact with Modal via VoiceOver', async ({ page, voiceOver: pureVoiceOver }) => {\n const standPath = resolvePath(\n __dirname,\n '../../../website/docs/components/modal/examples/modal.tsx',\n );\n const reportPath = resolvePath(\n __dirname,\n '../../../website/docs/components/modal/modal-a11y-report.md',\n );\n const htmlContent = await e2eStandToHtml(standPath, 'en');\n\n await page.setContent(htmlContent);\n const { voiceOver, getReport } = await makeVoiceOverReporter(pureVoiceOver);\n await voiceOver.interact();\n\n expect(await voiceOver.itemText()).toBe('Open modal button');\n await voiceOver.act();\n expect(await voiceOver.lastSpokenPhrase()).toBe(\n 'Do you want to save your changes? web dialog with 5 items Close button',\n );\n await voiceOver.next();\n expect(await voiceOver.itemText()).toBe('Do you want to save your changes? heading level 2');\n await voiceOver.next();\n await voiceOver.next();\n expect(await voiceOver.itemText()).toBe('Save changes button');\n await voiceOver.act();\n\n await voiceOver.act();\n expect(await voiceOver.itemText()).toBe('Open modal button');\n\n const report = (await getReportHeader()) + '\\n\\n' + (await getReport(standPath));\n\n await writeFile(reportPath, report);\n});\n"],"mappings":"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"}
1
+ {"version":3,"file":"modal.vo-test.js","names":["expect","voTest","test","e2eStandToHtml","writeFile","getReportHeader","makeVoiceOverReporter","_ref2","_asyncToGenerator","_regeneratorRuntime","mark","_callee","_ref","page","pureVoiceOver","standPath","reportPath","htmlContent","_yield$makeVoiceOverR","voiceOver","getReport","report","wrap","_callee$","_context","prev","next","sent","setContent","interact","t0","itemText","t1","toBe","act","t2","lastSpokenPhrase","t3","t4","t5","t6","t7","t8","t9","t10","t11","t12","stop","_x","apply","arguments"],"sources":["../../src/modal.vo-test.ts"],"sourcesContent":["import { expect } from '@semcore/testing-utils/playwright';\nimport { voTest as test } from '@guidepup/playwright';\nimport { e2eStandToHtml } from '@semcore/testing-utils/e2e-stand';\nimport { writeFile } from 'fs/promises';\nimport { getReportHeader, makeVoiceOverReporter } from '@semcore/testing-utils/vo-reporter';\n\ntest('Users can interact with Modal via VoiceOver', async ({ page, voiceOver: pureVoiceOver }) => {\n const standPath = 'website/docs/components/modal/examples/modal.tsx';\n const reportPath = 'website/docs/components/modal/modal-a11y-report.md';\n const htmlContent = await e2eStandToHtml(standPath, 'en');\n\n await page.setContent(htmlContent);\n const { voiceOver, getReport } = await makeVoiceOverReporter(pureVoiceOver);\n await voiceOver.interact();\n\n expect(await voiceOver.itemText()).toBe('Open modal button');\n await voiceOver.act();\n expect(await voiceOver.lastSpokenPhrase()).toBe(\n 'Do you want to save your changes? web dialog with 5 items Close button',\n );\n await voiceOver.next();\n expect(await voiceOver.itemText()).toBe('Do you want to save your changes? heading level 2');\n await voiceOver.next();\n await voiceOver.next();\n expect(await voiceOver.itemText()).toBe('Save changes button');\n await voiceOver.act();\n\n await voiceOver.act();\n expect(await voiceOver.itemText()).toBe('Open modal button');\n\n const report = (await getReportHeader()) + '\\n\\n' + (await getReport(standPath));\n\n await writeFile(reportPath, report);\n});\n"],"mappings":"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"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@semcore/modal",
3
3
  "description": "Semrush Modal Component",
4
- "version": "3.8.1",
4
+ "version": "3.8.2",
5
5
  "main": "lib/cjs/index.js",
6
6
  "module": "lib/es6/index.js",
7
7
  "typings": "lib/types/index.d.ts",
@@ -22,9 +22,6 @@
22
22
  "react": "16.8 - 18",
23
23
  "react-dom": "16.8 - 18"
24
24
  },
25
- "jest": {
26
- "preset": "@semcore/jest-preset-ui"
27
- },
28
25
  "repository": {
29
26
  "type": "git",
30
27
  "url": "https://github.com/semrush/intergalactic.git",
@@ -33,11 +30,10 @@
33
30
  "devDependencies": {
34
31
  "@guidepup/playwright": "0.6.1",
35
32
  "@playwright/test": "1.25.1",
36
- "@semcore/jest-preset-ui": "1.0.0",
37
- "@types/react": "18.0.21"
33
+ "@types/react": "18.0.21",
34
+ "@semcore/testing-utils": "1.0.0"
38
35
  },
39
36
  "scripts": {
40
- "build": "pnpm semcore-builder --source=js",
41
- "test": "jest"
37
+ "build": "pnpm semcore-builder --source=js"
42
38
  }
43
39
  }