@salutejs/plasma-new-hope 0.166.0-canary.1475.11347015087.0 → 0.166.1-canary.1444.11348071542.0
Sign up to get free protection for your applications and to get access to all the features.
- package/cjs/components/Combobox/ComboboxNew/utils/filterItems.js +4 -5
- package/cjs/components/Combobox/ComboboxNew/utils/filterItems.js.map +1 -1
- package/cjs/components/DatePicker/RangeDate/RangeDate.css +1 -1
- package/cjs/components/DatePicker/RangeDate/RangeDate.js +15 -77
- package/cjs/components/DatePicker/RangeDate/RangeDate.js.map +1 -1
- package/cjs/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.js +7 -14
- package/cjs/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.js.map +1 -1
- package/cjs/components/DatePicker/RangeDate/variations/_size/base.js +1 -1
- package/cjs/components/DatePicker/RangeDate/variations/_size/base.js.map +1 -1
- package/cjs/components/DatePicker/RangeDate/variations/_size/base_1911nyw.css +1 -0
- package/cjs/components/DatePicker/SingleDate/SingleDate.js +8 -33
- package/cjs/components/DatePicker/SingleDate/SingleDate.js.map +1 -1
- package/cjs/components/DatePicker/hooks/useDatePicker.js +48 -20
- package/cjs/components/DatePicker/hooks/useDatePicker.js.map +1 -1
- package/cjs/components/DatePicker/hooks/useKeyboardNavigation.js +1 -11
- package/cjs/components/DatePicker/hooks/useKeyboardNavigation.js.map +1 -1
- package/cjs/components/DatePicker/utils/dateHelper.js +0 -31
- package/cjs/components/DatePicker/utils/dateHelper.js.map +1 -1
- package/cjs/components/TextArea/TextArea.js +13 -1
- package/cjs/components/TextArea/TextArea.js.map +1 -1
- package/cjs/index.css +1 -1
- package/emotion/cjs/components/Combobox/ComboboxNew/utils/filterItems.js +4 -5
- package/emotion/cjs/components/DatePicker/RangeDate/RangeDate.js +15 -77
- package/emotion/cjs/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.js +7 -14
- package/emotion/cjs/components/DatePicker/RangeDate/variations/_size/base.js +1 -1
- package/emotion/cjs/components/DatePicker/SingleDate/SingleDate.js +8 -33
- package/emotion/cjs/components/DatePicker/hooks/useDatePicker.js +48 -20
- package/emotion/cjs/components/DatePicker/hooks/useKeyboardNavigation.js +1 -11
- package/emotion/cjs/components/DatePicker/utils/dateHelper.js +1 -31
- package/emotion/cjs/components/TextArea/TextArea.js +14 -2
- package/emotion/cjs/examples/plasma_b2c/components/Combobox/Combobox.js +2 -1
- package/emotion/cjs/examples/plasma_b2c/components/Combobox/Combobox.stories.tsx +0 -2
- package/emotion/cjs/examples/plasma_web/components/Combobox/Combobox.js +2 -1
- package/emotion/cjs/examples/plasma_web/components/Combobox/Combobox.stories.tsx +0 -2
- package/emotion/es/components/Combobox/ComboboxNew/utils/filterItems.js +4 -5
- package/emotion/es/components/DatePicker/RangeDate/RangeDate.js +17 -79
- package/emotion/es/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.js +7 -14
- package/emotion/es/components/DatePicker/RangeDate/variations/_size/base.js +1 -1
- package/emotion/es/components/DatePicker/SingleDate/SingleDate.js +9 -34
- package/emotion/es/components/DatePicker/hooks/useDatePicker.js +49 -21
- package/emotion/es/components/DatePicker/hooks/useKeyboardNavigation.js +1 -11
- package/emotion/es/components/DatePicker/utils/dateHelper.js +0 -30
- package/emotion/es/components/TextArea/TextArea.js +14 -2
- package/emotion/es/examples/plasma_b2c/components/Combobox/Combobox.js +2 -1
- package/emotion/es/examples/plasma_b2c/components/Combobox/Combobox.stories.tsx +0 -2
- package/emotion/es/examples/plasma_web/components/Combobox/Combobox.js +2 -1
- package/emotion/es/examples/plasma_web/components/Combobox/Combobox.stories.tsx +0 -2
- package/es/components/Combobox/ComboboxNew/utils/filterItems.js +4 -5
- package/es/components/Combobox/ComboboxNew/utils/filterItems.js.map +1 -1
- package/es/components/DatePicker/RangeDate/RangeDate.css +1 -1
- package/es/components/DatePicker/RangeDate/RangeDate.js +17 -79
- package/es/components/DatePicker/RangeDate/RangeDate.js.map +1 -1
- package/es/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.js +7 -14
- package/es/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.js.map +1 -1
- package/es/components/DatePicker/RangeDate/variations/_size/base.js +1 -1
- package/es/components/DatePicker/RangeDate/variations/_size/base.js.map +1 -1
- package/es/components/DatePicker/RangeDate/variations/_size/base_1911nyw.css +1 -0
- package/es/components/DatePicker/SingleDate/SingleDate.js +9 -34
- package/es/components/DatePicker/SingleDate/SingleDate.js.map +1 -1
- package/es/components/DatePicker/hooks/useDatePicker.js +49 -21
- package/es/components/DatePicker/hooks/useDatePicker.js.map +1 -1
- package/es/components/DatePicker/hooks/useKeyboardNavigation.js +1 -11
- package/es/components/DatePicker/hooks/useKeyboardNavigation.js.map +1 -1
- package/es/components/DatePicker/utils/dateHelper.js +1 -31
- package/es/components/DatePicker/utils/dateHelper.js.map +1 -1
- package/es/components/TextArea/TextArea.js +13 -1
- package/es/components/TextArea/TextArea.js.map +1 -1
- package/es/index.css +1 -1
- package/package.json +2 -2
- package/styled-components/cjs/components/Combobox/ComboboxNew/utils/filterItems.js +4 -5
- package/styled-components/cjs/components/DatePicker/RangeDate/RangeDate.js +15 -77
- package/styled-components/cjs/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.js +7 -14
- package/styled-components/cjs/components/DatePicker/RangeDate/variations/_size/base.js +1 -1
- package/styled-components/cjs/components/DatePicker/SingleDate/SingleDate.js +8 -33
- package/styled-components/cjs/components/DatePicker/hooks/useDatePicker.js +48 -20
- package/styled-components/cjs/components/DatePicker/hooks/useKeyboardNavigation.js +1 -11
- package/styled-components/cjs/components/DatePicker/utils/dateHelper.js +1 -31
- package/styled-components/cjs/components/TextArea/TextArea.js +13 -1
- package/styled-components/cjs/examples/plasma_b2c/components/Combobox/Combobox.js +2 -1
- package/styled-components/cjs/examples/plasma_b2c/components/Combobox/Combobox.stories.tsx +0 -2
- package/styled-components/cjs/examples/plasma_web/components/Combobox/Combobox.js +2 -1
- package/styled-components/cjs/examples/plasma_web/components/Combobox/Combobox.stories.tsx +0 -2
- package/styled-components/es/components/Combobox/ComboboxNew/utils/filterItems.js +4 -5
- package/styled-components/es/components/DatePicker/RangeDate/RangeDate.js +17 -79
- package/styled-components/es/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.js +7 -14
- package/styled-components/es/components/DatePicker/RangeDate/variations/_size/base.js +1 -1
- package/styled-components/es/components/DatePicker/SingleDate/SingleDate.js +9 -34
- package/styled-components/es/components/DatePicker/hooks/useDatePicker.js +49 -21
- package/styled-components/es/components/DatePicker/hooks/useKeyboardNavigation.js +1 -11
- package/styled-components/es/components/DatePicker/utils/dateHelper.js +0 -30
- package/styled-components/es/components/TextArea/TextArea.js +13 -1
- package/styled-components/es/examples/plasma_b2c/components/Combobox/Combobox.js +2 -1
- package/styled-components/es/examples/plasma_b2c/components/Combobox/Combobox.stories.tsx +0 -2
- package/styled-components/es/examples/plasma_web/components/Combobox/Combobox.js +2 -1
- package/styled-components/es/examples/plasma_web/components/Combobox/Combobox.stories.tsx +0 -2
- package/types/components/Combobox/ComboboxNew/Combobox.d.ts +2 -2
- package/types/components/Combobox/ComboboxNew/Combobox.d.ts.map +1 -1
- package/types/components/Combobox/ComboboxNew/Combobox.types.d.ts +6 -7
- package/types/components/Combobox/ComboboxNew/Combobox.types.d.ts.map +1 -1
- package/types/components/Combobox/ComboboxNew/index.d.ts +2 -0
- package/types/components/Combobox/ComboboxNew/index.d.ts.map +1 -1
- package/types/components/Combobox/ComboboxNew/utils/filterItems.d.ts +2 -2
- package/types/components/Combobox/ComboboxNew/utils/filterItems.d.ts.map +1 -1
- package/types/components/Combobox/index.d.ts +1 -0
- package/types/components/Combobox/index.d.ts.map +1 -1
- package/types/components/DatePicker/DatePickerBase.types.d.ts +6 -8
- package/types/components/DatePicker/DatePickerBase.types.d.ts.map +1 -1
- package/types/components/DatePicker/RangeDate/RangeDate.d.ts +10 -10
- package/types/components/DatePicker/RangeDate/RangeDate.d.ts.map +1 -1
- package/types/components/DatePicker/RangeDate/RangeDate.types.d.ts +6 -16
- package/types/components/DatePicker/RangeDate/RangeDate.types.d.ts.map +1 -1
- package/types/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.d.ts +1 -1
- package/types/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.d.ts.map +1 -1
- package/types/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.types.d.ts +1 -2
- package/types/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.types.d.ts.map +1 -1
- package/types/components/DatePicker/RangeDate/variations/_size/base.d.ts.map +1 -1
- package/types/components/DatePicker/SingleDate/SingleDate.d.ts +2 -2
- package/types/components/DatePicker/SingleDate/SingleDate.d.ts.map +1 -1
- package/types/components/DatePicker/SingleDate/SingleDate.types.d.ts +4 -14
- package/types/components/DatePicker/SingleDate/SingleDate.types.d.ts.map +1 -1
- package/types/components/DatePicker/hooks/useDatePicker.d.ts +3 -2
- package/types/components/DatePicker/hooks/useDatePicker.d.ts.map +1 -1
- package/types/components/DatePicker/hooks/useKeyboardNavigation.d.ts +1 -3
- package/types/components/DatePicker/hooks/useKeyboardNavigation.d.ts.map +1 -1
- package/types/components/DatePicker/utils/dateHelper.d.ts +0 -10
- package/types/components/DatePicker/utils/dateHelper.d.ts.map +1 -1
- package/types/components/Popover/Popover.types.d.ts +1 -1
- package/types/components/TextArea/TextArea.d.ts.map +1 -1
- package/types/examples/plasma_b2c/components/Combobox/Combobox.d.ts +332 -8
- package/types/examples/plasma_b2c/components/Combobox/Combobox.d.ts.map +1 -1
- package/types/examples/plasma_b2c/components/DatePicker/DatePicker.d.ts +6 -6
- package/types/examples/plasma_b2c/components/DatePicker/DatePicker.d.ts.map +1 -1
- package/types/examples/plasma_web/components/Combobox/Combobox.d.ts +332 -8
- package/types/examples/plasma_web/components/Combobox/Combobox.d.ts.map +1 -1
- package/types/examples/plasma_web/components/DatePicker/DatePicker.d.ts +6 -6
- package/types/examples/plasma_web/components/DatePicker/DatePicker.d.ts.map +1 -1
- package/cjs/components/DatePicker/RangeDate/variations/_size/base_1d0sbzw.css +0 -1
- package/es/components/DatePicker/RangeDate/variations/_size/base_1d0sbzw.css +0 -1
@@ -3,8 +3,7 @@ import { getPlacements } from '../../../../utils';
|
|
3
3
|
import { StyledPopover } from '../RangeDate.styles';
|
4
4
|
import { StyledCalendar, StyledCalendarDouble } from './RangeDatePopover.styles';
|
5
5
|
export var RangeDatePopover = function RangeDatePopover(_ref) {
|
6
|
-
var
|
7
|
-
target = _ref.target,
|
6
|
+
var target = _ref.target,
|
8
7
|
isOpen = _ref.isOpen,
|
9
8
|
opened = _ref.opened,
|
10
9
|
isDoubleCalendar = _ref.isDoubleCalendar,
|
@@ -20,10 +19,6 @@ export var RangeDatePopover = function RangeDatePopover(_ref) {
|
|
20
19
|
disabledQuarterList = _ref.disabledQuarterList,
|
21
20
|
eventYearList = _ref.eventYearList,
|
22
21
|
disabledYearList = _ref.disabledYearList,
|
23
|
-
_ref$frame = _ref.frame,
|
24
|
-
frame = _ref$frame === void 0 ? 'document' : _ref$frame,
|
25
|
-
_ref$usePortal = _ref.usePortal,
|
26
|
-
usePortal = _ref$usePortal === void 0 ? false : _ref$usePortal,
|
27
22
|
_ref$placement = _ref.placement,
|
28
23
|
placement = _ref$placement === void 0 ? ['top', 'bottom'] : _ref$placement,
|
29
24
|
_ref$closeOnOverlayCl = _ref.closeOnOverlayClick,
|
@@ -41,8 +36,7 @@ export var RangeDatePopover = function RangeDatePopover(_ref) {
|
|
41
36
|
if (isDoubleCalendar) {
|
42
37
|
return /*#__PURE__*/React.createElement(StyledPopover, {
|
43
38
|
opened: innerIsOpen,
|
44
|
-
|
45
|
-
usePortal: usePortal,
|
39
|
+
usePortal: false,
|
46
40
|
onToggle: onToggle,
|
47
41
|
offset: offset,
|
48
42
|
placement: getPlacements(placement),
|
@@ -51,7 +45,7 @@ export var RangeDatePopover = function RangeDatePopover(_ref) {
|
|
51
45
|
isFocusTrapped: false,
|
52
46
|
target: target,
|
53
47
|
preventOverflow: false
|
54
|
-
}, /*#__PURE__*/React.createElement(
|
48
|
+
}, /*#__PURE__*/React.createElement(StyledCalendarDouble, {
|
55
49
|
size: size,
|
56
50
|
value: calendarValue,
|
57
51
|
eventList: eventList,
|
@@ -68,12 +62,11 @@ export var RangeDatePopover = function RangeDatePopover(_ref) {
|
|
68
62
|
includeEdgeDates: includeEdgeDates,
|
69
63
|
onChangeValue: onChangeValue,
|
70
64
|
onChangeStartOfRange: onChangeStartOfRange
|
71
|
-
}))
|
65
|
+
}));
|
72
66
|
}
|
73
67
|
return /*#__PURE__*/React.createElement(StyledPopover, {
|
74
68
|
opened: innerIsOpen,
|
75
|
-
|
76
|
-
usePortal: usePortal,
|
69
|
+
usePortal: false,
|
77
70
|
onToggle: onToggle,
|
78
71
|
offset: offset,
|
79
72
|
placement: getPlacements(placement),
|
@@ -83,7 +76,7 @@ export var RangeDatePopover = function RangeDatePopover(_ref) {
|
|
83
76
|
target: target,
|
84
77
|
preventOverflow: false,
|
85
78
|
closeOnEsc: closeOnEsc
|
86
|
-
}, /*#__PURE__*/React.createElement(
|
79
|
+
}, /*#__PURE__*/React.createElement(StyledCalendar, {
|
87
80
|
size: size,
|
88
81
|
value: calendarValue,
|
89
82
|
eventList: eventList,
|
@@ -101,5 +94,5 @@ export var RangeDatePopover = function RangeDatePopover(_ref) {
|
|
101
94
|
includeEdgeDates: includeEdgeDates,
|
102
95
|
onChangeValue: onChangeValue,
|
103
96
|
onChangeStartOfRange: onChangeStartOfRange
|
104
|
-
}))
|
97
|
+
}));
|
105
98
|
};
|
@@ -1,4 +1,4 @@
|
|
1
1
|
import { css } from '@emotion/react';
|
2
2
|
import { tokens } from '../../../DatePicker.tokens';
|
3
3
|
import { StyledLabel, LeftHelper } from '../../RangeDate.styles';
|
4
|
-
export var base = /*#__PURE__*/css(StyledLabel, "{margin:var(", tokens.labelOffset, ");font-family:var(", tokens.labelFontFamily, ");font-size:var(", tokens.labelFontSize, ");font-style:var(", tokens.labelFontStyle, ");font-weight:var(", tokens.labelFontWeight, ");letter-spacing:var(", tokens.labelLetterSpacing, ");line-height:var(", tokens.labelLineHeight, ");}", LeftHelper, "{margin:var(", tokens.leftHelperOffset, ");font-family:var(", tokens.leftHelperFontFamily, ");font-size:var(", tokens.leftHelperFontSize, ");font-style:var(", tokens.leftHelperFontStyle, ");font-weight:var(", tokens.leftHelperFontWeight, ");letter-spacing:var(", tokens.leftHelperLetterSpacing, ");line-height:var(", tokens.leftHelperLineHeight, ");};label:plasma-new-hope__base;" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
4
|
+
export var base = /*#__PURE__*/css("width:var(", tokens.width, ");", StyledLabel, "{margin:var(", tokens.labelOffset, ");font-family:var(", tokens.labelFontFamily, ");font-size:var(", tokens.labelFontSize, ");font-style:var(", tokens.labelFontStyle, ");font-weight:var(", tokens.labelFontWeight, ");letter-spacing:var(", tokens.labelLetterSpacing, ");line-height:var(", tokens.labelLineHeight, ");}", LeftHelper, "{margin:var(", tokens.leftHelperOffset, ");font-family:var(", tokens.leftHelperFontFamily, ");font-size:var(", tokens.leftHelperFontSize, ");font-style:var(", tokens.leftHelperFontStyle, ");font-weight:var(", tokens.leftHelperFontWeight, ");letter-spacing:var(", tokens.leftHelperLetterSpacing, ");line-height:var(", tokens.leftHelperLineHeight, ");};label:plasma-new-hope__base;" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy1lbW90aW9uL2NvbXBvbmVudHMvRGF0ZVBpY2tlci9SYW5nZURhdGUvdmFyaWF0aW9ucy9fc2l6ZS9iYXNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUt1QiIsImZpbGUiOiIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMtZW1vdGlvbi9jb21wb25lbnRzL0RhdGVQaWNrZXIvUmFuZ2VEYXRlL3ZhcmlhdGlvbnMvX3NpemUvYmFzZS50cyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGNzcyB9IGZyb20gJ0BlbW90aW9uL3JlYWN0JztcblxuaW1wb3J0IHsgdG9rZW5zIH0gZnJvbSAnLi4vLi4vLi4vRGF0ZVBpY2tlci50b2tlbnMnO1xuaW1wb3J0IHsgU3R5bGVkTGFiZWwsIExlZnRIZWxwZXIgfSBmcm9tICcuLi8uLi9SYW5nZURhdGUuc3R5bGVzJztcblxuZXhwb3J0IGNvbnN0IGJhc2UgPSBjc3NgXG4gICAgd2lkdGg6IHZhcigke3Rva2Vucy53aWR0aH0pO1xuXG4gICAgJHtTdHlsZWRMYWJlbH0ge1xuICAgICAgICBtYXJnaW46IHZhcigke3Rva2Vucy5sYWJlbE9mZnNldH0pO1xuXG4gICAgICAgIGZvbnQtZmFtaWx5OiB2YXIoJHt0b2tlbnMubGFiZWxGb250RmFtaWx5fSk7XG4gICAgICAgIGZvbnQtc2l6ZTogdmFyKCR7dG9rZW5zLmxhYmVsRm9udFNpemV9KTtcbiAgICAgICAgZm9udC1zdHlsZTogdmFyKCR7dG9rZW5zLmxhYmVsRm9udFN0eWxlfSk7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoJHt0b2tlbnMubGFiZWxGb250V2VpZ2h0fSk7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiB2YXIoJHt0b2tlbnMubGFiZWxMZXR0ZXJTcGFjaW5nfSk7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoJHt0b2tlbnMubGFiZWxMaW5lSGVpZ2h0fSk7XG4gICAgfVxuXG4gICAgJHtMZWZ0SGVscGVyfSB7XG4gICAgICAgIG1hcmdpbjogdmFyKCR7dG9rZW5zLmxlZnRIZWxwZXJPZmZzZXR9KTtcblxuICAgICAgICBmb250LWZhbWlseTogdmFyKCR7dG9rZW5zLmxlZnRIZWxwZXJGb250RmFtaWx5fSk7XG4gICAgICAgIGZvbnQtc2l6ZTogdmFyKCR7dG9rZW5zLmxlZnRIZWxwZXJGb250U2l6ZX0pO1xuICAgICAgICBmb250LXN0eWxlOiB2YXIoJHt0b2tlbnMubGVmdEhlbHBlckZvbnRTdHlsZX0pO1xuICAgICAgICBmb250LXdlaWdodDogdmFyKCR7dG9rZW5zLmxlZnRIZWxwZXJGb250V2VpZ2h0fSk7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiB2YXIoJHt0b2tlbnMubGVmdEhlbHBlckxldHRlclNwYWNpbmd9KTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigke3Rva2Vucy5sZWZ0SGVscGVyTGluZUhlaWdodH0pO1xuICAgIH1cbmA7XG4iXX0= */"));
|
@@ -1,4 +1,4 @@
|
|
1
|
-
var _excluded = ["className", "opened", "label", "labelPlacement", "placeholder", "leftHelper", "contentLeft", "contentRight", "textBefore", "textAfter", "view", "size", "readOnly", "disabled", "name", "defaultDate", "valueError", "valueSuccess", "format", "lang", "maskWithFormat", "min", "max", "includeEdgeDates", "eventList", "disabledList", "eventMonthList", "disabledMonthList", "eventQuarterList", "disabledQuarterList", "eventYearList", "disabledYearList", "type", "
|
1
|
+
var _excluded = ["className", "opened", "label", "labelPlacement", "placeholder", "leftHelper", "contentLeft", "contentRight", "textBefore", "textAfter", "view", "size", "readOnly", "disabled", "name", "defaultDate", "valueError", "valueSuccess", "format", "lang", "maskWithFormat", "min", "max", "includeEdgeDates", "eventList", "disabledList", "eventMonthList", "disabledMonthList", "eventQuarterList", "disabledQuarterList", "eventYearList", "disabledYearList", "type", "placement", "closeOnOverlayClick", "offset", "onChangeValue", "onCommitDate", "onToggle", "onFocus", "onBlur", "onChange"];
|
2
2
|
function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
|
3
3
|
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
|
4
4
|
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
@@ -14,7 +14,7 @@ import { formatCalendarValue, formatInputValue, getDateFormatDelimiter } from '.
|
|
14
14
|
import { useDatePicker } from '../hooks/useDatePicker';
|
15
15
|
import { classes } from '../DatePicker.tokens';
|
16
16
|
import { InputHidden, StyledCalendar } from '../DatePickerBase.styles';
|
17
|
-
import {
|
17
|
+
import { useKeyNavigation } from '../hooks/useKeyboardNavigation';
|
18
18
|
import { base as sizeCSS } from './variations/_size/base';
|
19
19
|
import { base as viewCSS } from './variations/_view/base';
|
20
20
|
import { base as disabledCSS } from './variations/_disabled/base';
|
@@ -64,16 +64,10 @@ export var datePickerRoot = function datePickerRoot(Root) {
|
|
64
64
|
disabledYearList = _ref.disabledYearList,
|
65
65
|
_ref$type = _ref.type,
|
66
66
|
type = _ref$type === void 0 ? 'Days' : _ref$type,
|
67
|
-
_ref$frame = _ref.frame,
|
68
|
-
frame = _ref$frame === void 0 ? 'document' : _ref$frame,
|
69
|
-
_ref$usePortal = _ref.usePortal,
|
70
|
-
usePortal = _ref$usePortal === void 0 ? false : _ref$usePortal,
|
71
67
|
_ref$placement = _ref.placement,
|
72
68
|
placement = _ref$placement === void 0 ? ['top', 'bottom'] : _ref$placement,
|
73
69
|
_ref$closeOnOverlayCl = _ref.closeOnOverlayClick,
|
74
70
|
closeOnOverlayClick = _ref$closeOnOverlayCl === void 0 ? true : _ref$closeOnOverlayCl,
|
75
|
-
_ref$closeOnEsc = _ref.closeOnEsc,
|
76
|
-
closeOnEsc = _ref$closeOnEsc === void 0 ? true : _ref$closeOnEsc,
|
77
71
|
offset = _ref.offset,
|
78
72
|
onChangeValue = _ref.onChangeValue,
|
79
73
|
onCommitDate = _ref.onCommitDate,
|
@@ -108,6 +102,7 @@ export var datePickerRoot = function datePickerRoot(Root) {
|
|
108
102
|
currentValue: inputValue,
|
109
103
|
setInputValue: setInputValue,
|
110
104
|
setCalendarValue: setCalendarValue,
|
105
|
+
setIsInnerOpen: setIsInnerOpen,
|
111
106
|
dateFormatDelimiter: dateFormatDelimiter,
|
112
107
|
format: format,
|
113
108
|
lang: lang,
|
@@ -116,34 +111,21 @@ export var datePickerRoot = function datePickerRoot(Root) {
|
|
116
111
|
maskWithFormat: maskWithFormat,
|
117
112
|
valueError: valueError,
|
118
113
|
valueSuccess: valueSuccess,
|
114
|
+
inputRef: inputRef,
|
119
115
|
name: name,
|
116
|
+
onToggle: onToggle,
|
120
117
|
onChangeValue: onChangeValue,
|
121
118
|
onCommitDate: onCommitDate,
|
122
119
|
onChange: onChange
|
123
120
|
}),
|
124
121
|
datePickerErrorClass = _useDatePicker.datePickerErrorClass,
|
125
122
|
datePickerSuccessClass = _useDatePicker.datePickerSuccessClass,
|
123
|
+
handleToggle = _useDatePicker.handleToggle,
|
126
124
|
handleChangeValue = _useDatePicker.handleChangeValue,
|
127
125
|
handleCommitDate = _useDatePicker.handleCommitDate;
|
128
|
-
var handleToggle = function handleToggle(opened, event) {
|
129
|
-
if (disabled || readOnly) {
|
130
|
-
return;
|
131
|
-
}
|
132
|
-
var isCalendarOpen = event.target === (inputRef === null || inputRef === void 0 ? void 0 : inputRef.current) && event.code !== keys.Escape ? true : opened;
|
133
|
-
if (!isCalendarOpen && inputValue) {
|
134
|
-
var _inputRef$current;
|
135
|
-
inputRef === null || inputRef === void 0 || (_inputRef$current = inputRef.current) === null || _inputRef$current === void 0 || _inputRef$current.focus();
|
136
|
-
}
|
137
|
-
if (onToggle) {
|
138
|
-
onToggle(isCalendarOpen, event);
|
139
|
-
return;
|
140
|
-
}
|
141
|
-
setIsInnerOpen(isCalendarOpen);
|
142
|
-
};
|
143
126
|
var _useKeyNavigation = useKeyNavigation({
|
144
127
|
isCalendarOpen: isInnerOpen,
|
145
|
-
onToggle: handleToggle
|
146
|
-
closeOnEsc: closeOnEsc
|
128
|
+
onToggle: handleToggle
|
147
129
|
}),
|
148
130
|
onKeyDown = _useKeyNavigation.onKeyDown;
|
149
131
|
var DatePickerInput = /*#__PURE__*/React.createElement(StyledInput, _extends({
|
@@ -199,8 +181,7 @@ export var datePickerRoot = function datePickerRoot(Root) {
|
|
199
181
|
ref: ref
|
200
182
|
}, rest), !innerLabelPlacement && label && /*#__PURE__*/React.createElement(StyledLabel, null, label), /*#__PURE__*/React.createElement(StyledPopover, {
|
201
183
|
opened: isInnerOpen,
|
202
|
-
usePortal:
|
203
|
-
frame: frame,
|
184
|
+
usePortal: false,
|
204
185
|
onToggle: handleToggle,
|
205
186
|
offset: offset,
|
206
187
|
placement: getPlacements(placement),
|
@@ -209,12 +190,6 @@ export var datePickerRoot = function datePickerRoot(Root) {
|
|
209
190
|
isFocusTrapped: false,
|
210
191
|
target: DatePickerInput,
|
211
192
|
preventOverflow: false
|
212
|
-
}, /*#__PURE__*/React.createElement(Root, {
|
213
|
-
view: view,
|
214
|
-
size: size,
|
215
|
-
className: cx(classes.datePickerRoot, className),
|
216
|
-
disabled: disabled,
|
217
|
-
readOnly: !disabled && readOnly
|
218
193
|
}, /*#__PURE__*/React.createElement(StyledCalendar, {
|
219
194
|
size: size,
|
220
195
|
value: calendarValue,
|
@@ -235,7 +210,7 @@ export var datePickerRoot = function datePickerRoot(Root) {
|
|
235
210
|
onChangeValue: function onChangeValue(date, dateInfo) {
|
236
211
|
return handleCommitDate(date, false, true, dateInfo);
|
237
212
|
}
|
238
|
-
}))
|
213
|
+
})), leftHelper && /*#__PURE__*/React.createElement(LeftHelper, null, leftHelper), /*#__PURE__*/React.createElement(InputHidden, _extends({
|
239
214
|
type: "hidden",
|
240
215
|
datatype: "datepicker-single",
|
241
216
|
name: name,
|
@@ -1,9 +1,11 @@
|
|
1
1
|
import { classes } from '../DatePicker.tokens';
|
2
|
-
import { formatCalendarValue, formatInputValue, getDateFromFormat, getMaskedDateOnInput
|
2
|
+
import { formatCalendarValue, formatInputValue, getDateFromFormat, getMaskedDateOnInput } from '../utils/dateHelper';
|
3
|
+
import { customDayjs } from '../../../utils/datejs';
|
3
4
|
export var useDatePicker = function useDatePicker(_ref) {
|
4
5
|
var currentValue = _ref.currentValue,
|
5
6
|
setInputValue = _ref.setInputValue,
|
6
7
|
setCalendarValue = _ref.setCalendarValue,
|
8
|
+
setIsInnerOpen = _ref.setIsInnerOpen,
|
7
9
|
dateFormatDelimiter = _ref.dateFormatDelimiter,
|
8
10
|
format = _ref.format,
|
9
11
|
_ref$lang = _ref.lang,
|
@@ -13,12 +15,24 @@ export var useDatePicker = function useDatePicker(_ref) {
|
|
13
15
|
maskWithFormat = _ref.maskWithFormat,
|
14
16
|
valueError = _ref.valueError,
|
15
17
|
valueSuccess = _ref.valueSuccess,
|
18
|
+
inputRef = _ref.inputRef,
|
16
19
|
name = _ref.name,
|
20
|
+
onToggle = _ref.onToggle,
|
17
21
|
onChangeValue = _ref.onChangeValue,
|
18
22
|
onCommitDate = _ref.onCommitDate,
|
19
23
|
onChange = _ref.onChange;
|
20
24
|
var datePickerErrorClass = valueError ? classes.datePickerError : undefined;
|
21
25
|
var datePickerSuccessClass = valueSuccess ? classes.datePickerSuccess : undefined;
|
26
|
+
var handleToggle = function handleToggle(opened, event) {
|
27
|
+
if (disabled || readOnly) {
|
28
|
+
return;
|
29
|
+
}
|
30
|
+
var isCalendarOpen = event.target === (inputRef === null || inputRef === void 0 ? void 0 : inputRef.current) ? true : opened;
|
31
|
+
if (onToggle) {
|
32
|
+
return onToggle(isCalendarOpen, event);
|
33
|
+
}
|
34
|
+
setIsInnerOpen(isCalendarOpen);
|
35
|
+
};
|
22
36
|
var handleChangeValue = function handleChangeValue(event) {
|
23
37
|
if (disabled || readOnly) {
|
24
38
|
return;
|
@@ -41,14 +55,24 @@ export var useDatePicker = function useDatePicker(_ref) {
|
|
41
55
|
});
|
42
56
|
return;
|
43
57
|
}
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
58
|
+
|
59
|
+
/**
|
60
|
+
* NOTE: если в формате даты есть месяц в полном названии или сокращенном,
|
61
|
+
* нужно дополнительно проводить валидацию на полноту введенной даты.
|
62
|
+
* Иначе dayjs циклически будет пытаться отформатировать некорректную дату.
|
63
|
+
*/
|
64
|
+
var hasMonthFullName = /M{3,4}/g.test(format);
|
65
|
+
var isValidMonth;
|
66
|
+
var isLengthEqual;
|
67
|
+
if (hasMonthFullName) {
|
68
|
+
customDayjs.locale(lang);
|
69
|
+
var firstIndexOfMonth = format.indexOf('M');
|
70
|
+
var lastIndexOfMonth = newValue.indexOf(dateFormatDelimiter(), firstIndexOfMonth);
|
71
|
+
var fullMonthName = !lastIndexOfMonth ? newValue.slice(firstIndexOfMonth) : newValue.slice(firstIndexOfMonth, lastIndexOfMonth);
|
72
|
+
var monthFormatting = format.replace(/[^M]/g, '');
|
73
|
+
isValidMonth = customDayjs("01 ".concat(fullMonthName, " 1970"), "DD ".concat(monthFormatting, " YYYY"), true).isValid();
|
74
|
+
isLengthEqual = format.length - monthFormatting.length === newValue.length - fullMonthName.length;
|
75
|
+
}
|
52
76
|
if (!hasMonthFullName && (newValue === null || newValue === void 0 ? void 0 : newValue.length) === (format === null || format === void 0 ? void 0 : format.length) || isValidMonth && isLengthEqual) {
|
53
77
|
setCalendarValue(formatCalendarValue(newValue, format, lang));
|
54
78
|
}
|
@@ -78,18 +102,20 @@ export var useDatePicker = function useDatePicker(_ref) {
|
|
78
102
|
return onCommitDate === null || onCommitDate === void 0 ? void 0 : onCommitDate('', false, true);
|
79
103
|
}
|
80
104
|
if (isCalendarValue) {
|
81
|
-
|
105
|
+
setCalendarValue(formatCalendarValue(date, format, lang));
|
106
|
+
setInputValue(formatInputValue({
|
82
107
|
value: date,
|
83
108
|
format: format,
|
84
109
|
lang: lang
|
85
|
-
});
|
86
|
-
setCalendarValue(formatCalendarValue(date, format, lang));
|
87
|
-
setInputValue(_formattedInputValue);
|
110
|
+
}));
|
88
111
|
onCommitDate === null || onCommitDate === void 0 || onCommitDate(date, false, true, dateInfo);
|
89
|
-
onChangeValue === null || onChangeValue === void 0 || onChangeValue(null, _formattedInputValue);
|
90
112
|
onChange === null || onChange === void 0 || onChange({
|
91
113
|
target: {
|
92
|
-
value:
|
114
|
+
value: formatInputValue({
|
115
|
+
value: date,
|
116
|
+
format: format,
|
117
|
+
lang: lang
|
118
|
+
}),
|
93
119
|
name: name
|
94
120
|
}
|
95
121
|
});
|
@@ -100,18 +126,19 @@ export var useDatePicker = function useDatePicker(_ref) {
|
|
100
126
|
newDate = _getDateFromFormat.value,
|
101
127
|
isError = _getDateFromFormat.isError,
|
102
128
|
isSuccess = _getDateFromFormat.isSuccess;
|
103
|
-
|
129
|
+
setCalendarValue(formatCalendarValue(newDate, format, lang));
|
130
|
+
setInputValue(formatInputValue({
|
104
131
|
value: newDate,
|
105
132
|
format: format,
|
106
133
|
lang: lang
|
107
|
-
});
|
108
|
-
setCalendarValue(formatCalendarValue(newDate, format, lang));
|
109
|
-
setInputValue(formattedInputValue);
|
134
|
+
}));
|
110
135
|
onCommitDate === null || onCommitDate === void 0 || onCommitDate(newDate, isError, isSuccess);
|
111
|
-
onChangeValue === null || onChangeValue === void 0 || onChangeValue(null, formattedInputValue);
|
112
136
|
onChange === null || onChange === void 0 || onChange({
|
113
137
|
target: {
|
114
|
-
value:
|
138
|
+
value: formatInputValue({
|
139
|
+
value: date,
|
140
|
+
format: format
|
141
|
+
}),
|
115
142
|
name: name
|
116
143
|
}
|
117
144
|
});
|
@@ -119,6 +146,7 @@ export var useDatePicker = function useDatePicker(_ref) {
|
|
119
146
|
return {
|
120
147
|
datePickerErrorClass: datePickerErrorClass,
|
121
148
|
datePickerSuccessClass: datePickerSuccessClass,
|
149
|
+
handleToggle: handleToggle,
|
122
150
|
handleChangeValue: handleChangeValue,
|
123
151
|
handleCommitDate: handleCommitDate
|
124
152
|
};
|
@@ -1,10 +1,8 @@
|
|
1
1
|
export var keys = {
|
2
|
-
Space: 'Space'
|
3
|
-
Escape: 'Escape'
|
2
|
+
Space: 'Space'
|
4
3
|
};
|
5
4
|
export var useKeyNavigation = function useKeyNavigation(_ref) {
|
6
5
|
var isCalendarOpen = _ref.isCalendarOpen,
|
7
|
-
closeOnEsc = _ref.closeOnEsc,
|
8
6
|
onToggle = _ref.onToggle;
|
9
7
|
var onKeyDown = function onKeyDown(event) {
|
10
8
|
switch (event.code) {
|
@@ -16,14 +14,6 @@ export var useKeyNavigation = function useKeyNavigation(_ref) {
|
|
16
14
|
}
|
17
15
|
break;
|
18
16
|
}
|
19
|
-
case keys.Escape:
|
20
|
-
{
|
21
|
-
if (isCalendarOpen && closeOnEsc) {
|
22
|
-
event.preventDefault();
|
23
|
-
onToggle(false, event);
|
24
|
-
}
|
25
|
-
break;
|
26
|
-
}
|
27
17
|
default:
|
28
18
|
{
|
29
19
|
break;
|
@@ -78,34 +78,4 @@ export var getMaskedDateOnInput = function getMaskedDateOnInput(value, format, d
|
|
78
78
|
return value + delimiter;
|
79
79
|
}
|
80
80
|
return value;
|
81
|
-
};
|
82
|
-
export var validateDateWithFullMonth = function validateDateWithFullMonth(_ref2) {
|
83
|
-
var currentValue = _ref2.currentValue,
|
84
|
-
format = _ref2.format,
|
85
|
-
lang = _ref2.lang;
|
86
|
-
/**
|
87
|
-
* NOTE: если в формате даты есть месяц в полном названии или сокращенном,
|
88
|
-
* нужно дополнительно проводить валидацию на полноту введенной даты.
|
89
|
-
* Иначе dayjs циклически будет пытаться отформатировать некорректную дату.
|
90
|
-
*/
|
91
|
-
var hasMonthFullName = /M{3,4}/g.test(format);
|
92
|
-
if (!hasMonthFullName) {
|
93
|
-
return {
|
94
|
-
hasMonthFullName: hasMonthFullName,
|
95
|
-
isValidMonth: false,
|
96
|
-
isLengthEqual: false
|
97
|
-
};
|
98
|
-
}
|
99
|
-
customDayjs.locale(lang);
|
100
|
-
var firstIndexOfMonth = format.indexOf('M');
|
101
|
-
var lastIndexOfMonth = currentValue.indexOf(getDateFormatDelimiter(format), firstIndexOfMonth);
|
102
|
-
var fullMonthName = !lastIndexOfMonth ? currentValue.slice(firstIndexOfMonth) : currentValue.slice(firstIndexOfMonth, lastIndexOfMonth);
|
103
|
-
var monthFormatting = format.replace(/[^M]/g, '');
|
104
|
-
var isValidMonth = customDayjs("01 ".concat(fullMonthName, " 1970"), "DD ".concat(monthFormatting, " YYYY"), true).isValid();
|
105
|
-
var isLengthEqual = format.length - monthFormatting.length === currentValue.length - fullMonthName.length;
|
106
|
-
return {
|
107
|
-
hasMonthFullName: hasMonthFullName,
|
108
|
-
isValidMonth: isValidMonth,
|
109
|
-
isLengthEqual: isLengthEqual
|
110
|
-
};
|
111
81
|
};
|
@@ -39,7 +39,7 @@ var innerPlaceholderUp = classes.innerPlaceholderUp,
|
|
39
39
|
styledPlaceholder = classes.styledPlaceholder,
|
40
40
|
styledHelpers = classes.styledHelpers;
|
41
41
|
var optionalText = 'optional';
|
42
|
-
var base = /*#__PURE__*/css(applyDynamicLabel, ";position:relative;box-sizing:border-box;;label:plasma-new-hope__base;" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy1lbW90aW9uL2NvbXBvbmVudHMvVGV4dEFyZWEvVGV4dEFyZWEudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQTBDZ0IiLCJmaWxlIjoiLi4vLi4vLi4vLi4vc3JjLWVtb3Rpb24vY29tcG9uZW50cy9UZXh0QXJlYS9UZXh0QXJlYS50c3giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QsIHsgZm9yd2FyZFJlZiwgdXNlU3RhdGUsIGNyZWF0ZVJlZiwgdXNlQ2FsbGJhY2sgfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyBjc3MgfSBmcm9tICdAZW1vdGlvbi9yZWFjdCc7XG5pbXBvcnQgeyB1c2VSZXNpemVPYnNlcnZlciB9IGZyb20gJ0BzYWx1dGVqcy9wbGFzbWEtY29yZSc7XG5cbmltcG9ydCB7IGN4LCBtZXJnZVJlZnMgfSBmcm9tICcuLi8uLi91dGlscyc7XG5pbXBvcnQgdHlwZSB7IFJvb3RQcm9wcyB9IGZyb20gJy4uLy4uL2VuZ2luZXMvdHlwZXMnO1xuXG5pbXBvcnQgeyBhcHBseUR5bmFtaWNMYWJlbCB9IGZyb20gJy4vbWl4aW5zJztcbmltcG9ydCB7IHVzZUF1dG9SZXNpemUsIFJPT1RfRk9OVF9TSVpFIH0gZnJvbSAnLi9ob29rcyc7XG5pbXBvcnQge1xuICAgIFN0eWxlZENvbnRlbnQsXG4gICAgU3R5bGVkSGVscGVycyxcbiAgICBTdHlsZWRMZWZ0SGVscGVyLFxuICAgIFN0eWxlZFJpZ2h0SGVscGVyLFxuICAgIFN0eWxlZExhYmVsLFxuICAgIFN0eWxlZFBsYWNlaG9sZGVyLFxuICAgIFN0eWxlZFRleHRBcmVhLFxuICAgIFN0eWxlZFRleHRBcmVhV3JhcHBlcixcbiAgICBTdHlsZWRDb250YWluZXIsXG4gICAgU3R5bGVkSW5kaWNhdG9yLFxuICAgIFN0eWxlZE9wdGlvbmFsVGV4dCxcbn0gZnJvbSAnLi9UZXh0QXJlYS5zdHlsZXMnO1xuaW1wb3J0IHsgY2xhc3NlcyB9IGZyb20gJy4vVGV4dEFyZWEudG9rZW5zJztcbmltcG9ydCB7IGJhc2UgYXMgdmlld0NTUyB9IGZyb20gJy4vdmFyaWF0aW9ucy9fdmlldy9iYXNlJztcbmltcG9ydCB7IGJhc2UgYXMgc2l6ZUNTUyB9IGZyb20gJy4vdmFyaWF0aW9ucy9fc2l6ZS9iYXNlJztcbmltcG9ydCB7IGJhc2UgYXMgY2xlYXJDU1MgfSBmcm9tICcuL3ZhcmlhdGlvbnMvX2NsZWFyL2Jhc2UnO1xuaW1wb3J0IHsgYmFzZSBhcyBkaXNhYmxlZENTUyB9IGZyb20gJy4vdmFyaWF0aW9ucy9fZGlzYWJsZWQvYmFzZSc7XG5pbXBvcnQgdHlwZSB7IFRleHRBcmVhUHJvcHMgfSBmcm9tICcuL1RleHRBcmVhLnR5cGVzJztcblxuY29uc3Qge1xuICAgIGlubmVyUGxhY2Vob2xkZXJVcCxcbiAgICBmb2N1c2VkT3V0ZXJQbGFjZWhvbGRlckNvbG9yLFxuICAgIGhpZGVQbGFjZUhvbGRlcixcbiAgICBzdHlsZWRDb250YWluZXIsXG4gICAgc3R5bGVkVGV4dEFyZWEsXG4gICAgc3R5bGVkVGV4dEFyZWFXcmFwcGVyLFxuICAgIHN0eWxlZFBsYWNlaG9sZGVyLFxuICAgIHN0eWxlZEhlbHBlcnMsXG59ID0gY2xhc3NlcztcblxuY29uc3Qgb3B0aW9uYWxUZXh0ID0gJ29wdGlvbmFsJztcblxuY29uc3QgYmFzZSA9IGNzc2BcbiAgICAke2FwcGx5RHluYW1pY0xhYmVsfTtcblxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuYDtcblxuLy8gVE9ETzog0KPQtNCw0LvQuNGC0Ywg0L/QvtGB0LvQtSDQvtGC0LrQsNC30LAg0L7RgiDRgdGC0LDRgNGL0YUg0LHQuNCx0LvQuNC+0YLQtdC6IHBsYXNtYS13ZWIgLyBwbGFzbWEtYjJjXG5jb25zdCBmYWxsYmFja1N0YXR1c01hcCA9IHtcbiAgICAnJzogJ3ByaW1hcnknLFxuICAgIHN1Y2Nlc3M6ICdwb3NpdGl2ZScsXG4gICAgd2FybmluZzogJ3dhcm5pbmcnLFxuICAgIGVycm9yOiAnbmVnYXRpdmUnLFxufTtcblxuLy8gVE9ETzog0J/QtdGA0LXQvdC10YHRgtC4INGN0YLQvtGCINC80LXRgtC+0LQg0LIg0YTQsNC50LsgYXBwbHlEeW5hbWljTGFiZWwudHNcbmV4cG9ydCBjb25zdCBnZXREeW5hbWljTGFiZWxDbGFzc2VzID0gKHByb3BzOiBUZXh0QXJlYVByb3BzLCBmb2N1c2VkOiBib29sZWFuKSA9PiB7XG4gICAgY29uc3QgeyByZWFkT25seSwgbGFiZWwsIGxhYmVsUGxhY2VtZW50LCByb3dzLCB2YWx1ZSwgc2l6ZSB9ID0gcHJvcHM7XG5cbiAgICAvLyDQlNC+0LHQsNCy0LjRgtGMINC60LvQsNGB0YEg0L7RgtCy0LXRh9Cw0Y7RidC40Lkg0LfQsCDQuNC30LzQtdC90LXQvdC40LUg0YbQstC10YLQsCDQv9C70LXQudGB0YXQvtC70LTQtdGA0LAg0L/RgNC4INGE0L7QutGD0YHQtVxuICAgIGNvbnN0IHdpdGhGb2N1c2VkT3V0ZXJVcFBsYWNlaG9sZGVyID1cbiAgICAgICAgIXJlYWRPbmx5ICYmIGZvY3VzZWQgJiYgKCFsYWJlbCB8fCBsYWJlbFBsYWNlbWVudCA9PT0gJ291dGVyJykgPyBmb2N1c2VkT3V0ZXJQbGFjZWhvbGRlckNvbG9yIDogdW5kZWZpbmVkO1xuXG4gICAgLy8g0JTQvtCx0LDQstC40YLRjCDQutC70LDRgdGBINC+0YLQstC10YfQsNGO0YnQuNC5INC30LAg0L/QvtC00L3Rj9GC0LjQtSDQuCDRg9C80LXQvdGM0YjQtdC90LjQtSDQv9C70LXQudGB0YXQvtC70LTQtdGA0LBcbiAgICBjb25zdCB3aXRoSW5uZXJQbGFjZWhvbGRlclVwID1cbiAgICAgICAgbGFiZWxQbGFjZW1lbnQgPT09ICdpbm5lcicgJiZcbiAgICAgICAgbGFiZWwgJiZcbiAgICAgICAgIXJvd3MgJiZcbiAgICAgICAgc2l6ZSAhPT0gJ3hzJyAmJlxuICAgICAgICAoKCFyZWFkT25seSAmJiAodmFsdWUgfHwgZm9jdXNlZCkpIHx8IChyZWFkT25seSAmJiB2YWx1ZSkpXG4gICAgICAgICAgICA/IGlubmVyUGxhY2Vob2xkZXJVcFxuICAgICAgICAgICAgOiB1bmRlZmluZWQ7XG5cbiAgICAvLyDQlNC+0LHQsNCy0LjRgtGMINC60LvQsNGB0YEg0L7RgtCy0LXRh9Cw0Y7RidC40Lkg0LfQsCDRgdC60YDRi9GC0LjQtSDQv9C70LXQudGB0YXQvtC70LTQtdGA0LBcbiAgICBjb25zdCB3aXRoSGlkZVBsYWNlaG9sZGVyID1cbiAgICAgICAgKHZhbHVlICYmICFsYWJlbCkgfHxcbiAgICAgICAgKGxhYmVsUGxhY2VtZW50ID09PSAnaW5uZXInICYmICgoZm9jdXNlZCAmJiAhcmVhZE9ubHkpIHx8IHZhbHVlKSAmJiBsYWJlbCAmJiByb3dzKSB8fFxuICAgICAgICAobGFiZWxQbGFjZW1lbnQgPT09ICdvdXRlcicgJiYgdmFsdWUpIHx8XG4gICAgICAgIChsYWJlbFBsYWNlbWVudCA9PT0gJ2lubmVyJyAmJiBzaXplID09PSAneHMnICYmIHZhbHVlKVxuICAgICAgICAgICAgPyBoaWRlUGxhY2VIb2xkZXJcbiAgICAgICAgICAgIDogdW5kZWZpbmVkO1xuXG4gICAgcmV0dXJuIFt3aXRoRm9jdXNlZE91dGVyVXBQbGFjZWhvbGRlciwgd2l0aElubmVyUGxhY2Vob2xkZXJVcCwgd2l0aEhpZGVQbGFjZWhvbGRlcl07XG59O1xuXG5leHBvcnQgY29uc3QgdGV4dEFyZWFSb290ID0gKFJvb3Q6IFJvb3RQcm9wczxIVE1MVGV4dEFyZWFFbGVtZW50LCBUZXh0QXJlYVByb3BzPikgPT5cbiAgICBmb3J3YXJkUmVmPEhUTUxUZXh0QXJlYUVsZW1lbnQsIFRleHRBcmVhUHJvcHM+KChwcm9wcywgaW5uZXJSZWYpID0+IHtcbiAgICAgICAgY29uc3Qge1xuICAgICAgICAgICAgaGVscGVyVGV4dCxcbiAgICAgICAgICAgIHN0YXR1cyxcbiAgICAgICAgICAgIHJlc2l6ZSxcbiAgICAgICAgICAgIHJpZ2h0SGVscGVyLFxuICAgICAgICAgICAgbGVmdEhlbHBlcixcbiAgICAgICAgICAgIGNvbnRlbnRSaWdodCxcbiAgICAgICAgICAgIGF1dG9SZXNpemUgPSBmYWxzZSxcbiAgICAgICAgICAgIG1pbkF1dG8gPSAwLFxuICAgICAgICAgICAgbWF4QXV0byxcbiAgICAgICAgICAgIGxhYmVsLFxuICAgICAgICAgICAgbGFiZWxQbGFjZW1lbnQgPSAnaW5uZXInLFxuICAgICAgICAgICAgcGxhY2Vob2xkZXIsXG4gICAgICAgICAgICBkZWZhdWx0VmFsdWUsXG4gICAgICAgICAgICBoZWlnaHQsXG4gICAgICAgICAgICB3aWR0aCxcbiAgICAgICAgICAgIHZhbHVlLFxuICAgICAgICAgICAgZGlzYWJsZWQsXG4gICAgICAgICAgICByZXF1aXJlZCA9IGZhbHNlLFxuICAgICAgICAgICAgcmVxdWlyZWRQbGFjZW1lbnQgPSAncmlnaHQnLFxuICAgICAgICAgICAgb3B0aW9uYWwgPSBmYWxzZSxcbiAgICAgICAgICAgIGNsZWFyLFxuICAgICAgICAgICAgaGFzRGl2aWRlcixcbiAgICAgICAgICAgIHNpemUsXG4gICAgICAgICAgICB2aWV3LFxuICAgICAgICAgICAgaWQsXG4gICAgICAgICAgICBzdHlsZSxcbiAgICAgICAgICAgIGNsYXNzTmFtZSxcbiAgICAgICAgICAgIHJlYWRPbmx5LFxuICAgICAgICAgICAgcm93cyxcbiAgICAgICAgICAgIGNvbHMsXG4gICAgICAgICAgICBvbkNoYW5nZSxcbiAgICAgICAgICAgIC4uLnJlc3RcbiAgICAgICAgfSA9IHByb3BzO1xuXG4gICAgICAgIGNvbnN0IFtoZWxwZXJXaWR0aCwgc2V0SGVscGVyV2lkdGhdID0gdXNlU3RhdGU8c3RyaW5nPih3aWR0aCA/IGAke3dpZHRofXJlbWAgOiAnMTAwJScpO1xuICAgICAgICBjb25zdCBbZm9jdXNlZCwgc2V0Rm9jdXNlZF0gPSB1c2VTdGF0ZShmYWxzZSk7XG4gICAgICAgIGNvbnN0IFt1bmNvbnRyb2xsZWRWYWx1ZSwgc2V0VW5jb250cm9sbGVkVmFsdWVdID0gdXNlU3RhdGU8c3RyaW5nIHwgdW5kZWZpbmVkPigpO1xuXG4gICAgICAgIGNvbnN0IG91dGVyUmVmID0gY3JlYXRlUmVmPEhUTUxUZXh0QXJlYUVsZW1lbnQ+KCk7XG5cbiAgICAgICAgY29uc3QgaW5uZXJPcHRpb25hbCA9IHJlcXVpcmVkID8gZmFsc2UgOiBvcHRpb25hbDtcbiAgICAgICAgY29uc3QgaGFzSGVscGVyID0gQm9vbGVhbihsZWZ0SGVscGVyIHx8IHJpZ2h0SGVscGVyIHx8IGhlbHBlclRleHQpO1xuICAgICAgICBjb25zdCBoYXNPdXRlckxhYmVsID0gQm9vbGVhbihsYWJlbCAmJiBsYWJlbFBsYWNlbWVudCA9PT0gJ291dGVyJyk7XG4gICAgICAgIGNvbnN0IGhhc0lubmVyTGFiZWwgPSBCb29sZWFuKGxhYmVsICYmIGxhYmVsUGxhY2VtZW50ID09PSAnaW5uZXInICYmIHNpemUgIT09ICd4cycpO1xuICAgICAgICBjb25zdCBoYXNQbGFjZWhvbGRlck9wdGlvbmFsID0gaW5uZXJPcHRpb25hbCAmJiAhaGFzT3V0ZXJMYWJlbDtcblxuICAgICAgICBjb25zdCBvdmVycmlkZGVuVmlldyA9IHN0YXR1cyAhPT0gdW5kZWZpbmVkID8gZmFsbGJhY2tTdGF0dXNNYXBbc3RhdHVzXSA6IHZpZXc7XG4gICAgICAgIGNvbnN0IHRleHRhcmVhSGVscGVySWQgPSBpZCA/IGAke2lkfS1oZWxwZXJgIDogdW5kZWZpbmVkO1xuICAgICAgICBjb25zdCBhcHBseUN1c3RvbVdpZHRoID0gcmVzaXplICE9PSAnaG9yaXpvbnRhbCcgJiYgcmVzaXplICE9PSAnYm90aCcgJiYgIWNvbHM7XG4gICAgICAgIGNvbnN0IHBsYWNlaG9sZGVyTGFiZWwgPSBoYXNJbm5lckxhYmVsID8gbGFiZWwgOiBwbGFjZWhvbGRlcjtcblxuICAgICAgICBjb25zdCBjbGVhckNsYXNzID0gY2xlYXIgPyBjbGFzc2VzLmNsZWFyIDogdW5kZWZpbmVkO1xuICAgICAgICBjb25zdCBoYXNSaWdodENvbnRlbnRDbGFzcyA9IGNvbnRlbnRSaWdodCA/IGNsYXNzZXMuaGFzUmlnaHRDb250ZW50IDogdW5kZWZpbmVkO1xuICAgICAgICBjb25zdCBoYXNEaXZpZGVyQ2xhc3MgPSBoYXNEaXZpZGVyID8gY2xhc3Nlcy5oYXNEaXZpZGVyIDogdW5kZWZpbmVkO1xuICAgICAgICBjb25zdCByZXF1aXJlZFBsYWNlbWVudENsYXNzID0gcmVxdWlyZWRQbGFjZW1lbnQgPT09ICdyaWdodCcgPyAnYWxpZ24tcmlnaHQgJyA6IHVuZGVmaW5lZDtcblxuICAgICAgICB1c2VSZXNpemVPYnNlcnZlcihvdXRlclJlZiwgKGN1cnJlbnRFbGVtZW50KSA9PiB7XG4gICAgICAgICAgICBjb25zdCB7IHdpZHRoOiBpbmxpbmVXaWR0aCB9ID0gY3VycmVudEVsZW1lbnQuc3R5bGU7XG5cbiAgICAgICAgICAgIGlmIChpbmxpbmVXaWR0aCB8fCBjb2xzKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgeyB3aWR0aDogZWxlbWVudFdpZHRoIH0gPSBjdXJyZW50RWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcbiAgICAgICAgICAgICAgICBzZXRIZWxwZXJXaWR0aChgJHtlbGVtZW50V2lkdGggLyBST09UX0ZPTlRfU0laRX1yZW1gKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG5cbiAgICAgICAgdXNlQXV0b1Jlc2l6ZShhdXRvUmVzaXplIHx8IEJvb2xlYW4oY2xlYXIpLCBvdXRlclJlZiwgdmFsdWUsIG1pbkF1dG8sIG1heEF1dG8pO1xuXG4gICAgICAgIGNvbnN0IG9uRm9jdXNIYW5kbGVyID0gdXNlQ2FsbGJhY2soKCkgPT4ge1xuICAgICAgICAgICAgc2V0Rm9jdXNlZCh0cnVlKTtcbiAgICAgICAgfSwgW10pO1xuXG4gICAgICAgIGNvbnN0IG9uQmx1ckhhbmRsZXIgPSB1c2VDYWxsYmFjaygoKSA9PiB7XG4gICAgICAgICAgICBzZXRGb2N1c2VkKGZhbHNlKTtcbiAgICAgICAgfSwgW10pO1xuXG4gICAgICAgIGNvbnN0IG9uQ2hhbmdlSGFuZGxlciA9IHVzZUNhbGxiYWNrKFxuICAgICAgICAgICAgKGV2ZW50OiBSZWFjdC5DaGFuZ2VFdmVudDxIVE1MVGV4dEFyZWFFbGVtZW50PikgPT4ge1xuICAgICAgICAgICAgICAgIC8vIElORk86INCU0LvRjyDQutGA0LDQudC90LUg0YDQtdC00LrQuNGFINC60LXQudGB0L7Qsiwg0LrQvtCz0LTQsCB2YWx1ZSDRgdC90LDRgNGD0LbQuCDQvdC1INC60L7QvdGC0YDQvtC70LjRgNGD0LXRgtGB0Y9cbiAgICAgICAgICAgICAgICBpZiAodmFsdWUgPT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgICAgICAgICBzZXRVbmNvbnRyb2xsZWRWYWx1ZShldmVudD8udGFyZ2V0LnZhbHVlKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgb25DaGFuZ2U/LihldmVudCk7XG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgW3ZhbHVlLCBvbkNoYW5nZV0sXG4gICAgICAgICk7XG5cbiAgICAgICAgY29uc3QgZHluYW1pY0xhYmVsQ2xhc3NlcyA9IGdldER5bmFtaWNMYWJlbENsYXNzZXMoXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgc2l6ZSxcbiAgICAgICAgICAgICAgICByZWFkT25seSxcbiAgICAgICAgICAgICAgICBsYWJlbCxcbiAgICAgICAgICAgICAgICBsYWJlbFBsYWNlbWVudCxcbiAgICAgICAgICAgICAgICB2YWx1ZTogdmFsdWUgfHwgdW5jb250cm9sbGVkVmFsdWUgfHwgZGVmYXVsdFZhbHVlLFxuICAgICAgICAgICAgICAgIHJvd3MsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgZm9jdXNlZCxcbiAgICAgICAgKTtcblxuICAgICAgICBjb25zdCBvcHRpb25hbFRleHROb2RlID0gaW5uZXJPcHRpb25hbCA/IChcbiAgICAgICAgICAgIDxTdHlsZWRPcHRpb25hbFRleHQ+XG4gICAgICAgICAgICAgICAge0Jvb2xlYW4oaGFzUGxhY2Vob2xkZXJPcHRpb25hbCA/IHBsYWNlaG9sZGVyTGFiZWwgOiBsYWJlbCkgJiYgJ1xceGEwJ31cbiAgICAgICAgICAgICAgICB7b3B0aW9uYWxUZXh0fVxuICAgICAgICAgICAgPC9TdHlsZWRPcHRpb25hbFRleHQ+XG4gICAgICAgICkgOiBudWxsO1xuXG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICA8Um9vdFxuICAgICAgICAgICAgICAgIHZpZXc9e292ZXJyaWRkZW5WaWV3fVxuICAgICAgICAgICAgICAgIHNpemU9e3NpemV9XG4gICAgICAgICAgICAgICAgZGlzYWJsZWQ9e2Rpc2FibGVkfVxuICAgICAgICAgICAgICAgIHJlYWRPbmx5PXtyZWFkT25seX1cbiAgICAgICAgICAgICAgICBjbGVhcj17Y2xlYXJ9XG4gICAgICAgICAgICAgICAgc3R5bGU9e3sgd2lkdGg6IGhlbHBlcldpZHRoLCAuLi5zdHlsZSB9fVxuICAgICAgICAgICAgICAgIGNsYXNzTmFtZT17Y3goY2xlYXJDbGFzcywgaGFzRGl2aWRlckNsYXNzLCBjbGFzc05hbWUpfVxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIHtoYXNPdXRlckxhYmVsICYmIChcbiAgICAgICAgICAgICAgICAgICAgPFN0eWxlZExhYmVsPlxuICAgICAgICAgICAgICAgICAgICAgICAge3JlcXVpcmVkICYmIChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8U3R5bGVkSW5kaWNhdG9yIGNsYXNzTmFtZT17Y3goY2xhc3Nlcy5vdXRlckxhYmVsUGxhY2VtZW50LCByZXF1aXJlZFBsYWNlbWVudENsYXNzKX0gLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgICAgICAgICB7bGFiZWx9XG4gICAgICAgICAgICAgICAgICAgICAgICB7b3B0aW9uYWxUZXh0Tm9kZX1cbiAgICAgICAgICAgICAgICAgICAgPC9TdHlsZWRMYWJlbD5cbiAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgIDxTdHlsZWRDb250YWluZXJcbiAgICAgICAgICAgICAgICAgICAgY2xhc3NOYW1lPXtjeChzdHlsZWRDb250YWluZXIsIC4uLmR5bmFtaWNMYWJlbENsYXNzZXMpfVxuICAgICAgICAgICAgICAgICAgICB3aWR0aD17aGVscGVyV2lkdGh9XG4gICAgICAgICAgICAgICAgICAgIG9uRm9jdXM9e29uRm9jdXNIYW5kbGVyfVxuICAgICAgICAgICAgICAgICAgICBvbkJsdXI9e29uQmx1ckhhbmRsZXJ9XG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICB7cmVxdWlyZWQgJiYgIWhhc091dGVyTGFiZWwgJiYgKFxuICAgICAgICAgICAgICAgICAgICAgICAgPFN0eWxlZEluZGljYXRvciBjbGFzc05hbWU9e2N4KGNsYXNzZXMuaW5uZXJMYWJlbFBsYWNlbWVudCwgcmVxdWlyZWRQbGFjZW1lbnRDbGFzcyl9IC8+XG4gICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgICAgIHtjb250ZW50UmlnaHQgJiYgPFN0eWxlZENvbnRlbnQ+e2NvbnRlbnRSaWdodH08L1N0eWxlZENvbnRlbnQ+fVxuICAgICAgICAgICAgICAgICAgICA8U3R5bGVkVGV4dEFyZWFXcmFwcGVyIGNsYXNzTmFtZT17c3R5bGVkVGV4dEFyZWFXcmFwcGVyfSBoYXNIZWxwZXI9e2hhc0hlbHBlcn0+XG4gICAgICAgICAgICAgICAgICAgICAgICA8U3R5bGVkVGV4dEFyZWFcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzc05hbWU9e2N4KHN0eWxlZFRleHRBcmVhLCBoYXNSaWdodENvbnRlbnRDbGFzcyl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWQ9e2lkfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhhc0NvbnRlbnRSaWdodD17Qm9vbGVhbihjb250ZW50UmlnaHQpfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhhc0hlbHBlcj17aGFzSGVscGVyfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFwcGx5Q3VzdG9tV2lkdGg9e2FwcGx5Q3VzdG9tV2lkdGh9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVmPXttZXJnZVJlZnMob3V0ZXJSZWYsIGlubmVyUmVmKX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNhYmxlZD17ZGlzYWJsZWR9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0PXthdXRvUmVzaXplIHx8IEJvb2xlYW4oY2xlYXIpID8gbWluQXV0byA6IGhlaWdodH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aD17d2lkdGh9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcGxhY2Vob2xkZXI9e3BsYWNlaG9sZGVyTGFiZWx9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYXJpYS1kZXNjcmliZWRieT17dGV4dGFyZWFIZWxwZXJJZH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZT17dmFsdWV9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVhZE9ubHk9e3JlYWRPbmx5fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJvd3M9e3Jvd3N9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29scz17Y29sc31cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXNpemU9e3Jlc2l6ZX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZWZhdWx0VmFsdWU9e2RlZmF1bHRWYWx1ZX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvbkNoYW5nZT17b25DaGFuZ2VIYW5kbGVyfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsuLi5yZXN0fVxuICAgICAgICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgICAgPC9TdHlsZWRUZXh0QXJlYVdyYXBwZXI+XG4gICAgICAgICAgICAgICAgICAgIHtoYXNIZWxwZXIgJiYgKFxuICAgICAgICAgICAgICAgICAgICAgICAgPFN0eWxlZEhlbHBlcnMgY2xhc3NOYW1lPXtzdHlsZWRIZWxwZXJzfSBpZD17dGV4dGFyZWFIZWxwZXJJZH0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgeyhsZWZ0SGVscGVyIHx8IGhlbHBlclRleHQpICYmIChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPFN0eWxlZExlZnRIZWxwZXI+e2xlZnRIZWxwZXIgfHwgaGVscGVyVGV4dH08L1N0eWxlZExlZnRIZWxwZXI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7cmlnaHRIZWxwZXIgJiYgPFN0eWxlZFJpZ2h0SGVscGVyPntyaWdodEhlbHBlcn08L1N0eWxlZFJpZ2h0SGVscGVyPn1cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvU3R5bGVkSGVscGVycz5cbiAgICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgICAge3BsYWNlaG9sZGVyTGFiZWwgJiYgKFxuICAgICAgICAgICAgICAgICAgICAgICAgPFN0eWxlZFBsYWNlaG9sZGVyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaGFzQ29udGVudFJpZ2h0PXtCb29sZWFuKGNvbnRlbnRSaWdodCl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3NOYW1lPXtzdHlsZWRQbGFjZWhvbGRlcn1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBodG1sRm9yPXtpZH1cbiAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7cGxhY2Vob2xkZXJMYWJlbH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7IWhhc091dGVyTGFiZWwgJiYgb3B0aW9uYWxUZXh0Tm9kZX1cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvU3R5bGVkUGxhY2Vob2xkZXI+XG4gICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgPC9TdHlsZWRDb250YWluZXI+XG4gICAgICAgICAgICA8L1Jvb3Q+XG4gICAgICAgICk7XG4gICAgfSk7XG5cbmV4cG9ydCBjb25zdCB0ZXh0QXJlYUNvbmZpZyA9IHtcbiAgICBuYW1lOiAnVGV4dEFyZWEnLFxuICAgIHRhZzogJ2RpdicsXG4gICAgbGF5b3V0OiB0ZXh0QXJlYVJvb3QsXG4gICAgYmFzZSxcbiAgICB2YXJpYXRpb25zOiB7XG4gICAgICAgIHNpemU6IHtcbiAgICAgICAgICAgIGNzczogc2l6ZUNTUyxcbiAgICAgICAgfSxcbiAgICAgICAgdmlldzoge1xuICAgICAgICAgICAgY3NzOiB2aWV3Q1NTLFxuICAgICAgICB9LFxuICAgICAgICBjbGVhcjoge1xuICAgICAgICAgICAgY3NzOiBjbGVhckNTUyxcbiAgICAgICAgICAgIGF0dHJzOiB0cnVlLFxuICAgICAgICB9LFxuICAgICAgICBkaXNhYmxlZDoge1xuICAgICAgICAgICAgY3NzOiBkaXNhYmxlZENTUyxcbiAgICAgICAgICAgIGF0dHJzOiB0cnVlLFxuICAgICAgICB9LFxuICAgICAgICByZWFkT25seToge1xuICAgICAgICAgICAgYXR0cnM6IHRydWUsXG4gICAgICAgIH0sXG4gICAgfSxcbiAgICBkZWZhdWx0czoge1xuICAgICAgICBzaXplOiAnbScsXG4gICAgICAgIHZpZXc6ICdwcmltYXJ5JyxcbiAgICB9LFxufTtcbiJdfQ== */"));
|
42
|
+
var base = /*#__PURE__*/css(applyDynamicLabel, ";position:relative;box-sizing:border-box;;label:plasma-new-hope__base;" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy1lbW90aW9uL2NvbXBvbmVudHMvVGV4dEFyZWEvVGV4dEFyZWEudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQTBDZ0IiLCJmaWxlIjoiLi4vLi4vLi4vLi4vc3JjLWVtb3Rpb24vY29tcG9uZW50cy9UZXh0QXJlYS9UZXh0QXJlYS50c3giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QsIHsgZm9yd2FyZFJlZiwgdXNlU3RhdGUsIGNyZWF0ZVJlZiwgdXNlQ2FsbGJhY2sgfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyBjc3MgfSBmcm9tICdAZW1vdGlvbi9yZWFjdCc7XG5pbXBvcnQgeyB1c2VSZXNpemVPYnNlcnZlciB9IGZyb20gJ0BzYWx1dGVqcy9wbGFzbWEtY29yZSc7XG5cbmltcG9ydCB7IGN4LCBtZXJnZVJlZnMgfSBmcm9tICcuLi8uLi91dGlscyc7XG5pbXBvcnQgdHlwZSB7IFJvb3RQcm9wcyB9IGZyb20gJy4uLy4uL2VuZ2luZXMvdHlwZXMnO1xuXG5pbXBvcnQgeyBhcHBseUR5bmFtaWNMYWJlbCB9IGZyb20gJy4vbWl4aW5zJztcbmltcG9ydCB7IHVzZUF1dG9SZXNpemUsIFJPT1RfRk9OVF9TSVpFIH0gZnJvbSAnLi9ob29rcyc7XG5pbXBvcnQge1xuICAgIFN0eWxlZENvbnRlbnQsXG4gICAgU3R5bGVkSGVscGVycyxcbiAgICBTdHlsZWRMZWZ0SGVscGVyLFxuICAgIFN0eWxlZFJpZ2h0SGVscGVyLFxuICAgIFN0eWxlZExhYmVsLFxuICAgIFN0eWxlZFBsYWNlaG9sZGVyLFxuICAgIFN0eWxlZFRleHRBcmVhLFxuICAgIFN0eWxlZFRleHRBcmVhV3JhcHBlcixcbiAgICBTdHlsZWRDb250YWluZXIsXG4gICAgU3R5bGVkSW5kaWNhdG9yLFxuICAgIFN0eWxlZE9wdGlvbmFsVGV4dCxcbn0gZnJvbSAnLi9UZXh0QXJlYS5zdHlsZXMnO1xuaW1wb3J0IHsgY2xhc3NlcyB9IGZyb20gJy4vVGV4dEFyZWEudG9rZW5zJztcbmltcG9ydCB7IGJhc2UgYXMgdmlld0NTUyB9IGZyb20gJy4vdmFyaWF0aW9ucy9fdmlldy9iYXNlJztcbmltcG9ydCB7IGJhc2UgYXMgc2l6ZUNTUyB9IGZyb20gJy4vdmFyaWF0aW9ucy9fc2l6ZS9iYXNlJztcbmltcG9ydCB7IGJhc2UgYXMgY2xlYXJDU1MgfSBmcm9tICcuL3ZhcmlhdGlvbnMvX2NsZWFyL2Jhc2UnO1xuaW1wb3J0IHsgYmFzZSBhcyBkaXNhYmxlZENTUyB9IGZyb20gJy4vdmFyaWF0aW9ucy9fZGlzYWJsZWQvYmFzZSc7XG5pbXBvcnQgdHlwZSB7IFRleHRBcmVhUHJvcHMgfSBmcm9tICcuL1RleHRBcmVhLnR5cGVzJztcblxuY29uc3Qge1xuICAgIGlubmVyUGxhY2Vob2xkZXJVcCxcbiAgICBmb2N1c2VkT3V0ZXJQbGFjZWhvbGRlckNvbG9yLFxuICAgIGhpZGVQbGFjZUhvbGRlcixcbiAgICBzdHlsZWRDb250YWluZXIsXG4gICAgc3R5bGVkVGV4dEFyZWEsXG4gICAgc3R5bGVkVGV4dEFyZWFXcmFwcGVyLFxuICAgIHN0eWxlZFBsYWNlaG9sZGVyLFxuICAgIHN0eWxlZEhlbHBlcnMsXG59ID0gY2xhc3NlcztcblxuY29uc3Qgb3B0aW9uYWxUZXh0ID0gJ29wdGlvbmFsJztcblxuY29uc3QgYmFzZSA9IGNzc2BcbiAgICAke2FwcGx5RHluYW1pY0xhYmVsfTtcblxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuYDtcblxuLy8gVE9ETzog0KPQtNCw0LvQuNGC0Ywg0L/QvtGB0LvQtSDQvtGC0LrQsNC30LAg0L7RgiDRgdGC0LDRgNGL0YUg0LHQuNCx0LvQuNC+0YLQtdC6IHBsYXNtYS13ZWIgLyBwbGFzbWEtYjJjXG5jb25zdCBmYWxsYmFja1N0YXR1c01hcCA9IHtcbiAgICAnJzogJ3ByaW1hcnknLFxuICAgIHN1Y2Nlc3M6ICdwb3NpdGl2ZScsXG4gICAgd2FybmluZzogJ3dhcm5pbmcnLFxuICAgIGVycm9yOiAnbmVnYXRpdmUnLFxufTtcblxuLy8gVE9ETzog0J/QtdGA0LXQvdC10YHRgtC4INGN0YLQvtGCINC80LXRgtC+0LQg0LIg0YTQsNC50LsgYXBwbHlEeW5hbWljTGFiZWwudHNcbmV4cG9ydCBjb25zdCBnZXREeW5hbWljTGFiZWxDbGFzc2VzID0gKHByb3BzOiBUZXh0QXJlYVByb3BzLCBmb2N1c2VkOiBib29sZWFuKSA9PiB7XG4gICAgY29uc3QgeyByZWFkT25seSwgbGFiZWwsIGxhYmVsUGxhY2VtZW50LCByb3dzLCB2YWx1ZSwgc2l6ZSB9ID0gcHJvcHM7XG5cbiAgICAvLyDQlNC+0LHQsNCy0LjRgtGMINC60LvQsNGB0YEg0L7RgtCy0LXRh9Cw0Y7RidC40Lkg0LfQsCDQuNC30LzQtdC90LXQvdC40LUg0YbQstC10YLQsCDQv9C70LXQudGB0YXQvtC70LTQtdGA0LAg0L/RgNC4INGE0L7QutGD0YHQtVxuICAgIGNvbnN0IHdpdGhGb2N1c2VkT3V0ZXJVcFBsYWNlaG9sZGVyID1cbiAgICAgICAgIXJlYWRPbmx5ICYmIGZvY3VzZWQgJiYgKCFsYWJlbCB8fCBsYWJlbFBsYWNlbWVudCA9PT0gJ291dGVyJykgPyBmb2N1c2VkT3V0ZXJQbGFjZWhvbGRlckNvbG9yIDogdW5kZWZpbmVkO1xuXG4gICAgLy8g0JTQvtCx0LDQstC40YLRjCDQutC70LDRgdGBINC+0YLQstC10YfQsNGO0YnQuNC5INC30LAg0L/QvtC00L3Rj9GC0LjQtSDQuCDRg9C80LXQvdGM0YjQtdC90LjQtSDQv9C70LXQudGB0YXQvtC70LTQtdGA0LBcbiAgICBjb25zdCB3aXRoSW5uZXJQbGFjZWhvbGRlclVwID1cbiAgICAgICAgbGFiZWxQbGFjZW1lbnQgPT09ICdpbm5lcicgJiZcbiAgICAgICAgbGFiZWwgJiZcbiAgICAgICAgIXJvd3MgJiZcbiAgICAgICAgc2l6ZSAhPT0gJ3hzJyAmJlxuICAgICAgICAoKCFyZWFkT25seSAmJiAodmFsdWUgfHwgZm9jdXNlZCkpIHx8IChyZWFkT25seSAmJiB2YWx1ZSkpXG4gICAgICAgICAgICA/IGlubmVyUGxhY2Vob2xkZXJVcFxuICAgICAgICAgICAgOiB1bmRlZmluZWQ7XG5cbiAgICAvLyDQlNC+0LHQsNCy0LjRgtGMINC60LvQsNGB0YEg0L7RgtCy0LXRh9Cw0Y7RidC40Lkg0LfQsCDRgdC60YDRi9GC0LjQtSDQv9C70LXQudGB0YXQvtC70LTQtdGA0LBcbiAgICBjb25zdCB3aXRoSGlkZVBsYWNlaG9sZGVyID1cbiAgICAgICAgKHZhbHVlICYmICFsYWJlbCkgfHxcbiAgICAgICAgKGxhYmVsUGxhY2VtZW50ID09PSAnaW5uZXInICYmICgoZm9jdXNlZCAmJiAhcmVhZE9ubHkpIHx8IHZhbHVlKSAmJiBsYWJlbCAmJiByb3dzKSB8fFxuICAgICAgICAobGFiZWxQbGFjZW1lbnQgPT09ICdvdXRlcicgJiYgdmFsdWUpIHx8XG4gICAgICAgIChsYWJlbFBsYWNlbWVudCA9PT0gJ2lubmVyJyAmJiBzaXplID09PSAneHMnICYmIHZhbHVlKVxuICAgICAgICAgICAgPyBoaWRlUGxhY2VIb2xkZXJcbiAgICAgICAgICAgIDogdW5kZWZpbmVkO1xuXG4gICAgcmV0dXJuIFt3aXRoRm9jdXNlZE91dGVyVXBQbGFjZWhvbGRlciwgd2l0aElubmVyUGxhY2Vob2xkZXJVcCwgd2l0aEhpZGVQbGFjZWhvbGRlcl07XG59O1xuXG5leHBvcnQgY29uc3QgdGV4dEFyZWFSb290ID0gKFJvb3Q6IFJvb3RQcm9wczxIVE1MVGV4dEFyZWFFbGVtZW50LCBUZXh0QXJlYVByb3BzPikgPT5cbiAgICBmb3J3YXJkUmVmPEhUTUxUZXh0QXJlYUVsZW1lbnQsIFRleHRBcmVhUHJvcHM+KChwcm9wcywgaW5uZXJSZWYpID0+IHtcbiAgICAgICAgY29uc3Qge1xuICAgICAgICAgICAgaGVscGVyVGV4dCxcbiAgICAgICAgICAgIHN0YXR1cyxcbiAgICAgICAgICAgIHJlc2l6ZSxcbiAgICAgICAgICAgIHJpZ2h0SGVscGVyLFxuICAgICAgICAgICAgbGVmdEhlbHBlcixcbiAgICAgICAgICAgIGNvbnRlbnRSaWdodCxcbiAgICAgICAgICAgIGF1dG9SZXNpemUgPSBmYWxzZSxcbiAgICAgICAgICAgIG1pbkF1dG8gPSAwLFxuICAgICAgICAgICAgbWF4QXV0byxcbiAgICAgICAgICAgIGxhYmVsLFxuICAgICAgICAgICAgbGFiZWxQbGFjZW1lbnQgPSAnaW5uZXInLFxuICAgICAgICAgICAgcGxhY2Vob2xkZXIsXG4gICAgICAgICAgICBkZWZhdWx0VmFsdWUsXG4gICAgICAgICAgICBoZWlnaHQsXG4gICAgICAgICAgICB3aWR0aCxcbiAgICAgICAgICAgIHZhbHVlLFxuICAgICAgICAgICAgZGlzYWJsZWQsXG4gICAgICAgICAgICByZXF1aXJlZCA9IGZhbHNlLFxuICAgICAgICAgICAgcmVxdWlyZWRQbGFjZW1lbnQgPSAncmlnaHQnLFxuICAgICAgICAgICAgb3B0aW9uYWwgPSBmYWxzZSxcbiAgICAgICAgICAgIGNsZWFyLFxuICAgICAgICAgICAgaGFzRGl2aWRlcixcbiAgICAgICAgICAgIHNpemUsXG4gICAgICAgICAgICB2aWV3LFxuICAgICAgICAgICAgaWQsXG4gICAgICAgICAgICBzdHlsZSxcbiAgICAgICAgICAgIGNsYXNzTmFtZSxcbiAgICAgICAgICAgIHJlYWRPbmx5LFxuICAgICAgICAgICAgcm93cyxcbiAgICAgICAgICAgIGNvbHMsXG4gICAgICAgICAgICBvbkNoYW5nZSxcbiAgICAgICAgICAgIC4uLnJlc3RcbiAgICAgICAgfSA9IHByb3BzO1xuXG4gICAgICAgIGNvbnN0IFtoZWxwZXJXaWR0aCwgc2V0SGVscGVyV2lkdGhdID0gdXNlU3RhdGU8c3RyaW5nPih3aWR0aCA/IGAke3dpZHRofXJlbWAgOiAnMTAwJScpO1xuICAgICAgICBjb25zdCBbZm9jdXNlZCwgc2V0Rm9jdXNlZF0gPSB1c2VTdGF0ZShmYWxzZSk7XG4gICAgICAgIGNvbnN0IFt1bmNvbnRyb2xsZWRWYWx1ZSwgc2V0VW5jb250cm9sbGVkVmFsdWVdID0gdXNlU3RhdGU8c3RyaW5nIHwgdW5kZWZpbmVkPigpO1xuXG4gICAgICAgIGNvbnN0IG91dGVyUmVmID0gY3JlYXRlUmVmPEhUTUxUZXh0QXJlYUVsZW1lbnQ+KCk7XG5cbiAgICAgICAgY29uc3QgaW5uZXJPcHRpb25hbCA9IHJlcXVpcmVkID8gZmFsc2UgOiBvcHRpb25hbDtcbiAgICAgICAgY29uc3QgaGFzSGVscGVyID0gQm9vbGVhbihsZWZ0SGVscGVyIHx8IHJpZ2h0SGVscGVyIHx8IGhlbHBlclRleHQpO1xuICAgICAgICBjb25zdCBoYXNPdXRlckxhYmVsID0gQm9vbGVhbihsYWJlbCAmJiBsYWJlbFBsYWNlbWVudCA9PT0gJ291dGVyJyk7XG4gICAgICAgIGNvbnN0IGhhc0lubmVyTGFiZWwgPSBCb29sZWFuKGxhYmVsICYmIGxhYmVsUGxhY2VtZW50ID09PSAnaW5uZXInICYmIHNpemUgIT09ICd4cycpO1xuICAgICAgICBjb25zdCBoYXNQbGFjZWhvbGRlck9wdGlvbmFsID0gaW5uZXJPcHRpb25hbCAmJiAhaGFzT3V0ZXJMYWJlbDtcblxuICAgICAgICBjb25zdCBvdmVycmlkZGVuVmlldyA9IHN0YXR1cyAhPT0gdW5kZWZpbmVkID8gZmFsbGJhY2tTdGF0dXNNYXBbc3RhdHVzXSA6IHZpZXc7XG4gICAgICAgIGNvbnN0IHRleHRhcmVhSGVscGVySWQgPSBpZCA/IGAke2lkfS1oZWxwZXJgIDogdW5kZWZpbmVkO1xuICAgICAgICBjb25zdCBhcHBseUN1c3RvbVdpZHRoID0gcmVzaXplICE9PSAnaG9yaXpvbnRhbCcgJiYgcmVzaXplICE9PSAnYm90aCcgJiYgIWNvbHM7XG4gICAgICAgIGNvbnN0IHBsYWNlaG9sZGVyTGFiZWwgPSBoYXNJbm5lckxhYmVsID8gbGFiZWwgOiBwbGFjZWhvbGRlcjtcblxuICAgICAgICBjb25zdCBjbGVhckNsYXNzID0gY2xlYXIgPyBjbGFzc2VzLmNsZWFyIDogdW5kZWZpbmVkO1xuICAgICAgICBjb25zdCBoYXNSaWdodENvbnRlbnRDbGFzcyA9IGNvbnRlbnRSaWdodCA/IGNsYXNzZXMuaGFzUmlnaHRDb250ZW50IDogdW5kZWZpbmVkO1xuICAgICAgICBjb25zdCBoYXNEaXZpZGVyQ2xhc3MgPSBoYXNEaXZpZGVyID8gY2xhc3Nlcy5oYXNEaXZpZGVyIDogdW5kZWZpbmVkO1xuICAgICAgICBjb25zdCByZXF1aXJlZFBsYWNlbWVudENsYXNzID0gcmVxdWlyZWRQbGFjZW1lbnQgPT09ICdyaWdodCcgPyAnYWxpZ24tcmlnaHQgJyA6IHVuZGVmaW5lZDtcblxuICAgICAgICB1c2VSZXNpemVPYnNlcnZlcihvdXRlclJlZiwgKGN1cnJlbnRFbGVtZW50KSA9PiB7XG4gICAgICAgICAgICBjb25zdCB7IHdpZHRoOiBpbmxpbmVXaWR0aCB9ID0gY3VycmVudEVsZW1lbnQuc3R5bGU7XG5cbiAgICAgICAgICAgIGlmIChpbmxpbmVXaWR0aCB8fCBjb2xzKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgeyB3aWR0aDogZWxlbWVudFdpZHRoIH0gPSBjdXJyZW50RWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcbiAgICAgICAgICAgICAgICBzZXRIZWxwZXJXaWR0aChgJHtlbGVtZW50V2lkdGggLyBST09UX0ZPTlRfU0laRX1yZW1gKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG5cbiAgICAgICAgdXNlQXV0b1Jlc2l6ZShhdXRvUmVzaXplIHx8IEJvb2xlYW4oY2xlYXIpLCBvdXRlclJlZiwgdmFsdWUsIG1pbkF1dG8sIG1heEF1dG8pO1xuXG4gICAgICAgIGNvbnN0IG9uRm9jdXNIYW5kbGVyID0gdXNlQ2FsbGJhY2soKCkgPT4ge1xuICAgICAgICAgICAgc2V0Rm9jdXNlZCh0cnVlKTtcbiAgICAgICAgfSwgW10pO1xuXG4gICAgICAgIGNvbnN0IG9uQmx1ckhhbmRsZXIgPSB1c2VDYWxsYmFjaygoKSA9PiB7XG4gICAgICAgICAgICBzZXRGb2N1c2VkKGZhbHNlKTtcbiAgICAgICAgfSwgW10pO1xuXG4gICAgICAgIGNvbnN0IG9uQ2hhbmdlSGFuZGxlciA9IHVzZUNhbGxiYWNrKFxuICAgICAgICAgICAgKGV2ZW50OiBSZWFjdC5DaGFuZ2VFdmVudDxIVE1MVGV4dEFyZWFFbGVtZW50PikgPT4ge1xuICAgICAgICAgICAgICAgIC8vIElORk86INCU0LvRjyDQutGA0LDQudC90LUg0YDQtdC00LrQuNGFINC60LXQudGB0L7Qsiwg0LrQvtCz0LTQsCB2YWx1ZSDRgdC90LDRgNGD0LbQuCDQvdC1INC60L7QvdGC0YDQvtC70LjRgNGD0LXRgtGB0Y9cbiAgICAgICAgICAgICAgICBpZiAodmFsdWUgPT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgICAgICAgICBzZXRVbmNvbnRyb2xsZWRWYWx1ZShldmVudD8udGFyZ2V0LnZhbHVlKTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBvbkNoYW5nZT8uKGV2ZW50KTtcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBbdmFsdWUsIG9uQ2hhbmdlXSxcbiAgICAgICAgKTtcblxuICAgICAgICBjb25zdCBoYW5kbGVUZXh0QXJlYUZvY3VzID0gKCkgPT4ge1xuICAgICAgICAgICAgaWYgKHJlYWRPbmx5IHx8IGRpc2FibGVkIHx8ICFvdXRlclJlZj8uY3VycmVudCkge1xuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgb3V0ZXJSZWYuY3VycmVudC5zY3JvbGxUbyh7XG4gICAgICAgICAgICAgICAgdG9wOiAwLFxuICAgICAgICAgICAgICAgIGxlZnQ6IG91dGVyUmVmLmN1cnJlbnQub2Zmc2V0TGVmdCxcbiAgICAgICAgICAgICAgICBiZWhhdmlvcjogJ3Ntb290aCcsXG4gICAgICAgICAgICB9KTtcblxuICAgICAgICAgICAgb3V0ZXJSZWYuY3VycmVudC5mb2N1cygpO1xuICAgICAgICB9O1xuXG4gICAgICAgIGNvbnN0IGR5bmFtaWNMYWJlbENsYXNzZXMgPSBnZXREeW5hbWljTGFiZWxDbGFzc2VzKFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIHNpemUsXG4gICAgICAgICAgICAgICAgcmVhZE9ubHksXG4gICAgICAgICAgICAgICAgbGFiZWwsXG4gICAgICAgICAgICAgICAgbGFiZWxQbGFjZW1lbnQsXG4gICAgICAgICAgICAgICAgdmFsdWU6IHZhbHVlIHx8IHVuY29udHJvbGxlZFZhbHVlIHx8IGRlZmF1bHRWYWx1ZSxcbiAgICAgICAgICAgICAgICByb3dzLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIGZvY3VzZWQsXG4gICAgICAgICk7XG5cbiAgICAgICAgY29uc3Qgb3B0aW9uYWxUZXh0Tm9kZSA9IGlubmVyT3B0aW9uYWwgPyAoXG4gICAgICAgICAgICA8U3R5bGVkT3B0aW9uYWxUZXh0PlxuICAgICAgICAgICAgICAgIHtCb29sZWFuKGhhc1BsYWNlaG9sZGVyT3B0aW9uYWwgPyBwbGFjZWhvbGRlckxhYmVsIDogbGFiZWwpICYmICdcXHhhMCd9XG4gICAgICAgICAgICAgICAge29wdGlvbmFsVGV4dH1cbiAgICAgICAgICAgIDwvU3R5bGVkT3B0aW9uYWxUZXh0PlxuICAgICAgICApIDogbnVsbDtcblxuICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgPFJvb3RcbiAgICAgICAgICAgICAgICB2aWV3PXtvdmVycmlkZGVuVmlld31cbiAgICAgICAgICAgICAgICBzaXplPXtzaXplfVxuICAgICAgICAgICAgICAgIGRpc2FibGVkPXtkaXNhYmxlZH1cbiAgICAgICAgICAgICAgICByZWFkT25seT17cmVhZE9ubHl9XG4gICAgICAgICAgICAgICAgY2xlYXI9e2NsZWFyfVxuICAgICAgICAgICAgICAgIHN0eWxlPXt7IHdpZHRoOiBoZWxwZXJXaWR0aCwgLi4uc3R5bGUgfX1cbiAgICAgICAgICAgICAgICBjbGFzc05hbWU9e2N4KGNsZWFyQ2xhc3MsIGhhc0RpdmlkZXJDbGFzcywgY2xhc3NOYW1lKX1cbiAgICAgICAgICAgICAgICBvbkNsaWNrPXtoYW5kbGVUZXh0QXJlYUZvY3VzfVxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIHtoYXNPdXRlckxhYmVsICYmIChcbiAgICAgICAgICAgICAgICAgICAgPFN0eWxlZExhYmVsPlxuICAgICAgICAgICAgICAgICAgICAgICAge3JlcXVpcmVkICYmIChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8U3R5bGVkSW5kaWNhdG9yIGNsYXNzTmFtZT17Y3goY2xhc3Nlcy5vdXRlckxhYmVsUGxhY2VtZW50LCByZXF1aXJlZFBsYWNlbWVudENsYXNzKX0gLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgICAgICAgICB7bGFiZWx9XG4gICAgICAgICAgICAgICAgICAgICAgICB7b3B0aW9uYWxUZXh0Tm9kZX1cbiAgICAgICAgICAgICAgICAgICAgPC9TdHlsZWRMYWJlbD5cbiAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgIDxTdHlsZWRDb250YWluZXJcbiAgICAgICAgICAgICAgICAgICAgY2xhc3NOYW1lPXtjeChzdHlsZWRDb250YWluZXIsIC4uLmR5bmFtaWNMYWJlbENsYXNzZXMpfVxuICAgICAgICAgICAgICAgICAgICB3aWR0aD17aGVscGVyV2lkdGh9XG4gICAgICAgICAgICAgICAgICAgIG9uRm9jdXM9e29uRm9jdXNIYW5kbGVyfVxuICAgICAgICAgICAgICAgICAgICBvbkJsdXI9e29uQmx1ckhhbmRsZXJ9XG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICB7cmVxdWlyZWQgJiYgIWhhc091dGVyTGFiZWwgJiYgKFxuICAgICAgICAgICAgICAgICAgICAgICAgPFN0eWxlZEluZGljYXRvciBjbGFzc05hbWU9e2N4KGNsYXNzZXMuaW5uZXJMYWJlbFBsYWNlbWVudCwgcmVxdWlyZWRQbGFjZW1lbnRDbGFzcyl9IC8+XG4gICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgICAgIHtjb250ZW50UmlnaHQgJiYgPFN0eWxlZENvbnRlbnQ+e2NvbnRlbnRSaWdodH08L1N0eWxlZENvbnRlbnQ+fVxuICAgICAgICAgICAgICAgICAgICA8U3R5bGVkVGV4dEFyZWFXcmFwcGVyIGNsYXNzTmFtZT17c3R5bGVkVGV4dEFyZWFXcmFwcGVyfSBoYXNIZWxwZXI9e2hhc0hlbHBlcn0+XG4gICAgICAgICAgICAgICAgICAgICAgICA8U3R5bGVkVGV4dEFyZWFcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzc05hbWU9e2N4KHN0eWxlZFRleHRBcmVhLCBoYXNSaWdodENvbnRlbnRDbGFzcyl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWQ9e2lkfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhhc0NvbnRlbnRSaWdodD17Qm9vbGVhbihjb250ZW50UmlnaHQpfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhhc0hlbHBlcj17aGFzSGVscGVyfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFwcGx5Q3VzdG9tV2lkdGg9e2FwcGx5Q3VzdG9tV2lkdGh9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVmPXttZXJnZVJlZnMob3V0ZXJSZWYsIGlubmVyUmVmKX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNhYmxlZD17ZGlzYWJsZWR9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0PXthdXRvUmVzaXplIHx8IEJvb2xlYW4oY2xlYXIpID8gbWluQXV0byA6IGhlaWdodH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aD17d2lkdGh9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcGxhY2Vob2xkZXI9e3BsYWNlaG9sZGVyTGFiZWx9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYXJpYS1kZXNjcmliZWRieT17dGV4dGFyZWFIZWxwZXJJZH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZT17dmFsdWV9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVhZE9ubHk9e3JlYWRPbmx5fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJvd3M9e3Jvd3N9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29scz17Y29sc31cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXNpemU9e3Jlc2l6ZX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZWZhdWx0VmFsdWU9e2RlZmF1bHRWYWx1ZX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvbkNoYW5nZT17b25DaGFuZ2VIYW5kbGVyfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsuLi5yZXN0fVxuICAgICAgICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgICAgPC9TdHlsZWRUZXh0QXJlYVdyYXBwZXI+XG4gICAgICAgICAgICAgICAgICAgIHtoYXNIZWxwZXIgJiYgKFxuICAgICAgICAgICAgICAgICAgICAgICAgPFN0eWxlZEhlbHBlcnMgY2xhc3NOYW1lPXtzdHlsZWRIZWxwZXJzfSBpZD17dGV4dGFyZWFIZWxwZXJJZH0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgeyhsZWZ0SGVscGVyIHx8IGhlbHBlclRleHQpICYmIChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPFN0eWxlZExlZnRIZWxwZXI+e2xlZnRIZWxwZXIgfHwgaGVscGVyVGV4dH08L1N0eWxlZExlZnRIZWxwZXI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7cmlnaHRIZWxwZXIgJiYgPFN0eWxlZFJpZ2h0SGVscGVyPntyaWdodEhlbHBlcn08L1N0eWxlZFJpZ2h0SGVscGVyPn1cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvU3R5bGVkSGVscGVycz5cbiAgICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgICAge3BsYWNlaG9sZGVyTGFiZWwgJiYgKFxuICAgICAgICAgICAgICAgICAgICAgICAgPFN0eWxlZFBsYWNlaG9sZGVyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaGFzQ29udGVudFJpZ2h0PXtCb29sZWFuKGNvbnRlbnRSaWdodCl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3NOYW1lPXtzdHlsZWRQbGFjZWhvbGRlcn1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBodG1sRm9yPXtpZH1cbiAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7cGxhY2Vob2xkZXJMYWJlbH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7IWhhc091dGVyTGFiZWwgJiYgb3B0aW9uYWxUZXh0Tm9kZX1cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvU3R5bGVkUGxhY2Vob2xkZXI+XG4gICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgPC9TdHlsZWRDb250YWluZXI+XG4gICAgICAgICAgICA8L1Jvb3Q+XG4gICAgICAgICk7XG4gICAgfSk7XG5cbmV4cG9ydCBjb25zdCB0ZXh0QXJlYUNvbmZpZyA9IHtcbiAgICBuYW1lOiAnVGV4dEFyZWEnLFxuICAgIHRhZzogJ2RpdicsXG4gICAgbGF5b3V0OiB0ZXh0QXJlYVJvb3QsXG4gICAgYmFzZSxcbiAgICB2YXJpYXRpb25zOiB7XG4gICAgICAgIHNpemU6IHtcbiAgICAgICAgICAgIGNzczogc2l6ZUNTUyxcbiAgICAgICAgfSxcbiAgICAgICAgdmlldzoge1xuICAgICAgICAgICAgY3NzOiB2aWV3Q1NTLFxuICAgICAgICB9LFxuICAgICAgICBjbGVhcjoge1xuICAgICAgICAgICAgY3NzOiBjbGVhckNTUyxcbiAgICAgICAgICAgIGF0dHJzOiB0cnVlLFxuICAgICAgICB9LFxuICAgICAgICBkaXNhYmxlZDoge1xuICAgICAgICAgICAgY3NzOiBkaXNhYmxlZENTUyxcbiAgICAgICAgICAgIGF0dHJzOiB0cnVlLFxuICAgICAgICB9LFxuICAgICAgICByZWFkT25seToge1xuICAgICAgICAgICAgYXR0cnM6IHRydWUsXG4gICAgICAgIH0sXG4gICAgfSxcbiAgICBkZWZhdWx0czoge1xuICAgICAgICBzaXplOiAnbScsXG4gICAgICAgIHZpZXc6ICdwcmltYXJ5JyxcbiAgICB9LFxufTtcbiJdfQ== */"));
|
43
43
|
|
44
44
|
// TODO: Удалить после отказа от старых библиотек plasma-web / plasma-b2c
|
45
45
|
var fallbackStatusMap = {
|
@@ -156,6 +156,17 @@ export var textAreaRoot = function textAreaRoot(Root) {
|
|
156
156
|
}
|
157
157
|
onChange === null || onChange === void 0 || onChange(event);
|
158
158
|
}, [value, onChange]);
|
159
|
+
var handleTextAreaFocus = function handleTextAreaFocus() {
|
160
|
+
if (readOnly || disabled || !(outerRef !== null && outerRef !== void 0 && outerRef.current)) {
|
161
|
+
return;
|
162
|
+
}
|
163
|
+
outerRef.current.scrollTo({
|
164
|
+
top: 0,
|
165
|
+
left: outerRef.current.offsetLeft,
|
166
|
+
behavior: 'smooth'
|
167
|
+
});
|
168
|
+
outerRef.current.focus();
|
169
|
+
};
|
159
170
|
var dynamicLabelClasses = getDynamicLabelClasses({
|
160
171
|
size: size,
|
161
172
|
readOnly: readOnly,
|
@@ -174,7 +185,8 @@ export var textAreaRoot = function textAreaRoot(Root) {
|
|
174
185
|
style: _objectSpread({
|
175
186
|
width: helperWidth
|
176
187
|
}, style),
|
177
|
-
className: cx(clearClass, hasDividerClass, className)
|
188
|
+
className: cx(clearClass, hasDividerClass, className),
|
189
|
+
onClick: handleTextAreaFocus
|
178
190
|
}, hasOuterLabel && /*#__PURE__*/React.createElement(StyledLabel, null, required && /*#__PURE__*/React.createElement(StyledIndicator, {
|
179
191
|
className: cx(classes.outerLabelPlacement, requiredPlacementClass)
|
180
192
|
}), label, optionalTextNode), /*#__PURE__*/React.createElement(StyledContainer, {
|
@@ -2,5 +2,6 @@ import { component, mergeConfig } from '../../../../engines';
|
|
2
2
|
import { comboboxNewConfig } from '../../../..';
|
3
3
|
import { config } from './Combobox.config';
|
4
4
|
var mergedConfig = /*#__PURE__*/mergeConfig(comboboxNewConfig, config);
|
5
|
-
var
|
5
|
+
var ComboboxComponent = /*#__PURE__*/component(mergedConfig);
|
6
|
+
var Combobox = ComboboxComponent;
|
6
7
|
export { Combobox };
|
@@ -332,7 +332,6 @@ const SingleStory = (args: StorySelectProps) => {
|
|
332
332
|
value={value}
|
333
333
|
onChange={setValue}
|
334
334
|
contentLeft={args.enableContentLeft ? <IconDone size="s" /> : undefined}
|
335
|
-
autoComplete="off"
|
336
335
|
/>
|
337
336
|
</div>
|
338
337
|
);
|
@@ -362,7 +361,6 @@ const MultipleStory = (args: StorySelectProps) => {
|
|
362
361
|
value={value}
|
363
362
|
onChange={setValue}
|
364
363
|
contentLeft={args.enableContentLeft ? <IconDone size="s" /> : undefined}
|
365
|
-
autoComplete="off"
|
366
364
|
/>
|
367
365
|
</div>
|
368
366
|
);
|
@@ -2,5 +2,6 @@ import { component, mergeConfig } from '../../../../engines';
|
|
2
2
|
import { comboboxNewConfig } from '../../../..';
|
3
3
|
import { config } from './Combobox.config';
|
4
4
|
var mergedConfig = /*#__PURE__*/mergeConfig(comboboxNewConfig, config);
|
5
|
-
var
|
5
|
+
var ComboboxComponent = /*#__PURE__*/component(mergedConfig);
|
6
|
+
var Combobox = ComboboxComponent;
|
6
7
|
export { Combobox };
|
@@ -332,7 +332,6 @@ const SingleStory = (args: StorySelectProps) => {
|
|
332
332
|
value={value}
|
333
333
|
onChange={setValue}
|
334
334
|
contentLeft={args.enableContentLeft ? <IconDone size="s" /> : undefined}
|
335
|
-
autoComplete="off"
|
336
335
|
/>
|
337
336
|
</div>
|
338
337
|
);
|
@@ -362,7 +361,6 @@ const MultipleStory = (args: StorySelectProps) => {
|
|
362
361
|
value={value}
|
363
362
|
onChange={setValue}
|
364
363
|
contentLeft={args.enableContentLeft ? <IconDone size="s" /> : undefined}
|
365
|
-
autoComplete="off"
|
366
364
|
/>
|
367
365
|
</div>
|
368
366
|
);
|
@@ -9,15 +9,15 @@ import { objectSpread2 as _objectSpread2 } from '../../../../_virtual/_rollupPlu
|
|
9
9
|
// Не мутирует исходные данные.
|
10
10
|
var filterItems = function filterItems(items, textValue, currentLabel, customFilter) {
|
11
11
|
if (!textValue || textValue === currentLabel) return items;
|
12
|
-
var defaultFilter = function defaultFilter(
|
13
|
-
return label.toLowerCase().includes(value.toLowerCase());
|
12
|
+
var defaultFilter = function defaultFilter(item, value) {
|
13
|
+
return item.label.toLowerCase().includes(value.toLowerCase());
|
14
14
|
};
|
15
15
|
var filter = customFilter || defaultFilter;
|
16
16
|
var dfs = function dfs(items) {
|
17
17
|
var newItems = [];
|
18
18
|
items.forEach(function (item) {
|
19
19
|
if (item.items) {
|
20
|
-
if (filter(item
|
20
|
+
if (filter(item, textValue)) {
|
21
21
|
newItems.push(item);
|
22
22
|
return;
|
23
23
|
}
|
@@ -27,13 +27,12 @@ var filterItems = function filterItems(items, textValue, currentLabel, customFil
|
|
27
27
|
items: res
|
28
28
|
}));
|
29
29
|
}
|
30
|
-
} else if (filter(item
|
30
|
+
} else if (filter(item, textValue)) {
|
31
31
|
newItems.push(item);
|
32
32
|
}
|
33
33
|
});
|
34
34
|
return newItems;
|
35
35
|
};
|
36
|
-
dfs(items);
|
37
36
|
return dfs(items);
|
38
37
|
};
|
39
38
|
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"filterItems.js","sources":["../../../../../src/components/Combobox/ComboboxNew/utils/filterItems.ts"],"sourcesContent":["import { ItemOptionTransformed } from '../ui/Inner/ui/Item/Item.types';\n\n// Утилита, возвращающая отфильтрованное дерево items.\n// Фильтрация происходит как по названиям категорий, так и по названиям конечных элементов.\n// По дефолту регистр игнорируется. Но можно прокинуть свою функцию для кастомной фильтрации.\n// Фильтрация отключается в 2 случаях:\n// 1) При пустом инпуте (юзер пока еще не ввел значение или уже очистил);\n// 2) Если значение инпута совпадает с выбранным элементом (когда юзер выбрал айтем, но потом решил снова открыть);\n// Не мутирует исходные данные.\nexport const filterItems = (\n items: Array<ItemOptionTransformed>,\n textValue: string,\n currentLabel: string,\n customFilter?: (
|
1
|
+
{"version":3,"file":"filterItems.js","sources":["../../../../../src/components/Combobox/ComboboxNew/utils/filterItems.ts"],"sourcesContent":["import { ItemOptionTransformed, ItemOption } from '../ui/Inner/ui/Item/Item.types';\n\n// Утилита, возвращающая отфильтрованное дерево items.\n// Фильтрация происходит как по названиям категорий, так и по названиям конечных элементов.\n// По дефолту регистр игнорируется. Но можно прокинуть свою функцию для кастомной фильтрации.\n// Фильтрация отключается в 2 случаях:\n// 1) При пустом инпуте (юзер пока еще не ввел значение или уже очистил);\n// 2) Если значение инпута совпадает с выбранным элементом (когда юзер выбрал айтем, но потом решил снова открыть);\n// Не мутирует исходные данные.\nexport const filterItems = (\n items: Array<ItemOptionTransformed>,\n textValue: string,\n currentLabel: string,\n customFilter?: (item: ItemOption, value: string) => boolean,\n): Array<ItemOptionTransformed> => {\n if (!textValue || textValue === currentLabel) return items;\n\n const defaultFilter = (item: ItemOption, value: string) => item.label.toLowerCase().includes(value.toLowerCase());\n\n const filter = customFilter || defaultFilter;\n\n const dfs = (items: Array<ItemOptionTransformed>) => {\n const newItems: Array<ItemOptionTransformed> = [];\n\n items.forEach((item) => {\n if (item.items) {\n if (filter(item, textValue)) {\n newItems.push(item);\n return;\n }\n\n const res = dfs(item.items);\n\n if (res.length > 0) {\n newItems.push({ ...item, items: res });\n }\n } else if (filter(item, textValue)) {\n newItems.push(item);\n }\n });\n\n return newItems;\n };\n\n return dfs(items);\n};\n"],"names":["filterItems","items","textValue","currentLabel","customFilter","defaultFilter","item","value","label","toLowerCase","includes","filter","dfs","newItems","forEach","push","res","length","_objectSpread"],"mappings":";;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACaA,IAAAA,WAAW,GAAG,SAAdA,WAAWA,CACpBC,KAAmC,EACnCC,SAAiB,EACjBC,YAAoB,EACpBC,YAA2D,EAC5B;EAC/B,IAAI,CAACF,SAAS,IAAIA,SAAS,KAAKC,YAAY,EAAE,OAAOF,KAAK,CAAA;AAE1D,EAAA,IAAMI,aAAa,GAAG,SAAhBA,aAAaA,CAAIC,IAAgB,EAAEC,KAAa,EAAA;AAAA,IAAA,OAAKD,IAAI,CAACE,KAAK,CAACC,WAAW,EAAE,CAACC,QAAQ,CAACH,KAAK,CAACE,WAAW,EAAE,CAAC,CAAA;AAAA,GAAA,CAAA;AAEjH,EAAA,IAAME,MAAM,GAAGP,YAAY,IAAIC,aAAa,CAAA;AAE5C,EAAA,IAAMO,GAAG,GAAG,SAANA,GAAGA,CAAIX,KAAmC,EAAK;IACjD,IAAMY,QAAsC,GAAG,EAAE,CAAA;AAEjDZ,IAAAA,KAAK,CAACa,OAAO,CAAC,UAACR,IAAI,EAAK;MACpB,IAAIA,IAAI,CAACL,KAAK,EAAE;AACZ,QAAA,IAAIU,MAAM,CAACL,IAAI,EAAEJ,SAAS,CAAC,EAAE;AACzBW,UAAAA,QAAQ,CAACE,IAAI,CAACT,IAAI,CAAC,CAAA;AACnB,UAAA,OAAA;AACJ,SAAA;AAEA,QAAA,IAAMU,GAAG,GAAGJ,GAAG,CAACN,IAAI,CAACL,KAAK,CAAC,CAAA;AAE3B,QAAA,IAAIe,GAAG,CAACC,MAAM,GAAG,CAAC,EAAE;AAChBJ,UAAAA,QAAQ,CAACE,IAAI,CAAAG,cAAA,CAAAA,cAAA,KAAMZ,IAAI,CAAA,EAAA,EAAA,EAAA;AAAEL,YAAAA,KAAK,EAAEe,GAAAA;AAAG,WAAA,CAAE,CAAC,CAAA;AAC1C,SAAA;OACH,MAAM,IAAIL,MAAM,CAACL,IAAI,EAAEJ,SAAS,CAAC,EAAE;AAChCW,QAAAA,QAAQ,CAACE,IAAI,CAACT,IAAI,CAAC,CAAA;AACvB,OAAA;AACJ,KAAC,CAAC,CAAA;AAEF,IAAA,OAAOO,QAAQ,CAAA;GAClB,CAAA;EAED,OAAOD,GAAG,CAACX,KAAK,CAAC,CAAA;AACrB;;;;"}
|