@alfalab/core-components-gallery 5.7.4 → 5.8.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/Component.js +47 -12
- package/components/buttons/index.css +35 -0
- package/{buttons-ec113bb4.d.ts → components/buttons/index.d.ts} +6 -1
- package/components/buttons/index.js +72 -0
- package/components/header/Component.js +33 -12
- package/components/header/index.css +5 -19
- package/components/header-info-block/Component.js +1 -1
- package/components/header-info-block/index.css +5 -5
- package/components/header-mobile/Component.d.ts +4 -0
- package/components/header-mobile/Component.js +39 -0
- package/components/header-mobile/index.css +50 -0
- package/components/header-mobile/index.d.ts +1 -0
- package/components/header-mobile/index.js +9 -0
- package/components/image-preview/Component.js +67 -24
- package/components/image-preview/index.css +35 -28
- package/components/image-preview/paths.d.ts +2 -0
- package/components/image-preview/paths.js +2 -0
- package/components/image-viewer/component.js +30 -10
- package/components/image-viewer/index.css +37 -25
- package/components/image-viewer/slide.js +3 -1
- package/components/image-viewer/video/index.css +48 -0
- package/components/image-viewer/video/index.d.ts +10 -0
- package/components/image-viewer/video/index.js +130 -0
- package/components/index.d.ts +2 -0
- package/components/index.js +4 -0
- package/components/info-bar/Component.d.ts +4 -0
- package/components/info-bar/Component.js +47 -0
- package/components/info-bar/index.css +37 -0
- package/components/info-bar/index.d.ts +1 -0
- package/components/info-bar/index.js +9 -0
- package/components/navigation-bar/Component.js +3 -2
- package/components/navigation-bar/index.css +8 -6
- package/context.d.ts +7 -0
- package/context.js +7 -0
- package/cssm/Component.js +46 -11
- package/cssm/components/{header/buttons.d.ts → buttons/index.d.ts} +6 -1
- package/cssm/components/buttons/index.js +71 -0
- package/cssm/components/buttons/index.module.css +34 -0
- package/cssm/components/header/Component.js +28 -10
- package/cssm/components/header/index.module.css +3 -17
- package/cssm/components/header-mobile/Component.d.ts +4 -0
- package/cssm/components/header-mobile/Component.js +38 -0
- package/cssm/components/header-mobile/index.d.ts +1 -0
- package/cssm/components/header-mobile/index.js +9 -0
- package/cssm/components/header-mobile/index.module.css +49 -0
- package/cssm/components/image-preview/Component.js +66 -27
- package/cssm/components/image-preview/index.module.css +25 -18
- package/cssm/components/image-preview/paths.d.ts +2 -0
- package/cssm/components/image-preview/paths.js +2 -0
- package/cssm/components/image-viewer/component.js +29 -9
- package/cssm/components/image-viewer/index.module.css +21 -9
- package/cssm/components/image-viewer/slide.js +12 -2
- package/cssm/components/image-viewer/video/index.d.ts +10 -0
- package/cssm/components/image-viewer/video/index.js +129 -0
- package/cssm/components/image-viewer/video/index.module.css +47 -0
- package/cssm/components/index.d.ts +2 -0
- package/cssm/components/index.js +4 -0
- package/cssm/components/info-bar/Component.d.ts +4 -0
- package/cssm/components/info-bar/Component.js +46 -0
- package/cssm/components/info-bar/index.d.ts +1 -0
- package/cssm/components/info-bar/index.js +9 -0
- package/cssm/components/info-bar/index.module.css +36 -0
- package/cssm/components/navigation-bar/Component.js +2 -1
- package/cssm/components/navigation-bar/index.module.css +3 -1
- package/cssm/context.d.ts +7 -0
- package/cssm/context.js +7 -0
- package/cssm/index.d.ts +1 -1
- package/cssm/index.js +1 -8
- package/cssm/index.module.css +14 -2
- package/cssm/types.d.ts +7 -0
- package/cssm/utils/constants.d.ts +14 -1
- package/cssm/utils/constants.js +19 -0
- package/cssm/utils/index.js +7 -0
- package/cssm/utils/utils.d.ts +2 -1
- package/cssm/utils/utils.js +5 -3
- package/esm/Component.js +46 -12
- package/esm/components/buttons/index.css +35 -0
- package/esm/{buttons-791da71e.d.ts → components/buttons/index.d.ts} +6 -1
- package/esm/components/buttons/index.js +55 -0
- package/esm/components/header/Component.js +30 -9
- package/esm/components/header/index.css +5 -19
- package/esm/components/header-info-block/Component.js +1 -1
- package/esm/components/header-info-block/index.css +5 -5
- package/esm/components/header-mobile/Component.d.ts +4 -0
- package/esm/components/header-mobile/Component.js +30 -0
- package/esm/components/header-mobile/index.css +50 -0
- package/esm/components/header-mobile/index.d.ts +1 -0
- package/esm/components/header-mobile/index.js +1 -0
- package/esm/components/image-preview/Component.js +69 -26
- package/esm/components/image-preview/index.css +35 -28
- package/esm/components/image-preview/paths.d.ts +2 -0
- package/esm/components/image-preview/paths.js +2 -0
- package/esm/components/image-viewer/component.js +31 -11
- package/esm/components/image-viewer/index.css +37 -25
- package/esm/components/image-viewer/slide.js +3 -1
- package/esm/components/image-viewer/video/index.css +48 -0
- package/esm/components/image-viewer/video/index.d.ts +10 -0
- package/esm/components/image-viewer/video/index.js +119 -0
- package/esm/components/index.d.ts +2 -0
- package/esm/components/index.js +2 -0
- package/esm/components/info-bar/Component.d.ts +4 -0
- package/esm/components/info-bar/Component.js +39 -0
- package/esm/components/info-bar/index.css +37 -0
- package/esm/components/info-bar/index.d.ts +1 -0
- package/esm/components/info-bar/index.js +1 -0
- package/esm/components/navigation-bar/Component.js +3 -2
- package/esm/components/navigation-bar/index.css +8 -6
- package/esm/context.d.ts +7 -0
- package/esm/context.js +7 -0
- package/esm/index.css +17 -5
- package/esm/index.d.ts +1 -1
- package/esm/index.js +1 -3
- package/esm/{slide-7d5a41d1.js → slide-3be75078.js} +15 -5
- package/esm/types.d.ts +7 -0
- package/esm/utils/constants.d.ts +14 -1
- package/esm/utils/constants.js +14 -1
- package/esm/utils/index.js +2 -2
- package/esm/utils/utils.d.ts +2 -1
- package/esm/utils/utils.js +5 -4
- package/index.css +17 -5
- package/index.d.ts +1 -1
- package/index.js +1 -8
- package/modern/Component.js +39 -7
- package/modern/components/buttons/index.css +35 -0
- package/modern/{buttons-1859cb8e.d.ts → components/buttons/index.d.ts} +6 -1
- package/modern/components/buttons/index.js +33 -0
- package/modern/components/header/Component.js +27 -9
- package/modern/components/header/index.css +5 -19
- package/modern/components/header-info-block/Component.js +1 -1
- package/modern/components/header-info-block/index.css +5 -5
- package/modern/components/header-mobile/Component.d.ts +4 -0
- package/modern/components/header-mobile/Component.js +28 -0
- package/modern/components/header-mobile/index.css +50 -0
- package/modern/components/header-mobile/index.d.ts +1 -0
- package/modern/components/header-mobile/index.js +1 -0
- package/modern/components/image-preview/Component.js +65 -23
- package/modern/components/image-preview/index.css +35 -28
- package/modern/components/image-preview/paths.d.ts +2 -0
- package/modern/components/image-preview/paths.js +2 -0
- package/modern/components/image-viewer/component.js +31 -11
- package/modern/components/image-viewer/index.css +37 -25
- package/modern/components/image-viewer/slide.js +3 -1
- package/modern/components/image-viewer/video/index.css +48 -0
- package/modern/components/image-viewer/video/index.d.ts +10 -0
- package/modern/components/image-viewer/video/index.js +117 -0
- package/modern/components/index.d.ts +2 -0
- package/modern/components/index.js +2 -0
- package/modern/components/info-bar/Component.d.ts +4 -0
- package/modern/components/info-bar/Component.js +38 -0
- package/modern/components/info-bar/index.css +37 -0
- package/modern/components/info-bar/index.d.ts +1 -0
- package/modern/components/info-bar/index.js +1 -0
- package/modern/components/navigation-bar/Component.js +3 -2
- package/modern/components/navigation-bar/index.css +8 -6
- package/modern/context.d.ts +7 -0
- package/modern/context.js +7 -0
- package/modern/index.css +17 -5
- package/modern/index.d.ts +1 -1
- package/modern/index.js +1 -3
- package/modern/{slide-c47386c3.js → slide-df1baab8.js} +15 -5
- package/modern/types.d.ts +7 -0
- package/modern/utils/constants.d.ts +14 -1
- package/modern/utils/constants.js +14 -1
- package/modern/utils/index.js +2 -2
- package/modern/utils/utils.d.ts +2 -1
- package/modern/utils/utils.js +5 -4
- package/moderncssm/Component.js +38 -6
- package/moderncssm/components/buttons/index.d.ts +16 -0
- package/moderncssm/components/buttons/index.js +31 -0
- package/moderncssm/components/buttons/index.module.css +20 -0
- package/moderncssm/components/header/Component.js +24 -9
- package/moderncssm/components/header/index.module.css +0 -19
- package/moderncssm/components/header-mobile/Component.d.ts +4 -0
- package/moderncssm/components/header-mobile/Component.js +26 -0
- package/moderncssm/components/header-mobile/index.d.ts +1 -0
- package/moderncssm/components/header-mobile/index.js +1 -0
- package/moderncssm/components/header-mobile/index.module.css +35 -0
- package/moderncssm/components/image-preview/Component.js +64 -26
- package/moderncssm/components/image-preview/index.module.css +30 -13
- package/moderncssm/components/image-preview/paths.d.ts +2 -0
- package/moderncssm/components/image-preview/paths.js +2 -0
- package/moderncssm/components/image-viewer/component.js +30 -10
- package/moderncssm/components/image-viewer/index.module.css +29 -6
- package/moderncssm/components/image-viewer/slide.js +14 -4
- package/moderncssm/components/image-viewer/video/index.d.ts +10 -0
- package/moderncssm/components/image-viewer/video/index.js +115 -0
- package/moderncssm/components/image-viewer/video/index.module.css +36 -0
- package/moderncssm/components/index.d.ts +2 -0
- package/moderncssm/components/index.js +2 -0
- package/moderncssm/components/info-bar/Component.d.ts +4 -0
- package/moderncssm/components/info-bar/Component.js +36 -0
- package/moderncssm/components/info-bar/index.d.ts +1 -0
- package/moderncssm/components/info-bar/index.js +1 -0
- package/moderncssm/components/info-bar/index.module.css +23 -0
- package/moderncssm/components/navigation-bar/Component.js +2 -1
- package/moderncssm/components/navigation-bar/index.module.css +4 -0
- package/moderncssm/context.d.ts +7 -0
- package/moderncssm/context.js +7 -0
- package/moderncssm/index.d.ts +1 -1
- package/moderncssm/index.js +1 -3
- package/moderncssm/index.module.css +18 -2
- package/moderncssm/types.d.ts +7 -0
- package/moderncssm/utils/constants.d.ts +14 -1
- package/moderncssm/utils/constants.js +14 -1
- package/moderncssm/utils/index.js +2 -2
- package/moderncssm/utils/utils.d.ts +2 -1
- package/moderncssm/utils/utils.js +5 -4
- package/package.json +4 -3
- package/{slide-12155967.js → slide-2cbb0733.js} +13 -3
- package/src/Component.tsx +48 -6
- package/src/components/buttons/index.module.css +21 -0
- package/src/components/{header/buttons.tsx → buttons/index.tsx} +77 -0
- package/src/components/header/Component.tsx +33 -10
- package/src/components/header/index.module.css +0 -20
- package/src/components/header-mobile/Component.tsx +57 -0
- package/src/components/header-mobile/index.module.css +35 -0
- package/src/components/header-mobile/index.ts +1 -0
- package/src/components/image-preview/Component.tsx +131 -28
- package/src/components/image-preview/index.module.css +28 -9
- package/src/components/image-preview/paths.ts +3 -0
- package/src/components/image-viewer/component.tsx +32 -11
- package/src/components/image-viewer/index.module.css +26 -3
- package/src/components/image-viewer/slide.tsx +30 -4
- package/src/components/image-viewer/video/index.module.css +36 -0
- package/src/components/image-viewer/video/index.tsx +159 -0
- package/src/components/index.ts +2 -0
- package/src/components/info-bar/Component.tsx +68 -0
- package/src/components/info-bar/index.module.css +23 -0
- package/src/components/info-bar/index.ts +1 -0
- package/src/components/navigation-bar/Component.tsx +2 -1
- package/src/components/navigation-bar/index.module.css +4 -0
- package/src/context.ts +14 -0
- package/src/index.module.css +18 -2
- package/src/index.ts +1 -1
- package/src/types.ts +15 -5
- package/src/utils/constants.ts +17 -0
- package/src/utils/utils.ts +5 -3
- package/types.d.ts +7 -0
- package/utils/constants.d.ts +14 -1
- package/utils/constants.js +19 -0
- package/utils/index.js +7 -0
- package/utils/utils.d.ts +2 -1
- package/utils/utils.js +5 -3
- package/buttons-ec113bb4.js +0 -37
- package/components/header/buttons.d.ts +0 -0
- package/components/header/buttons.js +0 -20
- package/cssm/components/header/buttons.js +0 -37
- package/esm/buttons-791da71e.js +0 -27
- package/esm/components/header/buttons.d.ts +0 -0
- package/esm/components/header/buttons.js +0 -9
- package/modern/buttons-1859cb8e.js +0 -20
- package/modern/components/header/buttons.d.ts +0 -0
- package/modern/components/header/buttons.js +0 -8
- package/moderncssm/components/header/buttons.d.ts +0 -11
- package/moderncssm/components/header/buttons.js +0 -18
- /package/esm/{slide-7d5a41d1.d.ts → slide-3be75078.d.ts} +0 -0
- /package/modern/{slide-c47386c3.d.ts → slide-df1baab8.d.ts} +0 -0
- /package/{slide-12155967.d.ts → slide-2cbb0733.d.ts} +0 -0
|
@@ -1,12 +1,10 @@
|
|
|
1
|
-
/* hash:
|
|
1
|
+
/* hash: 1qocg */
|
|
2
2
|
:root { /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */
|
|
3
3
|
} /* deprecated */ :root {
|
|
4
|
-
--color-light-base-bg-primary: #fff;
|
|
5
4
|
--color-light-status-info: #2288fa;
|
|
6
5
|
--color-static-neutral-100-inverted: #1c1c1e;
|
|
7
6
|
--color-static-neutral-300-inverted: #29292c; /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */
|
|
8
|
-
} :root { /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */
|
|
9
|
-
--color-static-overlay-white-xhigh: rgba(255, 255, 255, 0.4); /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */
|
|
7
|
+
} :root { /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */
|
|
10
8
|
} :root { /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */
|
|
11
9
|
} :root {
|
|
12
10
|
|
|
@@ -30,54 +28,63 @@
|
|
|
30
28
|
} :root {
|
|
31
29
|
} :root {
|
|
32
30
|
--focus-color: var(--color-light-status-info);
|
|
33
|
-
} /* сбрасывает синюю подсветку при нажатии */ .
|
|
31
|
+
} /* сбрасывает синюю подсветку при нажатии */ .gallery__component_edf5d {
|
|
34
32
|
display: flex;
|
|
35
33
|
padding: var(--gap-4);
|
|
36
|
-
|
|
37
|
-
border-radius: var(--border-radius-12);
|
|
34
|
+
z-index: 3;
|
|
38
35
|
overflow: hidden;
|
|
39
36
|
transition: border 0.15s ease-in-out;
|
|
40
|
-
outline: none
|
|
41
|
-
} .
|
|
42
|
-
|
|
43
|
-
} .
|
|
44
|
-
|
|
45
|
-
} .
|
|
37
|
+
outline: none
|
|
38
|
+
} .gallery__component_edf5d .gallery__image_edf5d {
|
|
39
|
+
opacity: 0.3;
|
|
40
|
+
} .gallery__component_edf5d.gallery__mobile_edf5d {
|
|
41
|
+
padding: 0;
|
|
42
|
+
} .gallery__active_edf5d > .gallery__image_edf5d {
|
|
43
|
+
opacity: 1;
|
|
44
|
+
} .gallery__preview_edf5d {
|
|
46
45
|
width: 56px;
|
|
47
46
|
height: 56px;
|
|
48
47
|
flex-shrink: 0;
|
|
49
|
-
border-radius: var(--border-radius-
|
|
48
|
+
border-radius: var(--border-radius-12);
|
|
50
49
|
cursor: pointer;
|
|
51
50
|
-webkit-user-select: none;
|
|
52
|
-
user-select: none
|
|
53
|
-
} .
|
|
51
|
+
user-select: none
|
|
52
|
+
} .gallery__preview_edf5d.gallery__mobile_edf5d {
|
|
53
|
+
width: 36px;
|
|
54
|
+
height: 46px;
|
|
55
|
+
border-radius: var(--border-radius-8);
|
|
56
|
+
} .gallery__image_edf5d {
|
|
54
57
|
transition: opacity 0.15s ease-in-out
|
|
55
|
-
} .
|
|
58
|
+
} .gallery__image_edf5d > img {
|
|
56
59
|
display: block;
|
|
57
|
-
background-color: var(--color-light-base-bg-primary);
|
|
58
60
|
width: 100%;
|
|
59
61
|
height: 100%;
|
|
60
62
|
border-radius: inherit;
|
|
61
63
|
object-fit: cover;
|
|
62
64
|
overflow: clip;
|
|
63
65
|
overflow-clip-margin: border-box;
|
|
64
|
-
} .
|
|
66
|
+
} .gallery__image_edf5d:hover {
|
|
65
67
|
opacity: 0.7;
|
|
66
|
-
} .
|
|
68
|
+
} .gallery__loading_edf5d {
|
|
67
69
|
background-color: var(--color-static-neutral-100-inverted)
|
|
68
|
-
} .
|
|
70
|
+
} .gallery__loading_edf5d .gallery__active_edf5d {
|
|
69
71
|
background-color: var(--color-static-neutral-300-inverted);
|
|
70
|
-
} .
|
|
72
|
+
} .gallery__brokenImageWrapper_edf5d {
|
|
71
73
|
display: flex;
|
|
72
74
|
justify-content: center;
|
|
73
75
|
align-items: center;
|
|
74
|
-
background-color: var(--color-static-neutral-300-inverted)
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
76
|
+
background-color: var(--color-static-neutral-300-inverted);
|
|
77
|
+
opacity: 0.3
|
|
78
|
+
} .gallery__brokenImageWrapper_edf5d.gallery__active_edf5d {
|
|
79
|
+
opacity: 1;
|
|
80
|
+
} .gallery__brokenIcon_edf5d {
|
|
78
81
|
width: 40px;
|
|
79
82
|
height: 40px;
|
|
80
|
-
} .
|
|
83
|
+
} .gallery__focused_edf5d {
|
|
81
84
|
outline: 2px solid var(--focus-color);
|
|
82
85
|
outline-offset: 2px;
|
|
83
|
-
}
|
|
86
|
+
} .gallery__canvasPreview_edf5d {
|
|
87
|
+
border-radius: var(--border-radius-12)
|
|
88
|
+
} .gallery__canvasPreview_edf5d.gallery__mobile_edf5d {
|
|
89
|
+
border-radius: var(--border-radius-8);
|
|
90
|
+
}
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
const NoImagePaths = {
|
|
2
2
|
baseImage: 'M 30.5 6.5 L 4 6.5 C 2.894531 6.5 2 7.394531 2 8.5 L 2 31.5 C 2 32.605469 2.894531 33.5 4 33.5 L 36 33.5 C 37.105469 33.5 38 32.605469 38 31.5 L 38 14 L 32.367188 14 C 31.335938 14 30.5 13.164062 30.5 12.132812 Z M 11.917969 15.667969 C 12.285156 15.296875 12.882812 15.296875 13.25 15.667969 L 14.25 16.667969 L 15.25 15.667969 C 15.617188 15.296875 16.214844 15.296875 16.582031 15.667969 C 16.953125 16.035156 16.953125 16.632812 16.582031 17 L 15.582031 18 L 16.582031 19 C 16.953125 19.367188 16.953125 19.964844 16.582031 20.332031 C 16.214844 20.703125 15.617188 20.703125 15.25 20.332031 L 14.25 19.332031 L 13.25 20.332031 C 12.882812 20.703125 12.285156 20.703125 11.917969 20.332031 C 11.546875 19.964844 11.546875 19.367188 11.917969 19 L 12.917969 18 L 11.917969 17 C 11.546875 16.632812 11.546875 16.035156 11.917969 15.667969 Z M 24.75 15.667969 C 24.382812 15.296875 23.785156 15.296875 23.414062 15.667969 C 23.046875 16.035156 23.046875 16.632812 23.414062 17 L 24.414062 18 L 23.414062 19 C 23.046875 19.367188 23.046875 19.964844 23.414062 20.332031 C 23.785156 20.703125 24.378906 20.703125 24.75 20.332031 L 25.75 19.332031 L 26.75 20.332031 C 27.117188 20.703125 27.714844 20.703125 28.082031 20.332031 C 28.449219 19.964844 28.449219 19.367188 28.082031 19 L 27.082031 18 L 28.082031 17 C 28.449219 16.632812 28.449219 16.035156 28.082031 15.667969 C 27.714844 15.296875 27.117188 15.296875 26.75 15.667969 L 25.75 16.667969 Z M 14.40625 27.914062 L 14.402344 27.914062 C 13.898438 28.136719 13.308594 27.910156 13.085938 27.40625 C 12.863281 26.902344 13.089844 26.308594 13.59375 26.085938 L 14 27 C 13.59375 26.085938 13.59375 26.085938 13.59375 26.085938 L 13.597656 26.085938 L 13.601562 26.082031 L 13.609375 26.078125 L 13.621094 26.074219 L 13.636719 26.066406 C 13.660156 26.058594 13.695312 26.042969 13.734375 26.027344 C 13.816406 25.996094 13.933594 25.949219 14.082031 25.898438 C 14.378906 25.796875 14.808594 25.660156 15.359375 25.527344 C 16.457031 25.261719 18.035156 25 20 25 C 21.964844 25 23.542969 25.261719 24.640625 25.527344 C 25.191406 25.660156 25.621094 25.796875 25.917969 25.898438 C 25.96875 25.917969 26.015625 25.933594 26.058594 25.949219 C 26.144531 25.980469 26.210938 26.007812 26.265625 26.027344 C 26.285156 26.035156 26.304688 26.042969 26.320312 26.050781 C 26.335938 26.054688 26.351562 26.0625 26.363281 26.066406 L 26.382812 26.078125 L 26.390625 26.078125 L 26.398438 26.082031 L 26.402344 26.085938 L 26.40625 26.085938 C 26.40625 26.085938 26.40625 26.085938 26.402344 26.089844 L 26.398438 26.105469 L 26.40625 26.085938 C 26.910156 26.308594 27.136719 26.902344 26.914062 27.40625 C 26.691406 27.910156 26.101562 28.136719 25.597656 27.914062 L 20.449219 27.914062 L 25.59375 27.914062 L 25.585938 27.910156 C 25.574219 27.90625 25.554688 27.898438 25.527344 27.886719 C 25.472656 27.863281 25.382812 27.832031 25.261719 27.789062 C 25.019531 27.703125 24.652344 27.589844 24.171875 27.472656 C 23.207031 27.238281 21.785156 27 20 27 C 18.214844 27 16.792969 27.238281 15.828125 27.472656 C 15.347656 27.589844 14.980469 27.703125 14.738281 27.789062 C 14.617188 27.832031 14.527344 27.863281 14.472656 27.886719 C 14.445312 27.898438 14.425781 27.90625 14.414062 27.910156 L 14.40625 27.914062 L 20.449219 27.914062 Z M 14.40625 27.914062',
|
|
3
3
|
triangleImage: 'M 38 12 L 32.5 12 L 32.5 6.5 Z M 38 12',
|
|
4
|
+
mobileImage: 'M19 0H1.33333C0.596954 0 0 0.596944 0 1.33333V16.6667C0 17.4031 0.596954 18 1.33333 18H22.6667C23.403 18 24 17.4031 24 16.6667V4.99995H20.2444C19.5571 4.99995 19 4.44279 19 3.7555V0ZM6.61123 6.11112C6.85668 5.86566 7.25465 5.86566 7.5001 6.11112L8.1667 6.77773L8.83331 6.1111C9.07878 5.86564 9.47675 5.86564 9.7222 6.1111C9.96766 6.35657 9.96766 6.75454 9.7222 7L9.05558 7.66661L9.72231 8.33333C9.96777 8.57878 9.96777 8.97675 9.72231 9.22221C9.47686 9.46767 9.07889 9.46767 8.83344 9.22221L8.16671 8.55548L7.49999 9.22221C7.25454 9.46765 6.85657 9.46765 6.6111 9.22221C6.36565 8.97675 6.36565 8.57878 6.6111 8.33331L7.27782 7.66659L6.61123 7C6.36576 6.75454 6.36576 6.35657 6.61123 6.11112ZM15.1661 6.11112C14.9207 5.86566 14.5227 5.86566 14.2772 6.11112C14.0318 6.35659 14.0318 6.75456 14.2772 7L14.9438 7.66661L14.2771 8.33333C14.0317 8.57878 14.0317 8.97675 14.2771 9.22221C14.5226 9.46767 14.9206 9.46767 15.166 9.22221L15.8327 8.55548L16.4995 9.22221C16.7449 9.46767 17.1429 9.46767 17.3883 9.22221C17.6338 8.97677 17.6338 8.5788 17.3883 8.33333L16.7216 7.66661L17.3882 7C17.6337 6.75454 17.6337 6.35657 17.3882 6.11112C17.1428 5.86566 16.7448 5.86566 16.4993 6.11112L15.8327 6.77773L15.1661 6.11112ZM8.26956 14.2764L8.26919 14.2766C7.93322 14.4248 7.54007 14.2733 7.39079 13.9374C7.24125 13.601 7.39278 13.207 7.72924 13.0575L8 13.6667C7.72924 13.0575 7.72962 13.0573 7.72962 13.0573L7.73005 13.0571L7.73099 13.0567L7.7333 13.0557L7.73957 13.0529L7.74749 13.0495L7.75875 13.0448C7.77446 13.0381 7.796 13.0293 7.82326 13.0184C7.87777 12.9968 7.95515 12.9674 8.05442 12.9328C8.25294 12.8638 8.53925 12.7742 8.90544 12.6854C9.63773 12.5079 10.6907 12.3333 12 12.3333C13.3093 12.3333 14.3623 12.5079 15.0946 12.6854C15.4608 12.7742 15.7471 12.8638 15.9456 12.9328C15.9796 12.9447 16.011 12.9559 16.0398 12.9664C16.0952 12.9866 16.1409 13.0042 16.1767 13.0184C16.1901 13.0238 16.2022 13.0286 16.2128 13.033C16.2238 13.0375 16.2333 13.0414 16.2413 13.0448L16.2559 13.051L16.2604 13.0529L16.2667 13.0557L16.269 13.0567L16.27 13.0571L16.2704 13.0573C16.2704 13.0573 16.2704 13.0573 16.2692 13.0602L16.2646 13.0707L16.2708 13.0575C16.6072 13.207 16.7587 13.601 16.6092 13.9374C16.4599 14.2733 16.0671 14.4249 15.731 14.2767L15.7304 14.2764L12.2987 14.2764L15.73 14.2762L15.7238 14.2736C15.7163 14.2704 15.7032 14.265 15.6846 14.2576C15.6473 14.2428 15.588 14.2201 15.5075 14.1922C15.3467 14.1362 15.1017 14.0591 14.7804 13.9812C14.1377 13.8254 13.1907 13.6667 12 13.6667C10.8093 13.6667 9.86227 13.8254 9.21956 13.9812C8.89825 14.0591 8.65331 14.1362 8.49245 14.1922C8.41204 14.2201 8.3527 14.2428 8.31541 14.2576C8.29677 14.265 8.28365 14.2704 8.27616 14.2736L8.27041 14.276L12.2987 14.2764L8.26956 14.2764Z',
|
|
5
|
+
mobileTriangle: 'M23.9999 3.66661H20.3333V0L23.9999 3.66661Z',
|
|
4
6
|
};
|
|
5
7
|
|
|
6
8
|
export { NoImagePaths };
|
|
@@ -7,19 +7,21 @@ import { useFocus } from '@alfalab/hooks';
|
|
|
7
7
|
import { ChevronBackHeavyMIcon } from '@alfalab/icons-glyph/ChevronBackHeavyMIcon';
|
|
8
8
|
import { ChevronForwardHeavyMIcon } from '@alfalab/icons-glyph/ChevronForwardHeavyMIcon';
|
|
9
9
|
import { GalleryContext } from '../../context.js';
|
|
10
|
-
import { getImageAlt, getImageKey } from '../../utils/utils.js';
|
|
10
|
+
import { isVideo, getImageAlt, getImageKey } from '../../utils/utils.js';
|
|
11
11
|
import { TestIds } from '../../utils/constants.js';
|
|
12
|
-
import { s as styles, S as Slide } from '../../slide-
|
|
12
|
+
import { s as styles, S as Slide } from '../../slide-df1baab8.js';
|
|
13
13
|
import 'swiper/swiper.min.css';
|
|
14
14
|
|
|
15
15
|
SwiperCore.use([EffectFade, A11y, Controller]);
|
|
16
16
|
const ImageViewer = () => {
|
|
17
|
-
const { singleSlide, images, imagesMeta, fullScreen, currentSlideIndex, initialSlide, onClose,
|
|
17
|
+
const { singleSlide, images, imagesMeta, fullScreen, currentSlideIndex, initialSlide, onClose, setImageMeta, setCurrentSlideIndex, getSwiper, setSwiper, slidePrev, slideNext, getCurrentImage, view, } = useContext(GalleryContext);
|
|
18
|
+
const isMobile = view === 'mobile';
|
|
18
19
|
const leftArrowRef = useRef(null);
|
|
19
20
|
const rightArrowRef = useRef(null);
|
|
20
21
|
const [leftArrowFocused] = useFocus(leftArrowRef, 'keyboard');
|
|
21
22
|
const [rightArrowFocused] = useFocus(rightArrowRef, 'keyboard');
|
|
22
23
|
const swiper = getSwiper();
|
|
24
|
+
const currentImage = getCurrentImage();
|
|
23
25
|
const handleSlideChange = useCallback(() => {
|
|
24
26
|
setCurrentSlideIndex?.(swiper?.activeIndex ?? initialSlide);
|
|
25
27
|
}, [setCurrentSlideIndex, swiper, initialSlide]);
|
|
@@ -53,10 +55,10 @@ const ImageViewer = () => {
|
|
|
53
55
|
rightArrowRef.current?.contains(eventTarget);
|
|
54
56
|
const isPlaceholder = Boolean(eventTarget.closest(`.${styles.placeholder}`));
|
|
55
57
|
const isImg = eventTarget.tagName === 'IMG';
|
|
56
|
-
if (!isImg && !isPlaceholder && !isArrow) {
|
|
58
|
+
if (!isImg && !isPlaceholder && !isArrow && !isMobile) {
|
|
57
59
|
onClose();
|
|
58
60
|
}
|
|
59
|
-
}, [onClose]);
|
|
61
|
+
}, [isMobile, onClose]);
|
|
60
62
|
useEffect(() => {
|
|
61
63
|
elementClosest(window);
|
|
62
64
|
}, []);
|
|
@@ -66,29 +68,47 @@ const ImageViewer = () => {
|
|
|
66
68
|
fadeEffect: {
|
|
67
69
|
crossFade: true,
|
|
68
70
|
},
|
|
69
|
-
className: cn(styles.swiper, {
|
|
71
|
+
className: cn(styles.swiper, {
|
|
72
|
+
[styles.hidden]: fullScreen && !isVideo(currentImage?.src),
|
|
73
|
+
[styles.fullScreenVideo]: fullScreen && !singleSlide && isVideo(currentImage?.src),
|
|
74
|
+
[styles.mobile]: isMobile,
|
|
75
|
+
[styles.mobileVideo]: isMobile && isVideo(currentImage?.src),
|
|
76
|
+
}),
|
|
70
77
|
controller: { control: swiper },
|
|
71
78
|
a11y: {
|
|
72
79
|
slideRole: 'img',
|
|
73
80
|
},
|
|
74
81
|
initialSlide,
|
|
75
82
|
simulateTouch: false,
|
|
83
|
+
zoom: { maxRatio: 4 },
|
|
76
84
|
onSwiper: setSwiper,
|
|
77
85
|
onSlideChange: handleSlideChange,
|
|
78
|
-
}), [
|
|
79
|
-
|
|
86
|
+
}), [
|
|
87
|
+
fullScreen,
|
|
88
|
+
currentImage?.src,
|
|
89
|
+
singleSlide,
|
|
90
|
+
isMobile,
|
|
91
|
+
swiper,
|
|
92
|
+
initialSlide,
|
|
93
|
+
setSwiper,
|
|
94
|
+
handleSlideChange,
|
|
95
|
+
]);
|
|
96
|
+
const showControls = !singleSlide && !fullScreen && !isMobile && !!images.length;
|
|
80
97
|
const swiperWidth = swiper?.width || 1;
|
|
81
98
|
const swiperHeight = swiper?.height || swiper?.width || 1;
|
|
82
99
|
const swiperAspectRatio = swiperWidth / swiperHeight;
|
|
83
|
-
const currentImage = getCurrentImage();
|
|
84
100
|
return (
|
|
85
101
|
/* eslint-disable-next-line jsx-a11y/click-events-have-key-events, jsx-a11y/no-static-element-interactions */
|
|
86
|
-
React.createElement("div", { className: cn(styles.component, {
|
|
102
|
+
React.createElement("div", { className: cn(styles.component, {
|
|
103
|
+
[styles.singleSlide]: singleSlide,
|
|
104
|
+
[styles.mobile]: isMobile,
|
|
105
|
+
[styles.mobileVideo]: isMobile && isVideo(currentImage?.src),
|
|
106
|
+
}), onClick: handleWrapperClick },
|
|
87
107
|
showControls && (React.createElement("div", { className: cn(styles.arrow, {
|
|
88
108
|
[styles.focused]: leftArrowFocused,
|
|
89
109
|
}), onClick: handlePrevClick, role: 'button', onKeyDown: handleArrowLeftKeyDown, tabIndex: 0, ref: leftArrowRef, "aria-label": '\u041F\u0440\u0435\u0434\u044B\u0434\u0443\u0449\u0435\u0435 \u0438\u0437\u043E\u0431\u0440\u0430\u0436\u0435\u043D\u0438\u0435', "data-test-id": TestIds.PREV_SLIDE_BUTTON },
|
|
90
110
|
React.createElement(ChevronBackHeavyMIcon, null))),
|
|
91
|
-
fullScreen && (React.createElement("img", { src: currentImage?.src, alt: currentImage ? getImageAlt(currentImage, currentSlideIndex) : '', className: styles.fullScreenImage })),
|
|
111
|
+
fullScreen && !isVideo(currentImage?.src) && (React.createElement("img", { src: currentImage?.src, alt: currentImage ? getImageAlt(currentImage, currentSlideIndex) : '', className: styles.fullScreenImage })),
|
|
92
112
|
React.createElement(Swiper, { ...swiperProps }, images.map((image, index) => {
|
|
93
113
|
const meta = imagesMeta[index];
|
|
94
114
|
const imageWidth = meta?.width || 1;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/* hash:
|
|
1
|
+
/* hash: 1flu9 */
|
|
2
2
|
:root { /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */
|
|
3
3
|
} /* deprecated */ :root {
|
|
4
4
|
--color-light-base-bg-primary: #fff;
|
|
@@ -22,6 +22,7 @@
|
|
|
22
22
|
--border-radius-m: 8px; /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */
|
|
23
23
|
|
|
24
24
|
/* новые значения, используйте их */
|
|
25
|
+
--border-radius-0: 0;
|
|
25
26
|
--border-radius-8: var(--border-radius-m);
|
|
26
27
|
} :root { /* deprecated */
|
|
27
28
|
--gap-2xs: 4px; /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */
|
|
@@ -34,13 +35,12 @@
|
|
|
34
35
|
} :root {
|
|
35
36
|
} :root {
|
|
36
37
|
--focus-color: var(--color-light-status-info);
|
|
37
|
-
} /* сбрасывает синюю подсветку при нажатии */ .
|
|
38
|
+
} /* сбрасывает синюю подсветку при нажатии */ .gallery__component_1tvza {
|
|
38
39
|
display: flex;
|
|
39
40
|
flex-grow: 1;
|
|
40
41
|
justify-content: center;
|
|
41
|
-
align-items: center;
|
|
42
42
|
background-color: var(--color-static-neutral-0-inverted);
|
|
43
|
-
} .
|
|
43
|
+
} .gallery__swiper_1tvza {
|
|
44
44
|
display: flex;
|
|
45
45
|
width: 100%;
|
|
46
46
|
height: 100%;
|
|
@@ -48,43 +48,52 @@
|
|
|
48
48
|
/* 168px - высота хэдера и футера */
|
|
49
49
|
max-height: calc(100vh - 168px);
|
|
50
50
|
padding: var(--gap-32) var(--gap-16);
|
|
51
|
-
box-sizing: border-box
|
|
52
|
-
} .
|
|
51
|
+
box-sizing: border-box
|
|
52
|
+
} .gallery__swiper_1tvza.gallery__mobile_1tvza {
|
|
53
|
+
max-height: calc(100vh - 210px);
|
|
54
|
+
} .gallery__swiper_1tvza.gallery__mobileVideo_1tvza {
|
|
55
|
+
max-height: 100vh;
|
|
56
|
+
} .gallery__singleSlide_1tvza .gallery__swiper_1tvza {
|
|
53
57
|
max-height: calc(100vh - 80px);
|
|
54
|
-
padding: var(--gap-32)
|
|
55
|
-
} .
|
|
58
|
+
padding: var(--gap-32)
|
|
59
|
+
} .gallery__singleSlide_1tvza .gallery__swiper_1tvza.gallery__mobile_1tvza {
|
|
60
|
+
max-height: calc(100vh - 174px);
|
|
61
|
+
padding: 0;
|
|
62
|
+
} .gallery__singleSlide_1tvza .gallery__swiper_1tvza.gallery__mobileVideo_1tvza {
|
|
63
|
+
max-height: 100vh;
|
|
64
|
+
} .gallery__hidden_1tvza {
|
|
56
65
|
display: none;
|
|
57
|
-
} .
|
|
66
|
+
} .gallery__slide_1tvza {
|
|
58
67
|
position: relative;
|
|
59
68
|
display: flex;
|
|
60
69
|
justify-content: center;
|
|
61
70
|
align-items: center;
|
|
62
71
|
width: 100%;
|
|
63
72
|
height: 100%;
|
|
64
|
-
} .
|
|
73
|
+
} .gallery__slideLoading_1tvza {
|
|
65
74
|
background-color: var(--color-static-neutral-100-inverted);
|
|
66
75
|
border-radius: var(--border-radius-8);
|
|
67
|
-
} .
|
|
76
|
+
} .gallery__image_1tvza {
|
|
68
77
|
width: 0;
|
|
69
78
|
height: 0;
|
|
70
79
|
-webkit-user-select: none;
|
|
71
80
|
user-select: none;
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
81
|
+
border-radius: var(--border-radius-8)
|
|
82
|
+
} .gallery__image_1tvza.gallery__mobile_1tvza {
|
|
83
|
+
border-radius: var(--border-radius-0);
|
|
84
|
+
} .gallery__smallImage_1tvza {
|
|
75
85
|
position: relative;
|
|
76
86
|
width: auto;
|
|
77
87
|
height: auto;
|
|
78
88
|
-webkit-user-select: none;
|
|
79
89
|
user-select: none;
|
|
80
|
-
|
|
81
|
-
} .gallery__verticalImageFit_i28al {
|
|
90
|
+
} .gallery__verticalImageFit_1tvza {
|
|
82
91
|
width: auto;
|
|
83
92
|
height: 100%;
|
|
84
|
-
} .
|
|
93
|
+
} .gallery__horizontalImageFit_1tvza {
|
|
85
94
|
width: 100%;
|
|
86
95
|
height: auto;
|
|
87
|
-
} .
|
|
96
|
+
} .gallery__arrow_1tvza {
|
|
88
97
|
display: flex;
|
|
89
98
|
flex-direction: column;
|
|
90
99
|
justify-content: center;
|
|
@@ -96,14 +105,14 @@
|
|
|
96
105
|
color: var(--color-static-neutral-translucent-1300-inverted);
|
|
97
106
|
transition: background-color 0.15s ease-in-out;
|
|
98
107
|
outline: none
|
|
99
|
-
} .
|
|
108
|
+
} .gallery__arrow_1tvza:hover {
|
|
100
109
|
background-color: var(--color-static-neutral-0-inverted-hover);
|
|
101
|
-
} .
|
|
110
|
+
} .gallery__arrow_1tvza:active {
|
|
102
111
|
background-color: var(--color-static-neutral-0-inverted-press);
|
|
103
|
-
} .
|
|
112
|
+
} .gallery__focused_1tvza {
|
|
104
113
|
outline: 2px solid var(--focus-color);
|
|
105
114
|
outline-offset: 2px;
|
|
106
|
-
} .
|
|
115
|
+
} .gallery__placeholder_1tvza {
|
|
107
116
|
display: flex;
|
|
108
117
|
justify-content: center;
|
|
109
118
|
align-items: center;
|
|
@@ -111,19 +120,22 @@
|
|
|
111
120
|
height: 300px;
|
|
112
121
|
border-radius: var(--border-radius-8);
|
|
113
122
|
background-color: var(--color-static-neutral-300-inverted);
|
|
114
|
-
} .
|
|
123
|
+
} .gallery__brokenImgWrapper_1tvza {
|
|
115
124
|
position: relative;
|
|
116
125
|
display: flex;
|
|
117
126
|
flex-direction: column;
|
|
118
127
|
align-items: center;
|
|
119
128
|
width: 150px;
|
|
120
129
|
text-align: center;
|
|
121
|
-
} .
|
|
130
|
+
} .gallery__brokenImgIcon_1tvza {
|
|
122
131
|
width: 80px;
|
|
123
132
|
height: 80px;
|
|
124
133
|
margin-bottom: var(--gap-2xs);
|
|
125
|
-
} .
|
|
134
|
+
} .gallery__fullScreenImage_1tvza {
|
|
126
135
|
width: 100%;
|
|
127
136
|
height: auto;
|
|
128
137
|
background-color: var(--color-light-base-bg-primary);
|
|
138
|
+
} .gallery__fullScreenVideo_1tvza {
|
|
139
|
+
width: calc(100% - 192px);
|
|
140
|
+
max-height: calc(100vh - 82px);
|
|
129
141
|
}
|
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
import 'react';
|
|
2
2
|
import 'classnames';
|
|
3
3
|
import '@alfalab/core-components-typography/modern';
|
|
4
|
+
import '../../context.js';
|
|
4
5
|
import '../../utils/utils.js';
|
|
5
6
|
import '../../utils/constants.js';
|
|
6
7
|
import './paths.js';
|
|
7
|
-
|
|
8
|
+
import './video/index.js';
|
|
9
|
+
export { S as Slide } from '../../slide-df1baab8.js';
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
/* hash: 12f24 */
|
|
2
|
+
:root { /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */
|
|
3
|
+
} /* deprecated */ :root {
|
|
4
|
+
--color-static-neutral-0: #fff;
|
|
5
|
+
--color-static-neutral-translucent-700: rgba(4, 4, 21, 0.47); /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */
|
|
6
|
+
} :root { /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */
|
|
7
|
+
} :root { /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */
|
|
8
|
+
} :root {
|
|
9
|
+
|
|
10
|
+
/* Hard */
|
|
11
|
+
|
|
12
|
+
/* Up */
|
|
13
|
+
|
|
14
|
+
/* Hard up */
|
|
15
|
+
} :root { /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */
|
|
16
|
+
--border-radius-3xl: 24px; /* deprecated */
|
|
17
|
+
|
|
18
|
+
/* новые значения, используйте их */
|
|
19
|
+
--border-radius-24: var(--border-radius-3xl);
|
|
20
|
+
} :root { /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */
|
|
21
|
+
|
|
22
|
+
/* новые значения, используйте их */
|
|
23
|
+
} :root {
|
|
24
|
+
} :root {
|
|
25
|
+
} /* сбрасывает синюю подсветку при нажатии */ .gallery__videoWrapper_9vwu9 {
|
|
26
|
+
display: flex;
|
|
27
|
+
justify-content: center;
|
|
28
|
+
height: 100%;
|
|
29
|
+
width: 100%;
|
|
30
|
+
position: relative;
|
|
31
|
+
} .gallery__video_9vwu9 {
|
|
32
|
+
max-width: 100%;
|
|
33
|
+
max-height: 100%;
|
|
34
|
+
border-radius: var(--border-radius-24);
|
|
35
|
+
} .gallery__mobile_9vwu9 {
|
|
36
|
+
border-radius: 0;
|
|
37
|
+
} .gallery__videoButton_9vwu9 {
|
|
38
|
+
position: absolute;
|
|
39
|
+
top: 50%;
|
|
40
|
+
left: 50%;
|
|
41
|
+
transform: translate(-50%, -50%);
|
|
42
|
+
z-index: 1;
|
|
43
|
+
color: green;
|
|
44
|
+
} .gallery__icon_9vwu9 {
|
|
45
|
+
color: var(--color-static-neutral-0);
|
|
46
|
+
} .gallery__iconShape_9vwu9 {
|
|
47
|
+
fill: var(--color-static-neutral-translucent-700);
|
|
48
|
+
}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
import React from 'react';
|
|
3
|
+
type Props = {
|
|
4
|
+
url: string;
|
|
5
|
+
index: number;
|
|
6
|
+
isActive: boolean;
|
|
7
|
+
className?: string;
|
|
8
|
+
};
|
|
9
|
+
declare const Video: ({ url, index, className, isActive }: Props) => React.JSX.Element;
|
|
10
|
+
export { Video };
|
|
@@ -0,0 +1,117 @@
|
|
|
1
|
+
import React, { useRef, useContext, useEffect } from 'react';
|
|
2
|
+
import cn from 'classnames';
|
|
3
|
+
import Hls from 'hls.js';
|
|
4
|
+
import { Circle } from '@alfalab/core-components/icon-view/circle';
|
|
5
|
+
import PlayCompactMIcon from '@alfalab/icons-glyph/PlayCompactMIcon';
|
|
6
|
+
import { GalleryContext } from '../../../context.js';
|
|
7
|
+
import { GALLERY_EVENTS } from '../../../utils/constants.js';
|
|
8
|
+
|
|
9
|
+
const styles = {"videoWrapper":"gallery__videoWrapper_9vwu9","video":"gallery__video_9vwu9","mobile":"gallery__mobile_9vwu9","videoButton":"gallery__videoButton_9vwu9","icon":"gallery__icon_9vwu9","iconShape":"gallery__iconShape_9vwu9"};
|
|
10
|
+
require('./index.css')
|
|
11
|
+
|
|
12
|
+
const Video = ({ url, index, className, isActive }) => {
|
|
13
|
+
const playerRef = useRef(null);
|
|
14
|
+
const timer = useRef();
|
|
15
|
+
const { setImageMeta, mutedVideo, view, playingVideo, setPlayingVideo, setHideNavigation } = useContext(GalleryContext);
|
|
16
|
+
const isMobile = view === 'mobile';
|
|
17
|
+
useEffect(() => {
|
|
18
|
+
setImageMeta({ player: playerRef }, index);
|
|
19
|
+
/* eslint-disable-next-line react-hooks/exhaustive-deps */
|
|
20
|
+
}, [index]);
|
|
21
|
+
useEffect(() => {
|
|
22
|
+
const hls = new Hls();
|
|
23
|
+
if (Hls.isSupported()) {
|
|
24
|
+
hls.on(Hls.Events.ERROR, (_, data) => {
|
|
25
|
+
if (data.fatal) {
|
|
26
|
+
switch (data.type) {
|
|
27
|
+
case Hls.ErrorTypes.MEDIA_ERROR:
|
|
28
|
+
hls.recoverMediaError();
|
|
29
|
+
break;
|
|
30
|
+
case Hls.ErrorTypes.NETWORK_ERROR:
|
|
31
|
+
setImageMeta({ player: { current: null }, broken: true }, index);
|
|
32
|
+
break;
|
|
33
|
+
default:
|
|
34
|
+
hls.destroy();
|
|
35
|
+
break;
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
});
|
|
39
|
+
hls.loadSource(url);
|
|
40
|
+
if (playerRef.current) {
|
|
41
|
+
hls.attachMedia(playerRef.current);
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
return () => {
|
|
45
|
+
if (hls) {
|
|
46
|
+
hls.destroy();
|
|
47
|
+
}
|
|
48
|
+
if (timer.current) {
|
|
49
|
+
clearTimeout(timer.current);
|
|
50
|
+
}
|
|
51
|
+
};
|
|
52
|
+
/* eslint-disable-next-line react-hooks/exhaustive-deps */
|
|
53
|
+
}, [url, index]);
|
|
54
|
+
const handleWrapperClick = (e) => {
|
|
55
|
+
e.stopPropagation();
|
|
56
|
+
if (isMobile) {
|
|
57
|
+
setHideNavigation(false);
|
|
58
|
+
if (playingVideo) {
|
|
59
|
+
if (timer.current) {
|
|
60
|
+
clearTimeout(timer.current);
|
|
61
|
+
}
|
|
62
|
+
timer.current = setTimeout(() => {
|
|
63
|
+
setHideNavigation(true);
|
|
64
|
+
}, 3000);
|
|
65
|
+
}
|
|
66
|
+
return;
|
|
67
|
+
}
|
|
68
|
+
setPlayingVideo(!playingVideo);
|
|
69
|
+
};
|
|
70
|
+
useEffect(() => {
|
|
71
|
+
if (playerRef.current && isActive) {
|
|
72
|
+
if (playingVideo) {
|
|
73
|
+
playerRef.current.play();
|
|
74
|
+
}
|
|
75
|
+
else {
|
|
76
|
+
playerRef.current.pause();
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
if (playerRef.current && !isActive) {
|
|
80
|
+
playerRef.current.pause();
|
|
81
|
+
playerRef.current.currentTime = 0;
|
|
82
|
+
}
|
|
83
|
+
}, [isActive, playingVideo]);
|
|
84
|
+
const onPlay = (e) => {
|
|
85
|
+
const customEvent = new CustomEvent(GALLERY_EVENTS.ON_PLAY, {
|
|
86
|
+
detail: { player: e.target },
|
|
87
|
+
});
|
|
88
|
+
dispatchEvent(customEvent);
|
|
89
|
+
if (timer.current) {
|
|
90
|
+
clearTimeout(timer.current);
|
|
91
|
+
}
|
|
92
|
+
timer.current = setTimeout(() => {
|
|
93
|
+
setHideNavigation(true);
|
|
94
|
+
}, 3000);
|
|
95
|
+
};
|
|
96
|
+
const onPause = (e) => {
|
|
97
|
+
const customEvent = new CustomEvent(GALLERY_EVENTS.ON_PAUSE, {
|
|
98
|
+
detail: { player: e.target },
|
|
99
|
+
});
|
|
100
|
+
dispatchEvent(customEvent);
|
|
101
|
+
if (timer.current) {
|
|
102
|
+
clearTimeout(timer.current);
|
|
103
|
+
timer.current = undefined;
|
|
104
|
+
}
|
|
105
|
+
setHideNavigation(false);
|
|
106
|
+
};
|
|
107
|
+
return (
|
|
108
|
+
// eslint-disable-next-line jsx-a11y/click-events-have-key-events,jsx-a11y/no-static-element-interactions
|
|
109
|
+
React.createElement("div", { onClick: handleWrapperClick, className: styles.videoWrapper },
|
|
110
|
+
React.createElement("video", { onPlay: onPlay, onPause: onPause, ref: playerRef, playsInline: true, muted: mutedVideo, loop: true, src: Hls.isSupported() ? undefined : url, className: cn(styles.video, { [styles.mobile]: view === 'mobile' }, className) },
|
|
111
|
+
React.createElement("track", { kind: 'captions' })),
|
|
112
|
+
view === 'desktop' && !playingVideo && (React.createElement("div", { className: styles.videoButton },
|
|
113
|
+
React.createElement(Circle, { size: 64, shapeClassName: styles.iconShape },
|
|
114
|
+
React.createElement(PlayCompactMIcon, { className: styles.icon }))))));
|
|
115
|
+
};
|
|
116
|
+
|
|
117
|
+
export { Video };
|