@salutejs/plasma-new-hope 0.337.1-canary.2272.18221260151.0 → 0.337.1-canary.2276.18273012590.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (69) hide show
  1. package/cjs/_virtual/_rollupPluginBabelHelpers.js +8 -0
  2. package/cjs/_virtual/_rollupPluginBabelHelpers.js.map +1 -1
  3. package/cjs/components/Modal/Modal.css +2 -2
  4. package/cjs/components/Modal/Modal.js +5 -4
  5. package/cjs/components/Modal/Modal.js.map +1 -1
  6. package/cjs/index.js +2 -0
  7. package/cjs/index.js.map +1 -1
  8. package/cjs/mixins/applyDisabled.js +22 -0
  9. package/cjs/mixins/applyDisabled.js.map +1 -0
  10. package/emotion/cjs/components/Modal/Modal.js +7 -6
  11. package/emotion/cjs/mixins/applyDisabled.js +47 -0
  12. package/emotion/cjs/mixins/index.js +1 -0
  13. package/emotion/es/components/Modal/Modal.js +6 -5
  14. package/emotion/es/mixins/applyDisabled.js +39 -0
  15. package/emotion/es/mixins/index.js +1 -0
  16. package/es/_virtual/_rollupPluginBabelHelpers.js +8 -1
  17. package/es/_virtual/_rollupPluginBabelHelpers.js.map +1 -1
  18. package/es/components/Modal/Modal.css +2 -2
  19. package/es/components/Modal/Modal.js +5 -4
  20. package/es/components/Modal/Modal.js.map +1 -1
  21. package/es/index.js +1 -0
  22. package/es/index.js.map +1 -1
  23. package/es/mixins/applyDisabled.js +18 -0
  24. package/es/mixins/applyDisabled.js.map +1 -0
  25. package/package.json +2 -2
  26. package/styled-components/cjs/components/Modal/Modal.js +7 -6
  27. package/styled-components/cjs/examples/components/Combobox/Combobox.js +15 -0
  28. package/styled-components/cjs/mixins/applyDisabled.js +23 -0
  29. package/styled-components/cjs/mixins/index.js +1 -0
  30. package/styled-components/es/components/Modal/Modal.js +6 -5
  31. package/styled-components/es/examples/components/Combobox/Combobox.js +0 -7
  32. package/styled-components/es/mixins/applyDisabled.js +15 -0
  33. package/styled-components/es/mixins/index.js +1 -0
  34. package/types/components/Accordion/ui/AccordionItem/AccordionItem.d.ts +1 -1
  35. package/types/components/Autocomplete/ui/TextField/TextField.styles.d.ts +8 -8
  36. package/types/components/Combobox/ComboboxNew/ui/SelectNative/SelectNative.d.ts +1 -1
  37. package/types/components/Combobox/ComboboxNew/ui/Target/Target.styles.d.ts +8 -8
  38. package/types/components/DatePicker/RangeDate/RangeDate.d.ts +6 -6
  39. package/types/components/DatePicker/SingleDate/SingleDate.styles.d.ts +8 -8
  40. package/types/components/Modal/Modal.d.ts.map +1 -1
  41. package/types/components/Pagination/ui/PaginationSelectPerPage/PaginationSelectPerPage.styles.d.ts +6 -6
  42. package/types/components/Radiobox/Radiobox.d.ts +2 -2
  43. package/types/components/Range/Range.styles.d.ts +8 -8
  44. package/types/components/Select/ui/Target/Target.d.ts +1 -1
  45. package/types/components/Select/ui/Target/ui/Textfield/Textfield.styles.d.ts +8 -8
  46. package/types/components/Select/utils/getView.d.ts +1 -1
  47. package/types/components/Slider/components/Double/Double.styles.d.ts +8 -8
  48. package/types/components/Table/ui/HeadCell/ui/Filter/Filter.styles.d.ts +6 -6
  49. package/types/components/TimePicker/TimePicker.styles.d.ts +8 -8
  50. package/types/examples/components/Autocomplete/Autocomplete.d.ts +8 -8
  51. package/types/examples/components/Combobox/Legacy/Combobox.d.ts +2 -2
  52. package/types/examples/components/DatePicker/DatePicker.d.ts +3 -3
  53. package/types/examples/components/Mask/Mask.d.ts +8 -8
  54. package/types/examples/components/NumberFormat/NumberFormat.d.ts +8 -8
  55. package/types/examples/components/NumberInput/NumberInput.d.ts +2 -2
  56. package/types/examples/components/Radiobox/Radiobox.d.ts +2 -2
  57. package/types/examples/components/Select/Select.d.ts +6 -6
  58. package/types/examples/components/TextArea/TextArea.d.ts +8 -8
  59. package/types/examples/components/TextField/TextField.d.ts +8 -8
  60. package/types/examples/components/Tokens/Colors/Colors.styles.d.ts +1 -1
  61. package/types/examples/components/Tokens/Typography/Typography.styles.d.ts +1 -1
  62. package/types/mixins/applyDisabled.d.ts +14 -0
  63. package/types/mixins/applyDisabled.d.ts.map +1 -0
  64. package/types/mixins/index.d.ts +1 -0
  65. package/types/mixins/index.d.ts.map +1 -1
  66. package/types/types/InputHTMLAttributes.d.ts +3 -9
  67. package/types/types/InputHTMLAttributes.d.ts.map +1 -1
  68. package/types/types/TextareaHTMLAttributes.d.ts +3 -9
  69. package/types/types/TextareaHTMLAttributes.d.ts.map +1 -1
@@ -498,6 +498,13 @@ function _regeneratorRuntime() {
498
498
  function _slicedToArray(r, e) {
499
499
  return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest();
500
500
  }
501
+ function _taggedTemplateLiteral(e, t) {
502
+ return t || (t = e.slice(0)), Object.freeze(Object.defineProperties(e, {
503
+ raw: {
504
+ value: Object.freeze(t)
505
+ }
506
+ }));
507
+ }
501
508
  function _toArray(r) {
502
509
  return _arrayWithHoles(r) || _iterableToArray(r) || _unsupportedIterableToArray(r) || _nonIterableRest();
503
510
  }
@@ -553,6 +560,7 @@ exports.objectWithoutProperties = _objectWithoutProperties;
553
560
  exports.objectWithoutPropertiesLoose = _objectWithoutPropertiesLoose;
554
561
  exports.regeneratorRuntime = _regeneratorRuntime;
555
562
  exports.slicedToArray = _slicedToArray;
563
+ exports.taggedTemplateLiteral = _taggedTemplateLiteral;
556
564
  exports.toArray = _toArray;
557
565
  exports.toConsumableArray = _toConsumableArray;
558
566
  exports.toPrimitive = _toPrimitive;
@@ -1 +1 @@
1
- {"version":3,"file":"_rollupPluginBabelHelpers.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"_rollupPluginBabelHelpers.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -1,3 +1,5 @@
1
+ .IconRoot_7pl7ig_svvlqhf__32c458a1{display:-webkit-inline-box;display:-webkit-inline-flex;display:-ms-inline-flexbox;display:inline-flex;width:var(--svvlqhf-0);height:var(--svvlqhf-0);-webkit-flex:0 0 var(--svvlqhf-0);-ms-flex:0 0 var(--svvlqhf-0);flex:0 0 var(--svvlqhf-0);}
2
+
1
3
  .Popup_styles_kpf3dd_bvkpf6n__890879ed .Popup_styles_kpf3dd_draggablePopupWrapper__890879ed{cursor:-webkit-grab;cursor:-moz-grab;cursor:grab;}.Popup_styles_kpf3dd_bvkpf6n__890879ed .Popup_styles_kpf3dd_draggingPopupWrapper__890879ed{cursor:-webkit-grabbing;cursor:-moz-grabbing;cursor:grabbing;}.Popup_styles_kpf3dd_bvkpf6n__890879ed .Popup_styles_kpf3dd_resizableContainerNoSelect__890879ed{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-user-select:none;}
2
4
 
3
5
  .Popup_styles_kpf3dd_s5u7tqa__890879ed{width:0;}
@@ -7,8 +9,6 @@
7
9
 
8
10
  .Overlay_styles_cxej3y_s1afr8la__70d4dd9a{position:fixed;inset:0;z-index:var(--s1afr8la-0);--plasma_private-overlay-background-color:var(--s1afr8la-1);--plasma_private-overlay-backdrop-filter:var(--s1afr8la-2);background:var(--s1afr8la-3);-webkit-backdrop-filter:var(--s1afr8la-4);backdrop-filter:var(--s1afr8la-4);cursor:var(--s1afr8la-5);}
9
11
 
10
- .IconRoot_7pl7ig_svvlqhf__32c458a1{display:-webkit-inline-box;display:-webkit-inline-flex;display:-ms-inline-flexbox;display:inline-flex;width:var(--svvlqhf-0);height:var(--svvlqhf-0);-webkit-flex:0 0 var(--svvlqhf-0);-ms-flex:0 0 var(--svvlqhf-0);flex:0 0 var(--svvlqhf-0);}
11
-
12
12
  .Modal_styles_1obtvtw_b7npn1w__a2f4e50d{height:100%;}
13
13
  .Modal_styles_1obtvtw_m16phoaz__a2f4e50d{height:100%;box-sizing:border-box;border-radius:var(--plasma-modal-body-border-radius);padding:var(--plasma-modal-body-padding);background:var(--plasma-modal-body-background);box-shadow:var(--shadow-down-soft-l);}
14
14
  .Modal_styles_1obtvtw_m5bx5hr__a2f4e50d{position:relative;padding:var(--plasma-modal-content-padding);}
@@ -6,7 +6,6 @@ var _rollupPluginBabelHelpers = require('../../_virtual/_rollupPluginBabelHelper
6
6
  var React = require('react');
7
7
  var plasmaCore = require('@salutejs/plasma-core');
8
8
  var index = require('../Popup/utils/index.js');
9
- var IconClose = require('../_Icon/Icons/IconClose.js');
10
9
  var Modal_tokens = require('./Modal.tokens.js');
11
10
  var base = require('./variations/_view/base.js');
12
11
  var ModalContext = require('./ModalContext.js');
@@ -15,6 +14,7 @@ var useFocusTrap = require('../../hooks/useFocusTrap.js');
15
14
  var PopupContext = require('../Popup/PopupContext.js');
16
15
  var react = require('../../utils/react.js');
17
16
  var useModal = require('./hooks/useModal.js');
17
+ var IconClose = require('../_Icon/Icons/IconClose.js');
18
18
  var common = require('../../engines/common.js');
19
19
  var Popup$1 = require('../Popup/Popup.js');
20
20
  var Overlay = require('../Overlay/Overlay.js');
@@ -24,7 +24,7 @@ function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
24
24
  var React__default = /*#__PURE__*/_interopDefault(React);
25
25
 
26
26
  var _IconClose;
27
- var _excluded = ["id", "withAnimation", "onClose", "onOverlayClick", "onEscKeyDown", "closeOnEsc", "closeOnOverlayClick", "withBlur", "isFocusTrapped", "initialFocusRef", "focusAfterRef", "zIndex", "popupInfo", "children", "view", "opened", "isOpen", "hasBody", "hasClose", "resizable", "draggable"];
27
+ var _excluded = ["id", "withAnimation", "onClose", "onOverlayClick", "onEscKeyDown", "closeOnEsc", "closeOnOverlayClick", "withBlur", "isFocusTrapped", "initialFocusRef", "focusAfterRef", "zIndex", "popupInfo", "children", "view", "opened", "isOpen", "hasBody", "hasClose", "resizable", "draggable", "overlay"];
28
28
 
29
29
  // issue #823
30
30
  var Popup = /*#__PURE__*/common.component(Popup$1.popupConfig);
@@ -59,6 +59,7 @@ var modalRoot = function modalRoot(Root) {
59
59
  hasClose = _ref.hasClose,
60
60
  resizable = _ref.resizable,
61
61
  draggable = _ref.draggable,
62
+ overlay = _ref.overlay,
62
63
  rest = _rollupPluginBabelHelpers.objectWithoutProperties(_ref, _excluded);
63
64
  var innerIsOpen = Boolean(isOpen || opened);
64
65
  var innerHasClose = hasClose === undefined && hasBody || hasClose;
@@ -105,9 +106,9 @@ var modalRoot = function modalRoot(Root) {
105
106
  popupInfo: modalInfo,
106
107
  withAnimation: withAnimation,
107
108
  zIndex: zIndex,
108
- overlay: hasBody ? overlayNode : /*#__PURE__*/React__default.default.createElement(Root, {
109
+ overlay: /*#__PURE__*/React__default.default.createElement(Root, {
109
110
  view: view
110
- }, overlayNode),
111
+ }, overlay || overlayNode),
111
112
  draggable: draggable,
112
113
  resizable: resizable
113
114
  }, rest), hasBody ? /*#__PURE__*/React__default.default.createElement(Root, {
@@ -1 +1 @@
1
- {"version":3,"file":"Modal.js","sources":["../../../src/components/Modal/Modal.tsx"],"sourcesContent":["import React, { forwardRef, useCallback, useMemo } from 'react';\nimport { useForkRef } from '@salutejs/plasma-core';\nimport { safeUseId } from 'src/utils';\nimport { RootProps, component } from 'src/engines';\nimport { useFocusTrap } from 'src/hooks';\n\nimport { popupConfig, usePopupContext } from '../Popup';\nimport { Overlay } from '../Overlay';\nimport { DEFAULT_Z_INDEX } from '../Popup/utils';\nimport { IconClose } from '../_Icon/Icons/IconClose';\n\nimport { classes, tokens } from './Modal.tokens';\nimport { ModalProps } from './Modal.types';\nimport { useModal } from './hooks';\nimport { base as viewCSS } from './variations/_view/base';\nimport { getIdLastModal } from './ModalContext';\nimport { CloseButton, ModalBody, ModalContent, base } from './Modal.styles';\n\n// issue #823\nconst Popup = component(popupConfig);\n\n/**\n * Modal.\n * Управляет показом/скрытием, подложкой и анимацией визуальной части модального окна.\n */\nexport const modalRoot = (Root: RootProps<HTMLDivElement, ModalProps>) =>\n forwardRef<HTMLDivElement, ModalProps>(\n (\n {\n id,\n withAnimation,\n onClose,\n onOverlayClick,\n onEscKeyDown,\n closeOnEsc = true,\n closeOnOverlayClick = true,\n withBlur,\n isFocusTrapped = true,\n initialFocusRef,\n focusAfterRef,\n zIndex,\n popupInfo,\n children,\n view,\n opened,\n isOpen,\n hasBody,\n hasClose,\n resizable,\n draggable,\n ...rest\n },\n outerRootRef,\n ) => {\n const innerIsOpen = Boolean(isOpen || opened);\n const innerHasClose = (hasClose === undefined && hasBody) || hasClose;\n const trapRef = useFocusTrap(isFocusTrapped, initialFocusRef, focusAfterRef, true, !isFocusTrapped);\n const popupController = usePopupContext();\n\n const innerRef = useForkRef<HTMLDivElement>(trapRef, outerRootRef);\n\n const uniqId = safeUseId();\n const innerId = id || uniqId;\n const overlayBackgroundToken = withBlur\n ? `var(${tokens.modalOverlayWithBlurColor})`\n : `var(${tokens.modalOverlayColor})`;\n\n const { modalInfo } = useModal({\n id: innerId,\n isOpen: innerIsOpen,\n closeOnEsc,\n onEscKeyDown,\n onClose,\n popupInfo,\n });\n\n const transparent = useMemo(() => getIdLastModal(Array.from(popupController.items.values())) !== innerId, [\n innerId,\n popupController.items,\n ]);\n\n const onModalOverlayKeyDown = useCallback(\n (event: React.MouseEvent<HTMLDivElement>) => {\n if (onOverlayClick) {\n onOverlayClick(event);\n return;\n }\n\n if (onClose) {\n onClose();\n }\n },\n [closeOnOverlayClick, onOverlayClick, onClose],\n );\n\n const overlayNode = (\n <Overlay\n className={classes.overlay}\n zIndex={zIndex || DEFAULT_Z_INDEX}\n backgroundColorProperty={overlayBackgroundToken}\n withBlur={withBlur}\n transparent={transparent}\n isClickable={closeOnOverlayClick}\n onOverlayClick={onModalOverlayKeyDown}\n />\n );\n\n return (\n <Popup\n id={innerId}\n opened={innerIsOpen}\n ref={innerRef}\n popupInfo={modalInfo}\n withAnimation={withAnimation}\n zIndex={zIndex}\n overlay={hasBody ? overlayNode : <Root view={view}>{overlayNode}</Root>}\n draggable={draggable}\n resizable={resizable}\n {...rest}\n >\n {hasBody ? (\n <Root view={view}>\n <ModalBody>\n <ModalContent>\n {innerHasClose && (\n <CloseButton onClick={onClose} data-test=\"modal-close\">\n <IconClose size=\"s\" color=\"currentColor\" />\n </CloseButton>\n )}\n {children}\n </ModalContent>\n </ModalBody>\n </Root>\n ) : (\n <>{children}</>\n )}\n </Popup>\n );\n },\n );\n\nexport const modalConfig = {\n name: 'Modal',\n tag: 'div',\n layout: modalRoot,\n base,\n variations: {\n view: {\n css: viewCSS,\n },\n },\n defaults: {\n view: 'default',\n },\n};\n"],"names":["Popup","component","popupConfig","modalRoot","Root","forwardRef","_ref","outerRootRef","id","withAnimation","onClose","onOverlayClick","onEscKeyDown","_ref$closeOnEsc","closeOnEsc","_ref$closeOnOverlayCl","closeOnOverlayClick","withBlur","_ref$isFocusTrapped","isFocusTrapped","initialFocusRef","focusAfterRef","zIndex","popupInfo","children","view","opened","isOpen","hasBody","hasClose","resizable","draggable","rest","_objectWithoutProperties","_excluded","innerIsOpen","Boolean","innerHasClose","undefined","trapRef","useFocusTrap","popupController","usePopupContext","innerRef","useForkRef","uniqId","safeUseId","innerId","overlayBackgroundToken","concat","tokens","modalOverlayWithBlurColor","modalOverlayColor","_useModal","useModal","modalInfo","transparent","useMemo","getIdLastModal","Array","from","items","values","onModalOverlayKeyDown","useCallback","event","overlayNode","React","createElement","Overlay","className","classes","overlay","DEFAULT_Z_INDEX","backgroundColorProperty","isClickable","_extends","ref","ModalBody","ModalContent","CloseButton","onClick","_IconClose","IconClose","size","color","Fragment","modalConfig","name","tag","layout","base","variations","css","viewCSS","defaults"],"mappings":"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"}
1
+ {"version":3,"file":"Modal.js","sources":["../../../src/components/Modal/Modal.tsx"],"sourcesContent":["import React, { forwardRef, useCallback, useMemo } from 'react';\nimport { useForkRef } from '@salutejs/plasma-core';\nimport { safeUseId } from 'src/utils';\nimport { RootProps, component } from 'src/engines';\nimport { useFocusTrap } from 'src/hooks';\nimport { IconClose } from 'src/components/_Icon';\n\nimport { popupConfig, usePopupContext } from '../Popup';\nimport { Overlay } from '../Overlay';\nimport { DEFAULT_Z_INDEX } from '../Popup/utils';\n\nimport { classes, tokens } from './Modal.tokens';\nimport { ModalProps } from './Modal.types';\nimport { useModal } from './hooks';\nimport { base as viewCSS } from './variations/_view/base';\nimport { getIdLastModal } from './ModalContext';\nimport { CloseButton, ModalBody, ModalContent, base } from './Modal.styles';\n\n// issue #823\nconst Popup = component(popupConfig);\n\n/**\n * Modal.\n * Управляет показом/скрытием, подложкой и анимацией визуальной части модального окна.\n */\nexport const modalRoot = (Root: RootProps<HTMLDivElement, ModalProps>) =>\n forwardRef<HTMLDivElement, ModalProps>(\n (\n {\n id,\n withAnimation,\n onClose,\n onOverlayClick,\n onEscKeyDown,\n closeOnEsc = true,\n closeOnOverlayClick = true,\n withBlur,\n isFocusTrapped = true,\n initialFocusRef,\n focusAfterRef,\n zIndex,\n popupInfo,\n children,\n view,\n opened,\n isOpen,\n hasBody,\n hasClose,\n resizable,\n draggable,\n overlay,\n ...rest\n },\n outerRootRef,\n ) => {\n const innerIsOpen = Boolean(isOpen || opened);\n const innerHasClose = (hasClose === undefined && hasBody) || hasClose;\n const trapRef = useFocusTrap(isFocusTrapped, initialFocusRef, focusAfterRef, true, !isFocusTrapped);\n const popupController = usePopupContext();\n\n const innerRef = useForkRef<HTMLDivElement>(trapRef, outerRootRef);\n\n const uniqId = safeUseId();\n const innerId = id || uniqId;\n const overlayBackgroundToken = withBlur\n ? `var(${tokens.modalOverlayWithBlurColor})`\n : `var(${tokens.modalOverlayColor})`;\n\n const { modalInfo } = useModal({\n id: innerId,\n isOpen: innerIsOpen,\n closeOnEsc,\n onEscKeyDown,\n onClose,\n popupInfo,\n });\n\n const transparent = useMemo(() => getIdLastModal(Array.from(popupController.items.values())) !== innerId, [\n innerId,\n popupController.items,\n ]);\n\n const onModalOverlayKeyDown = useCallback(\n (event: React.MouseEvent<HTMLDivElement>) => {\n if (onOverlayClick) {\n onOverlayClick(event);\n return;\n }\n\n if (onClose) {\n onClose();\n }\n },\n [closeOnOverlayClick, onOverlayClick, onClose],\n );\n\n const overlayNode = (\n <Overlay\n className={classes.overlay}\n zIndex={zIndex || DEFAULT_Z_INDEX}\n backgroundColorProperty={overlayBackgroundToken}\n withBlur={withBlur}\n transparent={transparent}\n isClickable={closeOnOverlayClick}\n onOverlayClick={onModalOverlayKeyDown}\n />\n );\n\n return (\n <Popup\n id={innerId}\n opened={innerIsOpen}\n ref={innerRef}\n popupInfo={modalInfo}\n withAnimation={withAnimation}\n zIndex={zIndex}\n overlay={<Root view={view}>{overlay || overlayNode}</Root>}\n draggable={draggable}\n resizable={resizable}\n {...rest}\n >\n {hasBody ? (\n <Root view={view}>\n <ModalBody>\n <ModalContent>\n {innerHasClose && (\n <CloseButton onClick={onClose} data-test=\"modal-close\">\n <IconClose size=\"s\" color=\"currentColor\" />\n </CloseButton>\n )}\n {children}\n </ModalContent>\n </ModalBody>\n </Root>\n ) : (\n <>{children}</>\n )}\n </Popup>\n );\n },\n );\n\nexport const modalConfig = {\n name: 'Modal',\n tag: 'div',\n layout: modalRoot,\n base,\n variations: {\n view: {\n css: viewCSS,\n },\n },\n defaults: {\n view: 'default',\n },\n};\n"],"names":["Popup","component","popupConfig","modalRoot","Root","forwardRef","_ref","outerRootRef","id","withAnimation","onClose","onOverlayClick","onEscKeyDown","_ref$closeOnEsc","closeOnEsc","_ref$closeOnOverlayCl","closeOnOverlayClick","withBlur","_ref$isFocusTrapped","isFocusTrapped","initialFocusRef","focusAfterRef","zIndex","popupInfo","children","view","opened","isOpen","hasBody","hasClose","resizable","draggable","overlay","rest","_objectWithoutProperties","_excluded","innerIsOpen","Boolean","innerHasClose","undefined","trapRef","useFocusTrap","popupController","usePopupContext","innerRef","useForkRef","uniqId","safeUseId","innerId","overlayBackgroundToken","concat","tokens","modalOverlayWithBlurColor","modalOverlayColor","_useModal","useModal","modalInfo","transparent","useMemo","getIdLastModal","Array","from","items","values","onModalOverlayKeyDown","useCallback","event","overlayNode","React","createElement","Overlay","className","classes","DEFAULT_Z_INDEX","backgroundColorProperty","isClickable","_extends","ref","ModalBody","ModalContent","CloseButton","onClick","_IconClose","IconClose","size","color","Fragment","modalConfig","name","tag","layout","base","variations","css","viewCSS","defaults"],"mappings":"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"}
package/cjs/index.js CHANGED
@@ -15,6 +15,7 @@ var addFocus = require('./mixins/addFocus.js');
15
15
  var typography = require('./mixins/typography.js');
16
16
  var applyRoundness = require('./mixins/applyRoundness.js');
17
17
  var applySkeletonGradient = require('./mixins/applySkeletonGradient.js');
18
+ var applyDisabled = require('./mixins/applyDisabled.js');
18
19
  var applyHidden = require('./mixins/applyHidden.js');
19
20
  var createApplyPaperMixin = require('./mixins/createApplyPaperMixin.js');
20
21
  var common = require('./engines/common.js');
@@ -345,6 +346,7 @@ exports.getRoundness = applyRoundness.getRoundness;
345
346
  exports.radiuses = applyRoundness.radiuses;
346
347
  exports.applySkeletonGradient = applySkeletonGradient.applySkeletonGradient;
347
348
  exports.getSkeletonColor = applySkeletonGradient.getSkeletonColor;
349
+ exports.applyDisabled = applyDisabled.applyDisabled;
348
350
  exports.applyHidden = applyHidden.applyHidden;
349
351
  exports.createApplyPaperMixin = createApplyPaperMixin.createApplyPaperMixin;
350
352
  exports.component = common.component;
package/cjs/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -0,0 +1,22 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var _rollupPluginBabelHelpers = require('../_virtual/_rollupPluginBabelHelpers.js');
6
+ var styledComponents = require('styled-components');
7
+
8
+ var _templateObject, _templateObject2;
9
+ // TODO: #2033
10
+ var disabledCss = /*#__PURE__*/styledComponents.css(_templateObject || (_templateObject = /*#__PURE__*/_rollupPluginBabelHelpers.taggedTemplateLiteral(["\n opacity: 0.4;\n cursor: not-allowed;\n\n /* stylelint-disable-next-line selector-nested-pattern */\n &:hover,\n &:active {\n transform: none;\n }\n"])));
11
+
12
+ /**
13
+ * Миксин неактивной кнопки
14
+ */
15
+ var applyDisabled = function applyDisabled(_ref) {
16
+ var disabled = _ref.disabled,
17
+ $disabled = _ref.$disabled;
18
+ return styledComponents.css(_templateObject2 || (_templateObject2 = _rollupPluginBabelHelpers.taggedTemplateLiteral(["\n &:disabled {\n ", "\n }\n\n ", "\n"])), disabledCss, (disabled || $disabled) && disabledCss);
19
+ };
20
+
21
+ exports.applyDisabled = applyDisabled;
22
+ //# sourceMappingURL=applyDisabled.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"applyDisabled.js","sources":["../../src/mixins/applyDisabled.ts"],"sourcesContent":["import { css, InterpolationFunction } from 'styled-components';\n\nexport interface DisabledProps {\n /**\n * Компонент неактивен\n */\n disabled?: boolean;\n}\n\n// TODO: #2033\nconst disabledCss = css`\n opacity: 0.4;\n cursor: not-allowed;\n\n /* stylelint-disable-next-line selector-nested-pattern */\n &:hover,\n &:active {\n transform: none;\n }\n`;\n\n/**\n * Миксин неактивной кнопки\n */\nexport const applyDisabled: InterpolationFunction<DisabledProps & { $disabled?: boolean }> = ({\n disabled,\n $disabled,\n}) => css`\n &:disabled {\n ${disabledCss}\n }\n\n ${(disabled || $disabled) && disabledCss}\n`;\n"],"names":["disabledCss","css","_templateObject","_taggedTemplateLiteral","applyDisabled","_ref","disabled","$disabled","_templateObject2"],"mappings":";;;;;;;;AASA;AACA,IAAMA,WAAW,gBAAGC,oBAAG,CAAAC,eAAA,KAAAA,eAAA,gBAAAC,+CAAA,CAStB,CAAA,iLAAA,CAAA,CAAA,CAAA,CAAA,CAAA;;AAED;AACA;AACA;IACaC,aAA6E,GAAG,SAAhFA,aAA6EA,CAAAC,IAAA,EAAA;AAAA,EAAA,IACtFC,QAAQ,GAAAD,IAAA,CAARC,QAAQ;IACRC,SAAS,GAAAF,IAAA,CAATE,SAAS,CAAA;AAAA,EAAA,OACPN,oBAAG,CAAAO,gBAAA,KAAAA,gBAAA,GAAAL,+CAAA,CAECH,CAAAA,8BAAAA,EAAAA,iBAAAA,EAAAA,IAAAA,CAAAA,CAAAA,CAAAA,EAAAA,WAAW,EAGf,CAACM,QAAQ,IAAIC,SAAS,KAAKP,WAAW,CAAA,CAAA;AAAA;;;;"}
@@ -21,10 +21,10 @@ var _plasmacore = require("@salutejs/plasma-core");
21
21
  var _utils = require("../../utils");
22
22
  var _engines = require("../../engines");
23
23
  var _hooks = require("../../hooks");
24
+ var _Icon = require("../_Icon");
24
25
  var _Popup = require("../Popup");
25
26
  var _Overlay = require("../Overlay");
26
27
  var _utils1 = require("../Popup/utils");
27
- var _IconClose = require("../_Icon/Icons/IconClose");
28
28
  var _Modaltokens = require("./Modal.tokens");
29
29
  var _hooks1 = require("./hooks");
30
30
  var _base = require("./variations/_view/base");
@@ -130,7 +130,7 @@ function _object_without_properties_loose(source, excluded) {
130
130
  var Popup = (0, _engines.component)(_Popup.popupConfig);
131
131
  var modalRoot = function(Root) {
132
132
  return /*#__PURE__*/ (0, _react.forwardRef)(function(_param, outerRootRef) {
133
- var id = _param.id, withAnimation = _param.withAnimation, onClose = _param.onClose, onOverlayClick = _param.onOverlayClick, onEscKeyDown = _param.onEscKeyDown, _param_closeOnEsc = _param.closeOnEsc, closeOnEsc = _param_closeOnEsc === void 0 ? true : _param_closeOnEsc, _param_closeOnOverlayClick = _param.closeOnOverlayClick, closeOnOverlayClick = _param_closeOnOverlayClick === void 0 ? true : _param_closeOnOverlayClick, withBlur = _param.withBlur, _param_isFocusTrapped = _param.isFocusTrapped, isFocusTrapped = _param_isFocusTrapped === void 0 ? true : _param_isFocusTrapped, initialFocusRef = _param.initialFocusRef, focusAfterRef = _param.focusAfterRef, zIndex = _param.zIndex, popupInfo = _param.popupInfo, children = _param.children, view = _param.view, opened = _param.opened, isOpen = _param.isOpen, hasBody = _param.hasBody, hasClose = _param.hasClose, resizable = _param.resizable, draggable = _param.draggable, rest = _object_without_properties(_param, [
133
+ var id = _param.id, withAnimation = _param.withAnimation, onClose = _param.onClose, onOverlayClick = _param.onOverlayClick, onEscKeyDown = _param.onEscKeyDown, _param_closeOnEsc = _param.closeOnEsc, closeOnEsc = _param_closeOnEsc === void 0 ? true : _param_closeOnEsc, _param_closeOnOverlayClick = _param.closeOnOverlayClick, closeOnOverlayClick = _param_closeOnOverlayClick === void 0 ? true : _param_closeOnOverlayClick, withBlur = _param.withBlur, _param_isFocusTrapped = _param.isFocusTrapped, isFocusTrapped = _param_isFocusTrapped === void 0 ? true : _param_isFocusTrapped, initialFocusRef = _param.initialFocusRef, focusAfterRef = _param.focusAfterRef, zIndex = _param.zIndex, popupInfo = _param.popupInfo, children = _param.children, view = _param.view, opened = _param.opened, isOpen = _param.isOpen, hasBody = _param.hasBody, hasClose = _param.hasClose, resizable = _param.resizable, draggable = _param.draggable, overlay = _param.overlay, rest = _object_without_properties(_param, [
134
134
  "id",
135
135
  "withAnimation",
136
136
  "onClose",
@@ -151,7 +151,8 @@ var modalRoot = function(Root) {
151
151
  "hasBody",
152
152
  "hasClose",
153
153
  "resizable",
154
- "draggable"
154
+ "draggable",
155
+ "overlay"
155
156
  ]);
156
157
  var innerIsOpen = Boolean(isOpen || opened);
157
158
  var innerHasClose = hasClose === undefined && hasBody || hasClose;
@@ -204,9 +205,9 @@ var modalRoot = function(Root) {
204
205
  popupInfo: modalInfo,
205
206
  withAnimation: withAnimation,
206
207
  zIndex: zIndex,
207
- overlay: hasBody ? overlayNode : /*#__PURE__*/ _react.default.createElement(Root, {
208
+ overlay: /*#__PURE__*/ _react.default.createElement(Root, {
208
209
  view: view
209
- }, overlayNode),
210
+ }, overlay || overlayNode),
210
211
  draggable: draggable,
211
212
  resizable: resizable
212
213
  }, rest), hasBody ? /*#__PURE__*/ _react.default.createElement(Root, {
@@ -214,7 +215,7 @@ var modalRoot = function(Root) {
214
215
  }, /*#__PURE__*/ _react.default.createElement(_Modalstyles.ModalBody, null, /*#__PURE__*/ _react.default.createElement(_Modalstyles.ModalContent, null, innerHasClose && /*#__PURE__*/ _react.default.createElement(_Modalstyles.CloseButton, {
215
216
  onClick: onClose,
216
217
  "data-test": "modal-close"
217
- }, /*#__PURE__*/ _react.default.createElement(_IconClose.IconClose, {
218
+ }, /*#__PURE__*/ _react.default.createElement(_Icon.IconClose, {
218
219
  size: "s",
219
220
  color: "currentColor"
220
221
  })), children))) : /*#__PURE__*/ _react.default.createElement(_react.default.Fragment, null, children));
@@ -0,0 +1,47 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "applyDisabled", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return applyDisabled;
9
+ }
10
+ });
11
+ var _styledcomponents = require("styled-components");
12
+ function _tagged_template_literal(strings, raw) {
13
+ if (!raw) {
14
+ raw = strings.slice(0);
15
+ }
16
+ return Object.freeze(Object.defineProperties(strings, {
17
+ raw: {
18
+ value: Object.freeze(raw)
19
+ }
20
+ }));
21
+ }
22
+ function _templateObject() {
23
+ var data = _tagged_template_literal([
24
+ "\n opacity: 0.4;\n cursor: not-allowed;\n\n /* stylelint-disable-next-line selector-nested-pattern */\n &:hover,\n &:active {\n transform: none;\n }\n"
25
+ ]);
26
+ _templateObject = function _templateObject() {
27
+ return data;
28
+ };
29
+ return data;
30
+ }
31
+ function _templateObject1() {
32
+ var data = _tagged_template_literal([
33
+ "\n &:disabled {\n ",
34
+ "\n }\n\n ",
35
+ "\n"
36
+ ]);
37
+ _templateObject1 = function _templateObject() {
38
+ return data;
39
+ };
40
+ return data;
41
+ }
42
+ // TODO: #2033
43
+ var disabledCss = (0, _styledcomponents.css)(_templateObject());
44
+ var applyDisabled = function(param) {
45
+ var disabled = param.disabled, $disabled = param.$disabled;
46
+ return (0, _styledcomponents.css)(_templateObject1(), disabledCss, (disabled || $disabled) && disabledCss);
47
+ };
@@ -12,6 +12,7 @@ _export_star(require("./addFocus"), exports);
12
12
  _export_star(require("./typography"), exports);
13
13
  _export_star(require("./applyRoundness"), exports);
14
14
  _export_star(require("./applySkeletonGradient"), exports);
15
+ _export_star(require("./applyDisabled"), exports);
15
16
  _export_star(require("./applyHidden"), exports);
16
17
  _export_star(require("./createApplyPaperMixin"), exports);
17
18
  function _export_star(from, to) {
@@ -58,10 +58,10 @@ import { useForkRef } from "@salutejs/plasma-core";
58
58
  import { safeUseId } from "../../utils";
59
59
  import { component } from "../../engines";
60
60
  import { useFocusTrap } from "../../hooks";
61
+ import { IconClose } from "../_Icon";
61
62
  import { popupConfig, usePopupContext } from "../Popup";
62
63
  import { Overlay } from "../Overlay";
63
64
  import { DEFAULT_Z_INDEX } from "../Popup/utils";
64
- import { IconClose } from "../_Icon/Icons/IconClose";
65
65
  import { classes, tokens } from "./Modal.tokens";
66
66
  import { useModal } from "./hooks";
67
67
  import { base as viewCSS } from "./variations/_view/base";
@@ -74,7 +74,7 @@ var Popup = component(popupConfig);
74
74
  * Управляет показом/скрытием, подложкой и анимацией визуальной части модального окна.
75
75
  */ export var modalRoot = function(Root) {
76
76
  return /*#__PURE__*/ forwardRef(function(_param, outerRootRef) {
77
- var id = _param.id, withAnimation = _param.withAnimation, onClose = _param.onClose, onOverlayClick = _param.onOverlayClick, onEscKeyDown = _param.onEscKeyDown, _param_closeOnEsc = _param.closeOnEsc, closeOnEsc = _param_closeOnEsc === void 0 ? true : _param_closeOnEsc, _param_closeOnOverlayClick = _param.closeOnOverlayClick, closeOnOverlayClick = _param_closeOnOverlayClick === void 0 ? true : _param_closeOnOverlayClick, withBlur = _param.withBlur, _param_isFocusTrapped = _param.isFocusTrapped, isFocusTrapped = _param_isFocusTrapped === void 0 ? true : _param_isFocusTrapped, initialFocusRef = _param.initialFocusRef, focusAfterRef = _param.focusAfterRef, zIndex = _param.zIndex, popupInfo = _param.popupInfo, children = _param.children, view = _param.view, opened = _param.opened, isOpen = _param.isOpen, hasBody = _param.hasBody, hasClose = _param.hasClose, resizable = _param.resizable, draggable = _param.draggable, rest = _object_without_properties(_param, [
77
+ var id = _param.id, withAnimation = _param.withAnimation, onClose = _param.onClose, onOverlayClick = _param.onOverlayClick, onEscKeyDown = _param.onEscKeyDown, _param_closeOnEsc = _param.closeOnEsc, closeOnEsc = _param_closeOnEsc === void 0 ? true : _param_closeOnEsc, _param_closeOnOverlayClick = _param.closeOnOverlayClick, closeOnOverlayClick = _param_closeOnOverlayClick === void 0 ? true : _param_closeOnOverlayClick, withBlur = _param.withBlur, _param_isFocusTrapped = _param.isFocusTrapped, isFocusTrapped = _param_isFocusTrapped === void 0 ? true : _param_isFocusTrapped, initialFocusRef = _param.initialFocusRef, focusAfterRef = _param.focusAfterRef, zIndex = _param.zIndex, popupInfo = _param.popupInfo, children = _param.children, view = _param.view, opened = _param.opened, isOpen = _param.isOpen, hasBody = _param.hasBody, hasClose = _param.hasClose, resizable = _param.resizable, draggable = _param.draggable, overlay = _param.overlay, rest = _object_without_properties(_param, [
78
78
  "id",
79
79
  "withAnimation",
80
80
  "onClose",
@@ -95,7 +95,8 @@ var Popup = component(popupConfig);
95
95
  "hasBody",
96
96
  "hasClose",
97
97
  "resizable",
98
- "draggable"
98
+ "draggable",
99
+ "overlay"
99
100
  ]);
100
101
  var innerIsOpen = Boolean(isOpen || opened);
101
102
  var innerHasClose = hasClose === undefined && hasBody || hasClose;
@@ -148,9 +149,9 @@ var Popup = component(popupConfig);
148
149
  popupInfo: modalInfo,
149
150
  withAnimation: withAnimation,
150
151
  zIndex: zIndex,
151
- overlay: hasBody ? overlayNode : /*#__PURE__*/ React.createElement(Root, {
152
+ overlay: /*#__PURE__*/ React.createElement(Root, {
152
153
  view: view
153
- }, overlayNode),
154
+ }, overlay || overlayNode),
154
155
  draggable: draggable,
155
156
  resizable: resizable
156
157
  }, rest), hasBody ? /*#__PURE__*/ React.createElement(Root, {
@@ -0,0 +1,39 @@
1
+ function _tagged_template_literal(strings, raw) {
2
+ if (!raw) {
3
+ raw = strings.slice(0);
4
+ }
5
+ return Object.freeze(Object.defineProperties(strings, {
6
+ raw: {
7
+ value: Object.freeze(raw)
8
+ }
9
+ }));
10
+ }
11
+ function _templateObject() {
12
+ var data = _tagged_template_literal([
13
+ "\n opacity: 0.4;\n cursor: not-allowed;\n\n /* stylelint-disable-next-line selector-nested-pattern */\n &:hover,\n &:active {\n transform: none;\n }\n"
14
+ ]);
15
+ _templateObject = function _templateObject() {
16
+ return data;
17
+ };
18
+ return data;
19
+ }
20
+ function _templateObject1() {
21
+ var data = _tagged_template_literal([
22
+ "\n &:disabled {\n ",
23
+ "\n }\n\n ",
24
+ "\n"
25
+ ]);
26
+ _templateObject1 = function _templateObject() {
27
+ return data;
28
+ };
29
+ return data;
30
+ }
31
+ import { css } from "styled-components";
32
+ // TODO: #2033
33
+ var disabledCss = css(_templateObject());
34
+ /**
35
+ * Миксин неактивной кнопки
36
+ */ export var applyDisabled = function(param) {
37
+ var disabled = param.disabled, $disabled = param.$disabled;
38
+ return css(_templateObject1(), disabledCss, (disabled || $disabled) && disabledCss);
39
+ };
@@ -8,5 +8,6 @@ export * from "./addFocus";
8
8
  export * from "./typography";
9
9
  export * from "./applyRoundness";
10
10
  export * from "./applySkeletonGradient";
11
+ export * from "./applyDisabled";
11
12
  export * from "./applyHidden";
12
13
  export * from "./createApplyPaperMixin";
@@ -494,6 +494,13 @@ function _regeneratorRuntime() {
494
494
  function _slicedToArray(r, e) {
495
495
  return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest();
496
496
  }
497
+ function _taggedTemplateLiteral(e, t) {
498
+ return t || (t = e.slice(0)), Object.freeze(Object.defineProperties(e, {
499
+ raw: {
500
+ value: Object.freeze(t)
501
+ }
502
+ }));
503
+ }
497
504
  function _toArray(r) {
498
505
  return _arrayWithHoles(r) || _iterableToArray(r) || _unsupportedIterableToArray(r) || _nonIterableRest();
499
506
  }
@@ -531,5 +538,5 @@ function _unsupportedIterableToArray(r, a) {
531
538
  }
532
539
  }
533
540
 
534
- export { _arrayLikeToArray as arrayLikeToArray, _arrayWithHoles as arrayWithHoles, _arrayWithoutHoles as arrayWithoutHoles, _asyncToGenerator as asyncToGenerator, _classCallCheck as classCallCheck, _createClass as createClass, _createForOfIteratorHelper as createForOfIteratorHelper, _defineProperty as defineProperty, _extends as extends, _iterableToArray as iterableToArray, _iterableToArrayLimit as iterableToArrayLimit, _nonIterableRest as nonIterableRest, _nonIterableSpread as nonIterableSpread, _objectSpread2 as objectSpread2, _objectWithoutProperties as objectWithoutProperties, _objectWithoutPropertiesLoose as objectWithoutPropertiesLoose, _regeneratorRuntime as regeneratorRuntime, _slicedToArray as slicedToArray, _toArray as toArray, _toConsumableArray as toConsumableArray, _toPrimitive as toPrimitive, _toPropertyKey as toPropertyKey, _typeof as typeof, _unsupportedIterableToArray as unsupportedIterableToArray };
541
+ export { _arrayLikeToArray as arrayLikeToArray, _arrayWithHoles as arrayWithHoles, _arrayWithoutHoles as arrayWithoutHoles, _asyncToGenerator as asyncToGenerator, _classCallCheck as classCallCheck, _createClass as createClass, _createForOfIteratorHelper as createForOfIteratorHelper, _defineProperty as defineProperty, _extends as extends, _iterableToArray as iterableToArray, _iterableToArrayLimit as iterableToArrayLimit, _nonIterableRest as nonIterableRest, _nonIterableSpread as nonIterableSpread, _objectSpread2 as objectSpread2, _objectWithoutProperties as objectWithoutProperties, _objectWithoutPropertiesLoose as objectWithoutPropertiesLoose, _regeneratorRuntime as regeneratorRuntime, _slicedToArray as slicedToArray, _taggedTemplateLiteral as taggedTemplateLiteral, _toArray as toArray, _toConsumableArray as toConsumableArray, _toPrimitive as toPrimitive, _toPropertyKey as toPropertyKey, _typeof as typeof, _unsupportedIterableToArray as unsupportedIterableToArray };
535
542
  //# sourceMappingURL=_rollupPluginBabelHelpers.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"_rollupPluginBabelHelpers.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"_rollupPluginBabelHelpers.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -1,3 +1,5 @@
1
+ .IconRoot_7pl7ig_svvlqhf__32c458a1{display:-webkit-inline-box;display:-webkit-inline-flex;display:-ms-inline-flexbox;display:inline-flex;width:var(--svvlqhf-0);height:var(--svvlqhf-0);-webkit-flex:0 0 var(--svvlqhf-0);-ms-flex:0 0 var(--svvlqhf-0);flex:0 0 var(--svvlqhf-0);}
2
+
1
3
  .Popup_styles_kpf3dd_bvkpf6n__890879ed .Popup_styles_kpf3dd_draggablePopupWrapper__890879ed{cursor:-webkit-grab;cursor:-moz-grab;cursor:grab;}.Popup_styles_kpf3dd_bvkpf6n__890879ed .Popup_styles_kpf3dd_draggingPopupWrapper__890879ed{cursor:-webkit-grabbing;cursor:-moz-grabbing;cursor:grabbing;}.Popup_styles_kpf3dd_bvkpf6n__890879ed .Popup_styles_kpf3dd_resizableContainerNoSelect__890879ed{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-user-select:none;}
2
4
 
3
5
  .Popup_styles_kpf3dd_s5u7tqa__890879ed{width:0;}
@@ -7,8 +9,6 @@
7
9
 
8
10
  .Overlay_styles_cxej3y_s1afr8la__70d4dd9a{position:fixed;inset:0;z-index:var(--s1afr8la-0);--plasma_private-overlay-background-color:var(--s1afr8la-1);--plasma_private-overlay-backdrop-filter:var(--s1afr8la-2);background:var(--s1afr8la-3);-webkit-backdrop-filter:var(--s1afr8la-4);backdrop-filter:var(--s1afr8la-4);cursor:var(--s1afr8la-5);}
9
11
 
10
- .IconRoot_7pl7ig_svvlqhf__32c458a1{display:-webkit-inline-box;display:-webkit-inline-flex;display:-ms-inline-flexbox;display:inline-flex;width:var(--svvlqhf-0);height:var(--svvlqhf-0);-webkit-flex:0 0 var(--svvlqhf-0);-ms-flex:0 0 var(--svvlqhf-0);flex:0 0 var(--svvlqhf-0);}
11
-
12
12
  .Modal_styles_1obtvtw_b7npn1w__a2f4e50d{height:100%;}
13
13
  .Modal_styles_1obtvtw_m16phoaz__a2f4e50d{height:100%;box-sizing:border-box;border-radius:var(--plasma-modal-body-border-radius);padding:var(--plasma-modal-body-padding);background:var(--plasma-modal-body-background);box-shadow:var(--shadow-down-soft-l);}
14
14
  .Modal_styles_1obtvtw_m5bx5hr__a2f4e50d{position:relative;padding:var(--plasma-modal-content-padding);}
@@ -2,7 +2,6 @@ import { objectWithoutProperties as _objectWithoutProperties, extends as _extend
2
2
  import React, { forwardRef, useMemo, useCallback } from 'react';
3
3
  import { useForkRef } from '@salutejs/plasma-core';
4
4
  import { DEFAULT_Z_INDEX } from '../Popup/utils/index.js';
5
- import { IconClose } from '../_Icon/Icons/IconClose.js';
6
5
  import { classes, tokens } from './Modal.tokens.js';
7
6
  import { base as base$1 } from './variations/_view/base.js';
8
7
  import { getIdLastModal } from './ModalContext.js';
@@ -11,12 +10,13 @@ import { useFocusTrap } from '../../hooks/useFocusTrap.js';
11
10
  import { usePopupContext } from '../Popup/PopupContext.js';
12
11
  import { safeUseId } from '../../utils/react.js';
13
12
  import { useModal } from './hooks/useModal.js';
13
+ import { IconClose } from '../_Icon/Icons/IconClose.js';
14
14
  import { component } from '../../engines/common.js';
15
15
  import { popupConfig } from '../Popup/Popup.js';
16
16
  import { Overlay } from '../Overlay/Overlay.js';
17
17
 
18
18
  var _IconClose;
19
- var _excluded = ["id", "withAnimation", "onClose", "onOverlayClick", "onEscKeyDown", "closeOnEsc", "closeOnOverlayClick", "withBlur", "isFocusTrapped", "initialFocusRef", "focusAfterRef", "zIndex", "popupInfo", "children", "view", "opened", "isOpen", "hasBody", "hasClose", "resizable", "draggable"];
19
+ var _excluded = ["id", "withAnimation", "onClose", "onOverlayClick", "onEscKeyDown", "closeOnEsc", "closeOnOverlayClick", "withBlur", "isFocusTrapped", "initialFocusRef", "focusAfterRef", "zIndex", "popupInfo", "children", "view", "opened", "isOpen", "hasBody", "hasClose", "resizable", "draggable", "overlay"];
20
20
 
21
21
  // issue #823
22
22
  var Popup = /*#__PURE__*/component(popupConfig);
@@ -51,6 +51,7 @@ var modalRoot = function modalRoot(Root) {
51
51
  hasClose = _ref.hasClose,
52
52
  resizable = _ref.resizable,
53
53
  draggable = _ref.draggable,
54
+ overlay = _ref.overlay,
54
55
  rest = _objectWithoutProperties(_ref, _excluded);
55
56
  var innerIsOpen = Boolean(isOpen || opened);
56
57
  var innerHasClose = hasClose === undefined && hasBody || hasClose;
@@ -97,9 +98,9 @@ var modalRoot = function modalRoot(Root) {
97
98
  popupInfo: modalInfo,
98
99
  withAnimation: withAnimation,
99
100
  zIndex: zIndex,
100
- overlay: hasBody ? overlayNode : /*#__PURE__*/React.createElement(Root, {
101
+ overlay: /*#__PURE__*/React.createElement(Root, {
101
102
  view: view
102
- }, overlayNode),
103
+ }, overlay || overlayNode),
103
104
  draggable: draggable,
104
105
  resizable: resizable
105
106
  }, rest), hasBody ? /*#__PURE__*/React.createElement(Root, {
@@ -1 +1 @@
1
- {"version":3,"file":"Modal.js","sources":["../../../src/components/Modal/Modal.tsx"],"sourcesContent":["import React, { forwardRef, useCallback, useMemo } from 'react';\nimport { useForkRef } from '@salutejs/plasma-core';\nimport { safeUseId } from 'src/utils';\nimport { RootProps, component } from 'src/engines';\nimport { useFocusTrap } from 'src/hooks';\n\nimport { popupConfig, usePopupContext } from '../Popup';\nimport { Overlay } from '../Overlay';\nimport { DEFAULT_Z_INDEX } from '../Popup/utils';\nimport { IconClose } from '../_Icon/Icons/IconClose';\n\nimport { classes, tokens } from './Modal.tokens';\nimport { ModalProps } from './Modal.types';\nimport { useModal } from './hooks';\nimport { base as viewCSS } from './variations/_view/base';\nimport { getIdLastModal } from './ModalContext';\nimport { CloseButton, ModalBody, ModalContent, base } from './Modal.styles';\n\n// issue #823\nconst Popup = component(popupConfig);\n\n/**\n * Modal.\n * Управляет показом/скрытием, подложкой и анимацией визуальной части модального окна.\n */\nexport const modalRoot = (Root: RootProps<HTMLDivElement, ModalProps>) =>\n forwardRef<HTMLDivElement, ModalProps>(\n (\n {\n id,\n withAnimation,\n onClose,\n onOverlayClick,\n onEscKeyDown,\n closeOnEsc = true,\n closeOnOverlayClick = true,\n withBlur,\n isFocusTrapped = true,\n initialFocusRef,\n focusAfterRef,\n zIndex,\n popupInfo,\n children,\n view,\n opened,\n isOpen,\n hasBody,\n hasClose,\n resizable,\n draggable,\n ...rest\n },\n outerRootRef,\n ) => {\n const innerIsOpen = Boolean(isOpen || opened);\n const innerHasClose = (hasClose === undefined && hasBody) || hasClose;\n const trapRef = useFocusTrap(isFocusTrapped, initialFocusRef, focusAfterRef, true, !isFocusTrapped);\n const popupController = usePopupContext();\n\n const innerRef = useForkRef<HTMLDivElement>(trapRef, outerRootRef);\n\n const uniqId = safeUseId();\n const innerId = id || uniqId;\n const overlayBackgroundToken = withBlur\n ? `var(${tokens.modalOverlayWithBlurColor})`\n : `var(${tokens.modalOverlayColor})`;\n\n const { modalInfo } = useModal({\n id: innerId,\n isOpen: innerIsOpen,\n closeOnEsc,\n onEscKeyDown,\n onClose,\n popupInfo,\n });\n\n const transparent = useMemo(() => getIdLastModal(Array.from(popupController.items.values())) !== innerId, [\n innerId,\n popupController.items,\n ]);\n\n const onModalOverlayKeyDown = useCallback(\n (event: React.MouseEvent<HTMLDivElement>) => {\n if (onOverlayClick) {\n onOverlayClick(event);\n return;\n }\n\n if (onClose) {\n onClose();\n }\n },\n [closeOnOverlayClick, onOverlayClick, onClose],\n );\n\n const overlayNode = (\n <Overlay\n className={classes.overlay}\n zIndex={zIndex || DEFAULT_Z_INDEX}\n backgroundColorProperty={overlayBackgroundToken}\n withBlur={withBlur}\n transparent={transparent}\n isClickable={closeOnOverlayClick}\n onOverlayClick={onModalOverlayKeyDown}\n />\n );\n\n return (\n <Popup\n id={innerId}\n opened={innerIsOpen}\n ref={innerRef}\n popupInfo={modalInfo}\n withAnimation={withAnimation}\n zIndex={zIndex}\n overlay={hasBody ? overlayNode : <Root view={view}>{overlayNode}</Root>}\n draggable={draggable}\n resizable={resizable}\n {...rest}\n >\n {hasBody ? (\n <Root view={view}>\n <ModalBody>\n <ModalContent>\n {innerHasClose && (\n <CloseButton onClick={onClose} data-test=\"modal-close\">\n <IconClose size=\"s\" color=\"currentColor\" />\n </CloseButton>\n )}\n {children}\n </ModalContent>\n </ModalBody>\n </Root>\n ) : (\n <>{children}</>\n )}\n </Popup>\n );\n },\n );\n\nexport const modalConfig = {\n name: 'Modal',\n tag: 'div',\n layout: modalRoot,\n base,\n variations: {\n view: {\n css: viewCSS,\n },\n },\n defaults: {\n view: 'default',\n },\n};\n"],"names":["Popup","component","popupConfig","modalRoot","Root","forwardRef","_ref","outerRootRef","id","withAnimation","onClose","onOverlayClick","onEscKeyDown","_ref$closeOnEsc","closeOnEsc","_ref$closeOnOverlayCl","closeOnOverlayClick","withBlur","_ref$isFocusTrapped","isFocusTrapped","initialFocusRef","focusAfterRef","zIndex","popupInfo","children","view","opened","isOpen","hasBody","hasClose","resizable","draggable","rest","_objectWithoutProperties","_excluded","innerIsOpen","Boolean","innerHasClose","undefined","trapRef","useFocusTrap","popupController","usePopupContext","innerRef","useForkRef","uniqId","safeUseId","innerId","overlayBackgroundToken","concat","tokens","modalOverlayWithBlurColor","modalOverlayColor","_useModal","useModal","modalInfo","transparent","useMemo","getIdLastModal","Array","from","items","values","onModalOverlayKeyDown","useCallback","event","overlayNode","React","createElement","Overlay","className","classes","overlay","DEFAULT_Z_INDEX","backgroundColorProperty","isClickable","_extends","ref","ModalBody","ModalContent","CloseButton","onClick","_IconClose","IconClose","size","color","Fragment","modalConfig","name","tag","layout","base","variations","css","viewCSS","defaults"],"mappings":"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"}
1
+ {"version":3,"file":"Modal.js","sources":["../../../src/components/Modal/Modal.tsx"],"sourcesContent":["import React, { forwardRef, useCallback, useMemo } from 'react';\nimport { useForkRef } from '@salutejs/plasma-core';\nimport { safeUseId } from 'src/utils';\nimport { RootProps, component } from 'src/engines';\nimport { useFocusTrap } from 'src/hooks';\nimport { IconClose } from 'src/components/_Icon';\n\nimport { popupConfig, usePopupContext } from '../Popup';\nimport { Overlay } from '../Overlay';\nimport { DEFAULT_Z_INDEX } from '../Popup/utils';\n\nimport { classes, tokens } from './Modal.tokens';\nimport { ModalProps } from './Modal.types';\nimport { useModal } from './hooks';\nimport { base as viewCSS } from './variations/_view/base';\nimport { getIdLastModal } from './ModalContext';\nimport { CloseButton, ModalBody, ModalContent, base } from './Modal.styles';\n\n// issue #823\nconst Popup = component(popupConfig);\n\n/**\n * Modal.\n * Управляет показом/скрытием, подложкой и анимацией визуальной части модального окна.\n */\nexport const modalRoot = (Root: RootProps<HTMLDivElement, ModalProps>) =>\n forwardRef<HTMLDivElement, ModalProps>(\n (\n {\n id,\n withAnimation,\n onClose,\n onOverlayClick,\n onEscKeyDown,\n closeOnEsc = true,\n closeOnOverlayClick = true,\n withBlur,\n isFocusTrapped = true,\n initialFocusRef,\n focusAfterRef,\n zIndex,\n popupInfo,\n children,\n view,\n opened,\n isOpen,\n hasBody,\n hasClose,\n resizable,\n draggable,\n overlay,\n ...rest\n },\n outerRootRef,\n ) => {\n const innerIsOpen = Boolean(isOpen || opened);\n const innerHasClose = (hasClose === undefined && hasBody) || hasClose;\n const trapRef = useFocusTrap(isFocusTrapped, initialFocusRef, focusAfterRef, true, !isFocusTrapped);\n const popupController = usePopupContext();\n\n const innerRef = useForkRef<HTMLDivElement>(trapRef, outerRootRef);\n\n const uniqId = safeUseId();\n const innerId = id || uniqId;\n const overlayBackgroundToken = withBlur\n ? `var(${tokens.modalOverlayWithBlurColor})`\n : `var(${tokens.modalOverlayColor})`;\n\n const { modalInfo } = useModal({\n id: innerId,\n isOpen: innerIsOpen,\n closeOnEsc,\n onEscKeyDown,\n onClose,\n popupInfo,\n });\n\n const transparent = useMemo(() => getIdLastModal(Array.from(popupController.items.values())) !== innerId, [\n innerId,\n popupController.items,\n ]);\n\n const onModalOverlayKeyDown = useCallback(\n (event: React.MouseEvent<HTMLDivElement>) => {\n if (onOverlayClick) {\n onOverlayClick(event);\n return;\n }\n\n if (onClose) {\n onClose();\n }\n },\n [closeOnOverlayClick, onOverlayClick, onClose],\n );\n\n const overlayNode = (\n <Overlay\n className={classes.overlay}\n zIndex={zIndex || DEFAULT_Z_INDEX}\n backgroundColorProperty={overlayBackgroundToken}\n withBlur={withBlur}\n transparent={transparent}\n isClickable={closeOnOverlayClick}\n onOverlayClick={onModalOverlayKeyDown}\n />\n );\n\n return (\n <Popup\n id={innerId}\n opened={innerIsOpen}\n ref={innerRef}\n popupInfo={modalInfo}\n withAnimation={withAnimation}\n zIndex={zIndex}\n overlay={<Root view={view}>{overlay || overlayNode}</Root>}\n draggable={draggable}\n resizable={resizable}\n {...rest}\n >\n {hasBody ? (\n <Root view={view}>\n <ModalBody>\n <ModalContent>\n {innerHasClose && (\n <CloseButton onClick={onClose} data-test=\"modal-close\">\n <IconClose size=\"s\" color=\"currentColor\" />\n </CloseButton>\n )}\n {children}\n </ModalContent>\n </ModalBody>\n </Root>\n ) : (\n <>{children}</>\n )}\n </Popup>\n );\n },\n );\n\nexport const modalConfig = {\n name: 'Modal',\n tag: 'div',\n layout: modalRoot,\n base,\n variations: {\n view: {\n css: viewCSS,\n },\n },\n defaults: {\n view: 'default',\n },\n};\n"],"names":["Popup","component","popupConfig","modalRoot","Root","forwardRef","_ref","outerRootRef","id","withAnimation","onClose","onOverlayClick","onEscKeyDown","_ref$closeOnEsc","closeOnEsc","_ref$closeOnOverlayCl","closeOnOverlayClick","withBlur","_ref$isFocusTrapped","isFocusTrapped","initialFocusRef","focusAfterRef","zIndex","popupInfo","children","view","opened","isOpen","hasBody","hasClose","resizable","draggable","overlay","rest","_objectWithoutProperties","_excluded","innerIsOpen","Boolean","innerHasClose","undefined","trapRef","useFocusTrap","popupController","usePopupContext","innerRef","useForkRef","uniqId","safeUseId","innerId","overlayBackgroundToken","concat","tokens","modalOverlayWithBlurColor","modalOverlayColor","_useModal","useModal","modalInfo","transparent","useMemo","getIdLastModal","Array","from","items","values","onModalOverlayKeyDown","useCallback","event","overlayNode","React","createElement","Overlay","className","classes","DEFAULT_Z_INDEX","backgroundColorProperty","isClickable","_extends","ref","ModalBody","ModalContent","CloseButton","onClick","_IconClose","IconClose","size","color","Fragment","modalConfig","name","tag","layout","base","variations","css","viewCSS","defaults"],"mappings":"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"}
package/es/index.js CHANGED
@@ -11,6 +11,7 @@ export { addFocus } from './mixins/addFocus.js';
11
11
  export { body1, body2, body3, bodyL, bodyLBold, bodyM, bodyMBold, bodyS, bodySBold, bodyXS, bodyXSBold, bodyXXS, bodyXXSBold, button1, button2, caption, display1, display2, display3, dsplL, dsplLBold, dsplM, dsplMBold, dsplS, dsplSBold, footnote1, footnote2, h1, h1Bold, h2, h2Bold, h3, h3Bold, h4, h4Bold, h5, h5Bold, headline1, headline2, headline3, headline4, paragraph1, paragraph2, textL, textLBold, textM, textMBold, textS, textSBold, textXS, textXSBold, underline } from './mixins/typography.js';
12
12
  export { applyRoundness, getRoundness, radiuses } from './mixins/applyRoundness.js';
13
13
  export { applySkeletonGradient, getSkeletonColor } from './mixins/applySkeletonGradient.js';
14
+ export { applyDisabled } from './mixins/applyDisabled.js';
14
15
  export { applyHidden } from './mixins/applyHidden.js';
15
16
  export { createApplyPaperMixin } from './mixins/createApplyPaperMixin.js';
16
17
  export { component, mergeConfig } from './engines/common.js';
package/es/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -0,0 +1,18 @@
1
+ import { taggedTemplateLiteral as _taggedTemplateLiteral } from '../_virtual/_rollupPluginBabelHelpers.js';
2
+ import { css } from 'styled-components';
3
+
4
+ var _templateObject, _templateObject2;
5
+ // TODO: #2033
6
+ var disabledCss = /*#__PURE__*/css(_templateObject || (_templateObject = /*#__PURE__*/_taggedTemplateLiteral(["\n opacity: 0.4;\n cursor: not-allowed;\n\n /* stylelint-disable-next-line selector-nested-pattern */\n &:hover,\n &:active {\n transform: none;\n }\n"])));
7
+
8
+ /**
9
+ * Миксин неактивной кнопки
10
+ */
11
+ var applyDisabled = function applyDisabled(_ref) {
12
+ var disabled = _ref.disabled,
13
+ $disabled = _ref.$disabled;
14
+ return css(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral(["\n &:disabled {\n ", "\n }\n\n ", "\n"])), disabledCss, (disabled || $disabled) && disabledCss);
15
+ };
16
+
17
+ export { applyDisabled };
18
+ //# sourceMappingURL=applyDisabled.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"applyDisabled.js","sources":["../../src/mixins/applyDisabled.ts"],"sourcesContent":["import { css, InterpolationFunction } from 'styled-components';\n\nexport interface DisabledProps {\n /**\n * Компонент неактивен\n */\n disabled?: boolean;\n}\n\n// TODO: #2033\nconst disabledCss = css`\n opacity: 0.4;\n cursor: not-allowed;\n\n /* stylelint-disable-next-line selector-nested-pattern */\n &:hover,\n &:active {\n transform: none;\n }\n`;\n\n/**\n * Миксин неактивной кнопки\n */\nexport const applyDisabled: InterpolationFunction<DisabledProps & { $disabled?: boolean }> = ({\n disabled,\n $disabled,\n}) => css`\n &:disabled {\n ${disabledCss}\n }\n\n ${(disabled || $disabled) && disabledCss}\n`;\n"],"names":["disabledCss","css","_templateObject","_taggedTemplateLiteral","applyDisabled","_ref","disabled","$disabled","_templateObject2"],"mappings":";;;;AASA;AACA,IAAMA,WAAW,gBAAGC,GAAG,CAAAC,eAAA,KAAAA,eAAA,gBAAAC,sBAAA,CAStB,CAAA,iLAAA,CAAA,CAAA,CAAA,CAAA,CAAA;;AAED;AACA;AACA;IACaC,aAA6E,GAAG,SAAhFA,aAA6EA,CAAAC,IAAA,EAAA;AAAA,EAAA,IACtFC,QAAQ,GAAAD,IAAA,CAARC,QAAQ;IACRC,SAAS,GAAAF,IAAA,CAATE,SAAS,CAAA;AAAA,EAAA,OACPN,GAAG,CAAAO,gBAAA,KAAAA,gBAAA,GAAAL,sBAAA,CAECH,CAAAA,8BAAAA,EAAAA,iBAAAA,EAAAA,IAAAA,CAAAA,CAAAA,CAAAA,EAAAA,WAAW,EAGf,CAACM,QAAQ,IAAIC,SAAS,KAAKP,WAAW,CAAA,CAAA;AAAA;;;;"}