@salutejs/plasma-new-hope 0.327.0-canary.2010.15679377511.0 → 0.327.0-canary.2010.15733259332.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/cjs/components/TextArea/TextArea.js +5 -2
- package/cjs/components/TextArea/TextArea.js.map +1 -1
- package/cjs/components/TextArea/TextArea.tokens.js +2 -1
- package/cjs/components/TextArea/TextArea.tokens.js.map +1 -1
- package/cjs/components/TextArea/variations/_size/base.js +1 -1
- package/cjs/components/TextArea/variations/_size/base.js.map +1 -1
- package/cjs/components/TextArea/variations/_size/base_vftquy.css +1 -0
- package/cjs/components/Tour/Tour.css +4 -4
- package/cjs/components/Tour/Tour.js +15 -8
- package/cjs/components/Tour/Tour.js.map +1 -1
- package/cjs/components/Tour/Tour.styles.js +9 -2
- package/cjs/components/Tour/Tour.styles.js.map +1 -1
- package/cjs/components/Tour/Tour.styles_hmd79i.css +4 -0
- package/cjs/components/Tour/utils/index.js +94 -0
- package/cjs/components/Tour/utils/index.js.map +1 -1
- package/cjs/index.css +6 -4
- package/emotion/cjs/components/TextArea/TextArea.js +6 -3
- package/emotion/cjs/components/TextArea/TextArea.tokens.js +2 -1
- package/emotion/cjs/components/TextArea/variations/_size/base.js +2 -1
- package/emotion/cjs/components/Tour/Tour.js +16 -9
- package/emotion/cjs/components/Tour/Tour.styles.js +7 -5
- package/emotion/cjs/components/Tour/utils/index.js +93 -1
- package/emotion/cjs/examples/plasma_b2c/components/Tour/Tour.stories.tsx +57 -8
- package/emotion/es/components/TextArea/TextArea.js +6 -3
- package/emotion/es/components/TextArea/TextArea.tokens.js +2 -1
- package/emotion/es/components/TextArea/variations/_size/base.js +2 -1
- package/emotion/es/components/Tour/Tour.js +17 -11
- package/emotion/es/components/Tour/Tour.styles.js +7 -5
- package/emotion/es/components/Tour/utils/index.js +92 -0
- package/emotion/es/examples/plasma_b2c/components/Tour/Tour.stories.tsx +57 -8
- package/es/components/TextArea/TextArea.js +5 -2
- package/es/components/TextArea/TextArea.js.map +1 -1
- package/es/components/TextArea/TextArea.tokens.js +2 -1
- package/es/components/TextArea/TextArea.tokens.js.map +1 -1
- package/es/components/TextArea/variations/_size/base.js +1 -1
- package/es/components/TextArea/variations/_size/base.js.map +1 -1
- package/es/components/TextArea/variations/_size/base_vftquy.css +1 -0
- package/es/components/Tour/Tour.css +4 -4
- package/es/components/Tour/Tour.js +17 -10
- package/es/components/Tour/Tour.js.map +1 -1
- package/es/components/Tour/Tour.styles.js +9 -2
- package/es/components/Tour/Tour.styles.js.map +1 -1
- package/es/components/Tour/Tour.styles_hmd79i.css +4 -0
- package/es/components/Tour/utils/index.js +93 -1
- package/es/components/Tour/utils/index.js.map +1 -1
- package/es/index.css +6 -4
- package/package.json +2 -2
- package/styled-components/cjs/components/TextArea/TextArea.js +5 -2
- package/styled-components/cjs/components/TextArea/TextArea.tokens.js +2 -1
- package/styled-components/cjs/components/TextArea/variations/_size/base.js +2 -1
- package/styled-components/cjs/components/Tour/Tour.js +16 -9
- package/styled-components/cjs/components/Tour/Tour.styles.js +5 -3
- package/styled-components/cjs/components/Tour/utils/index.js +93 -1
- package/styled-components/cjs/examples/plasma_b2c/components/Tour/Tour.stories.tsx +57 -8
- package/styled-components/es/components/TextArea/TextArea.js +5 -2
- package/styled-components/es/components/TextArea/TextArea.tokens.js +2 -1
- package/styled-components/es/components/TextArea/variations/_size/base.js +2 -1
- package/styled-components/es/components/Tour/Tour.js +17 -11
- package/styled-components/es/components/Tour/Tour.styles.js +5 -3
- package/styled-components/es/components/Tour/utils/index.js +92 -0
- package/styled-components/es/examples/plasma_b2c/components/Tour/Tour.stories.tsx +57 -8
- package/types/components/TextArea/TextArea.d.ts.map +1 -1
- package/types/components/TextArea/TextArea.tokens.d.ts +1 -0
- package/types/components/TextArea/TextArea.tokens.d.ts.map +1 -1
- package/types/components/TextArea/variations/_size/base.d.ts.map +1 -1
- package/types/components/Tour/Tour.d.ts.map +1 -1
- package/types/components/Tour/Tour.styles.d.ts +1 -0
- package/types/components/Tour/Tour.styles.d.ts.map +1 -1
- package/types/components/Tour/Tour.types.d.ts +8 -0
- package/types/components/Tour/Tour.types.d.ts.map +1 -1
- package/types/components/Tour/utils/index.d.ts +2 -0
- package/types/components/Tour/utils/index.d.ts.map +1 -1
- package/cjs/components/TextArea/variations/_size/base_x642ct.css +0 -1
- package/cjs/components/Tour/Tour.styles_1ks2isn.css +0 -4
- package/es/components/TextArea/variations/_size/base_x642ct.css +0 -1
- package/es/components/Tour/Tour.styles_1ks2isn.css +0 -4
@@ -2,10 +2,12 @@ import React, { useRef, useState } from 'react';
|
|
2
2
|
import type { StoryObj, Meta } from '@storybook/react';
|
3
3
|
import styled from '@emotion/styled';
|
4
4
|
|
5
|
+
import { IconArrowDown } from '../../../../components/_Icon';
|
5
6
|
import { linkConfig } from '../../../../components/Link';
|
6
7
|
import { mergeConfig } from '../../../../engines';
|
7
8
|
import { WithTheme, argTypesFromConfig } from '../../../_helpers';
|
8
9
|
import { Button } from '../Button/Button';
|
10
|
+
import { TextArea } from '../TextArea/TextArea';
|
9
11
|
|
10
12
|
import { config } from './Tour.config';
|
11
13
|
import { Tour } from './Tour';
|
@@ -113,10 +115,11 @@ const TourCard: React.FC<{
|
|
113
115
|
};
|
114
116
|
|
115
117
|
const StoryDefault = (args) => {
|
116
|
-
const ref1 = useRef<
|
118
|
+
const ref1 = useRef<HTMLTextAreaElement>(null);
|
117
119
|
const ref2 = useRef<HTMLButtonElement>(null);
|
118
|
-
const ref3 = useRef<
|
119
|
-
const ref4 = useRef<
|
120
|
+
const ref3 = useRef<HTMLDivElement>(null);
|
121
|
+
const ref4 = useRef<HTMLDivElement>(null);
|
122
|
+
const ref5 = useRef<HTMLDivElement>(null);
|
120
123
|
const [open, setOpen] = useState(false);
|
121
124
|
const [current, setCurrent] = useState(0);
|
122
125
|
|
@@ -139,7 +142,7 @@ const StoryDefault = (args) => {
|
|
139
142
|
onClose={onClose}
|
140
143
|
/>
|
141
144
|
),
|
142
|
-
placement: '
|
145
|
+
placement: 'bottom',
|
143
146
|
},
|
144
147
|
{
|
145
148
|
target: ref2,
|
@@ -187,13 +190,30 @@ const StoryDefault = (args) => {
|
|
187
190
|
),
|
188
191
|
placement: 'left',
|
189
192
|
},
|
193
|
+
{
|
194
|
+
target: ref5,
|
195
|
+
renderItem: () => (
|
196
|
+
<TourCard
|
197
|
+
title="Первый шаг"
|
198
|
+
description="Нажмите кнопку, чтобы продолжить"
|
199
|
+
index={4}
|
200
|
+
last={current === steps.length - 1}
|
201
|
+
total={steps.length}
|
202
|
+
onNext={onNext}
|
203
|
+
onPrev={onPrev}
|
204
|
+
onClose={onClose}
|
205
|
+
/>
|
206
|
+
),
|
207
|
+
placement: 'left',
|
208
|
+
borderRadius: 'fixed',
|
209
|
+
},
|
190
210
|
];
|
191
211
|
|
192
212
|
return (
|
193
213
|
<div
|
194
214
|
style={{
|
195
215
|
width: '100%',
|
196
|
-
height: '
|
216
|
+
height: '100vh',
|
197
217
|
display: 'flex',
|
198
218
|
justifyContent: 'space-between',
|
199
219
|
flexDirection: 'column',
|
@@ -207,7 +227,19 @@ const StoryDefault = (args) => {
|
|
207
227
|
justifyContent: 'space-between',
|
208
228
|
}}
|
209
229
|
>
|
210
|
-
<
|
230
|
+
<TextArea
|
231
|
+
ref={ref1}
|
232
|
+
label="Textarea"
|
233
|
+
placeholder="Напиши что нибудь"
|
234
|
+
leftHelper="Helper Text"
|
235
|
+
rightHelper={
|
236
|
+
<div ref={ref5} style={{ cursor: 'pointer', transform: 'rotate(-90deg)' }}>
|
237
|
+
<IconArrowDown />
|
238
|
+
</div>
|
239
|
+
}
|
240
|
+
rows={10}
|
241
|
+
cols={20}
|
242
|
+
/>
|
211
243
|
<Button ref={ref2}>Блок 2</Button>
|
212
244
|
</div>
|
213
245
|
<Button onClick={() => setOpen(true)}>Запуск тура</Button>
|
@@ -219,8 +251,25 @@ const StoryDefault = (args) => {
|
|
219
251
|
justifyContent: 'space-between',
|
220
252
|
}}
|
221
253
|
>
|
222
|
-
<
|
223
|
-
|
254
|
+
<div
|
255
|
+
style={{
|
256
|
+
background: 'black',
|
257
|
+
width: '100px',
|
258
|
+
height: '100px',
|
259
|
+
borderRadius: '50%',
|
260
|
+
}}
|
261
|
+
ref={ref3}
|
262
|
+
/>
|
263
|
+
<div
|
264
|
+
style={{
|
265
|
+
background: 'black',
|
266
|
+
width: '100px',
|
267
|
+
height: '100px',
|
268
|
+
}}
|
269
|
+
ref={ref4}
|
270
|
+
>
|
271
|
+
Блок 4
|
272
|
+
</div>
|
224
273
|
</div>
|
225
274
|
|
226
275
|
<Tour
|
@@ -44,7 +44,7 @@ var innerPlaceholderUp = classes.innerPlaceholderUp,
|
|
44
44
|
styledPlaceholder = classes.styledPlaceholder,
|
45
45
|
styledHelpers = classes.styledHelpers;
|
46
46
|
var optionalText = 'optional';
|
47
|
-
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,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy1lbW90aW9uL2NvbXBvbmVudHMvVGV4dEFyZWEvVGV4dEFyZWEudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQXFEZ0IiLCJmaWxlIjoiLi4vLi4vLi4vLi4vc3JjLWVtb3Rpb24vY29tcG9uZW50cy9UZXh0QXJlYS9UZXh0QXJlYS50c3giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QsIHsgZm9yd2FyZFJlZiwgdXNlU3RhdGUsIGNyZWF0ZVJlZiwgdXNlQ2FsbGJhY2ssIHVzZVJlZiwgTW91c2VFdmVudEhhbmRsZXIsIHVzZUxheW91dEVmZmVjdCB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7IGNzcyB9IGZyb20gJ0BlbW90aW9uL3JlYWN0JztcbmltcG9ydCB7IHVzZUZvcmtSZWYsIHVzZVJlc2l6ZU9ic2VydmVyIH0gZnJvbSAnQHNhbHV0ZWpzL3BsYXNtYS1jb3JlJztcblxuaW1wb3J0IHsgY3gsIG1lcmdlUmVmcyB9IGZyb20gJy4uLy4uL3V0aWxzJztcbmltcG9ydCB0eXBlIHsgUm9vdFByb3BzIH0gZnJvbSAnLi4vLi4vZW5naW5lcy90eXBlcyc7XG5pbXBvcnQgeyB1c2VPdXRzaWRlQ2xpY2sgfSBmcm9tICcuLi8uLi9ob29rcyc7XG5cbmltcG9ydCB7IGFwcGx5RHluYW1pY0xhYmVsIH0gZnJvbSAnLi9taXhpbnMnO1xuaW1wb3J0IHsgdXNlQXV0b1Jlc2l6ZSwgUk9PVF9GT05UX1NJWkUgfSBmcm9tICcuL2hvb2tzJztcbmltcG9ydCB7XG4gICAgU3R5bGVkQ29udGVudCxcbiAgICBTdHlsZWRIZWxwZXJzLFxuICAgIFN0eWxlZExlZnRIZWxwZXIsXG4gICAgU3R5bGVkUmlnaHRIZWxwZXIsXG4gICAgU3R5bGVkTGFiZWwsXG4gICAgU3R5bGVkUGxhY2Vob2xkZXIsXG4gICAgU3R5bGVkVGV4dEFyZWEsXG4gICAgU3R5bGVkVGV4dEFyZWFXcmFwcGVyLFxuICAgIFN0eWxlZENvbnRhaW5lcixcbiAgICBTdHlsZWRJbmRpY2F0b3IsXG4gICAgU3R5bGVkT3B0aW9uYWxUZXh0LFxuICAgIE91dGVyTGFiZWxXcmFwcGVyLFxuICAgIFN0eWxlZEluZGljYXRvcldyYXBwZXIsXG4gICAgU3R5bGVkSGludFdyYXBwZXIsXG4gICAgVGl0bGVDYXB0aW9uLFxuICAgIFN0eWxlZE91dHNpZGVIZWxwZXJzV3JhcHBlcixcbiAgICBTdHlsZWRIaWRkZW5UZXh0QXJlYSxcbn0gZnJvbSAnLi9UZXh0QXJlYS5zdHlsZXMnO1xuaW1wb3J0IHsgY2xhc3NlcyB9IGZyb20gJy4vVGV4dEFyZWEudG9rZW5zJztcbmltcG9ydCB7IGJhc2UgYXMgdmlld0NTUyB9IGZyb20gJy4vdmFyaWF0aW9ucy9fdmlldy9iYXNlJztcbmltcG9ydCB7IGJhc2UgYXMgc2l6ZUNTUyB9IGZyb20gJy4vdmFyaWF0aW9ucy9fc2l6ZS9iYXNlJztcbmltcG9ydCB7IGJhc2UgYXMgY2xlYXJDU1MgfSBmcm9tICcuL3ZhcmlhdGlvbnMvX2NsZWFyL2Jhc2UnO1xuaW1wb3J0IHsgYmFzZSBhcyByZWFkT25seUNTUyB9IGZyb20gJy4vdmFyaWF0aW9ucy9fcmVhZC1vbmx5L2Jhc2UnO1xuaW1wb3J0IHsgYmFzZSBhcyBkaXNhYmxlZENTUyB9IGZyb20gJy4vdmFyaWF0aW9ucy9fZGlzYWJsZWQvYmFzZSc7XG5pbXBvcnQgeyBiYXNlIGFzIGhpbnRWaWV3Q1NTIH0gZnJvbSAnLi92YXJpYXRpb25zL19oaW50LXZpZXcvYmFzZSc7XG5pbXBvcnQgeyBiYXNlIGFzIGhpbnRTaXplQ1NTIH0gZnJvbSAnLi92YXJpYXRpb25zL19oaW50LXNpemUvYmFzZSc7XG5pbXBvcnQgdHlwZSB7IFRleHRBcmVhUHJvcHMsIFRleHRBcmVhUm9vdFByb3BzIH0gZnJvbSAnLi9UZXh0QXJlYS50eXBlcyc7XG5pbXBvcnQgeyBIaW50Q29tcG9uZW50IH0gZnJvbSAnLi91aS9IaW50L0hpbnQnO1xuXG5jb25zdCB7XG4gICAgaW5uZXJQbGFjZWhvbGRlclVwLFxuICAgIGZvY3VzZWRPdXRlclBsYWNlaG9sZGVyQ29sb3IsXG4gICAgaGlkZVBsYWNlSG9sZGVyLFxuICAgIHN0eWxlZENvbnRhaW5lcixcbiAgICBzdHlsZWRUZXh0QXJlYSxcbiAgICBzdHlsZWRUZXh0QXJlYVdyYXBwZXIsXG4gICAgc3R5bGVkUGxhY2Vob2xkZXIsXG4gICAgc3R5bGVkSGVscGVycyxcbn0gPSBjbGFzc2VzO1xuXG5jb25zdCBvcHRpb25hbFRleHQgPSAnb3B0aW9uYWwnO1xuXG5jb25zdCBiYXNlID0gY3NzYFxuICAgICR7YXBwbHlEeW5hbWljTGFiZWx9O1xuXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG5gO1xuXG4vLyBUT0RPOiDQo9C00LDQu9C40YLRjCDQv9C+0YHQu9C1INC+0YLQutCw0LfQsCDQvtGCINGB0YLQsNGA0YvRhSDQsdC40LHQu9C40L7RgtC10LogcGxhc21hLXdlYiAvIHBsYXNtYS1iMmNcbmNvbnN0IGZhbGxiYWNrU3RhdHVzTWFwID0ge1xuICAgICcnOiAncHJpbWFyeScsXG4gICAgc3VjY2VzczogJ3Bvc2l0aXZlJyxcbiAgICB3YXJuaW5nOiAnd2FybmluZycsXG4gICAgZXJyb3I6ICduZWdhdGl2ZScsXG59O1xuXG5jb25zdCBISU5UX0RFRkFVTFRfT0ZGU0VUOiBbbnVtYmVyLCBudW1iZXJdID0gWzAsIDBdO1xuXG4vLyBUT0RPOiDQn9C10YDQtdC90LXRgdGC0Lgg0Y3RgtC+0YIg0LzQtdGC0L7QtCDQsiDRhNCw0LnQuyBhcHBseUR5bmFtaWNMYWJlbC50c1xuZXhwb3J0IGNvbnN0IGdldER5bmFtaWNMYWJlbENsYXNzZXMgPSAocHJvcHM6IFRleHRBcmVhUHJvcHMsIGZvY3VzZWQ6IGJvb2xlYW4pID0+IHtcbiAgICBjb25zdCB7IHJlYWRPbmx5LCBsYWJlbCwgbGFiZWxQbGFjZW1lbnQsIHJvd3MsIHZhbHVlLCBzaXplIH0gPSBwcm9wcztcblxuICAgIC8vINCU0L7QsdCw0LLQuNGC0Ywg0LrQu9Cw0YHRgSDQvtGC0LLQtdGH0LDRjtGJ0LjQuSDQt9CwINC40LfQvNC10L3QtdC90LjQtSDRhtCy0LXRgtCwINC/0LvQtdC50YHRhdC+0LvQtNC10YDQsCDQv9GA0Lgg0YTQvtC60YPRgdC1XG4gICAgY29uc3Qgd2l0aEZvY3VzZWRPdXRlclVwUGxhY2Vob2xkZXIgPVxuICAgICAgICAhcmVhZE9ubHkgJiYgZm9jdXNlZCAmJiAoIWxhYmVsIHx8IGxhYmVsUGxhY2VtZW50ID09PSAnb3V0ZXInKSA/IGZvY3VzZWRPdXRlclBsYWNlaG9sZGVyQ29sb3IgOiB1bmRlZmluZWQ7XG5cbiAgICAvLyDQlNC+0LHQsNCy0LjRgtGMINC60LvQsNGB0YEg0L7RgtCy0LXRh9Cw0Y7RidC40Lkg0LfQsCDQv9C+0LTQvdGP0YLQuNC1INC4INGD0LzQtdC90YzRiNC10L3QuNC1INC/0LvQtdC50YHRhdC+0LvQtNC10YDQsFxuICAgIGNvbnN0IHdpdGhJbm5lclBsYWNlaG9sZGVyVXAgPVxuICAgICAgICBsYWJlbFBsYWNlbWVudCA9PT0gJ2lubmVyJyAmJlxuICAgICAgICBsYWJlbCAmJlxuICAgICAgICAhcm93cyAmJlxuICAgICAgICBzaXplICE9PSAneHMnICYmXG4gICAgICAgICgoIXJlYWRPbmx5ICYmICh2YWx1ZSB8fCBmb2N1c2VkKSkgfHwgKHJlYWRPbmx5ICYmIHZhbHVlKSlcbiAgICAgICAgICAgID8gaW5uZXJQbGFjZWhvbGRlclVwXG4gICAgICAgICAgICA6IHVuZGVmaW5lZDtcblxuICAgIC8vINCU0L7QsdCw0LLQuNGC0Ywg0LrQu9Cw0YHRgSDQvtGC0LLQtdGH0LDRjtGJ0LjQuSDQt9CwINGB0LrRgNGL0YLQuNC1INC/0LvQtdC50YHRhdC+0LvQtNC10YDQsFxuICAgIGNvbnN0IHdpdGhIaWRlUGxhY2Vob2xkZXIgPVxuICAgICAgICAodmFsdWUgJiYgIWxhYmVsKSB8fFxuICAgICAgICAobGFiZWxQbGFjZW1lbnQgPT09ICdpbm5lcicgJiYgKChmb2N1c2VkICYmICFyZWFkT25seSkgfHwgdmFsdWUpICYmIGxhYmVsICYmIHJvd3MpIHx8XG4gICAgICAgIChsYWJlbFBsYWNlbWVudCA9PT0gJ291dGVyJyAmJiB2YWx1ZSkgfHxcbiAgICAgICAgKGxhYmVsUGxhY2VtZW50ID09PSAnaW5uZXInICYmIHNpemUgPT09ICd4cycgJiYgdmFsdWUpXG4gICAgICAgICAgICA/IGhpZGVQbGFjZUhvbGRlclxuICAgICAgICAgICAgOiB1bmRlZmluZWQ7XG5cbiAgICByZXR1cm4gW3dpdGhGb2N1c2VkT3V0ZXJVcFBsYWNlaG9sZGVyLCB3aXRoSW5uZXJQbGFjZWhvbGRlclVwLCB3aXRoSGlkZVBsYWNlaG9sZGVyXTtcbn07XG5cbmV4cG9ydCBjb25zdCB0ZXh0QXJlYVJvb3QgPSAoUm9vdDogUm9vdFByb3BzPEhUTUxUZXh0QXJlYUVsZW1lbnQsIFRleHRBcmVhUm9vdFByb3BzPikgPT5cbiAgICBmb3J3YXJkUmVmPEhUTUxUZXh0QXJlYUVsZW1lbnQsIFRleHRBcmVhUHJvcHM+KChwcm9wcywgaW5uZXJSZWYpID0+IHtcbiAgICAgICAgY29uc3Qge1xuICAgICAgICAgICAgaGVscGVyVGV4dCxcbiAgICAgICAgICAgIHN0YXR1cyxcbiAgICAgICAgICAgIHJlc2l6ZSxcbiAgICAgICAgICAgIHJpZ2h0SGVscGVyLFxuICAgICAgICAgICAgbGVmdEhlbHBlcixcbiAgICAgICAgICAgIGxlZnRIZWxwZXJQbGFjZW1lbnQgPSAnaW5uZXInLFxuICAgICAgICAgICAgY29udGVudFJpZ2h0LFxuICAgICAgICAgICAgYXV0b1Jlc2l6ZSA9IGZhbHNlLFxuICAgICAgICAgICAgbWluQXV0byA9IDAsXG4gICAgICAgICAgICBtYXhBdXRvLFxuICAgICAgICAgICAgbGFiZWwsXG4gICAgICAgICAgICBsYWJlbFBsYWNlbWVudCA9ICdpbm5lcicsXG4gICAgICAgICAgICB0aXRsZUNhcHRpb24sXG4gICAgICAgICAgICBwbGFjZWhvbGRlcixcbiAgICAgICAgICAgIGRlZmF1bHRWYWx1ZSxcbiAgICAgICAgICAgIGhlaWdodCxcbiAgICAgICAgICAgIHdpZHRoLFxuICAgICAgICAgICAgdmFsdWUsXG4gICAgICAgICAgICBkaXNhYmxlZCxcbiAgICAgICAgICAgIHJlcXVpcmVkID0gZmFsc2UsXG4gICAgICAgICAgICByZXF1aXJlZFBsYWNlbWVudCA9ICdyaWdodCcsXG4gICAgICAgICAgICBoYXNSZXF1aXJlZEluZGljYXRvciA9IHRydWUsXG4gICAgICAgICAgICBvcHRpb25hbCA9IGZhbHNlLFxuICAgICAgICAgICAgY2xlYXIsXG4gICAgICAgICAgICBoYXNEaXZpZGVyLFxuICAgICAgICAgICAgc2l6ZSxcbiAgICAgICAgICAgIHZpZXcsXG4gICAgICAgICAgICBpZCxcbiAgICAgICAgICAgIHN0eWxlLFxuICAgICAgICAgICAgY2xhc3NOYW1lLFxuICAgICAgICAgICAgcmVhZE9ubHksXG4gICAgICAgICAgICByb3dzLFxuICAgICAgICAgICAgY29scyxcbiAgICAgICAgICAgIGhpbnRUcmlnZ2VyID0gJ2hvdmVyJyxcbiAgICAgICAgICAgIGhpbnRUZXh0LFxuICAgICAgICAgICAgaGludFZpZXcgPSAnZGVmYXVsdCcsXG4gICAgICAgICAgICBoaW50U2l6ZSA9ICdtJyxcbiAgICAgICAgICAgIGhpbnRUYXJnZXRJY29uLFxuICAgICAgICAgICAgaGludFBsYWNlbWVudCA9ICdhdXRvJyxcbiAgICAgICAgICAgIGhpbnRIYXNBcnJvdyxcbiAgICAgICAgICAgIGhpbnRPZmZzZXQgPSBISU5UX0RFRkFVTFRfT0ZGU0VULFxuICAgICAgICAgICAgaGludFdpZHRoLFxuICAgICAgICAgICAgaGludENvbnRlbnRMZWZ0LFxuICAgICAgICAgICAgb25DaGFuZ2UsXG4gICAgICAgICAgICAuLi5yZXN0XG4gICAgICAgIH0gPSBwcm9wcztcblxuICAgICAgICBjb25zdCBbaXNIaW50VmlzaWJsZSwgc2V0SXNIaW50VmlzaWJsZV0gPSB1c2VTdGF0ZShmYWxzZSk7XG4gICAgICAgIGNvbnN0IFtoZWxwZXJXaWR0aCwgc2V0SGVscGVyV2lkdGhdID0gdXNlU3RhdGU8c3RyaW5nPih3aWR0aCA/IGAke3dpZHRofXJlbWAgOiAnMTAwJScpO1xuICAgICAgICBjb25zdCBbZm9jdXNlZCwgc2V0Rm9jdXNlZF0gPSB1c2VTdGF0ZShmYWxzZSk7XG4gICAgICAgIC8vIFRPRE86INC/0LXRgNC10L3QtdGB0YLQuCDQsiDQvtCx0YnRg9GOINC/0LXRgNC10LzQtdC90L3Rg9GOINC00LvRjyB2YWx1ZSDRgdC90LDRgNGD0LbQuCDQuCDQstC90YPRgtGA0LhcbiAgICAgICAgY29uc3QgW3VuY29udHJvbGxlZFZhbHVlLCBzZXRVbmNvbnRyb2xsZWRWYWx1ZV0gPSB1c2VTdGF0ZTxzdHJpbmcgfCB1bmRlZmluZWQ+KCk7XG5cbiAgICAgICAgY29uc3Qgb3V0ZXJSZWYgPSBjcmVhdGVSZWY8SFRNTFRleHRBcmVhRWxlbWVudD4oKTtcbiAgICAgICAgY29uc3QgaGlkZGVuUmVmID0gdXNlUmVmPEhUTUxUZXh0QXJlYUVsZW1lbnQgfCBudWxsPihudWxsKTtcblxuICAgICAgICBjb25zdCBoaW50UmVmID0gdXNlT3V0c2lkZUNsaWNrPEhUTUxEaXZFbGVtZW50PigoKSA9PiB7XG4gICAgICAgICAgICBzZXRJc0hpbnRWaXNpYmxlKGZhbHNlKTtcbiAgICAgICAgfSk7XG4gICAgICAgIGNvbnN0IGhpbnRJbm5lclJlZiA9IHVzZVJlZjxIVE1MRGl2RWxlbWVudD4obnVsbCk7XG4gICAgICAgIGNvbnN0IGhpbnRGb3JrUmVmID0gdXNlRm9ya1JlZihoaW50UmVmLCBoaW50SW5uZXJSZWYpO1xuXG4gICAgICAgIGNvbnN0IGlzSW5uZXJMZWZ0SGVscGVyUGxhY2VtZW50ID0gbGVmdEhlbHBlclBsYWNlbWVudCA9PT0gJ2lubmVyJztcbiAgICAgICAgY29uc3QgbGVmdEhlbHBlclRleHQgPSBsZWZ0SGVscGVyIHx8IGhlbHBlclRleHQ7XG4gICAgICAgIGNvbnN0IGlubmVyT3B0aW9uYWwgPSByZXF1aXJlZCA/IGZhbHNlIDogb3B0aW9uYWw7XG4gICAgICAgIGNvbnN0IGhhc0xlZnRIZWxwZXIgPSBCb29sZWFuKGxlZnRIZWxwZXIgfHwgaGVscGVyVGV4dCk7XG4gICAgICAgIGNvbnN0IGhhc1JpZ2h0SGVscGVyID0gQm9vbGVhbihyaWdodEhlbHBlcik7XG4gICAgICAgIGNvbnN0IGhhc0hlbHBlciA9ICFpc0lubmVyTGVmdEhlbHBlclBsYWNlbWVudCA/IGhhc1JpZ2h0SGVscGVyIDogaGFzTGVmdEhlbHBlciB8fCBoYXNSaWdodEhlbHBlcjtcbiAgICAgICAgY29uc3QgaGFzT3V0ZXJMYWJlbCA9IEJvb2xlYW4obGFiZWwgJiYgbGFiZWxQbGFjZW1lbnQgPT09ICdvdXRlcicpO1xuICAgICAgICBjb25zdCBoYXNJbm5lckxhYmVsID0gQm9vbGVhbihsYWJlbCAmJiBsYWJlbFBsYWNlbWVudCA9PT0gJ2lubmVyJyAmJiBzaXplICE9PSAneHMnKTtcbiAgICAgICAgY29uc3QgaGFzUGxhY2Vob2xkZXJPcHRpb25hbCA9IGlubmVyT3B0aW9uYWwgJiYgIWhhc091dGVyTGFiZWw7XG5cbiAgICAgICAgY29uc3Qgb3ZlcnJpZGRlblZpZXcgPSBzdGF0dXMgIT09IHVuZGVmaW5lZCA/IGZhbGxiYWNrU3RhdHVzTWFwW3N0YXR1c10gOiB2aWV3O1xuICAgICAgICBjb25zdCB0ZXh0YXJlYUhlbHBlcklkID0gaWQgPyBgJHtpZH0taGVscGVyYCA6IHVuZGVmaW5lZDtcbiAgICAgICAgY29uc3QgYXBwbHlDdXN0b21XaWR0aCA9IHJlc2l6ZSAhPT0gJ2hvcml6b250YWwnICYmIHJlc2l6ZSAhPT0gJ2JvdGgnICYmICFjb2xzO1xuICAgICAgICBjb25zdCBwbGFjZWhvbGRlckxhYmVsID0gaGFzSW5uZXJMYWJlbCA/IGxhYmVsIDogcGxhY2Vob2xkZXI7XG4gICAgICAgIGNvbnN0IGFwcGx5QXV0b1Jlc2l6ZSA9IGF1dG9SZXNpemUgfHwgQm9vbGVhbihjbGVhcik7XG5cbiAgICAgICAgY29uc3QgY2xlYXJDbGFzcyA9IGNsZWFyID8gY2xhc3Nlcy5jbGVhciA6IHVuZGVmaW5lZDtcbiAgICAgICAgY29uc3QgaGFzSGludENsYXNzID0gaGludFRleHQgPyBjbGFzc2VzLmhhc0hpbnQgOiB1bmRlZmluZWQ7XG4gICAgICAgIGNvbnN0IGhhc1JpZ2h0Q29udGVudENsYXNzID0gY29udGVudFJpZ2h0ID8gY2xhc3Nlcy5oYXNSaWdodENvbnRlbnQgOiB1bmRlZmluZWQ7XG4gICAgICAgIGNvbnN0IGhhc0RpdmlkZXJDbGFzcyA9IGhhc0RpdmlkZXIgPyBjbGFzc2VzLmhhc0RpdmlkZXIgOiB1bmRlZmluZWQ7XG4gICAgICAgIGNvbnN0IHJlcXVpcmVkUGxhY2VtZW50Q2xhc3MgPSByZXF1aXJlZFBsYWNlbWVudCA9PT0gJ3JpZ2h0JyA/IGNsYXNzZXMucmVxdWlyZWRBbGlnblJpZ2h0IDogdW5kZWZpbmVkO1xuXG4gICAgICAgIGNvbnN0IGhhbmRsZUhpbnRTaG93ID0gKCkgPT4gc2V0SXNIaW50VmlzaWJsZSh0cnVlKTtcbiAgICAgICAgY29uc3QgaGFuZGxlSGludEhpZGUgPSAoKSA9PiBzZXRJc0hpbnRWaXNpYmxlKGZhbHNlKTtcbiAgICAgICAgY29uc3QgaGFuZGxlSGludENsaWNrOiBNb3VzZUV2ZW50SGFuZGxlciA9IChldmVudCkgPT4ge1xuICAgICAgICAgICAgaWYgKCFoaW50VGV4dCB8fCBoaW50VHJpZ2dlciAhPT0gJ2NsaWNrJykge1xuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICAgICAgICBjb25zdCB0YXJnZXRJc1BvcG92ZXIgPSBldmVudC50YXJnZXQgPT09IGhpbnRJbm5lclJlZi5jdXJyZW50O1xuICAgICAgICAgICAgY29uc3Qgcm9vdEhhc1RhcmdldCA9IGhpbnRJbm5lclJlZi5jdXJyZW50Py5jb250YWlucyhldmVudC50YXJnZXQgYXMgRWxlbWVudCk7XG5cbiAgICAgICAgICAgIGlmICghdGFyZ2V0SXNQb3BvdmVyICYmICFyb290SGFzVGFyZ2V0KSB7XG4gICAgICAgICAgICAgICAgc2V0SXNIaW50VmlzaWJsZSh0cnVlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfTtcblxuICAgICAgICB1c2VMYXlvdXRFZmZlY3QoKCkgPT4ge1xuICAgICAgICAgICAgaWYgKG91dGVyUmVmLmN1cnJlbnQpIHtcbiAgICAgICAgICAgICAgICBzZXRVbmNvbnRyb2xsZWRWYWx1ZShvdXRlclJlZi5jdXJyZW50LnZhbHVlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSwgW291dGVyUmVmXSk7XG5cbiAgICAgICAgdXNlUmVzaXplT2JzZXJ2ZXIob3V0ZXJSZWYsIChjdXJyZW50RWxlbWVudCkgPT4ge1xuICAgICAgICAgICAgY29uc3QgeyB3aWR0aDogaW5saW5lV2lkdGggfSA9IGN1cnJlbnRFbGVtZW50LnN0eWxlO1xuXG4gICAgICAgICAgICBpZiAoaW5saW5lV2lkdGggfHwgY29scykge1xuICAgICAgICAgICAgICAgIGNvbnN0IHsgd2lkdGg6IGVsZW1lbnRXaWR0aCB9ID0gY3VycmVudEVsZW1lbnQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XG4gICAgICAgICAgICAgICAgc2V0SGVscGVyV2lkdGgoYCR7ZWxlbWVudFdpZHRoIC8gUk9PVF9GT05UX1NJWkV9cmVtYCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuXG4gICAgICAgIHVzZUF1dG9SZXNpemUoYXBwbHlBdXRvUmVzaXplLCBvdXRlclJlZiwgdmFsdWUgfHwgdW5jb250cm9sbGVkVmFsdWUsIG1pbkF1dG8sIG1heEF1dG8sIHJlc2l6ZSwgaGlkZGVuUmVmKTtcblxuICAgICAgICBjb25zdCBvbkZvY3VzSGFuZGxlciA9IHVzZUNhbGxiYWNrKCgpID0+IHtcbiAgICAgICAgICAgIHNldEZvY3VzZWQodHJ1ZSk7XG4gICAgICAgIH0sIFtdKTtcblxuICAgICAgICBjb25zdCBvbkJsdXJIYW5kbGVyID0gdXNlQ2FsbGJhY2soKCkgPT4ge1xuICAgICAgICAgICAgc2V0Rm9jdXNlZChmYWxzZSk7XG4gICAgICAgIH0sIFtdKTtcblxuICAgICAgICBjb25zdCBvbkNoYW5nZUhhbmRsZXIgPSB1c2VDYWxsYmFjayhcbiAgICAgICAgICAgIChldmVudDogUmVhY3QuQ2hhbmdlRXZlbnQ8SFRNTFRleHRBcmVhRWxlbWVudD4pID0+IHtcbiAgICAgICAgICAgICAgICAvLyBJTkZPOiDQlNC70Y8g0LrRgNCw0LnQvdC1INGA0LXQtNC60LjRhSDQutC10LnRgdC+0LIsINC60L7Qs9C00LAgdmFsdWUg0YHQvdCw0YDRg9C20Lgg0L3QtSDQutC+0L3RgtGA0L7Qu9C40YDRg9C10YLRgdGPXG4gICAgICAgICAgICAgICAgaWYgKHZhbHVlID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgICAgICAgICAgc2V0VW5jb250cm9sbGVkVmFsdWUoZXZlbnQ/LnRhcmdldC52YWx1ZSk7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgb25DaGFuZ2U/LihldmVudCk7XG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgW3ZhbHVlLCBvbkNoYW5nZV0sXG4gICAgICAgICk7XG5cbiAgICAgICAgY29uc3QgaGFuZGxlVGV4dEFyZWFGb2N1cyA9ICgpID0+IHtcbiAgICAgICAgICAgIGlmIChyZWFkT25seSB8fCBkaXNhYmxlZCB8fCAhb3V0ZXJSZWY/LmN1cnJlbnQpIHtcbiAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIG91dGVyUmVmLmN1cnJlbnQuZm9jdXMoKTtcbiAgICAgICAgfTtcblxuICAgICAgICBjb25zdCBkeW5hbWljTGFiZWxDbGFzc2VzID0gZ2V0RHluYW1pY0xhYmVsQ2xhc3NlcyhcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBzaXplLFxuICAgICAgICAgICAgICAgIHJlYWRPbmx5LFxuICAgICAgICAgICAgICAgIGxhYmVsLFxuICAgICAgICAgICAgICAgIGxhYmVsUGxhY2VtZW50LFxuICAgICAgICAgICAgICAgIHZhbHVlOiB2YWx1ZSB8fCB1bmNvbnRyb2xsZWRWYWx1ZSB8fCBkZWZhdWx0VmFsdWUsXG4gICAgICAgICAgICAgICAgcm93cyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBmb2N1c2VkLFxuICAgICAgICApO1xuXG4gICAgICAgIGNvbnN0IG9wdGlvbmFsVGV4dE5vZGUgPSBpbm5lck9wdGlvbmFsID8gKFxuICAgICAgICAgICAgPFN0eWxlZE9wdGlvbmFsVGV4dCBpbmhlcml0Rm9udD17IWhhc091dGVyTGFiZWx9PlxuICAgICAgICAgICAgICAgIHtCb29sZWFuKGhhc1BsYWNlaG9sZGVyT3B0aW9uYWwgPyBwbGFjZWhvbGRlckxhYmVsIDogbGFiZWwpICYmICdcXHhhMCd9XG4gICAgICAgICAgICAgICAge29wdGlvbmFsVGV4dH1cbiAgICAgICAgICAgIDwvU3R5bGVkT3B0aW9uYWxUZXh0PlxuICAgICAgICApIDogbnVsbDtcblxuICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgPFJvb3RcbiAgICAgICAgICAgICAgICB2aWV3PXtvdmVycmlkZGVuVmlld31cbiAgICAgICAgICAgICAgICBzaXplPXtzaXplfVxuICAgICAgICAgICAgICAgIGRpc2FibGVkPXtkaXNhYmxlZH1cbiAgICAgICAgICAgICAgICByZWFkT25seT17cmVhZE9ubHl9XG4gICAgICAgICAgICAgICAgc3R5bGU9e3sgd2lkdGg6IGhlbHBlcldpZHRoLCAuLi5zdHlsZSB9fVxuICAgICAgICAgICAgICAgIGNsYXNzTmFtZT17Y3goY2xlYXJDbGFzcywgaGFzRGl2aWRlckNsYXNzLCBoYXNIaW50Q2xhc3MsIGNsYXNzTmFtZSl9XG4gICAgICAgICAgICAgICAgb25DbGljaz17aGFuZGxlVGV4dEFyZWFGb2N1c31cbiAgICAgICAgICAgICAgICB7Li4uKGhpbnRUZXh0ICYmIHtcbiAgICAgICAgICAgICAgICAgICAgaGludFZpZXcsXG4gICAgICAgICAgICAgICAgICAgIGhpbnRTaXplLFxuICAgICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIHsoaGFzT3V0ZXJMYWJlbCB8fCB0aXRsZUNhcHRpb24pICYmIChcbiAgICAgICAgICAgICAgICAgICAgPE91dGVyTGFiZWxXcmFwcGVyIHdpZHRoPXtoZWxwZXJXaWR0aH0gaXNJbm5lckxhYmVsPXtsYWJlbFBsYWNlbWVudCA9PT0gJ2lubmVyJ30+XG4gICAgICAgICAgICAgICAgICAgICAgICB7aGFzT3V0ZXJMYWJlbCAmJiAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPFN0eWxlZEluZGljYXRvcldyYXBwZXI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxTdHlsZWRMYWJlbD57bGFiZWx9PC9TdHlsZWRMYWJlbD5cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7aGludFRleHQgJiYgKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPFN0eWxlZEhpbnRXcmFwcGVyPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxIaW50Q29tcG9uZW50XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlZj17aGludEZvcmtSZWZ9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhpbnRUZXh0PXtoaW50VGV4dH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGludFRyaWdnZXI9e2hpbnRUcmlnZ2VyfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpc0hpbnRWaXNpYmxlPXtpc0hpbnRWaXNpYmxlfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoaW50VGFyZ2V0SWNvbj17aGludFRhcmdldEljb259XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhpbnRQbGFjZW1lbnQ9e2hpbnRQbGFjZW1lbnR9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhpbnRIYXNBcnJvdz17aGludEhhc0Fycm93fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoaW50T2Zmc2V0PXtoaW50T2Zmc2V0fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoaW50V2lkdGg9e2hpbnRXaWR0aH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGludENvbnRlbnRMZWZ0PXtoaW50Q29udGVudExlZnR9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhhbmRsZUhpbnRTaG93PXtoYW5kbGVIaW50U2hvd31cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGFuZGxlSGludEhpZGU9e2hhbmRsZUhpbnRIaWRlfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoYW5kbGVIaW50Q2xpY2s9e2hhbmRsZUhpbnRDbGlja31cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9TdHlsZWRIaW50V3JhcHBlcj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3JlcXVpcmVkICYmIGhhc1JlcXVpcmVkSW5kaWNhdG9yICYmIChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxTdHlsZWRJbmRpY2F0b3JcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzc05hbWU9e2N4KFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzc2VzLm91dGVyTGFiZWxQbGFjZW1lbnQsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlcXVpcmVkUGxhY2VtZW50Q2xhc3MsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhhc0hpbnRDbGFzcyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge29wdGlvbmFsVGV4dE5vZGV9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9TdHlsZWRJbmRpY2F0b3JXcmFwcGVyPlxuICAgICAgICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgICAgICAgIHt0aXRsZUNhcHRpb24gJiYgPFRpdGxlQ2FwdGlvbj57dGl0bGVDYXB0aW9ufTwvVGl0bGVDYXB0aW9uPn1cbiAgICAgICAgICAgICAgICAgICAgPC9PdXRlckxhYmVsV3JhcHBlcj5cbiAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgIDxTdHlsZWRDb250YWluZXJcbiAgICAgICAgICAgICAgICAgICAgY2xhc3NOYW1lPXtjeChzdHlsZWRDb250YWluZXIsIC4uLmR5bmFtaWNMYWJlbENsYXNzZXMpfVxuICAgICAgICAgICAgICAgICAgICB3aWR0aD17aGVscGVyV2lkdGh9XG4gICAgICAgICAgICAgICAgICAgIG9uRm9jdXM9e29uRm9jdXNIYW5kbGVyfVxuICAgICAgICAgICAgICAgICAgICBvbkJsdXI9e29uQmx1ckhhbmRsZXJ9XG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICB7IWhhc091dGVyTGFiZWwgJiYgKFxuICAgICAgICAgICAgICAgICAgICAgICAgPD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7cmVxdWlyZWQgJiYgaGFzUmVxdWlyZWRJbmRpY2F0b3IgJiYgKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8U3R5bGVkSW5kaWNhdG9yIGNsYXNzTmFtZT17Y3goY2xhc3Nlcy5pbm5lckxhYmVsUGxhY2VtZW50LCByZXF1aXJlZFBsYWNlbWVudENsYXNzKX0gLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtoaW50VGV4dCAmJiAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxTdHlsZWRIaW50V3JhcHBlciBjbGFzc05hbWU9e2NsYXNzZXMuaW5uZXJMYWJlbFBsYWNlbWVudH0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8SGludENvbXBvbmVudFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlZj17aGludEZvcmtSZWZ9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGludFRleHQ9e2hpbnRUZXh0fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhpbnRUcmlnZ2VyPXtoaW50VHJpZ2dlcn1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpc0hpbnRWaXNpYmxlPXtpc0hpbnRWaXNpYmxlfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhpbnRUYXJnZXRJY29uPXtoaW50VGFyZ2V0SWNvbn1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoaW50UGxhY2VtZW50PXtoaW50UGxhY2VtZW50fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhpbnRIYXNBcnJvdz17aGludEhhc0Fycm93fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhpbnRPZmZzZXQ9e2hpbnRPZmZzZXR9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGludFdpZHRoPXtoaW50V2lkdGh9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGludENvbnRlbnRMZWZ0PXtoaW50Q29udGVudExlZnR9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2l6ZT17c2l6ZX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoYW5kbGVIaW50U2hvdz17aGFuZGxlSGludFNob3d9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGFuZGxlSGludEhpZGU9e2hhbmRsZUhpbnRIaWRlfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhhbmRsZUhpbnRDbGljaz17aGFuZGxlSGludENsaWNrfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlzSW5uZXJMYWJlbFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9TdHlsZWRIaW50V3JhcHBlcj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgICAgICAgICAgPC8+XG4gICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgICAgIHtjb250ZW50UmlnaHQgJiYgPFN0eWxlZENvbnRlbnQ+e2NvbnRlbnRSaWdodH08L1N0eWxlZENvbnRlbnQ+fVxuICAgICAgICAgICAgICAgICAgICA8U3R5bGVkVGV4dEFyZWFXcmFwcGVyIGNsYXNzTmFtZT17Y3goc3R5bGVkVGV4dEFyZWFXcmFwcGVyKX0gaGFzSGVscGVyPXtoYXNIZWxwZXJ9PlxuICAgICAgICAgICAgICAgICAgICAgICAgPFN0eWxlZFRleHRBcmVhXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3NOYW1lPXtjeChzdHlsZWRUZXh0QXJlYSwgaGFzUmlnaHRDb250ZW50Q2xhc3MpfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlkPXtpZH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBoYXNDb250ZW50UmlnaHQ9e0Jvb2xlYW4oY29udGVudFJpZ2h0KX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBoYXNIZWxwZXI9e2hhc0hlbHBlcn1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBhcHBseUN1c3RvbVdpZHRoPXthcHBseUN1c3RvbVdpZHRofVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlZj17bWVyZ2VSZWZzKG91dGVyUmVmLCBpbm5lclJlZil9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzYWJsZWQ9e2Rpc2FibGVkfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlcXVpcmVkPXtyZXF1aXJlZH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ9e2FwcGx5QXV0b1Jlc2l6ZSA/IG1pbkF1dG8gOiBoZWlnaHR9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg9e3dpZHRofVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBsYWNlaG9sZGVyPXtwbGFjZWhvbGRlckxhYmVsfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFyaWEtZGVzY3JpYmVkYnk9e3RleHRhcmVhSGVscGVySWR9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWU9e3ZhbHVlfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlYWRPbmx5PXtyZWFkT25seX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByb3dzPXtyb3dzfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbHM9e2NvbHN9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVzaXplPXtyZXNpemV9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGVmYXVsdFZhbHVlPXtkZWZhdWx0VmFsdWV9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgb25DaGFuZ2U9e29uQ2hhbmdlSGFuZGxlcn1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7Li4ucmVzdH1cbiAgICAgICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICB7YXBwbHlBdXRvUmVzaXplICYmIChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8U3R5bGVkSGlkZGVuVGV4dEFyZWFcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXJpYS1oaWRkZW5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVmPXtoaWRkZW5SZWZ9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhhc0NvbnRlbnRSaWdodD17Qm9vbGVhbihjb250ZW50UmlnaHQpfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZT17dmFsdWUgfHwgdW5jb250cm9sbGVkVmFsdWUgfHwgJyAnfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZWZhdWx0VmFsdWU9e2RlZmF1bHRWYWx1ZX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgICAgPC9TdHlsZWRUZXh0QXJlYVdyYXBwZXI+XG4gICAgICAgICAgICAgICAgICAgIHtoYXNIZWxwZXIgJiYgKFxuICAgICAgICAgICAgICAgICAgICAgICAgPFN0eWxlZEhlbHBlcnMgY2xhc3NOYW1lPXtzdHlsZWRIZWxwZXJzfSBpZD17dGV4dGFyZWFIZWxwZXJJZH0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge2lzSW5uZXJMZWZ0SGVscGVyUGxhY2VtZW50ICYmIChsZWZ0SGVscGVyIHx8IGhlbHBlclRleHQpICYmIChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPFN0eWxlZExlZnRIZWxwZXI+e2xlZnRIZWxwZXIgfHwgaGVscGVyVGV4dH08L1N0eWxlZExlZnRIZWxwZXI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7cmlnaHRIZWxwZXIgJiYgPFN0eWxlZFJpZ2h0SGVscGVyPntyaWdodEhlbHBlcn08L1N0eWxlZFJpZ2h0SGVscGVyPn1cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvU3R5bGVkSGVscGVycz5cbiAgICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgICAge3BsYWNlaG9sZGVyTGFiZWwgJiYgKFxuICAgICAgICAgICAgICAgICAgICAgICAgPFN0eWxlZFBsYWNlaG9sZGVyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaGFzQ29udGVudFJpZ2h0PXtCb29sZWFuKGNvbnRlbnRSaWdodCl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3NOYW1lPXtzdHlsZWRQbGFjZWhvbGRlcn1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBodG1sRm9yPXtpZH1cbiAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7cGxhY2Vob2xkZXJMYWJlbH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7IWhhc091dGVyTGFiZWwgJiYgb3B0aW9uYWxUZXh0Tm9kZX1cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvU3R5bGVkUGxhY2Vob2xkZXI+XG4gICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgPC9TdHlsZWRDb250YWluZXI+XG4gICAgICAgICAgICAgICAge2hhc0xlZnRIZWxwZXIgJiYgIWlzSW5uZXJMZWZ0SGVscGVyUGxhY2VtZW50ICYmIChcbiAgICAgICAgICAgICAgICAgICAgPFN0eWxlZE91dHNpZGVIZWxwZXJzV3JhcHBlciBpZD17dGV4dGFyZWFIZWxwZXJJZH0+XG4gICAgICAgICAgICAgICAgICAgICAgICA8U3R5bGVkTGVmdEhlbHBlcj57bGVmdEhlbHBlclRleHR9PC9TdHlsZWRMZWZ0SGVscGVyPlxuICAgICAgICAgICAgICAgICAgICA8L1N0eWxlZE91dHNpZGVIZWxwZXJzV3JhcHBlcj5cbiAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgPC9Sb290PlxuICAgICAgICApO1xuICAgIH0pO1xuXG5leHBvcnQgY29uc3QgdGV4dEFyZWFDb25maWcgPSB7XG4gICAgbmFtZTogJ1RleHRBcmVhJyxcbiAgICB0YWc6ICdkaXYnLFxuICAgIGxheW91dDogdGV4dEFyZWFSb290LFxuICAgIGJhc2UsXG4gICAgdmFyaWF0aW9uczoge1xuICAgICAgICBzaXplOiB7XG4gICAgICAgICAgICBjc3M6IHNpemVDU1MsXG4gICAgICAgIH0sXG4gICAgICAgIHZpZXc6IHtcbiAgICAgICAgICAgIGNzczogdmlld0NTUyxcbiAgICAgICAgfSxcbiAgICAgICAgY2xlYXI6IHtcbiAgICAgICAgICAgIGNzczogY2xlYXJDU1MsXG4gICAgICAgICAgICBhdHRyczogdHJ1ZSxcbiAgICAgICAgfSxcbiAgICAgICAgcmVhZE9ubHk6IHtcbiAgICAgICAgICAgIGNzczogcmVhZE9ubHlDU1MsXG4gICAgICAgICAgICBhdHRyczogdHJ1ZSxcbiAgICAgICAgfSxcbiAgICAgICAgZGlzYWJsZWQ6IHtcbiAgICAgICAgICAgIGNzczogZGlzYWJsZWRDU1MsXG4gICAgICAgICAgICBhdHRyczogdHJ1ZSxcbiAgICAgICAgfSxcbiAgICAgICAgaGludFZpZXc6IHtcbiAgICAgICAgICAgIGNzczogaGludFZpZXdDU1MsXG4gICAgICAgIH0sXG4gICAgICAgIGhpbnRTaXplOiB7XG4gICAgICAgICAgICBjc3M6IGhpbnRTaXplQ1NTLFxuICAgICAgICB9LFxuICAgIH0sXG4gICAgZGVmYXVsdHM6IHtcbiAgICAgICAgc2l6ZTogJ20nLFxuICAgICAgICB2aWV3OiAncHJpbWFyeScsXG4gICAgfSxcbn07XG4iXX0= */"));
|
47
|
+
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,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy1lbW90aW9uL2NvbXBvbmVudHMvVGV4dEFyZWEvVGV4dEFyZWEudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQXFEZ0IiLCJmaWxlIjoiLi4vLi4vLi4vLi4vc3JjLWVtb3Rpb24vY29tcG9uZW50cy9UZXh0QXJlYS9UZXh0QXJlYS50c3giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QsIHsgZm9yd2FyZFJlZiwgdXNlU3RhdGUsIGNyZWF0ZVJlZiwgdXNlQ2FsbGJhY2ssIHVzZVJlZiwgTW91c2VFdmVudEhhbmRsZXIsIHVzZUxheW91dEVmZmVjdCB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7IGNzcyB9IGZyb20gJ0BlbW90aW9uL3JlYWN0JztcbmltcG9ydCB7IHVzZUZvcmtSZWYsIHVzZVJlc2l6ZU9ic2VydmVyIH0gZnJvbSAnQHNhbHV0ZWpzL3BsYXNtYS1jb3JlJztcblxuaW1wb3J0IHsgY3gsIG1lcmdlUmVmcyB9IGZyb20gJy4uLy4uL3V0aWxzJztcbmltcG9ydCB0eXBlIHsgUm9vdFByb3BzIH0gZnJvbSAnLi4vLi4vZW5naW5lcy90eXBlcyc7XG5pbXBvcnQgeyB1c2VPdXRzaWRlQ2xpY2sgfSBmcm9tICcuLi8uLi9ob29rcyc7XG5cbmltcG9ydCB7IGFwcGx5RHluYW1pY0xhYmVsIH0gZnJvbSAnLi9taXhpbnMnO1xuaW1wb3J0IHsgdXNlQXV0b1Jlc2l6ZSwgUk9PVF9GT05UX1NJWkUgfSBmcm9tICcuL2hvb2tzJztcbmltcG9ydCB7XG4gICAgU3R5bGVkQ29udGVudCxcbiAgICBTdHlsZWRIZWxwZXJzLFxuICAgIFN0eWxlZExlZnRIZWxwZXIsXG4gICAgU3R5bGVkUmlnaHRIZWxwZXIsXG4gICAgU3R5bGVkTGFiZWwsXG4gICAgU3R5bGVkUGxhY2Vob2xkZXIsXG4gICAgU3R5bGVkVGV4dEFyZWEsXG4gICAgU3R5bGVkVGV4dEFyZWFXcmFwcGVyLFxuICAgIFN0eWxlZENvbnRhaW5lcixcbiAgICBTdHlsZWRJbmRpY2F0b3IsXG4gICAgU3R5bGVkT3B0aW9uYWxUZXh0LFxuICAgIE91dGVyTGFiZWxXcmFwcGVyLFxuICAgIFN0eWxlZEluZGljYXRvcldyYXBwZXIsXG4gICAgU3R5bGVkSGludFdyYXBwZXIsXG4gICAgVGl0bGVDYXB0aW9uLFxuICAgIFN0eWxlZE91dHNpZGVIZWxwZXJzV3JhcHBlcixcbiAgICBTdHlsZWRIaWRkZW5UZXh0QXJlYSxcbn0gZnJvbSAnLi9UZXh0QXJlYS5zdHlsZXMnO1xuaW1wb3J0IHsgY2xhc3NlcyB9IGZyb20gJy4vVGV4dEFyZWEudG9rZW5zJztcbmltcG9ydCB7IGJhc2UgYXMgdmlld0NTUyB9IGZyb20gJy4vdmFyaWF0aW9ucy9fdmlldy9iYXNlJztcbmltcG9ydCB7IGJhc2UgYXMgc2l6ZUNTUyB9IGZyb20gJy4vdmFyaWF0aW9ucy9fc2l6ZS9iYXNlJztcbmltcG9ydCB7IGJhc2UgYXMgY2xlYXJDU1MgfSBmcm9tICcuL3ZhcmlhdGlvbnMvX2NsZWFyL2Jhc2UnO1xuaW1wb3J0IHsgYmFzZSBhcyByZWFkT25seUNTUyB9IGZyb20gJy4vdmFyaWF0aW9ucy9fcmVhZC1vbmx5L2Jhc2UnO1xuaW1wb3J0IHsgYmFzZSBhcyBkaXNhYmxlZENTUyB9IGZyb20gJy4vdmFyaWF0aW9ucy9fZGlzYWJsZWQvYmFzZSc7XG5pbXBvcnQgeyBiYXNlIGFzIGhpbnRWaWV3Q1NTIH0gZnJvbSAnLi92YXJpYXRpb25zL19oaW50LXZpZXcvYmFzZSc7XG5pbXBvcnQgeyBiYXNlIGFzIGhpbnRTaXplQ1NTIH0gZnJvbSAnLi92YXJpYXRpb25zL19oaW50LXNpemUvYmFzZSc7XG5pbXBvcnQgdHlwZSB7IFRleHRBcmVhUHJvcHMsIFRleHRBcmVhUm9vdFByb3BzIH0gZnJvbSAnLi9UZXh0QXJlYS50eXBlcyc7XG5pbXBvcnQgeyBIaW50Q29tcG9uZW50IH0gZnJvbSAnLi91aS9IaW50L0hpbnQnO1xuXG5jb25zdCB7XG4gICAgaW5uZXJQbGFjZWhvbGRlclVwLFxuICAgIGZvY3VzZWRPdXRlclBsYWNlaG9sZGVyQ29sb3IsXG4gICAgaGlkZVBsYWNlSG9sZGVyLFxuICAgIHN0eWxlZENvbnRhaW5lcixcbiAgICBzdHlsZWRUZXh0QXJlYSxcbiAgICBzdHlsZWRUZXh0QXJlYVdyYXBwZXIsXG4gICAgc3R5bGVkUGxhY2Vob2xkZXIsXG4gICAgc3R5bGVkSGVscGVycyxcbn0gPSBjbGFzc2VzO1xuXG5jb25zdCBvcHRpb25hbFRleHQgPSAnb3B0aW9uYWwnO1xuXG5jb25zdCBiYXNlID0gY3NzYFxuICAgICR7YXBwbHlEeW5hbWljTGFiZWx9O1xuXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG5gO1xuXG4vLyBUT0RPOiDQo9C00LDQu9C40YLRjCDQv9C+0YHQu9C1INC+0YLQutCw0LfQsCDQvtGCINGB0YLQsNGA0YvRhSDQsdC40LHQu9C40L7RgtC10LogcGxhc21hLXdlYiAvIHBsYXNtYS1iMmNcbmNvbnN0IGZhbGxiYWNrU3RhdHVzTWFwID0ge1xuICAgICcnOiAncHJpbWFyeScsXG4gICAgc3VjY2VzczogJ3Bvc2l0aXZlJyxcbiAgICB3YXJuaW5nOiAnd2FybmluZycsXG4gICAgZXJyb3I6ICduZWdhdGl2ZScsXG59O1xuXG5jb25zdCBISU5UX0RFRkFVTFRfT0ZGU0VUOiBbbnVtYmVyLCBudW1iZXJdID0gWzAsIDBdO1xuXG4vLyBUT0RPOiDQn9C10YDQtdC90LXRgdGC0Lgg0Y3RgtC+0YIg0LzQtdGC0L7QtCDQsiDRhNCw0LnQuyBhcHBseUR5bmFtaWNMYWJlbC50c1xuZXhwb3J0IGNvbnN0IGdldER5bmFtaWNMYWJlbENsYXNzZXMgPSAocHJvcHM6IFRleHRBcmVhUHJvcHMsIGZvY3VzZWQ6IGJvb2xlYW4pID0+IHtcbiAgICBjb25zdCB7IHJlYWRPbmx5LCBsYWJlbCwgbGFiZWxQbGFjZW1lbnQsIHJvd3MsIHZhbHVlLCBzaXplIH0gPSBwcm9wcztcblxuICAgIC8vINCU0L7QsdCw0LLQuNGC0Ywg0LrQu9Cw0YHRgSDQvtGC0LLQtdGH0LDRjtGJ0LjQuSDQt9CwINC40LfQvNC10L3QtdC90LjQtSDRhtCy0LXRgtCwINC/0LvQtdC50YHRhdC+0LvQtNC10YDQsCDQv9GA0Lgg0YTQvtC60YPRgdC1XG4gICAgY29uc3Qgd2l0aEZvY3VzZWRPdXRlclVwUGxhY2Vob2xkZXIgPVxuICAgICAgICAhcmVhZE9ubHkgJiYgZm9jdXNlZCAmJiAoIWxhYmVsIHx8IGxhYmVsUGxhY2VtZW50ID09PSAnb3V0ZXInKSA/IGZvY3VzZWRPdXRlclBsYWNlaG9sZGVyQ29sb3IgOiB1bmRlZmluZWQ7XG5cbiAgICAvLyDQlNC+0LHQsNCy0LjRgtGMINC60LvQsNGB0YEg0L7RgtCy0LXRh9Cw0Y7RidC40Lkg0LfQsCDQv9C+0LTQvdGP0YLQuNC1INC4INGD0LzQtdC90YzRiNC10L3QuNC1INC/0LvQtdC50YHRhdC+0LvQtNC10YDQsFxuICAgIGNvbnN0IHdpdGhJbm5lclBsYWNlaG9sZGVyVXAgPVxuICAgICAgICBsYWJlbFBsYWNlbWVudCA9PT0gJ2lubmVyJyAmJlxuICAgICAgICBsYWJlbCAmJlxuICAgICAgICAhcm93cyAmJlxuICAgICAgICBzaXplICE9PSAneHMnICYmXG4gICAgICAgICgoIXJlYWRPbmx5ICYmICh2YWx1ZSB8fCBmb2N1c2VkKSkgfHwgKHJlYWRPbmx5ICYmIHZhbHVlKSlcbiAgICAgICAgICAgID8gaW5uZXJQbGFjZWhvbGRlclVwXG4gICAgICAgICAgICA6IHVuZGVmaW5lZDtcblxuICAgIC8vINCU0L7QsdCw0LLQuNGC0Ywg0LrQu9Cw0YHRgSDQvtGC0LLQtdGH0LDRjtGJ0LjQuSDQt9CwINGB0LrRgNGL0YLQuNC1INC/0LvQtdC50YHRhdC+0LvQtNC10YDQsFxuICAgIGNvbnN0IHdpdGhIaWRlUGxhY2Vob2xkZXIgPVxuICAgICAgICAodmFsdWUgJiYgIWxhYmVsKSB8fFxuICAgICAgICAobGFiZWxQbGFjZW1lbnQgPT09ICdpbm5lcicgJiYgKChmb2N1c2VkICYmICFyZWFkT25seSkgfHwgdmFsdWUpICYmIGxhYmVsICYmIHJvd3MpIHx8XG4gICAgICAgIChsYWJlbFBsYWNlbWVudCA9PT0gJ291dGVyJyAmJiB2YWx1ZSkgfHxcbiAgICAgICAgKGxhYmVsUGxhY2VtZW50ID09PSAnaW5uZXInICYmIHNpemUgPT09ICd4cycgJiYgdmFsdWUpXG4gICAgICAgICAgICA/IGhpZGVQbGFjZUhvbGRlclxuICAgICAgICAgICAgOiB1bmRlZmluZWQ7XG5cbiAgICByZXR1cm4gW3dpdGhGb2N1c2VkT3V0ZXJVcFBsYWNlaG9sZGVyLCB3aXRoSW5uZXJQbGFjZWhvbGRlclVwLCB3aXRoSGlkZVBsYWNlaG9sZGVyXTtcbn07XG5cbmV4cG9ydCBjb25zdCB0ZXh0QXJlYVJvb3QgPSAoUm9vdDogUm9vdFByb3BzPEhUTUxUZXh0QXJlYUVsZW1lbnQsIFRleHRBcmVhUm9vdFByb3BzPikgPT5cbiAgICBmb3J3YXJkUmVmPEhUTUxUZXh0QXJlYUVsZW1lbnQsIFRleHRBcmVhUHJvcHM+KChwcm9wcywgaW5uZXJSZWYpID0+IHtcbiAgICAgICAgY29uc3Qge1xuICAgICAgICAgICAgaGVscGVyVGV4dCxcbiAgICAgICAgICAgIHN0YXR1cyxcbiAgICAgICAgICAgIHJlc2l6ZSxcbiAgICAgICAgICAgIHJpZ2h0SGVscGVyLFxuICAgICAgICAgICAgbGVmdEhlbHBlcixcbiAgICAgICAgICAgIGxlZnRIZWxwZXJQbGFjZW1lbnQgPSAnaW5uZXInLFxuICAgICAgICAgICAgY29udGVudFJpZ2h0LFxuICAgICAgICAgICAgYXV0b1Jlc2l6ZSA9IGZhbHNlLFxuICAgICAgICAgICAgbWluQXV0byA9IDAsXG4gICAgICAgICAgICBtYXhBdXRvLFxuICAgICAgICAgICAgbGFiZWwsXG4gICAgICAgICAgICBsYWJlbFBsYWNlbWVudCA9ICdpbm5lcicsXG4gICAgICAgICAgICB0aXRsZUNhcHRpb24sXG4gICAgICAgICAgICBwbGFjZWhvbGRlcixcbiAgICAgICAgICAgIGRlZmF1bHRWYWx1ZSxcbiAgICAgICAgICAgIGhlaWdodCxcbiAgICAgICAgICAgIHdpZHRoLFxuICAgICAgICAgICAgdmFsdWUsXG4gICAgICAgICAgICBkaXNhYmxlZCxcbiAgICAgICAgICAgIHJlcXVpcmVkID0gZmFsc2UsXG4gICAgICAgICAgICByZXF1aXJlZFBsYWNlbWVudCA9ICdyaWdodCcsXG4gICAgICAgICAgICBoYXNSZXF1aXJlZEluZGljYXRvciA9IHRydWUsXG4gICAgICAgICAgICBvcHRpb25hbCA9IGZhbHNlLFxuICAgICAgICAgICAgY2xlYXIsXG4gICAgICAgICAgICBoYXNEaXZpZGVyLFxuICAgICAgICAgICAgc2l6ZSxcbiAgICAgICAgICAgIHZpZXcsXG4gICAgICAgICAgICBpZCxcbiAgICAgICAgICAgIHN0eWxlLFxuICAgICAgICAgICAgY2xhc3NOYW1lLFxuICAgICAgICAgICAgcmVhZE9ubHksXG4gICAgICAgICAgICByb3dzLFxuICAgICAgICAgICAgY29scyxcbiAgICAgICAgICAgIGhpbnRUcmlnZ2VyID0gJ2hvdmVyJyxcbiAgICAgICAgICAgIGhpbnRUZXh0LFxuICAgICAgICAgICAgaGludFZpZXcgPSAnZGVmYXVsdCcsXG4gICAgICAgICAgICBoaW50U2l6ZSA9ICdtJyxcbiAgICAgICAgICAgIGhpbnRUYXJnZXRJY29uLFxuICAgICAgICAgICAgaGludFBsYWNlbWVudCA9ICdhdXRvJyxcbiAgICAgICAgICAgIGhpbnRIYXNBcnJvdyxcbiAgICAgICAgICAgIGhpbnRPZmZzZXQgPSBISU5UX0RFRkFVTFRfT0ZGU0VULFxuICAgICAgICAgICAgaGludFdpZHRoLFxuICAgICAgICAgICAgaGludENvbnRlbnRMZWZ0LFxuICAgICAgICAgICAgb25DaGFuZ2UsXG4gICAgICAgICAgICAuLi5yZXN0XG4gICAgICAgIH0gPSBwcm9wcztcblxuICAgICAgICBjb25zdCBbaXNIaW50VmlzaWJsZSwgc2V0SXNIaW50VmlzaWJsZV0gPSB1c2VTdGF0ZShmYWxzZSk7XG4gICAgICAgIGNvbnN0IFtoZWxwZXJXaWR0aCwgc2V0SGVscGVyV2lkdGhdID0gdXNlU3RhdGU8c3RyaW5nPih3aWR0aCA/IGAke3dpZHRofXJlbWAgOiAnMTAwJScpO1xuICAgICAgICBjb25zdCBbZm9jdXNlZCwgc2V0Rm9jdXNlZF0gPSB1c2VTdGF0ZShmYWxzZSk7XG4gICAgICAgIC8vIFRPRE86INC/0LXRgNC10L3QtdGB0YLQuCDQsiDQvtCx0YnRg9GOINC/0LXRgNC10LzQtdC90L3Rg9GOINC00LvRjyB2YWx1ZSDRgdC90LDRgNGD0LbQuCDQuCDQstC90YPRgtGA0LhcbiAgICAgICAgY29uc3QgW3VuY29udHJvbGxlZFZhbHVlLCBzZXRVbmNvbnRyb2xsZWRWYWx1ZV0gPSB1c2VTdGF0ZTxzdHJpbmcgfCB1bmRlZmluZWQ+KCk7XG5cbiAgICAgICAgY29uc3Qgb3V0ZXJSZWYgPSBjcmVhdGVSZWY8SFRNTFRleHRBcmVhRWxlbWVudD4oKTtcbiAgICAgICAgY29uc3QgaGlkZGVuUmVmID0gdXNlUmVmPEhUTUxUZXh0QXJlYUVsZW1lbnQgfCBudWxsPihudWxsKTtcblxuICAgICAgICBjb25zdCBoaW50UmVmID0gdXNlT3V0c2lkZUNsaWNrPEhUTUxEaXZFbGVtZW50PigoKSA9PiB7XG4gICAgICAgICAgICBzZXRJc0hpbnRWaXNpYmxlKGZhbHNlKTtcbiAgICAgICAgfSk7XG4gICAgICAgIGNvbnN0IGhpbnRJbm5lclJlZiA9IHVzZVJlZjxIVE1MRGl2RWxlbWVudD4obnVsbCk7XG4gICAgICAgIGNvbnN0IGhpbnRGb3JrUmVmID0gdXNlRm9ya1JlZihoaW50UmVmLCBoaW50SW5uZXJSZWYpO1xuXG4gICAgICAgIGNvbnN0IGlzSW5uZXJMZWZ0SGVscGVyUGxhY2VtZW50ID0gbGVmdEhlbHBlclBsYWNlbWVudCA9PT0gJ2lubmVyJztcbiAgICAgICAgY29uc3QgbGVmdEhlbHBlclRleHQgPSBsZWZ0SGVscGVyIHx8IGhlbHBlclRleHQ7XG4gICAgICAgIGNvbnN0IGlubmVyT3B0aW9uYWwgPSByZXF1aXJlZCA/IGZhbHNlIDogb3B0aW9uYWw7XG4gICAgICAgIGNvbnN0IGhhc0xlZnRIZWxwZXIgPSBCb29sZWFuKGxlZnRIZWxwZXIgfHwgaGVscGVyVGV4dCk7XG4gICAgICAgIGNvbnN0IGhhc1JpZ2h0SGVscGVyID0gQm9vbGVhbihyaWdodEhlbHBlcik7XG4gICAgICAgIGNvbnN0IGhhc0hlbHBlciA9ICFpc0lubmVyTGVmdEhlbHBlclBsYWNlbWVudCA/IGhhc1JpZ2h0SGVscGVyIDogaGFzTGVmdEhlbHBlciB8fCBoYXNSaWdodEhlbHBlcjtcbiAgICAgICAgY29uc3QgaGFzT3V0ZXJMYWJlbCA9IEJvb2xlYW4obGFiZWwgJiYgbGFiZWxQbGFjZW1lbnQgPT09ICdvdXRlcicpO1xuICAgICAgICBjb25zdCBoYXNJbm5lckxhYmVsID0gQm9vbGVhbihsYWJlbCAmJiBsYWJlbFBsYWNlbWVudCA9PT0gJ2lubmVyJyAmJiBzaXplICE9PSAneHMnKTtcbiAgICAgICAgY29uc3QgaGFzUGxhY2Vob2xkZXJPcHRpb25hbCA9IGlubmVyT3B0aW9uYWwgJiYgIWhhc091dGVyTGFiZWw7XG5cbiAgICAgICAgY29uc3Qgb3ZlcnJpZGRlblZpZXcgPSBzdGF0dXMgIT09IHVuZGVmaW5lZCA/IGZhbGxiYWNrU3RhdHVzTWFwW3N0YXR1c10gOiB2aWV3O1xuICAgICAgICBjb25zdCB0ZXh0YXJlYUhlbHBlcklkID0gaWQgPyBgJHtpZH0taGVscGVyYCA6IHVuZGVmaW5lZDtcbiAgICAgICAgY29uc3QgYXBwbHlDdXN0b21XaWR0aCA9IHJlc2l6ZSAhPT0gJ2hvcml6b250YWwnICYmIHJlc2l6ZSAhPT0gJ2JvdGgnICYmICFjb2xzO1xuICAgICAgICBjb25zdCBwbGFjZWhvbGRlckxhYmVsID0gaGFzSW5uZXJMYWJlbCA/IGxhYmVsIDogcGxhY2Vob2xkZXI7XG4gICAgICAgIGNvbnN0IGFwcGx5QXV0b1Jlc2l6ZSA9IGF1dG9SZXNpemUgfHwgQm9vbGVhbihjbGVhcik7XG5cbiAgICAgICAgY29uc3QgY2xlYXJDbGFzcyA9IGNsZWFyID8gY2xhc3Nlcy5jbGVhciA6IHVuZGVmaW5lZDtcbiAgICAgICAgY29uc3QgaGFzSGludENsYXNzID0gaGludFRleHQgPyBjbGFzc2VzLmhhc0hpbnQgOiB1bmRlZmluZWQ7XG4gICAgICAgIGNvbnN0IGhhc1JpZ2h0Q29udGVudENsYXNzID0gY29udGVudFJpZ2h0ID8gY2xhc3Nlcy5oYXNSaWdodENvbnRlbnQgOiB1bmRlZmluZWQ7XG4gICAgICAgIGNvbnN0IGhhc0RpdmlkZXJDbGFzcyA9IGhhc0RpdmlkZXIgPyBjbGFzc2VzLmhhc0RpdmlkZXIgOiB1bmRlZmluZWQ7XG4gICAgICAgIGNvbnN0IHJlcXVpcmVkUGxhY2VtZW50Q2xhc3MgPSByZXF1aXJlZFBsYWNlbWVudCA9PT0gJ3JpZ2h0JyA/IGNsYXNzZXMucmVxdWlyZWRBbGlnblJpZ2h0IDogdW5kZWZpbmVkO1xuXG4gICAgICAgIGNvbnN0IGhhbmRsZUhpbnRTaG93ID0gKCkgPT4gc2V0SXNIaW50VmlzaWJsZSh0cnVlKTtcbiAgICAgICAgY29uc3QgaGFuZGxlSGludEhpZGUgPSAoKSA9PiBzZXRJc0hpbnRWaXNpYmxlKGZhbHNlKTtcbiAgICAgICAgY29uc3QgaGFuZGxlSGludENsaWNrOiBNb3VzZUV2ZW50SGFuZGxlciA9IChldmVudCkgPT4ge1xuICAgICAgICAgICAgaWYgKCFoaW50VGV4dCB8fCBoaW50VHJpZ2dlciAhPT0gJ2NsaWNrJykge1xuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICAgICAgICBjb25zdCB0YXJnZXRJc1BvcG92ZXIgPSBldmVudC50YXJnZXQgPT09IGhpbnRJbm5lclJlZi5jdXJyZW50O1xuICAgICAgICAgICAgY29uc3Qgcm9vdEhhc1RhcmdldCA9IGhpbnRJbm5lclJlZi5jdXJyZW50Py5jb250YWlucyhldmVudC50YXJnZXQgYXMgRWxlbWVudCk7XG5cbiAgICAgICAgICAgIGlmICghdGFyZ2V0SXNQb3BvdmVyICYmICFyb290SGFzVGFyZ2V0KSB7XG4gICAgICAgICAgICAgICAgc2V0SXNIaW50VmlzaWJsZSh0cnVlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfTtcblxuICAgICAgICB1c2VMYXlvdXRFZmZlY3QoKCkgPT4ge1xuICAgICAgICAgICAgaWYgKG91dGVyUmVmLmN1cnJlbnQpIHtcbiAgICAgICAgICAgICAgICBzZXRVbmNvbnRyb2xsZWRWYWx1ZShvdXRlclJlZi5jdXJyZW50LnZhbHVlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSwgW291dGVyUmVmXSk7XG5cbiAgICAgICAgdXNlUmVzaXplT2JzZXJ2ZXIob3V0ZXJSZWYsIChjdXJyZW50RWxlbWVudCkgPT4ge1xuICAgICAgICAgICAgY29uc3QgeyB3aWR0aDogaW5saW5lV2lkdGggfSA9IGN1cnJlbnRFbGVtZW50LnN0eWxlO1xuXG4gICAgICAgICAgICBpZiAoaW5saW5lV2lkdGggfHwgY29scykge1xuICAgICAgICAgICAgICAgIGNvbnN0IHsgd2lkdGg6IGVsZW1lbnRXaWR0aCB9ID0gY3VycmVudEVsZW1lbnQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XG4gICAgICAgICAgICAgICAgc2V0SGVscGVyV2lkdGgoYCR7ZWxlbWVudFdpZHRoIC8gUk9PVF9GT05UX1NJWkV9cmVtYCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuXG4gICAgICAgIHVzZUF1dG9SZXNpemUoYXBwbHlBdXRvUmVzaXplLCBvdXRlclJlZiwgdmFsdWUgfHwgdW5jb250cm9sbGVkVmFsdWUsIG1pbkF1dG8sIG1heEF1dG8sIHJlc2l6ZSwgaGlkZGVuUmVmKTtcblxuICAgICAgICBjb25zdCBvbkZvY3VzSGFuZGxlciA9IHVzZUNhbGxiYWNrKCgpID0+IHtcbiAgICAgICAgICAgIHNldEZvY3VzZWQodHJ1ZSk7XG4gICAgICAgIH0sIFtdKTtcblxuICAgICAgICBjb25zdCBvbkJsdXJIYW5kbGVyID0gdXNlQ2FsbGJhY2soKCkgPT4ge1xuICAgICAgICAgICAgc2V0Rm9jdXNlZChmYWxzZSk7XG4gICAgICAgIH0sIFtdKTtcblxuICAgICAgICBjb25zdCBvbkNoYW5nZUhhbmRsZXIgPSB1c2VDYWxsYmFjayhcbiAgICAgICAgICAgIChldmVudDogUmVhY3QuQ2hhbmdlRXZlbnQ8SFRNTFRleHRBcmVhRWxlbWVudD4pID0+IHtcbiAgICAgICAgICAgICAgICAvLyBJTkZPOiDQlNC70Y8g0LrRgNCw0LnQvdC1INGA0LXQtNC60LjRhSDQutC10LnRgdC+0LIsINC60L7Qs9C00LAgdmFsdWUg0YHQvdCw0YDRg9C20Lgg0L3QtSDQutC+0L3RgtGA0L7Qu9C40YDRg9C10YLRgdGPXG4gICAgICAgICAgICAgICAgaWYgKHZhbHVlID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgICAgICAgICAgc2V0VW5jb250cm9sbGVkVmFsdWUoZXZlbnQ/LnRhcmdldC52YWx1ZSk7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgb25DaGFuZ2U/LihldmVudCk7XG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgW3ZhbHVlLCBvbkNoYW5nZV0sXG4gICAgICAgICk7XG5cbiAgICAgICAgY29uc3QgaGFuZGxlVGV4dEFyZWFGb2N1cyA9ICgpID0+IHtcbiAgICAgICAgICAgIGlmIChyZWFkT25seSB8fCBkaXNhYmxlZCB8fCAhb3V0ZXJSZWY/LmN1cnJlbnQpIHtcbiAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIG91dGVyUmVmLmN1cnJlbnQuZm9jdXMoKTtcbiAgICAgICAgfTtcblxuICAgICAgICBjb25zdCBkeW5hbWljTGFiZWxDbGFzc2VzID0gZ2V0RHluYW1pY0xhYmVsQ2xhc3NlcyhcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBzaXplLFxuICAgICAgICAgICAgICAgIHJlYWRPbmx5LFxuICAgICAgICAgICAgICAgIGxhYmVsLFxuICAgICAgICAgICAgICAgIGxhYmVsUGxhY2VtZW50LFxuICAgICAgICAgICAgICAgIHZhbHVlOiB2YWx1ZSB8fCB1bmNvbnRyb2xsZWRWYWx1ZSB8fCBkZWZhdWx0VmFsdWUsXG4gICAgICAgICAgICAgICAgcm93cyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBmb2N1c2VkLFxuICAgICAgICApO1xuXG4gICAgICAgIGNvbnN0IG9wdGlvbmFsVGV4dE5vZGUgPSBpbm5lck9wdGlvbmFsID8gKFxuICAgICAgICAgICAgPFN0eWxlZE9wdGlvbmFsVGV4dCBpbmhlcml0Rm9udD17IWhhc091dGVyTGFiZWx9PlxuICAgICAgICAgICAgICAgIHtCb29sZWFuKGhhc1BsYWNlaG9sZGVyT3B0aW9uYWwgPyBwbGFjZWhvbGRlckxhYmVsIDogbGFiZWwpICYmICdcXHhhMCd9XG4gICAgICAgICAgICAgICAge29wdGlvbmFsVGV4dH1cbiAgICAgICAgICAgIDwvU3R5bGVkT3B0aW9uYWxUZXh0PlxuICAgICAgICApIDogbnVsbDtcblxuICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgPFJvb3RcbiAgICAgICAgICAgICAgICB2aWV3PXtvdmVycmlkZGVuVmlld31cbiAgICAgICAgICAgICAgICBzaXplPXtzaXplfVxuICAgICAgICAgICAgICAgIGRpc2FibGVkPXtkaXNhYmxlZH1cbiAgICAgICAgICAgICAgICByZWFkT25seT17cmVhZE9ubHl9XG4gICAgICAgICAgICAgICAgc3R5bGU9e3sgd2lkdGg6IGhlbHBlcldpZHRoLCAuLi5zdHlsZSB9fVxuICAgICAgICAgICAgICAgIGNsYXNzTmFtZT17Y3goY2xlYXJDbGFzcywgaGFzRGl2aWRlckNsYXNzLCBoYXNIaW50Q2xhc3MsIGNsYXNzTmFtZSl9XG4gICAgICAgICAgICAgICAgb25DbGljaz17aGFuZGxlVGV4dEFyZWFGb2N1c31cbiAgICAgICAgICAgICAgICBkYXRhLXJvb3RcbiAgICAgICAgICAgICAgICB7Li4uKGhpbnRUZXh0ICYmIHtcbiAgICAgICAgICAgICAgICAgICAgaGludFZpZXcsXG4gICAgICAgICAgICAgICAgICAgIGhpbnRTaXplLFxuICAgICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIHsoaGFzT3V0ZXJMYWJlbCB8fCB0aXRsZUNhcHRpb24pICYmIChcbiAgICAgICAgICAgICAgICAgICAgPE91dGVyTGFiZWxXcmFwcGVyIHdpZHRoPXtoZWxwZXJXaWR0aH0gaXNJbm5lckxhYmVsPXtsYWJlbFBsYWNlbWVudCA9PT0gJ2lubmVyJ30+XG4gICAgICAgICAgICAgICAgICAgICAgICB7aGFzT3V0ZXJMYWJlbCAmJiAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPFN0eWxlZEluZGljYXRvcldyYXBwZXI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxTdHlsZWRMYWJlbD57bGFiZWx9PC9TdHlsZWRMYWJlbD5cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7aGludFRleHQgJiYgKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPFN0eWxlZEhpbnRXcmFwcGVyPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxIaW50Q29tcG9uZW50XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlZj17aGludEZvcmtSZWZ9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhpbnRUZXh0PXtoaW50VGV4dH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGludFRyaWdnZXI9e2hpbnRUcmlnZ2VyfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpc0hpbnRWaXNpYmxlPXtpc0hpbnRWaXNpYmxlfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoaW50VGFyZ2V0SWNvbj17aGludFRhcmdldEljb259XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhpbnRQbGFjZW1lbnQ9e2hpbnRQbGFjZW1lbnR9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhpbnRIYXNBcnJvdz17aGludEhhc0Fycm93fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoaW50T2Zmc2V0PXtoaW50T2Zmc2V0fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoaW50V2lkdGg9e2hpbnRXaWR0aH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGludENvbnRlbnRMZWZ0PXtoaW50Q29udGVudExlZnR9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhhbmRsZUhpbnRTaG93PXtoYW5kbGVIaW50U2hvd31cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGFuZGxlSGludEhpZGU9e2hhbmRsZUhpbnRIaWRlfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoYW5kbGVIaW50Q2xpY2s9e2hhbmRsZUhpbnRDbGlja31cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9TdHlsZWRIaW50V3JhcHBlcj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3JlcXVpcmVkICYmIGhhc1JlcXVpcmVkSW5kaWNhdG9yICYmIChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxTdHlsZWRJbmRpY2F0b3JcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzc05hbWU9e2N4KFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzc2VzLm91dGVyTGFiZWxQbGFjZW1lbnQsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlcXVpcmVkUGxhY2VtZW50Q2xhc3MsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhhc0hpbnRDbGFzcyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge29wdGlvbmFsVGV4dE5vZGV9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9TdHlsZWRJbmRpY2F0b3JXcmFwcGVyPlxuICAgICAgICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgICAgICAgIHt0aXRsZUNhcHRpb24gJiYgPFRpdGxlQ2FwdGlvbj57dGl0bGVDYXB0aW9ufTwvVGl0bGVDYXB0aW9uPn1cbiAgICAgICAgICAgICAgICAgICAgPC9PdXRlckxhYmVsV3JhcHBlcj5cbiAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgIDxTdHlsZWRDb250YWluZXJcbiAgICAgICAgICAgICAgICAgICAgY2xhc3NOYW1lPXtjeChzdHlsZWRDb250YWluZXIsIC4uLmR5bmFtaWNMYWJlbENsYXNzZXMpfVxuICAgICAgICAgICAgICAgICAgICB3aWR0aD17aGVscGVyV2lkdGh9XG4gICAgICAgICAgICAgICAgICAgIG9uRm9jdXM9e29uRm9jdXNIYW5kbGVyfVxuICAgICAgICAgICAgICAgICAgICBvbkJsdXI9e29uQmx1ckhhbmRsZXJ9XG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICB7IWhhc091dGVyTGFiZWwgJiYgKFxuICAgICAgICAgICAgICAgICAgICAgICAgPD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7cmVxdWlyZWQgJiYgaGFzUmVxdWlyZWRJbmRpY2F0b3IgJiYgKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8U3R5bGVkSW5kaWNhdG9yIGNsYXNzTmFtZT17Y3goY2xhc3Nlcy5pbm5lckxhYmVsUGxhY2VtZW50LCByZXF1aXJlZFBsYWNlbWVudENsYXNzKX0gLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtoaW50VGV4dCAmJiAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxTdHlsZWRIaW50V3JhcHBlciBjbGFzc05hbWU9e2NsYXNzZXMuaW5uZXJMYWJlbFBsYWNlbWVudH0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8SGludENvbXBvbmVudFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlZj17aGludEZvcmtSZWZ9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGludFRleHQ9e2hpbnRUZXh0fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhpbnRUcmlnZ2VyPXtoaW50VHJpZ2dlcn1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpc0hpbnRWaXNpYmxlPXtpc0hpbnRWaXNpYmxlfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhpbnRUYXJnZXRJY29uPXtoaW50VGFyZ2V0SWNvbn1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoaW50UGxhY2VtZW50PXtoaW50UGxhY2VtZW50fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhpbnRIYXNBcnJvdz17aGludEhhc0Fycm93fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhpbnRPZmZzZXQ9e2hpbnRPZmZzZXR9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGludFdpZHRoPXtoaW50V2lkdGh9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGludENvbnRlbnRMZWZ0PXtoaW50Q29udGVudExlZnR9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2l6ZT17c2l6ZX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoYW5kbGVIaW50U2hvdz17aGFuZGxlSGludFNob3d9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGFuZGxlSGludEhpZGU9e2hhbmRsZUhpbnRIaWRlfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhhbmRsZUhpbnRDbGljaz17aGFuZGxlSGludENsaWNrfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlzSW5uZXJMYWJlbFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9TdHlsZWRIaW50V3JhcHBlcj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgICAgICAgICAgPC8+XG4gICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgICAgIHtjb250ZW50UmlnaHQgJiYgPFN0eWxlZENvbnRlbnQ+e2NvbnRlbnRSaWdodH08L1N0eWxlZENvbnRlbnQ+fVxuICAgICAgICAgICAgICAgICAgICA8U3R5bGVkVGV4dEFyZWFXcmFwcGVyIGNsYXNzTmFtZT17Y3goc3R5bGVkVGV4dEFyZWFXcmFwcGVyKX0gaGFzSGVscGVyPXtoYXNIZWxwZXJ9PlxuICAgICAgICAgICAgICAgICAgICAgICAgPFN0eWxlZFRleHRBcmVhXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3NOYW1lPXtjeChzdHlsZWRUZXh0QXJlYSwgaGFzUmlnaHRDb250ZW50Q2xhc3MpfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlkPXtpZH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBoYXNDb250ZW50UmlnaHQ9e0Jvb2xlYW4oY29udGVudFJpZ2h0KX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBoYXNIZWxwZXI9e2hhc0hlbHBlcn1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBhcHBseUN1c3RvbVdpZHRoPXthcHBseUN1c3RvbVdpZHRofVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlZj17bWVyZ2VSZWZzKG91dGVyUmVmLCBpbm5lclJlZil9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzYWJsZWQ9e2Rpc2FibGVkfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlcXVpcmVkPXtyZXF1aXJlZH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ9e2FwcGx5QXV0b1Jlc2l6ZSA/IG1pbkF1dG8gOiBoZWlnaHR9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg9e3dpZHRofVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBsYWNlaG9sZGVyPXtwbGFjZWhvbGRlckxhYmVsfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFyaWEtZGVzY3JpYmVkYnk9e3RleHRhcmVhSGVscGVySWR9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWU9e3ZhbHVlfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlYWRPbmx5PXtyZWFkT25seX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByb3dzPXtyb3dzfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbHM9e2NvbHN9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVzaXplPXtyZXNpemV9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGVmYXVsdFZhbHVlPXtkZWZhdWx0VmFsdWV9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgb25DaGFuZ2U9e29uQ2hhbmdlSGFuZGxlcn1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7Li4ucmVzdH1cbiAgICAgICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICB7YXBwbHlBdXRvUmVzaXplICYmIChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8U3R5bGVkSGlkZGVuVGV4dEFyZWFcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXJpYS1oaWRkZW5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVmPXtoaWRkZW5SZWZ9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhhc0NvbnRlbnRSaWdodD17Qm9vbGVhbihjb250ZW50UmlnaHQpfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZT17dmFsdWUgfHwgdW5jb250cm9sbGVkVmFsdWUgfHwgJyAnfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZWZhdWx0VmFsdWU9e2RlZmF1bHRWYWx1ZX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgICAgPC9TdHlsZWRUZXh0QXJlYVdyYXBwZXI+XG4gICAgICAgICAgICAgICAgICAgIHtoYXNIZWxwZXIgJiYgKFxuICAgICAgICAgICAgICAgICAgICAgICAgPFN0eWxlZEhlbHBlcnMgY2xhc3NOYW1lPXtzdHlsZWRIZWxwZXJzfSBpZD17dGV4dGFyZWFIZWxwZXJJZH0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge2lzSW5uZXJMZWZ0SGVscGVyUGxhY2VtZW50ICYmIChsZWZ0SGVscGVyIHx8IGhlbHBlclRleHQpICYmIChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPFN0eWxlZExlZnRIZWxwZXI+e2xlZnRIZWxwZXIgfHwgaGVscGVyVGV4dH08L1N0eWxlZExlZnRIZWxwZXI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7cmlnaHRIZWxwZXIgJiYgPFN0eWxlZFJpZ2h0SGVscGVyIGRhdGEtcm9vdD57cmlnaHRIZWxwZXJ9PC9TdHlsZWRSaWdodEhlbHBlcj59XG4gICAgICAgICAgICAgICAgICAgICAgICA8L1N0eWxlZEhlbHBlcnM+XG4gICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgICAgIHtwbGFjZWhvbGRlckxhYmVsICYmIChcbiAgICAgICAgICAgICAgICAgICAgICAgIDxTdHlsZWRQbGFjZWhvbGRlclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhhc0NvbnRlbnRSaWdodD17Qm9vbGVhbihjb250ZW50UmlnaHQpfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzTmFtZT17c3R5bGVkUGxhY2Vob2xkZXJ9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaHRtbEZvcj17aWR9XG4gICAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge3BsYWNlaG9sZGVyTGFiZWx9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgeyFoYXNPdXRlckxhYmVsICYmIG9wdGlvbmFsVGV4dE5vZGV9XG4gICAgICAgICAgICAgICAgICAgICAgICA8L1N0eWxlZFBsYWNlaG9sZGVyPlxuICAgICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgIDwvU3R5bGVkQ29udGFpbmVyPlxuICAgICAgICAgICAgICAgIHtoYXNMZWZ0SGVscGVyICYmICFpc0lubmVyTGVmdEhlbHBlclBsYWNlbWVudCAmJiAoXG4gICAgICAgICAgICAgICAgICAgIDxTdHlsZWRPdXRzaWRlSGVscGVyc1dyYXBwZXIgaWQ9e3RleHRhcmVhSGVscGVySWR9PlxuICAgICAgICAgICAgICAgICAgICAgICAgPFN0eWxlZExlZnRIZWxwZXI+e2xlZnRIZWxwZXJUZXh0fTwvU3R5bGVkTGVmdEhlbHBlcj5cbiAgICAgICAgICAgICAgICAgICAgPC9TdHlsZWRPdXRzaWRlSGVscGVyc1dyYXBwZXI+XG4gICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgIDwvUm9vdD5cbiAgICAgICAgKTtcbiAgICB9KTtcblxuZXhwb3J0IGNvbnN0IHRleHRBcmVhQ29uZmlnID0ge1xuICAgIG5hbWU6ICdUZXh0QXJlYScsXG4gICAgdGFnOiAnZGl2JyxcbiAgICBsYXlvdXQ6IHRleHRBcmVhUm9vdCxcbiAgICBiYXNlLFxuICAgIHZhcmlhdGlvbnM6IHtcbiAgICAgICAgc2l6ZToge1xuICAgICAgICAgICAgY3NzOiBzaXplQ1NTLFxuICAgICAgICB9LFxuICAgICAgICB2aWV3OiB7XG4gICAgICAgICAgICBjc3M6IHZpZXdDU1MsXG4gICAgICAgIH0sXG4gICAgICAgIGNsZWFyOiB7XG4gICAgICAgICAgICBjc3M6IGNsZWFyQ1NTLFxuICAgICAgICAgICAgYXR0cnM6IHRydWUsXG4gICAgICAgIH0sXG4gICAgICAgIHJlYWRPbmx5OiB7XG4gICAgICAgICAgICBjc3M6IHJlYWRPbmx5Q1NTLFxuICAgICAgICAgICAgYXR0cnM6IHRydWUsXG4gICAgICAgIH0sXG4gICAgICAgIGRpc2FibGVkOiB7XG4gICAgICAgICAgICBjc3M6IGRpc2FibGVkQ1NTLFxuICAgICAgICAgICAgYXR0cnM6IHRydWUsXG4gICAgICAgIH0sXG4gICAgICAgIGhpbnRWaWV3OiB7XG4gICAgICAgICAgICBjc3M6IGhpbnRWaWV3Q1NTLFxuICAgICAgICB9LFxuICAgICAgICBoaW50U2l6ZToge1xuICAgICAgICAgICAgY3NzOiBoaW50U2l6ZUNTUyxcbiAgICAgICAgfSxcbiAgICB9LFxuICAgIGRlZmF1bHRzOiB7XG4gICAgICAgIHNpemU6ICdtJyxcbiAgICAgICAgdmlldzogJ3ByaW1hcnknLFxuICAgIH0sXG59O1xuIl19 */"));
|
48
48
|
|
49
49
|
// TODO: Удалить после отказа от старых библиотек plasma-web / plasma-b2c
|
50
50
|
var fallbackStatusMap = {
|
@@ -248,7 +248,8 @@ export var textAreaRoot = function textAreaRoot(Root) {
|
|
248
248
|
width: helperWidth
|
249
249
|
}, style),
|
250
250
|
className: cx(clearClass, hasDividerClass, hasHintClass, className),
|
251
|
-
onClick: handleTextAreaFocus
|
251
|
+
onClick: handleTextAreaFocus,
|
252
|
+
"data-root": true
|
252
253
|
}, hintText && {
|
253
254
|
hintView: hintView,
|
254
255
|
hintSize: hintSize
|
@@ -328,7 +329,9 @@ export var textAreaRoot = function textAreaRoot(Root) {
|
|
328
329
|
})), hasHelper && /*#__PURE__*/React.createElement(StyledHelpers, {
|
329
330
|
className: styledHelpers,
|
330
331
|
id: textareaHelperId
|
331
|
-
}, isInnerLeftHelperPlacement && (leftHelper || helperText) && /*#__PURE__*/React.createElement(StyledLeftHelper, null, leftHelper || helperText), rightHelper && /*#__PURE__*/React.createElement(StyledRightHelper,
|
332
|
+
}, isInnerLeftHelperPlacement && (leftHelper || helperText) && /*#__PURE__*/React.createElement(StyledLeftHelper, null, leftHelper || helperText), rightHelper && /*#__PURE__*/React.createElement(StyledRightHelper, {
|
333
|
+
"data-root": true
|
334
|
+
}, rightHelper)), placeholderLabel && /*#__PURE__*/React.createElement(StyledPlaceholder, {
|
332
335
|
hasContentRight: Boolean(contentRight),
|
333
336
|
className: styledPlaceholder,
|
334
337
|
htmlFor: id
|
@@ -254,5 +254,6 @@ export var tokens = {
|
|
254
254
|
tooltipArrowMaskImage: '--plasma-textarea__tooltip-arrow-mask-image',
|
255
255
|
tooltipArrowHeight: '--plasma-textarea__tooltip-arrow-height',
|
256
256
|
tooltipArrowEdgeMargin: '--plasma-textarea__tooltip-arrow-edge-margin',
|
257
|
-
tooltipArrowBackground: '--plasma-textarea__tooltip-arrow-background'
|
257
|
+
tooltipArrowBackground: '--plasma-textarea__tooltip-arrow-background',
|
258
|
+
tourBorderRadius: '--plasma-tour__border-radius'
|
258
259
|
};
|
@@ -1,2 +1,3 @@
|
|
1
1
|
import { css } from '@emotion/react';
|
2
|
-
|
2
|
+
import { tokens } from "../../TextArea.tokens";
|
3
|
+
export var base = /*#__PURE__*/css(tokens.tourBorderRadius, ":0.75rem;;label:plasma-new-hope__base;" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy1lbW90aW9uL2NvbXBvbmVudHMvVGV4dEFyZWEvdmFyaWF0aW9ucy9fc2l6ZS9iYXNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUl1QiIsImZpbGUiOiIuLi8uLi8uLi8uLi8uLi8uLi9zcmMtZW1vdGlvbi9jb21wb25lbnRzL1RleHRBcmVhL3ZhcmlhdGlvbnMvX3NpemUvYmFzZS50cyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGNzcyB9IGZyb20gJ0BlbW90aW9uL3JlYWN0JztcblxuaW1wb3J0IHsgdG9rZW5zIH0gZnJvbSAnLi4vLi4vVGV4dEFyZWEudG9rZW5zJztcblxuZXhwb3J0IGNvbnN0IGJhc2UgPSBjc3NgXG4gICAgJHt0b2tlbnMudG91ckJvcmRlclJhZGl1c306IDAuNzVyZW07XG5gO1xuIl19 */"));
|
@@ -15,16 +15,15 @@ function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" !=
|
|
15
15
|
function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }
|
16
16
|
function _objectWithoutProperties(e, t) { if (null == e) return {}; var o, r, i = _objectWithoutPropertiesLoose(e, t); if (Object.getOwnPropertySymbols) { var n = Object.getOwnPropertySymbols(e); for (r = 0; r < n.length; r++) o = n[r], -1 === t.indexOf(o) && {}.propertyIsEnumerable.call(e, o) && (i[o] = e[o]); } return i; }
|
17
17
|
function _objectWithoutPropertiesLoose(r, e) { if (null == r) return {}; var t = {}; for (var n in r) if ({}.hasOwnProperty.call(r, n)) { if (-1 !== e.indexOf(n)) continue; t[n] = r[n]; } return t; }
|
18
|
-
// Tour.tsx
|
19
18
|
import React, { forwardRef, useCallback, useEffect, useState, useRef, useMemo } from 'react';
|
20
19
|
import { createPortal } from 'react-dom';
|
21
20
|
import { useFloating, offset, flip, shift, autoUpdate } from '@floating-ui/react-dom';
|
22
21
|
import { canUseDOM } from "../../utils";
|
23
|
-
import { getHTMLElement } from "./utils";
|
22
|
+
import { getHTMLElement, getIncreasedRadius, findRootElement } from "./utils";
|
24
23
|
import { MaskContainer, Mask, Highlight, TourPortal } from "./Tour.styles";
|
25
24
|
import { base as viewCSS } from "./variatoins/_view/base";
|
26
25
|
import { base as sizeCSS } from "./variatoins/_size/base";
|
27
|
-
import { classes } from "./Tour.tokens";
|
26
|
+
import { classes, tokens } from "./Tour.tokens";
|
28
27
|
var TOUR_PORTAL_ID = 'plasma-tour-portal';
|
29
28
|
export var tourRoot = function tourRoot(Root) {
|
30
29
|
return /*#__PURE__*/forwardRef(function (_ref, outerRef) {
|
@@ -67,8 +66,12 @@ export var tourRoot = function tourRoot(Root) {
|
|
67
66
|
setHighlightRect = _useState6[1];
|
68
67
|
var _useState7 = useState(null),
|
69
68
|
_useState8 = _slicedToArray(_useState7, 2),
|
70
|
-
|
71
|
-
|
69
|
+
highlightBorderRadius = _useState8[0],
|
70
|
+
setHighlightBorderRadius = _useState8[1];
|
71
|
+
var _useState9 = useState(null),
|
72
|
+
_useState10 = _slicedToArray(_useState9, 2),
|
73
|
+
targetElement = _useState10[0],
|
74
|
+
setTargetElement = _useState10[1];
|
72
75
|
var portalRef = useRef(null);
|
73
76
|
var floatingRef = useRef(null);
|
74
77
|
var active = controlled ? current : innerCurrent;
|
@@ -115,19 +118,21 @@ export var tourRoot = function tourRoot(Root) {
|
|
115
118
|
};
|
116
119
|
var updateHighlight = useCallback(function () {
|
117
120
|
if (!isOpen || !currentStep) return;
|
118
|
-
var
|
119
|
-
|
120
|
-
|
121
|
+
var rootItem = findRootElement(currentStep.target);
|
122
|
+
var highlightElement = getHTMLElement(rootItem);
|
123
|
+
var borderRadius = currentStep.borderRadius === 'fixed' ? "var(".concat(tokens.highlightRadius, ")") : getIncreasedRadius(rootItem, highlightOffset);
|
124
|
+
setHighlightBorderRadius(borderRadius);
|
125
|
+
if (highlightElement) {
|
126
|
+
var rect = highlightElement.getBoundingClientRect();
|
121
127
|
setHighlightRect(rect);
|
122
|
-
setTargetElement(
|
128
|
+
setTargetElement(highlightElement);
|
123
129
|
} else {
|
124
130
|
setHighlightRect(null);
|
125
131
|
setTargetElement(null);
|
126
132
|
}
|
127
133
|
}, [isOpen, currentStep]);
|
128
134
|
useEffect(function () {
|
129
|
-
if (!canUseDOM) return;
|
130
|
-
|
135
|
+
if (!canUseDOM) return;
|
131
136
|
var portal = document.getElementById(TOUR_PORTAL_ID);
|
132
137
|
if (!portal) {
|
133
138
|
portal = document.createElement('div');
|
@@ -187,6 +192,7 @@ export var tourRoot = function tourRoot(Root) {
|
|
187
192
|
"data-plasma-tour-mask": true
|
188
193
|
}, _Mask || (_Mask = /*#__PURE__*/React.createElement(Mask, null)), highlightRect && /*#__PURE__*/React.createElement(Highlight, {
|
189
194
|
overlayColor: overlayColor,
|
195
|
+
borderRadius: highlightBorderRadius,
|
190
196
|
style: {
|
191
197
|
left: highlightRect.left - highlightOffset,
|
192
198
|
top: highlightRect.top - highlightOffset,
|
@@ -1,13 +1,12 @@
|
|
1
1
|
import _styled from "@emotion/styled/base";
|
2
2
|
function _EMOTION_STRINGIFIED_CSS_ERROR__() { return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop)."; }
|
3
|
-
import { tokens } from "./Tour.tokens";
|
4
3
|
export var MaskContainer = /*#__PURE__*/_styled("div", {
|
5
4
|
target: "e1a1dgq93",
|
6
5
|
label: "plasma-new-hope__MaskContainer"
|
7
6
|
})("z-index:", function (_ref) {
|
8
7
|
var zIndex = _ref.zIndex;
|
9
8
|
return zIndex;
|
10
|
-
}, ";" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
9
|
+
}, ";" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy1lbW90aW9uL2NvbXBvbmVudHMvVG91ci9Ub3VyLnN0eWxlcy50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRW9FIiwiZmlsZSI6Ii4uLy4uLy4uLy4uL3NyYy1lbW90aW9uL2NvbXBvbmVudHMvVG91ci9Ub3VyLnN0eWxlcy50c3giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XG5cbmV4cG9ydCBjb25zdCBNYXNrQ29udGFpbmVyID0gc3R5bGVkLmRpdjx7IHpJbmRleDogc3RyaW5nIHwgbnVtYmVyIH0+YFxuICAgIHotaW5kZXg6ICR7KHsgekluZGV4IH0pID0+IHpJbmRleH07XG5gO1xuXG5leHBvcnQgY29uc3QgTWFzayA9IHN0eWxlZC5kaXZgXG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIGluc2V0OiAwO1xuICAgIHBvaW50ZXItZXZlbnRzOiBhbGw7XG5gO1xuXG5leHBvcnQgY29uc3QgSGlnaGxpZ2h0ID0gc3R5bGVkLmRpdjx7IG92ZXJsYXlDb2xvcj86IHN0cmluZzsgYm9yZGVyUmFkaXVzPzogc3RyaW5nIHwgbnVsbCB9PmBcbiAgICAtLXByaXZhdGUtbWFzay1jb2xvcjogJHsoeyBvdmVybGF5Q29sb3IgfSkgPT4gYCR7b3ZlcmxheUNvbG9yIHx8ICdyZ2JhKDAsIDAsIDAsIDAuNDUpJ31gfTtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLXJhZGl1czogJHsoeyBib3JkZXJSYWRpdXMgfSkgPT4gYm9yZGVyUmFkaXVzID8/IDB9O1xuICAgIGJveC1zaGFkb3c6IDAgMCAwIDk5OTlweCB2YXIoLS1wcml2YXRlLW1hc2stY29sb3IpO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGN1YmljLWJlemllcigwLjQsIDAsIDAuMiwgMSk7XG5gO1xuXG5leHBvcnQgY29uc3QgVG91clBvcnRhbCA9IHN0eWxlZC5kaXZgXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuYDtcbiJdfQ== */"));
|
11
10
|
export var Mask = /*#__PURE__*/_styled("div", {
|
12
11
|
target: "e1a1dgq92",
|
13
12
|
label: "plasma-new-hope__Mask"
|
@@ -17,7 +16,7 @@ export var Mask = /*#__PURE__*/_styled("div", {
|
|
17
16
|
} : {
|
18
17
|
name: "xzntb4",
|
19
18
|
styles: "position:fixed;inset:0;pointer-events:all",
|
20
|
-
map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
19
|
+
map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy1lbW90aW9uL2NvbXBvbmVudHMvVG91ci9Ub3VyLnN0eWxlcy50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBTThCIiwiZmlsZSI6Ii4uLy4uLy4uLy4uL3NyYy1lbW90aW9uL2NvbXBvbmVudHMvVG91ci9Ub3VyLnN0eWxlcy50c3giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XG5cbmV4cG9ydCBjb25zdCBNYXNrQ29udGFpbmVyID0gc3R5bGVkLmRpdjx7IHpJbmRleDogc3RyaW5nIHwgbnVtYmVyIH0+YFxuICAgIHotaW5kZXg6ICR7KHsgekluZGV4IH0pID0+IHpJbmRleH07XG5gO1xuXG5leHBvcnQgY29uc3QgTWFzayA9IHN0eWxlZC5kaXZgXG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIGluc2V0OiAwO1xuICAgIHBvaW50ZXItZXZlbnRzOiBhbGw7XG5gO1xuXG5leHBvcnQgY29uc3QgSGlnaGxpZ2h0ID0gc3R5bGVkLmRpdjx7IG92ZXJsYXlDb2xvcj86IHN0cmluZzsgYm9yZGVyUmFkaXVzPzogc3RyaW5nIHwgbnVsbCB9PmBcbiAgICAtLXByaXZhdGUtbWFzay1jb2xvcjogJHsoeyBvdmVybGF5Q29sb3IgfSkgPT4gYCR7b3ZlcmxheUNvbG9yIHx8ICdyZ2JhKDAsIDAsIDAsIDAuNDUpJ31gfTtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLXJhZGl1czogJHsoeyBib3JkZXJSYWRpdXMgfSkgPT4gYm9yZGVyUmFkaXVzID8/IDB9O1xuICAgIGJveC1zaGFkb3c6IDAgMCAwIDk5OTlweCB2YXIoLS1wcml2YXRlLW1hc2stY29sb3IpO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGN1YmljLWJlemllcigwLjQsIDAsIDAuMiwgMSk7XG5gO1xuXG5leHBvcnQgY29uc3QgVG91clBvcnRhbCA9IHN0eWxlZC5kaXZgXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuYDtcbiJdfQ== */",
|
21
20
|
toString: _EMOTION_STRINGIFIED_CSS_ERROR__
|
22
21
|
});
|
23
22
|
export var Highlight = /*#__PURE__*/_styled("div", {
|
@@ -26,7 +25,10 @@ export var Highlight = /*#__PURE__*/_styled("div", {
|
|
26
25
|
})("--private-mask-color:", function (_ref2) {
|
27
26
|
var overlayColor = _ref2.overlayColor;
|
28
27
|
return "".concat(overlayColor || 'rgba(0, 0, 0, 0.45)');
|
29
|
-
}, ";position:fixed;background:transparent;border-radius:
|
28
|
+
}, ";position:fixed;background:transparent;border-radius:", function (_ref3) {
|
29
|
+
var borderRadius = _ref3.borderRadius;
|
30
|
+
return borderRadius !== null && borderRadius !== void 0 ? borderRadius : 0;
|
31
|
+
}, ";box-shadow:0 0 0 9999px var(--private-mask-color);pointer-events:none;transition:all 0.3s cubic-bezier(0.4, 0, 0.2, 1);" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy1lbW90aW9uL2NvbXBvbmVudHMvVG91ci9Ub3VyLnN0eWxlcy50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBWTRGIiwiZmlsZSI6Ii4uLy4uLy4uLy4uL3NyYy1lbW90aW9uL2NvbXBvbmVudHMvVG91ci9Ub3VyLnN0eWxlcy50c3giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XG5cbmV4cG9ydCBjb25zdCBNYXNrQ29udGFpbmVyID0gc3R5bGVkLmRpdjx7IHpJbmRleDogc3RyaW5nIHwgbnVtYmVyIH0+YFxuICAgIHotaW5kZXg6ICR7KHsgekluZGV4IH0pID0+IHpJbmRleH07XG5gO1xuXG5leHBvcnQgY29uc3QgTWFzayA9IHN0eWxlZC5kaXZgXG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIGluc2V0OiAwO1xuICAgIHBvaW50ZXItZXZlbnRzOiBhbGw7XG5gO1xuXG5leHBvcnQgY29uc3QgSGlnaGxpZ2h0ID0gc3R5bGVkLmRpdjx7IG92ZXJsYXlDb2xvcj86IHN0cmluZzsgYm9yZGVyUmFkaXVzPzogc3RyaW5nIHwgbnVsbCB9PmBcbiAgICAtLXByaXZhdGUtbWFzay1jb2xvcjogJHsoeyBvdmVybGF5Q29sb3IgfSkgPT4gYCR7b3ZlcmxheUNvbG9yIHx8ICdyZ2JhKDAsIDAsIDAsIDAuNDUpJ31gfTtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLXJhZGl1czogJHsoeyBib3JkZXJSYWRpdXMgfSkgPT4gYm9yZGVyUmFkaXVzID8/IDB9O1xuICAgIGJveC1zaGFkb3c6IDAgMCAwIDk5OTlweCB2YXIoLS1wcml2YXRlLW1hc2stY29sb3IpO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGN1YmljLWJlemllcigwLjQsIDAsIDAuMiwgMSk7XG5gO1xuXG5leHBvcnQgY29uc3QgVG91clBvcnRhbCA9IHN0eWxlZC5kaXZgXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuYDtcbiJdfQ== */"));
|
30
32
|
export var TourPortal = /*#__PURE__*/_styled("div", {
|
31
33
|
target: "e1a1dgq90",
|
32
34
|
label: "plasma-new-hope__TourPortal"
|
@@ -36,6 +38,6 @@ export var TourPortal = /*#__PURE__*/_styled("div", {
|
|
36
38
|
} : {
|
37
39
|
name: "a4hmbt",
|
38
40
|
styles: "position:absolute",
|
39
|
-
map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
41
|
+
map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy1lbW90aW9uL2NvbXBvbmVudHMvVG91ci9Ub3VyLnN0eWxlcy50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBc0JvQyIsImZpbGUiOiIuLi8uLi8uLi8uLi9zcmMtZW1vdGlvbi9jb21wb25lbnRzL1RvdXIvVG91ci5zdHlsZXMudHN4Iiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xuXG5leHBvcnQgY29uc3QgTWFza0NvbnRhaW5lciA9IHN0eWxlZC5kaXY8eyB6SW5kZXg6IHN0cmluZyB8IG51bWJlciB9PmBcbiAgICB6LWluZGV4OiAkeyh7IHpJbmRleCB9KSA9PiB6SW5kZXh9O1xuYDtcblxuZXhwb3J0IGNvbnN0IE1hc2sgPSBzdHlsZWQuZGl2YFxuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICBpbnNldDogMDtcbiAgICBwb2ludGVyLWV2ZW50czogYWxsO1xuYDtcblxuZXhwb3J0IGNvbnN0IEhpZ2hsaWdodCA9IHN0eWxlZC5kaXY8eyBvdmVybGF5Q29sb3I/OiBzdHJpbmc7IGJvcmRlclJhZGl1cz86IHN0cmluZyB8IG51bGwgfT5gXG4gICAgLS1wcml2YXRlLW1hc2stY29sb3I6ICR7KHsgb3ZlcmxheUNvbG9yIH0pID0+IGAke292ZXJsYXlDb2xvciB8fCAncmdiYSgwLCAwLCAwLCAwLjQ1KSd9YH07XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1yYWRpdXM6ICR7KHsgYm9yZGVyUmFkaXVzIH0pID0+IGJvcmRlclJhZGl1cyA/PyAwfTtcbiAgICBib3gtc2hhZG93OiAwIDAgMCA5OTk5cHggdmFyKC0tcHJpdmF0ZS1tYXNrLWNvbG9yKTtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIsIDEpO1xuYDtcblxuZXhwb3J0IGNvbnN0IFRvdXJQb3J0YWwgPSBzdHlsZWQuZGl2YFxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbmA7XG4iXX0= */",
|
40
42
|
toString: _EMOTION_STRINGIFIED_CSS_ERROR__
|
41
43
|
});
|
@@ -9,4 +9,96 @@ export var getHTMLElement = function getHTMLElement(target) {
|
|
9
9
|
return target.current;
|
10
10
|
}
|
11
11
|
return target;
|
12
|
+
};
|
13
|
+
export var getIncreasedRadius = function getIncreasedRadius(ref, offset) {
|
14
|
+
if (!ref.current) {
|
15
|
+
return '';
|
16
|
+
}
|
17
|
+
var element = ref.current;
|
18
|
+
var computedStyle = getComputedStyle(element);
|
19
|
+
var borderRadiusComponent = computedStyle.getPropertyValue('--plasma-tour__border-radius');
|
20
|
+
var currentRadius = computedStyle.borderRadius !== undefined && computedStyle.borderRadius !== null && computedStyle.borderRadius !== '0px' ? computedStyle.borderRadius : borderRadiusComponent;
|
21
|
+
var parseValue = function parseValue(value, context) {
|
22
|
+
var num = parseFloat(value);
|
23
|
+
if (Number.isNaN(num)) return 0;
|
24
|
+
if (value.endsWith('px')) return num;
|
25
|
+
if (value.endsWith('%')) return num / 100 * context.width;
|
26
|
+
if (value.endsWith('em')) return num * parseFloat(computedStyle.fontSize);
|
27
|
+
if (value.endsWith('rem')) {
|
28
|
+
return num * parseFloat(getComputedStyle(document.documentElement).fontSize);
|
29
|
+
}
|
30
|
+
if (value.endsWith('vw')) return num / 100 * window.innerWidth;
|
31
|
+
if (value.endsWith('vh')) return num / 100 * window.innerHeight;
|
32
|
+
if (value.endsWith('vmin')) return num / 100 * Math.min(window.innerWidth, window.innerHeight);
|
33
|
+
if (value.endsWith('vmax')) return num / 100 * Math.max(window.innerWidth, window.innerHeight);
|
34
|
+
return num;
|
35
|
+
};
|
36
|
+
var context = {
|
37
|
+
width: element.offsetWidth,
|
38
|
+
height: element.offsetHeight
|
39
|
+
};
|
40
|
+
var parseRadius = function parseRadius(radius) {
|
41
|
+
var parts = radius.split('/').map(function (part) {
|
42
|
+
return part.trim();
|
43
|
+
});
|
44
|
+
var horizontal = parts[0].split(/\s+/).map(function (val) {
|
45
|
+
return parseValue(val, context);
|
46
|
+
});
|
47
|
+
var normalize = function normalize(values) {
|
48
|
+
if (values.length === 1) return [values[0], values[0], values[0], values[0]];
|
49
|
+
if (values.length === 2) return [values[0], values[1], values[0], values[1]];
|
50
|
+
if (values.length === 3) return [values[0], values[1], values[2], values[1]];
|
51
|
+
return values.slice(0, 4);
|
52
|
+
};
|
53
|
+
return {
|
54
|
+
horizontal: normalize(horizontal),
|
55
|
+
vertical: parts[1] ? normalize(parts[1].split(/\s+/).map(function (val) {
|
56
|
+
return parseValue(val, context);
|
57
|
+
})) : normalize(horizontal)
|
58
|
+
};
|
59
|
+
};
|
60
|
+
try {
|
61
|
+
var parsed = parseRadius(currentRadius);
|
62
|
+
var newHorizontal = parsed.horizontal.map(function (val) {
|
63
|
+
return val !== 0 ? Math.max(0, val + offset) : 0;
|
64
|
+
});
|
65
|
+
var newVertical = parsed.vertical.map(function (val) {
|
66
|
+
return val !== 0 ? Math.max(0, val + offset) : 0;
|
67
|
+
});
|
68
|
+
var format = function format(values) {
|
69
|
+
return values.map(function (v) {
|
70
|
+
return "".concat(v, "px");
|
71
|
+
}).join(' ');
|
72
|
+
};
|
73
|
+
var horizontalStr = format(newHorizontal);
|
74
|
+
var verticalStr = format(newVertical);
|
75
|
+
return horizontalStr === verticalStr ? horizontalStr : "".concat(horizontalStr, " / ").concat(verticalStr);
|
76
|
+
} catch (error) {
|
77
|
+
return '';
|
78
|
+
}
|
79
|
+
};
|
80
|
+
export var findRootElement = function findRootElement(ref) {
|
81
|
+
var _currentElement;
|
82
|
+
if (!ref.current) {
|
83
|
+
return '';
|
84
|
+
}
|
85
|
+
var currentElement = ref.current;
|
86
|
+
while (currentElement !== null && currentElement !== document.documentElement) {
|
87
|
+
if (currentElement.hasAttribute('data-root')) {
|
88
|
+
return {
|
89
|
+
current: currentElement
|
90
|
+
};
|
91
|
+
}
|
92
|
+
var parent = currentElement.parentElement;
|
93
|
+
if (parent === null) {
|
94
|
+
break;
|
95
|
+
}
|
96
|
+
currentElement = parent;
|
97
|
+
}
|
98
|
+
if ((_currentElement = currentElement) !== null && _currentElement !== void 0 && _currentElement.hasAttribute('data-root')) {
|
99
|
+
return {
|
100
|
+
current: currentElement
|
101
|
+
};
|
102
|
+
}
|
103
|
+
return ref;
|
12
104
|
};
|
@@ -2,10 +2,12 @@ import React, { useRef, useState } from 'react';
|
|
2
2
|
import type { StoryObj, Meta } from '@storybook/react';
|
3
3
|
import styled from '@emotion/styled';
|
4
4
|
|
5
|
+
import { IconArrowDown } from '../../../../components/_Icon';
|
5
6
|
import { linkConfig } from '../../../../components/Link';
|
6
7
|
import { mergeConfig } from '../../../../engines';
|
7
8
|
import { WithTheme, argTypesFromConfig } from '../../../_helpers';
|
8
9
|
import { Button } from '../Button/Button';
|
10
|
+
import { TextArea } from '../TextArea/TextArea';
|
9
11
|
|
10
12
|
import { config } from './Tour.config';
|
11
13
|
import { Tour } from './Tour';
|
@@ -113,10 +115,11 @@ const TourCard: React.FC<{
|
|
113
115
|
};
|
114
116
|
|
115
117
|
const StoryDefault = (args) => {
|
116
|
-
const ref1 = useRef<
|
118
|
+
const ref1 = useRef<HTMLTextAreaElement>(null);
|
117
119
|
const ref2 = useRef<HTMLButtonElement>(null);
|
118
|
-
const ref3 = useRef<
|
119
|
-
const ref4 = useRef<
|
120
|
+
const ref3 = useRef<HTMLDivElement>(null);
|
121
|
+
const ref4 = useRef<HTMLDivElement>(null);
|
122
|
+
const ref5 = useRef<HTMLDivElement>(null);
|
120
123
|
const [open, setOpen] = useState(false);
|
121
124
|
const [current, setCurrent] = useState(0);
|
122
125
|
|
@@ -139,7 +142,7 @@ const StoryDefault = (args) => {
|
|
139
142
|
onClose={onClose}
|
140
143
|
/>
|
141
144
|
),
|
142
|
-
placement: '
|
145
|
+
placement: 'bottom',
|
143
146
|
},
|
144
147
|
{
|
145
148
|
target: ref2,
|
@@ -187,13 +190,30 @@ const StoryDefault = (args) => {
|
|
187
190
|
),
|
188
191
|
placement: 'left',
|
189
192
|
},
|
193
|
+
{
|
194
|
+
target: ref5,
|
195
|
+
renderItem: () => (
|
196
|
+
<TourCard
|
197
|
+
title="Первый шаг"
|
198
|
+
description="Нажмите кнопку, чтобы продолжить"
|
199
|
+
index={4}
|
200
|
+
last={current === steps.length - 1}
|
201
|
+
total={steps.length}
|
202
|
+
onNext={onNext}
|
203
|
+
onPrev={onPrev}
|
204
|
+
onClose={onClose}
|
205
|
+
/>
|
206
|
+
),
|
207
|
+
placement: 'left',
|
208
|
+
borderRadius: 'fixed',
|
209
|
+
},
|
190
210
|
];
|
191
211
|
|
192
212
|
return (
|
193
213
|
<div
|
194
214
|
style={{
|
195
215
|
width: '100%',
|
196
|
-
height: '
|
216
|
+
height: '100vh',
|
197
217
|
display: 'flex',
|
198
218
|
justifyContent: 'space-between',
|
199
219
|
flexDirection: 'column',
|
@@ -207,7 +227,19 @@ const StoryDefault = (args) => {
|
|
207
227
|
justifyContent: 'space-between',
|
208
228
|
}}
|
209
229
|
>
|
210
|
-
<
|
230
|
+
<TextArea
|
231
|
+
ref={ref1}
|
232
|
+
label="Textarea"
|
233
|
+
placeholder="Напиши что нибудь"
|
234
|
+
leftHelper="Helper Text"
|
235
|
+
rightHelper={
|
236
|
+
<div ref={ref5} style={{ cursor: 'pointer', transform: 'rotate(-90deg)' }}>
|
237
|
+
<IconArrowDown />
|
238
|
+
</div>
|
239
|
+
}
|
240
|
+
rows={10}
|
241
|
+
cols={20}
|
242
|
+
/>
|
211
243
|
<Button ref={ref2}>Блок 2</Button>
|
212
244
|
</div>
|
213
245
|
<Button onClick={() => setOpen(true)}>Запуск тура</Button>
|
@@ -219,8 +251,25 @@ const StoryDefault = (args) => {
|
|
219
251
|
justifyContent: 'space-between',
|
220
252
|
}}
|
221
253
|
>
|
222
|
-
<
|
223
|
-
|
254
|
+
<div
|
255
|
+
style={{
|
256
|
+
background: 'black',
|
257
|
+
width: '100px',
|
258
|
+
height: '100px',
|
259
|
+
borderRadius: '50%',
|
260
|
+
}}
|
261
|
+
ref={ref3}
|
262
|
+
/>
|
263
|
+
<div
|
264
|
+
style={{
|
265
|
+
background: 'black',
|
266
|
+
width: '100px',
|
267
|
+
height: '100px',
|
268
|
+
}}
|
269
|
+
ref={ref4}
|
270
|
+
>
|
271
|
+
Блок 4
|
272
|
+
</div>
|
224
273
|
</div>
|
225
274
|
|
226
275
|
<Tour
|