@salutejs/plasma-new-hope 0.176.0-canary.1511.11555353496.0 → 0.176.0-canary.1511.11569320253.0
Sign up to get free protection for your applications and to get access to all the features.
- package/cjs/components/NumberInput/NumberInput.css +1 -1
- package/cjs/components/NumberInput/NumberInput.tokens.js +1 -0
- package/cjs/components/NumberInput/NumberInput.tokens.js.map +1 -1
- package/cjs/components/NumberInput/ui/Input/Input.js +24 -22
- package/cjs/components/NumberInput/ui/Input/Input.js.map +1 -1
- package/cjs/components/NumberInput/variations/_segmentation/base.js +1 -1
- package/cjs/components/NumberInput/variations/_segmentation/base.js.map +1 -1
- package/cjs/components/NumberInput/variations/_segmentation/base_1jt83uh.css +1 -0
- package/cjs/index.css +1 -1
- package/emotion/cjs/components/NumberInput/NumberInput.tokens.js +1 -0
- package/emotion/cjs/components/NumberInput/ui/Input/Input.js +24 -22
- package/emotion/cjs/components/NumberInput/variations/_segmentation/base.js +1 -1
- package/emotion/cjs/examples/plasma_b2c/components/NumberInput/NumberInput.config.js +16 -16
- package/emotion/cjs/examples/plasma_web/components/NumberInput/NumberInput.config.js +16 -16
- package/emotion/es/components/NumberInput/NumberInput.tokens.js +1 -0
- package/emotion/es/components/NumberInput/ui/Input/Input.js +24 -22
- package/emotion/es/components/NumberInput/variations/_segmentation/base.js +1 -1
- package/emotion/es/examples/plasma_b2c/components/NumberInput/NumberInput.config.js +16 -16
- package/emotion/es/examples/plasma_web/components/NumberInput/NumberInput.config.js +16 -16
- package/es/components/NumberInput/NumberInput.css +1 -1
- package/es/components/NumberInput/NumberInput.tokens.js +1 -0
- package/es/components/NumberInput/NumberInput.tokens.js.map +1 -1
- package/es/components/NumberInput/ui/Input/Input.js +24 -22
- package/es/components/NumberInput/ui/Input/Input.js.map +1 -1
- package/es/components/NumberInput/variations/_segmentation/base.js +1 -1
- package/es/components/NumberInput/variations/_segmentation/base.js.map +1 -1
- package/es/components/NumberInput/variations/_segmentation/base_1jt83uh.css +1 -0
- package/es/index.css +1 -1
- package/package.json +2 -2
- package/styled-components/cjs/components/NumberInput/NumberInput.tokens.js +1 -0
- package/styled-components/cjs/components/NumberInput/ui/Input/Input.js +24 -22
- package/styled-components/cjs/components/NumberInput/variations/_segmentation/base.js +1 -1
- package/styled-components/cjs/examples/plasma_b2c/components/NumberInput/NumberInput.config.js +4 -4
- package/styled-components/cjs/examples/plasma_web/components/NumberInput/NumberInput.config.js +4 -4
- package/styled-components/es/components/NumberInput/NumberInput.tokens.js +1 -0
- package/styled-components/es/components/NumberInput/ui/Input/Input.js +24 -22
- package/styled-components/es/components/NumberInput/variations/_segmentation/base.js +1 -1
- package/styled-components/es/examples/plasma_b2c/components/NumberInput/NumberInput.config.js +4 -4
- package/styled-components/es/examples/plasma_web/components/NumberInput/NumberInput.config.js +4 -4
- package/types/components/NumberInput/NumberInput.tokens.d.ts +1 -0
- package/types/components/NumberInput/NumberInput.tokens.d.ts.map +1 -1
- package/types/components/NumberInput/ui/Input/Input.d.ts.map +1 -1
- package/types/components/NumberInput/variations/_segmentation/base.d.ts.map +1 -1
- package/types/examples/plasma_b2c/components/NumberInput/NumberInput.config.d.ts.map +1 -1
- package/types/examples/plasma_web/components/NumberInput/NumberInput.config.d.ts.map +1 -1
- package/cjs/components/NumberInput/variations/_segmentation/base_1mg9wqg.css +0 -1
- package/es/components/NumberInput/variations/_segmentation/base_1mg9wqg.css +0 -1
@@ -23,6 +23,7 @@ export var tokens = {
|
|
23
23
|
disabledOpacity: '--plasma-number-input_disabled-opacity',
|
24
24
|
// Action button view tokens
|
25
25
|
iconButtonColor: '--plasma-number-input_icon-button_color',
|
26
|
+
iconButtonColorSolidHover: '--plasma-number-input_icon-button_color_solid-hover',
|
26
27
|
iconButtonBackgroundColor: '--plasma-number-input_icon-button_background-color',
|
27
28
|
iconButtonColorHover: '--plasma-number-input_icon-button_color-hover',
|
28
29
|
iconButtonBackgroundColorHover: '--plasma-number-input_icon-button_background-color-hover',
|
@@ -79,6 +79,27 @@ export var NumberInput = /*#__PURE__*/forwardRef(function (_ref, ref) {
|
|
79
79
|
onChange(event, newValue);
|
80
80
|
}
|
81
81
|
};
|
82
|
+
var validateValue = function validateValue(newValue) {
|
83
|
+
console.log(newValue);
|
84
|
+
if (!newValue || !isNumber(newValue)) {
|
85
|
+
setValues(null, lastValidValue);
|
86
|
+
return;
|
87
|
+
}
|
88
|
+
if (String(newValue).endsWith('.')) {
|
89
|
+
setValues(null, Number(newValue));
|
90
|
+
return;
|
91
|
+
}
|
92
|
+
var resValue = Number(newValue);
|
93
|
+
if (max && resValue > max) {
|
94
|
+
setErrorClass(classes.errorAnimation);
|
95
|
+
setErrorValue(max);
|
96
|
+
return;
|
97
|
+
}
|
98
|
+
if (min && resValue < min) {
|
99
|
+
setErrorClass(classes.errorAnimation);
|
100
|
+
setErrorValue(min);
|
101
|
+
}
|
102
|
+
};
|
82
103
|
var handleManualInputChange = function handleManualInputChange(event) {
|
83
104
|
var _textWrapperRef$curre, _wrapperRef$current;
|
84
105
|
if (!isManualInput || disabled) {
|
@@ -105,21 +126,10 @@ export var NumberInput = /*#__PURE__*/forwardRef(function (_ref, ref) {
|
|
105
126
|
setValues(event, lastValidValue);
|
106
127
|
return;
|
107
128
|
}
|
108
|
-
var resValue = Number(cleanValue);
|
109
|
-
if (max && resValue > max) {
|
110
|
-
setErrorClass(classes.errorAnimation);
|
111
|
-
setErrorValue(max);
|
112
|
-
return;
|
113
|
-
}
|
114
|
-
if (min && resValue < min) {
|
115
|
-
setErrorClass(classes.errorAnimation);
|
116
|
-
setErrorValue(min);
|
117
|
-
return;
|
118
|
-
}
|
119
129
|
if (textWrapperRef !== null && textWrapperRef !== void 0 && textWrapperRef.current && wrapperRef !== null && wrapperRef !== void 0 && wrapperRef.current && (textWrapperRef === null || textWrapperRef === void 0 || (_textWrapperRef$curre = textWrapperRef.current) === null || _textWrapperRef$curre === void 0 ? void 0 : _textWrapperRef$curre.clientWidth) > (wrapperRef === null || wrapperRef === void 0 || (_wrapperRef$current = wrapperRef.current) === null || _wrapperRef$current === void 0 ? void 0 : _wrapperRef$current.clientWidth)) {
|
120
130
|
wrapperRef.current.scrollLeft = textWrapperRef.current.offsetWidth - textWrapperRef.current.offsetLeft || 0;
|
121
131
|
}
|
122
|
-
setValues(event,
|
132
|
+
setValues(event, Number(cleanValue));
|
123
133
|
};
|
124
134
|
var handleClickInputWrapper = function handleClickInputWrapper() {
|
125
135
|
if (!isManualInput || !inputRef.current) {
|
@@ -132,11 +142,7 @@ export var NumberInput = /*#__PURE__*/forwardRef(function (_ref, ref) {
|
|
132
142
|
};
|
133
143
|
var handleBlur = function handleBlur(event) {
|
134
144
|
setIsEditing(false);
|
135
|
-
|
136
|
-
setValues(null, lastValidValue);
|
137
|
-
} else if (String(value).endsWith('.')) {
|
138
|
-
setValues(null, Number(value));
|
139
|
-
}
|
145
|
+
validateValue(value);
|
140
146
|
if (onBlur) {
|
141
147
|
onBlur(event);
|
142
148
|
}
|
@@ -147,11 +153,7 @@ export var NumberInput = /*#__PURE__*/forwardRef(function (_ref, ref) {
|
|
147
153
|
}
|
148
154
|
if (event.keyCode === keyCodes.Enter) {
|
149
155
|
event.preventDefault();
|
150
|
-
|
151
|
-
setValues(null, lastValidValue);
|
152
|
-
} else if (String(value).endsWith('.')) {
|
153
|
-
setValues(null, Number(value));
|
154
|
-
}
|
156
|
+
validateValue(value);
|
155
157
|
if (onKeyDown) {
|
156
158
|
onKeyDown(event);
|
157
159
|
}
|
@@ -3,4 +3,4 @@ import { classes, privateTokens, tokens } from '../../NumberInput.tokens';
|
|
3
3
|
import { StyledIconButton } from '../../ui/ActionButton/ActionButton.styles';
|
4
4
|
import { AdditionalText, Input, InputWrapper, StyledSpinner } from '../../ui/Input/Input.styles';
|
5
5
|
import { spinnerTokens } from '../../../Spinner';
|
6
|
-
export var base = /*#__PURE__*/css(InputWrapper, "{border-radius:var(", tokens.inputWrapperBorderRadius, ");}", StyledIconButton, "{", privateTokens.segmentationBorderRadius, ":var(", tokens.iconButtonRadius, ");&.", classes.segmentedView, ",&.", classes.solidView, "{", privateTokens.segmentationBorderRadius, ":var(", tokens.iconButtonSegmentationRadius, ", var(", tokens.iconButtonRadius, "));}&.", classes.actionButtonDecrement, "{border-radius:var(", tokens.iconButtonRadius, ") var(", privateTokens.segmentationBorderRadius, ") var(", privateTokens.segmentationBorderRadius, ") var(", tokens.iconButtonRadius, ");}&.", classes.actionButtonIncrement, "{border-radius:var(", privateTokens.segmentationBorderRadius, ") var(", tokens.iconButtonRadius, ") var(", tokens.iconButtonRadius, ") var(", privateTokens.segmentationBorderRadius, ");}}&.", classes.segmentedView, "{", InputWrapper, "{border-radius:var(", tokens.iconButtonSegmentationRadius, ");}}&.", classes.solidView, "{position:relative;&:before{content:'';position:absolute;top:0;left:50%;transform:translateX(-50%);width:calc(100% - var(", tokens.iconButtonWidth, ") * 2);height:100%;background:var(", tokens.backgroundColorSolid, ");}", InputWrapper, "{position:relative;color:var(", tokens.colorSolid, ");&:not(", classes.errorAnimation, ").", classes.manualInput, ":focus-within{background-color:var(", tokens.backgroundColorSolidFocus, ");box-shadow:inset 0 0 0 var(", tokens.inputWrapperBorderWidth, ") var(", tokens.borderColorSolidFocus, ");}}
|
6
|
+
export var base = /*#__PURE__*/css(InputWrapper, "{border-radius:var(", tokens.inputWrapperBorderRadius, ");}", StyledIconButton, "{", privateTokens.segmentationBorderRadius, ":var(", tokens.iconButtonRadius, ");&.", classes.segmentedView, ",&.", classes.solidView, "{", privateTokens.segmentationBorderRadius, ":var(", tokens.iconButtonSegmentationRadius, ", var(", tokens.iconButtonRadius, "));}&.", classes.actionButtonDecrement, "{border-radius:var(", tokens.iconButtonRadius, ") var(", privateTokens.segmentationBorderRadius, ") var(", privateTokens.segmentationBorderRadius, ") var(", tokens.iconButtonRadius, ");}&.", classes.actionButtonIncrement, "{border-radius:var(", privateTokens.segmentationBorderRadius, ") var(", tokens.iconButtonRadius, ") var(", tokens.iconButtonRadius, ") var(", privateTokens.segmentationBorderRadius, ");}}&.", classes.segmentedView, "{", InputWrapper, "{border-radius:var(", tokens.iconButtonSegmentationRadius, ");}}&.", classes.solidView, "{position:relative;&:before{content:'';position:absolute;top:0;left:50%;transform:translateX(-50%);width:calc(100% - var(", tokens.iconButtonWidth, ") * 2);height:100%;background:var(", tokens.backgroundColorSolid, ");}", InputWrapper, "{position:relative;color:var(", tokens.colorSolid, ");&:not(", classes.errorAnimation, ").", classes.manualInput, ":focus-within{background-color:var(", tokens.backgroundColorSolidFocus, ");box-shadow:inset 0 0 0 var(", tokens.inputWrapperBorderWidth, ") var(", tokens.borderColorSolidFocus, ");}}", StyledIconButton, "{:hover,:active{background-color:var(", tokens.iconButtonBackgroundColor, ");color:var(", tokens.iconButtonColorSolidHover, ");}&.", classes.actionButtonDecrementDisabled, ",&.", classes.actionButtonIncrementDisabled, "{opacity:1;svg{opacity:var(", tokens.actionButtonDisabledOpacity, ");}:hover,:active{color:var(", tokens.iconButtonColor, ");svg{opacity:var(", tokens.actionButtonDisabledOpacity, ");}}}}&.", classes.clearView, "{", StyledIconButton, "{&.", classes.actionButtonDecrementDisabled, ",&.", classes.actionButtonIncrementDisabled, "{:hover,:active{background-color:transparent;}}}}", StyledSpinner, "{", spinnerTokens.color, ":var(", tokens.loaderSpinnerColorSolid, ");}", Input, "{caret-color:var(", tokens.caretColorSolid, ", var(", tokens.caretColor, "));&:not(.", classes.errorAnimation, "){color:var(", tokens.colorSolid, ");}}", AdditionalText, "{color:var(", tokens.additionalTextColorSolid, ");}};label:plasma-new-hope__base;" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy1lbW90aW9uL2NvbXBvbmVudHMvTnVtYmVySW5wdXQvdmFyaWF0aW9ucy9fc2VnbWVudGF0aW9uL2Jhc2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBT3VCIiwiZmlsZSI6Ii4uLy4uLy4uLy4uLy4uLy4uL3NyYy1lbW90aW9uL2NvbXBvbmVudHMvTnVtYmVySW5wdXQvdmFyaWF0aW9ucy9fc2VnbWVudGF0aW9uL2Jhc2UudHMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBjc3MgfSBmcm9tICdAZW1vdGlvbi9yZWFjdCc7XG5cbmltcG9ydCB7IGNsYXNzZXMsIHByaXZhdGVUb2tlbnMsIHRva2VucyB9IGZyb20gJy4uLy4uL051bWJlcklucHV0LnRva2Vucyc7XG5pbXBvcnQgeyBTdHlsZWRJY29uQnV0dG9uIH0gZnJvbSAnLi4vLi4vdWkvQWN0aW9uQnV0dG9uL0FjdGlvbkJ1dHRvbi5zdHlsZXMnO1xuaW1wb3J0IHsgQWRkaXRpb25hbFRleHQsIElucHV0LCBJbnB1dFdyYXBwZXIsIFN0eWxlZFNwaW5uZXIgfSBmcm9tICcuLi8uLi91aS9JbnB1dC9JbnB1dC5zdHlsZXMnO1xuaW1wb3J0IHsgc3Bpbm5lclRva2VucyB9IGZyb20gJy4uLy4uLy4uL1NwaW5uZXInO1xuXG5leHBvcnQgY29uc3QgYmFzZSA9IGNzc2BcbiAgICAke0lucHV0V3JhcHBlcn0ge1xuICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoJHt0b2tlbnMuaW5wdXRXcmFwcGVyQm9yZGVyUmFkaXVzfSk7XG4gICAgfVxuXG4gICAgJHtTdHlsZWRJY29uQnV0dG9ufSB7XG4gICAgICAgICR7cHJpdmF0ZVRva2Vucy5zZWdtZW50YXRpb25Cb3JkZXJSYWRpdXN9OiB2YXIoJHt0b2tlbnMuaWNvbkJ1dHRvblJhZGl1c30pO1xuXG4gICAgICAgICYuJHtjbGFzc2VzLnNlZ21lbnRlZFZpZXd9LCAmLiR7Y2xhc3Nlcy5zb2xpZFZpZXd9IHtcbiAgICAgICAgICAgICR7cHJpdmF0ZVRva2Vucy5zZWdtZW50YXRpb25Cb3JkZXJSYWRpdXN9OiB2YXIoJHt0b2tlbnMuaWNvbkJ1dHRvblNlZ21lbnRhdGlvblJhZGl1c30sIHZhcigke3Rva2Vucy5pY29uQnV0dG9uUmFkaXVzfSkpO1xuICAgICAgICB9XG5cbiAgICAgICAgJi4ke2NsYXNzZXMuYWN0aW9uQnV0dG9uRGVjcmVtZW50fSB7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoJHt0b2tlbnMuaWNvbkJ1dHRvblJhZGl1c30pIHZhcigke3ByaXZhdGVUb2tlbnMuc2VnbWVudGF0aW9uQm9yZGVyUmFkaXVzfSkgdmFyKCR7cHJpdmF0ZVRva2Vucy5zZWdtZW50YXRpb25Cb3JkZXJSYWRpdXN9KSB2YXIoJHt0b2tlbnMuaWNvbkJ1dHRvblJhZGl1c30pO1xuICAgICAgICB9XG5cbiAgICAgICAgJi4ke2NsYXNzZXMuYWN0aW9uQnV0dG9uSW5jcmVtZW50fSB7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoJHtwcml2YXRlVG9rZW5zLnNlZ21lbnRhdGlvbkJvcmRlclJhZGl1c30pIHZhcigke3Rva2Vucy5pY29uQnV0dG9uUmFkaXVzfSkgdmFyKCR7dG9rZW5zLmljb25CdXR0b25SYWRpdXN9KSB2YXIoJHtwcml2YXRlVG9rZW5zLnNlZ21lbnRhdGlvbkJvcmRlclJhZGl1c30pO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi4ke2NsYXNzZXMuc2VnbWVudGVkVmlld30ge1xuICAgICAgICAke0lucHV0V3JhcHBlcn0ge1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKCR7dG9rZW5zLmljb25CdXR0b25TZWdtZW50YXRpb25SYWRpdXN9KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYuJHtjbGFzc2VzLnNvbGlkVmlld30ge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gdmFyKCR7dG9rZW5zLmljb25CdXR0b25XaWR0aH0pICogMik7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoJHt0b2tlbnMuYmFja2dyb3VuZENvbG9yU29saWR9KTtcbiAgICAgICAgfVxuXG4gICAgICAgICR7SW5wdXRXcmFwcGVyfSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBjb2xvcjogdmFyKCR7dG9rZW5zLmNvbG9yU29saWR9KTtcbiAgICAgICAgICAgIFxuICAgICAgICAgICAgJjpub3QoJHtjbGFzc2VzLmVycm9yQW5pbWF0aW9ufSkuJHtjbGFzc2VzLm1hbnVhbElucHV0fTpmb2N1cy13aXRoaW4ge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigke3Rva2Vucy5iYWNrZ3JvdW5kQ29sb3JTb2xpZEZvY3VzfSk7XG4gICAgICAgICAgICAgICAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgdmFyKCR7dG9rZW5zLmlucHV0V3JhcHBlckJvcmRlcldpZHRofSkgdmFyKCR7dG9rZW5zLmJvcmRlckNvbG9yU29saWRGb2N1c30pO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJHtTdHlsZWRJY29uQnV0dG9ufSB7XG4gICAgICAgICAgICA6aG92ZXIsXG4gICAgICAgICAgICA6YWN0aXZlIHsgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCR7dG9rZW5zLmljb25CdXR0b25CYWNrZ3JvdW5kQ29sb3J9KTtcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKCR7dG9rZW5zLmljb25CdXR0b25Db2xvclNvbGlkSG92ZXJ9KTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi4ke2NsYXNzZXMuYWN0aW9uQnV0dG9uRGVjcmVtZW50RGlzYWJsZWR9LCAmLiR7Y2xhc3Nlcy5hY3Rpb25CdXR0b25JbmNyZW1lbnREaXNhYmxlZH0ge1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG5cbiAgICAgICAgICAgICAgICBzdmcge1xuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiB2YXIoJHt0b2tlbnMuYWN0aW9uQnV0dG9uRGlzYWJsZWRPcGFjaXR5fSk7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgOmhvdmVyLFxuICAgICAgICAgICAgICAgIDphY3RpdmUge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKCR7dG9rZW5zLmljb25CdXR0b25Db2xvcn0pO1xuXG4gICAgICAgICAgICAgICAgICAgIHN2ZyB7XG4gICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiB2YXIoJHt0b2tlbnMuYWN0aW9uQnV0dG9uRGlzYWJsZWRPcGFjaXR5fSk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLiR7Y2xhc3Nlcy5jbGVhclZpZXd9IHtcbiAgICAgICAgICAgICR7U3R5bGVkSWNvbkJ1dHRvbn0ge1xuICAgICAgICAgICAgICAgICYuJHtjbGFzc2VzLmFjdGlvbkJ1dHRvbkRlY3JlbWVudERpc2FibGVkfSwgJi4ke2NsYXNzZXMuYWN0aW9uQnV0dG9uSW5jcmVtZW50RGlzYWJsZWR9IHtcbiAgICAgICAgICAgICAgICAgICAgOmhvdmVyLFxuICAgICAgICAgICAgICAgICAgICA6YWN0aXZlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJHtTdHlsZWRTcGlubmVyfSB7XG4gICAgICAgICAgICAke3NwaW5uZXJUb2tlbnMuY29sb3J9OiB2YXIoJHt0b2tlbnMubG9hZGVyU3Bpbm5lckNvbG9yU29saWR9KTtcbiAgICAgICAgfVxuICAgIFxuICAgICAgICAke0lucHV0fSB7XG4gICAgICAgICAgICBjYXJldC1jb2xvcjogdmFyKCR7dG9rZW5zLmNhcmV0Q29sb3JTb2xpZH0sIHZhcigke3Rva2Vucy5jYXJldENvbG9yfSkpO1xuXG4gICAgICAgICAgICAmOm5vdCguJHtjbGFzc2VzLmVycm9yQW5pbWF0aW9ufSl7XG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigke3Rva2Vucy5jb2xvclNvbGlkfSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICBcbiAgICAgICAgJHtBZGRpdGlvbmFsVGV4dH0ge1xuICAgICAgICAgICAgY29sb3I6IHZhcigke3Rva2Vucy5hZGRpdGlvbmFsVGV4dENvbG9yU29saWR9KTtcbiAgICAgICAgfVxuICAgIH1cbmA7XG4iXX0= */"));
|