@alfalab/core-components-side-panel 6.0.1 → 6.0.3
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/Component.responsive.d.ts +2 -2
- package/Component.responsive.js.map +1 -1
- package/Context.js.map +1 -1
- package/ResponsiveContext.d.ts +1 -1
- package/ResponsiveContext.js.map +1 -1
- package/components/content/Component.d.ts +1 -1
- package/components/content/Component.desktop.d.ts +2 -2
- package/components/content/Component.desktop.js.map +1 -1
- package/components/content/Component.js.map +1 -1
- package/components/content/Component.mobile.d.ts +2 -2
- package/components/content/Component.mobile.js.map +1 -1
- package/components/content/desktop.css +3 -3
- package/components/content/desktop.module.css.js +1 -1
- package/components/content/index.css +4 -4
- package/components/content/index.module.css.js +1 -1
- package/components/content/mobile.css +3 -3
- package/components/content/mobile.module.css.js +1 -1
- package/components/controls/Component.d.ts +1 -1
- package/components/controls/Component.js.map +1 -1
- package/components/controls/index.css +1 -1
- package/components/controls/index.module.css.js +1 -1
- package/components/footer/Component.d.ts +1 -1
- package/components/footer/Component.desktop.d.ts +2 -2
- package/components/footer/Component.desktop.js.map +1 -1
- package/components/footer/Component.js +3 -0
- package/components/footer/Component.js.map +1 -1
- package/components/footer/Component.mobile.d.ts +2 -2
- package/components/footer/Component.mobile.js.map +1 -1
- package/components/footer/desktop.css +2 -2
- package/components/footer/desktop.module.css.js +1 -1
- package/components/footer/index.css +6 -4
- package/components/footer/index.module.css.js +1 -1
- package/components/footer/index.module.css.js.map +1 -1
- package/components/footer/layout.css +19 -19
- package/components/footer/layout.module.css.js +1 -1
- package/components/footer/mobile.css +5 -5
- package/components/footer/mobile.module.css.js +1 -1
- package/components/header/Component.d.ts +2 -2
- package/components/header/Component.js.map +1 -1
- package/components/header/desktop.css +6 -6
- package/components/header/desktop.module.css.js +1 -1
- package/components/header/index.css +18 -16
- package/components/header/index.module.css.js +1 -1
- package/components/header/index.module.css.js.map +1 -1
- package/components/header/mobile.css +8 -8
- package/components/header/mobile.module.css.js +1 -1
- package/cssm/Component.responsive.d.ts +2 -2
- package/cssm/Component.responsive.js.map +1 -1
- package/cssm/Context.js.map +1 -1
- package/cssm/ResponsiveContext.d.ts +1 -1
- package/cssm/ResponsiveContext.js.map +1 -1
- package/cssm/components/content/Component.d.ts +1 -1
- package/cssm/components/content/Component.desktop.d.ts +2 -2
- package/cssm/components/content/Component.desktop.js.map +1 -1
- package/cssm/components/content/Component.js.map +1 -1
- package/cssm/components/content/Component.mobile.d.ts +2 -2
- package/cssm/components/content/Component.mobile.js.map +1 -1
- package/cssm/components/content/desktop.module.css +1 -1
- package/cssm/components/content/index.module.css +1 -1
- package/cssm/components/content/mobile.module.css +1 -1
- package/cssm/components/controls/Component.d.ts +1 -1
- package/cssm/components/controls/Component.js.map +1 -1
- package/cssm/components/footer/Component.d.ts +1 -1
- package/cssm/components/footer/Component.desktop.d.ts +2 -2
- package/cssm/components/footer/Component.desktop.js.map +1 -1
- package/cssm/components/footer/Component.js +3 -0
- package/cssm/components/footer/Component.js.map +1 -1
- package/cssm/components/footer/Component.mobile.d.ts +2 -2
- package/cssm/components/footer/Component.mobile.js.map +1 -1
- package/cssm/components/footer/index.module.css +3 -1
- package/cssm/components/footer/layout.module.css +3 -3
- package/cssm/components/footer/mobile.module.css +2 -2
- package/cssm/components/header/Component.d.ts +2 -2
- package/cssm/components/header/Component.js.map +1 -1
- package/cssm/components/header/desktop.module.css +2 -2
- package/cssm/components/header/index.module.css +5 -3
- package/cssm/components/header/mobile.module.css +4 -4
- package/cssm/desktop/Component.desktop.d.ts +4 -4
- package/cssm/desktop/Component.desktop.js.map +1 -1
- package/cssm/desktop/transitions.desktop.module.css +9 -3
- package/cssm/mobile/Component.mobile.d.ts +2 -2
- package/cssm/mobile/Component.mobile.js.map +1 -1
- package/cssm/mobile/mobile.module.css +1 -1
- package/cssm/mobile/transitions.mobile.module.css +6 -2
- package/desktop/Component.desktop.d.ts +4 -4
- package/desktop/Component.desktop.js.map +1 -1
- package/desktop/desktop.css +2 -2
- package/desktop/desktop.module.css.js +1 -1
- package/desktop/transitions.desktop.css +15 -9
- package/desktop/transitions.desktop.module.css.js +1 -1
- package/desktop/transitions.desktop.module.css.js.map +1 -1
- package/esm/Component.responsive.d.ts +2 -2
- package/esm/Component.responsive.js.map +1 -1
- package/esm/Context.js.map +1 -1
- package/esm/ResponsiveContext.d.ts +1 -1
- package/esm/ResponsiveContext.js.map +1 -1
- package/esm/components/content/Component.d.ts +1 -1
- package/esm/components/content/Component.desktop.d.ts +2 -2
- package/esm/components/content/Component.desktop.js.map +1 -1
- package/esm/components/content/Component.js.map +1 -1
- package/esm/components/content/Component.mobile.d.ts +2 -2
- package/esm/components/content/Component.mobile.js.map +1 -1
- package/esm/components/content/desktop.css +3 -3
- package/esm/components/content/desktop.module.css.js +1 -1
- package/esm/components/content/index.css +4 -4
- package/esm/components/content/index.module.css.js +1 -1
- package/esm/components/content/mobile.css +3 -3
- package/esm/components/content/mobile.module.css.js +1 -1
- package/esm/components/controls/Component.d.ts +1 -1
- package/esm/components/controls/Component.js.map +1 -1
- package/esm/components/controls/index.css +1 -1
- package/esm/components/controls/index.module.css.js +1 -1
- package/esm/components/footer/Component.d.ts +1 -1
- package/esm/components/footer/Component.desktop.d.ts +2 -2
- package/esm/components/footer/Component.desktop.js.map +1 -1
- package/esm/components/footer/Component.js +3 -0
- package/esm/components/footer/Component.js.map +1 -1
- package/esm/components/footer/Component.mobile.d.ts +2 -2
- package/esm/components/footer/Component.mobile.js.map +1 -1
- package/esm/components/footer/desktop.css +2 -2
- package/esm/components/footer/desktop.module.css.js +1 -1
- package/esm/components/footer/index.css +6 -4
- package/esm/components/footer/index.module.css.js +1 -1
- package/esm/components/footer/index.module.css.js.map +1 -1
- package/esm/components/footer/layout.css +19 -19
- package/esm/components/footer/layout.module.css.js +1 -1
- package/esm/components/footer/mobile.css +5 -5
- package/esm/components/footer/mobile.module.css.js +1 -1
- package/esm/components/header/Component.d.ts +2 -2
- package/esm/components/header/Component.js.map +1 -1
- package/esm/components/header/desktop.css +6 -6
- package/esm/components/header/desktop.module.css.js +1 -1
- package/esm/components/header/index.css +18 -16
- package/esm/components/header/index.module.css.js +1 -1
- package/esm/components/header/index.module.css.js.map +1 -1
- package/esm/components/header/mobile.css +8 -8
- package/esm/components/header/mobile.module.css.js +1 -1
- package/esm/desktop/Component.desktop.d.ts +4 -4
- package/esm/desktop/Component.desktop.js.map +1 -1
- package/esm/desktop/desktop.css +2 -2
- package/esm/desktop/desktop.module.css.js +1 -1
- package/esm/desktop/transitions.desktop.css +15 -9
- package/esm/desktop/transitions.desktop.module.css.js +1 -1
- package/esm/desktop/transitions.desktop.module.css.js.map +1 -1
- package/esm/mobile/Component.mobile.d.ts +2 -2
- package/esm/mobile/Component.mobile.js.map +1 -1
- package/esm/mobile/mobile.css +5 -5
- package/esm/mobile/mobile.module.css.js +1 -1
- package/esm/mobile/transitions.mobile.css +13 -9
- package/esm/mobile/transitions.mobile.module.css.js +1 -1
- package/esm/mobile/transitions.mobile.module.css.js.map +1 -1
- package/mobile/Component.mobile.d.ts +2 -2
- package/mobile/Component.mobile.js.map +1 -1
- package/mobile/mobile.css +5 -5
- package/mobile/mobile.module.css.js +1 -1
- package/mobile/transitions.mobile.css +13 -9
- package/mobile/transitions.mobile.module.css.js +1 -1
- package/mobile/transitions.mobile.module.css.js.map +1 -1
- package/modern/Component.responsive.d.ts +2 -2
- package/modern/Component.responsive.js.map +1 -1
- package/modern/Context.js.map +1 -1
- package/modern/ResponsiveContext.d.ts +1 -1
- package/modern/ResponsiveContext.js.map +1 -1
- package/modern/components/content/Component.d.ts +1 -1
- package/modern/components/content/Component.desktop.d.ts +2 -2
- package/modern/components/content/Component.desktop.js.map +1 -1
- package/modern/components/content/Component.js.map +1 -1
- package/modern/components/content/Component.mobile.d.ts +2 -2
- package/modern/components/content/Component.mobile.js.map +1 -1
- package/modern/components/content/desktop.css +3 -3
- package/modern/components/content/desktop.module.css.js +1 -1
- package/modern/components/content/index.css +4 -4
- package/modern/components/content/index.module.css.js +1 -1
- package/modern/components/content/mobile.css +3 -3
- package/modern/components/content/mobile.module.css.js +1 -1
- package/modern/components/controls/Component.d.ts +1 -1
- package/modern/components/controls/Component.js.map +1 -1
- package/modern/components/controls/index.css +1 -1
- package/modern/components/controls/index.module.css.js +1 -1
- package/modern/components/footer/Component.d.ts +1 -1
- package/modern/components/footer/Component.desktop.d.ts +2 -2
- package/modern/components/footer/Component.desktop.js.map +1 -1
- package/modern/components/footer/Component.js +3 -0
- package/modern/components/footer/Component.js.map +1 -1
- package/modern/components/footer/Component.mobile.d.ts +2 -2
- package/modern/components/footer/Component.mobile.js.map +1 -1
- package/modern/components/footer/desktop.css +2 -2
- package/modern/components/footer/desktop.module.css.js +1 -1
- package/modern/components/footer/index.css +6 -4
- package/modern/components/footer/index.module.css.js +1 -1
- package/modern/components/footer/index.module.css.js.map +1 -1
- package/modern/components/footer/layout.css +19 -19
- package/modern/components/footer/layout.module.css.js +1 -1
- package/modern/components/footer/mobile.css +5 -5
- package/modern/components/footer/mobile.module.css.js +1 -1
- package/modern/components/header/Component.d.ts +2 -2
- package/modern/components/header/Component.js.map +1 -1
- package/modern/components/header/desktop.css +6 -6
- package/modern/components/header/desktop.module.css.js +1 -1
- package/modern/components/header/index.css +18 -16
- package/modern/components/header/index.module.css.js +1 -1
- package/modern/components/header/index.module.css.js.map +1 -1
- package/modern/components/header/mobile.css +8 -8
- package/modern/components/header/mobile.module.css.js +1 -1
- package/modern/desktop/Component.desktop.d.ts +4 -4
- package/modern/desktop/Component.desktop.js.map +1 -1
- package/modern/desktop/desktop.css +2 -2
- package/modern/desktop/desktop.module.css.js +1 -1
- package/modern/desktop/transitions.desktop.css +15 -9
- package/modern/desktop/transitions.desktop.module.css.js +1 -1
- package/modern/desktop/transitions.desktop.module.css.js.map +1 -1
- package/modern/mobile/Component.mobile.d.ts +2 -2
- package/modern/mobile/Component.mobile.js.map +1 -1
- package/modern/mobile/mobile.css +5 -5
- package/modern/mobile/mobile.module.css.js +1 -1
- package/modern/mobile/transitions.mobile.css +13 -9
- package/modern/mobile/transitions.mobile.module.css.js +1 -1
- package/modern/mobile/transitions.mobile.module.css.js.map +1 -1
- package/moderncssm/Component.responsive.d.ts +2 -2
- package/moderncssm/Component.responsive.js.map +1 -1
- package/moderncssm/Context.js.map +1 -1
- package/moderncssm/ResponsiveContext.d.ts +1 -1
- package/moderncssm/ResponsiveContext.js.map +1 -1
- package/moderncssm/components/content/Component.d.ts +1 -1
- package/moderncssm/components/content/Component.desktop.d.ts +2 -2
- package/moderncssm/components/content/Component.desktop.js.map +1 -1
- package/moderncssm/components/content/Component.js.map +1 -1
- package/moderncssm/components/content/Component.mobile.d.ts +2 -2
- package/moderncssm/components/content/Component.mobile.js.map +1 -1
- package/moderncssm/components/content/desktop.module.css +3 -1
- package/moderncssm/components/content/index.module.css +3 -1
- package/moderncssm/components/content/mobile.module.css +3 -1
- package/moderncssm/components/controls/Component.d.ts +1 -1
- package/moderncssm/components/controls/Component.js.map +1 -1
- package/moderncssm/components/footer/Component.d.ts +1 -1
- package/moderncssm/components/footer/Component.desktop.d.ts +2 -2
- package/moderncssm/components/footer/Component.desktop.js.map +1 -1
- package/moderncssm/components/footer/Component.js +3 -0
- package/moderncssm/components/footer/Component.js.map +1 -1
- package/moderncssm/components/footer/Component.mobile.d.ts +2 -2
- package/moderncssm/components/footer/Component.mobile.js.map +1 -1
- package/moderncssm/components/footer/desktop.module.css +2 -0
- package/moderncssm/components/footer/index.module.css +5 -1
- package/moderncssm/components/footer/layout.module.css +5 -3
- package/moderncssm/components/footer/mobile.module.css +2 -2
- package/moderncssm/components/header/Component.d.ts +2 -2
- package/moderncssm/components/header/Component.js.map +1 -1
- package/moderncssm/components/header/desktop.module.css +2 -0
- package/moderncssm/components/header/index.module.css +7 -3
- package/moderncssm/components/header/mobile.module.css +2 -2
- package/moderncssm/desktop/Component.desktop.d.ts +4 -4
- package/moderncssm/desktop/Component.desktop.js.map +1 -1
- package/moderncssm/desktop/desktop.module.css +2 -0
- package/moderncssm/desktop/transitions.desktop.module.css +9 -3
- package/moderncssm/mobile/Component.mobile.d.ts +2 -2
- package/moderncssm/mobile/Component.mobile.js.map +1 -1
- package/moderncssm/mobile/mobile.module.css +1 -1
- package/moderncssm/mobile/transitions.mobile.module.css +6 -2
- package/package.json +4 -4
- package/src/Component.responsive.tsx +4 -4
- package/src/ResponsiveContext.ts +1 -1
- package/src/components/content/Component.desktop.tsx +2 -2
- package/src/components/content/Component.mobile.tsx +2 -2
- package/src/components/content/Component.tsx +1 -1
- package/src/components/controls/Component.tsx +1 -1
- package/src/components/footer/Component.desktop.tsx +2 -2
- package/src/components/footer/Component.mobile.tsx +2 -2
- package/src/components/footer/Component.tsx +5 -1
- package/src/components/footer/index.module.css +3 -1
- package/src/components/header/Component.tsx +2 -2
- package/src/components/header/index.module.css +3 -1
- package/src/desktop/Component.desktop.tsx +5 -5
- package/src/desktop/transitions.desktop.module.css +6 -2
- package/src/mobile/Component.mobile.tsx +3 -3
- package/src/mobile/transitions.mobile.module.css +6 -2
- package/src/vars.css +1 -1
- /package/src/{Context.tsx → Context.ts} +0 -0
package/mobile/mobile.css
CHANGED
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
:root {
|
|
6
6
|
--gap-0: 0px;
|
|
7
7
|
}
|
|
8
|
-
.side-
|
|
8
|
+
.side-panel__component_1ux1o {
|
|
9
9
|
top: var(--gap-0);
|
|
10
10
|
height: 100%;
|
|
11
11
|
width: 100%;
|
|
@@ -13,17 +13,17 @@
|
|
|
13
13
|
overflow-y: auto;
|
|
14
14
|
max-width: 600px;
|
|
15
15
|
}
|
|
16
|
-
.side-
|
|
16
|
+
.side-panel__component_1ux1o.side-panel__component_1ux1o {
|
|
17
17
|
position: fixed;
|
|
18
18
|
flex: 1;
|
|
19
19
|
}
|
|
20
20
|
@media (display-mode: standalone) {
|
|
21
|
-
.side-
|
|
21
|
+
.side-panel__content_1ux1o {
|
|
22
22
|
padding-top: var(--sat);
|
|
23
|
-
padding-bottom: var(--sab)
|
|
23
|
+
padding-bottom: var(--sab);
|
|
24
24
|
}
|
|
25
25
|
}
|
|
26
|
-
.side-
|
|
26
|
+
.side-panel__mobileContent_1ux1o {
|
|
27
27
|
display: flex;
|
|
28
28
|
flex-direction: column;
|
|
29
29
|
width: 100%;
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
require('./mobile.css');
|
|
4
4
|
|
|
5
|
-
var styles = {"component":"side-
|
|
5
|
+
var styles = {"component":"side-panel__component_1ux1o","content":"side-panel__content_1ux1o","mobileContent":"side-panel__mobileContent_1ux1o"};
|
|
6
6
|
|
|
7
7
|
module.exports = styles;
|
|
8
8
|
//# sourceMappingURL=mobile.module.css.js.map
|
|
@@ -1,24 +1,28 @@
|
|
|
1
|
-
.side-
|
|
2
|
-
.side-
|
|
1
|
+
.side-panel__appear_tcpus,
|
|
2
|
+
.side-panel__enter_tcpus {
|
|
3
3
|
opacity: 0;
|
|
4
4
|
transform: translateY(15px);
|
|
5
5
|
}
|
|
6
6
|
|
|
7
|
-
.side-
|
|
8
|
-
.side-
|
|
7
|
+
.side-panel__appearActive_tcpus,
|
|
8
|
+
.side-panel__enterActive_tcpus {
|
|
9
9
|
opacity: 1;
|
|
10
10
|
transform: translateY(0);
|
|
11
|
-
transition:
|
|
11
|
+
transition:
|
|
12
|
+
opacity 200ms ease-in,
|
|
13
|
+
transform 200ms ease-in;
|
|
12
14
|
}
|
|
13
15
|
|
|
14
|
-
.side-
|
|
16
|
+
.side-panel__exit_tcpus {
|
|
15
17
|
opacity: 1;
|
|
16
18
|
transform: translateY(0);
|
|
17
19
|
}
|
|
18
20
|
|
|
19
|
-
.side-
|
|
20
|
-
.side-
|
|
21
|
+
.side-panel__exitActive_tcpus,
|
|
22
|
+
.side-panel__exitDone_tcpus {
|
|
21
23
|
opacity: 0;
|
|
22
24
|
transform: translateY(15px);
|
|
23
|
-
transition:
|
|
25
|
+
transition:
|
|
26
|
+
opacity 200ms ease-out,
|
|
27
|
+
transform 200ms ease-out;
|
|
24
28
|
}
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
require('./transitions.mobile.css');
|
|
4
4
|
|
|
5
|
-
var transitions = {"appear":"side-
|
|
5
|
+
var transitions = {"appear":"side-panel__appear_tcpus","enter":"side-panel__enter_tcpus","appearActive":"side-panel__appearActive_tcpus","enterActive":"side-panel__enterActive_tcpus","exit":"side-panel__exit_tcpus","exitActive":"side-panel__exitActive_tcpus","exitDone":"side-panel__exitDone_tcpus"};
|
|
6
6
|
|
|
7
7
|
module.exports = transitions;
|
|
8
8
|
//# sourceMappingURL=transitions.mobile.module.css.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transitions.mobile.module.css.js","sources":["../src/mobile/transitions.mobile.module.css"],"sourcesContent":[".appear,\n.enter {\n opacity: 0;\n transform: translateY(15px);\n}\n\n.appearActive,\n.enterActive {\n opacity: 1;\n transform: translateY(0);\n transition
|
|
1
|
+
{"version":3,"file":"transitions.mobile.module.css.js","sources":["../src/mobile/transitions.mobile.module.css"],"sourcesContent":[".appear,\n.enter {\n opacity: 0;\n transform: translateY(15px);\n}\n\n.appearActive,\n.enterActive {\n opacity: 1;\n transform: translateY(0);\n transition:\n opacity 200ms ease-in,\n transform 200ms ease-in;\n}\n\n.exit {\n opacity: 1;\n transform: translateY(0);\n}\n\n.exitActive,\n.exitDone {\n opacity: 0;\n transform: translateY(15px);\n transition:\n opacity 200ms ease-out,\n transform 200ms ease-out;\n}\n"],"names":[],"mappings":";;;;AAEgB,kBAAe,CAAC,QAAQ,CAAC,0BAA0B,CAAC,OAAO,CAAC,yBAAyB,CAAC,cAAc,CAAC,gCAAgC,CAAC,aAAa,CAAC,+BAA+B,CAAC,MAAM,CAAC,wBAAwB,CAAC,YAAY,CAAC,8BAA8B,CAAC,UAAU,CAAC,4BAA4B,CAAC;;;;"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
import { BaseModalProps } from '@alfalab/core-components-base-modal/modern';
|
|
3
|
-
import { DrawerProps } from '@alfalab/core-components-drawer/modern';
|
|
2
|
+
import { type BaseModalProps } from '@alfalab/core-components-base-modal/modern';
|
|
3
|
+
import { type DrawerProps } from '@alfalab/core-components-drawer/modern';
|
|
4
4
|
import { Controls } from './components/controls';
|
|
5
5
|
import { Header } from './components/header/Component';
|
|
6
6
|
export declare type SidePanelResponsiveProps = BaseModalProps & Pick<DrawerProps, 'contentTransitionProps' | 'placement' | 'nativeScrollbar'> & {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Component.responsive.js","sources":["../src/Component.responsive.tsx"],"sourcesContent":["import React, { FC, forwardRef, useContext, useMemo } from 'react';\n\nimport { BaseModalProps } from '@alfalab/core-components-base-modal';\nimport { DrawerProps } from '@alfalab/core-components-drawer';\nimport { useIsDesktop } from '@alfalab/core-components-mq';\n\nimport { Controls } from './components/controls';\nimport { Header } from './components/header/Component';\nimport { SidePanelDesktop } from './desktop';\nimport { SidePanelMobile } from './mobile';\nimport { ResponsiveContext } from './ResponsiveContext';\nimport { TResponsiveModalContext } from './typings';\n\nexport type SidePanelResponsiveProps = BaseModalProps &\n Pick<DrawerProps, 'contentTransitionProps' | 'placement' | 'nativeScrollbar'> & {\n /**\n * Ширина модального окна\n * @default \"s\"\n */\n size?: 's' | 500;\n\n /**\n * Управление наличием закрывающего крестика\n * @default false\n */\n hasCloser?: boolean;\n\n /**\n * Контрольная точка, с нее начинается desktop версия\n * @default 1024\n */\n breakpoint?: number;\n\n /**\n * Версия, которая будет использоваться при серверном рендеринге\n */\n client?: 'desktop' | 'mobile';\n\n /**\n * Значение по-умолчанию для хука useMatchMedia\n * @deprecated Используйте client\n */\n defaultMatchMediaValue?: boolean | (() => boolean);\n };\n\nfunction createResponsive<DesktopType extends FC, MobileType extends FC>(\n desktop: DesktopType,\n mobile: MobileType,\n) {\n // eslint-disable-next-line\n function ResponsiveChild(props: any) {\n const { view = 'desktop' } = useContext(ResponsiveContext) || {};\n\n const Child = view === 'desktop' ? desktop : mobile;\n\n return <Child {...props} />;\n }\n\n return ResponsiveChild as DesktopType | MobileType;\n}\n\nconst SidePanelResponsiveComponent = forwardRef<HTMLDivElement, SidePanelResponsiveProps>(\n (\n {\n children,\n breakpoint,\n client,\n defaultMatchMediaValue = client === undefined ? undefined : client === 'desktop',\n size = 500,\n dataTestId,\n ...restProps\n },\n ref,\n ) => {\n const isDesktop = useIsDesktop(breakpoint, defaultMatchMediaValue);\n\n const view = isDesktop ? 'desktop' : 'mobile';\n\n const contextValue = useMemo<TResponsiveModalContext>(\n () => ({ view, size, dataTestId }),\n [view, size, dataTestId],\n );\n\n const Component = isDesktop ? SidePanelDesktop : SidePanelMobile;\n\n return (\n <ResponsiveContext.Provider value={contextValue}>\n <Component ref={ref} size={size} dataTestId={dataTestId} {...restProps}>\n {children}\n </Component>\n </ResponsiveContext.Provider>\n );\n },\n);\n\nconst ContentResponsive = createResponsive(SidePanelDesktop.Content, SidePanelMobile.Content);\nconst FooterResponsive = createResponsive(SidePanelDesktop.Footer, SidePanelMobile.Footer);\n\n/** Респонсив компаунд */\nconst SidePanelResponsive = Object.assign(SidePanelResponsiveComponent, {\n Header,\n Controls,\n Content: ContentResponsive,\n Footer: FooterResponsive,\n});\n\nSidePanelResponsiveComponent.displayName = 'SidePanelResponsiveComponent';\n\nexport {\n SidePanelResponsive,\n SidePanelResponsiveComponent as SidePanelComponentResponsive,\n Header as HeaderResponsive,\n Controls as ControlsResponsive,\n ContentResponsive,\n FooterResponsive,\n};\n"],"names":[],"mappings":";;;;;;;;AA6CA,SAAS,gBAAgB,CACrB,OAAoB,EACpB,MAAkB,EAAA;;IAGlB,SAAS,eAAe,CAAC,KAAU,EAAA;AAC/B,QAAA,MAAM,EAAE,IAAI,GAAG,SAAS,EAAE,GAAG,UAAU,CAAC,iBAAiB,CAAC,IAAI,EAAE;AAEhE,QAAA,MAAM,KAAK,GAAG,IAAI,KAAK,SAAS,GAAG,OAAO,GAAG,MAAM;AAEnD,QAAA,OAAO,KAAC,CAAA,aAAA,CAAA,KAAK,EAAK,EAAA,GAAA,KAAK,GAAI;;AAG/B,IAAA,OAAO,eAA2C;AACtD;AAEA,MAAM,4BAA4B,GAAG,UAAU,CAC3C,CACI,EACI,QAAQ,EACR,UAAU,EACV,MAAM,EACN,sBAAsB,GAAG,MAAM,KAAK,SAAS,GAAG,SAAS,GAAG,MAAM,KAAK,SAAS,EAChF,IAAI,GAAG,GAAG,EACV,UAAU,EACV,GAAG,SAAS,EACf,EACD,GAAG,KACH;IACA,MAAM,SAAS,GAAG,YAAY,CAAC,UAAU,EAAE,sBAAsB,CAAC;IAElE,MAAM,IAAI,GAAG,SAAS,GAAG,SAAS,GAAG,QAAQ;IAE7C,MAAM,YAAY,GAAG,OAAO,CACxB,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC,EAClC,CAAC,IAAI,EAAE,IAAI,EAAE,UAAU,CAAC,CAC3B;IAED,MAAM,SAAS,GAAG,SAAS,GAAG,gBAAgB,GAAG,eAAe;IAEhE,QACI,oBAAC,iBAAiB,CAAC,QAAQ,EAAC,EAAA,KAAK,EAAE,YAAY,EAAA;QAC3C,KAAC,CAAA,aAAA,CAAA,SAAS,IAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,UAAU,EAAE,UAAU,KAAM,SAAS,EAAA,EACjE,QAAQ,CACD,CACa;AAErC,CAAC;AAGL,MAAM,iBAAiB,GAAG,gBAAgB,CAAC,gBAAgB,CAAC,OAAO,EAAE,eAAe,CAAC,OAAO;AAC5F,MAAM,gBAAgB,GAAG,gBAAgB,CAAC,gBAAgB,CAAC,MAAM,EAAE,eAAe,CAAC,MAAM;AAEzF;AACA,MAAM,mBAAmB,GAAG,MAAM,CAAC,MAAM,CAAC,4BAA4B,EAAE;IACpE,MAAM;IACN,QAAQ;AACR,IAAA,OAAO,EAAE,iBAAiB;AAC1B,IAAA,MAAM,EAAE,gBAAgB;AAC3B,CAAA;AAED,4BAA4B,CAAC,WAAW,GAAG,8BAA8B;;;;"}
|
|
1
|
+
{"version":3,"file":"Component.responsive.js","sources":["../src/Component.responsive.tsx"],"sourcesContent":["import React, { type FC, forwardRef, useContext, useMemo } from 'react';\n\nimport { type BaseModalProps } from '@alfalab/core-components-base-modal';\nimport { type DrawerProps } from '@alfalab/core-components-drawer';\nimport { useIsDesktop } from '@alfalab/core-components-mq';\n\nimport { Controls } from './components/controls';\nimport { Header } from './components/header/Component';\nimport { SidePanelDesktop } from './desktop';\nimport { SidePanelMobile } from './mobile';\nimport { ResponsiveContext } from './ResponsiveContext';\nimport { type TResponsiveModalContext } from './typings';\n\nexport type SidePanelResponsiveProps = BaseModalProps &\n Pick<DrawerProps, 'contentTransitionProps' | 'placement' | 'nativeScrollbar'> & {\n /**\n * Ширина модального окна\n * @default \"s\"\n */\n size?: 's' | 500;\n\n /**\n * Управление наличием закрывающего крестика\n * @default false\n */\n hasCloser?: boolean;\n\n /**\n * Контрольная точка, с нее начинается desktop версия\n * @default 1024\n */\n breakpoint?: number;\n\n /**\n * Версия, которая будет использоваться при серверном рендеринге\n */\n client?: 'desktop' | 'mobile';\n\n /**\n * Значение по-умолчанию для хука useMatchMedia\n * @deprecated Используйте client\n */\n defaultMatchMediaValue?: boolean | (() => boolean);\n };\n\nfunction createResponsive<DesktopType extends FC, MobileType extends FC>(\n desktop: DesktopType,\n mobile: MobileType,\n) {\n // eslint-disable-next-line\n function ResponsiveChild(props: any) {\n const { view = 'desktop' } = useContext(ResponsiveContext) || {};\n\n const Child = view === 'desktop' ? desktop : mobile;\n\n return <Child {...props} />;\n }\n\n return ResponsiveChild as DesktopType | MobileType;\n}\n\nconst SidePanelResponsiveComponent = forwardRef<HTMLDivElement, SidePanelResponsiveProps>(\n (\n {\n children,\n breakpoint,\n client,\n defaultMatchMediaValue = client === undefined ? undefined : client === 'desktop',\n size = 500,\n dataTestId,\n ...restProps\n },\n ref,\n ) => {\n const isDesktop = useIsDesktop(breakpoint, defaultMatchMediaValue);\n\n const view = isDesktop ? 'desktop' : 'mobile';\n\n const contextValue = useMemo<TResponsiveModalContext>(\n () => ({ view, size, dataTestId }),\n [view, size, dataTestId],\n );\n\n const Component = isDesktop ? SidePanelDesktop : SidePanelMobile;\n\n return (\n <ResponsiveContext.Provider value={contextValue}>\n <Component ref={ref} size={size} dataTestId={dataTestId} {...restProps}>\n {children}\n </Component>\n </ResponsiveContext.Provider>\n );\n },\n);\n\nconst ContentResponsive = createResponsive(SidePanelDesktop.Content, SidePanelMobile.Content);\nconst FooterResponsive = createResponsive(SidePanelDesktop.Footer, SidePanelMobile.Footer);\n\n/** Респонсив компаунд */\nconst SidePanelResponsive = Object.assign(SidePanelResponsiveComponent, {\n Header,\n Controls,\n Content: ContentResponsive,\n Footer: FooterResponsive,\n});\n\nSidePanelResponsiveComponent.displayName = 'SidePanelResponsiveComponent';\n\nexport {\n SidePanelResponsive,\n SidePanelResponsiveComponent as SidePanelComponentResponsive,\n Header as HeaderResponsive,\n Controls as ControlsResponsive,\n ContentResponsive,\n FooterResponsive,\n};\n"],"names":[],"mappings":";;;;;;;;AA6CA,SAAS,gBAAgB,CACrB,OAAoB,EACpB,MAAkB,EAAA;;IAGlB,SAAS,eAAe,CAAC,KAAU,EAAA;AAC/B,QAAA,MAAM,EAAE,IAAI,GAAG,SAAS,EAAE,GAAG,UAAU,CAAC,iBAAiB,CAAC,IAAI,EAAE;AAEhE,QAAA,MAAM,KAAK,GAAG,IAAI,KAAK,SAAS,GAAG,OAAO,GAAG,MAAM;AAEnD,QAAA,OAAO,KAAC,CAAA,aAAA,CAAA,KAAK,EAAK,EAAA,GAAA,KAAK,GAAI;;AAG/B,IAAA,OAAO,eAA2C;AACtD;AAEA,MAAM,4BAA4B,GAAG,UAAU,CAC3C,CACI,EACI,QAAQ,EACR,UAAU,EACV,MAAM,EACN,sBAAsB,GAAG,MAAM,KAAK,SAAS,GAAG,SAAS,GAAG,MAAM,KAAK,SAAS,EAChF,IAAI,GAAG,GAAG,EACV,UAAU,EACV,GAAG,SAAS,EACf,EACD,GAAG,KACH;IACA,MAAM,SAAS,GAAG,YAAY,CAAC,UAAU,EAAE,sBAAsB,CAAC;IAElE,MAAM,IAAI,GAAG,SAAS,GAAG,SAAS,GAAG,QAAQ;IAE7C,MAAM,YAAY,GAAG,OAAO,CACxB,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC,EAClC,CAAC,IAAI,EAAE,IAAI,EAAE,UAAU,CAAC,CAC3B;IAED,MAAM,SAAS,GAAG,SAAS,GAAG,gBAAgB,GAAG,eAAe;IAEhE,QACI,oBAAC,iBAAiB,CAAC,QAAQ,EAAC,EAAA,KAAK,EAAE,YAAY,EAAA;QAC3C,KAAC,CAAA,aAAA,CAAA,SAAS,IAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,UAAU,EAAE,UAAU,KAAM,SAAS,EAAA,EACjE,QAAQ,CACD,CACa;AAErC,CAAC;AAGL,MAAM,iBAAiB,GAAG,gBAAgB,CAAC,gBAAgB,CAAC,OAAO,EAAE,eAAe,CAAC,OAAO;AAC5F,MAAM,gBAAgB,GAAG,gBAAgB,CAAC,gBAAgB,CAAC,MAAM,EAAE,eAAe,CAAC,MAAM;AAEzF;AACA,MAAM,mBAAmB,GAAG,MAAM,CAAC,MAAM,CAAC,4BAA4B,EAAE;IACpE,MAAM;IACN,QAAQ;AACR,IAAA,OAAO,EAAE,iBAAiB;AAC1B,IAAA,MAAM,EAAE,gBAAgB;AAC3B,CAAA;AAED,4BAA4B,CAAC,WAAW,GAAG,8BAA8B;;;;"}
|
package/modern/Context.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Context.js","sources":["../src/Context.
|
|
1
|
+
{"version":3,"file":"Context.js","sources":["../src/Context.ts"],"sourcesContent":["import { BaseModalContext } from '@alfalab/core-components-base-modal';\n\nexport const ModalContext = BaseModalContext;\n"],"names":[],"mappings":";;AAEO,MAAM,YAAY,GAAG;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ResponsiveContext.js","sources":["../src/ResponsiveContext.ts"],"sourcesContent":["import React from 'react';\n\nimport type
|
|
1
|
+
{"version":3,"file":"ResponsiveContext.js","sources":["../src/ResponsiveContext.ts"],"sourcesContent":["import React from 'react';\n\nimport { type TResponsiveModalContext } from './typings';\n\nexport const ResponsiveContext = React.createContext<TResponsiveModalContext>(null);\n"],"names":[],"mappings":";;AAIa,MAAA,iBAAiB,GAAG,KAAK,CAAC,aAAa,CAA0B,IAAI;;;;"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { FC } from 'react';
|
|
2
|
-
import { ContentProps } from './Component';
|
|
1
|
+
import { type FC } from 'react';
|
|
2
|
+
import { type ContentProps } from './Component';
|
|
3
3
|
export declare type ContentDesktopProps = ContentProps & {
|
|
4
4
|
/**
|
|
5
5
|
* Размер (только для desktop версии компонента)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Component.desktop.js","sources":["../../../src/components/content/Component.desktop.tsx"],"sourcesContent":["import React, { FC } from 'react';\nimport cn from 'classnames';\n\nimport { SIZE_TO_CLASSNAME_MAP } from '../../consts';\n\nimport { Content, ContentProps } from './Component';\n\nimport styles from './desktop.module.css';\n\nexport type ContentDesktopProps = ContentProps & {\n /**\n * Размер (только для desktop версии компонента)\n */\n size?: 's' | 500;\n};\n\nexport const ContentDesktop: FC<ContentDesktopProps> = ({\n size = 500,\n className,\n ...restProps\n}) => (\n <Content\n className={cn(className, size && styles[SIZE_TO_CLASSNAME_MAP[size]])}\n {...restProps}\n />\n);\n"],"names":[],"mappings":";;;;;;AAgBa,MAAA,cAAc,GAA4B,CAAC,EACpD,IAAI,GAAG,GAAG,EACV,SAAS,EACT,GAAG,SAAS,EACf,MACG,KAAC,CAAA,aAAA,CAAA,OAAO,EACJ,EAAA,SAAS,EAAE,EAAE,CAAC,SAAS,EAAE,IAAI,IAAI,MAAM,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC,CAAC,KACjE,SAAS,EAAA,CACf;;;;"}
|
|
1
|
+
{"version":3,"file":"Component.desktop.js","sources":["../../../src/components/content/Component.desktop.tsx"],"sourcesContent":["import React, { type FC } from 'react';\nimport cn from 'classnames';\n\nimport { SIZE_TO_CLASSNAME_MAP } from '../../consts';\n\nimport { Content, type ContentProps } from './Component';\n\nimport styles from './desktop.module.css';\n\nexport type ContentDesktopProps = ContentProps & {\n /**\n * Размер (только для desktop версии компонента)\n */\n size?: 's' | 500;\n};\n\nexport const ContentDesktop: FC<ContentDesktopProps> = ({\n size = 500,\n className,\n ...restProps\n}) => (\n <Content\n className={cn(className, size && styles[SIZE_TO_CLASSNAME_MAP[size]])}\n {...restProps}\n />\n);\n"],"names":[],"mappings":";;;;;;AAgBa,MAAA,cAAc,GAA4B,CAAC,EACpD,IAAI,GAAG,GAAG,EACV,SAAS,EACT,GAAG,SAAS,EACf,MACG,KAAC,CAAA,aAAA,CAAA,OAAO,EACJ,EAAA,SAAS,EAAE,EAAE,CAAC,SAAS,EAAE,IAAI,IAAI,MAAM,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC,CAAC,KACjE,SAAS,EAAA,CACf;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Component.js","sources":["../../../src/components/content/Component.tsx"],"sourcesContent":["import React, { FC, ReactNode, Ref, useContext } from 'react';\nimport cn from 'classnames';\n\nimport { getDataTestId } from '@alfalab/core-components-shared';\n\nimport { ModalContext } from '../../Context';\nimport { ResponsiveContext } from '../../ResponsiveContext';\n\nimport styles from './index.module.css';\n\nexport type ContentProps = {\n /**\n * Контент\n */\n children?: ReactNode;\n\n /**\n * Дополнительный класс\n */\n className?: string;\n\n /**\n * Идентификатор для систем автоматизированного тестирования\n */\n dataTestId?: string;\n};\n\nexport const Content: FC<ContentProps> = ({ children, className, dataTestId }) => {\n const { contentRef, hasHeader } = useContext(ModalContext);\n const responsiveContext = useContext(ResponsiveContext);\n\n return (\n <div\n className={cn(styles.content, className, styles.flex, {\n [styles.withHeader]: hasHeader,\n })}\n ref={contentRef as Ref<HTMLDivElement>}\n data-test-id={dataTestId || getDataTestId(responsiveContext?.dataTestId, 'content')}\n >\n {children}\n </div>\n );\n};\n"],"names":[],"mappings":";;;;;;;AA2BO,MAAM,OAAO,GAAqB,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,UAAU,EAAE,KAAI;IAC7E,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,GAAG,UAAU,CAAC,YAAY,CAAC;AAC1D,IAAA,MAAM,iBAAiB,GAAG,UAAU,CAAC,iBAAiB,CAAC;AAEvD,IAAA,QACI,KAAA,CAAA,aAAA,CAAA,KAAA,EAAA,EACI,SAAS,EAAE,EAAE,CAAC,MAAM,CAAC,OAAO,EAAE,SAAS,EAAE,MAAM,CAAC,IAAI,EAAE;AAClD,YAAA,CAAC,MAAM,CAAC,UAAU,GAAG,SAAS;AACjC,SAAA,CAAC,EACF,GAAG,EAAE,UAAiC,EACxB,cAAA,EAAA,UAAU,IAAI,aAAa,CAAC,iBAAiB,EAAE,UAAU,EAAE,SAAS,CAAC,IAElF,QAAQ,CACP;AAEd;;;;"}
|
|
1
|
+
{"version":3,"file":"Component.js","sources":["../../../src/components/content/Component.tsx"],"sourcesContent":["import React, { type FC, type ReactNode, type Ref, useContext } from 'react';\nimport cn from 'classnames';\n\nimport { getDataTestId } from '@alfalab/core-components-shared';\n\nimport { ModalContext } from '../../Context';\nimport { ResponsiveContext } from '../../ResponsiveContext';\n\nimport styles from './index.module.css';\n\nexport type ContentProps = {\n /**\n * Контент\n */\n children?: ReactNode;\n\n /**\n * Дополнительный класс\n */\n className?: string;\n\n /**\n * Идентификатор для систем автоматизированного тестирования\n */\n dataTestId?: string;\n};\n\nexport const Content: FC<ContentProps> = ({ children, className, dataTestId }) => {\n const { contentRef, hasHeader } = useContext(ModalContext);\n const responsiveContext = useContext(ResponsiveContext);\n\n return (\n <div\n className={cn(styles.content, className, styles.flex, {\n [styles.withHeader]: hasHeader,\n })}\n ref={contentRef as Ref<HTMLDivElement>}\n data-test-id={dataTestId || getDataTestId(responsiveContext?.dataTestId, 'content')}\n >\n {children}\n </div>\n );\n};\n"],"names":[],"mappings":";;;;;;;AA2BO,MAAM,OAAO,GAAqB,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,UAAU,EAAE,KAAI;IAC7E,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,GAAG,UAAU,CAAC,YAAY,CAAC;AAC1D,IAAA,MAAM,iBAAiB,GAAG,UAAU,CAAC,iBAAiB,CAAC;AAEvD,IAAA,QACI,KAAA,CAAA,aAAA,CAAA,KAAA,EAAA,EACI,SAAS,EAAE,EAAE,CAAC,MAAM,CAAC,OAAO,EAAE,SAAS,EAAE,MAAM,CAAC,IAAI,EAAE;AAClD,YAAA,CAAC,MAAM,CAAC,UAAU,GAAG,SAAS;AACjC,SAAA,CAAC,EACF,GAAG,EAAE,UAAiC,EACxB,cAAA,EAAA,UAAU,IAAI,aAAa,CAAC,iBAAiB,EAAE,UAAU,EAAE,SAAS,CAAC,IAElF,QAAQ,CACP;AAEd;;;;"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { FC } from 'react';
|
|
2
|
-
import { ContentProps } from './Component';
|
|
1
|
+
import { type FC } from 'react';
|
|
2
|
+
import { type ContentProps } from './Component';
|
|
3
3
|
export declare type ContentMobileProps = ContentProps;
|
|
4
4
|
export declare const ContentMobile: FC<ContentMobileProps>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Component.mobile.js","sources":["../../../src/components/content/Component.mobile.tsx"],"sourcesContent":["import React, { FC } from 'react';\nimport cn from 'classnames';\n\nimport { Content, ContentProps } from './Component';\n\nimport styles from './mobile.module.css';\n\nexport type ContentMobileProps = ContentProps;\n\nexport const ContentMobile: FC<ContentMobileProps> = ({ className, ...restProps }) => (\n <Content className={cn(className, styles.content)} {...restProps} />\n);\n"],"names":[],"mappings":";;;;;AASO,MAAM,aAAa,GAA2B,CAAC,EAAE,SAAS,EAAE,GAAG,SAAS,EAAE,MAC7E,KAAA,CAAA,aAAA,CAAC,OAAO,EAAA,EAAC,SAAS,EAAE,EAAE,CAAC,SAAS,EAAE,MAAM,CAAC,OAAO,CAAC,EAAA,GAAM,SAAS,EAAA,CAAI;;;;"}
|
|
1
|
+
{"version":3,"file":"Component.mobile.js","sources":["../../../src/components/content/Component.mobile.tsx"],"sourcesContent":["import React, { type FC } from 'react';\nimport cn from 'classnames';\n\nimport { Content, type ContentProps } from './Component';\n\nimport styles from './mobile.module.css';\n\nexport type ContentMobileProps = ContentProps;\n\nexport const ContentMobile: FC<ContentMobileProps> = ({ className, ...restProps }) => (\n <Content className={cn(className, styles.content)} {...restProps} />\n);\n"],"names":[],"mappings":";;;;;AASO,MAAM,aAAa,GAA2B,CAAC,EAAE,SAAS,EAAE,GAAG,SAAS,EAAE,MAC7E,KAAA,CAAA,aAAA,CAAC,OAAO,EAAA,EAAC,SAAS,EAAE,EAAE,CAAC,SAAS,EAAE,MAAM,CAAC,OAAO,CAAC,EAAA,GAAM,SAAS,EAAA,CAAI;;;;"}
|
|
@@ -6,8 +6,8 @@
|
|
|
6
6
|
--gap-40: var(--gap-3xl);
|
|
7
7
|
} :root {
|
|
8
8
|
--side-panel-s-content-paddings: var(--gap-40) var(--gap-40) var(--gap-0);
|
|
9
|
-
} .side-panel__size-
|
|
10
|
-
padding: var(--side-panel-s-content-paddings)
|
|
11
|
-
} .side-panel__size-
|
|
9
|
+
} .side-panel__size-500_esw6a {
|
|
10
|
+
padding: var(--side-panel-s-content-paddings);
|
|
11
|
+
} .side-panel__size-500_esw6a:last-child {
|
|
12
12
|
padding-bottom: var(--gap-32);
|
|
13
13
|
}
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
:root {
|
|
2
2
|
--gap-0: 0px;
|
|
3
|
-
} .side-
|
|
3
|
+
} .side-panel__content_10mri {
|
|
4
4
|
position: relative;
|
|
5
5
|
box-sizing: border-box;
|
|
6
6
|
width: 100%;
|
|
7
|
-
z-index: 0
|
|
8
|
-
} .side-
|
|
7
|
+
z-index: 0;
|
|
8
|
+
} .side-panel__content_10mri.side-panel__withHeader_10mri {
|
|
9
9
|
padding-top: var(--gap-0);
|
|
10
|
-
} .side-
|
|
10
|
+
} .side-panel__flex_10mri {
|
|
11
11
|
flex: 1 1 auto;
|
|
12
12
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import './index.css';
|
|
2
2
|
|
|
3
|
-
const styles = {"content":"side-
|
|
3
|
+
const styles = {"content":"side-panel__content_10mri","withHeader":"side-panel__withHeader_10mri","flex":"side-panel__flex_10mri"};
|
|
4
4
|
|
|
5
5
|
export { styles as default };
|
|
6
6
|
//# sourceMappingURL=index.module.css.js.map
|
|
@@ -2,8 +2,8 @@
|
|
|
2
2
|
--gap-m: 16px;
|
|
3
3
|
--gap-0: 0px;
|
|
4
4
|
--gap-16: var(--gap-m);
|
|
5
|
-
} .side-
|
|
6
|
-
padding: var(--gap-16) var(--gap-16) var(--gap-0)
|
|
7
|
-
} .side-
|
|
5
|
+
} .side-panel__content_1und9 {
|
|
6
|
+
padding: var(--gap-16) var(--gap-16) var(--gap-0);
|
|
7
|
+
} .side-panel__content_1und9:last-child {
|
|
8
8
|
padding-bottom: var(--gap-16);
|
|
9
9
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Component.js","sources":["../../../src/components/controls/Component.tsx"],"sourcesContent":["import React, { ReactNode, useContext } from 'react';\nimport cn from 'classnames';\n\nimport { getDataTestId } from '@alfalab/core-components-shared';\n\nimport { ResponsiveContext } from '../../ResponsiveContext';\n\nimport layoutStyles from '../footer/layout.module.css';\nimport styles from './index.module.css';\n\nexport interface ControlsProps {\n /**\n * Основной слот\n */\n primary?: ReactNode;\n\n /**\n * Дополнительный слот\n */\n secondary?: ReactNode;\n\n /**\n * Выравнивание элементов футера\n * @default start\n */\n layout?: 'start' | 'center' | 'space-between' | 'column';\n\n /**\n * Выравнивание элементов футера (мобильный view)\n * @default start\n */\n mobileLayout?: 'start' | 'center' | 'space-between' | 'column';\n\n /**\n * Отступы между элементами футера\n */\n gap?: 16 | 24 | 32;\n}\n\nexport const Controls: React.FC<ControlsProps> = ({\n primary,\n secondary,\n gap,\n layout: layoutProp = 'start',\n mobileLayout = layoutProp,\n}) => {\n const context = useContext(ResponsiveContext);\n const { view = 'desktop', dataTestId } = context || {};\n\n const layout = view === 'mobile' ? mobileLayout : layoutProp;\n\n const shouldReverse = view === 'mobile' && layout !== 'column';\n\n return (\n <div\n data-test-id={getDataTestId(dataTestId, 'controls')}\n className={cn(\n styles.component,\n layoutStyles[layout],\n gap && layoutStyles[`gap-${gap}`],\n )}\n >\n {shouldReverse ? (\n <React.Fragment>\n {secondary}\n {primary}\n </React.Fragment>\n ) : (\n <React.Fragment>\n {primary}\n {secondary}\n </React.Fragment>\n )}\n </div>\n );\n};\n"],"names":[],"mappings":";;;;;;;MAuCa,QAAQ,GAA4B,CAAC,EAC9C,OAAO,EACP,SAAS,EACT,GAAG,EACH,MAAM,EAAE,UAAU,GAAG,OAAO,EAC5B,YAAY,GAAG,UAAU,GAC5B,KAAI;AACD,IAAA,MAAM,OAAO,GAAG,UAAU,CAAC,iBAAiB,CAAC;IAC7C,MAAM,EAAE,IAAI,GAAG,SAAS,EAAE,UAAU,EAAE,GAAG,OAAO,IAAI,EAAE;AAEtD,IAAA,MAAM,MAAM,GAAG,IAAI,KAAK,QAAQ,GAAG,YAAY,GAAG,UAAU;IAE5D,MAAM,aAAa,GAAG,IAAI,KAAK,QAAQ,IAAI,MAAM,KAAK,QAAQ;AAE9D,IAAA,QACI,KACkB,CAAA,aAAA,CAAA,KAAA,EAAA,EAAA,cAAA,EAAA,aAAa,CAAC,UAAU,EAAE,UAAU,CAAC,EACnD,SAAS,EAAE,EAAE,CACT,MAAM,CAAC,SAAS,EAChB,YAAY,CAAC,MAAM,CAAC,EACpB,GAAG,IAAI,YAAY,CAAC,CAAO,IAAA,EAAA,GAAG,EAAE,CAAC,CACpC,EAEA,EAAA,aAAa,IACV,KAAC,CAAA,aAAA,CAAA,KAAK,CAAC,QAAQ,EAAA,IAAA;QACV,SAAS;QACT,OAAO,CACK,KAEjB,KAAA,CAAA,aAAA,CAAC,KAAK,CAAC,QAAQ,EAAA,IAAA;QACV,OAAO;AACP,QAAA,SAAS,CACG,CACpB,CACC;AAEd;;;;"}
|
|
1
|
+
{"version":3,"file":"Component.js","sources":["../../../src/components/controls/Component.tsx"],"sourcesContent":["import React, { type ReactNode, useContext } from 'react';\nimport cn from 'classnames';\n\nimport { getDataTestId } from '@alfalab/core-components-shared';\n\nimport { ResponsiveContext } from '../../ResponsiveContext';\n\nimport layoutStyles from '../footer/layout.module.css';\nimport styles from './index.module.css';\n\nexport interface ControlsProps {\n /**\n * Основной слот\n */\n primary?: ReactNode;\n\n /**\n * Дополнительный слот\n */\n secondary?: ReactNode;\n\n /**\n * Выравнивание элементов футера\n * @default start\n */\n layout?: 'start' | 'center' | 'space-between' | 'column';\n\n /**\n * Выравнивание элементов футера (мобильный view)\n * @default start\n */\n mobileLayout?: 'start' | 'center' | 'space-between' | 'column';\n\n /**\n * Отступы между элементами футера\n */\n gap?: 16 | 24 | 32;\n}\n\nexport const Controls: React.FC<ControlsProps> = ({\n primary,\n secondary,\n gap,\n layout: layoutProp = 'start',\n mobileLayout = layoutProp,\n}) => {\n const context = useContext(ResponsiveContext);\n const { view = 'desktop', dataTestId } = context || {};\n\n const layout = view === 'mobile' ? mobileLayout : layoutProp;\n\n const shouldReverse = view === 'mobile' && layout !== 'column';\n\n return (\n <div\n data-test-id={getDataTestId(dataTestId, 'controls')}\n className={cn(\n styles.component,\n layoutStyles[layout],\n gap && layoutStyles[`gap-${gap}`],\n )}\n >\n {shouldReverse ? (\n <React.Fragment>\n {secondary}\n {primary}\n </React.Fragment>\n ) : (\n <React.Fragment>\n {primary}\n {secondary}\n </React.Fragment>\n )}\n </div>\n );\n};\n"],"names":[],"mappings":";;;;;;;MAuCa,QAAQ,GAA4B,CAAC,EAC9C,OAAO,EACP,SAAS,EACT,GAAG,EACH,MAAM,EAAE,UAAU,GAAG,OAAO,EAC5B,YAAY,GAAG,UAAU,GAC5B,KAAI;AACD,IAAA,MAAM,OAAO,GAAG,UAAU,CAAC,iBAAiB,CAAC;IAC7C,MAAM,EAAE,IAAI,GAAG,SAAS,EAAE,UAAU,EAAE,GAAG,OAAO,IAAI,EAAE;AAEtD,IAAA,MAAM,MAAM,GAAG,IAAI,KAAK,QAAQ,GAAG,YAAY,GAAG,UAAU;IAE5D,MAAM,aAAa,GAAG,IAAI,KAAK,QAAQ,IAAI,MAAM,KAAK,QAAQ;AAE9D,IAAA,QACI,KACkB,CAAA,aAAA,CAAA,KAAA,EAAA,EAAA,cAAA,EAAA,aAAa,CAAC,UAAU,EAAE,UAAU,CAAC,EACnD,SAAS,EAAE,EAAE,CACT,MAAM,CAAC,SAAS,EAChB,YAAY,CAAC,MAAM,CAAC,EACpB,GAAG,IAAI,YAAY,CAAC,CAAO,IAAA,EAAA,GAAG,EAAE,CAAC,CACpC,EAEA,EAAA,aAAa,IACV,KAAC,CAAA,aAAA,CAAA,KAAK,CAAC,QAAQ,EAAA,IAAA;QACV,SAAS;QACT,OAAO,CACK,KAEjB,KAAA,CAAA,aAAA,CAAC,KAAK,CAAC,QAAQ,EAAA,IAAA;QACV,OAAO;AACP,QAAA,SAAS,CACG,CACpB,CACC;AAEd;;;;"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { FC } from 'react';
|
|
2
|
-
import { FooterProps } from './Component';
|
|
1
|
+
import { type FC } from 'react';
|
|
2
|
+
import { type FooterProps } from './Component';
|
|
3
3
|
export declare type FooterDesktopProps = FooterProps & {
|
|
4
4
|
/**
|
|
5
5
|
* Размер (только для desktop версии компонента)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Component.desktop.js","sources":["../../../src/components/footer/Component.desktop.tsx"],"sourcesContent":["import React, { FC } from 'react';\nimport cn from 'classnames';\n\nimport { SIZE_TO_CLASSNAME_MAP } from '../../consts';\n\nimport { Footer, FooterProps } from './Component';\n\nimport styles from './desktop.module.css';\n\nexport type FooterDesktopProps = FooterProps & {\n /**\n * Размер (только для desktop версии компонента)\n */\n size?: 's' | 500;\n};\n\nexport const FooterDesktop: FC<FooterDesktopProps> = ({\n size = 500,\n className,\n sticky,\n ...restProps\n}) => (\n <Footer\n className={cn(className, size && styles[SIZE_TO_CLASSNAME_MAP[size]], {\n [styles.sticky]: sticky,\n })}\n sticky={sticky}\n {...restProps}\n />\n);\n"],"names":[],"mappings":";;;;;;AAgBa,MAAA,aAAa,GAA2B,CAAC,EAClD,IAAI,GAAG,GAAG,EACV,SAAS,EACT,MAAM,EACN,GAAG,SAAS,EACf,MACG,oBAAC,MAAM,EAAA,EACH,SAAS,EAAE,EAAE,CAAC,SAAS,EAAE,IAAI,IAAI,MAAM,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC,EAAE;AAClE,QAAA,CAAC,MAAM,CAAC,MAAM,GAAG,MAAM;KAC1B,CAAC,EACF,MAAM,EAAE,MAAM,KACV,SAAS,EAAA,CACf;;;;"}
|
|
1
|
+
{"version":3,"file":"Component.desktop.js","sources":["../../../src/components/footer/Component.desktop.tsx"],"sourcesContent":["import React, { type FC } from 'react';\nimport cn from 'classnames';\n\nimport { SIZE_TO_CLASSNAME_MAP } from '../../consts';\n\nimport { Footer, type FooterProps } from './Component';\n\nimport styles from './desktop.module.css';\n\nexport type FooterDesktopProps = FooterProps & {\n /**\n * Размер (только для desktop версии компонента)\n */\n size?: 's' | 500;\n};\n\nexport const FooterDesktop: FC<FooterDesktopProps> = ({\n size = 500,\n className,\n sticky,\n ...restProps\n}) => (\n <Footer\n className={cn(className, size && styles[SIZE_TO_CLASSNAME_MAP[size]], {\n [styles.sticky]: sticky,\n })}\n sticky={sticky}\n {...restProps}\n />\n);\n"],"names":[],"mappings":";;;;;;AAgBa,MAAA,aAAa,GAA2B,CAAC,EAClD,IAAI,GAAG,GAAG,EACV,SAAS,EACT,MAAM,EACN,GAAG,SAAS,EACf,MACG,oBAAC,MAAM,EAAA,EACH,SAAS,EAAE,EAAE,CAAC,SAAS,EAAE,IAAI,IAAI,MAAM,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC,EAAE;AAClE,QAAA,CAAC,MAAM,CAAC,MAAM,GAAG,MAAM;KAC1B,CAAC,EACF,MAAM,EAAE,MAAM,KACV,SAAS,EAAA,CACf;;;;"}
|
|
@@ -11,6 +11,9 @@ const Footer = ({ children, className, sticky, layout = 'start', gap, dataTestId
|
|
|
11
11
|
const responsiveContext = useContext(ResponsiveContext);
|
|
12
12
|
useEffect(() => {
|
|
13
13
|
setHasFooter(true);
|
|
14
|
+
return () => {
|
|
15
|
+
setHasFooter(false);
|
|
16
|
+
};
|
|
14
17
|
}, [setHasFooter]);
|
|
15
18
|
return (React.createElement("div", { className: cn(styles.footer, className, layoutStyles[layout], gap && layoutStyles[`gap-${gap}`], {
|
|
16
19
|
[styles.highlighted]: sticky && footerHighlighted,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Component.js","sources":["../../../src/components/footer/Component.tsx"],"sourcesContent":["import React, { FC, ReactNode, useContext, useEffect } from 'react';\nimport cn from 'classnames';\n\nimport { getDataTestId } from '@alfalab/core-components-shared';\n\nimport { ModalContext } from '../../Context';\nimport { ResponsiveContext } from '../../ResponsiveContext';\n\nimport styles from './index.module.css';\nimport layoutStyles from './layout.module.css';\n\nexport type FooterProps = {\n /**\n * Контент футера\n */\n children?: ReactNode;\n\n /**\n * Дополнительный класс\n */\n className?: string;\n\n /**\n * Фиксирует футер\n */\n sticky?: boolean;\n\n /**\n * Выравнивание элементов футера\n */\n layout?: 'start' | 'center' | 'space-between' | 'column';\n\n /**\n * Отступы между элементами футера\n */\n gap?: 16 | 24 | 32;\n\n /**\n * Идентификатор для систем автоматизированного тестирования\n */\n dataTestId?: string;\n};\n\nexport const Footer: FC<FooterProps> = ({\n children,\n className,\n sticky,\n layout = 'start',\n gap,\n dataTestId,\n}) => {\n const { footerHighlighted, setHasFooter } = useContext(ModalContext);\n const responsiveContext = useContext(ResponsiveContext);\n\n useEffect(() => {\n setHasFooter(true);\n }, [setHasFooter]);\n\n return (\n <div\n className={cn(\n styles.footer,\n className,\n layoutStyles[layout],\n gap && layoutStyles[`gap-${gap}`],\n {\n [styles.highlighted]: sticky && footerHighlighted,\n [styles.sticky]: sticky,\n },\n )}\n data-test-id={dataTestId || getDataTestId(responsiveContext?.dataTestId, 'footer')}\n >\n {children}\n </div>\n );\n};\n"],"names":[],"mappings":";;;;;;;;MA2Ca,MAAM,GAAoB,CAAC,EACpC,QAAQ,EACR,SAAS,EACT,MAAM,EACN,MAAM,GAAG,OAAO,EAChB,GAAG,EACH,UAAU,GACb,KAAI;IACD,MAAM,EAAE,iBAAiB,EAAE,YAAY,EAAE,GAAG,UAAU,CAAC,YAAY,CAAC;AACpE,IAAA,MAAM,iBAAiB,GAAG,UAAU,CAAC,iBAAiB,CAAC;IAEvD,SAAS,CAAC,MAAK;QACX,YAAY,CAAC,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"Component.js","sources":["../../../src/components/footer/Component.tsx"],"sourcesContent":["import React, { type FC, type ReactNode, useContext, useEffect } from 'react';\nimport cn from 'classnames';\n\nimport { getDataTestId } from '@alfalab/core-components-shared';\n\nimport { ModalContext } from '../../Context';\nimport { ResponsiveContext } from '../../ResponsiveContext';\n\nimport styles from './index.module.css';\nimport layoutStyles from './layout.module.css';\n\nexport type FooterProps = {\n /**\n * Контент футера\n */\n children?: ReactNode;\n\n /**\n * Дополнительный класс\n */\n className?: string;\n\n /**\n * Фиксирует футер\n */\n sticky?: boolean;\n\n /**\n * Выравнивание элементов футера\n */\n layout?: 'start' | 'center' | 'space-between' | 'column';\n\n /**\n * Отступы между элементами футера\n */\n gap?: 16 | 24 | 32;\n\n /**\n * Идентификатор для систем автоматизированного тестирования\n */\n dataTestId?: string;\n};\n\nexport const Footer: FC<FooterProps> = ({\n children,\n className,\n sticky,\n layout = 'start',\n gap,\n dataTestId,\n}) => {\n const { footerHighlighted, setHasFooter } = useContext(ModalContext);\n const responsiveContext = useContext(ResponsiveContext);\n\n useEffect(() => {\n setHasFooter(true);\n\n return () => {\n setHasFooter(false);\n };\n }, [setHasFooter]);\n\n return (\n <div\n className={cn(\n styles.footer,\n className,\n layoutStyles[layout],\n gap && layoutStyles[`gap-${gap}`],\n {\n [styles.highlighted]: sticky && footerHighlighted,\n [styles.sticky]: sticky,\n },\n )}\n data-test-id={dataTestId || getDataTestId(responsiveContext?.dataTestId, 'footer')}\n >\n {children}\n </div>\n );\n};\n"],"names":[],"mappings":";;;;;;;;MA2Ca,MAAM,GAAoB,CAAC,EACpC,QAAQ,EACR,SAAS,EACT,MAAM,EACN,MAAM,GAAG,OAAO,EAChB,GAAG,EACH,UAAU,GACb,KAAI;IACD,MAAM,EAAE,iBAAiB,EAAE,YAAY,EAAE,GAAG,UAAU,CAAC,YAAY,CAAC;AACpE,IAAA,MAAM,iBAAiB,GAAG,UAAU,CAAC,iBAAiB,CAAC;IAEvD,SAAS,CAAC,MAAK;QACX,YAAY,CAAC,IAAI,CAAC;AAElB,QAAA,OAAO,MAAK;YACR,YAAY,CAAC,KAAK,CAAC;AACvB,SAAC;AACL,KAAC,EAAE,CAAC,YAAY,CAAC,CAAC;IAElB,QACI,KACI,CAAA,aAAA,CAAA,KAAA,EAAA,EAAA,SAAS,EAAE,EAAE,CACT,MAAM,CAAC,MAAM,EACb,SAAS,EACT,YAAY,CAAC,MAAM,CAAC,EACpB,GAAG,IAAI,YAAY,CAAC,CAAO,IAAA,EAAA,GAAG,CAAE,CAAA,CAAC,EACjC;AACI,YAAA,CAAC,MAAM,CAAC,WAAW,GAAG,MAAM,IAAI,iBAAiB;AACjD,YAAA,CAAC,MAAM,CAAC,MAAM,GAAG,MAAM;AAC1B,SAAA,CACJ,EACa,cAAA,EAAA,UAAU,IAAI,aAAa,CAAC,iBAAiB,EAAE,UAAU,EAAE,QAAQ,CAAC,EAAA,EAEjF,QAAQ,CACP;AAEd;;;;"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { FC } from 'react';
|
|
2
|
-
import { FooterProps } from './Component';
|
|
1
|
+
import { type FC } from 'react';
|
|
2
|
+
import { type FooterProps } from './Component';
|
|
3
3
|
export declare type FooterMobileProps = FooterProps;
|
|
4
4
|
export declare const FooterMobile: FC<FooterMobileProps>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Component.mobile.js","sources":["../../../src/components/footer/Component.mobile.tsx"],"sourcesContent":["import React, { FC } from 'react';\nimport cn from 'classnames';\n\nimport { Footer, FooterProps } from './Component';\n\nimport styles from './mobile.module.css';\n\nexport type FooterMobileProps = FooterProps;\n\nexport const FooterMobile: FC<FooterMobileProps> = ({\n className,\n sticky,\n layout = 'start',\n ...restProps\n}) => (\n <Footer\n className={cn(className, styles.footer, {\n [styles.sticky]: sticky,\n })}\n sticky={sticky}\n layout={layout}\n {...restProps}\n />\n);\n"],"names":[],"mappings":";;;;;AASO,MAAM,YAAY,GAA0B,CAAC,EAChD,SAAS,EACT,MAAM,EACN,MAAM,GAAG,OAAO,EAChB,GAAG,SAAS,EACf,MACG,KAAA,CAAA,aAAA,CAAC,MAAM,EACH,EAAA,SAAS,EAAE,EAAE,CAAC,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE;AACpC,QAAA,CAAC,MAAM,CAAC,MAAM,GAAG,MAAM;AAC1B,KAAA,CAAC,EACF,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,EACV,GAAA,SAAS,EACf,CAAA;;;;"}
|
|
1
|
+
{"version":3,"file":"Component.mobile.js","sources":["../../../src/components/footer/Component.mobile.tsx"],"sourcesContent":["import React, { type FC } from 'react';\nimport cn from 'classnames';\n\nimport { Footer, type FooterProps } from './Component';\n\nimport styles from './mobile.module.css';\n\nexport type FooterMobileProps = FooterProps;\n\nexport const FooterMobile: FC<FooterMobileProps> = ({\n className,\n sticky,\n layout = 'start',\n ...restProps\n}) => (\n <Footer\n className={cn(className, styles.footer, {\n [styles.sticky]: sticky,\n })}\n sticky={sticky}\n layout={layout}\n {...restProps}\n />\n);\n"],"names":[],"mappings":";;;;;AASO,MAAM,YAAY,GAA0B,CAAC,EAChD,SAAS,EACT,MAAM,EACN,MAAM,GAAG,OAAO,EAChB,GAAG,SAAS,EACf,MACG,KAAA,CAAA,aAAA,CAAC,MAAM,EACH,EAAA,SAAS,EAAE,EAAE,CAAC,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE;AACpC,QAAA,CAAC,MAAM,CAAC,MAAM,GAAG,MAAM;AAC1B,KAAA,CAAC,EACF,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,EACV,GAAA,SAAS,EACf,CAAA;;;;"}
|
|
@@ -6,8 +6,8 @@
|
|
|
6
6
|
--gap-40: var(--gap-3xl);
|
|
7
7
|
} :root {
|
|
8
8
|
--side-panel-s-footer-paddings: var(--gap-24) var(--gap-40) var(--gap-40);
|
|
9
|
-
} .side-
|
|
9
|
+
} .side-panel__sticky_lhh1j {
|
|
10
10
|
bottom: var(--gap-0);
|
|
11
|
-
} .side-panel__size-
|
|
11
|
+
} .side-panel__size-500_lhh1j {
|
|
12
12
|
padding: var(--side-panel-s-footer-paddings);
|
|
13
13
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import './desktop.css';
|
|
2
2
|
|
|
3
|
-
const styles = {"sticky":"side-
|
|
3
|
+
const styles = {"sticky":"side-panel__sticky_lhh1j","size-500":"side-panel__size-500_lhh1j"};
|
|
4
4
|
|
|
5
5
|
export { styles as default };
|
|
6
6
|
//# sourceMappingURL=desktop.module.css.js.map
|
|
@@ -5,15 +5,17 @@
|
|
|
5
5
|
--side-panel-footer-background: var(--color-light-modal-bg-primary);
|
|
6
6
|
--side-panel-footer-highlight-background: var(--color-light-modal-bg-primary);
|
|
7
7
|
--side-panel-footer-highlight-box-shadow: 0 -1px 0 0 var(--color-light-neutral-300);
|
|
8
|
-
} .side-
|
|
8
|
+
} .side-panel__footer_1yeas {
|
|
9
9
|
width: 100%;
|
|
10
10
|
box-sizing: border-box;
|
|
11
|
-
transition:
|
|
12
|
-
|
|
11
|
+
transition:
|
|
12
|
+
box-shadow 0.2s ease,
|
|
13
|
+
background 0.2s ease;
|
|
14
|
+
} .side-panel__sticky_1yeas {
|
|
13
15
|
background: var(--side-panel-footer-background);
|
|
14
16
|
position: sticky;
|
|
15
17
|
z-index: 1;
|
|
16
|
-
} .side-
|
|
18
|
+
} .side-panel__highlighted_1yeas {
|
|
17
19
|
background: var(--side-panel-footer-highlight-background);
|
|
18
20
|
box-shadow: var(--side-panel-footer-highlight-box-shadow);
|
|
19
21
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import './index.css';
|
|
2
2
|
|
|
3
|
-
const styles = {"footer":"side-
|
|
3
|
+
const styles = {"footer":"side-panel__footer_1yeas","sticky":"side-panel__sticky_1yeas","highlighted":"side-panel__highlighted_1yeas"};
|
|
4
4
|
|
|
5
5
|
export { styles as default };
|
|
6
6
|
//# sourceMappingURL=index.module.css.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.module.css.js","sources":["../../src/components/footer/index.module.css"],"sourcesContent":["@import '../../vars.css';\n\n.footer {\n width: 100%;\n box-sizing: border-box;\n transition
|
|
1
|
+
{"version":3,"file":"index.module.css.js","sources":["../../src/components/footer/index.module.css"],"sourcesContent":["@import '../../vars.css';\n\n.footer {\n width: 100%;\n box-sizing: border-box;\n transition:\n box-shadow 0.2s ease,\n background 0.2s ease;\n}\n\n.sticky {\n background: var(--side-panel-footer-background);\n position: sticky;\n z-index: 1;\n}\n\n.highlighted {\n background: var(--side-panel-footer-highlight-background);\n box-shadow: var(--side-panel-footer-highlight-box-shadow);\n}\n"],"names":[],"mappings":";;AAEgB,eAAe,CAAC,QAAQ,CAAC,0BAA0B,CAAC,QAAQ,CAAC,0BAA0B,CAAC,aAAa,CAAC,+BAA+B,CAAC;;;;"}
|
|
@@ -7,35 +7,35 @@
|
|
|
7
7
|
--gap-32: var(--gap-2xl);
|
|
8
8
|
} :root {
|
|
9
9
|
--side-panel-footer-default-gap: var(--gap-16);
|
|
10
|
-
} .side-
|
|
10
|
+
} .side-panel__column_1l6tg {
|
|
11
11
|
display: flex;
|
|
12
|
-
flex-direction: column
|
|
13
|
-
} .side-
|
|
12
|
+
flex-direction: column;
|
|
13
|
+
} .side-panel__column_1l6tg > *:not(:last-child):not(:only-child) {
|
|
14
14
|
margin-bottom: var(--side-panel-footer-default-gap);
|
|
15
|
-
} .side-
|
|
15
|
+
} .side-panel__column_1l6tg.side-panel__gap-16_1l6tg > *:not(:last-child):not(:only-child) {
|
|
16
16
|
margin-bottom: var(--gap-16);
|
|
17
|
-
} .side-
|
|
17
|
+
} .side-panel__column_1l6tg.side-panel__gap-24_1l6tg > *:not(:last-child):not(:only-child) {
|
|
18
18
|
margin-bottom: var(--gap-24);
|
|
19
|
-
} .side-
|
|
19
|
+
} .side-panel__column_1l6tg.side-panel__gap-32_1l6tg > *:not(:last-child):not(:only-child) {
|
|
20
20
|
margin-bottom: var(--gap-32);
|
|
21
|
-
} .side-
|
|
21
|
+
} .side-panel__start_1l6tg {
|
|
22
22
|
justify-content: flex-start;
|
|
23
|
-
} .side-
|
|
23
|
+
} .side-panel__center_1l6tg {
|
|
24
24
|
justify-content: center;
|
|
25
|
-
} .side-panel__space-
|
|
26
|
-
justify-content: space-between
|
|
27
|
-
} .side-panel__space-
|
|
25
|
+
} .side-panel__space-between_1l6tg {
|
|
26
|
+
justify-content: space-between;
|
|
27
|
+
} .side-panel__space-between_1l6tg > * {
|
|
28
28
|
flex: 1;
|
|
29
|
-
} .side-
|
|
30
|
-
.side-
|
|
31
|
-
.side-panel__space-
|
|
32
|
-
display: flex
|
|
33
|
-
} .side-
|
|
29
|
+
} .side-panel__start_1l6tg,
|
|
30
|
+
.side-panel__center_1l6tg,
|
|
31
|
+
.side-panel__space-between_1l6tg {
|
|
32
|
+
display: flex;
|
|
33
|
+
} .side-panel__start_1l6tg > *:not(:last-child):not(:only-child), .side-panel__center_1l6tg > *:not(:last-child):not(:only-child), .side-panel__space-between_1l6tg > *:not(:last-child):not(:only-child) {
|
|
34
34
|
margin-right: var(--side-panel-footer-default-gap);
|
|
35
|
-
} .side-
|
|
35
|
+
} .side-panel__start_1l6tg.side-panel__gap-16_1l6tg > *:not(:last-child):not(:only-child), .side-panel__center_1l6tg.side-panel__gap-16_1l6tg > *:not(:last-child):not(:only-child), .side-panel__space-between_1l6tg.side-panel__gap-16_1l6tg > *:not(:last-child):not(:only-child) {
|
|
36
36
|
margin-right: var(--gap-16);
|
|
37
|
-
} .side-
|
|
37
|
+
} .side-panel__start_1l6tg.side-panel__gap-24_1l6tg > *:not(:last-child):not(:only-child), .side-panel__center_1l6tg.side-panel__gap-24_1l6tg > *:not(:last-child):not(:only-child), .side-panel__space-between_1l6tg.side-panel__gap-24_1l6tg > *:not(:last-child):not(:only-child) {
|
|
38
38
|
margin-right: var(--gap-24);
|
|
39
|
-
} .side-
|
|
39
|
+
} .side-panel__start_1l6tg.side-panel__gap-32_1l6tg > *:not(:last-child):not(:only-child), .side-panel__center_1l6tg.side-panel__gap-32_1l6tg > *:not(:last-child):not(:only-child), .side-panel__space-between_1l6tg.side-panel__gap-32_1l6tg > *:not(:last-child):not(:only-child) {
|
|
40
40
|
margin-right: var(--gap-32);
|
|
41
41
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import './layout.css';
|
|
2
2
|
|
|
3
|
-
const layoutStyles = {"column":"side-
|
|
3
|
+
const layoutStyles = {"column":"side-panel__column_1l6tg","gap-16":"side-panel__gap-16_1l6tg","gap-24":"side-panel__gap-24_1l6tg","gap-32":"side-panel__gap-32_1l6tg","start":"side-panel__start_1l6tg","center":"side-panel__center_1l6tg","space-between":"side-panel__space-between_1l6tg"};
|
|
4
4
|
|
|
5
5
|
export { layoutStyles as default };
|
|
6
6
|
//# sourceMappingURL=layout.module.css.js.map
|
|
@@ -6,14 +6,14 @@
|
|
|
6
6
|
--gap-0: 0px;
|
|
7
7
|
--gap-16: var(--gap-m);
|
|
8
8
|
}
|
|
9
|
-
.side-
|
|
10
|
-
padding: var(--gap-16)
|
|
9
|
+
.side-panel__footer_1qlh6 {
|
|
10
|
+
padding: var(--gap-16);
|
|
11
11
|
}
|
|
12
12
|
@media (display-mode: standalone) {
|
|
13
|
-
.side-
|
|
14
|
-
padding-bottom: calc(var(--sab) + var(--gap-16))
|
|
13
|
+
.side-panel__footer_1qlh6 {
|
|
14
|
+
padding-bottom: calc(var(--sab) + var(--gap-16));
|
|
15
15
|
}
|
|
16
16
|
}
|
|
17
|
-
.side-
|
|
17
|
+
.side-panel__sticky_1qlh6 {
|
|
18
18
|
bottom: var(--gap-0);
|
|
19
19
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import './mobile.css';
|
|
2
2
|
|
|
3
|
-
const styles = {"footer":"side-
|
|
3
|
+
const styles = {"footer":"side-panel__footer_1qlh6","sticky":"side-panel__sticky_1qlh6"};
|
|
4
4
|
|
|
5
5
|
export { styles as default };
|
|
6
6
|
//# sourceMappingURL=mobile.module.css.js.map
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { FC } from 'react';
|
|
2
|
-
import { NavigationBarPrivateProps } from '@alfalab/core-components-navigation-bar-private/modern';
|
|
1
|
+
import { type FC } from 'react';
|
|
2
|
+
import { type NavigationBarPrivateProps } from '@alfalab/core-components-navigation-bar-private/modern';
|
|
3
3
|
export declare type HeaderProps = Omit<NavigationBarPrivateProps, 'size' | 'view' | 'parentRef'>;
|
|
4
4
|
export declare const Header: FC<HeaderProps>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Component.js","sources":["../../../src/components/header/Component.tsx"],"sourcesContent":["import React, { FC, useContext, useEffect } from 'react';\nimport cn from 'classnames';\n\nimport {\n NavigationBarPrivate,\n NavigationBarPrivateProps,\n} from '@alfalab/core-components-navigation-bar-private';\nimport { getDataTestId } from '@alfalab/core-components-shared';\n\nimport { SIZE_TO_CLASSNAME_MAP } from '../../consts';\nimport { ModalContext } from '../../Context';\nimport { ResponsiveContext } from '../../ResponsiveContext';\n\nimport desktopStyles from './desktop.module.css';\nimport styles from './index.module.css';\nimport mobileStyles from './mobile.module.css';\n\nexport type HeaderProps = Omit<NavigationBarPrivateProps, 'size' | 'view' | 'parentRef'>;\n\nexport const Header: FC<HeaderProps> = ({\n className,\n children,\n contentClassName,\n title,\n sticky,\n hasCloser = true,\n ...restProps\n}) => {\n const { setHasHeader, headerHighlighted, onClose, componentRef } = useContext(ModalContext);\n const { size = 500, view = 'desktop', dataTestId } = useContext(ResponsiveContext) || {};\n\n useEffect(() => {\n setHasHeader(true);\n }, [setHasHeader]);\n\n const hasContent = Boolean(title || children);\n\n return (\n <NavigationBarPrivate\n dataTestId={getDataTestId(dataTestId, 'header')}\n {...restProps}\n scrollableParentRef={componentRef}\n view={view}\n sticky={sticky}\n title={title}\n hasCloser={hasCloser}\n onClose={onClose}\n className={cn(styles.header, className, {\n [styles.highlighted]: hasContent && sticky && headerHighlighted,\n [styles.sticky]: sticky,\n [styles.hasContent]: hasContent,\n [desktopStyles.sticky]: view === 'desktop' && sticky,\n [desktopStyles[SIZE_TO_CLASSNAME_MAP[size]]]: view === 'desktop',\n [mobileStyles.sticky]: view === 'mobile' && sticky,\n [mobileStyles.header]: view === 'mobile',\n })}\n contentClassName={cn(contentClassName, {\n [desktopStyles.content]: view === 'desktop',\n [mobileStyles.content]: view === 'mobile',\n })}\n >\n {children}\n </NavigationBarPrivate>\n );\n};\n"],"names":[],"mappings":";;;;;;;;;;;AAmBa,MAAA,MAAM,GAAoB,CAAC,EACpC,SAAS,EACT,QAAQ,EACR,gBAAgB,EAChB,KAAK,EACL,MAAM,EACN,SAAS,GAAG,IAAI,EAChB,GAAG,SAAS,EACf,KAAI;AACD,IAAA,MAAM,EAAE,YAAY,EAAE,iBAAiB,EAAE,OAAO,EAAE,YAAY,EAAE,GAAG,UAAU,CAAC,YAAY,CAAC;AAC3F,IAAA,MAAM,EAAE,IAAI,GAAG,GAAG,EAAE,IAAI,GAAG,SAAS,EAAE,UAAU,EAAE,GAAG,UAAU,CAAC,iBAAiB,CAAC,IAAI,EAAE;IAExF,SAAS,CAAC,MAAK;QACX,YAAY,CAAC,IAAI,CAAC;AACtB,KAAC,EAAE,CAAC,YAAY,CAAC,CAAC;IAElB,MAAM,UAAU,GAAG,OAAO,CAAC,KAAK,IAAI,QAAQ,CAAC;IAE7C,QACI,oBAAC,oBAAoB,EAAA,EACjB,UAAU,EAAE,aAAa,CAAC,UAAU,EAAE,QAAQ,CAAC,EAC3C,GAAA,SAAS,EACb,mBAAmB,EAAE,YAAY,EACjC,IAAI,EAAE,IAAI,EACV,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,KAAK,EACZ,SAAS,EAAE,SAAS,EACpB,OAAO,EAAE,OAAO,EAChB,SAAS,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,EAAE,SAAS,EAAE;YACpC,CAAC,MAAM,CAAC,WAAW,GAAG,UAAU,IAAI,MAAM,IAAI,iBAAiB;AAC/D,YAAA,CAAC,MAAM,CAAC,MAAM,GAAG,MAAM;AACvB,YAAA,CAAC,MAAM,CAAC,UAAU,GAAG,UAAU;YAC/B,CAAC,aAAa,CAAC,MAAM,GAAG,IAAI,KAAK,SAAS,IAAI,MAAM;YACpD,CAAC,aAAa,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,KAAK,SAAS;YAChE,CAAC,YAAY,CAAC,MAAM,GAAG,IAAI,KAAK,QAAQ,IAAI,MAAM;AAClD,YAAA,CAAC,YAAY,CAAC,MAAM,GAAG,IAAI,KAAK,QAAQ;AAC3C,SAAA,CAAC,EACF,gBAAgB,EAAE,EAAE,CAAC,gBAAgB,EAAE;AACnC,YAAA,CAAC,aAAa,CAAC,OAAO,GAAG,IAAI,KAAK,SAAS;AAC3C,YAAA,CAAC,YAAY,CAAC,OAAO,GAAG,IAAI,KAAK,QAAQ;AAC5C,SAAA,CAAC,EAED,EAAA,QAAQ,CACU;AAE/B;;;;"}
|
|
1
|
+
{"version":3,"file":"Component.js","sources":["../../../src/components/header/Component.tsx"],"sourcesContent":["import React, { type FC, useContext, useEffect } from 'react';\nimport cn from 'classnames';\n\nimport {\n NavigationBarPrivate,\n type NavigationBarPrivateProps,\n} from '@alfalab/core-components-navigation-bar-private';\nimport { getDataTestId } from '@alfalab/core-components-shared';\n\nimport { SIZE_TO_CLASSNAME_MAP } from '../../consts';\nimport { ModalContext } from '../../Context';\nimport { ResponsiveContext } from '../../ResponsiveContext';\n\nimport desktopStyles from './desktop.module.css';\nimport styles from './index.module.css';\nimport mobileStyles from './mobile.module.css';\n\nexport type HeaderProps = Omit<NavigationBarPrivateProps, 'size' | 'view' | 'parentRef'>;\n\nexport const Header: FC<HeaderProps> = ({\n className,\n children,\n contentClassName,\n title,\n sticky,\n hasCloser = true,\n ...restProps\n}) => {\n const { setHasHeader, headerHighlighted, onClose, componentRef } = useContext(ModalContext);\n const { size = 500, view = 'desktop', dataTestId } = useContext(ResponsiveContext) || {};\n\n useEffect(() => {\n setHasHeader(true);\n }, [setHasHeader]);\n\n const hasContent = Boolean(title || children);\n\n return (\n <NavigationBarPrivate\n dataTestId={getDataTestId(dataTestId, 'header')}\n {...restProps}\n scrollableParentRef={componentRef}\n view={view}\n sticky={sticky}\n title={title}\n hasCloser={hasCloser}\n onClose={onClose}\n className={cn(styles.header, className, {\n [styles.highlighted]: hasContent && sticky && headerHighlighted,\n [styles.sticky]: sticky,\n [styles.hasContent]: hasContent,\n [desktopStyles.sticky]: view === 'desktop' && sticky,\n [desktopStyles[SIZE_TO_CLASSNAME_MAP[size]]]: view === 'desktop',\n [mobileStyles.sticky]: view === 'mobile' && sticky,\n [mobileStyles.header]: view === 'mobile',\n })}\n contentClassName={cn(contentClassName, {\n [desktopStyles.content]: view === 'desktop',\n [mobileStyles.content]: view === 'mobile',\n })}\n >\n {children}\n </NavigationBarPrivate>\n );\n};\n"],"names":[],"mappings":";;;;;;;;;;;AAmBa,MAAA,MAAM,GAAoB,CAAC,EACpC,SAAS,EACT,QAAQ,EACR,gBAAgB,EAChB,KAAK,EACL,MAAM,EACN,SAAS,GAAG,IAAI,EAChB,GAAG,SAAS,EACf,KAAI;AACD,IAAA,MAAM,EAAE,YAAY,EAAE,iBAAiB,EAAE,OAAO,EAAE,YAAY,EAAE,GAAG,UAAU,CAAC,YAAY,CAAC;AAC3F,IAAA,MAAM,EAAE,IAAI,GAAG,GAAG,EAAE,IAAI,GAAG,SAAS,EAAE,UAAU,EAAE,GAAG,UAAU,CAAC,iBAAiB,CAAC,IAAI,EAAE;IAExF,SAAS,CAAC,MAAK;QACX,YAAY,CAAC,IAAI,CAAC;AACtB,KAAC,EAAE,CAAC,YAAY,CAAC,CAAC;IAElB,MAAM,UAAU,GAAG,OAAO,CAAC,KAAK,IAAI,QAAQ,CAAC;IAE7C,QACI,oBAAC,oBAAoB,EAAA,EACjB,UAAU,EAAE,aAAa,CAAC,UAAU,EAAE,QAAQ,CAAC,EAC3C,GAAA,SAAS,EACb,mBAAmB,EAAE,YAAY,EACjC,IAAI,EAAE,IAAI,EACV,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,KAAK,EACZ,SAAS,EAAE,SAAS,EACpB,OAAO,EAAE,OAAO,EAChB,SAAS,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,EAAE,SAAS,EAAE;YACpC,CAAC,MAAM,CAAC,WAAW,GAAG,UAAU,IAAI,MAAM,IAAI,iBAAiB;AAC/D,YAAA,CAAC,MAAM,CAAC,MAAM,GAAG,MAAM;AACvB,YAAA,CAAC,MAAM,CAAC,UAAU,GAAG,UAAU;YAC/B,CAAC,aAAa,CAAC,MAAM,GAAG,IAAI,KAAK,SAAS,IAAI,MAAM;YACpD,CAAC,aAAa,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,KAAK,SAAS;YAChE,CAAC,YAAY,CAAC,MAAM,GAAG,IAAI,KAAK,QAAQ,IAAI,MAAM;AAClD,YAAA,CAAC,YAAY,CAAC,MAAM,GAAG,IAAI,KAAK,QAAQ;AAC3C,SAAA,CAAC,EACF,gBAAgB,EAAE,EAAE,CAAC,gBAAgB,EAAE;AACnC,YAAA,CAAC,aAAa,CAAC,OAAO,GAAG,IAAI,KAAK,SAAS;AAC3C,YAAA,CAAC,YAAY,CAAC,OAAO,GAAG,IAAI,KAAK,QAAQ;AAC5C,SAAA,CAAC,EAED,EAAA,QAAQ,CACU;AAE/B;;;;"}
|