@megafon/ui-shared 6.2.0 → 6.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (48) hide show
  1. package/CHANGELOG.md +28 -0
  2. package/dist/es/components/Card/Card.css +1 -1
  3. package/dist/es/components/Container/Container.css +898 -7
  4. package/dist/es/components/InfoCards/InfoCards.css +75 -0
  5. package/dist/es/components/InfoCards/InfoCards.d.ts +21 -0
  6. package/dist/es/components/InfoCards/InfoCards.js +66 -0
  7. package/dist/es/components/InfoCards/components/InfoCard/InfoCard.css +237 -0
  8. package/dist/es/components/InfoCards/components/InfoCard/InfoCard.d.ts +15 -0
  9. package/dist/es/components/InfoCards/components/InfoCard/InfoCard.js +108 -0
  10. package/dist/es/components/InfoCards/types.d.ts +26 -0
  11. package/dist/es/components/InfoCards/types.js +0 -0
  12. package/dist/es/components/SidePictureCards/SidePictureCards.d.ts +22 -0
  13. package/dist/es/components/SidePictureCards/SidePictureCards.js +77 -0
  14. package/dist/es/components/SidePictureCards/components/SidePictureCard.css +183 -0
  15. package/dist/es/components/SidePictureCards/components/SidePictureCard.d.ts +16 -0
  16. package/dist/es/components/SidePictureCards/components/SidePictureCard.js +91 -0
  17. package/dist/es/components/SidePictureCards/types.d.ts +46 -0
  18. package/dist/es/components/SidePictureCards/types.js +0 -0
  19. package/dist/es/components/TextWithIcon/TextWithIconItem.css +16 -7
  20. package/dist/es/components/TextWithIcon/TextWithIconItem.d.ts +2 -0
  21. package/dist/es/components/TextWithIcon/TextWithIconItem.js +6 -1
  22. package/dist/es/helpers/getColumnConfig.d.ts +1 -1
  23. package/dist/es/index.d.ts +4 -0
  24. package/dist/es/index.js +4 -0
  25. package/dist/lib/components/Card/Card.css +1 -1
  26. package/dist/lib/components/Container/Container.css +898 -7
  27. package/dist/lib/components/InfoCards/InfoCards.css +75 -0
  28. package/dist/lib/components/InfoCards/InfoCards.d.ts +21 -0
  29. package/dist/lib/components/InfoCards/InfoCards.js +88 -0
  30. package/dist/lib/components/InfoCards/components/InfoCard/InfoCard.css +237 -0
  31. package/dist/lib/components/InfoCards/components/InfoCard/InfoCard.d.ts +15 -0
  32. package/dist/lib/components/InfoCards/components/InfoCard/InfoCard.js +129 -0
  33. package/dist/lib/components/InfoCards/types.d.ts +26 -0
  34. package/dist/lib/components/InfoCards/types.js +1 -0
  35. package/dist/lib/components/SidePictureCards/SidePictureCards.d.ts +22 -0
  36. package/dist/lib/components/SidePictureCards/SidePictureCards.js +95 -0
  37. package/dist/lib/components/SidePictureCards/components/SidePictureCard.css +183 -0
  38. package/dist/lib/components/SidePictureCards/components/SidePictureCard.d.ts +16 -0
  39. package/dist/lib/components/SidePictureCards/components/SidePictureCard.js +108 -0
  40. package/dist/lib/components/SidePictureCards/types.d.ts +46 -0
  41. package/dist/lib/components/SidePictureCards/types.js +1 -0
  42. package/dist/lib/components/TextWithIcon/TextWithIconItem.css +16 -7
  43. package/dist/lib/components/TextWithIcon/TextWithIconItem.d.ts +2 -0
  44. package/dist/lib/components/TextWithIcon/TextWithIconItem.js +6 -1
  45. package/dist/lib/helpers/getColumnConfig.d.ts +1 -1
  46. package/dist/lib/index.d.ts +4 -0
  47. package/dist/lib/index.js +32 -0
  48. package/package.json +3 -3
@@ -0,0 +1,183 @@
1
+ h1,
2
+ h2,
3
+ h3,
4
+ h4,
5
+ h5 {
6
+ margin: 0;
7
+ }
8
+ .mfui-side-picture-card {
9
+ display: grid;
10
+ grid-template-rows: 1fr auto;
11
+ grid-template-columns: auto;
12
+ gap: 20px;
13
+ min-height: 100%;
14
+ padding: 12px;
15
+ border-radius: 24px;
16
+ color: var(--content);
17
+ text-decoration: none;
18
+ background-color: var(--base);
19
+ -webkit-transition: background-color, -webkit-box-shadow;
20
+ transition: background-color, -webkit-box-shadow;
21
+ transition: background-color, box-shadow;
22
+ transition: background-color, box-shadow, -webkit-box-shadow;
23
+ -webkit-transition-duration: 0.3s;
24
+ transition-duration: 0.3s;
25
+ }
26
+ @media screen and (min-width: 1280px) {
27
+ .mfui-side-picture-card {
28
+ grid-template-rows: none;
29
+ grid-template-columns: 1fr 1fr;
30
+ }
31
+ }
32
+ .mfui-side-picture-card:hover {
33
+ text-decoration: none;
34
+ }
35
+ .mfui-side-picture-card__content {
36
+ display: -webkit-box;
37
+ display: -ms-flexbox;
38
+ display: flex;
39
+ -webkit-box-orient: vertical;
40
+ -webkit-box-direction: normal;
41
+ -ms-flex-direction: column;
42
+ flex-direction: column;
43
+ padding: 12px;
44
+ overflow: hidden;
45
+ }
46
+ @media screen and (min-width: 1280px) {
47
+ .mfui-side-picture-card__content {
48
+ padding: 12px 0 12px 12px;
49
+ }
50
+ }
51
+ .mfui-side-picture-card__title {
52
+ /* stylelint-disable-next-line value-no-vendor-prefix */
53
+ display: -webkit-box;
54
+ overflow: hidden;
55
+ white-space: normal;
56
+ text-overflow: ellipsis;
57
+ -webkit-box-orient: vertical;
58
+ -webkit-line-clamp: 2;
59
+ margin-bottom: 16px;
60
+ }
61
+ @media screen and (min-width: 1280px) {
62
+ .mfui-side-picture-card__title {
63
+ margin-bottom: 24px;
64
+ }
65
+ }
66
+ .mfui-side-picture-card__items {
67
+ display: -webkit-box;
68
+ display: -ms-flexbox;
69
+ display: flex;
70
+ -webkit-box-orient: vertical;
71
+ -webkit-box-direction: normal;
72
+ -ms-flex-direction: column;
73
+ flex-direction: column;
74
+ gap: 12px;
75
+ margin-bottom: auto;
76
+ }
77
+ @media screen and (min-width: 1280px) {
78
+ .mfui-side-picture-card__items {
79
+ gap: 16px;
80
+ }
81
+ }
82
+ .mfui-side-picture-card__item {
83
+ display: -webkit-box;
84
+ display: -ms-flexbox;
85
+ display: flex;
86
+ gap: 12px;
87
+ }
88
+ .mfui-side-picture-card__item-icon {
89
+ display: block;
90
+ width: 32px;
91
+ min-width: 32px;
92
+ max-height: 32px;
93
+ }
94
+ .mfui-side-picture-card__item-icon svg {
95
+ display: block;
96
+ width: 100%;
97
+ height: 100%;
98
+ fill: var(--brandGreen);
99
+ }
100
+ .mfui-side-picture-card__item-description {
101
+ display: -webkit-box;
102
+ display: -ms-flexbox;
103
+ display: flex;
104
+ -webkit-box-orient: vertical;
105
+ -webkit-box-direction: normal;
106
+ -ms-flex-direction: column;
107
+ flex-direction: column;
108
+ gap: 4px;
109
+ -webkit-box-pack: center;
110
+ -ms-flex-pack: center;
111
+ justify-content: center;
112
+ }
113
+ .mfui-side-picture-card__item-text {
114
+ font-size: 15px;
115
+ line-height: 24px;
116
+ font-weight: 400;
117
+ /* stylelint-disable-next-line value-no-vendor-prefix */
118
+ display: -webkit-box;
119
+ overflow: hidden;
120
+ white-space: normal;
121
+ text-overflow: ellipsis;
122
+ -webkit-box-orient: vertical;
123
+ -webkit-line-clamp: 3;
124
+ }
125
+ .mfui-side-picture-card__item-info {
126
+ font-weight: 500;
127
+ font-size: 18px;
128
+ line-height: 24px;
129
+ letter-spacing: 0.5px;
130
+ /* stylelint-disable-next-line value-no-vendor-prefix */
131
+ display: -webkit-box;
132
+ overflow: hidden;
133
+ white-space: normal;
134
+ text-overflow: ellipsis;
135
+ -webkit-box-orient: vertical;
136
+ -webkit-line-clamp: 2;
137
+ }
138
+ @media screen and (min-width: 1280px) {
139
+ .mfui-side-picture-card__item-info {
140
+ font-size: 20px;
141
+ line-height: 28px;
142
+ }
143
+ }
144
+ .mfui-side-picture-card__button {
145
+ margin-top: 32px;
146
+ }
147
+ .mfui-side-picture-card__picture {
148
+ position: relative;
149
+ height: 172px;
150
+ }
151
+ @media screen and (min-width: 768px) and (max-width: 1023px) {
152
+ .mfui-side-picture-card__picture {
153
+ height: 197px;
154
+ }
155
+ }
156
+ @media screen and (min-width: 1024px) and (max-width: 1279px) {
157
+ .mfui-side-picture-card__picture {
158
+ height: 270px;
159
+ }
160
+ }
161
+ @media screen and (min-width: 1280px) {
162
+ .mfui-side-picture-card__picture {
163
+ height: 100%;
164
+ }
165
+ }
166
+ .mfui-side-picture-card__image {
167
+ position: absolute;
168
+ width: 100%;
169
+ height: 100%;
170
+ border-radius: 24px;
171
+ -o-object-fit: cover;
172
+ object-fit: cover;
173
+ }
174
+ .mfui-side-picture-card_active:hover:not(.mfui-side-picture-card_background_gray) {
175
+ -webkit-box-shadow: 0 8px 28px rgba(0, 0, 0, 0.1);
176
+ box-shadow: 0 8px 28px rgba(0, 0, 0, 0.1);
177
+ }
178
+ .mfui-side-picture-card_background_gray {
179
+ background-color: var(--spbSky0);
180
+ }
181
+ .mfui-side-picture-card_background_gray.mfui-side-picture-card_active:hover {
182
+ background-color: var(--spbSky1);
183
+ }
@@ -0,0 +1,16 @@
1
+ import React from 'react';
2
+ import { BackgroundType, CardDataType } from '../types';
3
+ import './SidePictureCard.less';
4
+ export declare type SidePictureCardType = CardDataType & {
5
+ background: BackgroundType;
6
+ classes?: {
7
+ root?: string;
8
+ button?: string;
9
+ };
10
+ dataAttrs?: {
11
+ root?: Record<string, string>;
12
+ button?: Record<string, string>;
13
+ };
14
+ };
15
+ declare const SidePictureCard: React.FC<SidePictureCardType>;
16
+ export default SidePictureCard;
@@ -0,0 +1,91 @@
1
+ import _extends from "@babel/runtime/helpers/extends";
2
+ import "core-js/modules/es.array.slice.js";
3
+ import "core-js/modules/es.array.map.js";
4
+ import "core-js/modules/es.array.concat.js";
5
+ import React from 'react';
6
+ import { Button, Header } from '@megafon/ui-core';
7
+ import { breakpoints, cnCreate, convert } from '@megafon/ui-helpers';
8
+ import { setRelAttribute } from "../../../helpers/setRelAttribute";
9
+ import "./SidePictureCard.css";
10
+ var MAX_ICON_ITEMS_COUNT = 4;
11
+ var cn = cnCreate('mfui-side-picture-card');
12
+
13
+ var SidePictureCard = function SidePictureCard(_ref) {
14
+ var background = _ref.background,
15
+ title = _ref.title,
16
+ image = _ref.image,
17
+ _ref$iconItems = _ref.iconItems,
18
+ iconItems = _ref$iconItems === void 0 ? [] : _ref$iconItems,
19
+ _ref$button = _ref.button,
20
+ button = _ref$button === void 0 ? {} : _ref$button,
21
+ href = _ref.href,
22
+ target = _ref.target,
23
+ rel = _ref.rel,
24
+ _ref$classes = _ref.classes,
25
+ classes = _ref$classes === void 0 ? {} : _ref$classes,
26
+ dataAttrs = _ref.dataAttrs;
27
+ var buttonTitle = button.title,
28
+ buttonHref = button.href,
29
+ buttonTarget = button.target,
30
+ buttonRel = button.rel;
31
+ var isLink = !!href && !buttonHref;
32
+ var ElementType = isLink ? 'a' : 'div';
33
+ var currentRel = setRelAttribute(rel, target);
34
+ var currentButtonRel = setRelAttribute(buttonRel, buttonTarget);
35
+ var visibleIconItems = iconItems.slice(0, MAX_ICON_ITEMS_COUNT);
36
+ var items = visibleIconItems.map(function (item, i) {
37
+ var icon = item.icon,
38
+ _item$text = item.text,
39
+ text = _item$text === void 0 ? '' : _item$text,
40
+ _item$info = item.info,
41
+ info = _item$info === void 0 ? '' : _item$info;
42
+ return /*#__PURE__*/React.createElement("div", {
43
+ className: cn('item'),
44
+ key: "".concat(text || info, "_").concat(i)
45
+ }, /*#__PURE__*/React.createElement("div", {
46
+ className: cn('item-icon')
47
+ }, icon), /*#__PURE__*/React.createElement("div", {
48
+ className: cn('item-description')
49
+ }, !!text && /*#__PURE__*/React.createElement("div", {
50
+ className: cn('item-text')
51
+ }, convert(text, {})), !!info && /*#__PURE__*/React.createElement("div", {
52
+ className: cn('item-info')
53
+ }, convert(info, {}))));
54
+ });
55
+ return /*#__PURE__*/React.createElement(ElementType, _extends({
56
+ className: cn({
57
+ background: background,
58
+ active: isLink
59
+ }, [classes.root])
60
+ }, dataAttrs === null || dataAttrs === void 0 ? void 0 : dataAttrs.root, {
61
+ href: href,
62
+ target: isLink ? target : undefined,
63
+ rel: isLink ? currentRel : undefined
64
+ }), /*#__PURE__*/React.createElement("div", {
65
+ className: cn('content')
66
+ }, !!title && /*#__PURE__*/React.createElement(Header, {
67
+ className: cn('title'),
68
+ as: "h3"
69
+ }, convert(title, {})), /*#__PURE__*/React.createElement("div", {
70
+ className: cn('items')
71
+ }, items), !!buttonTitle && /*#__PURE__*/React.createElement(Button, {
72
+ className: cn('button', [classes.button]),
73
+ dataAttrs: {
74
+ root: dataAttrs === null || dataAttrs === void 0 ? void 0 : dataAttrs.button
75
+ },
76
+ href: buttonHref,
77
+ target: buttonTarget,
78
+ rel: currentButtonRel
79
+ }, buttonTitle)), /*#__PURE__*/React.createElement("picture", {
80
+ className: cn('picture')
81
+ }, /*#__PURE__*/React.createElement("source", {
82
+ media: "(min-width: ".concat(breakpoints.DESKTOP_MIDDLE_START, "px)"),
83
+ srcSet: image.srcWide
84
+ }), /*#__PURE__*/React.createElement("img", {
85
+ className: cn('image'),
86
+ src: image.src,
87
+ alt: image.alt || 'image'
88
+ })));
89
+ };
90
+
91
+ export default SidePictureCard;
@@ -0,0 +1,46 @@
1
+ /// <reference types="react" />
2
+ declare type TargetType = '_self' | '_blank' | '_parent' | '_top';
3
+ declare type ButtonType = {
4
+ /** Название */
5
+ title: string;
6
+ /** Ссылка */
7
+ href: string;
8
+ /** Атрибут ссылки target */
9
+ target?: TargetType;
10
+ /** Атрибут ссылки rel */
11
+ rel?: string;
12
+ };
13
+ declare type ImageType = {
14
+ /** Изображение на разрешении экрана 0-1279 */
15
+ src: string;
16
+ /** Изображение на разрешении экрана 1280+ */
17
+ srcWide: string;
18
+ /** Значение тега alt для изображения */
19
+ alt?: string;
20
+ };
21
+ declare type IconContentType = {
22
+ /** Иконка */
23
+ icon: JSX.Element;
24
+ /** Текст-описание */
25
+ text?: string;
26
+ /** Дополнительная информация, значение */
27
+ info?: string;
28
+ };
29
+ export declare type CardDataType = {
30
+ /** Заголовок */
31
+ title?: string;
32
+ /** Изображение */
33
+ image: ImageType;
34
+ /** Список пунктов с иконками */
35
+ iconItems: IconContentType[];
36
+ /** Кнопка */
37
+ button?: ButtonType;
38
+ /** Ссылка */
39
+ href?: string;
40
+ /** Атрибут ссылки target */
41
+ target?: TargetType;
42
+ /** Атрибут ссылки rel */
43
+ rel?: string;
44
+ };
45
+ export declare type BackgroundType = 'white' | 'gray';
46
+ export {};
File without changes
@@ -17,13 +17,22 @@ h5 {
17
17
  margin-top: 12px;
18
18
  }
19
19
  .mfui-text-with-icon-item__svg-icon {
20
- width: 44px;
21
- min-width: 44px;
22
- height: 44px;
23
- min-height: 44px;
24
- margin-right: 16px;
25
- padding: 6px;
20
+ -webkit-box-sizing: border-box;
21
+ box-sizing: border-box;
22
+ width: 40px;
23
+ min-width: 40px;
24
+ height: 40px;
25
+ min-height: 40px;
26
+ margin-right: 12px;
27
+ overflow: hidden;
28
+ }
29
+ .mfui-text-with-icon-item_icon-background_stroke .mfui-text-with-icon-item__svg-icon {
30
+ padding: 3px;
26
31
  border: 1px solid var(--spbSky2);
27
32
  border-radius: 50%;
28
- overflow: hidden;
33
+ }
34
+ .mfui-text-with-icon-item_icon-background_gray .mfui-text-with-icon-item__svg-icon {
35
+ padding: 4px;
36
+ border-radius: 50%;
37
+ background-color: var(--spbSky0);
29
38
  }
@@ -10,6 +10,8 @@ export interface ITextWithIconItem {
10
10
  text: string | string[];
11
11
  /** Иконка */
12
12
  icon: React.ReactNode;
13
+ /** Фон для иконки */
14
+ iconBackground?: 'no' | 'stroke' | 'gray';
13
15
  /** Ссылка на корневой элемент */
14
16
  rootRef?: React.Ref<HTMLDivElement>;
15
17
  /** Дополнительные data атрибуты к внутренним элементам */
@@ -14,6 +14,8 @@ var TextWithIconItem = function TextWithIconItem(_ref) {
14
14
  classes = _ref$classes === void 0 ? {} : _ref$classes,
15
15
  text = _ref.text,
16
16
  icon = _ref.icon,
17
+ _ref$iconBackground = _ref.iconBackground,
18
+ iconBackground = _ref$iconBackground === void 0 ? 'no' : _ref$iconBackground,
17
19
  rootRef = _ref.rootRef,
18
20
  dataAttrs = _ref.dataAttrs;
19
21
  var renderText = React.useMemo(function () {
@@ -26,7 +28,9 @@ var TextWithIconItem = function TextWithIconItem(_ref) {
26
28
  return convert(text, textConvertConfig);
27
29
  }, [text]);
28
30
  return /*#__PURE__*/React.createElement("div", _extends({
29
- className: cn([className]),
31
+ className: cn({
32
+ 'icon-background': iconBackground
33
+ }, [className]),
30
34
  ref: rootRef
31
35
  }, filterDataAttrs(dataAttrs === null || dataAttrs === void 0 ? void 0 : dataAttrs.root)), /*#__PURE__*/React.createElement("div", {
32
36
  className: cn('svg-icon', [classes.icon]),
@@ -40,6 +44,7 @@ var TextWithIconItem = function TextWithIconItem(_ref) {
40
44
  TextWithIconItem.propTypes = {
41
45
  text: PropTypes.oneOfType([PropTypes.string.isRequired, PropTypes.arrayOf(PropTypes.string.isRequired)]).isRequired,
42
46
  icon: PropTypes.node.isRequired,
47
+ iconBackground: PropTypes.oneOf(['no', 'stroke', 'gray']),
43
48
  rootRef: PropTypes.oneOfType([PropTypes.func, PropTypes.oneOfType([PropTypes.shape({
44
49
  current: PropTypes.elementType
45
50
  }), PropTypes.any])]),
@@ -1,2 +1,2 @@
1
1
  import React from 'react';
2
- export declare const getColumnConfig: (isFullWidth: boolean) => Pick<React.PropsWithChildren<import("@megafon/ui-core/dist/lib/components/Grid/GridColumn").IGridColumn>, "all" | "wide" | "mobile" | "desktop" | "tablet">;
2
+ export declare const getColumnConfig: (isFullWidth: boolean) => Pick<React.PropsWithChildren<import("../../../ui-core/dist/lib/components/Grid/GridColumn").IGridColumn>, "all" | "wide" | "mobile" | "desktop" | "tablet">;
@@ -21,6 +21,8 @@ export { default as DownloadLink } from './components/DownloadLinks/DownloadLink
21
21
  export { default as DownloadLinks } from './components/DownloadLinks/DownloadLinks';
22
22
  export { default as FaqWrapper } from './components/FaqWrapper/FaqWrapper';
23
23
  export { default as ImageBanner } from './components/ImageBanner/ImageBanner';
24
+ export { default as InfoCard } from './components/InfoCards/components/InfoCard/InfoCard';
25
+ export { default as InfoCards } from './components/InfoCards/InfoCards';
24
26
  export { default as Instructions } from './components/Instructions/Instructions';
25
27
  export { default as NotificationBox } from './components/NotificationBox/NotificationBox';
26
28
  export { default as PageTitle } from './components/PageTitle/PageTitle';
@@ -28,6 +30,8 @@ export { default as Partners } from './components/Partners/Partners';
28
30
  export { default as PictureWithDescription } from './components/PictureWithDescription/PictureWithDescription';
29
31
  export { default as Property } from './components/Property/Property';
30
32
  export { default as PropertyDescription } from './components/Property/PropertyDescription';
33
+ export { default as SidePictureCard } from './components/SidePictureCards/components/SidePictureCard';
34
+ export { default as SidePictureCards } from './components/SidePictureCards/SidePictureCards';
31
35
  export { default as Steps } from './components/Steps/Steps';
32
36
  export { default as StepsItem } from './components/Steps/StepsItem';
33
37
  export { default as StoreBanner } from './components/StoreBanner/StoreBanner';
package/dist/es/index.js CHANGED
@@ -21,6 +21,8 @@ export { default as DownloadLink } from "./components/DownloadLinks/DownloadLink
21
21
  export { default as DownloadLinks } from "./components/DownloadLinks/DownloadLinks";
22
22
  export { default as FaqWrapper } from "./components/FaqWrapper/FaqWrapper";
23
23
  export { default as ImageBanner } from "./components/ImageBanner/ImageBanner";
24
+ export { default as InfoCard } from "./components/InfoCards/components/InfoCard/InfoCard";
25
+ export { default as InfoCards } from "./components/InfoCards/InfoCards";
24
26
  export { default as Instructions } from "./components/Instructions/Instructions";
25
27
  export { default as NotificationBox } from "./components/NotificationBox/NotificationBox";
26
28
  export { default as PageTitle } from "./components/PageTitle/PageTitle";
@@ -28,6 +30,8 @@ export { default as Partners } from "./components/Partners/Partners";
28
30
  export { default as PictureWithDescription } from "./components/PictureWithDescription/PictureWithDescription";
29
31
  export { default as Property } from "./components/Property/Property";
30
32
  export { default as PropertyDescription } from "./components/Property/PropertyDescription";
33
+ export { default as SidePictureCard } from "./components/SidePictureCards/components/SidePictureCard";
34
+ export { default as SidePictureCards } from "./components/SidePictureCards/SidePictureCards";
31
35
  export { default as Steps } from "./components/Steps/Steps";
32
36
  export { default as StepsItem } from "./components/Steps/StepsItem";
33
37
  export { default as StoreBanner } from "./components/StoreBanner/StoreBanner";
@@ -68,7 +68,7 @@ h5 {
68
68
  gap: 12px;
69
69
  -webkit-box-align: start;
70
70
  -ms-flex-align: start;
71
- align-items: start;
71
+ align-items: flex-start;
72
72
  -webkit-box-pack: justify;
73
73
  -ms-flex-pack: justify;
74
74
  justify-content: space-between;