@vchasno/ui-kit 0.3.2 → 0.3.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +13 -1
- package/dist/Datepicker/index.cjs.js +1 -1
- package/dist/Datepicker/index.js +1 -1
- package/dist/Datepicker/types/components/ProjectsPopover/utils.d.ts +1 -0
- package/dist/Menu/types/components/ProjectsPopover/utils.d.ts +1 -0
- package/dist/ProjectsPopover/index.cjs.js +48 -50
- package/dist/ProjectsPopover/index.cjs.js.map +1 -1
- package/dist/ProjectsPopover/index.js +48 -50
- package/dist/ProjectsPopover/index.js.map +1 -1
- package/dist/ProjectsPopover/types/components/ProjectsPopover/utils.d.ts +1 -0
- package/dist/Select/index.cjs.js +2 -2
- package/dist/Select/index.js +2 -2
- package/dist/Select/types/components/ProjectsPopover/utils.d.ts +1 -0
- package/dist/SelectCreatable/index.cjs.js +9 -3
- package/dist/SelectCreatable/index.cjs.js.map +1 -1
- package/dist/SelectCreatable/index.js +9 -3
- package/dist/SelectCreatable/index.js.map +1 -1
- package/dist/SelectCreatable/types/components/ProjectsPopover/utils.d.ts +1 -0
- package/dist/Snackbar/index.cjs.js +1 -1
- package/dist/Snackbar/index.js +1 -1
- package/dist/Snackbar/types/components/ProjectsPopover/utils.d.ts +1 -0
- package/dist/index.js +1 -1
- package/dist/types/components/ProjectsPopover/utils.d.ts +1 -0
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -7,6 +7,19 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
|
7
7
|
|
|
8
8
|
## [Unreleased]
|
|
9
9
|
|
|
10
|
+
## [0.3.4] - 2024-05-20
|
|
11
|
+
|
|
12
|
+
## Fixed
|
|
13
|
+
|
|
14
|
+
- fix `SelectCreatable` styles
|
|
15
|
+
- fix `LabelText` styles
|
|
16
|
+
|
|
17
|
+
## [0.3.3] - 2024-05-13
|
|
18
|
+
|
|
19
|
+
## Fixed
|
|
20
|
+
|
|
21
|
+
- fix `ProjectsPopover` link generation, mobile responsive design
|
|
22
|
+
|
|
10
23
|
## [0.3.2] - 2024-05-04
|
|
11
24
|
|
|
12
25
|
## Added
|
|
@@ -14,7 +27,6 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
|
14
27
|
- add `BlackTooltip` component MUI tooltip with black background
|
|
15
28
|
- add `ProjectsPopover` marketing component for show projects list
|
|
16
29
|
|
|
17
|
-
|
|
18
30
|
## [0.3.1] - 2024-05-01
|
|
19
31
|
|
|
20
32
|
## Changed
|
|
@@ -15540,7 +15540,7 @@ var InputMeta = function (_a) {
|
|
|
15540
15540
|
error && React.createElement("span", { className: "vchasno-ui-meta__error" }, error)));
|
|
15541
15541
|
};
|
|
15542
15542
|
|
|
15543
|
-
var css_248z$2 = ".vchasno-ui-label-text {\n position: absolute;\n z-index: 2;\n top: 50%;\n left: 12px;\n display: inline-flex;\n max-width: calc(100% - 20px);\n align-self: flex-start;\n padding: 4px;\n background-color: #fff;\n color: var(--vchasno-ui-label-color-default);\n font-size: var(--vchasno-ui-input-font-size);\n gap: 3px;\n line-height: calc(var(--vchasno-ui-input-font-size) * 1.2);\n pointer-events: none;\n text-overflow: ellipsis;\n transform: translate(0, -50%);\n transition: color var(--vchasno-ui-transition-duration-sec, 0.3s), top 0.3s, font-size 0.3s;\n white-space: nowrap;\n}\n\n.vchasno-ui-select .vchasno-ui-label-text {\n max-width: calc(100% - 40px);\n}\n\n.vchasno-ui-select__floating-label,\
|
|
15543
|
+
var css_248z$2 = ".vchasno-ui-label-text {\n position: absolute;\n z-index: 2;\n top: 50%;\n left: 12px;\n display: inline-flex;\n max-width: calc(100% - 20px);\n align-self: flex-start;\n padding: 4px;\n background-color: #fff;\n color: var(--vchasno-ui-label-color-default);\n font-size: var(--vchasno-ui-input-font-size);\n gap: 3px;\n line-height: calc(var(--vchasno-ui-input-font-size) * 1.2);\n pointer-events: none;\n text-overflow: ellipsis;\n transform: translate(0, -50%);\n transition: color var(--vchasno-ui-transition-duration-sec, 0.3s), top 0.3s, font-size 0.3s;\n white-space: nowrap;\n}\n\n.vchasno-ui-select .vchasno-ui-label-text {\n max-width: calc(100% - 40px);\n}\n\n.vchasno-ui-select__floating-label,\nlabel[class^='vchasno-ui-']:not(:placeholder-shown) + .vchasno-ui-label-text,\nlabel[class^='vchasno-ui-']:focus:not(.--disabled) + .vchasno-ui-label-text {\n top: 0;\n font-size: 12px;\n}\n\nlabel[class^='vchasno-ui-']:not(.--error):focus-within .vchasno-ui-label-text {\n color: var(--vchasno-ui-label-color-focused);\n}\n\nlabel[class^='vchasno-ui-']:not(.--disabled).--error .vchasno-ui-label-text {\n color: var(--vchasno-ui-input-color-error);\n}\n\nlabel[class^='vchasno-ui-']:not(.--disabled).--required .vchasno-ui-label-text:hover {\n cursor: text;\n}\n\n.vchasno-ui-label-text sup {\n position: relative;\n top: -0.2em;\n display: none;\n color: var(--vchasno-ui-input-color-error);\n font-size: calc(var(--vchasno-ui-input-font-size) * 1.4);\n vertical-align: top;\n}\n\nlabel[class^='vchasno-ui-'].--required .vchasno-ui-label-text sup {\n display: inline-block;\n}\n\n.vchasno-ui-label-text__title-icon {\n display: none;\n color: var(--vchasno-ui-label-color-default);\n transform: scale(0.8);\n}\n\n.vchasno-ui-input[title] .vchasno-ui-label-text__title-icon {\n display: block;\n}\n\n.vchasno-ui-label-text__content {\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n";
|
|
15544
15544
|
styleInject(css_248z$2);
|
|
15545
15545
|
|
|
15546
15546
|
var LabelText = function (_a) {
|
package/dist/Datepicker/index.js
CHANGED
|
@@ -15520,7 +15520,7 @@ var InputMeta = function (_a) {
|
|
|
15520
15520
|
error && React__default.createElement("span", { className: "vchasno-ui-meta__error" }, error)));
|
|
15521
15521
|
};
|
|
15522
15522
|
|
|
15523
|
-
var css_248z$2 = ".vchasno-ui-label-text {\n position: absolute;\n z-index: 2;\n top: 50%;\n left: 12px;\n display: inline-flex;\n max-width: calc(100% - 20px);\n align-self: flex-start;\n padding: 4px;\n background-color: #fff;\n color: var(--vchasno-ui-label-color-default);\n font-size: var(--vchasno-ui-input-font-size);\n gap: 3px;\n line-height: calc(var(--vchasno-ui-input-font-size) * 1.2);\n pointer-events: none;\n text-overflow: ellipsis;\n transform: translate(0, -50%);\n transition: color var(--vchasno-ui-transition-duration-sec, 0.3s), top 0.3s, font-size 0.3s;\n white-space: nowrap;\n}\n\n.vchasno-ui-select .vchasno-ui-label-text {\n max-width: calc(100% - 40px);\n}\n\n.vchasno-ui-select__floating-label,\
|
|
15523
|
+
var css_248z$2 = ".vchasno-ui-label-text {\n position: absolute;\n z-index: 2;\n top: 50%;\n left: 12px;\n display: inline-flex;\n max-width: calc(100% - 20px);\n align-self: flex-start;\n padding: 4px;\n background-color: #fff;\n color: var(--vchasno-ui-label-color-default);\n font-size: var(--vchasno-ui-input-font-size);\n gap: 3px;\n line-height: calc(var(--vchasno-ui-input-font-size) * 1.2);\n pointer-events: none;\n text-overflow: ellipsis;\n transform: translate(0, -50%);\n transition: color var(--vchasno-ui-transition-duration-sec, 0.3s), top 0.3s, font-size 0.3s;\n white-space: nowrap;\n}\n\n.vchasno-ui-select .vchasno-ui-label-text {\n max-width: calc(100% - 40px);\n}\n\n.vchasno-ui-select__floating-label,\nlabel[class^='vchasno-ui-']:not(:placeholder-shown) + .vchasno-ui-label-text,\nlabel[class^='vchasno-ui-']:focus:not(.--disabled) + .vchasno-ui-label-text {\n top: 0;\n font-size: 12px;\n}\n\nlabel[class^='vchasno-ui-']:not(.--error):focus-within .vchasno-ui-label-text {\n color: var(--vchasno-ui-label-color-focused);\n}\n\nlabel[class^='vchasno-ui-']:not(.--disabled).--error .vchasno-ui-label-text {\n color: var(--vchasno-ui-input-color-error);\n}\n\nlabel[class^='vchasno-ui-']:not(.--disabled).--required .vchasno-ui-label-text:hover {\n cursor: text;\n}\n\n.vchasno-ui-label-text sup {\n position: relative;\n top: -0.2em;\n display: none;\n color: var(--vchasno-ui-input-color-error);\n font-size: calc(var(--vchasno-ui-input-font-size) * 1.4);\n vertical-align: top;\n}\n\nlabel[class^='vchasno-ui-'].--required .vchasno-ui-label-text sup {\n display: inline-block;\n}\n\n.vchasno-ui-label-text__title-icon {\n display: none;\n color: var(--vchasno-ui-label-color-default);\n transform: scale(0.8);\n}\n\n.vchasno-ui-input[title] .vchasno-ui-label-text__title-icon {\n display: block;\n}\n\n.vchasno-ui-label-text__content {\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n";
|
|
15524
15524
|
styleInject(css_248z$2);
|
|
15525
15525
|
|
|
15526
15526
|
var LabelText = function (_a) {
|
|
@@ -5,5 +5,6 @@ interface ComposeLinkOptions {
|
|
|
5
5
|
targetProduct: AllProducts;
|
|
6
6
|
queryParams?: Record<string, string>;
|
|
7
7
|
}
|
|
8
|
+
export declare const composeZakupivliLink: ({ targetProduct, }: Pick<ComposeLinkOptions, 'targetProduct'>) => string;
|
|
8
9
|
export declare const composeLink: ({ targetProduct, ctxProduct, queryParams, edrpou, }: ComposeLinkOptions) => string;
|
|
9
10
|
export {};
|
|
@@ -5,5 +5,6 @@ interface ComposeLinkOptions {
|
|
|
5
5
|
targetProduct: AllProducts;
|
|
6
6
|
queryParams?: Record<string, string>;
|
|
7
7
|
}
|
|
8
|
+
export declare const composeZakupivliLink: ({ targetProduct, }: Pick<ComposeLinkOptions, 'targetProduct'>) => string;
|
|
8
9
|
export declare const composeLink: ({ targetProduct, ctxProduct, queryParams, edrpou, }: ComposeLinkOptions) => string;
|
|
9
10
|
export {};
|
|
@@ -178,42 +178,6 @@ typeof SuppressedError === "function" ? SuppressedError : function (error, suppr
|
|
|
178
178
|
return e.name = "SuppressedError", e.error = error, e.suppressed = suppressed, e;
|
|
179
179
|
};
|
|
180
180
|
|
|
181
|
-
function styleInject(css, ref) {
|
|
182
|
-
if ( ref === void 0 ) ref = {};
|
|
183
|
-
var insertAt = ref.insertAt;
|
|
184
|
-
|
|
185
|
-
if (!css || typeof document === 'undefined') { return; }
|
|
186
|
-
|
|
187
|
-
var head = document.head || document.getElementsByTagName('head')[0];
|
|
188
|
-
var style = document.createElement('style');
|
|
189
|
-
style.type = 'text/css';
|
|
190
|
-
|
|
191
|
-
if (insertAt === 'top') {
|
|
192
|
-
if (head.firstChild) {
|
|
193
|
-
head.insertBefore(style, head.firstChild);
|
|
194
|
-
} else {
|
|
195
|
-
head.appendChild(style);
|
|
196
|
-
}
|
|
197
|
-
} else {
|
|
198
|
-
head.appendChild(style);
|
|
199
|
-
}
|
|
200
|
-
|
|
201
|
-
if (style.styleSheet) {
|
|
202
|
-
style.styleSheet.cssText = css;
|
|
203
|
-
} else {
|
|
204
|
-
style.appendChild(document.createTextNode(css));
|
|
205
|
-
}
|
|
206
|
-
}
|
|
207
|
-
|
|
208
|
-
var css_248z$1 = ".vchasno-ui-flex-box {\n display: flex;\n max-width: 100%;\n flex-direction: row;\n align-content: flex-start;\n gap: 10px;\n}\n";
|
|
209
|
-
styleInject(css_248z$1);
|
|
210
|
-
|
|
211
|
-
var FlexBox = React$1.forwardRef(function (_a, ref) {
|
|
212
|
-
var className = _a.className, _b = _a.tagName, tagName = _b === void 0 ? 'div' : _b, children = _a.children, direction = _a.direction, gap = _a.gap, wrap = _a.wrap, align = _a.align, justify = _a.justify, grow = _a.grow, shrink = _a.shrink, _c = _a.style, style = _c === void 0 ? {} : _c, rest = __rest(_a, ["className", "tagName", "children", "direction", "gap", "wrap", "align", "justify", "grow", "shrink", "style"]);
|
|
213
|
-
return React$1.createElement(tagName, __assign({ ref: ref, className: cn('vchasno-ui-flex-box', className), style: __assign(__assign({}, style), { flexDirection: direction, gap: gap, flexWrap: wrap, justifyContent: justify, alignItems: align, alignContent: align, flexGrow: grow, flexShrink: shrink }) }, rest), children);
|
|
214
|
-
});
|
|
215
|
-
FlexBox.displayName = 'FlexBox';
|
|
216
|
-
|
|
217
181
|
function _objectWithoutPropertiesLoose(source, excluded) {
|
|
218
182
|
if (source == null) return {};
|
|
219
183
|
var target = {};
|
|
@@ -12475,9 +12439,9 @@ var hrefMap = {
|
|
|
12475
12439
|
kep: 'https://cap.vchasno.ua',
|
|
12476
12440
|
kasa: 'https://kasa.vchasno.ua',
|
|
12477
12441
|
zakupivli: 'https://zakupivli.pro',
|
|
12478
|
-
prozorroSale: 'https://zakupivli.pro',
|
|
12479
|
-
prozorroMarket: 'https://zakupivli.pro',
|
|
12480
|
-
prozorroRRO: 'https://zakupivli.pro',
|
|
12442
|
+
prozorroSale: 'https://zakupivli.pro/auctions-dgf',
|
|
12443
|
+
prozorroMarket: 'https://zakupivli.pro/ecatalog/gov/list',
|
|
12444
|
+
prozorroRRO: 'https://zakupivli.pro/gov/tenders',
|
|
12481
12445
|
};
|
|
12482
12446
|
var tooltipHintMap = {
|
|
12483
12447
|
edo: 'Обмін електронними документами',
|
|
@@ -12582,14 +12546,25 @@ var isZakupivliProduct = function (product) {
|
|
|
12582
12546
|
return zakupivliProductsList.includes(product);
|
|
12583
12547
|
};
|
|
12584
12548
|
|
|
12549
|
+
var composeZakupivliLink = function (_a) {
|
|
12550
|
+
var targetProduct = _a.targetProduct;
|
|
12551
|
+
var baseUrl = hrefMap[targetProduct];
|
|
12552
|
+
var link = new URL(baseUrl);
|
|
12553
|
+
link.searchParams.set('utm_source', 'vchasno-cabinet');
|
|
12554
|
+
link.searchParams.set('utm_medium', 'link');
|
|
12555
|
+
link.searchParams.set('utm_campaign', 'vchasno-cabinet');
|
|
12556
|
+
return link.href;
|
|
12557
|
+
};
|
|
12585
12558
|
var composeLink = function (_a) {
|
|
12586
12559
|
var targetProduct = _a.targetProduct, ctxProduct = _a.ctxProduct, queryParams = _a.queryParams, edrpou = _a.edrpou;
|
|
12560
|
+
if (zakupivliProductsList.includes(targetProduct)) {
|
|
12561
|
+
return composeZakupivliLink({ targetProduct: targetProduct });
|
|
12562
|
+
}
|
|
12587
12563
|
var baseUrl = hrefMap[targetProduct];
|
|
12588
12564
|
var link = new URL(baseUrl);
|
|
12589
12565
|
if (edrpou) {
|
|
12590
12566
|
link.searchParams.set('edrpou', edrpou);
|
|
12591
12567
|
}
|
|
12592
|
-
link.searchParams.set('utm_medium', 'link');
|
|
12593
12568
|
link.searchParams.set('utm_source', ctxProduct);
|
|
12594
12569
|
link.searchParams.set('utm_campaign', ctxProduct);
|
|
12595
12570
|
if (queryParams) {
|
|
@@ -12617,7 +12592,34 @@ var ProductLink = function (_a) {
|
|
|
12617
12592
|
React$1.createElement("h5", { className: "vchasno-ui-ProjectsPopover__box__title" }, titleMap[product]))))));
|
|
12618
12593
|
};
|
|
12619
12594
|
|
|
12620
|
-
|
|
12595
|
+
function styleInject(css, ref) {
|
|
12596
|
+
if ( ref === void 0 ) ref = {};
|
|
12597
|
+
var insertAt = ref.insertAt;
|
|
12598
|
+
|
|
12599
|
+
if (!css || typeof document === 'undefined') { return; }
|
|
12600
|
+
|
|
12601
|
+
var head = document.head || document.getElementsByTagName('head')[0];
|
|
12602
|
+
var style = document.createElement('style');
|
|
12603
|
+
style.type = 'text/css';
|
|
12604
|
+
|
|
12605
|
+
if (insertAt === 'top') {
|
|
12606
|
+
if (head.firstChild) {
|
|
12607
|
+
head.insertBefore(style, head.firstChild);
|
|
12608
|
+
} else {
|
|
12609
|
+
head.appendChild(style);
|
|
12610
|
+
}
|
|
12611
|
+
} else {
|
|
12612
|
+
head.appendChild(style);
|
|
12613
|
+
}
|
|
12614
|
+
|
|
12615
|
+
if (style.styleSheet) {
|
|
12616
|
+
style.styleSheet.cssText = css;
|
|
12617
|
+
} else {
|
|
12618
|
+
style.appendChild(document.createTextNode(css));
|
|
12619
|
+
}
|
|
12620
|
+
}
|
|
12621
|
+
|
|
12622
|
+
var css_248z = ".vchasno-ui-ProjectsPopover {\n display: inline-block;\n width: 440px;\n max-width: calc(100vw - 32px);\n box-sizing: border-box;\n padding: 24px 16px 0;\n border-radius: 3px;\n background-color: #fff;\n}\n\n.vchasno-ui-ProjectsPopover__content {\n display: flex;\n flex-direction: column;\n gap: 32px;\n}\n\n.vchasno-ui-ProjectsPopover__products {\n display: flex;\n width: calc(100% + 32px);\n box-sizing: border-box;\n flex-wrap: wrap;\n gap: 10px;\n}\n\n.vchasno-ui-ProjectsPopover a:hover {\n color: unset;\n text-decoration: none;\n}\n\n.vchasno-ui-ProjectsPopover--border {\n border: 1px solid #dbe5ea;\n}\n\n.vchasno-ui-ProjectsPopover__title {\n width: 100%;\n font-size: 16px;\n font-style: normal;\n font-weight: 500;\n line-height: 18px;\n}\n\n.vchasno-ui-ProjectsPopover__box {\n display: inline-flex;\n width: 198px;\n box-sizing: border-box;\n align-items: center;\n padding: 20px;\n border: 1px solid #dbe5ea;\n border-radius: 8px;\n aspect-ratio: 198/80;\n color: var(--vchasno-ui-text-primary-color);\n gap: 8px;\n text-decoration: none;\n transition: background-color 0.3s;\n}\n\n.vchasno-ui-ProjectsPopover__box > svg {\n max-width: 90%;\n}\n\n.vchasno-ui-ProjectsPopover__box__icon {\n width: 40px;\n height: 40px;\n box-sizing: border-box;\n flex-shrink: 0;\n border-radius: 50%;\n}\n\n.vchasno-ui-ProjectsPopover__box:hover {\n background-color: #f3f6f8;\n cursor: pointer;\n}\n\n.vchasno-ui-ProjectsPopover__box__title {\n font-size: 14px;\n font-style: normal;\n font-weight: 400;\n line-height: 26px;\n}\n\n.vchasno-ui-ProjectsPopover .vchasno-ui-ProjectsPopover__footer {\n display: flex;\n min-height: 42px;\n align-items: center;\n justify-content: center;\n border-radius: 0 0 4px 4px;\n margin: 0 -16px;\n background: #ecf4ff;\n color: #6b8091;\n font-size: 12px;\n font-weight: 400;\n}\n\n.vchasno-ui-ProjectsPopover .vchasno-ui-ProjectsPopover__footer > a {\n color: #0890de;\n text-decoration: none;\n}\n\n@media screen and (width <= 480px) {\n .vchasno-ui-ProjectsPopover {\n width: 330px;\n }\n\n .vchasno-ui-ProjectsPopover__box {\n width: calc(50% - 20px);\n flex-direction: column;\n justify-content: center;\n padding: 10px;\n aspect-ratio: 1 / 1;\n }\n}\n";
|
|
12621
12623
|
styleInject(css_248z);
|
|
12622
12624
|
|
|
12623
12625
|
var ProjectsPopover = function (_a) {
|
|
@@ -12627,19 +12629,15 @@ var ProjectsPopover = function (_a) {
|
|
|
12627
12629
|
.filter(function (item) { return !hideProduct(item); });
|
|
12628
12630
|
var displayZakupivliProducts = zakupivliProductsList.filter(function (item) { return !hideProduct(item); });
|
|
12629
12631
|
return (React$1.createElement("div", { className: cn('vchasno-ui-ProjectsPopover', className) },
|
|
12630
|
-
React$1.createElement(
|
|
12631
|
-
React$1.createElement(
|
|
12632
|
-
width: 420,
|
|
12633
|
-
boxSizing: 'border-box',
|
|
12632
|
+
React$1.createElement("div", { className: "vchasno-ui-ProjectsPopover__content" },
|
|
12633
|
+
React$1.createElement("div", { className: "vchasno-ui-ProjectsPopover__products", style: {
|
|
12634
12634
|
display: displayVchasnoProducts.length ? 'flex' : 'none',
|
|
12635
|
-
}
|
|
12635
|
+
} },
|
|
12636
12636
|
React$1.createElement("h3", { className: "vchasno-ui-ProjectsPopover__title" }, vchasnoTitle),
|
|
12637
12637
|
displayVchasnoProducts.map(function (key) { return (React$1.createElement(ProductLink, { overrideHint: overrideHint, queryParams: queryParams, onLinkClick: onLinkClick, edrpou: edrpou, ctxProduct: product, key: key, product: key })); })),
|
|
12638
|
-
React$1.createElement(
|
|
12639
|
-
width: 420,
|
|
12640
|
-
boxSizing: 'border-box',
|
|
12638
|
+
React$1.createElement("div", { className: "vchasno-ui-ProjectsPopover__products", style: {
|
|
12641
12639
|
display: displayZakupivliProducts.length ? 'flex' : 'none',
|
|
12642
|
-
}
|
|
12640
|
+
} },
|
|
12643
12641
|
React$1.createElement("h3", { className: "vchasno-ui-ProjectsPopover__title" }, zakupivliTitle),
|
|
12644
12642
|
displayZakupivliProducts.map(function (key) { return (React$1.createElement(ProductLink, { overrideHint: overrideHint, onLinkClick: onLinkClick, queryParams: queryParams, edrpou: edrpou, ctxProduct: product, key: key, product: key })); })),
|
|
12645
12643
|
React$1.createElement("footer", { className: "vchasno-ui-ProjectsPopover__footer" },
|