@alfalab/core-components-modal 4.1.0 → 5.0.1
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 +40 -0
- package/dist/Component.desktop.d.ts +4 -2
- package/dist/Component.desktop.js +11 -10
- package/dist/Component.mobile.d.ts +1 -1
- package/dist/Component.mobile.js +8 -15
- package/dist/Component.responsive.d.ts +4 -4
- package/dist/Component.responsive.js +9 -7
- package/dist/components/closer/Component.d.ts +15 -3
- package/dist/components/closer/Component.js +13 -5
- package/dist/components/closer/index.css +24 -26
- package/dist/components/content/Component.d.ts +1 -3
- package/dist/components/content/Component.desktop.d.ts +2 -5
- package/dist/components/content/Component.desktop.js +4 -4
- package/dist/components/content/Component.js +4 -1
- package/dist/components/content/Component.mobile.js +8 -4
- package/dist/components/content/desktop.css +18 -597
- package/dist/components/content/index.css +28 -0
- package/dist/components/content/mobile.css +9 -584
- package/dist/components/footer/Component.d.ts +1 -3
- package/dist/components/footer/Component.desktop.d.ts +2 -5
- package/dist/components/footer/Component.desktop.js +7 -4
- package/dist/components/footer/Component.js +5 -2
- package/dist/components/footer/Component.mobile.js +11 -4
- package/dist/components/footer/desktop.css +18 -604
- package/dist/components/footer/index.css +41 -0
- package/dist/components/footer/layout.css +28 -28
- package/dist/components/footer/mobile.css +7 -593
- package/dist/components/header/Component.d.ts +23 -5
- package/dist/components/header/Component.desktop.d.ts +5 -4
- package/dist/components/header/Component.desktop.js +12 -6
- package/dist/components/header/Component.js +13 -9
- package/dist/components/header/Component.mobile.d.ts +6 -1
- package/dist/components/header/Component.mobile.js +16 -6
- package/dist/components/header/desktop.css +53 -624
- package/dist/components/header/index.css +85 -0
- package/dist/components/header/mobile.css +17 -607
- package/dist/cssm/Component.desktop.d.ts +4 -2
- package/dist/cssm/Component.desktop.js +11 -7
- package/dist/cssm/Component.mobile.d.ts +1 -1
- package/dist/cssm/Component.mobile.js +8 -12
- package/dist/cssm/Component.responsive.d.ts +4 -4
- package/dist/cssm/Component.responsive.js +10 -5
- package/dist/cssm/components/closer/Component.d.ts +15 -3
- package/dist/cssm/components/closer/Component.js +11 -3
- package/dist/cssm/components/closer/index.module.css +22 -24
- package/dist/cssm/components/content/Component.d.ts +1 -3
- package/dist/cssm/components/content/Component.desktop.d.ts +2 -5
- package/dist/cssm/components/content/Component.desktop.js +3 -2
- package/dist/cssm/components/content/Component.js +5 -3
- package/dist/cssm/components/content/Component.mobile.js +7 -2
- package/dist/cssm/components/content/desktop.module.css +14 -21
- package/dist/cssm/components/content/index.module.css +4 -16
- package/dist/cssm/components/content/mobile.module.css +7 -9
- package/dist/cssm/components/footer/Component.d.ts +1 -3
- package/dist/cssm/components/footer/Component.desktop.d.ts +2 -5
- package/dist/cssm/components/footer/Component.desktop.js +6 -2
- package/dist/cssm/components/footer/Component.js +6 -4
- package/dist/cssm/components/footer/Component.mobile.js +10 -2
- package/dist/cssm/components/footer/desktop.module.css +15 -25
- package/dist/cssm/components/footer/index.module.css +8 -12
- package/dist/cssm/components/footer/layout.module.css +3 -3
- package/dist/cssm/components/footer/mobile.module.css +4 -12
- package/dist/cssm/components/header/Component.d.ts +23 -5
- package/dist/cssm/components/header/Component.desktop.d.ts +5 -4
- package/dist/cssm/components/header/Component.desktop.js +12 -5
- package/dist/cssm/components/header/Component.js +15 -13
- package/dist/cssm/components/header/Component.mobile.d.ts +6 -1
- package/dist/cssm/components/header/Component.mobile.js +16 -5
- package/dist/cssm/components/header/desktop.module.css +51 -35
- package/dist/cssm/components/header/index.module.css +45 -24
- package/dist/cssm/components/header/mobile.module.css +21 -22
- package/dist/cssm/desktop.js +6 -2
- package/dist/cssm/desktop.module.css +10 -6
- package/dist/cssm/index.js +8 -3
- package/dist/cssm/mobile.js +7 -3
- package/dist/cssm/mobile.module.css +3 -3
- package/dist/cssm/responsive.js +8 -3
- package/dist/cssm/vars.css +3 -3
- package/dist/desktop.css +18 -14
- package/dist/desktop.js +5 -4
- package/dist/esm/Component.desktop.d.ts +4 -2
- package/dist/esm/Component.desktop.js +11 -10
- package/dist/esm/Component.mobile.d.ts +1 -1
- package/dist/esm/Component.mobile.js +9 -16
- package/dist/esm/Component.responsive.d.ts +4 -4
- package/dist/esm/Component.responsive.js +9 -7
- package/dist/esm/components/closer/Component.d.ts +15 -3
- package/dist/esm/components/closer/Component.js +13 -5
- package/dist/esm/components/closer/index.css +24 -26
- package/dist/esm/components/content/Component.d.ts +1 -3
- package/dist/esm/components/content/Component.desktop.d.ts +2 -5
- package/dist/esm/components/content/Component.desktop.js +4 -4
- package/dist/esm/components/content/Component.js +4 -1
- package/dist/esm/components/content/Component.mobile.js +7 -4
- package/dist/esm/components/content/desktop.css +18 -597
- package/dist/esm/components/content/index.css +28 -0
- package/dist/esm/components/content/mobile.css +9 -584
- package/dist/esm/components/footer/Component.d.ts +1 -3
- package/dist/esm/components/footer/Component.desktop.d.ts +2 -5
- package/dist/esm/components/footer/Component.desktop.js +7 -4
- package/dist/esm/components/footer/Component.js +5 -2
- package/dist/esm/components/footer/Component.mobile.js +10 -4
- package/dist/esm/components/footer/desktop.css +18 -604
- package/dist/esm/components/footer/index.css +41 -0
- package/dist/esm/components/footer/layout.css +28 -28
- package/dist/esm/components/footer/mobile.css +7 -593
- package/dist/esm/components/header/Component.d.ts +23 -5
- package/dist/esm/components/header/Component.desktop.d.ts +5 -4
- package/dist/esm/components/header/Component.desktop.js +12 -6
- package/dist/esm/components/header/Component.js +13 -9
- package/dist/esm/components/header/Component.mobile.d.ts +6 -1
- package/dist/esm/components/header/Component.mobile.js +14 -6
- package/dist/esm/components/header/desktop.css +53 -624
- package/dist/esm/components/header/index.css +85 -0
- package/dist/esm/components/header/mobile.css +17 -607
- package/dist/esm/desktop.css +18 -14
- package/dist/esm/desktop.js +5 -4
- package/dist/esm/index.js +7 -5
- package/dist/esm/mobile.css +5 -5
- package/dist/esm/mobile.js +6 -5
- package/dist/esm/responsive.js +7 -5
- package/dist/esm/transitions.css +8 -8
- package/dist/esm/transitions.module-386b448e.js +4 -0
- package/dist/esm/{tslib.es6-75e2f0f0.d.ts → tslib.es6-242320f2.d.ts} +0 -0
- package/dist/esm/{tslib.es6-75e2f0f0.js → tslib.es6-242320f2.js} +0 -0
- package/dist/index.js +7 -5
- package/dist/mobile.css +5 -5
- package/dist/mobile.js +6 -5
- package/dist/modern/Component.desktop.d.ts +4 -2
- package/dist/modern/Component.desktop.js +11 -10
- package/dist/modern/Component.mobile.d.ts +1 -1
- package/dist/modern/Component.mobile.js +8 -16
- package/dist/modern/Component.responsive.d.ts +4 -4
- package/dist/modern/Component.responsive.js +8 -6
- package/dist/modern/components/closer/Component.d.ts +15 -3
- package/dist/modern/components/closer/Component.js +11 -4
- package/dist/modern/components/closer/index.css +24 -26
- package/dist/modern/components/content/Component.d.ts +1 -3
- package/dist/modern/components/content/Component.desktop.d.ts +2 -5
- package/dist/modern/components/content/Component.desktop.js +2 -2
- package/dist/modern/components/content/Component.js +4 -1
- package/dist/modern/components/content/Component.mobile.js +3 -3
- package/dist/modern/components/content/desktop.css +18 -597
- package/dist/modern/components/content/index.css +28 -0
- package/dist/modern/components/content/mobile.css +9 -584
- package/dist/modern/components/footer/Component.d.ts +1 -3
- package/dist/modern/components/footer/Component.desktop.d.ts +2 -5
- package/dist/modern/components/footer/Component.desktop.js +4 -2
- package/dist/modern/components/footer/Component.js +5 -2
- package/dist/modern/components/footer/Component.mobile.js +5 -3
- package/dist/modern/components/footer/desktop.css +18 -604
- package/dist/modern/components/footer/index.css +41 -0
- package/dist/modern/components/footer/layout.css +28 -28
- package/dist/modern/components/footer/mobile.css +7 -593
- package/dist/modern/components/header/Component.d.ts +23 -5
- package/dist/modern/components/header/Component.desktop.d.ts +5 -4
- package/dist/modern/components/header/Component.desktop.js +11 -4
- package/dist/modern/components/header/Component.js +11 -6
- package/dist/modern/components/header/Component.mobile.d.ts +6 -1
- package/dist/modern/components/header/Component.mobile.js +9 -5
- package/dist/modern/components/header/desktop.css +53 -624
- package/dist/modern/components/header/index.css +85 -0
- package/dist/modern/components/header/mobile.css +17 -607
- package/dist/modern/desktop.css +18 -14
- package/dist/modern/desktop.js +4 -3
- package/dist/modern/index.js +6 -4
- package/dist/modern/mobile.css +5 -5
- package/dist/modern/mobile.js +5 -4
- package/dist/modern/responsive.js +6 -4
- package/dist/modern/transitions.css +8 -8
- package/dist/modern/transitions.module-386b448e.js +4 -0
- package/dist/responsive.js +7 -5
- package/dist/transitions.css +8 -8
- package/dist/transitions.module-27d19713.js +6 -0
- package/dist/{tslib.es6-ae9d9dce.d.ts → tslib.es6-4834d51a.d.ts} +0 -0
- package/dist/{tslib.es6-ae9d9dce.js → tslib.es6-4834d51a.js} +0 -0
- package/package.json +4 -3
- package/dist/esm/transitions.module-602ea4ef.js +0 -4
- package/dist/modern/transitions.module-602ea4ef.js +0 -4
- package/dist/transitions.module-336e79fe.js +0 -6
|
@@ -8,15 +8,19 @@ var cn = require('classnames');
|
|
|
8
8
|
var coreComponentsBaseModal = require('@alfalab/core-components-base-modal/dist/cssm');
|
|
9
9
|
var mergeRefs = require('react-merge-refs');
|
|
10
10
|
require('./Context.js');
|
|
11
|
-
require('
|
|
11
|
+
require('./components/header/index.module.css');
|
|
12
|
+
require('./components/header/Component.js');
|
|
13
|
+
require('@alfalab/core-components-icon-button/dist/cssm');
|
|
14
|
+
require('@alfalab/icons-glyph/CrossHeavyMIcon');
|
|
12
15
|
require('./components/closer/index.module.css');
|
|
13
16
|
var components_closer_Component = require('./components/closer/Component.js');
|
|
14
|
-
require('./components/header/Component.js');
|
|
15
17
|
require('./components/header/desktop.module.css');
|
|
16
18
|
var components_header_Component_desktop = require('./components/header/Component.desktop.js');
|
|
19
|
+
require('./components/content/index.module.css');
|
|
17
20
|
require('./components/content/Component.js');
|
|
18
21
|
require('./components/content/desktop.module.css');
|
|
19
22
|
var components_content_Component_desktop = require('./components/content/Component.desktop.js');
|
|
23
|
+
require('./components/footer/index.module.css');
|
|
20
24
|
require('./components/footer/layout.module.css');
|
|
21
25
|
require('./components/footer/Component.js');
|
|
22
26
|
require('./components/footer/desktop.module.css');
|
|
@@ -35,6 +39,8 @@ var transitions__default = /*#__PURE__*/_interopDefaultLegacy(transitions);
|
|
|
35
39
|
var ModalDesktopComponent = React.forwardRef(function (_a, ref) {
|
|
36
40
|
var _b;
|
|
37
41
|
var _c = _a.size, size = _c === void 0 ? 's' : _c, fixedPosition = _a.fixedPosition, fullscreen = _a.fullscreen, children = _a.children, className = _a.className, wrapperClassName = _a.wrapperClassName, _d = _a.transitionProps, transitionProps = _d === void 0 ? {} : _d, restProps = tslib_es6.__rest(_a, ["size", "fixedPosition", "fullscreen", "children", "className", "wrapperClassName", "transitionProps"]);
|
|
42
|
+
// TODO: удалить, после удаления пропсы fullscreen
|
|
43
|
+
var componentSize = fullscreen ? 'fullscreen' : size;
|
|
38
44
|
var modalRef = React.useRef(null);
|
|
39
45
|
var handleEntered = React.useCallback(function (node, isAppearing) {
|
|
40
46
|
if (fixedPosition && modalRef.current) {
|
|
@@ -49,11 +55,9 @@ var ModalDesktopComponent = React.forwardRef(function (_a, ref) {
|
|
|
49
55
|
}
|
|
50
56
|
}, [fixedPosition, transitionProps]);
|
|
51
57
|
return (React__default['default'].createElement(coreComponentsBaseModal.BaseModal, tslib_es6.__assign({}, restProps, { ref: mergeRefs__default['default']([ref, modalRef]), wrapperClassName: cn__default['default'](styles__default['default'].wrapper, wrapperClassName, (_b = {},
|
|
52
|
-
_b[styles__default['default'].fullscreen] = fullscreen,
|
|
53
|
-
_b)), className: cn__default['default'](styles__default['default'].component, className,
|
|
54
|
-
return React.isValidElement(child)
|
|
55
|
-
? React.cloneElement(child, { size: child.props.size || size, fullscreen: fullscreen })
|
|
56
|
-
: child;
|
|
58
|
+
_b[styles__default['default'].fullscreen] = componentSize === 'fullscreen',
|
|
59
|
+
_b)), className: cn__default['default'](styles__default['default'].component, className, styles__default['default'][componentSize]), backdropProps: tslib_es6.__assign(tslib_es6.__assign({}, restProps.backdropProps), { invisible: componentSize === 'fullscreen' }), transitionProps: tslib_es6.__assign(tslib_es6.__assign({ classNames: transitions__default['default'] }, transitionProps), { onEntered: handleEntered }) }), React__default['default'].Children.map(children, function (child) {
|
|
60
|
+
return React.isValidElement(child) ? React.cloneElement(child, { size: componentSize }) : child;
|
|
57
61
|
})));
|
|
58
62
|
});
|
|
59
63
|
var ModalDesktop = Object.assign(ModalDesktopComponent, {
|
|
@@ -16,7 +16,7 @@ declare const ModalMobile: React.ForwardRefExoticComponent<BaseModalProps & {
|
|
|
16
16
|
hasCloser?: boolean | undefined;
|
|
17
17
|
} & React.RefAttributes<HTMLDivElement>> & {
|
|
18
18
|
Content: React.FC<import("./components/content/Component").ContentProps>;
|
|
19
|
-
Header: React.FC<import("./components/header/Component").
|
|
19
|
+
Header: React.FC<import("./components/header/Component.mobile").HeaderMobileProps>;
|
|
20
20
|
Footer: React.FC<import("./components/footer/Component").FooterProps>;
|
|
21
21
|
Closer: React.FC<import("./components/closer/Component").CloserProps>;
|
|
22
22
|
};
|
|
@@ -7,15 +7,19 @@ var React = require('react');
|
|
|
7
7
|
var cn = require('classnames');
|
|
8
8
|
var coreComponentsBaseModal = require('@alfalab/core-components-base-modal/dist/cssm');
|
|
9
9
|
require('./Context.js');
|
|
10
|
-
require('
|
|
10
|
+
require('./components/header/index.module.css');
|
|
11
|
+
require('./components/header/Component.js');
|
|
12
|
+
require('@alfalab/core-components-icon-button/dist/cssm');
|
|
13
|
+
require('@alfalab/icons-glyph/CrossHeavyMIcon');
|
|
11
14
|
require('./components/closer/index.module.css');
|
|
12
15
|
var components_closer_Component = require('./components/closer/Component.js');
|
|
13
|
-
require('./components/
|
|
16
|
+
require('./components/content/index.module.css');
|
|
14
17
|
require('./components/content/Component.js');
|
|
18
|
+
require('./components/footer/index.module.css');
|
|
15
19
|
require('./components/footer/layout.module.css');
|
|
16
20
|
require('./components/footer/Component.js');
|
|
17
21
|
var transitions = require('./transitions.module.css');
|
|
18
|
-
|
|
22
|
+
require('@alfalab/icons-glyph/CrossMIcon');
|
|
19
23
|
require('./components/header/mobile.module.css');
|
|
20
24
|
var components_header_Component_mobile = require('./components/header/Component.mobile.js');
|
|
21
25
|
require('./components/content/mobile.module.css');
|
|
@@ -33,15 +37,7 @@ var styles__default = /*#__PURE__*/_interopDefaultLegacy(styles);
|
|
|
33
37
|
|
|
34
38
|
var ModalMobileComponent = React.forwardRef(function (_a, ref) {
|
|
35
39
|
var children = _a.children, className = _a.className, restProps = tslib_es6.__rest(_a, ["children", "className"]);
|
|
36
|
-
|
|
37
|
-
['s', '(max-width: 375px)'],
|
|
38
|
-
['m', '(min-width: 376px)'],
|
|
39
|
-
], 's')[0];
|
|
40
|
-
return (React__default['default'].createElement(coreComponentsBaseModal.BaseModal, tslib_es6.__assign({}, restProps, { ref: ref, transitionProps: tslib_es6.__assign({ classNames: transitions__default['default'] }, restProps.transitionProps), className: cn__default['default'](className, styles__default['default'].component), backdropProps: tslib_es6.__assign(tslib_es6.__assign({}, restProps.backdropProps), { invisible: true }) }), React__default['default'].Children.map(children, function (child) {
|
|
41
|
-
return React.isValidElement(child)
|
|
42
|
-
? React.cloneElement(child, { size: child.props.size || size, fullscreen: true })
|
|
43
|
-
: child;
|
|
44
|
-
})));
|
|
40
|
+
return (React__default['default'].createElement(coreComponentsBaseModal.BaseModal, tslib_es6.__assign({}, restProps, { ref: ref, transitionProps: tslib_es6.__assign({ classNames: transitions__default['default'] }, restProps.transitionProps), className: cn__default['default'](className, styles__default['default'].component) }), children));
|
|
45
41
|
});
|
|
46
42
|
var ModalMobile = Object.assign(ModalMobileComponent, {
|
|
47
43
|
Content: components_content_Component_mobile.ContentMobile,
|
|
@@ -6,14 +6,14 @@ type ModalResponsiveProps = ModalMobileProps & ModalDesktopProps;
|
|
|
6
6
|
declare const ModalResponsive: React.ForwardRefExoticComponent<import("packages/base-modal/src").BaseModalProps & {
|
|
7
7
|
hasCloser?: boolean | undefined;
|
|
8
8
|
} & {
|
|
9
|
-
size?: "s" | "m" | "l" | undefined;
|
|
9
|
+
size?: "s" | "m" | "l" | "xl" | "fullscreen" | undefined;
|
|
10
10
|
fullscreen?: boolean | undefined;
|
|
11
11
|
fixedPosition?: boolean | undefined;
|
|
12
12
|
hasCloser?: boolean | undefined;
|
|
13
13
|
} & React.RefAttributes<HTMLDivElement>> & {
|
|
14
|
-
Header: React.FC<import("./components/header/Component.desktop").HeaderDesktopProps> | React.FC<import("./components/header/Component").
|
|
15
|
-
Content: React.FC<import("./components/content/Component
|
|
16
|
-
Footer: React.FC<import("./components/footer/Component
|
|
14
|
+
Header: React.FC<import("./components/header/Component.desktop").HeaderDesktopProps> | React.FC<import("./components/header/Component.mobile").HeaderMobileProps>;
|
|
15
|
+
Content: React.FC<import("./components/content/Component").ContentProps> | React.FC<import("./components/content/Component.desktop").ContentDesktopProps>;
|
|
16
|
+
Footer: React.FC<import("./components/footer/Component").FooterProps> | React.FC<import("./components/footer/Component.desktop").FooterDesktopProps>;
|
|
17
17
|
Closer: React.FC<import("./components/closer/Component").CloserProps>;
|
|
18
18
|
};
|
|
19
19
|
export { ModalResponsiveProps, ModalResponsive };
|
|
@@ -8,15 +8,19 @@ require('classnames');
|
|
|
8
8
|
require('@alfalab/core-components-base-modal/dist/cssm');
|
|
9
9
|
require('react-merge-refs');
|
|
10
10
|
require('./Context.js');
|
|
11
|
-
require('
|
|
11
|
+
require('./components/header/index.module.css');
|
|
12
|
+
require('./components/header/Component.js');
|
|
13
|
+
require('@alfalab/core-components-icon-button/dist/cssm');
|
|
14
|
+
require('@alfalab/icons-glyph/CrossHeavyMIcon');
|
|
12
15
|
require('./components/closer/index.module.css');
|
|
13
16
|
var components_closer_Component = require('./components/closer/Component.js');
|
|
14
|
-
require('./components/header/Component.js');
|
|
15
17
|
require('./components/header/desktop.module.css');
|
|
16
18
|
require('./components/header/Component.desktop.js');
|
|
19
|
+
require('./components/content/index.module.css');
|
|
17
20
|
require('./components/content/Component.js');
|
|
18
21
|
require('./components/content/desktop.module.css');
|
|
19
22
|
require('./components/content/Component.desktop.js');
|
|
23
|
+
require('./components/footer/index.module.css');
|
|
20
24
|
require('./components/footer/layout.module.css');
|
|
21
25
|
require('./components/footer/Component.js');
|
|
22
26
|
require('./components/footer/desktop.module.css');
|
|
@@ -24,7 +28,7 @@ require('./components/footer/Component.desktop.js');
|
|
|
24
28
|
require('./desktop.module.css');
|
|
25
29
|
require('./transitions.module.css');
|
|
26
30
|
var Component_desktop = require('./Component.desktop.js');
|
|
27
|
-
|
|
31
|
+
require('@alfalab/icons-glyph/CrossMIcon');
|
|
28
32
|
require('./components/header/mobile.module.css');
|
|
29
33
|
require('./components/header/Component.mobile.js');
|
|
30
34
|
require('./components/content/mobile.module.css');
|
|
@@ -33,6 +37,7 @@ require('./components/footer/mobile.module.css');
|
|
|
33
37
|
require('./components/footer/Component.mobile.js');
|
|
34
38
|
require('./mobile.module.css');
|
|
35
39
|
var Component_mobile = require('./Component.mobile.js');
|
|
40
|
+
var hooks = require('@alfalab/hooks');
|
|
36
41
|
|
|
37
42
|
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
38
43
|
|
|
@@ -52,8 +57,8 @@ function createResponsive(desktop, mobile) {
|
|
|
52
57
|
var ModalResponsiveComponent = React.forwardRef(function (_a, ref) {
|
|
53
58
|
var children = _a.children, restProps = tslib_es6.__rest(_a, ["children"]);
|
|
54
59
|
var view = hooks.useMedia([
|
|
55
|
-
['mobile', '(max-width:
|
|
56
|
-
['desktop', '(min-width:
|
|
60
|
+
['mobile', '(max-width: 1023px)'],
|
|
61
|
+
['desktop', '(min-width: 1024px)'],
|
|
57
62
|
], 'desktop')[0];
|
|
58
63
|
var contextValue = React.useMemo(function () { return ({ view: view }); }, [view]);
|
|
59
64
|
var Component = view === 'desktop' ? Component_desktop.ModalDesktop : Component_mobile.ModalMobile;
|
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import { ButtonHTMLAttributes, FC } from 'react';
|
|
1
|
+
import { ButtonHTMLAttributes, ElementType, FC } from 'react';
|
|
2
|
+
import { IconButtonProps } from "@alfalab/core-components-icon-button";
|
|
2
3
|
type CloserProps = ButtonHTMLAttributes<HTMLButtonElement> & {
|
|
3
4
|
/**
|
|
4
5
|
* Дополнительный класс
|
|
@@ -9,9 +10,20 @@ type CloserProps = ButtonHTMLAttributes<HTMLButtonElement> & {
|
|
|
9
10
|
*/
|
|
10
11
|
align?: 'left' | 'right';
|
|
11
12
|
/**
|
|
12
|
-
*
|
|
13
|
+
* Размер кнопки
|
|
13
14
|
*/
|
|
14
|
-
|
|
15
|
+
size?: IconButtonProps['size'];
|
|
16
|
+
/**
|
|
17
|
+
* Фиксирует крестик
|
|
18
|
+
*/
|
|
19
|
+
sticky?: boolean;
|
|
20
|
+
/**
|
|
21
|
+
* Иконка
|
|
22
|
+
*/
|
|
23
|
+
icon?: ElementType;
|
|
15
24
|
};
|
|
25
|
+
/**
|
|
26
|
+
* @deprecated Компонент только для внутреннего использования. Используйте <Header />
|
|
27
|
+
*/
|
|
16
28
|
declare const Closer: FC<CloserProps>;
|
|
17
29
|
export { CloserProps, Closer };
|
|
@@ -7,7 +7,8 @@ var React = require('react');
|
|
|
7
7
|
var cn = require('classnames');
|
|
8
8
|
require('@alfalab/core-components-base-modal/dist/cssm');
|
|
9
9
|
var Context = require('../../Context.js');
|
|
10
|
-
var
|
|
10
|
+
var coreComponentsIconButton = require('@alfalab/core-components-icon-button/dist/cssm');
|
|
11
|
+
var CrossHeavyMIcon = require('@alfalab/icons-glyph/CrossHeavyMIcon');
|
|
11
12
|
var styles = require('./index.module.css');
|
|
12
13
|
|
|
13
14
|
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
@@ -16,13 +17,20 @@ var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
|
|
|
16
17
|
var cn__default = /*#__PURE__*/_interopDefaultLegacy(cn);
|
|
17
18
|
var styles__default = /*#__PURE__*/_interopDefaultLegacy(styles);
|
|
18
19
|
|
|
20
|
+
/**
|
|
21
|
+
* @deprecated Компонент только для внутреннего использования. Используйте <Header />
|
|
22
|
+
*/
|
|
19
23
|
var Closer = function (_a) {
|
|
20
|
-
var
|
|
24
|
+
var _b;
|
|
25
|
+
var className = _a.className, _c = _a.size, size = _c === void 0 ? 's' : _c, sticky = _a.sticky, _d = _a.icon, icon = _d === void 0 ? CrossHeavyMIcon.CrossHeavyMIcon : _d, restProps = tslib_es6.__rest(_a, ["className", "size", "sticky", "icon"]);
|
|
21
26
|
var onClose = React.useContext(Context.ModalContext).onClose;
|
|
22
27
|
var handleClick = React.useCallback(function (event) {
|
|
23
28
|
onClose(event, 'closerClick');
|
|
24
29
|
}, [onClose]);
|
|
25
|
-
return (React__default['default'].createElement(
|
|
30
|
+
return (React__default['default'].createElement("div", { className: cn__default['default'](styles__default['default'].closer, className, (_b = {},
|
|
31
|
+
_b[styles__default['default'].sticky] = sticky,
|
|
32
|
+
_b)) },
|
|
33
|
+
React__default['default'].createElement(coreComponentsIconButton.IconButton, tslib_es6.__assign({ size: size, className: styles__default['default'].button, "aria-label": '\u0437\u0430\u043A\u0440\u044B\u0442\u044C', onClick: handleClick, icon: icon }, restProps))));
|
|
26
34
|
};
|
|
27
35
|
|
|
28
36
|
exports.Closer = Closer;
|
|
@@ -1,3 +1,6 @@
|
|
|
1
|
+
:root {
|
|
2
|
+
--color-light-bg-primary-alpha-40: rgba(255, 255, 255, 0.4);
|
|
3
|
+
}
|
|
1
4
|
:root {
|
|
2
5
|
|
|
3
6
|
/* Hard */
|
|
@@ -16,36 +19,31 @@
|
|
|
16
19
|
|
|
17
20
|
/* paddings */
|
|
18
21
|
|
|
19
|
-
/*
|
|
20
|
-
--modal-closer-icon: url('https://alfabank.gcdn.co/icons/glyph_cross_m.svg');
|
|
22
|
+
/* scroll */
|
|
21
23
|
|
|
22
|
-
/*
|
|
24
|
+
/* desktop */
|
|
23
25
|
|
|
24
|
-
/*
|
|
26
|
+
/* mobile */
|
|
27
|
+
}
|
|
28
|
+
:root {
|
|
29
|
+
--modal-closer-bg-color: var(--color-light-bg-primary-alpha-40);
|
|
25
30
|
}
|
|
26
31
|
.closer {
|
|
32
|
+
flex-shrink: 0;
|
|
27
33
|
width: 48px;
|
|
28
34
|
height: 48px;
|
|
29
|
-
background-image: var(--modal-closer-icon);
|
|
30
|
-
background-position: center;
|
|
31
|
-
background-repeat: no-repeat;
|
|
32
|
-
flex-shrink: 0;
|
|
33
|
-
transition: opacity 0.2s ease-out
|
|
34
|
-
}
|
|
35
|
-
.closer:hover {
|
|
36
|
-
opacity: 0.7;
|
|
37
|
-
}
|
|
38
|
-
.closer:active {
|
|
39
|
-
opacity: 0.5;
|
|
40
|
-
}
|
|
41
|
-
.left,
|
|
42
|
-
.right {
|
|
43
|
-
position: sticky;
|
|
44
|
-
top: calc(var(--modal-vertical-padding) * -1);
|
|
45
|
-
}
|
|
46
|
-
.right {
|
|
47
35
|
margin-left: auto;
|
|
36
|
+
display: flex;
|
|
37
|
+
align-items: center;
|
|
38
|
+
justify-content: center;
|
|
48
39
|
}
|
|
49
|
-
.
|
|
50
|
-
|
|
40
|
+
.button {
|
|
41
|
+
background: var(--modal-closer-bg-color);
|
|
42
|
+
-webkit-backdrop-filter: blur(10px);
|
|
43
|
+
backdrop-filter: blur(10px);
|
|
44
|
+
border-radius: 50px;
|
|
45
|
+
}
|
|
46
|
+
.sticky {
|
|
47
|
+
position: sticky;
|
|
48
|
+
top: calc(var(--modal-vertical-padding) * -1);
|
|
51
49
|
}
|
|
@@ -1,14 +1,11 @@
|
|
|
1
1
|
import { FC } from 'react';
|
|
2
2
|
import { ContentProps } from "./Component";
|
|
3
|
+
import { ModalDesktopProps } from "../../Component.desktop";
|
|
3
4
|
type ContentDesktopProps = ContentProps & {
|
|
4
5
|
/**
|
|
5
6
|
* Размер
|
|
6
7
|
*/
|
|
7
|
-
size?: '
|
|
8
|
-
/**
|
|
9
|
-
* Флаг, что модальное окно открыто на весь экран
|
|
10
|
-
*/
|
|
11
|
-
fullscreen?: boolean;
|
|
8
|
+
size?: ModalDesktopProps['size'];
|
|
12
9
|
};
|
|
13
10
|
declare const ContentDesktop: FC<ContentDesktopProps>;
|
|
14
11
|
export { ContentDesktopProps, ContentDesktop };
|
|
@@ -7,6 +7,7 @@ var React = require('react');
|
|
|
7
7
|
var cn = require('classnames');
|
|
8
8
|
require('@alfalab/core-components-base-modal/dist/cssm');
|
|
9
9
|
require('../../Context.js');
|
|
10
|
+
require('./index.module.css');
|
|
10
11
|
var components_content_Component = require('./Component.js');
|
|
11
12
|
var styles = require('./desktop.module.css');
|
|
12
13
|
|
|
@@ -17,8 +18,8 @@ var cn__default = /*#__PURE__*/_interopDefaultLegacy(cn);
|
|
|
17
18
|
var styles__default = /*#__PURE__*/_interopDefaultLegacy(styles);
|
|
18
19
|
|
|
19
20
|
var ContentDesktop = function (_a) {
|
|
20
|
-
var size = _a.size, className = _a.className,
|
|
21
|
-
return (React__default['default'].createElement(components_content_Component.Content, tslib_es6.__assign({ className: cn__default['default'](className, size && styles__default['default'][size]
|
|
21
|
+
var size = _a.size, className = _a.className, restProps = tslib_es6.__rest(_a, ["size", "className"]);
|
|
22
|
+
return (React__default['default'].createElement(components_content_Component.Content, tslib_es6.__assign({ className: cn__default['default'](className, size && styles__default['default'][size]) }, restProps)));
|
|
22
23
|
};
|
|
23
24
|
|
|
24
25
|
exports.ContentDesktop = ContentDesktop;
|
|
@@ -6,18 +6,20 @@ var React = require('react');
|
|
|
6
6
|
var cn = require('classnames');
|
|
7
7
|
require('@alfalab/core-components-base-modal/dist/cssm');
|
|
8
8
|
var Context = require('../../Context.js');
|
|
9
|
+
var styles = require('./index.module.css');
|
|
9
10
|
|
|
10
11
|
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
11
12
|
|
|
12
13
|
var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
|
|
13
14
|
var cn__default = /*#__PURE__*/_interopDefaultLegacy(cn);
|
|
15
|
+
var styles__default = /*#__PURE__*/_interopDefaultLegacy(styles);
|
|
14
16
|
|
|
15
17
|
var Content = function (_a) {
|
|
16
18
|
var _b;
|
|
17
|
-
var children = _a.children, flex = _a.flex, className = _a.className
|
|
19
|
+
var children = _a.children, flex = _a.flex, className = _a.className;
|
|
18
20
|
var contentRef = React.useContext(Context.ModalContext).contentRef;
|
|
19
|
-
return (React__default['default'].createElement("div", { className: cn__default['default'](
|
|
20
|
-
_b[
|
|
21
|
+
return (React__default['default'].createElement("div", { className: cn__default['default'](styles__default['default'].content, className, (_b = {},
|
|
22
|
+
_b[styles__default['default'].flex] = flex,
|
|
21
23
|
_b)), ref: contentRef }, children));
|
|
22
24
|
};
|
|
23
25
|
|
|
@@ -4,17 +4,22 @@ Object.defineProperty(exports, '__esModule', { value: true });
|
|
|
4
4
|
|
|
5
5
|
var tslib_es6 = require('../../tslib.es6-ce870b46.js');
|
|
6
6
|
var React = require('react');
|
|
7
|
-
require('classnames');
|
|
7
|
+
var cn = require('classnames');
|
|
8
8
|
require('@alfalab/core-components-base-modal/dist/cssm');
|
|
9
9
|
require('../../Context.js');
|
|
10
|
+
require('./index.module.css');
|
|
10
11
|
var components_content_Component = require('./Component.js');
|
|
11
12
|
var styles = require('./mobile.module.css');
|
|
12
13
|
|
|
13
14
|
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
14
15
|
|
|
15
16
|
var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
|
|
17
|
+
var cn__default = /*#__PURE__*/_interopDefaultLegacy(cn);
|
|
16
18
|
var styles__default = /*#__PURE__*/_interopDefaultLegacy(styles);
|
|
17
19
|
|
|
18
|
-
var ContentMobile = function (
|
|
20
|
+
var ContentMobile = function (_a) {
|
|
21
|
+
var className = _a.className, restProps = tslib_es6.__rest(_a, ["className"]);
|
|
22
|
+
return (React__default['default'].createElement(components_content_Component.Content, tslib_es6.__assign({ className: cn__default['default'](className, styles__default['default'].content) }, restProps)));
|
|
23
|
+
};
|
|
19
24
|
|
|
20
25
|
exports.ContentMobile = ContentMobile;
|
|
@@ -7,7 +7,6 @@
|
|
|
7
7
|
/* Hard up */
|
|
8
8
|
}
|
|
9
9
|
:root {
|
|
10
|
-
--gap-4xl: 48px;
|
|
11
10
|
--gap-6xl: 72px;
|
|
12
11
|
}
|
|
13
12
|
:root {
|
|
@@ -15,33 +14,27 @@
|
|
|
15
14
|
/* sizes */
|
|
16
15
|
|
|
17
16
|
/* paddings */
|
|
18
|
-
--modal-s-content-paddings: 0
|
|
19
|
-
--modal-
|
|
20
|
-
--modal-l-content-paddings: 0 var(--gap-6xl) 0;
|
|
21
|
-
--modal-l-content-no-footer-bottom-padding: var(--gap-6xl);
|
|
17
|
+
--modal-s-content-paddings: 0 56px;
|
|
18
|
+
--modal-s-content-only-bottom-padding: 56px;
|
|
22
19
|
|
|
23
|
-
/*
|
|
20
|
+
/* scroll */
|
|
24
21
|
|
|
25
|
-
/*
|
|
22
|
+
/* desktop */
|
|
26
23
|
|
|
27
|
-
/*
|
|
28
|
-
}
|
|
29
|
-
.content {
|
|
30
|
-
composes: content from 'index.module.css';
|
|
31
|
-
}
|
|
32
|
-
.flex {
|
|
33
|
-
composes: flex from 'index.module.css';
|
|
34
|
-
}
|
|
35
|
-
.s {
|
|
36
|
-
padding: var(--modal-s-content-paddings);
|
|
24
|
+
/* mobile */
|
|
37
25
|
}
|
|
26
|
+
.s,
|
|
38
27
|
.m {
|
|
39
|
-
padding: var(--modal-
|
|
28
|
+
padding: var(--modal-s-content-paddings)
|
|
40
29
|
}
|
|
30
|
+
.s:last-child, .m:last-child {
|
|
31
|
+
padding-bottom: var(--modal-s-content-only-bottom-padding);
|
|
32
|
+
}
|
|
41
33
|
.l,
|
|
34
|
+
.xl,
|
|
42
35
|
.fullscreen {
|
|
43
|
-
padding: var(--
|
|
36
|
+
padding: 0 var(--gap-6xl)
|
|
44
37
|
}
|
|
45
|
-
.l:last-child, .fullscreen:last-child {
|
|
46
|
-
padding-bottom: var(--
|
|
38
|
+
.l:last-child, .xl:last-child, .fullscreen:last-child {
|
|
39
|
+
padding-bottom: var(--gap-6xl);
|
|
47
40
|
}
|
|
@@ -6,34 +6,22 @@
|
|
|
6
6
|
|
|
7
7
|
/* Hard up */
|
|
8
8
|
}
|
|
9
|
-
:root {
|
|
10
|
-
--gap-2xl: 32px;
|
|
11
|
-
--gap-4xl: 48px;
|
|
12
|
-
}
|
|
13
9
|
:root {
|
|
14
10
|
|
|
15
11
|
/* sizes */
|
|
16
12
|
|
|
17
13
|
/* paddings */
|
|
18
|
-
--modal-content-no-footer-bottom-padding: var(--gap-4xl);
|
|
19
|
-
--modal-content-no-header-top-padding: var(--gap-2xl);
|
|
20
14
|
|
|
21
|
-
/*
|
|
15
|
+
/* scroll */
|
|
22
16
|
|
|
23
|
-
/*
|
|
17
|
+
/* desktop */
|
|
24
18
|
|
|
25
|
-
/*
|
|
19
|
+
/* mobile */
|
|
26
20
|
}
|
|
27
21
|
.content {
|
|
28
22
|
box-sizing: border-box;
|
|
29
|
-
width: 100
|
|
23
|
+
width: 100%;
|
|
30
24
|
}
|
|
31
|
-
.content:first-child {
|
|
32
|
-
padding-top: var(--modal-content-no-header-top-padding);
|
|
33
|
-
}
|
|
34
|
-
.content:last-child {
|
|
35
|
-
padding-bottom: var(--modal-content-no-footer-bottom-padding);
|
|
36
|
-
}
|
|
37
25
|
.flex {
|
|
38
26
|
flex: 1 1 auto;
|
|
39
27
|
}
|
|
@@ -15,17 +15,15 @@
|
|
|
15
15
|
|
|
16
16
|
/* paddings */
|
|
17
17
|
|
|
18
|
-
/*
|
|
18
|
+
/* scroll */
|
|
19
19
|
|
|
20
|
-
/*
|
|
20
|
+
/* desktop */
|
|
21
21
|
|
|
22
|
-
/*
|
|
22
|
+
/* mobile */
|
|
23
23
|
}
|
|
24
24
|
.content {
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
padding: 0 var(--gap-m) 0;
|
|
28
|
-
}
|
|
29
|
-
.flex {
|
|
30
|
-
composes: flex from 'index.module.css';
|
|
25
|
+
padding: 0 var(--gap-m)
|
|
31
26
|
}
|
|
27
|
+
.content:last-child {
|
|
28
|
+
padding-bottom: var(--gap-m);
|
|
29
|
+
}
|
|
@@ -1,14 +1,11 @@
|
|
|
1
1
|
import { FC } from 'react';
|
|
2
2
|
import { FooterProps } from "./Component";
|
|
3
|
+
import { ModalDesktopProps } from "../../Component.desktop";
|
|
3
4
|
type FooterDesktopProps = FooterProps & {
|
|
4
5
|
/**
|
|
5
6
|
* Размер
|
|
6
7
|
*/
|
|
7
|
-
size?: '
|
|
8
|
-
/**
|
|
9
|
-
* Флаг, что модальное окно открыто на весь экран
|
|
10
|
-
*/
|
|
11
|
-
fullscreen?: boolean;
|
|
8
|
+
size?: ModalDesktopProps['size'];
|
|
12
9
|
};
|
|
13
10
|
declare const FooterDesktop: FC<FooterDesktopProps>;
|
|
14
11
|
export { FooterDesktopProps, FooterDesktop };
|
|
@@ -7,6 +7,7 @@ var React = require('react');
|
|
|
7
7
|
var cn = require('classnames');
|
|
8
8
|
require('@alfalab/core-components-base-modal/dist/cssm');
|
|
9
9
|
require('../../Context.js');
|
|
10
|
+
require('./index.module.css');
|
|
10
11
|
require('./layout.module.css');
|
|
11
12
|
var components_footer_Component = require('./Component.js');
|
|
12
13
|
var styles = require('./desktop.module.css');
|
|
@@ -18,8 +19,11 @@ var cn__default = /*#__PURE__*/_interopDefaultLegacy(cn);
|
|
|
18
19
|
var styles__default = /*#__PURE__*/_interopDefaultLegacy(styles);
|
|
19
20
|
|
|
20
21
|
var FooterDesktop = function (_a) {
|
|
21
|
-
var
|
|
22
|
-
|
|
22
|
+
var _b;
|
|
23
|
+
var size = _a.size, className = _a.className, sticky = _a.sticky, restProps = tslib_es6.__rest(_a, ["size", "className", "sticky"]);
|
|
24
|
+
return (React__default['default'].createElement(components_footer_Component.Footer, tslib_es6.__assign({ className: cn__default['default'](className, styles__default['default'].footer, size && styles__default['default'][size], (_b = {},
|
|
25
|
+
_b[styles__default['default'].sticky] = sticky,
|
|
26
|
+
_b)), sticky: sticky }, restProps)));
|
|
23
27
|
};
|
|
24
28
|
|
|
25
29
|
exports.FooterDesktop = FooterDesktop;
|
|
@@ -6,24 +6,26 @@ var React = require('react');
|
|
|
6
6
|
var cn = require('classnames');
|
|
7
7
|
require('@alfalab/core-components-base-modal/dist/cssm');
|
|
8
8
|
var Context = require('../../Context.js');
|
|
9
|
+
var styles = require('./index.module.css');
|
|
9
10
|
var layoutStyles = require('./layout.module.css');
|
|
10
11
|
|
|
11
12
|
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
12
13
|
|
|
13
14
|
var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
|
|
14
15
|
var cn__default = /*#__PURE__*/_interopDefaultLegacy(cn);
|
|
16
|
+
var styles__default = /*#__PURE__*/_interopDefaultLegacy(styles);
|
|
15
17
|
var layoutStyles__default = /*#__PURE__*/_interopDefaultLegacy(layoutStyles);
|
|
16
18
|
|
|
17
19
|
var Footer = function (_a) {
|
|
18
20
|
var _b;
|
|
19
|
-
var children = _a.children, className = _a.className, sticky = _a.sticky, _c = _a.layout, layout = _c === void 0 ? 'start' : _c, gap = _a.gap
|
|
21
|
+
var children = _a.children, className = _a.className, sticky = _a.sticky, _c = _a.layout, layout = _c === void 0 ? 'start' : _c, gap = _a.gap;
|
|
20
22
|
var _d = React.useContext(Context.ModalContext), footerHighlighted = _d.footerHighlighted, setHasFooter = _d.setHasFooter;
|
|
21
23
|
React.useEffect(function () {
|
|
22
24
|
setHasFooter(true);
|
|
23
25
|
}, [setHasFooter]);
|
|
24
|
-
return (React__default['default'].createElement("div", { className: cn__default['default'](
|
|
25
|
-
_b[
|
|
26
|
-
_b[
|
|
26
|
+
return (React__default['default'].createElement("div", { className: cn__default['default'](styles__default['default'].footer, className, layoutStyles__default['default'][layout], gap && layoutStyles__default['default']["gap-" + gap], (_b = {},
|
|
27
|
+
_b[styles__default['default'].highlighted] = sticky && footerHighlighted,
|
|
28
|
+
_b[styles__default['default'].sticky] = sticky,
|
|
27
29
|
_b)) }, children));
|
|
28
30
|
};
|
|
29
31
|
|
|
@@ -4,9 +4,10 @@ Object.defineProperty(exports, '__esModule', { value: true });
|
|
|
4
4
|
|
|
5
5
|
var tslib_es6 = require('../../tslib.es6-ce870b46.js');
|
|
6
6
|
var React = require('react');
|
|
7
|
-
require('classnames');
|
|
7
|
+
var cn = require('classnames');
|
|
8
8
|
require('@alfalab/core-components-base-modal/dist/cssm');
|
|
9
9
|
require('../../Context.js');
|
|
10
|
+
require('./index.module.css');
|
|
10
11
|
require('./layout.module.css');
|
|
11
12
|
var components_footer_Component = require('./Component.js');
|
|
12
13
|
var styles = require('./mobile.module.css');
|
|
@@ -14,8 +15,15 @@ var styles = require('./mobile.module.css');
|
|
|
14
15
|
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
15
16
|
|
|
16
17
|
var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
|
|
18
|
+
var cn__default = /*#__PURE__*/_interopDefaultLegacy(cn);
|
|
17
19
|
var styles__default = /*#__PURE__*/_interopDefaultLegacy(styles);
|
|
18
20
|
|
|
19
|
-
var FooterMobile = function (
|
|
21
|
+
var FooterMobile = function (_a) {
|
|
22
|
+
var _b;
|
|
23
|
+
var className = _a.className, sticky = _a.sticky, restProps = tslib_es6.__rest(_a, ["className", "sticky"]);
|
|
24
|
+
return (React__default['default'].createElement(components_footer_Component.Footer, tslib_es6.__assign({ className: cn__default['default'](className, styles__default['default'].footer, (_b = {},
|
|
25
|
+
_b[styles__default['default'].sticky] = sticky,
|
|
26
|
+
_b)), sticky: sticky }, restProps)));
|
|
27
|
+
};
|
|
20
28
|
|
|
21
29
|
exports.FooterMobile = FooterMobile;
|