@semcore/feedback-form 16.1.12 → 16.2.0-prerelease.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +7 -0
- package/README.md +4 -4
- package/lib/cjs/FeedbackForm.js +7 -7
- package/lib/cjs/component/checkbox-button/CheckboxButton.js +3 -3
- package/lib/cjs/component/feedback-rating/FeedbackRating.js +27 -29
- package/lib/cjs/component/feedback-rating/FeedbackRating.js.map +1 -1
- package/lib/cjs/component/feedback-rating/FeedbackRating.type.js.map +1 -1
- package/lib/cjs/component/slider-rating/SliderRating.js +6 -6
- package/lib/cjs/style/feedback-rating.shadow.css +8 -0
- package/lib/es6/FeedbackForm.js +7 -7
- package/lib/es6/component/checkbox-button/CheckboxButton.js +3 -3
- package/lib/es6/component/feedback-rating/FeedbackRating.js +21 -23
- package/lib/es6/component/feedback-rating/FeedbackRating.js.map +1 -1
- package/lib/es6/component/feedback-rating/FeedbackRating.type.js.map +1 -1
- package/lib/es6/component/slider-rating/SliderRating.js +6 -6
- package/lib/es6/style/feedback-rating.shadow.css +8 -0
- package/lib/esm/FeedbackForm.mjs +8 -8
- package/lib/esm/component/checkbox-button/CheckboxButton.mjs +4 -4
- package/lib/esm/component/feedback-rating/FeedbackRating.mjs +21 -25
- package/lib/esm/component/slider-rating/SliderRating.mjs +7 -7
- package/lib/esm/style/feedback-rating.shadow.css +8 -0
- package/lib/types/component/feedback-rating/FeedbackRating.d.ts +14 -1
- package/lib/types/component/feedback-rating/FeedbackRating.type.d.ts +6 -0
- package/package.json +5 -5
package/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,13 @@
|
|
|
2
2
|
|
|
3
3
|
CHANGELOG.md standards are inspired by [keepachangelog.com](https://keepachangelog.com/en/1.0.0/).
|
|
4
4
|
|
|
5
|
+
## [16.2.0] - 2026-02-08
|
|
6
|
+
|
|
7
|
+
### Added
|
|
8
|
+
|
|
9
|
+
- `illustrationElement`, `NoticeComponent` for `FeedbackRating`
|
|
10
|
+
component.
|
|
11
|
+
|
|
5
12
|
## [16.1.12] - 2025-11-14
|
|
6
13
|
|
|
7
14
|
### Fixed
|
package/README.md
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
[](https://www.npmjs.com/@semcore/feedback-form)
|
|
4
4
|
[](https://www.npmjs.com/package/@semcore/feedback-form)
|
|
5
|
-
[](https://github.com/semrush/intergalactic/blob/
|
|
5
|
+
[](https://github.com/semrush/intergalactic/blob/HEAD/LICENSE)
|
|
6
6
|
|
|
7
7
|
> This component is part of the Intergalactic Design System
|
|
8
8
|
|
|
@@ -20,13 +20,13 @@ npm install @semcore/feedback-form
|
|
|
20
20
|
|
|
21
21
|
## 👤 Author
|
|
22
22
|
|
|
23
|
-
[UI-kit team](https://github.com/semrush/intergalactic/blob/
|
|
23
|
+
[UI-kit team](https://github.com/semrush/intergalactic/blob/HEAD/MAINTAINERS) and [others ❤️](https://github.com/semrush/intergalactic/graphs/contributors)
|
|
24
24
|
|
|
25
25
|
## 🤝 Contributing
|
|
26
26
|
|
|
27
27
|
Contributions, issues and feature requests are welcome!
|
|
28
28
|
|
|
29
|
-
Feel free to check [issues page](https://github.com/semrush/intergalactic/issues). You can also take a look at the [contributing guide](https://github.com/semrush/intergalactic/blob/
|
|
29
|
+
Feel free to check [issues page](https://github.com/semrush/intergalactic/issues). You can also take a look at the [contributing guide](https://github.com/semrush/intergalactic/blob/HEAD/CONTRIBUTING.md).
|
|
30
30
|
|
|
31
31
|
## Show your support
|
|
32
32
|
|
|
@@ -34,4 +34,4 @@ Give a ⭐️ if this project helped you!
|
|
|
34
34
|
|
|
35
35
|
## 📝 License
|
|
36
36
|
|
|
37
|
-
This project is [MIT](https://github.com/semrush/intergalactic/blob/
|
|
37
|
+
This project is [MIT](https://github.com/semrush/intergalactic/blob/HEAD/LICENSE) licensed.
|
package/lib/cjs/FeedbackForm.js
CHANGED
|
@@ -25,15 +25,15 @@ var _FeedbackItem = require("./component/feedback-item/FeedbackItem");
|
|
|
25
25
|
var _SubmitButton = require("./component/submit-button/SubmitButton");
|
|
26
26
|
var _excluded = ["Children", "styles", "forwardRef", "loading", "background", "theme"];
|
|
27
27
|
/*!__reshadow-styles__:"./style/feedback-form.shadow.css"*/
|
|
28
|
-
var style = (/*__reshadow_css_start__*/_core.sstyled.insert(/*__inner_css_start__*/".
|
|
28
|
+
var style = (/*__reshadow_css_start__*/_core.sstyled.insert(/*__inner_css_start__*/".___SFeedbackForm_1pj7k_gg_{max-width:320px}.___SCancel_1pj7k_gg_,.___SSubmit_1pj7k_gg_{display:inline-flex;margin-right:var(--intergalactic-spacing-2x, 8px)}.___SNotice_1pj7k_gg_{padding:var(--intergalactic-spacing-3x, 12px) var(--intergalactic-spacing-4x, 16px);border-width:1px 0 0;border-top-style:solid;border-radius:0 0 var(--intergalactic-surface-rounded, 6px) var(--intergalactic-surface-rounded, 6px)}.___SSuccess_1pj7k_gg_{display:flex;align-items:center;flex-direction:column;width:320px;padding:var(--intergalactic-spacing-10x, 40px);box-sizing:border-box;outline:0}.___SEmail_1pj7k_gg_{margin-bottom:calc(var(--intergalactic-spacing-4x, 16px));width:80px;height:80px;background-image:url(\"data:image/svg+xml,%3Csvg width='80' height='80' viewBox='0 0 80 80' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M28.1632 6.00003C27.9554 5.99875 27.7493 6.03875 27.5571 6.11772C27.3648 6.19668 27.1902 6.31304 27.0432 6.46003L14.1332 19.38C7.645 25.8687 4 34.669 4 43.845C4 53.0211 7.645 61.8213 14.1332 68.31C17.3463 71.5242 21.1611 74.0738 25.3597 75.8134C29.5583 77.5529 34.0585 78.4482 38.6032 78.4482C43.1479 78.4482 47.6481 77.5529 51.8467 75.8134C56.0454 74.0738 59.8602 71.5242 63.0732 68.31L75.9832 55.4C76.1316 55.2536 76.2495 55.0792 76.3301 54.887C76.4108 54.6948 76.4526 54.4885 76.4532 54.28V6.89003C76.4506 6.65307 76.3546 6.42671 76.1861 6.26009C76.0176 6.09346 75.7902 6.00002 75.5532 6.00003H28.1632Z' fill='%2345E0A8'/%3E%3Cpath d='M29 45.2852L29.2 45.6352C35.39 42.1852 53.39 31.9652 56.73 35.1052C55.6 32.0052 39.7 35.4352 29 45.2852Z' fill='white'/%3E%3Cpath d='M28.44 31.6343C26.63 37.6343 19.23 56.1043 15 61.9443L18 62.8543L19.58 61.5343C23.8 51.9843 29.58 35.5343 29.89 30.0743C29.39 29.8143 28.93 30.2143 28.44 31.6343Z' fill='white'/%3E%3Cpath d='M15 62.0078C19.23 56.1678 26.63 37.7378 28.44 31.6678C30.25 25.5978 33.49 37.6678 31.67 42.7878' stroke='black' stroke-width='0.75' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M28 45.9424C38.68 35.5824 55.27 31.9424 56.43 35.1024C57.12 36.9924 43 41.3624 38.02 47.4224' stroke='black' stroke-width='0.75' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M44.45 21.93C41.21 20.77 35.86 19.04 33 18.24C37.12 16.41 70 4.24 72.67 3C71.75 7.11 67.75 21.28 65.96 27.93C61.13 26.25 56.23 24.78 53.03 23.74C51.0298 26.3907 49.2219 29.1812 47.62 32.09C46.44 28.23 45.29 23.77 44.45 21.93Z' fill='white' stroke='black' stroke-width='0.75' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M45 22.08L61.74 11' stroke='black' stroke-width='0.75' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M53 23.73L72.64 3' stroke='black' stroke-width='0.75' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M48 32.58L55.86 25' stroke='black' stroke-width='0.75' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M48.23 30.77L51.69 25.13L52.66 24L54.73 24.61L55.16 24.48L51.8 27.91L49.33 30.18L48 31.29L48.23 30.77Z' fill='black'/%3E%3Cpath d='M33.81 22L23 27.12' stroke='white' stroke-width='0.75' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M40.89 23L34 27.37' stroke='white' stroke-width='0.75' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M62.04 29L58 38.85' stroke='white' stroke-width='0.75' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M46.68 41C50.29 43.42 44.81 49.52 43 51.12' stroke='black' stroke-width='0.75' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M47.17 44C51.31 46.09 48.33 51.76 46 54.6' stroke='black' stroke-width='0.75' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M48.86 49C54.37 53.48 36.31 72.72 35 73.78' stroke='black' stroke-width='0.75' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cmask id='mask0_11950_117175' style='mask-type:alpha' maskUnits='userSpaceOnUse' x='4' y='6' width='73' height='73'%3E%3Cpath d='M28.1632 6.00003C27.9554 5.99875 27.7493 6.03875 27.5571 6.11772C27.3648 6.19668 27.1902 6.31304 27.0432 6.46003L14.1332 19.38C7.645 25.8687 4 34.669 4 43.845C4 53.0211 7.645 61.8213 14.1332 68.31C17.3463 71.5242 21.1611 74.0738 25.3597 75.8134C29.5583 77.5529 34.0585 78.4482 38.6032 78.4482C43.1479 78.4482 47.6481 77.5529 51.8467 75.8134C56.0454 74.0738 59.8602 71.5242 63.0732 68.31L75.9832 55.4C76.1316 55.2536 76.2495 55.0792 76.3301 54.887C76.4108 54.6948 76.4526 54.4885 76.4532 54.28V6.89003C76.4506 6.65307 76.3546 6.42671 76.1861 6.26009C76.0176 6.09346 75.7902 6.00002 75.5532 6.00003H28.1632Z' fill='%2345DFA7'/%3E%3C/mask%3E%3Cg mask='url(%23mask0_11950_117175)'%3E%3Cpath d='M5 74.6871C7.49 72.3471 13.24 63.6871 14.52 61.2471C28.18 59.1271 34.71 71.2471 34.98 74.7671C32.7234 79.651 30.1305 84.3723 27.22 88.8971' fill='black'/%3E%3Cpath d='M5 74.6871C7.49 72.3471 13.24 63.6871 14.52 61.2471C28.18 59.1271 34.71 71.2471 34.98 74.7671C32.7234 79.651 30.1305 84.3723 27.22 88.8971' stroke='black' stroke-width='0.75' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/g%3E%3C/svg%3E%0A\")}", /*__inner_css_end__*/"1pj7k_gg_"),
|
|
29
29
|
/*__reshadow_css_end__*/
|
|
30
30
|
{
|
|
31
|
-
"__SFeedbackForm": "
|
|
32
|
-
"__SSubmit": "
|
|
33
|
-
"__SCancel": "
|
|
34
|
-
"__SNotice": "
|
|
35
|
-
"__SSuccess": "
|
|
36
|
-
"__SEmail": "
|
|
31
|
+
"__SFeedbackForm": "___SFeedbackForm_1pj7k_gg_",
|
|
32
|
+
"__SSubmit": "___SSubmit_1pj7k_gg_",
|
|
33
|
+
"__SCancel": "___SCancel_1pj7k_gg_",
|
|
34
|
+
"__SNotice": "___SNotice_1pj7k_gg_",
|
|
35
|
+
"__SSuccess": "___SSuccess_1pj7k_gg_",
|
|
36
|
+
"__SEmail": "___SEmail_1pj7k_gg_"
|
|
37
37
|
});
|
|
38
38
|
var FeedbackForm = /*#__PURE__*/function (_Component) {
|
|
39
39
|
function FeedbackForm() {
|
|
@@ -18,11 +18,11 @@ var _flexBox = require("@semcore/flex-box");
|
|
|
18
18
|
var _react = _interopRequireDefault(require("react"));
|
|
19
19
|
var _excluded = ["styles", "id", "label", "type", "focused"];
|
|
20
20
|
/*!__reshadow-styles__:"../../style/checkbox-button.shadow.css"*/
|
|
21
|
-
var style = (/*__reshadow_css_start__*/_core.sstyled.insert(/*__inner_css_start__*/".
|
|
21
|
+
var style = (/*__reshadow_css_start__*/_core.sstyled.insert(/*__inner_css_start__*/".___SCheckboxButton_198cq_gg_{margin-top:var(--intergalactic-spacing-2x, 8px);border:1px solid var(--intergalactic-border-primary, #c4c7cf);border-radius:var(--intergalactic-rounded-medium, 6px)}.___SCheckboxButton_198cq_gg_ label{width:100%;padding:var(--intergalactic-spacing-3x, 12px);box-sizing:border-box}.___SCheckboxButton_198cq_gg_.__checked_198cq_gg_{cursor:pointer;border-color:var(--intergalactic-border-info-active, #006dca);background-color:rgba(0,143,248,.1)}@media (hover:hover){.___SCheckboxButton_198cq_gg_:hover{cursor:pointer;border-color:var(--intergalactic-border-info-active, #006dca);background-color:rgba(0,143,248,.1)}.___SCheckboxButton_198cq_gg_.__checked_198cq_gg_:hover{background-color:rgba(0,143,248,.2)}}", /*__inner_css_end__*/"198cq_gg_"),
|
|
22
22
|
/*__reshadow_css_end__*/
|
|
23
23
|
{
|
|
24
|
-
"__SCheckboxButton": "
|
|
25
|
-
"_checked": "
|
|
24
|
+
"__SCheckboxButton": "___SCheckboxButton_198cq_gg_",
|
|
25
|
+
"_checked": "__checked_198cq_gg_"
|
|
26
26
|
});
|
|
27
27
|
var CheckboxButtonRoot = /*#__PURE__*/function (_Component) {
|
|
28
28
|
function CheckboxButtonRoot() {
|
|
@@ -14,9 +14,9 @@ var _callSuper2 = _interopRequireDefault(require("@babel/runtime/helpers/callSup
|
|
|
14
14
|
var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
|
|
15
15
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
16
16
|
var _core = require("@semcore/core");
|
|
17
|
+
var _baseComponents = require("@semcore/base-components");
|
|
17
18
|
var _i18nEnhance = _interopRequireDefault(require("@semcore/core/lib/utils/enhances/i18nEnhance"));
|
|
18
19
|
var _uniqueID = _interopRequireDefault(require("@semcore/core/lib/utils/uniqueID"));
|
|
19
|
-
var _flexBox = require("@semcore/flex-box");
|
|
20
20
|
var _m = _interopRequireDefault(require("@semcore/icon/Check/m"));
|
|
21
21
|
var _m2 = _interopRequireDefault(require("@semcore/icon/Warning/m"));
|
|
22
22
|
var _Feedback = _interopRequireDefault(require("@semcore/illustration/Feedback"));
|
|
@@ -36,12 +36,13 @@ var _CheckboxButton = _interopRequireDefault(require("../checkbox-button/Checkbo
|
|
|
36
36
|
var _FeedbackItem = require("../feedback-item/FeedbackItem");
|
|
37
37
|
var _SliderRating = _interopRequireDefault(require("../slider-rating/SliderRating"));
|
|
38
38
|
var _SubmitButton = require("../submit-button/SubmitButton");
|
|
39
|
-
var _excluded = ["header", "submitText", "formConfig", "notificationText", "notificationTitle", "learnMoreLink", "Children", "styles", "forwardRef", "status", "theme", "background", "rating", "visible", "onVisibleChange", "notificationVisible", "onNotificationClose", "getI18nText", "errorFeedbackEmail", "modalWidth"];
|
|
39
|
+
var _excluded = ["header", "submitText", "formConfig", "notificationText", "notificationTitle", "learnMoreLink", "Children", "styles", "forwardRef", "status", "theme", "background", "rating", "visible", "onVisibleChange", "notificationVisible", "onNotificationClose", "getI18nText", "errorFeedbackEmail", "modalWidth", "Illustration", "Notice"];
|
|
40
40
|
/*!__reshadow-styles__:"../../style/feedback-rating.shadow.css"*/
|
|
41
|
-
var style = (/*__reshadow_css_start__*/_core.sstyled.insert(/*__inner_css_start__*/".
|
|
41
|
+
var style = (/*__reshadow_css_start__*/_core.sstyled.insert(/*__inner_css_start__*/".___SFeedbackRating_rhp4z_gg_ ul{margin:0;padding:0;list-style:none}.___SFeedbackRating_rhp4z_gg_ li{list-style:none}.___SFeedbackRating_rhp4z_gg_ .___SHeader_rhp4z_gg_{font-size:var(--intergalactic-fs-300, 16px);line-height:var(--intergalactic-lh-300, 150%);font-weight:var(--intergalactic-bold, 700);margin:var(--intergalactic-spacing-4x, 16px)0;text-align:center}", /*__inner_css_end__*/"rhp4z_gg_"),
|
|
42
42
|
/*__reshadow_css_end__*/
|
|
43
43
|
{
|
|
44
|
-
"__SFeedbackRating": "
|
|
44
|
+
"__SFeedbackRating": "___SFeedbackRating_rhp4z_gg_",
|
|
45
|
+
"__SHeader": "___SHeader_rhp4z_gg_"
|
|
45
46
|
});
|
|
46
47
|
var FeedbackRatingRoot = /*#__PURE__*/function (_Component) {
|
|
47
48
|
function FeedbackRatingRoot() {
|
|
@@ -96,9 +97,9 @@ var FeedbackRatingRoot = /*#__PURE__*/function (_Component) {
|
|
|
96
97
|
size: 200
|
|
97
98
|
}, config.label) : config.label;
|
|
98
99
|
var isDescriptionReactFragment = ((_config$description = config.description) === null || _config$description === void 0 ? void 0 : _config$description.type) === _react["default"].Fragment;
|
|
99
|
-
return /*#__PURE__*/_react["default"].createElement(
|
|
100
|
+
return /*#__PURE__*/_react["default"].createElement(_baseComponents.Flex, {
|
|
100
101
|
direction: "column"
|
|
101
|
-
}, /*#__PURE__*/_react["default"].createElement(
|
|
102
|
+
}, /*#__PURE__*/_react["default"].createElement(_baseComponents.Flex, {
|
|
102
103
|
tag: "label",
|
|
103
104
|
mt: 4,
|
|
104
105
|
htmlFor: config.key,
|
|
@@ -134,7 +135,7 @@ var FeedbackRatingRoot = /*#__PURE__*/function (_Component) {
|
|
|
134
135
|
})));
|
|
135
136
|
}
|
|
136
137
|
return null;
|
|
137
|
-
}), config.description && /*#__PURE__*/_react["default"].createElement(
|
|
138
|
+
}), config.description && /*#__PURE__*/_react["default"].createElement(_baseComponents.Box, {
|
|
138
139
|
mt: 2
|
|
139
140
|
}, typeof config.description === 'string' || isDescriptionReactFragment ? /*#__PURE__*/_react["default"].createElement(_typography.Text, {
|
|
140
141
|
size: 200,
|
|
@@ -230,6 +231,8 @@ var FeedbackRatingRoot = /*#__PURE__*/function (_Component) {
|
|
|
230
231
|
getI18nText = _this$asProps2.getI18nText,
|
|
231
232
|
errorFeedbackEmail = _this$asProps2.errorFeedbackEmail,
|
|
232
233
|
modalWidth = _this$asProps2.modalWidth,
|
|
234
|
+
Illustration = _this$asProps2.Illustration,
|
|
235
|
+
NoticeComponent = _this$asProps2.Notice,
|
|
233
236
|
other = (0, _objectWithoutProperties2["default"])(_this$asProps2, _excluded);
|
|
234
237
|
var SFeedbackRating = _modal["default"];
|
|
235
238
|
var checkboxFields = formConfig.filter(function (item) {
|
|
@@ -239,30 +242,29 @@ var FeedbackRatingRoot = /*#__PURE__*/function (_Component) {
|
|
|
239
242
|
return item.type === 'textarea' || item.type === 'input' || item.type === 'email';
|
|
240
243
|
});
|
|
241
244
|
var notificationId = this.getNoticeTextId();
|
|
242
|
-
return _ref4 = (0, _core.sstyled)(styles), /*#__PURE__*/_react["default"].createElement(
|
|
245
|
+
return _ref4 = (0, _core.sstyled)(styles), /*#__PURE__*/_react["default"].createElement(_baseComponents.Box, (0, _core.assignProps)({}, _ref2), /*#__PURE__*/_react["default"].createElement(NoticeComponent, _ref4.cn("NoticeComponent", {
|
|
243
246
|
"visible": notificationVisible,
|
|
244
247
|
"aria-label": getI18nText('leaveFeedback'),
|
|
245
|
-
"tag":
|
|
248
|
+
"tag": _baseComponents.Flex,
|
|
246
249
|
"alignItems": notificationTitle ? 'flex-start' : 'center'
|
|
247
|
-
}), /*#__PURE__*/_react["default"].createElement(
|
|
250
|
+
}), /*#__PURE__*/_react["default"].createElement(NoticeComponent.Label, {
|
|
248
251
|
mr: 3,
|
|
249
252
|
"aria-hidden": true
|
|
250
|
-
}, /*#__PURE__*/_react["default"].createElement(
|
|
251
|
-
|
|
253
|
+
}, /*#__PURE__*/_react["default"].createElement(Illustration, _ref4.cn("Illustration", {}))), /*#__PURE__*/_react["default"].createElement(NoticeComponent.Content, null, notificationTitle ? /*#__PURE__*/_react["default"].createElement(NoticeComponent.Title, null, notificationTitle) : null, /*#__PURE__*/_react["default"].createElement(NoticeComponent.Text, {
|
|
254
|
+
gap: 3,
|
|
255
|
+
tag: _baseComponents.Flex,
|
|
252
256
|
alignItems: notificationTitle ? 'flex-start' : 'center'
|
|
253
257
|
}, /*#__PURE__*/_react["default"].createElement(_typography.Text, _ref4.cn("Text", {
|
|
254
|
-
"mr": 3,
|
|
255
258
|
"id": notificationId
|
|
256
|
-
}), notificationText), /*#__PURE__*/_react["default"].createElement(
|
|
259
|
+
}), notificationText), /*#__PURE__*/_react["default"].createElement(NoticeComponent.Actions, {
|
|
257
260
|
mt: 0
|
|
258
261
|
}, /*#__PURE__*/_react["default"].createElement(_SliderRating["default"], _ref4.cn("SliderRating", {
|
|
259
262
|
"value": rating,
|
|
260
263
|
"onChange": this.handleChangeRating,
|
|
261
264
|
"aria-labelledby": notificationId
|
|
262
265
|
}))), learnMoreLink && /*#__PURE__*/_react["default"].createElement(_link["default"], _ref4.cn("Link", {
|
|
263
|
-
"ml": 3,
|
|
264
266
|
"href": learnMoreLink
|
|
265
|
-
}), getI18nText('learnMore')))), /*#__PURE__*/_react["default"].createElement(
|
|
267
|
+
}), getI18nText('learnMore')))), /*#__PURE__*/_react["default"].createElement(NoticeComponent.Close, {
|
|
266
268
|
onClick: onNotificationClose
|
|
267
269
|
})), /*#__PURE__*/_react["default"].createElement(SFeedbackRating, _ref4.cn("SFeedbackRating", (0, _objectSpread2["default"])({}, (0, _core.assignProps)({
|
|
268
270
|
"visible": visible,
|
|
@@ -281,12 +283,12 @@ var FeedbackRatingRoot = /*#__PURE__*/function (_Component) {
|
|
|
281
283
|
"loading": status !== 'loading' ? api.submitting : status === 'loading',
|
|
282
284
|
"p": 1,
|
|
283
285
|
"m": 9
|
|
284
|
-
}), /*#__PURE__*/_react["default"].createElement(
|
|
286
|
+
}), /*#__PURE__*/_react["default"].createElement(_baseComponents.Flex, _ref5.cn("Flex", {
|
|
285
287
|
"justifyContent": 'center'
|
|
286
288
|
}), /*#__PURE__*/_react["default"].createElement(_SliderRating["default"], _ref5.cn("SliderRating", {
|
|
287
289
|
"value": rating,
|
|
288
290
|
"readonly": true
|
|
289
|
-
}))), (header === null || header === void 0 ? void 0 : header.type) === FeedbackRating.Header ? header : /*#__PURE__*/_react["default"].createElement(FeedbackRating.Header, null, header), /*#__PURE__*/_react["default"].createElement(
|
|
291
|
+
}))), (header === null || header === void 0 ? void 0 : header.type) === FeedbackRating.Header ? header : /*#__PURE__*/_react["default"].createElement(FeedbackRating.Header, null, header), /*#__PURE__*/_react["default"].createElement(_baseComponents.Box, _ref5.cn("Box", (0, _objectSpread2["default"])((0, _objectSpread2["default"])({
|
|
290
292
|
"tag": 'form',
|
|
291
293
|
"noValidate": true,
|
|
292
294
|
"method": 'POST',
|
|
@@ -308,7 +310,7 @@ var FeedbackRatingRoot = /*#__PURE__*/function (_Component) {
|
|
|
308
310
|
return _this3.renderCheckbox(formConfigItem, index);
|
|
309
311
|
})), textFields.map(function (formConfigItem) {
|
|
310
312
|
return _this3.renderTextField(formConfigItem);
|
|
311
|
-
}), _this3.state.error && /*#__PURE__*/_react["default"].createElement(_notice["default"], _ref5.cn("
|
|
313
|
+
}), _this3.state.error && /*#__PURE__*/_react["default"].createElement(_notice["default"], _ref5.cn("SemcoreNotice", {
|
|
312
314
|
"theme": 'warning',
|
|
313
315
|
"mt": 4,
|
|
314
316
|
"mb": 4
|
|
@@ -318,7 +320,7 @@ var FeedbackRatingRoot = /*#__PURE__*/function (_Component) {
|
|
|
318
320
|
email: /*#__PURE__*/_react["default"].createElement(_link["default"], _ref5.cn("Link", {
|
|
319
321
|
"href": "mailto:".concat(errorFeedbackEmail)
|
|
320
322
|
}), errorFeedbackEmail)
|
|
321
|
-
}))), /*#__PURE__*/_react["default"].createElement(
|
|
323
|
+
}))), /*#__PURE__*/_react["default"].createElement(_baseComponents.Flex, _ref5.cn("Flex", {
|
|
322
324
|
"mt": 4,
|
|
323
325
|
"justifyContent": 'center'
|
|
324
326
|
}), /*#__PURE__*/_react["default"].createElement(FeedbackRating.Submit, {
|
|
@@ -337,7 +339,9 @@ var FeedbackRatingRoot = /*#__PURE__*/function (_Component) {
|
|
|
337
339
|
(0, _defineProperty2["default"])(FeedbackRatingRoot, "defaultProps", {
|
|
338
340
|
onSubmit: function onSubmit() {},
|
|
339
341
|
i18n: _intergalacticDynamicLocales.localizedMessages,
|
|
340
|
-
locale: 'en'
|
|
342
|
+
locale: 'en',
|
|
343
|
+
Illustration: _Feedback["default"],
|
|
344
|
+
Notice: _notice["default"]
|
|
341
345
|
});
|
|
342
346
|
(0, _defineProperty2["default"])(FeedbackRatingRoot, "validate", {
|
|
343
347
|
description: function description(error) {
|
|
@@ -363,14 +367,8 @@ function Header(props) {
|
|
|
363
367
|
var _ref3 = arguments[0],
|
|
364
368
|
_ref6;
|
|
365
369
|
var styles = props.styles;
|
|
366
|
-
var SHeader =
|
|
367
|
-
return _ref6 = (0, _core.sstyled)(styles), /*#__PURE__*/_react["default"].createElement(SHeader, _ref6.cn("SHeader", (0, _objectSpread2["default"])({}, (0, _core.assignProps)({
|
|
368
|
-
"size": 300,
|
|
369
|
-
"tag": 'h2',
|
|
370
|
-
"mb": 4,
|
|
371
|
-
"mt": 4,
|
|
372
|
-
"textAlign": 'center'
|
|
373
|
-
}, _ref3))));
|
|
370
|
+
var SHeader = _modal["default"].Title;
|
|
371
|
+
return _ref6 = (0, _core.sstyled)(styles), /*#__PURE__*/_react["default"].createElement(SHeader, _ref6.cn("SHeader", (0, _objectSpread2["default"])({}, (0, _core.assignProps)({}, _ref3))));
|
|
374
372
|
}
|
|
375
373
|
var FeedbackRating = (0, _core.createComponent)(FeedbackRatingRoot, {
|
|
376
374
|
Header: Header,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FeedbackRating.js","names":["_core","require","_i18nEnhance","_interopRequireDefault","_uniqueID","_flexBox","_m","_m2","_Feedback","_input","_link","_modal","_notice","_noticeBubble","_spinContainer","_textarea","_typography","_finalFormFocus","_react","_reactFinalForm","_intergalacticDynamicLocales","_CheckboxButton","_FeedbackItem","_SliderRating","_SubmitButton","_excluded","style","sstyled","insert","FeedbackRatingRoot","_Component","_this","_classCallCheck2","_len","arguments","length","args","Array","_key","_callSuper2","concat","_defineProperty2","error","NoticeBubbleManager","createFocusDecorator","rating","asProps","onVisibleChange","fn","_value","e","config","index","initialValue","props","initialValues","key","createElement","Field","name","type","_ref7","input","FeedbackRating","Checkbox","_extends2","id","label","onChange","_checked","focused","_config$description","Text","mb","size","isDescriptionReactFragment","description","React","Fragment","Flex","direction","tag","mt","htmlFor","Item","validate","placement","flip","fallbackPlacements","undefined","_ref8","h","handleChange","autoComplete","state","Value","Box","color","_inherits2","_createClass2","get","uid","value","getHeaderProps","headerId","getItemProps","validateOnBlur","getNoticeTextId","componentDidUpdate","prevProps","_this2","_this$asProps","status","getI18nText","setState","setTimeout","manager","add","icon","children","initialAnimation","duration","render","_ref","_ref2","_ref4","_this3","_this$asProps2","header","submitText","formConfig","notificationText","notificationTitle","learnMoreLink","_Children","Children","styles","forwardRef","theme","background","visible","_onVisibleChange","notificationVisible","onNotificationClose","errorFeedbackEmail","modalWidth","other","_objectWithoutProperties2","SFeedbackRating","Modal","checkboxFields","filter","item","textFields","notificationId","assignProps","cn","Label","mr","Content","Title","alignItems","Actions","handleChangeRating","Close","onClick","_objectSpread2","handelCloseModal","Form","focusDecorator","api","_ref5","submitting","Header","handleSubmit","_ref9","map","formConfigItem","renderCheckbox","renderTextField","email","Submit","loading","NoticeBubbleContainer","Component","i18nEnhance","localizedMessages","uniqueIDEnhancement","onSubmit","i18n","locale","words","split","symbols","join","Boolean","test","String","toLowerCase","_ref3","arguments[0]","_ref6","SHeader","createComponent","FeedbackItem","CheckboxButton","SubmitButton","_default","exports"],"sources":["../../../../src/component/feedback-rating/FeedbackRating.tsx"],"sourcesContent":["import { createComponent, Component, sstyled, Root } from '@semcore/core';\nimport i18nEnhance from '@semcore/core/lib/utils/enhances/i18nEnhance';\nimport uniqueIDEnhancement from '@semcore/core/lib/utils/uniqueID';\nimport { Box, Flex } from '@semcore/flex-box';\nimport CheckM from '@semcore/icon/Check/m';\nimport WarnM from '@semcore/icon/Warning/m';\nimport FeedbackIllustration from '@semcore/illustration/Feedback';\nimport Input from '@semcore/input';\nimport Link from '@semcore/link';\nimport Modal from '@semcore/modal';\nimport Notice from '@semcore/notice';\nimport { NoticeBubbleContainer, NoticeBubbleManager } from '@semcore/notice-bubble';\nimport SpinContainer from '@semcore/spin-container';\nimport Textarea from '@semcore/textarea';\nimport { Text } from '@semcore/typography';\nimport createFocusDecorator from 'final-form-focus';\nimport React, { type ReactElement } from 'react';\nimport { Field, Form } from 'react-final-form';\n\nimport type { FeedbackRatingProps, FeedbackRatingType, FormConfigItem } from './FeedbackRating.type';\nimport style from '../../style/feedback-rating.shadow.css';\nimport { localizedMessages } from '../../translations/__intergalactic-dynamic-locales';\nimport CheckboxButton from '../checkbox-button/CheckboxButton';\nimport { FeedbackItem } from '../feedback-item/FeedbackItem';\nimport SliderRating from '../slider-rating/SliderRating';\nimport { SubmitButton } from '../submit-button/SubmitButton';\n\ntype State = {\n error: boolean;\n};\n\nclass FeedbackRatingRoot extends Component<\n FeedbackRatingProps,\n {},\n State,\n typeof FeedbackRatingRoot.enhance\n> {\n static displayName = 'FeedbackRatingForm';\n static style = style;\n\n static enhance = [i18nEnhance(localizedMessages), uniqueIDEnhancement()] as const;\n\n static defaultProps = {\n onSubmit: () => {},\n i18n: localizedMessages,\n locale: 'en',\n };\n\n static validate = {\n description: (error: Error | string) => (value = '') => {\n const words = value.split(/\\s+/);\n const symbols = words.join(' ');\n if (Boolean(value) && (symbols.length < 10 || words.length < 3)) {\n return error;\n }\n },\n email: (error: Error | string) => (value = '') => {\n if (Boolean(value) && !/.+@.+\\..+/i.test(String(value).toLowerCase())) {\n return error;\n }\n },\n };\n\n state: State = {\n error: false,\n };\n\n manager = new NoticeBubbleManager();\n\n private focusDecorator = createFocusDecorator<Record<string, any>>();\n\n get headerId() {\n const { uid } = this.asProps;\n\n return `${uid}-feedback-rating-header`;\n }\n\n getHeaderProps() {\n return {\n id: this.headerId,\n };\n }\n\n getItemProps() {\n const { validateOnBlur } = this.asProps;\n\n return {\n validateOnBlur,\n };\n }\n\n getNoticeTextId() {\n const { uid } = this.asProps;\n return `${uid}-feedback-rating-notice`;\n }\n\n handleChangeRating = (rating: number) => {\n if (rating > 0) {\n this.asProps.onVisibleChange(true, rating);\n }\n };\n\n handelCloseModal = () => {\n this.asProps.onVisibleChange(false, this.asProps.rating);\n };\n\n handleChange =\n (fn: (e: React.SyntheticEvent) => void) => (_value: any, e: React.SyntheticEvent) => {\n fn(e);\n };\n\n componentDidUpdate(prevProps: Readonly<FeedbackRatingProps>) {\n const { status, getI18nText } = this.asProps;\n\n if (prevProps.status !== status) {\n this.setState({ error: false });\n\n if (status === 'success') {\n // showing notice with delay for SR, less than 100ms is not enough\n setTimeout(() => {\n this.manager.add({\n icon: <CheckM color='green-400' />,\n children: getI18nText('successMessage'),\n initialAnimation: true,\n duration: 5000,\n });\n }, 300);\n } else if (status === 'error') {\n this.setState({ error: true });\n }\n }\n }\n\n renderCheckbox = (config: FormConfigItem, index: number) => {\n const initialValue = this.props.initialValues[config.key];\n\n return (\n <Field name={config.key} initialValue={initialValue} type='checkbox' key={config.key}>\n {({ input }) => (\n <FeedbackRating.Checkbox\n {...input}\n id={config.key}\n label={config.label}\n onChange={(_checked, e) => input.onChange(e)}\n focused={index === 0}\n />\n )}\n </Field>\n );\n };\n\n renderTextField = (config: FormConfigItem) => {\n const initialValue = this.props.initialValues[config.key];\n\n const label =\n typeof config.label === 'string'\n ? (\n <Text mb={2} size={200}>\n {config.label}\n </Text>\n )\n : (\n (config.label as unknown as JSX.Element)\n );\n\n const isDescriptionReactFragment =\n (config.description as ReactElement)?.type === React.Fragment;\n\n return (\n <Flex direction='column'>\n <Flex tag='label' mt={4} htmlFor={config.key} key={config.key}>\n {label}\n </Flex>\n\n <FeedbackRating.Item\n name={config.key}\n validate={config.validate}\n initialValue={initialValue}\n placement='left-start'\n flip={{\n fallbackPlacements: ['right-start', 'bottom'],\n }}\n aria-describedby={config.description ? config.key + '-description' : undefined}\n >\n {/* @ts-ignore */}\n {({ input }) => {\n if (config.type === 'textarea') {\n return (\n <Textarea\n {...input}\n h={80}\n onChange={this.handleChange(input.onChange)}\n id={config.key}\n />\n );\n }\n if (config.type === 'input' || config.type === 'email') {\n if (config.type === 'email') {\n input.autoComplete = 'email';\n input.type = 'email';\n }\n\n return (\n <Input state={input.state}>\n <Input.Value\n {...input}\n onChange={this.handleChange(input.onChange)}\n id={config.key}\n />\n </Input>\n );\n }\n return null;\n }}\n </FeedbackRating.Item>\n {config.description && (\n <Box mt={2}>\n {typeof config.description === 'string' || isDescriptionReactFragment\n ? (\n <Text size={200} color='text-secondary' id={config.key + '-description'}>\n {config.description}\n </Text>\n )\n : (\n config.description\n )}\n </Box>\n )}\n </Flex>\n );\n };\n\n render() {\n const {\n header,\n submitText,\n formConfig,\n notificationText,\n notificationTitle,\n learnMoreLink,\n Children: _Children,\n styles,\n forwardRef,\n status,\n theme,\n background,\n rating,\n visible,\n onVisibleChange: _onVisibleChange,\n notificationVisible,\n onNotificationClose,\n getI18nText,\n errorFeedbackEmail,\n modalWidth,\n ...other\n } = this.asProps;\n\n const SFeedbackRating = Root;\n const checkboxFields = formConfig.filter((item) => item.type === 'checkbox');\n const textFields = formConfig.filter(\n (item) => item.type === 'textarea' || item.type === 'input' || item.type === 'email',\n );\n const notificationId = this.getNoticeTextId();\n\n return sstyled(styles)(\n <Root render={Box}>\n <Notice\n visible={notificationVisible}\n aria-label={getI18nText('leaveFeedback')}\n tag={Flex}\n alignItems={notificationTitle ? 'flex-start' : 'center'}\n >\n <Notice.Label mr={3} aria-hidden={true}>\n <FeedbackIllustration />\n </Notice.Label>\n <Notice.Content>\n {notificationTitle ? <Notice.Title>{notificationTitle}</Notice.Title> : null}\n <Notice.Text tag={Flex} alignItems={notificationTitle ? 'flex-start' : 'center'}>\n <Text mr={3} id={notificationId}>\n {notificationText}\n </Text>\n <Notice.Actions mt={0}>\n <SliderRating\n value={rating}\n onChange={this.handleChangeRating}\n aria-labelledby={notificationId}\n />\n </Notice.Actions>\n {learnMoreLink && (\n <Link ml={3} href={learnMoreLink}>\n {getI18nText('learnMore')}\n </Link>\n )}\n </Notice.Text>\n </Notice.Content>\n <Notice.Close onClick={onNotificationClose} />\n </Notice>\n\n <SFeedbackRating\n render={Modal}\n visible={visible}\n onClose={this.handelCloseModal}\n p={0}\n use:w={modalWidth ?? 440}\n aria-labelledby={this.headerId}\n >\n <Form decorators={[this.focusDecorator]} {...other}>\n {(api) =>\n sstyled(styles)(\n <SpinContainer\n background={background}\n theme={theme}\n size='xl'\n loading={status !== 'loading' ? api.submitting : status === 'loading'}\n p={1}\n m={9}\n >\n <Flex justifyContent='center'>\n <SliderRating value={rating} readonly={true} />\n </Flex>\n\n {(header as ReactElement)?.type === FeedbackRating.Header\n ? (\n header\n )\n : (\n <FeedbackRating.Header>{header}</FeedbackRating.Header>\n )}\n\n <Box\n tag='form'\n noValidate\n method='POST'\n ref={forwardRef}\n {...other}\n onSubmit={api.handleSubmit}\n >\n <Field name='rating' initialValue={rating}>\n {({ input }) => <input {...input} type='hidden' />}\n </Field>\n\n <div role='group' aria-labelledby={this.headerId}>\n {checkboxFields.map((formConfigItem, index) =>\n this.renderCheckbox(formConfigItem, index),\n )}\n </div>\n\n {textFields.map((formConfigItem) => this.renderTextField(formConfigItem))}\n\n {this.state.error && (\n <Notice theme='warning' mt={4} mb={4}>\n <Notice.Label>\n <WarnM />\n </Notice.Label>\n <Notice.Content>\n {getI18nText('errorMessage', {\n // todo: Brauer Ilia - think how to fix type\n // @ts-ignore\n email: (\n <Link href={`mailto:${errorFeedbackEmail}`}>\n {errorFeedbackEmail}\n </Link>\n ),\n })}\n </Notice.Content>\n </Notice>\n )}\n\n <Flex mt={4} justifyContent='center'>\n <FeedbackRating.Submit\n loading={status !== 'loading' ? api.submitting : status === 'loading'}\n size='l'\n >\n {submitText ?? getI18nText('submitButton')}\n </FeedbackRating.Submit>\n </Flex>\n </Box>\n </SpinContainer>,\n )}\n </Form>\n </SFeedbackRating>\n\n <NoticeBubbleContainer manager={this.manager} />\n </Root>,\n );\n }\n}\n\nfunction Header(props: any) {\n const { styles } = props;\n const SHeader = Root;\n return sstyled(styles)(\n <SHeader render={Text} size={300} tag='h2' mb={4} mt={4} textAlign='center' />,\n );\n}\n\nconst FeedbackRating: typeof FeedbackRatingType & { validate: typeof FeedbackRatingRoot.validate } =\n createComponent(FeedbackRatingRoot, {\n Header,\n Item: FeedbackItem,\n Checkbox: CheckboxButton,\n Submit: SubmitButton,\n });\n\nexport default FeedbackRating;\n"],"mappings":";;;;;;;;;;;;;;;AAAA,IAAAA,KAAA,GAAAC,OAAA;AACA,IAAAC,YAAA,GAAAC,sBAAA,CAAAF,OAAA;AACA,IAAAG,SAAA,GAAAD,sBAAA,CAAAF,OAAA;AACA,IAAAI,QAAA,GAAAJ,OAAA;AACA,IAAAK,EAAA,GAAAH,sBAAA,CAAAF,OAAA;AACA,IAAAM,GAAA,GAAAJ,sBAAA,CAAAF,OAAA;AACA,IAAAO,SAAA,GAAAL,sBAAA,CAAAF,OAAA;AACA,IAAAQ,MAAA,GAAAN,sBAAA,CAAAF,OAAA;AACA,IAAAS,KAAA,GAAAP,sBAAA,CAAAF,OAAA;AACA,IAAAU,MAAA,GAAAR,sBAAA,CAAAF,OAAA;AACA,IAAAW,OAAA,GAAAT,sBAAA,CAAAF,OAAA;AACA,IAAAY,aAAA,GAAAZ,OAAA;AACA,IAAAa,cAAA,GAAAX,sBAAA,CAAAF,OAAA;AACA,IAAAc,SAAA,GAAAZ,sBAAA,CAAAF,OAAA;AACA,IAAAe,WAAA,GAAAf,OAAA;AACA,IAAAgB,eAAA,GAAAd,sBAAA,CAAAF,OAAA;AACA,IAAAiB,MAAA,GAAAf,sBAAA,CAAAF,OAAA;AACA,IAAAkB,eAAA,GAAAlB,OAAA;AAIA,IAAAmB,4BAAA,GAAAnB,OAAA;AACA,IAAAoB,eAAA,GAAAlB,sBAAA,CAAAF,OAAA;AACA,IAAAqB,aAAA,GAAArB,OAAA;AACA,IAAAsB,aAAA,GAAApB,sBAAA,CAAAF,OAAA;AACA,IAAAuB,aAAA,GAAAvB,OAAA;AAA6D,IAAAwB,SAAA;AAAA;AAAA,IAAAC,KAAA,8BAAA1B,KAAA,CAAA2B,OAAA,CAAAC,MAAA;AAAA;AAAA;EAAA;AAAA;AAAA,IAMvDC,kBAAkB,0BAAAC,UAAA;EAAA,SAAAD,mBAAA;IAAA,IAAAE,KAAA;IAAA,IAAAC,gBAAA,mBAAAH,kBAAA;IAAA,SAAAI,IAAA,GAAAC,SAAA,CAAAC,MAAA,EAAAC,IAAA,OAAAC,KAAA,CAAAJ,IAAA,GAAAK,IAAA,MAAAA,IAAA,GAAAL,IAAA,EAAAK,IAAA;MAAAF,IAAA,CAAAE,IAAA,IAAAJ,SAAA,CAAAI,IAAA;IAAA;IAAAP,KAAA,OAAAQ,WAAA,mBAAAV,kBAAA,KAAAW,MAAA,CAAAJ,IAAA;IAAA,IAAAK,gBAAA,aAAAV,KAAA,WAgCP;MACbW,KAAK,EAAE;IACT,CAAC;IAAA,IAAAD,gBAAA,aAAAV,KAAA,aAES,IAAIY,iCAAmB,CAAC,CAAC;IAAA,IAAAF,gBAAA,aAAAV,KAAA,oBAEV,IAAAa,0BAAoB,EAAsB,CAAC;IAAA,IAAAH,gBAAA,aAAAV,KAAA,wBA2B/C,UAACc,MAAc,EAAK;MACvC,IAAIA,MAAM,GAAG,CAAC,EAAE;QACdd,KAAA,CAAKe,OAAO,CAACC,eAAe,CAAC,IAAI,EAAEF,MAAM,CAAC;MAC5C;IACF,CAAC;IAAA,IAAAJ,gBAAA,aAAAV,KAAA,sBAEkB,YAAM;MACvBA,KAAA,CAAKe,OAAO,CAACC,eAAe,CAAC,KAAK,EAAEhB,KAAA,CAAKe,OAAO,CAACD,MAAM,CAAC;IAC1D,CAAC;IAAA,IAAAJ,gBAAA,aAAAV,KAAA,kBAGC,UAACiB,EAAqC;MAAA,OAAK,UAACC,MAAW,EAAEC,CAAuB,EAAK;QACnFF,EAAE,CAACE,CAAC,CAAC;MACP,CAAC;IAAA;IAAA,IAAAT,gBAAA,aAAAV,KAAA,oBAwBc,UAACoB,MAAsB,EAAEC,KAAa,EAAK;MAC1D,IAAMC,YAAY,GAAGtB,KAAA,CAAKuB,KAAK,CAACC,aAAa,CAACJ,MAAM,CAACK,GAAG,CAAC;MAEzD,oBACEtC,MAAA,YAAAuC,aAAA,CAACtC,eAAA,CAAAuC,KAAK;QAACC,IAAI,EAAER,MAAM,CAACK,GAAI;QAACH,YAAY,EAAEA,YAAa;QAACO,IAAI,EAAC,UAAU;QAACJ,GAAG,EAAEL,MAAM,CAACK;MAAI,GAClF,UAAAK,KAAA;QAAA,IAAGC,KAAK,GAAAD,KAAA,CAALC,KAAK;QAAA,oBACP5C,MAAA,YAAAuC,aAAA,CAACM,cAAc,CAACC,QAAQ,MAAAC,SAAA,iBAClBH,KAAK;UACTI,EAAE,EAAEf,MAAM,CAACK,GAAI;UACfW,KAAK,EAAEhB,MAAM,CAACgB,KAAM;UACpBC,QAAQ,EAAE,SAAVA,QAAQA,CAAGC,QAAQ,EAAEnB,CAAC;YAAA,OAAKY,KAAK,CAACM,QAAQ,CAAClB,CAAC,CAAC;UAAA,CAAC;UAC7CoB,OAAO,EAAElB,KAAK,KAAK;QAAE,EACtB,CAAC;MAAA,CAEC,CAAC;IAEZ,CAAC;IAAA,IAAAX,gBAAA,aAAAV,KAAA,qBAEiB,UAACoB,MAAsB,EAAK;MAAA,IAAAoB,mBAAA;MAC5C,IAAMlB,YAAY,GAAGtB,KAAA,CAAKuB,KAAK,CAACC,aAAa,CAACJ,MAAM,CAACK,GAAG,CAAC;MAEzD,IAAMW,KAAK,GACT,OAAOhB,MAAM,CAACgB,KAAK,KAAK,QAAQ,gBAE1BjD,MAAA,YAAAuC,aAAA,CAACzC,WAAA,CAAAwD,IAAI;QAACC,EAAE,EAAE,CAAE;QAACC,IAAI,EAAE;MAAI,GACpBvB,MAAM,CAACgB,KACJ,CAAC,GAGNhB,MAAM,CAACgB,KACT;MAEP,IAAMQ,0BAA0B,GAC9B,EAAAJ,mBAAA,GAACpB,MAAM,CAACyB,WAAW,cAAAL,mBAAA,uBAAnBA,mBAAA,CAAsCX,IAAI,MAAKiB,iBAAK,CAACC,QAAQ;MAE/D,oBACE5D,MAAA,YAAAuC,aAAA,CAACpD,QAAA,CAAA0E,IAAI;QAACC,SAAS,EAAC;MAAQ,gBACtB9D,MAAA,YAAAuC,aAAA,CAACpD,QAAA,CAAA0E,IAAI;QAACE,GAAG,EAAC,OAAO;QAACC,EAAE,EAAE,CAAE;QAACC,OAAO,EAAEhC,MAAM,CAACK,GAAI;QAACA,GAAG,EAAEL,MAAM,CAACK;MAAI,GAC3DW,KACG,CAAC,eAEPjD,MAAA,YAAAuC,aAAA,CAACM,cAAc,CAACqB,IAAI;QAClBzB,IAAI,EAAER,MAAM,CAACK,GAAI;QACjB6B,QAAQ,EAAElC,MAAM,CAACkC,QAAS;QAC1BhC,YAAY,EAAEA,YAAa;QAC3BiC,SAAS,EAAC,YAAY;QACtBC,IAAI,EAAE;UACJC,kBAAkB,EAAE,CAAC,aAAa,EAAE,QAAQ;QAC9C,CAAE;QACF,oBAAkBrC,MAAM,CAACyB,WAAW,GAAGzB,MAAM,CAACK,GAAG,GAAG,cAAc,GAAGiC;MAAU,GAG9E,UAAAC,KAAA,EAAe;QAAA,IAAZ5B,KAAK,GAAA4B,KAAA,CAAL5B,KAAK;QACP,IAAIX,MAAM,CAACS,IAAI,KAAK,UAAU,EAAE;UAC9B,oBACE1C,MAAA,YAAAuC,aAAA,CAAC1C,SAAA,WAAQ,MAAAkD,SAAA,iBACHH,KAAK;YACT6B,CAAC,EAAE,EAAG;YACNvB,QAAQ,EAAErC,KAAA,CAAK6D,YAAY,CAAC9B,KAAK,CAACM,QAAQ,CAAE;YAC5CF,EAAE,EAAEf,MAAM,CAACK;UAAI,EAChB,CAAC;QAEN;QACA,IAAIL,MAAM,CAACS,IAAI,KAAK,OAAO,IAAIT,MAAM,CAACS,IAAI,KAAK,OAAO,EAAE;UACtD,IAAIT,MAAM,CAACS,IAAI,KAAK,OAAO,EAAE;YAC3BE,KAAK,CAAC+B,YAAY,GAAG,OAAO;YAC5B/B,KAAK,CAACF,IAAI,GAAG,OAAO;UACtB;UAEA,oBACE1C,MAAA,YAAAuC,aAAA,CAAChD,MAAA,WAAK;YAACqF,KAAK,EAAEhC,KAAK,CAACgC;UAAM,gBACxB5E,MAAA,YAAAuC,aAAA,CAAChD,MAAA,WAAK,CAACsF,KAAK,MAAA9B,SAAA,iBACNH,KAAK;YACTM,QAAQ,EAAErC,KAAA,CAAK6D,YAAY,CAAC9B,KAAK,CAACM,QAAQ,CAAE;YAC5CF,EAAE,EAAEf,MAAM,CAACK;UAAI,EAChB,CACI,CAAC;QAEZ;QACA,OAAO,IAAI;MACb,CACmB,CAAC,EACrBL,MAAM,CAACyB,WAAW,iBACjB1D,MAAA,YAAAuC,aAAA,CAACpD,QAAA,CAAA2F,GAAG;QAACd,EAAE,EAAE;MAAE,GACR,OAAO/B,MAAM,CAACyB,WAAW,KAAK,QAAQ,IAAID,0BAA0B,gBAE/DzD,MAAA,YAAAuC,aAAA,CAACzC,WAAA,CAAAwD,IAAI;QAACE,IAAI,EAAE,GAAI;QAACuB,KAAK,EAAC,gBAAgB;QAAC/B,EAAE,EAAEf,MAAM,CAACK,GAAG,GAAG;MAAe,GACrEL,MAAM,CAACyB,WACJ,CAAC,GAGPzB,MAAM,CAACyB,WAEV,CAEH,CAAC;IAEX,CAAC;IAAA,OAAA7C,KAAA;EAAA;EAAA,IAAAmE,UAAA,aAAArE,kBAAA,EAAAC,UAAA;EAAA,WAAAqE,aAAA,aAAAtE,kBAAA;IAAA2B,GAAA;IAAA4C,GAAA,EA/JD,SAAAA,IAAA,EAAe;MACb,IAAQC,GAAG,GAAK,IAAI,CAACvD,OAAO,CAApBuD,GAAG;MAEX,UAAA7D,MAAA,CAAU6D,GAAG;IACf;EAAC;IAAA7C,GAAA;IAAA8C,KAAA,EAED,SAAAC,cAAcA,CAAA,EAAG;MACf,OAAO;QACLrC,EAAE,EAAE,IAAI,CAACsC;MACX,CAAC;IACH;EAAC;IAAAhD,GAAA;IAAA8C,KAAA,EAED,SAAAG,YAAYA,CAAA,EAAG;MACb,IAAQC,cAAc,GAAK,IAAI,CAAC5D,OAAO,CAA/B4D,cAAc;MAEtB,OAAO;QACLA,cAAc,EAAdA;MACF,CAAC;IACH;EAAC;IAAAlD,GAAA;IAAA8C,KAAA,EAED,SAAAK,eAAeA,CAAA,EAAG;MAChB,IAAQN,GAAG,GAAK,IAAI,CAACvD,OAAO,CAApBuD,GAAG;MACX,UAAA7D,MAAA,CAAU6D,GAAG;IACf;EAAC;IAAA7C,GAAA;IAAA8C,KAAA,EAiBD,SAAAM,kBAAkBA,CAACC,SAAwC,EAAE;MAAA,IAAAC,MAAA;MAC3D,IAAAC,aAAA,GAAgC,IAAI,CAACjE,OAAO;QAApCkE,MAAM,GAAAD,aAAA,CAANC,MAAM;QAAEC,WAAW,GAAAF,aAAA,CAAXE,WAAW;MAE3B,IAAIJ,SAAS,CAACG,MAAM,KAAKA,MAAM,EAAE;QAC/B,IAAI,CAACE,QAAQ,CAAC;UAAExE,KAAK,EAAE;QAAM,CAAC,CAAC;QAE/B,IAAIsE,MAAM,KAAK,SAAS,EAAE;UACxB;UACAG,UAAU,CAAC,YAAM;YACfL,MAAI,CAACM,OAAO,CAACC,GAAG,CAAC;cACfC,IAAI,eAAEpG,MAAA,YAAAuC,aAAA,CAACnD,EAAA,WAAM;gBAAC2F,KAAK,EAAC;cAAW,CAAE,CAAC;cAClCsB,QAAQ,EAAEN,WAAW,CAAC,gBAAgB,CAAC;cACvCO,gBAAgB,EAAE,IAAI;cACtBC,QAAQ,EAAE;YACZ,CAAC,CAAC;UACJ,CAAC,EAAE,GAAG,CAAC;QACT,CAAC,MAAM,IAAIT,MAAM,KAAK,OAAO,EAAE;UAC7B,IAAI,CAACE,QAAQ,CAAC;YAAExE,KAAK,EAAE;UAAK,CAAC,CAAC;QAChC;MACF;IACF;EAAC;IAAAc,GAAA;IAAA8C,KAAA,EAqGD,SAAAoB,MAAMA,CAAA,EAAG;MAAA,IAAAC,IAAA,QAAA7E,OAAA;QAAA8E,KAAA,QAAA9E,OAAA;QAAA+E,KAAA;QAAAC,MAAA;MACP,IAAAC,cAAA,GAsBI,IAAI,CAACjF,OAAO;QArBdkF,MAAM,GAAAD,cAAA,CAANC,MAAM;QACNC,UAAU,GAAAF,cAAA,CAAVE,UAAU;QACVC,UAAU,GAAAH,cAAA,CAAVG,UAAU;QACVC,gBAAgB,GAAAJ,cAAA,CAAhBI,gBAAgB;QAChBC,iBAAiB,GAAAL,cAAA,CAAjBK,iBAAiB;QACjBC,aAAa,GAAAN,cAAA,CAAbM,aAAa;QACHC,SAAS,GAAAP,cAAA,CAAnBQ,QAAQ;QACRC,MAAM,GAAAT,cAAA,CAANS,MAAM;QACNC,UAAU,GAAAV,cAAA,CAAVU,UAAU;QACVzB,MAAM,GAAAe,cAAA,CAANf,MAAM;QACN0B,KAAK,GAAAX,cAAA,CAALW,KAAK;QACLC,UAAU,GAAAZ,cAAA,CAAVY,UAAU;QACV9F,MAAM,GAAAkF,cAAA,CAANlF,MAAM;QACN+F,OAAO,GAAAb,cAAA,CAAPa,OAAO;QACUC,gBAAgB,GAAAd,cAAA,CAAjChF,eAAe;QACf+F,mBAAmB,GAAAf,cAAA,CAAnBe,mBAAmB;QACnBC,mBAAmB,GAAAhB,cAAA,CAAnBgB,mBAAmB;QACnB9B,WAAW,GAAAc,cAAA,CAAXd,WAAW;QACX+B,kBAAkB,GAAAjB,cAAA,CAAlBiB,kBAAkB;QAClBC,UAAU,GAAAlB,cAAA,CAAVkB,UAAU;QACPC,KAAK,OAAAC,yBAAA,aAAApB,cAAA,EAAAtG,SAAA;MAGV,IAAM2H,eAAe,GA0CPC,iBAAK;MAzCnB,IAAMC,cAAc,GAAGpB,UAAU,CAACqB,MAAM,CAAC,UAACC,IAAI;QAAA,OAAKA,IAAI,CAAC5F,IAAI,KAAK,UAAU;MAAA,EAAC;MAC5E,IAAM6F,UAAU,GAAGvB,UAAU,CAACqB,MAAM,CAClC,UAACC,IAAI;QAAA,OAAKA,IAAI,CAAC5F,IAAI,KAAK,UAAU,IAAI4F,IAAI,CAAC5F,IAAI,KAAK,OAAO,IAAI4F,IAAI,CAAC5F,IAAI,KAAK,OAAO;MAAA,CACtF,CAAC;MACD,IAAM8F,cAAc,GAAG,IAAI,CAAC/C,eAAe,CAAC,CAAC;MAE7C,OAAAkB,KAAA,GAAO,IAAAlG,aAAO,EAAC6G,MAAM,CAAC,eACpBtH,MAAA,YAAAuC,aAAA,CAAcuC,YAAG,MAAAhG,KAAA,CAAA2J,WAAA,MAAA/B,KAAA,gBACf1G,MAAA,YAAAuC,aAAA,CAAC7C,OAAA,WAAM,EAAAiH,KAAA,CAAA+B,EAAA;QAAA,WACId,mBAAmB;QAAA,cAChB7B,WAAW,CAAC,eAAe,CAAC;QAAA,OACnClC,aAAI;QAAA,cACGqD,iBAAiB,GAAG,YAAY,GAAG;MAAQ,iBAEvDlH,MAAA,YAAAuC,aAAA,CAAC7C,OAAA,WAAM,CAACiJ,KAAK;QAACC,EAAE,EAAE,CAAE;QAAC,eAAa;MAAK,gBACrC5I,MAAA,YAAAuC,aAAA,CAACjD,SAAA,WAAoB,EAAAqH,KAAA,CAAA+B,EAAA,4BAAE,CACX,CAAC,eACf1I,MAAA,YAAAuC,aAAA,CAAC7C,OAAA,WAAM,CAACmJ,OAAO,QACZ3B,iBAAiB,gBAAGlH,MAAA,YAAAuC,aAAA,CAAC7C,OAAA,WAAM,CAACoJ,KAAK,QAAE5B,iBAAgC,CAAC,GAAG,IAAI,eAC5ElH,MAAA,YAAAuC,aAAA,CAAC7C,OAAA,WAAM,CAAC4D,IAAI;QAACS,GAAG,EAAEF,aAAK;QAACkF,UAAU,EAAE7B,iBAAiB,GAAG,YAAY,GAAG;MAAS,gBAC9ElH,MAAA,YAAAuC,aAAA,CAACzC,WAAA,CAAAwD,IAAI,EAAAqD,KAAA,CAAA+B,EAAA;QAAA,MAAK,CAAC;QAAA,MAAMF;MAAc,IAC5BvB,gBACG,CAAC,eACPjH,MAAA,YAAAuC,aAAA,CAAC7C,OAAA,WAAM,CAACsJ,OAAO;QAAChF,EAAE,EAAE;MAAE,gBACpBhE,MAAA,YAAAuC,aAAA,CAAClC,aAAA,WAAY,EAAAsG,KAAA,CAAA+B,EAAA;QAAA,SACJ/G,MAAM;QAAA,YACH,IAAI,CAACsH,kBAAkB;QAAA,mBAChBT;MAAc,EAChC,CACa,CAAC,EAChBrB,aAAa,iBACZnH,MAAA,YAAAuC,aAAA,CAAC/C,KAAA,WAAI,EAAAmH,KAAA,CAAA+B,EAAA;QAAA,MAAK,CAAC;QAAA,QAAQvB;MAAa,IAC7BpB,WAAW,CAAC,WAAW,CACpB,CAEG,CACC,CAAC,eACjB/F,MAAA,YAAAuC,aAAA,CAAC7C,OAAA,WAAM,CAACwJ,KAAK;QAACC,OAAO,EAAEtB;MAAoB,CAAE,CACvC,CAAC,eAET7H,MAAA,YAAAuC,aAAA,CAAC2F,eAAe,EAAAvB,KAAA,CAAA+B,EAAA,wBAAAU,cAAA,qBAAAtK,KAAA,CAAA2J,WAAA;QAAA,WAELf,OAAO;QAAA,WACP,IAAI,CAAC2B,gBAAgB;QAAA,KAC3B,CAAC;QAAA,SACGtB,UAAU,aAAVA,UAAU,cAAVA,UAAU,GAAI,GAAG;QAAA,mBACP,IAAI,CAACzC;MAAQ,GAAAmB,IAAA,kBAE9BzG,MAAA,YAAAuC,aAAA,CAACtC,eAAA,CAAAqJ,IAAI,EAAA3C,KAAA,CAAA+B,EAAA,aAAAU,cAAA;QAAA,cAAa,CAAC,IAAI,CAACG,cAAc;MAAC,GAAMvB,KAAK,IAC/C,UAACwB,GAAG;QAAA,IAAAC,KAAA;QAAA,OAAAA,KAAA,GACH,IAAAhJ,aAAO,EAAC6G,MAAM,CAAC,eACbtH,MAAA,YAAAuC,aAAA,CAAC3C,cAAA,WAAa,EAAA6J,KAAA,CAAAf,EAAA;UAAA,cACAjB,UAAU;UAAA,SACfD,KAAK;UAAA,QACP,IAAI;UAAA,WACA1B,MAAM,KAAK,SAAS,GAAG0D,GAAG,CAACE,UAAU,GAAG5D,MAAM,KAAK,SAAS;UAAA,KAClE,CAAC;UAAA,KACD;QAAC,iBAEJ9F,MAAA,YAAAuC,aAAA,CAACpD,QAAA,CAAA0E,IAAI,EAAA4F,KAAA,CAAAf,EAAA;UAAA,kBAAgB;QAAQ,iBAC3B1I,MAAA,YAAAuC,aAAA,CAAClC,aAAA,WAAY,EAAAoJ,KAAA,CAAAf,EAAA;UAAA,SAAQ/G,MAAM;UAAA,YAAY;QAAI,EAAG,CAC1C,CAAC,EAEN,CAACmF,MAAM,aAANA,MAAM,uBAANA,MAAM,CAAmBpE,IAAI,MAAKG,cAAc,CAAC8G,MAAM,GAEnD7C,MAAM,gBAGN9G,MAAA,YAAAuC,aAAA,CAACM,cAAc,CAAC8G,MAAM,QAAE7C,MAA8B,CACvD,eAEL9G,MAAA,YAAAuC,aAAA,CAACpD,QAAA,CAAA2F,GAAG,EAAA2E,KAAA,CAAAf,EAAA,YAAAU,cAAA,iBAAAA,cAAA;UAAA,OACE,MAAM;UAAA;UAAA,UAEH,MAAM;UAAA,OACR7B;QAAU,GACXS,KAAK;UAAA,YACCwB,GAAG,CAACI;QAAY,kBAE1B5J,MAAA,YAAAuC,aAAA,CAACtC,eAAA,CAAAuC,KAAK,EAAAiH,KAAA,CAAAf,EAAA;UAAA,QAAM,QAAQ;UAAA,gBAAe/G;QAAM,IACtC,UAAAkI,KAAA;UAAA,IAAGjH,KAAK,GAAAiH,KAAA,CAALjH,KAAK;UAAA,oBAAO5C,MAAA,YAAAuC,aAAA,cAAAQ,SAAA,iBAAWH,KAAK;YAAEF,IAAI,EAAC;UAAQ,EAAE,CAAC;QAAA,CAC7C,CAAC,eAER1C,MAAA,YAAAuC,aAAA,QAAAkH,KAAA,CAAAf,EAAA;UAAA,QAAU,OAAO;UAAA,mBAAkB9B,MAAI,CAACtB;QAAQ,IAC7C8C,cAAc,CAAC0B,GAAG,CAAC,UAACC,cAAc,EAAE7H,KAAK;UAAA,OACxC0E,MAAI,CAACoD,cAAc,CAACD,cAAc,EAAE7H,KAAK,CAAC;QAAA,CAC5C,CACG,CAAC,EAELqG,UAAU,CAACuB,GAAG,CAAC,UAACC,cAAc;UAAA,OAAKnD,MAAI,CAACqD,eAAe,CAACF,cAAc,CAAC;QAAA,EAAC,EAExEnD,MAAI,CAAChC,KAAK,CAACpD,KAAK,iBACfxB,MAAA,YAAAuC,aAAA,CAAC7C,OAAA,WAAM,EAAA+J,KAAA,CAAAf,EAAA;UAAA,SAAO,SAAS;UAAA,MAAK,CAAC;UAAA,MAAM;QAAC,iBAClC1I,MAAA,YAAAuC,aAAA,CAAC7C,OAAA,WAAM,CAACiJ,KAAK,qBACX3I,MAAA,YAAAuC,aAAA,CAAClD,GAAA,WAAK,EAAAoK,KAAA,CAAAf,EAAA,aAAE,CACI,CAAC,eACf1I,MAAA,YAAAuC,aAAA,CAAC7C,OAAA,WAAM,CAACmJ,OAAO,QACZ9C,WAAW,CAAC,cAAc,EAAE;UAC3B;UACA;UACAmE,KAAK,eACHlK,MAAA,YAAAuC,aAAA,CAAC/C,KAAA,WAAI,EAAAiK,KAAA,CAAAf,EAAA;YAAA,kBAAApH,MAAA,CAAiBwG,kBAAkB;UAAA,IACrCA,kBACG;QAEV,CAAC,CACa,CACV,CACT,eAED9H,MAAA,YAAAuC,aAAA,CAACpD,QAAA,CAAA0E,IAAI,EAAA4F,KAAA,CAAAf,EAAA;UAAA,MAAK,CAAC;UAAA,kBAAiB;QAAQ,iBAClC1I,MAAA,YAAAuC,aAAA,CAACM,cAAc,CAACsH,MAAM;UACpBC,OAAO,EAAEtE,MAAM,KAAK,SAAS,GAAG0D,GAAG,CAACE,UAAU,GAAG5D,MAAM,KAAK,SAAU;UACtEtC,IAAI,EAAC;QAAG,GAEPuD,UAAU,aAAVA,UAAU,cAAVA,UAAU,GAAIhB,WAAW,CAAC,cAAc,CACpB,CACnB,CACH,CACQ,CAAC;MAAA,CAEhB,CACS,CAAC,eAElB/F,MAAA,YAAAuC,aAAA,CAAC5C,aAAA,CAAA0K,qBAAqB,EAAA1D,KAAA,CAAA+B,EAAA;QAAA,WAAU,IAAI,CAACxC;MAAO,EAAG,CAC3C,CAAC;IAEX;EAAC;AAAA,EAlW8BoE,eAAS;AAAA,IAAA/I,gBAAA,aAApCZ,kBAAkB,iBAMD,oBAAoB;AAAA,IAAAY,gBAAA,aANrCZ,kBAAkB,WAOPH,KAAK;AAAA,IAAAe,gBAAA,aAPhBZ,kBAAkB,aASL,CAAC,IAAA4J,uBAAW,EAACC,8CAAiB,CAAC,EAAE,IAAAC,oBAAmB,EAAC,CAAC,CAAC;AAAA,IAAAlJ,gBAAA,aATpEZ,kBAAkB,kBAWA;EACpB+J,QAAQ,EAAE,SAAVA,QAAQA,CAAA,EAAQ,CAAC,CAAC;EAClBC,IAAI,EAAEH,8CAAiB;EACvBI,MAAM,EAAE;AACV,CAAC;AAAA,IAAArJ,gBAAA,aAfGZ,kBAAkB,cAiBJ;EAChB+C,WAAW,EAAE,SAAbA,WAAWA,CAAGlC,KAAqB;IAAA,OAAK,YAAgB;MAAA,IAAf4D,KAAK,GAAApE,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAuD,SAAA,GAAAvD,SAAA,MAAG,EAAE;MACjD,IAAM6J,KAAK,GAAGzF,KAAK,CAAC0F,KAAK,CAAC,KAAK,CAAC;MAChC,IAAMC,OAAO,GAAGF,KAAK,CAACG,IAAI,CAAC,GAAG,CAAC;MAC/B,IAAIC,OAAO,CAAC7F,KAAK,CAAC,KAAK2F,OAAO,CAAC9J,MAAM,GAAG,EAAE,IAAI4J,KAAK,CAAC5J,MAAM,GAAG,CAAC,CAAC,EAAE;QAC/D,OAAOO,KAAK;MACd;IACF,CAAC;EAAA;EACD0I,KAAK,EAAE,SAAPA,KAAKA,CAAG1I,KAAqB;IAAA,OAAK,YAAgB;MAAA,IAAf4D,KAAK,GAAApE,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAuD,SAAA,GAAAvD,SAAA,MAAG,EAAE;MAC3C,IAAIiK,OAAO,CAAC7F,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC8F,IAAI,CAACC,MAAM,CAAC/F,KAAK,CAAC,CAACgG,WAAW,CAAC,CAAC,CAAC,EAAE;QACrE,OAAO5J,KAAK;MACd;IACF,CAAC;EAAA;AACH,CAAC;AAuUH,SAASmI,MAAMA,CAACvH,KAAU,EAAE;EAAA,IAAAiJ,KAAA,GAAAC,YAAA;IAAAC,KAAA;EAC1B,IAAQjE,MAAM,GAAKlF,KAAK,CAAhBkF,MAAM;EACd,IAAMkE,OAAO,GAEMlI,gBAAI;EADvB,OAAAiI,KAAA,GAAO,IAAA9K,aAAO,EAAC6G,MAAM,CAAC,eACpBtH,MAAA,YAAAuC,aAAA,CAACiJ,OAAO,EAAAD,KAAA,CAAA7C,EAAA,gBAAAU,cAAA,qBAAAtK,KAAA,CAAA2J,WAAA;IAAA,QAAqB,GAAG;IAAA,OAAM,IAAI;IAAA,MAAK,CAAC;IAAA,MAAM,CAAC;IAAA,aAAY;EAAQ,GAAA4C,KAAA,GAAE,CAAC;AAElF;AAEA,IAAMxI,cAA4F,GAChG,IAAA4I,qBAAe,EAAC9K,kBAAkB,EAAE;EAClCgJ,MAAM,EAANA,MAAM;EACNzF,IAAI,EAAEwH,0BAAY;EAClB5I,QAAQ,EAAE6I,0BAAc;EACxBxB,MAAM,EAAEyB;AACV,CAAC,CAAC;AAAC,IAAAC,QAAA,GAAAC,OAAA,cAEUjJ,cAAc","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"FeedbackRating.js","names":["_core","require","_baseComponents","_i18nEnhance","_interopRequireDefault","_uniqueID","_m","_m2","_Feedback","_input","_link","_modal","_notice","_noticeBubble","_spinContainer","_textarea","_typography","_finalFormFocus","_react","_reactFinalForm","_intergalacticDynamicLocales","_CheckboxButton","_FeedbackItem","_SliderRating","_SubmitButton","_excluded","style","sstyled","insert","FeedbackRatingRoot","_Component","_this","_classCallCheck2","_len","arguments","length","args","Array","_key","_callSuper2","concat","_defineProperty2","error","NoticeBubbleManager","createFocusDecorator","rating","asProps","onVisibleChange","fn","_value","e","config","index","initialValue","props","initialValues","key","createElement","Field","name","type","_ref7","input","FeedbackRating","Checkbox","_extends2","id","label","onChange","_checked","focused","_config$description","Text","mb","size","isDescriptionReactFragment","description","React","Fragment","Flex","direction","tag","mt","htmlFor","Item","validate","placement","flip","fallbackPlacements","undefined","_ref8","h","handleChange","autoComplete","state","Value","Box","color","_inherits2","_createClass2","get","uid","value","getHeaderProps","headerId","getItemProps","validateOnBlur","getNoticeTextId","componentDidUpdate","prevProps","_this2","_this$asProps","status","getI18nText","setState","setTimeout","manager","add","icon","children","initialAnimation","duration","render","_ref","_ref2","_ref4","_this3","_this$asProps2","header","submitText","formConfig","notificationText","notificationTitle","learnMoreLink","_Children","Children","styles","forwardRef","theme","background","visible","_onVisibleChange","notificationVisible","onNotificationClose","errorFeedbackEmail","modalWidth","Illustration","NoticeComponent","Notice","other","_objectWithoutProperties2","SFeedbackRating","Modal","checkboxFields","filter","item","textFields","notificationId","assignProps","cn","Label","mr","Content","Title","gap","alignItems","Actions","handleChangeRating","Close","onClick","_objectSpread2","handelCloseModal","Form","focusDecorator","api","_ref5","submitting","Header","handleSubmit","_ref9","map","formConfigItem","renderCheckbox","renderTextField","email","Submit","loading","NoticeBubbleContainer","Component","i18nEnhance","localizedMessages","uniqueIDEnhancement","onSubmit","i18n","locale","FeedbackIllustration","SemcoreNotice","words","split","symbols","join","Boolean","test","String","toLowerCase","_ref3","arguments[0]","_ref6","SHeader","createComponent","FeedbackItem","CheckboxButton","SubmitButton","_default","exports"],"sources":["../../../../src/component/feedback-rating/FeedbackRating.tsx"],"sourcesContent":["import { Box, Flex } from '@semcore/base-components';\nimport type { Intergalactic } from '@semcore/core';\nimport { createComponent, Component, sstyled, Root } from '@semcore/core';\nimport i18nEnhance from '@semcore/core/lib/utils/enhances/i18nEnhance';\nimport uniqueIDEnhancement from '@semcore/core/lib/utils/uniqueID';\nimport CheckM from '@semcore/icon/Check/m';\nimport WarnM from '@semcore/icon/Warning/m';\nimport FeedbackIllustration from '@semcore/illustration/Feedback';\nimport Input from '@semcore/input';\nimport Link from '@semcore/link';\nimport Modal from '@semcore/modal';\nimport { default as SemcoreNotice } from '@semcore/notice';\nimport { NoticeBubbleContainer, NoticeBubbleManager } from '@semcore/notice-bubble';\nimport SpinContainer from '@semcore/spin-container';\nimport Textarea from '@semcore/textarea';\nimport { Text } from '@semcore/typography';\nimport createFocusDecorator from 'final-form-focus';\nimport React, { type ReactElement } from 'react';\nimport { Field, Form } from 'react-final-form';\n\nimport type { FeedbackRatingProps, FeedbackRatingType, FormConfigItem } from './FeedbackRating.type';\nimport style from '../../style/feedback-rating.shadow.css';\nimport { localizedMessages } from '../../translations/__intergalactic-dynamic-locales';\nimport CheckboxButton from '../checkbox-button/CheckboxButton';\nimport { FeedbackItem } from '../feedback-item/FeedbackItem';\nimport SliderRating from '../slider-rating/SliderRating';\nimport { SubmitButton } from '../submit-button/SubmitButton';\n\ntype State = {\n error: boolean;\n};\n\nclass FeedbackRatingRoot extends Component<\n FeedbackRatingProps,\n {},\n State,\n typeof FeedbackRatingRoot.enhance,\n typeof FeedbackRatingRoot.defaultProps\n> {\n static displayName = 'FeedbackRatingForm';\n static style = style;\n\n static enhance = [i18nEnhance(localizedMessages), uniqueIDEnhancement()] as const;\n\n static defaultProps = {\n onSubmit: () => {},\n i18n: localizedMessages,\n locale: 'en',\n Illustration: FeedbackIllustration,\n Notice: SemcoreNotice,\n };\n\n static validate = {\n description: (error: Error | string) => (value = '') => {\n const words = value.split(/\\s+/);\n const symbols = words.join(' ');\n if (Boolean(value) && (symbols.length < 10 || words.length < 3)) {\n return error;\n }\n },\n email: (error: Error | string) => (value = '') => {\n if (Boolean(value) && !/.+@.+\\..+/i.test(String(value).toLowerCase())) {\n return error;\n }\n },\n };\n\n state: State = {\n error: false,\n };\n\n manager = new NoticeBubbleManager();\n\n private focusDecorator = createFocusDecorator<Record<string, any>>();\n\n get headerId() {\n const { uid } = this.asProps;\n\n return `${uid}-feedback-rating-header`;\n }\n\n getHeaderProps() {\n return {\n id: this.headerId,\n };\n }\n\n getItemProps() {\n const { validateOnBlur } = this.asProps;\n\n return {\n validateOnBlur,\n };\n }\n\n getNoticeTextId() {\n const { uid } = this.asProps;\n return `${uid}-feedback-rating-notice`;\n }\n\n handleChangeRating = (rating: number) => {\n if (rating > 0) {\n this.asProps.onVisibleChange(true, rating);\n }\n };\n\n handelCloseModal = () => {\n this.asProps.onVisibleChange(false, this.asProps.rating);\n };\n\n handleChange =\n (fn: (e: React.SyntheticEvent) => void) => (_value: any, e: React.SyntheticEvent) => {\n fn(e);\n };\n\n componentDidUpdate(prevProps: Readonly<FeedbackRatingProps>) {\n const { status, getI18nText } = this.asProps;\n\n if (prevProps.status !== status) {\n this.setState({ error: false });\n\n if (status === 'success') {\n // showing notice with delay for SR, less than 100ms is not enough\n setTimeout(() => {\n this.manager.add({\n icon: <CheckM color='green-400' />,\n children: getI18nText('successMessage'),\n initialAnimation: true,\n duration: 5000,\n });\n }, 300);\n } else if (status === 'error') {\n this.setState({ error: true });\n }\n }\n }\n\n renderCheckbox = (config: FormConfigItem, index: number) => {\n const initialValue = this.props.initialValues[config.key];\n\n return (\n <Field name={config.key} initialValue={initialValue} type='checkbox' key={config.key}>\n {({ input }) => (\n <FeedbackRating.Checkbox\n {...input}\n id={config.key}\n label={config.label}\n onChange={(_checked, e) => input.onChange(e)}\n focused={index === 0}\n />\n )}\n </Field>\n );\n };\n\n renderTextField = (config: FormConfigItem) => {\n const initialValue = this.props.initialValues[config.key];\n\n const label =\n typeof config.label === 'string'\n ? (\n <Text mb={2} size={200}>\n {config.label}\n </Text>\n )\n : (\n (config.label as unknown as JSX.Element)\n );\n\n const isDescriptionReactFragment =\n (config.description as ReactElement)?.type === React.Fragment;\n\n return (\n <Flex direction='column'>\n <Flex tag='label' mt={4} htmlFor={config.key} key={config.key}>\n {label}\n </Flex>\n\n <FeedbackRating.Item\n name={config.key}\n validate={config.validate}\n initialValue={initialValue}\n placement='left-start'\n flip={{\n fallbackPlacements: ['right-start', 'bottom'],\n }}\n aria-describedby={config.description ? config.key + '-description' : undefined}\n >\n {/* @ts-ignore */}\n {({ input }) => {\n if (config.type === 'textarea') {\n return (\n <Textarea\n {...input}\n h={80}\n onChange={this.handleChange(input.onChange)}\n id={config.key}\n />\n );\n }\n if (config.type === 'input' || config.type === 'email') {\n if (config.type === 'email') {\n input.autoComplete = 'email';\n input.type = 'email';\n }\n\n return (\n <Input state={input.state}>\n <Input.Value\n {...input}\n onChange={this.handleChange(input.onChange)}\n id={config.key}\n />\n </Input>\n );\n }\n return null;\n }}\n </FeedbackRating.Item>\n {config.description && (\n <Box mt={2}>\n {typeof config.description === 'string' || isDescriptionReactFragment\n ? (\n <Text size={200} color='text-secondary' id={config.key + '-description'}>\n {config.description}\n </Text>\n )\n : (\n config.description\n )}\n </Box>\n )}\n </Flex>\n );\n };\n\n render() {\n const {\n header,\n submitText,\n formConfig,\n notificationText,\n notificationTitle,\n learnMoreLink,\n Children: _Children,\n styles,\n forwardRef,\n status,\n theme,\n background,\n rating,\n visible,\n onVisibleChange: _onVisibleChange,\n notificationVisible,\n onNotificationClose,\n getI18nText,\n errorFeedbackEmail,\n modalWidth,\n Illustration,\n Notice: NoticeComponent,\n ...other\n } = this.asProps;\n\n const SFeedbackRating = Root;\n const checkboxFields = formConfig.filter((item) => item.type === 'checkbox');\n const textFields = formConfig.filter(\n (item) => item.type === 'textarea' || item.type === 'input' || item.type === 'email',\n );\n const notificationId = this.getNoticeTextId();\n\n return sstyled(styles)(\n <Root render={Box}>\n <NoticeComponent\n visible={notificationVisible}\n aria-label={getI18nText('leaveFeedback')}\n tag={Flex}\n alignItems={notificationTitle ? 'flex-start' : 'center'}\n >\n <NoticeComponent.Label mr={3} aria-hidden={true}>\n <Illustration />\n </NoticeComponent.Label>\n <NoticeComponent.Content>\n {notificationTitle ? <NoticeComponent.Title>{notificationTitle}</NoticeComponent.Title> : null}\n <NoticeComponent.Text gap={3} tag={Flex} alignItems={notificationTitle ? 'flex-start' : 'center'}>\n <Text id={notificationId}>\n {notificationText}\n </Text>\n <NoticeComponent.Actions mt={0}>\n <SliderRating\n value={rating}\n onChange={this.handleChangeRating}\n aria-labelledby={notificationId}\n />\n </NoticeComponent.Actions>\n {learnMoreLink && (\n <Link href={learnMoreLink}>\n {getI18nText('learnMore')}\n </Link>\n )}\n </NoticeComponent.Text>\n </NoticeComponent.Content>\n <NoticeComponent.Close onClick={onNotificationClose} />\n </NoticeComponent>\n\n <SFeedbackRating\n render={Modal}\n visible={visible}\n onClose={this.handelCloseModal}\n p={0}\n use:w={modalWidth ?? 440}\n aria-labelledby={this.headerId}\n >\n <Form decorators={[this.focusDecorator]} {...other}>\n {(api) =>\n sstyled(styles)(\n <SpinContainer\n background={background}\n theme={theme}\n size='xl'\n loading={status !== 'loading' ? api.submitting : status === 'loading'}\n p={1}\n m={9}\n >\n <Flex justifyContent='center'>\n <SliderRating value={rating} readonly={true} />\n </Flex>\n\n {(header as ReactElement)?.type === FeedbackRating.Header\n ? (\n header\n )\n : (\n <FeedbackRating.Header>{header}</FeedbackRating.Header>\n )}\n\n <Box\n tag='form'\n noValidate\n method='POST'\n ref={forwardRef}\n {...other}\n onSubmit={api.handleSubmit}\n >\n <Field name='rating' initialValue={rating}>\n {({ input }) => <input {...input} type='hidden' />}\n </Field>\n\n <div role='group' aria-labelledby={this.headerId}>\n {checkboxFields.map((formConfigItem, index) =>\n this.renderCheckbox(formConfigItem, index),\n )}\n </div>\n\n {textFields.map((formConfigItem) => this.renderTextField(formConfigItem))}\n\n {this.state.error && (\n <SemcoreNotice theme='warning' mt={4} mb={4}>\n <SemcoreNotice.Label>\n <WarnM />\n </SemcoreNotice.Label>\n <SemcoreNotice.Content>\n {getI18nText('errorMessage', {\n // todo: Brauer Ilia - think how to fix type\n // @ts-ignore\n email: (\n <Link href={`mailto:${errorFeedbackEmail}`}>\n {errorFeedbackEmail}\n </Link>\n ),\n })}\n </SemcoreNotice.Content>\n </SemcoreNotice>\n )}\n\n <Flex mt={4} justifyContent='center'>\n <FeedbackRating.Submit\n loading={status !== 'loading' ? api.submitting : status === 'loading'}\n size='l'\n >\n {submitText ?? getI18nText('submitButton')}\n </FeedbackRating.Submit>\n </Flex>\n </Box>\n </SpinContainer>,\n )}\n </Form>\n </SFeedbackRating>\n\n <NoticeBubbleContainer manager={this.manager} />\n </Root>,\n );\n }\n}\n\nfunction Header(props: any) {\n const { styles } = props;\n const SHeader = Root;\n return sstyled(styles)(\n <SHeader render={Modal.Title} />,\n );\n}\n\nconst FeedbackRating: typeof FeedbackRatingType & { validate: typeof FeedbackRatingRoot.validate } =\n createComponent(FeedbackRatingRoot, {\n Header,\n Item: FeedbackItem,\n Checkbox: CheckboxButton,\n Submit: SubmitButton,\n });\n\nexport default FeedbackRating;\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FeedbackRating.type.js","names":[],"sources":["../../../../src/component/feedback-rating/FeedbackRating.type.ts"],"sourcesContent":["import type Button from '@semcore/button';\nimport type Checkbox from '@semcore/checkbox';\nimport type { CheckboxProps } from '@semcore/checkbox';\nimport type { Intergalactic } from '@semcore/core';\nimport type { Text } from '@semcore/typography';\nimport type React from 'react';\nimport type { FieldProps } from 'react-final-form';\n\nimport type { FeedbackFormProps } from '../../index';\n\nexport type FormConfigItem = {\n key: string;\n label: React.ReactNode;\n type: 'input' | 'checkbox' | 'textarea' | 'email';\n description?: React.ReactNode;\n validate?: (value: any) => Error | string | undefined;\n};\n\nexport type FeedbackRatingProps = Intergalactic.InternalTypings.EfficientOmit<\n FeedbackFormProps,\n 'initialValues' | 'loading'\n> & {\n /** Status of form */\n status: 'default' | 'success' | 'error' | 'loading';\n\n /** Flag for show/hide notification */\n notificationVisible: boolean;\n /** Notification close callback */\n onNotificationClose: () => void;\n /** Text in notification panel */\n notificationText: string;\n /** Title in notification panel */\n notificationTitle?: string;\n /** Optional link in notification panel */\n learnMoreLink?: string;\n /** Rating value */\n rating: number;\n /** Visible modal form flag */\n visible: boolean;\n /** Visibility changes callback */\n onVisibleChange: (visible: boolean, rating: number) => void;\n\n /** Width for modal with form */\n modalWidth?: number | string;\n\n /** Header of modal with form */\n header: React.ReactNode;\n /** Text for submit button of form */\n submitText?: string;\n /** Config for form fields */\n formConfig: FormConfigItem[];\n\n /** Initial form values including rating */\n initialValues: Record<string, any> & { rating: number };\n /** Email address shown in error messages */\n errorFeedbackEmail: string;\n /** Specifies the locale for i18n support */\n locale?: string;\n};\n\nexport type FeedbackRatingItemProps = FieldProps<any, any> & {\n /**\n * Allows to override which passed props will be passed to the Tooltip component.\n */\n tooltipProps?: string[];\n};\n\nexport type FeedbackRatingCheckboxProps = Omit<CheckboxProps, 'label'> & {\n focused: boolean;\n label: React.ReactNode;\n};\n\ndeclare const FeedbackRatingType: Intergalactic.Component<'form', FeedbackRatingProps> & {\n Item: Intergalactic.Component<'div', FeedbackRatingItemProps>;\n Submit: typeof Button;\n Checkbox: Intergalactic.Component<typeof Checkbox, FeedbackRatingCheckboxProps>;\n Header: typeof Text;\n};\n\nexport { FeedbackRatingType };\n"],"mappings":"","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"FeedbackRating.type.js","names":[],"sources":["../../../../src/component/feedback-rating/FeedbackRating.type.ts"],"sourcesContent":["import type Button from '@semcore/button';\nimport type Checkbox from '@semcore/checkbox';\nimport type { CheckboxProps } from '@semcore/checkbox';\nimport type { Intergalactic } from '@semcore/core';\nimport type { IllustrationProps } from '@semcore/illustration';\nimport type Notice from '@semcore/notice';\nimport type { Text } from '@semcore/typography';\nimport type React from 'react';\nimport type { FieldProps } from 'react-final-form';\n\nimport type { FeedbackFormProps } from '../../index';\n\nexport type FormConfigItem = {\n key: string;\n label: React.ReactNode;\n type: 'input' | 'checkbox' | 'textarea' | 'email';\n description?: React.ReactNode;\n validate?: (value: any) => Error | string | undefined;\n};\n\nexport type FeedbackRatingProps = Intergalactic.InternalTypings.EfficientOmit<\n FeedbackFormProps,\n 'initialValues' | 'loading'\n> & {\n /** Status of form */\n status: 'default' | 'success' | 'error' | 'loading';\n\n /** Flag for show/hide notification */\n notificationVisible: boolean;\n /** Notification close callback */\n onNotificationClose: () => void;\n /** Text in notification panel */\n notificationText: string;\n /** Title in notification panel */\n notificationTitle?: string;\n /** Optional link in notification panel */\n learnMoreLink?: string;\n /** Rating value */\n rating: number;\n /** Visible modal form flag */\n visible: boolean;\n /** Visibility changes callback */\n onVisibleChange: (visible: boolean, rating: number) => void;\n\n /** Width for modal with form */\n modalWidth?: number | string;\n\n /** Header of modal with form */\n header: React.ReactNode;\n /** Text for submit button of form */\n submitText?: string;\n /** Config for form fields */\n formConfig: FormConfigItem[];\n\n /** Initial form values including rating */\n initialValues: Record<string, any> & { rating: number };\n /** Email address shown in error messages */\n errorFeedbackEmail: string;\n /** Specifies the locale for i18n support */\n locale?: string;\n /** Illustration element */\n Illustration?: Intergalactic.Component<'svg', IllustrationProps>;\n /** Notice component */\n Notice?: typeof Notice;\n};\n\nexport type FeedbackRatingItemProps = FieldProps<any, any> & {\n /**\n * Allows to override which passed props will be passed to the Tooltip component.\n */\n tooltipProps?: string[];\n};\n\nexport type FeedbackRatingCheckboxProps = Omit<CheckboxProps, 'label'> & {\n focused: boolean;\n label: React.ReactNode;\n};\n\ndeclare const FeedbackRatingType: Intergalactic.Component<'form', FeedbackRatingProps> & {\n Item: Intergalactic.Component<'div', FeedbackRatingItemProps>;\n Submit: typeof Button;\n Checkbox: Intergalactic.Component<typeof Checkbox, FeedbackRatingCheckboxProps>;\n Header: typeof Text;\n};\n\nexport { FeedbackRatingType };\n"],"mappings":"","ignoreList":[]}
|
|
@@ -18,14 +18,14 @@ var _flexBox = require("@semcore/flex-box");
|
|
|
18
18
|
var _react = _interopRequireDefault(require("react"));
|
|
19
19
|
var _intergalacticDynamicLocales = require("../../translations/__intergalactic-dynamic-locales");
|
|
20
20
|
/*!__reshadow-styles__:"../../style/slider-rating.shadow.css"*/
|
|
21
|
-
var style = (/*__reshadow_css_start__*/_core.sstyled.insert(/*__inner_css_start__*/".
|
|
21
|
+
var style = (/*__reshadow_css_start__*/_core.sstyled.insert(/*__inner_css_start__*/".___SSliderRating_10obr_gg_ .___SStar_10obr_gg_{transition:all calc(var(--intergalactic-duration-control, 200)*1ms) ease-out}.___SSliderRating_10obr_gg_:focus-visible .___SStar_10obr_gg_.__hovered_10obr_gg_{cursor:pointer;transform:scale(1.3)}@media (hover:hover){.___SSliderRating_10obr_gg_ .___SStar_10obr_gg_:hover{cursor:pointer;transform:scale(1.3)}.___SSliderRating_10obr_gg_.__readonly_10obr_gg_ .___SStar_10obr_gg_:hover{cursor:default;transform:none;transition:none}}.___SStar_10obr_gg_.__filled_10obr_gg_:active{animation:wobble .8s ease-in-out}.___SStar_10obr_gg_ path{fill:var(--intergalactic-slider-rating-normal, #a9abb6)}.___SStar_10obr_gg_.__filled_10obr_gg_ path{stroke-width:0;fill:var(--intergalactic-slider-rating-hover-active, #fdc23c)}", /*__inner_css_end__*/"10obr_gg_"),
|
|
22
22
|
/*__reshadow_css_end__*/
|
|
23
23
|
{
|
|
24
|
-
"__SSliderRating": "
|
|
25
|
-
"__SStar": "
|
|
26
|
-
"_hovered": "
|
|
27
|
-
"_readonly": "
|
|
28
|
-
"_filled": "
|
|
24
|
+
"__SSliderRating": "___SSliderRating_10obr_gg_",
|
|
25
|
+
"__SStar": "___SStar_10obr_gg_",
|
|
26
|
+
"_hovered": "__hovered_10obr_gg_",
|
|
27
|
+
"_readonly": "__readonly_10obr_gg_",
|
|
28
|
+
"_filled": "__filled_10obr_gg_"
|
|
29
29
|
});
|
|
30
30
|
var MIN = 1;
|
|
31
31
|
var MAX = 5;
|
|
@@ -6,4 +6,12 @@ SFeedbackRating {
|
|
|
6
6
|
ul, li {
|
|
7
7
|
list-style: none;
|
|
8
8
|
}
|
|
9
|
+
|
|
10
|
+
SHeader {
|
|
11
|
+
font-size: var(--intergalactic-fs-300, 16px);
|
|
12
|
+
line-height: var(--intergalactic-lh-300, 150%);
|
|
13
|
+
font-weight: var(--intergalactic-bold, 700);
|
|
14
|
+
margin: var(--intergalactic-spacing-4x, 16px) 0;
|
|
15
|
+
text-align: center;
|
|
16
|
+
}
|
|
9
17
|
}
|
package/lib/es6/FeedbackForm.js
CHANGED
|
@@ -22,15 +22,15 @@ import { Field, Form } from 'react-final-form';
|
|
|
22
22
|
import { FeedbackItem } from './component/feedback-item/FeedbackItem';
|
|
23
23
|
import { SubmitButton } from './component/submit-button/SubmitButton';
|
|
24
24
|
/*!__reshadow-styles__:"./style/feedback-form.shadow.css"*/
|
|
25
|
-
var style = (/*__reshadow_css_start__*/_sstyled.insert(/*__inner_css_start__*/".
|
|
25
|
+
var style = (/*__reshadow_css_start__*/_sstyled.insert(/*__inner_css_start__*/".___SFeedbackForm_1pj7k_gg_{max-width:320px}.___SCancel_1pj7k_gg_,.___SSubmit_1pj7k_gg_{display:inline-flex;margin-right:var(--intergalactic-spacing-2x, 8px)}.___SNotice_1pj7k_gg_{padding:var(--intergalactic-spacing-3x, 12px) var(--intergalactic-spacing-4x, 16px);border-width:1px 0 0;border-top-style:solid;border-radius:0 0 var(--intergalactic-surface-rounded, 6px) var(--intergalactic-surface-rounded, 6px)}.___SSuccess_1pj7k_gg_{display:flex;align-items:center;flex-direction:column;width:320px;padding:var(--intergalactic-spacing-10x, 40px);box-sizing:border-box;outline:0}.___SEmail_1pj7k_gg_{margin-bottom:calc(var(--intergalactic-spacing-4x, 16px));width:80px;height:80px;background-image:url(\"data:image/svg+xml,%3Csvg width='80' height='80' viewBox='0 0 80 80' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M28.1632 6.00003C27.9554 5.99875 27.7493 6.03875 27.5571 6.11772C27.3648 6.19668 27.1902 6.31304 27.0432 6.46003L14.1332 19.38C7.645 25.8687 4 34.669 4 43.845C4 53.0211 7.645 61.8213 14.1332 68.31C17.3463 71.5242 21.1611 74.0738 25.3597 75.8134C29.5583 77.5529 34.0585 78.4482 38.6032 78.4482C43.1479 78.4482 47.6481 77.5529 51.8467 75.8134C56.0454 74.0738 59.8602 71.5242 63.0732 68.31L75.9832 55.4C76.1316 55.2536 76.2495 55.0792 76.3301 54.887C76.4108 54.6948 76.4526 54.4885 76.4532 54.28V6.89003C76.4506 6.65307 76.3546 6.42671 76.1861 6.26009C76.0176 6.09346 75.7902 6.00002 75.5532 6.00003H28.1632Z' fill='%2345E0A8'/%3E%3Cpath d='M29 45.2852L29.2 45.6352C35.39 42.1852 53.39 31.9652 56.73 35.1052C55.6 32.0052 39.7 35.4352 29 45.2852Z' fill='white'/%3E%3Cpath d='M28.44 31.6343C26.63 37.6343 19.23 56.1043 15 61.9443L18 62.8543L19.58 61.5343C23.8 51.9843 29.58 35.5343 29.89 30.0743C29.39 29.8143 28.93 30.2143 28.44 31.6343Z' fill='white'/%3E%3Cpath d='M15 62.0078C19.23 56.1678 26.63 37.7378 28.44 31.6678C30.25 25.5978 33.49 37.6678 31.67 42.7878' stroke='black' stroke-width='0.75' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M28 45.9424C38.68 35.5824 55.27 31.9424 56.43 35.1024C57.12 36.9924 43 41.3624 38.02 47.4224' stroke='black' stroke-width='0.75' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M44.45 21.93C41.21 20.77 35.86 19.04 33 18.24C37.12 16.41 70 4.24 72.67 3C71.75 7.11 67.75 21.28 65.96 27.93C61.13 26.25 56.23 24.78 53.03 23.74C51.0298 26.3907 49.2219 29.1812 47.62 32.09C46.44 28.23 45.29 23.77 44.45 21.93Z' fill='white' stroke='black' stroke-width='0.75' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M45 22.08L61.74 11' stroke='black' stroke-width='0.75' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M53 23.73L72.64 3' stroke='black' stroke-width='0.75' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M48 32.58L55.86 25' stroke='black' stroke-width='0.75' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M48.23 30.77L51.69 25.13L52.66 24L54.73 24.61L55.16 24.48L51.8 27.91L49.33 30.18L48 31.29L48.23 30.77Z' fill='black'/%3E%3Cpath d='M33.81 22L23 27.12' stroke='white' stroke-width='0.75' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M40.89 23L34 27.37' stroke='white' stroke-width='0.75' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M62.04 29L58 38.85' stroke='white' stroke-width='0.75' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M46.68 41C50.29 43.42 44.81 49.52 43 51.12' stroke='black' stroke-width='0.75' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M47.17 44C51.31 46.09 48.33 51.76 46 54.6' stroke='black' stroke-width='0.75' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M48.86 49C54.37 53.48 36.31 72.72 35 73.78' stroke='black' stroke-width='0.75' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cmask id='mask0_11950_117175' style='mask-type:alpha' maskUnits='userSpaceOnUse' x='4' y='6' width='73' height='73'%3E%3Cpath d='M28.1632 6.00003C27.9554 5.99875 27.7493 6.03875 27.5571 6.11772C27.3648 6.19668 27.1902 6.31304 27.0432 6.46003L14.1332 19.38C7.645 25.8687 4 34.669 4 43.845C4 53.0211 7.645 61.8213 14.1332 68.31C17.3463 71.5242 21.1611 74.0738 25.3597 75.8134C29.5583 77.5529 34.0585 78.4482 38.6032 78.4482C43.1479 78.4482 47.6481 77.5529 51.8467 75.8134C56.0454 74.0738 59.8602 71.5242 63.0732 68.31L75.9832 55.4C76.1316 55.2536 76.2495 55.0792 76.3301 54.887C76.4108 54.6948 76.4526 54.4885 76.4532 54.28V6.89003C76.4506 6.65307 76.3546 6.42671 76.1861 6.26009C76.0176 6.09346 75.7902 6.00002 75.5532 6.00003H28.1632Z' fill='%2345DFA7'/%3E%3C/mask%3E%3Cg mask='url(%23mask0_11950_117175)'%3E%3Cpath d='M5 74.6871C7.49 72.3471 13.24 63.6871 14.52 61.2471C28.18 59.1271 34.71 71.2471 34.98 74.7671C32.7234 79.651 30.1305 84.3723 27.22 88.8971' fill='black'/%3E%3Cpath d='M5 74.6871C7.49 72.3471 13.24 63.6871 14.52 61.2471C28.18 59.1271 34.71 71.2471 34.98 74.7671C32.7234 79.651 30.1305 84.3723 27.22 88.8971' stroke='black' stroke-width='0.75' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/g%3E%3C/svg%3E%0A\")}", /*__inner_css_end__*/"1pj7k_gg_"),
|
|
26
26
|
/*__reshadow_css_end__*/
|
|
27
27
|
{
|
|
28
|
-
"__SFeedbackForm": "
|
|
29
|
-
"__SSubmit": "
|
|
30
|
-
"__SCancel": "
|
|
31
|
-
"__SNotice": "
|
|
32
|
-
"__SSuccess": "
|
|
33
|
-
"__SEmail": "
|
|
28
|
+
"__SFeedbackForm": "___SFeedbackForm_1pj7k_gg_",
|
|
29
|
+
"__SSubmit": "___SSubmit_1pj7k_gg_",
|
|
30
|
+
"__SCancel": "___SCancel_1pj7k_gg_",
|
|
31
|
+
"__SNotice": "___SNotice_1pj7k_gg_",
|
|
32
|
+
"__SSuccess": "___SSuccess_1pj7k_gg_",
|
|
33
|
+
"__SEmail": "___SEmail_1pj7k_gg_"
|
|
34
34
|
});
|
|
35
35
|
var FeedbackForm = /*#__PURE__*/function (_Component) {
|
|
36
36
|
function FeedbackForm() {
|
|
@@ -13,11 +13,11 @@ import { createComponent, Component, Root, sstyled } from '@semcore/core';
|
|
|
13
13
|
import { Box } from '@semcore/flex-box';
|
|
14
14
|
import React from 'react';
|
|
15
15
|
/*!__reshadow-styles__:"../../style/checkbox-button.shadow.css"*/
|
|
16
|
-
var style = (/*__reshadow_css_start__*/_sstyled.insert(/*__inner_css_start__*/".
|
|
16
|
+
var style = (/*__reshadow_css_start__*/_sstyled.insert(/*__inner_css_start__*/".___SCheckboxButton_198cq_gg_{margin-top:var(--intergalactic-spacing-2x, 8px);border:1px solid var(--intergalactic-border-primary, #c4c7cf);border-radius:var(--intergalactic-rounded-medium, 6px)}.___SCheckboxButton_198cq_gg_ label{width:100%;padding:var(--intergalactic-spacing-3x, 12px);box-sizing:border-box}.___SCheckboxButton_198cq_gg_.__checked_198cq_gg_{cursor:pointer;border-color:var(--intergalactic-border-info-active, #006dca);background-color:rgba(0,143,248,.1)}@media (hover:hover){.___SCheckboxButton_198cq_gg_:hover{cursor:pointer;border-color:var(--intergalactic-border-info-active, #006dca);background-color:rgba(0,143,248,.1)}.___SCheckboxButton_198cq_gg_.__checked_198cq_gg_:hover{background-color:rgba(0,143,248,.2)}}", /*__inner_css_end__*/"198cq_gg_"),
|
|
17
17
|
/*__reshadow_css_end__*/
|
|
18
18
|
{
|
|
19
|
-
"__SCheckboxButton": "
|
|
20
|
-
"_checked": "
|
|
19
|
+
"__SCheckboxButton": "___SCheckboxButton_198cq_gg_",
|
|
20
|
+
"_checked": "__checked_198cq_gg_"
|
|
21
21
|
});
|
|
22
22
|
var CheckboxButtonRoot = /*#__PURE__*/function (_Component) {
|
|
23
23
|
function CheckboxButtonRoot() {
|