@codecademy/brand 3.0.0-alpha.2ba7921cce.0 → 3.0.0-alpha.60d7fce419.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/dist/AppHeader/AppHeaderElements/AppHeaderCatalogSection/elements.d.ts +5 -0
- package/dist/AppHeader/AppHeaderElements/AppHeaderCatalogSection/elements.js +56 -12
- package/dist/AppHeader/AppHeaderElements/AppHeaderCatalogSection/index.js +5 -3
- package/dist/AppHeader/AppHeaderElements/AppHeaderLinkSections/index.js +0 -0
- package/dist/Banner/index.d.ts +0 -10
- package/dist/Banner/index.js +3 -24
- package/dist/CareerPathCard/index.d.ts +4 -1
- package/dist/CareerPathCard/index.js +15 -7
- package/dist/CertificationPathCard/index.d.ts +4 -1
- package/dist/CertificationPathCard/index.js +17 -9
- package/dist/ContentGroupBaseCard/index.d.ts +5 -3
- package/dist/ContentGroupBaseCard/index.js +129 -72
- package/dist/ContentGroupBaseCard/shared.js +29 -23
- package/dist/CourseCard/index.d.ts +4 -1
- package/dist/CourseCard/index.js +15 -11
- package/dist/GlobalHeader/GlobalHeaderItems.js +1 -1
- package/dist/GlobalHeader/index.d.ts +1 -0
- package/dist/GlobalHeader/index.js +41 -37
- package/dist/GlobalHeader/types.d.ts +1 -0
- package/dist/GlobalPage/index.d.ts +2 -2
- package/dist/GlobalPage/index.js +2 -2
- package/dist/LearningOutcomeFlyout/index.d.ts +21 -1
- package/dist/LearningOutcomeFlyout/index.js +105 -3
- package/dist/Recurly/context/NoProvider.d.ts +8 -0
- package/dist/Recurly/context/NoProvider.js +7 -0
- package/dist/Recurly/context/elements/index.d.ts +26 -0
- package/dist/Recurly/context/elements/index.js +46 -0
- package/dist/Recurly/context/index.d.ts +2 -0
- package/dist/Recurly/context/index.js +2 -0
- package/dist/Recurly/context/recurly/index.d.ts +30 -0
- package/dist/Recurly/context/recurly/index.js +50 -0
- package/dist/Recurly/context/recurly/loadRecurly.d.ts +6 -0
- package/dist/Recurly/context/recurly/loadRecurly.js +22 -0
- package/dist/Recurly/context/recurly/w.d.ts +14 -0
- package/dist/Recurly/context/recurly/w.js +4 -0
- package/dist/Recurly/fields/RecurlyField.d.ts +9 -0
- package/dist/Recurly/fields/RecurlyField.js +57 -0
- package/dist/Recurly/fields/elements.d.ts +17 -0
- package/dist/Recurly/fields/elements.js +106 -0
- package/dist/Recurly/fields/elements.test.js +79 -0
- package/dist/Recurly/fields/index.d.ts +2 -0
- package/dist/Recurly/fields/index.js +2 -0
- package/dist/Recurly/index.d.ts +2 -0
- package/dist/Recurly/index.js +2 -0
- package/dist/SkillPathCard/index.d.ts +4 -1
- package/dist/SkillPathCard/index.js +15 -7
- package/dist/index.d.ts +1 -0
- package/dist/index.js +1 -0
- package/dist/stories/Molecules/ContentGroupBaseCard.stories.js +3 -1
- package/dist/stories/Molecules/CurriculumCards/CareerPathCard.stories.js +3 -1
- package/dist/stories/Molecules/CurriculumCards/CertificationPathCard.stories.js +3 -1
- package/dist/stories/Molecules/CurriculumCards/CourseCard.stories.js +3 -1
- package/dist/stories/Molecules/CurriculumCards/SkillPathCard.stories.js +3 -1
- package/dist/stories/Molecules/EnhancedBanner.stories.d.ts +3 -3
- package/dist/stories/Molecules/EnhancedBanner.stories.js +2 -12
- package/dist/stories/Molecules/Recurly.stories.d.ts +5 -0
- package/dist/stories/Molecules/Recurly.stories.js +56 -0
- package/package.json +1 -1
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { ModalProps, WithChildrenProp } from '@codecademy/gamut';
|
|
2
2
|
import * as React from 'react';
|
|
3
|
-
import {
|
|
3
|
+
import { EnhancedBannerProps } from '../Banner/EnhancedBanner';
|
|
4
4
|
import { GlobalFooterProps } from '../GlobalFooter';
|
|
5
5
|
import { GlobalHeaderProps } from '../GlobalHeader';
|
|
6
6
|
export type GlobalPageBackgroundColor = 'beige' | 'background' | 'background-contrast' | 'navy' | 'paleBlue' | 'paleGreen' | 'palePink' | 'paleYellow' | 'white';
|
|
@@ -9,7 +9,7 @@ export interface GlobalPageProps extends WithChildrenProp {
|
|
|
9
9
|
/**
|
|
10
10
|
* Props directly passed to the Banner.
|
|
11
11
|
*/
|
|
12
|
-
banner?:
|
|
12
|
+
banner?: EnhancedBannerProps;
|
|
13
13
|
/**
|
|
14
14
|
* Element type to render around the children.
|
|
15
15
|
*/
|
package/dist/GlobalPage/index.js
CHANGED
|
@@ -2,7 +2,7 @@ import { AppWrapper, Modal, SkipToContent, SkipToContentTarget } from '@codecade
|
|
|
2
2
|
import { Background } from '@codecademy/gamut-styles';
|
|
3
3
|
import { forwardRef } from 'react';
|
|
4
4
|
import * as React from 'react';
|
|
5
|
-
import {
|
|
5
|
+
import { EnhancedBanner } from '../Banner/EnhancedBanner';
|
|
6
6
|
import { GlobalFooter } from '../GlobalFooter';
|
|
7
7
|
import { GlobalHeader } from '../GlobalHeader';
|
|
8
8
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
@@ -35,7 +35,7 @@ export const GlobalPage = ({
|
|
|
35
35
|
minHeight: "100vh",
|
|
36
36
|
children: [/*#__PURE__*/_jsx(SkipToContent, {
|
|
37
37
|
contentId: skipToContentId || defaultSkipToContentId
|
|
38
|
-
}), banner && /*#__PURE__*/_jsx(
|
|
38
|
+
}), banner && /*#__PURE__*/_jsx(EnhancedBanner, {
|
|
39
39
|
...banner
|
|
40
40
|
}), !header.hideEnterpriseHeader && /*#__PURE__*/_jsx(GlobalHeader, {
|
|
41
41
|
...header
|
|
@@ -14,7 +14,14 @@ export interface ParentLearningOutcome {
|
|
|
14
14
|
outcome: string;
|
|
15
15
|
level: number | null | undefined;
|
|
16
16
|
}
|
|
17
|
-
interface
|
|
17
|
+
interface ContentModuleLearningOutcomeDataFragment {
|
|
18
|
+
id: string;
|
|
19
|
+
title: string;
|
|
20
|
+
progressV2: {
|
|
21
|
+
percentComplete: number | undefined | null;
|
|
22
|
+
};
|
|
23
|
+
}
|
|
24
|
+
export interface LearningOutcomeDetailsProps {
|
|
18
25
|
level: LearningOutcomeLevels;
|
|
19
26
|
outcome: string;
|
|
20
27
|
percentComplete: number | undefined | null;
|
|
@@ -24,6 +31,18 @@ interface LearningOutcomeDetailsProps {
|
|
|
24
31
|
latestScoreAchievedAt: string | undefined | null;
|
|
25
32
|
parentLOs?: ParentLearningOutcome[];
|
|
26
33
|
skills?: LearningOutcomeSkill[] | null;
|
|
34
|
+
childLearningOutcomes?: {
|
|
35
|
+
id: string;
|
|
36
|
+
outcome: string;
|
|
37
|
+
percentComplete?: number | undefined | null;
|
|
38
|
+
contentModules: ContentModuleLearningOutcomeDataFragment[];
|
|
39
|
+
progress?: {
|
|
40
|
+
latestScore: number | undefined | null;
|
|
41
|
+
covered: boolean | undefined | null;
|
|
42
|
+
coveredAt: string | undefined | null;
|
|
43
|
+
highestScore: number | undefined | null;
|
|
44
|
+
};
|
|
45
|
+
}[];
|
|
27
46
|
}
|
|
28
47
|
interface LearningOutcomeFlyoutProps {
|
|
29
48
|
expanded: boolean;
|
|
@@ -33,6 +52,7 @@ interface LearningOutcomeFlyoutProps {
|
|
|
33
52
|
learningOutcomeOnClick?: () => void;
|
|
34
53
|
skillTagOnClick?: (skillSlug: string) => void;
|
|
35
54
|
}
|
|
55
|
+
export declare function getAverageModulePercentComplete(contentModules: ContentModuleLearningOutcomeDataFragment[]): number;
|
|
36
56
|
export declare const sortSkillsByClassification: (skills?: LearningOutcomeSkill[] | null) => LearningOutcomeSkill[];
|
|
37
57
|
export declare const LearningOutcomeFlyout: React.FC<LearningOutcomeFlyoutProps>;
|
|
38
58
|
export {};
|
|
@@ -4,8 +4,24 @@ import { SmallCheckIcon } from '@codecademy/gamut-icons';
|
|
|
4
4
|
import { css } from '@codecademy/gamut-styles';
|
|
5
5
|
import { LearningOutcomeAssessmentScores } from '../LearningOutcomeAssessmentScores';
|
|
6
6
|
import { learningOutcomeLabels, LearningOutcomeLevelBadge, LearningOutcomeLevels, LearningOutcomeLowAssessmentBadge } from '../LearningOutcomeBadges';
|
|
7
|
+
import { LearningOutcomeTile } from '../LearningOutcomeTile';
|
|
7
8
|
import { LearningOutcomeCardList } from './LearningOutcomeCardList';
|
|
8
9
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
10
|
+
const ChildLearningOutcomeRow = /*#__PURE__*/_styled(FlexBox, {
|
|
11
|
+
target: "e1ylhic52",
|
|
12
|
+
label: "ChildLearningOutcomeRow"
|
|
13
|
+
})(css({
|
|
14
|
+
'&:first-of-type': {
|
|
15
|
+
borderTopLeftRadius: '4px',
|
|
16
|
+
borderTopRightRadius: '4px',
|
|
17
|
+
borderTop: 1,
|
|
18
|
+
borderColor: 'border-tertiary'
|
|
19
|
+
},
|
|
20
|
+
'&:last-of-type': {
|
|
21
|
+
borderBottomLeftRadius: '4px',
|
|
22
|
+
borderBottomRightRadius: '4px'
|
|
23
|
+
}
|
|
24
|
+
}), process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9MZWFybmluZ091dGNvbWVGbHlvdXQvaW5kZXgudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQWVnQyIsImZpbGUiOiIuLi8uLi9zcmMvTGVhcm5pbmdPdXRjb21lRmx5b3V0L2luZGV4LnRzeCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFuY2hvciwgRmxleEJveCwgRmx5b3V0LCBUZXh0IH0gZnJvbSAnQGNvZGVjYWRlbXkvZ2FtdXQnO1xuaW1wb3J0IHsgU21hbGxDaGVja0ljb24gfSBmcm9tICdAY29kZWNhZGVteS9nYW11dC1pY29ucyc7XG5pbXBvcnQgeyBjc3MgfSBmcm9tICdAY29kZWNhZGVteS9nYW11dC1zdHlsZXMnO1xuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xuXG5pbXBvcnQgeyBMZWFybmluZ091dGNvbWVBc3Nlc3NtZW50U2NvcmVzIH0gZnJvbSAnLi4vTGVhcm5pbmdPdXRjb21lQXNzZXNzbWVudFNjb3Jlcyc7XG5pbXBvcnQge1xuICBsZWFybmluZ091dGNvbWVMYWJlbHMsXG4gIExlYXJuaW5nT3V0Y29tZUxldmVsQmFkZ2UsXG4gIExlYXJuaW5nT3V0Y29tZUxldmVscyxcbiAgTGVhcm5pbmdPdXRjb21lTG93QXNzZXNzbWVudEJhZGdlLFxufSBmcm9tICcuLi9MZWFybmluZ091dGNvbWVCYWRnZXMnO1xuaW1wb3J0IHsgTGVhcm5pbmdPdXRjb21lVGlsZSB9IGZyb20gJy4uL0xlYXJuaW5nT3V0Y29tZVRpbGUnO1xuaW1wb3J0IHsgTGVhcm5pbmdPdXRjb21lQ2FyZExpc3QgfSBmcm9tICcuL0xlYXJuaW5nT3V0Y29tZUNhcmRMaXN0JztcblxuY29uc3QgQ2hpbGRMZWFybmluZ091dGNvbWVSb3cgPSBzdHlsZWQoRmxleEJveCkoXG4gIGNzcyh7XG4gICAgJyY6Zmlyc3Qtb2YtdHlwZSc6IHtcbiAgICAgIGJvcmRlclRvcExlZnRSYWRpdXM6ICc0cHgnLFxuICAgICAgYm9yZGVyVG9wUmlnaHRSYWRpdXM6ICc0cHgnLFxuICAgICAgYm9yZGVyVG9wOiAxLFxuICAgICAgYm9yZGVyQ29sb3I6ICdib3JkZXItdGVydGlhcnknLFxuICAgIH0sXG4gICAgJyY6bGFzdC1vZi10eXBlJzoge1xuICAgICAgYm9yZGVyQm90dG9tTGVmdFJhZGl1czogJzRweCcsXG4gICAgICBib3JkZXJCb3R0b21SaWdodFJhZGl1czogJzRweCcsXG4gICAgfSxcbiAgfSlcbik7XG5cbmNvbnN0IFN0eWxlZEFuY2hvciA9IHN0eWxlZChBbmNob3IpKFxuICBjc3Moe1xuICAgIGNvbG9yOiAndGV4dCcsXG4gICAgZm9udFNpemU6IDI2LFxuICAgIGZvbnRXZWlnaHQ6IDcwMCxcbiAgICB0ZXh0RGVjb3JhdGlvbjogJ25vbmUnLFxuICAgICcmOmhvdmVyLCAmOmZvY3VzJzoge1xuICAgICAgY29sb3I6ICd0ZXh0JyxcbiAgICAgIHRleHREZWNvcmF0aW9uOiAndW5kZXJsaW5lJyxcbiAgICB9LFxuICB9KVxuKTtcblxuY29uc3QgU2tpbGxUYWcgPSBzdHlsZWQoQW5jaG9yKShcbiAgY3NzKHtcbiAgICBmb250U2l6ZTogMTQsXG4gICAgYm9yZGVyUmFkaXVzOiAnbWQnLFxuICAgIGJvcmRlcjogMSxcbiAgICBib3JkZXJDb2xvcjogJ2JvcmRlci1wcmltYXJ5JyxcbiAgICAnJjpob3ZlciwgJjpmb2N1cyc6IHtcbiAgICAgIGNvbG9yOiAndGV4dCcsXG4gICAgICBiZzogJ2JhY2tncm91bmQtaG92ZXInLFxuICAgIH0sXG4gIH0pXG4pO1xuXG5leHBvcnQgZW51bSBTa2lsbENsYXNzaWZpY2F0aW9uIHtcbiAgTGFuZ3VhZ2UgPSAnbGFuZ3VhZ2UnLFxuICBTdWJqZWN0ID0gJ3N1YmplY3QnLFxufVxuXG5pbnRlcmZhY2UgTGVhcm5pbmdPdXRjb21lU2tpbGwge1xuICBpZDogc3RyaW5nO1xuICBzbHVnOiBzdHJpbmc7XG4gIHRpdGxlPzogc3RyaW5nIHwgbnVsbDtcbiAgY2xhc3NpZmljYXRpb24/OiBTa2lsbENsYXNzaWZpY2F0aW9uIHwgbnVsbDtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBQYXJlbnRMZWFybmluZ091dGNvbWUge1xuICBpZDogc3RyaW5nO1xuICBvdXRjb21lOiBzdHJpbmc7XG4gIGxldmVsOiBudW1iZXIgfCBudWxsIHwgdW5kZWZpbmVkO1xufVxuXG5pbnRlcmZhY2UgQ29udGVudE1vZHVsZUxlYXJuaW5nT3V0Y29tZURhdGFGcmFnbWVudCB7XG4gIGlkOiBzdHJpbmc7XG4gIHRpdGxlOiBzdHJpbmc7XG4gIHByb2dyZXNzVjI6IHtcbiAgICBwZXJjZW50Q29tcGxldGU6IG51bWJlciB8IHVuZGVmaW5lZCB8IG51bGw7XG4gIH07XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTGVhcm5pbmdPdXRjb21lRGV0YWlsc1Byb3BzIHtcbiAgbGV2ZWw6IExlYXJuaW5nT3V0Y29tZUxldmVscztcbiAgb3V0Y29tZTogc3RyaW5nO1xuICBwZXJjZW50Q29tcGxldGU6IG51bWJlciB8IHVuZGVmaW5lZCB8IG51bGw7XG4gIGhpZ2hlc3RTY29yZTogbnVtYmVyIHwgdW5kZWZpbmVkIHwgbnVsbDtcbiAgaGlnaGVzdFNjb3JlQWNoaWV2ZWRBdDogc3RyaW5nIHwgdW5kZWZpbmVkIHwgbnVsbDtcbiAgbGF0ZXN0U2NvcmU6IG51bWJlciB8IHVuZGVmaW5lZCB8IG51bGw7XG4gIGxhdGVzdFNjb3JlQWNoaWV2ZWRBdDogc3RyaW5nIHwgdW5kZWZpbmVkIHwgbnVsbDtcbiAgcGFyZW50TE9zPzogUGFyZW50TGVhcm5pbmdPdXRjb21lW107XG4gIHNraWxscz86IExlYXJuaW5nT3V0Y29tZVNraWxsW10gfCBudWxsO1xuICBjaGlsZExlYXJuaW5nT3V0Y29tZXM/OiB7XG4gICAgaWQ6IHN0cmluZztcbiAgICBvdXRjb21lOiBzdHJpbmc7XG4gICAgcGVyY2VudENvbXBsZXRlPzogbnVtYmVyIHwgdW5kZWZpbmVkIHwgbnVsbDsgLy8gbm90IGN1cnJlbnRseSBnZXR0aW5nIHRoaXMgZnJvbSB0aGUgQVBJXG4gICAgY29udGVudE1vZHVsZXM6IENvbnRlbnRNb2R1bGVMZWFybmluZ091dGNvbWVEYXRhRnJhZ21lbnRbXTtcbiAgICBwcm9ncmVzcz86IHtcbiAgICAgIGxhdGVzdFNjb3JlOiBudW1iZXIgfCB1bmRlZmluZWQgfCBudWxsO1xuICAgICAgY292ZXJlZDogYm9vbGVhbiB8IHVuZGVmaW5lZCB8IG51bGw7XG4gICAgICBjb3ZlcmVkQXQ6IHN0cmluZyB8IHVuZGVmaW5lZCB8IG51bGw7XG4gICAgICBoaWdoZXN0U2NvcmU6IG51bWJlciB8IHVuZGVmaW5lZCB8IG51bGw7XG4gICAgfTtcbiAgfVtdO1xufVxuXG5pbnRlcmZhY2UgTGVhcm5pbmdPdXRjb21lRmx5b3V0UHJvcHMge1xuICBleHBhbmRlZDogYm9vbGVhbjtcbiAgb25DbG9zZTogKCkgPT4gdm9pZDtcbiAgbGVhcm5pbmdPdXRjb21lOiBMZWFybmluZ091dGNvbWVEZXRhaWxzUHJvcHM7XG4gIGxlYXJuaW5nT3V0Y29tZUhyZWY6IHN0cmluZztcbiAgbGVhcm5pbmdPdXRjb21lT25DbGljaz86ICgpID0+IHZvaWQ7XG4gIHNraWxsVGFnT25DbGljaz86IChza2lsbFNsdWc6IHN0cmluZykgPT4gdm9pZDtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldEF2ZXJhZ2VNb2R1bGVQZXJjZW50Q29tcGxldGUoXG4gIGNvbnRlbnRNb2R1bGVzOiBDb250ZW50TW9kdWxlTGVhcm5pbmdPdXRjb21lRGF0YUZyYWdtZW50W11cbik6IG51bWJlciB7XG4gIGlmICghY29udGVudE1vZHVsZXMgfHwgY29udGVudE1vZHVsZXMubGVuZ3RoID09PSAwKSByZXR1cm4gMDtcblxuICBjb25zdCB0b3RhbCA9IGNvbnRlbnRNb2R1bGVzLnJlZHVjZSgoc3VtLCBtb2R1bGUpID0+IHtcbiAgICBjb25zdCB7IHByb2dyZXNzVjIgfSA9IG1vZHVsZTtcbiAgICByZXR1cm4gc3VtICsgKHByb2dyZXNzVjI/LnBlcmNlbnRDb21wbGV0ZSA/PyAwKTtcbiAgfSwgMCk7XG5cbiAgcmV0dXJuIE1hdGguZmxvb3IodG90YWwgLyBjb250ZW50TW9kdWxlcy5sZW5ndGgpO1xufVxuXG5leHBvcnQgY29uc3Qgc29ydFNraWxsc0J5Q2xhc3NpZmljYXRpb24gPSAoXG4gIHNraWxscz86IExlYXJuaW5nT3V0Y29tZVNraWxsW10gfCBudWxsXG4pID0+IHtcbiAgaWYgKCFza2lsbHM/Lmxlbmd0aCkgcmV0dXJuIFtdO1xuICBjb25zdCBza2lsbHNDb3B5ID0gc2tpbGxzLnNsaWNlKCk7XG5cbiAgY29uc3Qgc29ydGVkU2tpbGxzID0gc2tpbGxzQ29weT8uc29ydCgoYSwgYikgPT4ge1xuICAgIGlmIChhPy5jbGFzc2lmaWNhdGlvbiA9PT0gJ2xhbmd1YWdlJykge1xuICAgICAgcmV0dXJuIC0xO1xuICAgIH1cbiAgICBpZiAoYj8uY2xhc3NpZmljYXRpb24gPT09ICdzdWJqZWN0Jykge1xuICAgICAgcmV0dXJuIDE7XG4gICAgfVxuICAgIHJldHVybiAwO1xuICB9KTtcblxuICByZXR1cm4gc29ydGVkU2tpbGxzO1xufTtcblxuY29uc3QgZ2V0U2tpbGxzQXJlYVBhdGggPSAoc2tpbGxTbHVnPzogc3RyaW5nKSA9PiB7XG4gIHJldHVybiBza2lsbFNsdWcgPyBgL3NraWxsLWFyZWFzLyR7c2tpbGxTbHVnfWAgOiAnLyc7XG59O1xuXG5jb25zdCBnZXRMZWFybmluZ091dGNvbWVQYXRoID0gKGlkPzogc3RyaW5nKSA9PiB7XG4gIHJldHVybiBpZCA/IGAvbGVhcm5pbmctb3V0Y29tZXMvJHtpZH1gIDogJy8nO1xufTtcblxuZXhwb3J0IGNvbnN0IExlYXJuaW5nT3V0Y29tZUZseW91dDogUmVhY3QuRkM8TGVhcm5pbmdPdXRjb21lRmx5b3V0UHJvcHM+ID0gKHtcbiAgZXhwYW5kZWQsXG4gIGxlYXJuaW5nT3V0Y29tZUhyZWYsXG4gIGxlYXJuaW5nT3V0Y29tZU9uQ2xpY2ssXG4gIGxlYXJuaW5nT3V0Y29tZToge1xuICAgIGhpZ2hlc3RTY29yZSxcbiAgICBoaWdoZXN0U2NvcmVBY2hpZXZlZEF0LFxuICAgIGxhdGVzdFNjb3JlLFxuICAgIGxhdGVzdFNjb3JlQWNoaWV2ZWRBdCxcbiAgICBsZXZlbCxcbiAgICBvdXRjb21lLFxuICAgIHBhcmVudExPcyxcbiAgICBwZXJjZW50Q29tcGxldGUsXG4gICAgc2tpbGxzLFxuICAgIGNoaWxkTGVhcm5pbmdPdXRjb21lcyxcbiAgfSxcbiAgc2tpbGxUYWdPbkNsaWNrLFxuICBvbkNsb3NlLFxufSkgPT4ge1xuICBjb25zdCBwZXJjZW50Q29tcGxldGVQZXJjZW50YWdlID1cbiAgICBwZXJjZW50Q29tcGxldGUgIT0gbnVsbCA/IHBlcmNlbnRDb21wbGV0ZSA6IDA7XG4gIGNvbnN0IGxldmVsTGFiZWwgPSBsZWFybmluZ091dGNvbWVMYWJlbHNbbGV2ZWxdO1xuXG4gIGNvbnN0IGhhc0xvd0xhdGVzdEFzc2Vzc21lbnQgPSBCb29sZWFuKFxuICAgIGxhdGVzdFNjb3JlICE9IG51bGwgJiYgbGF0ZXN0U2NvcmUgPCA3MFxuICApO1xuXG4gIGNvbnN0IHNob3dTa2lsbHMgPSAhIXNraWxscz8ubGVuZ3RoO1xuICBjb25zdCBzb3J0ZWRTa2lsbHMgPSBzb3J0U2tpbGxzQnlDbGFzc2lmaWNhdGlvbihza2lsbHMpO1xuXG4gIGNvbnN0IGlzTGV2ZWxUd29MZWFybmluZ091dGNvbWUgPSBsZXZlbCA9PT0gTGVhcm5pbmdPdXRjb21lTGV2ZWxzLlR3bztcbiAgY29uc3Qgc2hvd1BhcmVudExPcyA9XG4gICAgbGV2ZWwgPT09IExlYXJuaW5nT3V0Y29tZUxldmVscy5Ud28gJiYgISFwYXJlbnRMT3MgJiYgcGFyZW50TE9zLmxlbmd0aCA+IDA7XG5cbiAgY29uc3QgcmVuZGVyUHJvZ3Jlc3MgPSAoKSA9PiAoXG4gICAgPEZsZXhCb3ggYWxpZ25JdGVtcz1cImNlbnRlclwiPlxuICAgICAge0Jvb2xlYW4ocGVyY2VudENvbXBsZXRlUGVyY2VudGFnZSA9PT0gMTAwKSAmJiAoXG4gICAgICAgIDxGbGV4Qm94XG4gICAgICAgICAgd2lkdGg9ezE2fVxuICAgICAgICAgIGhlaWdodD17MTZ9XG4gICAgICAgICAgYm9yZGVyUmFkaXVzPVwibWRcIlxuICAgICAgICAgIGJnPVwicHJpbWFyeVwiXG4gICAgICAgICAgbXI9ezh9XG4gICAgICAgICAgYWxpZ25JdGVtcz1cImNlbnRlclwiXG4gICAgICAgICAganVzdGlmeUNvbnRlbnQ9XCJjZW50ZXJcIlxuICAgICAgICA+XG4gICAgICAgICAgPFNtYWxsQ2hlY2tJY29uIHNpemU9ezExfSBjb2xvcj1cIndoaXRlXCIgLz5cbiAgICAgICAgPC9GbGV4Qm94PlxuICAgICAgKX1cbiAgICAgIDxUZXh0XG4gICAgICAgIGNvbG9yPVwidGV4dFwiXG4gICAgICAgIHZhcmlhbnQ9XCJwLWxhcmdlXCJcbiAgICAgID57YCR7cGVyY2VudENvbXBsZXRlUGVyY2VudGFnZX0lIHByb2dyZXNzYH08L1RleHQ+XG4gICAgPC9GbGV4Qm94PlxuICApO1xuXG4gIC8vIFJlbmRlciBzdWJza2lsbHMgd2hlbiB0aGUgZHJhd2VyIGlzIGZlYXR1cmluZyBhIGxldmVsIDMgb3V0Y29tZVxuXG4gIGNvbnN0IHJlbmRlclN1YnNraWxscyA9ICgpID0+IHtcbiAgICByZXR1cm4gKFxuICAgICAgPEZsZXhCb3ggYXM9XCJ1bFwiIGZsZXhEaXJlY3Rpb249XCJjb2x1bW5cIiBwPXswfT5cbiAgICAgICAge2NoaWxkTGVhcm5pbmdPdXRjb21lcz8ubWFwKChjaGlsZExvKSA9PiB7XG4gICAgICAgICAgY29uc3QgeyBpZCwgb3V0Y29tZSwgcHJvZ3Jlc3MsIGNvbnRlbnRNb2R1bGVzIH0gPSBjaGlsZExvO1xuICAgICAgICAgIGNvbnN0IGNhbGN1bGF0ZWRQZXJjZW50Q29tcGxldGUgPVxuICAgICAgICAgICAgcHJvZ3Jlc3M/LmNvdmVyZWQgfHwgcHJvZ3Jlc3M/LmNvdmVyZWRBdFxuICAgICAgICAgICAgICA/IDEwMFxuICAgICAgICAgICAgICA6IGdldEF2ZXJhZ2VNb2R1bGVQZXJjZW50Q29tcGxldGUoY29udGVudE1vZHVsZXMpO1xuICAgICAgICAgIGNvbnN0IHNob3dOZWVkc1Jldmlld0luZGljYXRvciA9XG4gICAgICAgICAgICBwcm9ncmVzcz8ubGF0ZXN0U2NvcmUgIT09IG51bGwgJiZcbiAgICAgICAgICAgIHByb2dyZXNzPy5sYXRlc3RTY29yZSAhPT0gdW5kZWZpbmVkXG4gICAgICAgICAgICAgID8gcHJvZ3Jlc3MubGF0ZXN0U2NvcmUgPCA3MFxuICAgICAgICAgICAgICA6IGZhbHNlO1xuXG4gICAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgIDxDaGlsZExlYXJuaW5nT3V0Y29tZVJvd1xuICAgICAgICAgICAgICByb3dcbiAgICAgICAgICAgICAgYmc9XCJ3aGl0ZVwiXG4gICAgICAgICAgICAgIGJvcmRlckNvbG9yPVwiYm9yZGVyLXRlcnRpYXJ5XCJcbiAgICAgICAgICAgICAgYm9yZGVyTGVmdD17MX1cbiAgICAgICAgICAgICAgYm9yZGVyQm90dG9tPXsxfVxuICAgICAgICAgICAgICBib3JkZXJSaWdodD17MX1cbiAgICAgICAgICAgICAgcHg9ezE2fVxuICAgICAgICAgICAgICBweT17MjR9XG4gICAgICAgICAgICAgIGFsaWduSXRlbXM9XCJmbGV4LXN0YXJ0XCJcbiAgICAgICAgICAgICAgYXM9XCJsaVwiXG4gICAgICAgICAgICAgIGtleT17aWR9XG4gICAgICAgICAgICAgIGp1c3RpZnlDb250ZW50PVwiZmxleC1zdGFydFwiXG4gICAgICAgICAgICAgIGdhcD17MTZ9XG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIDxGbGV4Qm94IG1pbldpZHRoPXszMn0gd2lkdGg9ezMyfSBqdXN0aWZ5Q29udGVudD1cImNlbnRlclwiPlxuICAgICAgICAgICAgICAgIDxMZWFybmluZ091dGNvbWVUaWxlXG4gICAgICAgICAgICAgICAgICBsZWFybmluZ091dGNvbWVEZXRhaWxzPXt7XG4gICAgICAgICAgICAgICAgICAgIGlkLFxuICAgICAgICAgICAgICAgICAgICBsZXZlbDogTGVhcm5pbmdPdXRjb21lTGV2ZWxzLk9uZSxcbiAgICAgICAgICAgICAgICAgICAgb3V0Y29tZSxcbiAgICAgICAgICAgICAgICAgICAgcGVyY2VudENvbXBsZXRlOiBjYWxjdWxhdGVkUGVyY2VudENvbXBsZXRlLFxuICAgICAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgICAgICAgIHNpemU9XCJzbWFsbFwiXG4gICAgICAgICAgICAgICAgICBwb3BvdmVyPXtmYWxzZX1cbiAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICA8L0ZsZXhCb3g+XG4gICAgICAgICAgICAgIDxGbGV4Qm94IGNvbHVtbiBnYXA9ezh9PlxuICAgICAgICAgICAgICAgIDxBbmNob3JcbiAgICAgICAgICAgICAgICAgIHZhcmlhbnQ9XCJpbnRlcmZhY2VcIlxuICAgICAgICAgICAgICAgICAgaHJlZj17Z2V0TGVhcm5pbmdPdXRjb21lUGF0aChpZCl9XG4gICAgICAgICAgICAgICAgICB0YXJnZXQ9XCJfYmxhbmtcIlxuICAgICAgICAgICAgICAgICAgd2hpdGVTcGFjZT1cIm5vcm1hbFwiXG4gICAgICAgICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIC8vIGFkZCB0cmFja2luZyBoZXJlXG4gICAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgIHtvdXRjb21lfVxuICAgICAgICAgICAgICAgIDwvQW5jaG9yPlxuICAgICAgICAgICAgICAgIHtzaG93TmVlZHNSZXZpZXdJbmRpY2F0b3IgJiYgKFxuICAgICAgICAgICAgICAgICAgPEZsZXhCb3g+XG4gICAgICAgICAgICAgICAgICAgIDxMZWFybmluZ091dGNvbWVMb3dBc3Nlc3NtZW50QmFkZ2UgLz5cbiAgICAgICAgICAgICAgICAgIDwvRmxleEJveD5cbiAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICA8L0ZsZXhCb3g+XG4gICAgICAgICAgICA8L0NoaWxkTGVhcm5pbmdPdXRjb21lUm93PlxuICAgICAgICAgICk7XG4gICAgICAgIH0pfVxuICAgICAgPC9GbGV4Qm94PlxuICAgICk7XG4gIH07XG5cbiAgcmV0dXJuIChcbiAgICA8Rmx5b3V0XG4gICAgICBhcmlhLWxhYmVsPXtgJHtsZXZlbExhYmVsfSBkZXRhaWxzYH1cbiAgICAgIGNsb3NlTGFiZWw9e2BDbG9zZSAke2xldmVsTGFiZWx9IGRldGFpbHNgfVxuICAgICAgZXhwYW5kZWQ9e2V4cGFuZGVkfVxuICAgICAgb25DbG9zZT17b25DbG9zZX1cbiAgICAgIG9wZW5Gcm9tPVwicmlnaHRcIlxuICAgICAgdGl0bGU9ezxUZXh0IHZhcmlhbnQ9XCJ0aXRsZS1zbVwiPntgJHtsZXZlbExhYmVsfSBkZXRhaWxzYH08L1RleHQ+fVxuICAgID5cbiAgICAgIDxGbGV4Qm94IGdhcD17MzJ9IG10PXszMn0gbXg9ezI0fSBjb2x1bW4+XG4gICAgICAgIHsvKiBCYWRnZXMsIE91dGNvbWUsIFRvcGljIHRhZ3MsIFByb2dyZXNzICovfVxuICAgICAgICA8RmxleEJveCBnYXA9ezI0fSBjb2x1bW4+XG4gICAgICAgICAgPEZsZXhCb3gganVzdGlmeUNvbnRlbnQ9XCJzcGFjZS1iZXR3ZWVuXCIgYWxpZ25JdGVtcz1cImNlbnRlclwiPlxuICAgICAgICAgICAgPExlYXJuaW5nT3V0Y29tZUxldmVsQmFkZ2UgbGV2ZWw9e2xldmVsfSBzaXplPVwiYmFzZVwiIC8+XG4gICAgICAgICAgICB7aGFzTG93TGF0ZXN0QXNzZXNzbWVudCAmJiA8TGVhcm5pbmdPdXRjb21lTG93QXNzZXNzbWVudEJhZGdlIC8+fVxuICAgICAgICAgIDwvRmxleEJveD5cbiAgICAgICAgICA8RmxleEJveCBnYXA9ezE2fSBjb2x1bW4+XG4gICAgICAgICAgICA8U3R5bGVkQW5jaG9yXG4gICAgICAgICAgICAgIGhyZWY9e2xlYXJuaW5nT3V0Y29tZUhyZWZ9XG4gICAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+IGxlYXJuaW5nT3V0Y29tZU9uQ2xpY2s/LigpfVxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICB7b3V0Y29tZX1cbiAgICAgICAgICAgIDwvU3R5bGVkQW5jaG9yPlxuICAgICAgICAgICAge3Nob3dTa2lsbHMgJiYgKFxuICAgICAgICAgICAgICA8RmxleEJveCBhbGlnbkl0ZW1zPVwiY2VudGVyXCIgZ2FwPXsxMn0gZmxleFdyYXA9XCJ3cmFwXCI+XG4gICAgICAgICAgICAgICAge3NvcnRlZFNraWxscy5tYXAoKHNraWxsKSA9PiAoXG4gICAgICAgICAgICAgICAgICA8U2tpbGxUYWdcbiAgICAgICAgICAgICAgICAgICAga2V5PXtza2lsbC5pZH1cbiAgICAgICAgICAgICAgICAgICAgZGF0YS10ZXN0aWQ9XCJza2lsbC10YWdcIlxuICAgICAgICAgICAgICAgICAgICBweD17OH1cbiAgICAgICAgICAgICAgICAgICAgcHk9ezR9XG4gICAgICAgICAgICAgICAgICAgIHZhcmlhbnQ9XCJpbnRlcmZhY2VcIlxuICAgICAgICAgICAgICAgICAgICBocmVmPXtnZXRTa2lsbHNBcmVhUGF0aChza2lsbC5zbHVnKX1cbiAgICAgICAgICAgICAgICAgICAgb25DbGljaz17KCkgPT4gc2tpbGxUYWdPbkNsaWNrPy4oc2tpbGwuc2x1Zyl9XG4gICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIDxGbGV4Qm94IGNlbnRlcj5cbiAgICAgICAgICAgICAgICAgICAgICA8VGV4dD57c2tpbGwudGl0bGV9PC9UZXh0PlxuICAgICAgICAgICAgICAgICAgICA8L0ZsZXhCb3g+XG4gICAgICAgICAgICAgICAgICA8L1NraWxsVGFnPlxuICAgICAgICAgICAgICAgICkpfVxuICAgICAgICAgICAgICA8L0ZsZXhCb3g+XG4gICAgICAgICAgICApfVxuICAgICAgICAgIDwvRmxleEJveD5cbiAgICAgICAgICA8RmxleEJveCBib3JkZXJZPXsxfSBib3JkZXJDb2xvcj1cImJhY2tncm91bmQtaG92ZXJcIiBweT17MTZ9PlxuICAgICAgICAgICAge3JlbmRlclByb2dyZXNzKCl9XG4gICAgICAgICAgPC9GbGV4Qm94PlxuICAgICAgICA8L0ZsZXhCb3g+XG5cbiAgICAgICAgey8qIEFzc2Vzc21lbnQgc2NvcmVzICovfVxuICAgICAgICA8RmxleEJveCBnYXA9ezE2fSBjb2x1bW4+XG4gICAgICAgICAgPFRleHQgdmFyaWFudD1cInRpdGxlLXhzXCI+RXZhbHVhdGlvbiByZXN1bHRzPC9UZXh0PlxuICAgICAgICAgIDxMZWFybmluZ091dGNvbWVBc3Nlc3NtZW50U2NvcmVzXG4gICAgICAgICAgICBoaWdoZXN0U2NvcmU9e2hpZ2hlc3RTY29yZX1cbiAgICAgICAgICAgIGhpZ2hlc3RTY29yZUFjaGlldmVkQXQ9e2hpZ2hlc3RTY29yZUFjaGlldmVkQXR9XG4gICAgICAgICAgICBsYXRlc3RTY29yZT17bGF0ZXN0U2NvcmV9XG4gICAgICAgICAgICBsYXRlc3RTY29yZUFjaGlldmVkQXQ9e2xhdGVzdFNjb3JlQWNoaWV2ZWRBdH1cbiAgICAgICAgICAvPlxuICAgICAgICA8L0ZsZXhCb3g+XG5cbiAgICAgICAgey8qIEZvciBsZXZlbCAyIGFuZCAzIExPcyBvbmx5OiBDaGlsZHJlbiBMT3MgZ29lcyBiZWxvdyBoZXJlICovfVxuICAgICAgICB7aXNMZXZlbFR3b0xlYXJuaW5nT3V0Y29tZSAmJiAoXG4gICAgICAgICAgPEZsZXhCb3ggZ2FwPXsxNn0gY29sdW1uPlxuICAgICAgICAgICAgPFRleHQgdmFyaWFudD1cInRpdGxlLXhzXCI+U3Vic2tpbGxzPC9UZXh0PlxuICAgICAgICAgICAge3JlbmRlclN1YnNraWxscygpfVxuICAgICAgICAgIDwvRmxleEJveD5cbiAgICAgICAgKX1cblxuICAgICAgICB7LyogRm9yIGxldmVsIDIgTE9zIG9ubHk6IHNob3cgUGFyZW50IExPcyAqL31cbiAgICAgICAge3Nob3dQYXJlbnRMT3MgJiYgKFxuICAgICAgICAgIDxGbGV4Qm94IGdhcD17MTZ9IG1iPXsxNn0gY29sdW1uPlxuICAgICAgICAgICAgPFRleHQgdmFyaWFudD1cInRpdGxlLXhzXCI+QnVpbGRzIHRvd2FyZC4uLjwvVGV4dD5cbiAgICAgICAgICAgIDxMZWFybmluZ091dGNvbWVDYXJkTGlzdCBsZWFybmluZ091dGNvbWVzPXtwYXJlbnRMT3N9IC8+XG4gICAgICAgICAgPC9GbGV4Qm94PlxuICAgICAgICApfVxuICAgICAgPC9GbGV4Qm94PlxuICAgIDwvRmx5b3V0PlxuICApO1xufTtcbiJdfQ== */");
|
|
9
25
|
const StyledAnchor = /*#__PURE__*/_styled(Anchor, {
|
|
10
26
|
target: "e1ylhic51",
|
|
11
27
|
label: "StyledAnchor"
|
|
@@ -18,7 +34,7 @@ const StyledAnchor = /*#__PURE__*/_styled(Anchor, {
|
|
|
18
34
|
color: 'text',
|
|
19
35
|
textDecoration: 'underline'
|
|
20
36
|
}
|
|
21
|
-
}), process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9MZWFybmluZ091dGNvbWVGbHlvdXQvaW5kZXgudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQWNxQiIsImZpbGUiOiIuLi8uLi9zcmMvTGVhcm5pbmdPdXRjb21lRmx5b3V0L2luZGV4LnRzeCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFuY2hvciwgRmxleEJveCwgRmx5b3V0LCBUZXh0IH0gZnJvbSAnQGNvZGVjYWRlbXkvZ2FtdXQnO1xuaW1wb3J0IHsgU21hbGxDaGVja0ljb24gfSBmcm9tICdAY29kZWNhZGVteS9nYW11dC1pY29ucyc7XG5pbXBvcnQgeyBjc3MgfSBmcm9tICdAY29kZWNhZGVteS9nYW11dC1zdHlsZXMnO1xuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xuXG5pbXBvcnQgeyBMZWFybmluZ091dGNvbWVBc3Nlc3NtZW50U2NvcmVzIH0gZnJvbSAnLi4vTGVhcm5pbmdPdXRjb21lQXNzZXNzbWVudFNjb3Jlcyc7XG5pbXBvcnQge1xuICBsZWFybmluZ091dGNvbWVMYWJlbHMsXG4gIExlYXJuaW5nT3V0Y29tZUxldmVsQmFkZ2UsXG4gIExlYXJuaW5nT3V0Y29tZUxldmVscyxcbiAgTGVhcm5pbmdPdXRjb21lTG93QXNzZXNzbWVudEJhZGdlLFxufSBmcm9tICcuLi9MZWFybmluZ091dGNvbWVCYWRnZXMnO1xuaW1wb3J0IHsgTGVhcm5pbmdPdXRjb21lQ2FyZExpc3QgfSBmcm9tICcuL0xlYXJuaW5nT3V0Y29tZUNhcmRMaXN0JztcblxuY29uc3QgU3R5bGVkQW5jaG9yID0gc3R5bGVkKEFuY2hvcikoXG4gIGNzcyh7XG4gICAgY29sb3I6ICd0ZXh0JyxcbiAgICBmb250U2l6ZTogMjYsXG4gICAgZm9udFdlaWdodDogNzAwLFxuICAgIHRleHREZWNvcmF0aW9uOiAnbm9uZScsXG4gICAgJyY6aG92ZXIsICY6Zm9jdXMnOiB7XG4gICAgICBjb2xvcjogJ3RleHQnLFxuICAgICAgdGV4dERlY29yYXRpb246ICd1bmRlcmxpbmUnLFxuICAgIH0sXG4gIH0pXG4pO1xuXG5jb25zdCBTa2lsbFRhZyA9IHN0eWxlZChBbmNob3IpKFxuICBjc3Moe1xuICAgIGZvbnRTaXplOiAxNCxcbiAgICBib3JkZXJSYWRpdXM6ICdtZCcsXG4gICAgYm9yZGVyOiAxLFxuICAgIGJvcmRlckNvbG9yOiAnYm9yZGVyLXByaW1hcnknLFxuICAgICcmOmhvdmVyLCAmOmZvY3VzJzoge1xuICAgICAgY29sb3I6ICd0ZXh0JyxcbiAgICAgIGJnOiAnYmFja2dyb3VuZC1ob3ZlcicsXG4gICAgfSxcbiAgfSlcbik7XG5cbmV4cG9ydCBlbnVtIFNraWxsQ2xhc3NpZmljYXRpb24ge1xuICBMYW5ndWFnZSA9ICdsYW5ndWFnZScsXG4gIFN1YmplY3QgPSAnc3ViamVjdCcsXG59XG5cbmludGVyZmFjZSBMZWFybmluZ091dGNvbWVTa2lsbCB7XG4gIGlkOiBzdHJpbmc7XG4gIHNsdWc6IHN0cmluZztcbiAgdGl0bGU/OiBzdHJpbmcgfCBudWxsO1xuICBjbGFzc2lmaWNhdGlvbj86IFNraWxsQ2xhc3NpZmljYXRpb24gfCBudWxsO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFBhcmVudExlYXJuaW5nT3V0Y29tZSB7XG4gIGlkOiBzdHJpbmc7XG4gIG91dGNvbWU6IHN0cmluZztcbiAgbGV2ZWw6IG51bWJlciB8IG51bGwgfCB1bmRlZmluZWQ7XG59XG5cbmludGVyZmFjZSBMZWFybmluZ091dGNvbWVEZXRhaWxzUHJvcHMge1xuICBsZXZlbDogTGVhcm5pbmdPdXRjb21lTGV2ZWxzO1xuICBvdXRjb21lOiBzdHJpbmc7XG4gIHBlcmNlbnRDb21wbGV0ZTogbnVtYmVyIHwgdW5kZWZpbmVkIHwgbnVsbDtcbiAgaGlnaGVzdFNjb3JlOiBudW1iZXIgfCB1bmRlZmluZWQgfCBudWxsO1xuICBoaWdoZXN0U2NvcmVBY2hpZXZlZEF0OiBzdHJpbmcgfCB1bmRlZmluZWQgfCBudWxsO1xuICBsYXRlc3RTY29yZTogbnVtYmVyIHwgdW5kZWZpbmVkIHwgbnVsbDtcbiAgbGF0ZXN0U2NvcmVBY2hpZXZlZEF0OiBzdHJpbmcgfCB1bmRlZmluZWQgfCBudWxsO1xuICBwYXJlbnRMT3M/OiBQYXJlbnRMZWFybmluZ091dGNvbWVbXTtcbiAgc2tpbGxzPzogTGVhcm5pbmdPdXRjb21lU2tpbGxbXSB8IG51bGw7XG59XG5cbmludGVyZmFjZSBMZWFybmluZ091dGNvbWVGbHlvdXRQcm9wcyB7XG4gIGV4cGFuZGVkOiBib29sZWFuO1xuICBvbkNsb3NlOiAoKSA9PiB2b2lkO1xuICBsZWFybmluZ091dGNvbWU6IExlYXJuaW5nT3V0Y29tZURldGFpbHNQcm9wcztcbiAgbGVhcm5pbmdPdXRjb21lSHJlZjogc3RyaW5nO1xuICBsZWFybmluZ091dGNvbWVPbkNsaWNrPzogKCkgPT4gdm9pZDtcbiAgc2tpbGxUYWdPbkNsaWNrPzogKHNraWxsU2x1Zzogc3RyaW5nKSA9PiB2b2lkO1xufVxuXG5leHBvcnQgY29uc3Qgc29ydFNraWxsc0J5Q2xhc3NpZmljYXRpb24gPSAoXG4gIHNraWxscz86IExlYXJuaW5nT3V0Y29tZVNraWxsW10gfCBudWxsXG4pID0+IHtcbiAgaWYgKCFza2lsbHM/Lmxlbmd0aCkgcmV0dXJuIFtdO1xuICBjb25zdCBza2lsbHNDb3B5ID0gc2tpbGxzLnNsaWNlKCk7XG5cbiAgY29uc3Qgc29ydGVkU2tpbGxzID0gc2tpbGxzQ29weT8uc29ydCgoYSwgYikgPT4ge1xuICAgIGlmIChhPy5jbGFzc2lmaWNhdGlvbiA9PT0gJ2xhbmd1YWdlJykge1xuICAgICAgcmV0dXJuIC0xO1xuICAgIH1cbiAgICBpZiAoYj8uY2xhc3NpZmljYXRpb24gPT09ICdzdWJqZWN0Jykge1xuICAgICAgcmV0dXJuIDE7XG4gICAgfVxuICAgIHJldHVybiAwO1xuICB9KTtcblxuICByZXR1cm4gc29ydGVkU2tpbGxzO1xufTtcblxuY29uc3QgZ2V0U2tpbGxzQXJlYVBhdGggPSAoc2tpbGxTbHVnPzogc3RyaW5nKSA9PiB7XG4gIHJldHVybiBza2lsbFNsdWcgPyBgL3NraWxsLWFyZWFzLyR7c2tpbGxTbHVnfWAgOiAnLyc7XG59O1xuXG5leHBvcnQgY29uc3QgTGVhcm5pbmdPdXRjb21lRmx5b3V0OiBSZWFjdC5GQzxMZWFybmluZ091dGNvbWVGbHlvdXRQcm9wcz4gPSAoe1xuICBleHBhbmRlZCxcbiAgbGVhcm5pbmdPdXRjb21lSHJlZixcbiAgbGVhcm5pbmdPdXRjb21lT25DbGljayxcbiAgbGVhcm5pbmdPdXRjb21lOiB7XG4gICAgaGlnaGVzdFNjb3JlLFxuICAgIGhpZ2hlc3RTY29yZUFjaGlldmVkQXQsXG4gICAgbGF0ZXN0U2NvcmUsXG4gICAgbGF0ZXN0U2NvcmVBY2hpZXZlZEF0LFxuICAgIGxldmVsLFxuICAgIG91dGNvbWUsXG4gICAgcGFyZW50TE9zLFxuICAgIHBlcmNlbnRDb21wbGV0ZSxcbiAgICBza2lsbHMsXG4gIH0sXG4gIHNraWxsVGFnT25DbGljayxcbiAgb25DbG9zZSxcbn0pID0+IHtcbiAgY29uc3QgcGVyY2VudENvbXBsZXRlUGVyY2VudGFnZSA9XG4gICAgcGVyY2VudENvbXBsZXRlICE9IG51bGwgPyBwZXJjZW50Q29tcGxldGUgOiAwO1xuICBjb25zdCBsZXZlbExhYmVsID0gbGVhcm5pbmdPdXRjb21lTGFiZWxzW2xldmVsXTtcblxuICBjb25zdCBoYXNMb3dMYXRlc3RBc3Nlc3NtZW50ID0gQm9vbGVhbihcbiAgICBsYXRlc3RTY29yZSAhPSBudWxsICYmIGxhdGVzdFNjb3JlIDwgNzBcbiAgKTtcblxuICBjb25zdCBzaG93U2tpbGxzID0gISFza2lsbHM/Lmxlbmd0aDtcbiAgY29uc3Qgc29ydGVkU2tpbGxzID0gc29ydFNraWxsc0J5Q2xhc3NpZmljYXRpb24oc2tpbGxzKTtcblxuICBjb25zdCBzaG93UGFyZW50TE9zID1cbiAgICBsZXZlbCA9PT0gTGVhcm5pbmdPdXRjb21lTGV2ZWxzLlR3byAmJiAhIXBhcmVudExPcyAmJiBwYXJlbnRMT3MubGVuZ3RoID4gMDtcblxuICBjb25zdCByZW5kZXJQcm9ncmVzcyA9ICgpID0+IChcbiAgICA8RmxleEJveCBhbGlnbkl0ZW1zPVwiY2VudGVyXCI+XG4gICAgICB7Qm9vbGVhbihwZXJjZW50Q29tcGxldGVQZXJjZW50YWdlID09PSAxMDApICYmIChcbiAgICAgICAgPEZsZXhCb3hcbiAgICAgICAgICB3aWR0aD17MTZ9XG4gICAgICAgICAgaGVpZ2h0PXsxNn1cbiAgICAgICAgICBib3JkZXJSYWRpdXM9XCJtZFwiXG4gICAgICAgICAgYmc9XCJwcmltYXJ5XCJcbiAgICAgICAgICBtcj17OH1cbiAgICAgICAgICBhbGlnbkl0ZW1zPVwiY2VudGVyXCJcbiAgICAgICAgICBqdXN0aWZ5Q29udGVudD1cImNlbnRlclwiXG4gICAgICAgID5cbiAgICAgICAgICA8U21hbGxDaGVja0ljb24gc2l6ZT17MTF9IGNvbG9yPVwid2hpdGVcIiAvPlxuICAgICAgICA8L0ZsZXhCb3g+XG4gICAgICApfVxuICAgICAgPFRleHRcbiAgICAgICAgY29sb3I9XCJ0ZXh0XCJcbiAgICAgICAgdmFyaWFudD1cInAtbGFyZ2VcIlxuICAgICAgPntgJHtwZXJjZW50Q29tcGxldGVQZXJjZW50YWdlfSUgcHJvZ3Jlc3NgfTwvVGV4dD5cbiAgICA8L0ZsZXhCb3g+XG4gICk7XG5cbiAgcmV0dXJuIChcbiAgICA8Rmx5b3V0XG4gICAgICBhcmlhLWxhYmVsPXtgJHtsZXZlbExhYmVsfSBkZXRhaWxzYH1cbiAgICAgIGNsb3NlTGFiZWw9e2BDbG9zZSAke2xldmVsTGFiZWx9IGRldGFpbHNgfVxuICAgICAgZXhwYW5kZWQ9e2V4cGFuZGVkfVxuICAgICAgb25DbG9zZT17b25DbG9zZX1cbiAgICAgIG9wZW5Gcm9tPVwicmlnaHRcIlxuICAgICAgdGl0bGU9ezxUZXh0IHZhcmlhbnQ9XCJ0aXRsZS1zbVwiPntgJHtsZXZlbExhYmVsfSBkZXRhaWxzYH08L1RleHQ+fVxuICAgID5cbiAgICAgIDxGbGV4Qm94IGdhcD17MzJ9IG10PXszMn0gbXg9ezI0fSBjb2x1bW4+XG4gICAgICAgIHsvKiBCYWRnZXMsIE91dGNvbWUsIFRvcGljIHRhZ3MsIFByb2dyZXNzICovfVxuICAgICAgICA8RmxleEJveCBnYXA9ezI0fSBjb2x1bW4+XG4gICAgICAgICAgPEZsZXhCb3gganVzdGlmeUNvbnRlbnQ9XCJzcGFjZS1iZXR3ZWVuXCIgYWxpZ25JdGVtcz1cImNlbnRlclwiPlxuICAgICAgICAgICAgPExlYXJuaW5nT3V0Y29tZUxldmVsQmFkZ2UgbGV2ZWw9e2xldmVsfSBzaXplPVwiYmFzZVwiIC8+XG4gICAgICAgICAgICB7aGFzTG93TGF0ZXN0QXNzZXNzbWVudCAmJiA8TGVhcm5pbmdPdXRjb21lTG93QXNzZXNzbWVudEJhZGdlIC8+fVxuICAgICAgICAgIDwvRmxleEJveD5cbiAgICAgICAgICA8RmxleEJveCBnYXA9ezE2fSBjb2x1bW4+XG4gICAgICAgICAgICA8U3R5bGVkQW5jaG9yXG4gICAgICAgICAgICAgIGhyZWY9e2xlYXJuaW5nT3V0Y29tZUhyZWZ9XG4gICAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+IGxlYXJuaW5nT3V0Y29tZU9uQ2xpY2s/LigpfVxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICB7b3V0Y29tZX1cbiAgICAgICAgICAgIDwvU3R5bGVkQW5jaG9yPlxuICAgICAgICAgICAge3Nob3dTa2lsbHMgJiYgKFxuICAgICAgICAgICAgICA8RmxleEJveCBhbGlnbkl0ZW1zPVwiY2VudGVyXCIgZ2FwPXsxMn0gZmxleFdyYXA9XCJ3cmFwXCI+XG4gICAgICAgICAgICAgICAge3NvcnRlZFNraWxscy5tYXAoKHNraWxsKSA9PiAoXG4gICAgICAgICAgICAgICAgICA8U2tpbGxUYWdcbiAgICAgICAgICAgICAgICAgICAga2V5PXtza2lsbC5pZH1cbiAgICAgICAgICAgICAgICAgICAgZGF0YS10ZXN0aWQ9XCJza2lsbC10YWdcIlxuICAgICAgICAgICAgICAgICAgICBweD17OH1cbiAgICAgICAgICAgICAgICAgICAgcHk9ezR9XG4gICAgICAgICAgICAgICAgICAgIHZhcmlhbnQ9XCJpbnRlcmZhY2VcIlxuICAgICAgICAgICAgICAgICAgICBocmVmPXtnZXRTa2lsbHNBcmVhUGF0aChza2lsbC5zbHVnKX1cbiAgICAgICAgICAgICAgICAgICAgb25DbGljaz17KCkgPT4gc2tpbGxUYWdPbkNsaWNrPy4oc2tpbGwuc2x1Zyl9XG4gICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIDxGbGV4Qm94IGNlbnRlcj5cbiAgICAgICAgICAgICAgICAgICAgICA8VGV4dD57c2tpbGwudGl0bGV9PC9UZXh0PlxuICAgICAgICAgICAgICAgICAgICA8L0ZsZXhCb3g+XG4gICAgICAgICAgICAgICAgICA8L1NraWxsVGFnPlxuICAgICAgICAgICAgICAgICkpfVxuICAgICAgICAgICAgICA8L0ZsZXhCb3g+XG4gICAgICAgICAgICApfVxuICAgICAgICAgIDwvRmxleEJveD5cbiAgICAgICAgICA8RmxleEJveCBib3JkZXJZPXsxfSBib3JkZXJDb2xvcj1cImJhY2tncm91bmQtaG92ZXJcIiBweT17MTZ9PlxuICAgICAgICAgICAge3JlbmRlclByb2dyZXNzKCl9XG4gICAgICAgICAgPC9GbGV4Qm94PlxuICAgICAgICA8L0ZsZXhCb3g+XG5cbiAgICAgICAgey8qIEFzc2Vzc21lbnQgc2NvcmVzICovfVxuICAgICAgICA8RmxleEJveCBnYXA9ezE2fSBjb2x1bW4+XG4gICAgICAgICAgPFRleHQgdmFyaWFudD1cInRpdGxlLXhzXCI+RXZhbHVhdGlvbiByZXN1bHRzPC9UZXh0PlxuICAgICAgICAgIDxMZWFybmluZ091dGNvbWVBc3Nlc3NtZW50U2NvcmVzXG4gICAgICAgICAgICBoaWdoZXN0U2NvcmU9e2hpZ2hlc3RTY29yZX1cbiAgICAgICAgICAgIGhpZ2hlc3RTY29yZUFjaGlldmVkQXQ9e2hpZ2hlc3RTY29yZUFjaGlldmVkQXR9XG4gICAgICAgICAgICBsYXRlc3RTY29yZT17bGF0ZXN0U2NvcmV9XG4gICAgICAgICAgICBsYXRlc3RTY29yZUFjaGlldmVkQXQ9e2xhdGVzdFNjb3JlQWNoaWV2ZWRBdH1cbiAgICAgICAgICAvPlxuICAgICAgICA8L0ZsZXhCb3g+XG5cbiAgICAgICAgey8qIEZvciBsZXZlbCAyIGFuZCAzIExPcyBvbmx5OiBDaGlsZHJlbiBMT3MgZ29lcyBiZWxvdyBoZXJlICovfVxuXG4gICAgICAgIHsvKiBGb3IgbGV2ZWwgMiBMT3Mgb25seTogc2hvdyBQYXJlbnQgTE9zICovfVxuICAgICAgICB7c2hvd1BhcmVudExPcyAmJiAoXG4gICAgICAgICAgPEZsZXhCb3ggZ2FwPXsxNn0gbWI9ezE2fSBjb2x1bW4+XG4gICAgICAgICAgICA8VGV4dCB2YXJpYW50PVwidGl0bGUteHNcIj5CdWlsZHMgdG93YXJkLi4uPC9UZXh0PlxuICAgICAgICAgICAgPExlYXJuaW5nT3V0Y29tZUNhcmRMaXN0IGxlYXJuaW5nT3V0Y29tZXM9e3BhcmVudExPc30gLz5cbiAgICAgICAgICA8L0ZsZXhCb3g+XG4gICAgICAgICl9XG4gICAgICA8L0ZsZXhCb3g+XG4gICAgPC9GbHlvdXQ+XG4gICk7XG59O1xuIl19 */");
|
|
37
|
+
}), process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9MZWFybmluZ091dGNvbWVGbHlvdXQvaW5kZXgudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQThCcUIiLCJmaWxlIjoiLi4vLi4vc3JjL0xlYXJuaW5nT3V0Y29tZUZseW91dC9pbmRleC50c3giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBbmNob3IsIEZsZXhCb3gsIEZseW91dCwgVGV4dCB9IGZyb20gJ0Bjb2RlY2FkZW15L2dhbXV0JztcbmltcG9ydCB7IFNtYWxsQ2hlY2tJY29uIH0gZnJvbSAnQGNvZGVjYWRlbXkvZ2FtdXQtaWNvbnMnO1xuaW1wb3J0IHsgY3NzIH0gZnJvbSAnQGNvZGVjYWRlbXkvZ2FtdXQtc3R5bGVzJztcbmltcG9ydCBzdHlsZWQgZnJvbSAnQGVtb3Rpb24vc3R5bGVkJztcblxuaW1wb3J0IHsgTGVhcm5pbmdPdXRjb21lQXNzZXNzbWVudFNjb3JlcyB9IGZyb20gJy4uL0xlYXJuaW5nT3V0Y29tZUFzc2Vzc21lbnRTY29yZXMnO1xuaW1wb3J0IHtcbiAgbGVhcm5pbmdPdXRjb21lTGFiZWxzLFxuICBMZWFybmluZ091dGNvbWVMZXZlbEJhZGdlLFxuICBMZWFybmluZ091dGNvbWVMZXZlbHMsXG4gIExlYXJuaW5nT3V0Y29tZUxvd0Fzc2Vzc21lbnRCYWRnZSxcbn0gZnJvbSAnLi4vTGVhcm5pbmdPdXRjb21lQmFkZ2VzJztcbmltcG9ydCB7IExlYXJuaW5nT3V0Y29tZVRpbGUgfSBmcm9tICcuLi9MZWFybmluZ091dGNvbWVUaWxlJztcbmltcG9ydCB7IExlYXJuaW5nT3V0Y29tZUNhcmRMaXN0IH0gZnJvbSAnLi9MZWFybmluZ091dGNvbWVDYXJkTGlzdCc7XG5cbmNvbnN0IENoaWxkTGVhcm5pbmdPdXRjb21lUm93ID0gc3R5bGVkKEZsZXhCb3gpKFxuICBjc3Moe1xuICAgICcmOmZpcnN0LW9mLXR5cGUnOiB7XG4gICAgICBib3JkZXJUb3BMZWZ0UmFkaXVzOiAnNHB4JyxcbiAgICAgIGJvcmRlclRvcFJpZ2h0UmFkaXVzOiAnNHB4JyxcbiAgICAgIGJvcmRlclRvcDogMSxcbiAgICAgIGJvcmRlckNvbG9yOiAnYm9yZGVyLXRlcnRpYXJ5JyxcbiAgICB9LFxuICAgICcmOmxhc3Qtb2YtdHlwZSc6IHtcbiAgICAgIGJvcmRlckJvdHRvbUxlZnRSYWRpdXM6ICc0cHgnLFxuICAgICAgYm9yZGVyQm90dG9tUmlnaHRSYWRpdXM6ICc0cHgnLFxuICAgIH0sXG4gIH0pXG4pO1xuXG5jb25zdCBTdHlsZWRBbmNob3IgPSBzdHlsZWQoQW5jaG9yKShcbiAgY3NzKHtcbiAgICBjb2xvcjogJ3RleHQnLFxuICAgIGZvbnRTaXplOiAyNixcbiAgICBmb250V2VpZ2h0OiA3MDAsXG4gICAgdGV4dERlY29yYXRpb246ICdub25lJyxcbiAgICAnJjpob3ZlciwgJjpmb2N1cyc6IHtcbiAgICAgIGNvbG9yOiAndGV4dCcsXG4gICAgICB0ZXh0RGVjb3JhdGlvbjogJ3VuZGVybGluZScsXG4gICAgfSxcbiAgfSlcbik7XG5cbmNvbnN0IFNraWxsVGFnID0gc3R5bGVkKEFuY2hvcikoXG4gIGNzcyh7XG4gICAgZm9udFNpemU6IDE0LFxuICAgIGJvcmRlclJhZGl1czogJ21kJyxcbiAgICBib3JkZXI6IDEsXG4gICAgYm9yZGVyQ29sb3I6ICdib3JkZXItcHJpbWFyeScsXG4gICAgJyY6aG92ZXIsICY6Zm9jdXMnOiB7XG4gICAgICBjb2xvcjogJ3RleHQnLFxuICAgICAgYmc6ICdiYWNrZ3JvdW5kLWhvdmVyJyxcbiAgICB9LFxuICB9KVxuKTtcblxuZXhwb3J0IGVudW0gU2tpbGxDbGFzc2lmaWNhdGlvbiB7XG4gIExhbmd1YWdlID0gJ2xhbmd1YWdlJyxcbiAgU3ViamVjdCA9ICdzdWJqZWN0Jyxcbn1cblxuaW50ZXJmYWNlIExlYXJuaW5nT3V0Y29tZVNraWxsIHtcbiAgaWQ6IHN0cmluZztcbiAgc2x1Zzogc3RyaW5nO1xuICB0aXRsZT86IHN0cmluZyB8IG51bGw7XG4gIGNsYXNzaWZpY2F0aW9uPzogU2tpbGxDbGFzc2lmaWNhdGlvbiB8IG51bGw7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUGFyZW50TGVhcm5pbmdPdXRjb21lIHtcbiAgaWQ6IHN0cmluZztcbiAgb3V0Y29tZTogc3RyaW5nO1xuICBsZXZlbDogbnVtYmVyIHwgbnVsbCB8IHVuZGVmaW5lZDtcbn1cblxuaW50ZXJmYWNlIENvbnRlbnRNb2R1bGVMZWFybmluZ091dGNvbWVEYXRhRnJhZ21lbnQge1xuICBpZDogc3RyaW5nO1xuICB0aXRsZTogc3RyaW5nO1xuICBwcm9ncmVzc1YyOiB7XG4gICAgcGVyY2VudENvbXBsZXRlOiBudW1iZXIgfCB1bmRlZmluZWQgfCBudWxsO1xuICB9O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIExlYXJuaW5nT3V0Y29tZURldGFpbHNQcm9wcyB7XG4gIGxldmVsOiBMZWFybmluZ091dGNvbWVMZXZlbHM7XG4gIG91dGNvbWU6IHN0cmluZztcbiAgcGVyY2VudENvbXBsZXRlOiBudW1iZXIgfCB1bmRlZmluZWQgfCBudWxsO1xuICBoaWdoZXN0U2NvcmU6IG51bWJlciB8IHVuZGVmaW5lZCB8IG51bGw7XG4gIGhpZ2hlc3RTY29yZUFjaGlldmVkQXQ6IHN0cmluZyB8IHVuZGVmaW5lZCB8IG51bGw7XG4gIGxhdGVzdFNjb3JlOiBudW1iZXIgfCB1bmRlZmluZWQgfCBudWxsO1xuICBsYXRlc3RTY29yZUFjaGlldmVkQXQ6IHN0cmluZyB8IHVuZGVmaW5lZCB8IG51bGw7XG4gIHBhcmVudExPcz86IFBhcmVudExlYXJuaW5nT3V0Y29tZVtdO1xuICBza2lsbHM/OiBMZWFybmluZ091dGNvbWVTa2lsbFtdIHwgbnVsbDtcbiAgY2hpbGRMZWFybmluZ091dGNvbWVzPzoge1xuICAgIGlkOiBzdHJpbmc7XG4gICAgb3V0Y29tZTogc3RyaW5nO1xuICAgIHBlcmNlbnRDb21wbGV0ZT86IG51bWJlciB8IHVuZGVmaW5lZCB8IG51bGw7IC8vIG5vdCBjdXJyZW50bHkgZ2V0dGluZyB0aGlzIGZyb20gdGhlIEFQSVxuICAgIGNvbnRlbnRNb2R1bGVzOiBDb250ZW50TW9kdWxlTGVhcm5pbmdPdXRjb21lRGF0YUZyYWdtZW50W107XG4gICAgcHJvZ3Jlc3M/OiB7XG4gICAgICBsYXRlc3RTY29yZTogbnVtYmVyIHwgdW5kZWZpbmVkIHwgbnVsbDtcbiAgICAgIGNvdmVyZWQ6IGJvb2xlYW4gfCB1bmRlZmluZWQgfCBudWxsO1xuICAgICAgY292ZXJlZEF0OiBzdHJpbmcgfCB1bmRlZmluZWQgfCBudWxsO1xuICAgICAgaGlnaGVzdFNjb3JlOiBudW1iZXIgfCB1bmRlZmluZWQgfCBudWxsO1xuICAgIH07XG4gIH1bXTtcbn1cblxuaW50ZXJmYWNlIExlYXJuaW5nT3V0Y29tZUZseW91dFByb3BzIHtcbiAgZXhwYW5kZWQ6IGJvb2xlYW47XG4gIG9uQ2xvc2U6ICgpID0+IHZvaWQ7XG4gIGxlYXJuaW5nT3V0Y29tZTogTGVhcm5pbmdPdXRjb21lRGV0YWlsc1Byb3BzO1xuICBsZWFybmluZ091dGNvbWVIcmVmOiBzdHJpbmc7XG4gIGxlYXJuaW5nT3V0Y29tZU9uQ2xpY2s/OiAoKSA9PiB2b2lkO1xuICBza2lsbFRhZ09uQ2xpY2s/OiAoc2tpbGxTbHVnOiBzdHJpbmcpID0+IHZvaWQ7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRBdmVyYWdlTW9kdWxlUGVyY2VudENvbXBsZXRlKFxuICBjb250ZW50TW9kdWxlczogQ29udGVudE1vZHVsZUxlYXJuaW5nT3V0Y29tZURhdGFGcmFnbWVudFtdXG4pOiBudW1iZXIge1xuICBpZiAoIWNvbnRlbnRNb2R1bGVzIHx8IGNvbnRlbnRNb2R1bGVzLmxlbmd0aCA9PT0gMCkgcmV0dXJuIDA7XG5cbiAgY29uc3QgdG90YWwgPSBjb250ZW50TW9kdWxlcy5yZWR1Y2UoKHN1bSwgbW9kdWxlKSA9PiB7XG4gICAgY29uc3QgeyBwcm9ncmVzc1YyIH0gPSBtb2R1bGU7XG4gICAgcmV0dXJuIHN1bSArIChwcm9ncmVzc1YyPy5wZXJjZW50Q29tcGxldGUgPz8gMCk7XG4gIH0sIDApO1xuXG4gIHJldHVybiBNYXRoLmZsb29yKHRvdGFsIC8gY29udGVudE1vZHVsZXMubGVuZ3RoKTtcbn1cblxuZXhwb3J0IGNvbnN0IHNvcnRTa2lsbHNCeUNsYXNzaWZpY2F0aW9uID0gKFxuICBza2lsbHM/OiBMZWFybmluZ091dGNvbWVTa2lsbFtdIHwgbnVsbFxuKSA9PiB7XG4gIGlmICghc2tpbGxzPy5sZW5ndGgpIHJldHVybiBbXTtcbiAgY29uc3Qgc2tpbGxzQ29weSA9IHNraWxscy5zbGljZSgpO1xuXG4gIGNvbnN0IHNvcnRlZFNraWxscyA9IHNraWxsc0NvcHk/LnNvcnQoKGEsIGIpID0+IHtcbiAgICBpZiAoYT8uY2xhc3NpZmljYXRpb24gPT09ICdsYW5ndWFnZScpIHtcbiAgICAgIHJldHVybiAtMTtcbiAgICB9XG4gICAgaWYgKGI/LmNsYXNzaWZpY2F0aW9uID09PSAnc3ViamVjdCcpIHtcbiAgICAgIHJldHVybiAxO1xuICAgIH1cbiAgICByZXR1cm4gMDtcbiAgfSk7XG5cbiAgcmV0dXJuIHNvcnRlZFNraWxscztcbn07XG5cbmNvbnN0IGdldFNraWxsc0FyZWFQYXRoID0gKHNraWxsU2x1Zz86IHN0cmluZykgPT4ge1xuICByZXR1cm4gc2tpbGxTbHVnID8gYC9za2lsbC1hcmVhcy8ke3NraWxsU2x1Z31gIDogJy8nO1xufTtcblxuY29uc3QgZ2V0TGVhcm5pbmdPdXRjb21lUGF0aCA9IChpZD86IHN0cmluZykgPT4ge1xuICByZXR1cm4gaWQgPyBgL2xlYXJuaW5nLW91dGNvbWVzLyR7aWR9YCA6ICcvJztcbn07XG5cbmV4cG9ydCBjb25zdCBMZWFybmluZ091dGNvbWVGbHlvdXQ6IFJlYWN0LkZDPExlYXJuaW5nT3V0Y29tZUZseW91dFByb3BzPiA9ICh7XG4gIGV4cGFuZGVkLFxuICBsZWFybmluZ091dGNvbWVIcmVmLFxuICBsZWFybmluZ091dGNvbWVPbkNsaWNrLFxuICBsZWFybmluZ091dGNvbWU6IHtcbiAgICBoaWdoZXN0U2NvcmUsXG4gICAgaGlnaGVzdFNjb3JlQWNoaWV2ZWRBdCxcbiAgICBsYXRlc3RTY29yZSxcbiAgICBsYXRlc3RTY29yZUFjaGlldmVkQXQsXG4gICAgbGV2ZWwsXG4gICAgb3V0Y29tZSxcbiAgICBwYXJlbnRMT3MsXG4gICAgcGVyY2VudENvbXBsZXRlLFxuICAgIHNraWxscyxcbiAgICBjaGlsZExlYXJuaW5nT3V0Y29tZXMsXG4gIH0sXG4gIHNraWxsVGFnT25DbGljayxcbiAgb25DbG9zZSxcbn0pID0+IHtcbiAgY29uc3QgcGVyY2VudENvbXBsZXRlUGVyY2VudGFnZSA9XG4gICAgcGVyY2VudENvbXBsZXRlICE9IG51bGwgPyBwZXJjZW50Q29tcGxldGUgOiAwO1xuICBjb25zdCBsZXZlbExhYmVsID0gbGVhcm5pbmdPdXRjb21lTGFiZWxzW2xldmVsXTtcblxuICBjb25zdCBoYXNMb3dMYXRlc3RBc3Nlc3NtZW50ID0gQm9vbGVhbihcbiAgICBsYXRlc3RTY29yZSAhPSBudWxsICYmIGxhdGVzdFNjb3JlIDwgNzBcbiAgKTtcblxuICBjb25zdCBzaG93U2tpbGxzID0gISFza2lsbHM/Lmxlbmd0aDtcbiAgY29uc3Qgc29ydGVkU2tpbGxzID0gc29ydFNraWxsc0J5Q2xhc3NpZmljYXRpb24oc2tpbGxzKTtcblxuICBjb25zdCBpc0xldmVsVHdvTGVhcm5pbmdPdXRjb21lID0gbGV2ZWwgPT09IExlYXJuaW5nT3V0Y29tZUxldmVscy5Ud287XG4gIGNvbnN0IHNob3dQYXJlbnRMT3MgPVxuICAgIGxldmVsID09PSBMZWFybmluZ091dGNvbWVMZXZlbHMuVHdvICYmICEhcGFyZW50TE9zICYmIHBhcmVudExPcy5sZW5ndGggPiAwO1xuXG4gIGNvbnN0IHJlbmRlclByb2dyZXNzID0gKCkgPT4gKFxuICAgIDxGbGV4Qm94IGFsaWduSXRlbXM9XCJjZW50ZXJcIj5cbiAgICAgIHtCb29sZWFuKHBlcmNlbnRDb21wbGV0ZVBlcmNlbnRhZ2UgPT09IDEwMCkgJiYgKFxuICAgICAgICA8RmxleEJveFxuICAgICAgICAgIHdpZHRoPXsxNn1cbiAgICAgICAgICBoZWlnaHQ9ezE2fVxuICAgICAgICAgIGJvcmRlclJhZGl1cz1cIm1kXCJcbiAgICAgICAgICBiZz1cInByaW1hcnlcIlxuICAgICAgICAgIG1yPXs4fVxuICAgICAgICAgIGFsaWduSXRlbXM9XCJjZW50ZXJcIlxuICAgICAgICAgIGp1c3RpZnlDb250ZW50PVwiY2VudGVyXCJcbiAgICAgICAgPlxuICAgICAgICAgIDxTbWFsbENoZWNrSWNvbiBzaXplPXsxMX0gY29sb3I9XCJ3aGl0ZVwiIC8+XG4gICAgICAgIDwvRmxleEJveD5cbiAgICAgICl9XG4gICAgICA8VGV4dFxuICAgICAgICBjb2xvcj1cInRleHRcIlxuICAgICAgICB2YXJpYW50PVwicC1sYXJnZVwiXG4gICAgICA+e2Ake3BlcmNlbnRDb21wbGV0ZVBlcmNlbnRhZ2V9JSBwcm9ncmVzc2B9PC9UZXh0PlxuICAgIDwvRmxleEJveD5cbiAgKTtcblxuICAvLyBSZW5kZXIgc3Vic2tpbGxzIHdoZW4gdGhlIGRyYXdlciBpcyBmZWF0dXJpbmcgYSBsZXZlbCAzIG91dGNvbWVcblxuICBjb25zdCByZW5kZXJTdWJza2lsbHMgPSAoKSA9PiB7XG4gICAgcmV0dXJuIChcbiAgICAgIDxGbGV4Qm94IGFzPVwidWxcIiBmbGV4RGlyZWN0aW9uPVwiY29sdW1uXCIgcD17MH0+XG4gICAgICAgIHtjaGlsZExlYXJuaW5nT3V0Y29tZXM/Lm1hcCgoY2hpbGRMbykgPT4ge1xuICAgICAgICAgIGNvbnN0IHsgaWQsIG91dGNvbWUsIHByb2dyZXNzLCBjb250ZW50TW9kdWxlcyB9ID0gY2hpbGRMbztcbiAgICAgICAgICBjb25zdCBjYWxjdWxhdGVkUGVyY2VudENvbXBsZXRlID1cbiAgICAgICAgICAgIHByb2dyZXNzPy5jb3ZlcmVkIHx8IHByb2dyZXNzPy5jb3ZlcmVkQXRcbiAgICAgICAgICAgICAgPyAxMDBcbiAgICAgICAgICAgICAgOiBnZXRBdmVyYWdlTW9kdWxlUGVyY2VudENvbXBsZXRlKGNvbnRlbnRNb2R1bGVzKTtcbiAgICAgICAgICBjb25zdCBzaG93TmVlZHNSZXZpZXdJbmRpY2F0b3IgPVxuICAgICAgICAgICAgcHJvZ3Jlc3M/LmxhdGVzdFNjb3JlICE9PSBudWxsICYmXG4gICAgICAgICAgICBwcm9ncmVzcz8ubGF0ZXN0U2NvcmUgIT09IHVuZGVmaW5lZFxuICAgICAgICAgICAgICA/IHByb2dyZXNzLmxhdGVzdFNjb3JlIDwgNzBcbiAgICAgICAgICAgICAgOiBmYWxzZTtcblxuICAgICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICA8Q2hpbGRMZWFybmluZ091dGNvbWVSb3dcbiAgICAgICAgICAgICAgcm93XG4gICAgICAgICAgICAgIGJnPVwid2hpdGVcIlxuICAgICAgICAgICAgICBib3JkZXJDb2xvcj1cImJvcmRlci10ZXJ0aWFyeVwiXG4gICAgICAgICAgICAgIGJvcmRlckxlZnQ9ezF9XG4gICAgICAgICAgICAgIGJvcmRlckJvdHRvbT17MX1cbiAgICAgICAgICAgICAgYm9yZGVyUmlnaHQ9ezF9XG4gICAgICAgICAgICAgIHB4PXsxNn1cbiAgICAgICAgICAgICAgcHk9ezI0fVxuICAgICAgICAgICAgICBhbGlnbkl0ZW1zPVwiZmxleC1zdGFydFwiXG4gICAgICAgICAgICAgIGFzPVwibGlcIlxuICAgICAgICAgICAgICBrZXk9e2lkfVxuICAgICAgICAgICAgICBqdXN0aWZ5Q29udGVudD1cImZsZXgtc3RhcnRcIlxuICAgICAgICAgICAgICBnYXA9ezE2fVxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICA8RmxleEJveCBtaW5XaWR0aD17MzJ9IHdpZHRoPXszMn0ganVzdGlmeUNvbnRlbnQ9XCJjZW50ZXJcIj5cbiAgICAgICAgICAgICAgICA8TGVhcm5pbmdPdXRjb21lVGlsZVxuICAgICAgICAgICAgICAgICAgbGVhcm5pbmdPdXRjb21lRGV0YWlscz17e1xuICAgICAgICAgICAgICAgICAgICBpZCxcbiAgICAgICAgICAgICAgICAgICAgbGV2ZWw6IExlYXJuaW5nT3V0Y29tZUxldmVscy5PbmUsXG4gICAgICAgICAgICAgICAgICAgIG91dGNvbWUsXG4gICAgICAgICAgICAgICAgICAgIHBlcmNlbnRDb21wbGV0ZTogY2FsY3VsYXRlZFBlcmNlbnRDb21wbGV0ZSxcbiAgICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgICAgICBzaXplPVwic21hbGxcIlxuICAgICAgICAgICAgICAgICAgcG9wb3Zlcj17ZmFsc2V9XG4gICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgPC9GbGV4Qm94PlxuICAgICAgICAgICAgICA8RmxleEJveCBjb2x1bW4gZ2FwPXs4fT5cbiAgICAgICAgICAgICAgICA8QW5jaG9yXG4gICAgICAgICAgICAgICAgICB2YXJpYW50PVwiaW50ZXJmYWNlXCJcbiAgICAgICAgICAgICAgICAgIGhyZWY9e2dldExlYXJuaW5nT3V0Y29tZVBhdGgoaWQpfVxuICAgICAgICAgICAgICAgICAgdGFyZ2V0PVwiX2JsYW5rXCJcbiAgICAgICAgICAgICAgICAgIHdoaXRlU3BhY2U9XCJub3JtYWxcIlxuICAgICAgICAgICAgICAgICAgb25DbGljaz17KCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAvLyBhZGQgdHJhY2tpbmcgaGVyZVxuICAgICAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICB7b3V0Y29tZX1cbiAgICAgICAgICAgICAgICA8L0FuY2hvcj5cbiAgICAgICAgICAgICAgICB7c2hvd05lZWRzUmV2aWV3SW5kaWNhdG9yICYmIChcbiAgICAgICAgICAgICAgICAgIDxGbGV4Qm94PlxuICAgICAgICAgICAgICAgICAgICA8TGVhcm5pbmdPdXRjb21lTG93QXNzZXNzbWVudEJhZGdlIC8+XG4gICAgICAgICAgICAgICAgICA8L0ZsZXhCb3g+XG4gICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgPC9GbGV4Qm94PlxuICAgICAgICAgICAgPC9DaGlsZExlYXJuaW5nT3V0Y29tZVJvdz5cbiAgICAgICAgICApO1xuICAgICAgICB9KX1cbiAgICAgIDwvRmxleEJveD5cbiAgICApO1xuICB9O1xuXG4gIHJldHVybiAoXG4gICAgPEZseW91dFxuICAgICAgYXJpYS1sYWJlbD17YCR7bGV2ZWxMYWJlbH0gZGV0YWlsc2B9XG4gICAgICBjbG9zZUxhYmVsPXtgQ2xvc2UgJHtsZXZlbExhYmVsfSBkZXRhaWxzYH1cbiAgICAgIGV4cGFuZGVkPXtleHBhbmRlZH1cbiAgICAgIG9uQ2xvc2U9e29uQ2xvc2V9XG4gICAgICBvcGVuRnJvbT1cInJpZ2h0XCJcbiAgICAgIHRpdGxlPXs8VGV4dCB2YXJpYW50PVwidGl0bGUtc21cIj57YCR7bGV2ZWxMYWJlbH0gZGV0YWlsc2B9PC9UZXh0Pn1cbiAgICA+XG4gICAgICA8RmxleEJveCBnYXA9ezMyfSBtdD17MzJ9IG14PXsyNH0gY29sdW1uPlxuICAgICAgICB7LyogQmFkZ2VzLCBPdXRjb21lLCBUb3BpYyB0YWdzLCBQcm9ncmVzcyAqL31cbiAgICAgICAgPEZsZXhCb3ggZ2FwPXsyNH0gY29sdW1uPlxuICAgICAgICAgIDxGbGV4Qm94IGp1c3RpZnlDb250ZW50PVwic3BhY2UtYmV0d2VlblwiIGFsaWduSXRlbXM9XCJjZW50ZXJcIj5cbiAgICAgICAgICAgIDxMZWFybmluZ091dGNvbWVMZXZlbEJhZGdlIGxldmVsPXtsZXZlbH0gc2l6ZT1cImJhc2VcIiAvPlxuICAgICAgICAgICAge2hhc0xvd0xhdGVzdEFzc2Vzc21lbnQgJiYgPExlYXJuaW5nT3V0Y29tZUxvd0Fzc2Vzc21lbnRCYWRnZSAvPn1cbiAgICAgICAgICA8L0ZsZXhCb3g+XG4gICAgICAgICAgPEZsZXhCb3ggZ2FwPXsxNn0gY29sdW1uPlxuICAgICAgICAgICAgPFN0eWxlZEFuY2hvclxuICAgICAgICAgICAgICBocmVmPXtsZWFybmluZ091dGNvbWVIcmVmfVxuICAgICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiBsZWFybmluZ091dGNvbWVPbkNsaWNrPy4oKX1cbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAge291dGNvbWV9XG4gICAgICAgICAgICA8L1N0eWxlZEFuY2hvcj5cbiAgICAgICAgICAgIHtzaG93U2tpbGxzICYmIChcbiAgICAgICAgICAgICAgPEZsZXhCb3ggYWxpZ25JdGVtcz1cImNlbnRlclwiIGdhcD17MTJ9IGZsZXhXcmFwPVwid3JhcFwiPlxuICAgICAgICAgICAgICAgIHtzb3J0ZWRTa2lsbHMubWFwKChza2lsbCkgPT4gKFxuICAgICAgICAgICAgICAgICAgPFNraWxsVGFnXG4gICAgICAgICAgICAgICAgICAgIGtleT17c2tpbGwuaWR9XG4gICAgICAgICAgICAgICAgICAgIGRhdGEtdGVzdGlkPVwic2tpbGwtdGFnXCJcbiAgICAgICAgICAgICAgICAgICAgcHg9ezh9XG4gICAgICAgICAgICAgICAgICAgIHB5PXs0fVxuICAgICAgICAgICAgICAgICAgICB2YXJpYW50PVwiaW50ZXJmYWNlXCJcbiAgICAgICAgICAgICAgICAgICAgaHJlZj17Z2V0U2tpbGxzQXJlYVBhdGgoc2tpbGwuc2x1Zyl9XG4gICAgICAgICAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+IHNraWxsVGFnT25DbGljaz8uKHNraWxsLnNsdWcpfVxuICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICA8RmxleEJveCBjZW50ZXI+XG4gICAgICAgICAgICAgICAgICAgICAgPFRleHQ+e3NraWxsLnRpdGxlfTwvVGV4dD5cbiAgICAgICAgICAgICAgICAgICAgPC9GbGV4Qm94PlxuICAgICAgICAgICAgICAgICAgPC9Ta2lsbFRhZz5cbiAgICAgICAgICAgICAgICApKX1cbiAgICAgICAgICAgICAgPC9GbGV4Qm94PlxuICAgICAgICAgICAgKX1cbiAgICAgICAgICA8L0ZsZXhCb3g+XG4gICAgICAgICAgPEZsZXhCb3ggYm9yZGVyWT17MX0gYm9yZGVyQ29sb3I9XCJiYWNrZ3JvdW5kLWhvdmVyXCIgcHk9ezE2fT5cbiAgICAgICAgICAgIHtyZW5kZXJQcm9ncmVzcygpfVxuICAgICAgICAgIDwvRmxleEJveD5cbiAgICAgICAgPC9GbGV4Qm94PlxuXG4gICAgICAgIHsvKiBBc3Nlc3NtZW50IHNjb3JlcyAqL31cbiAgICAgICAgPEZsZXhCb3ggZ2FwPXsxNn0gY29sdW1uPlxuICAgICAgICAgIDxUZXh0IHZhcmlhbnQ9XCJ0aXRsZS14c1wiPkV2YWx1YXRpb24gcmVzdWx0czwvVGV4dD5cbiAgICAgICAgICA8TGVhcm5pbmdPdXRjb21lQXNzZXNzbWVudFNjb3Jlc1xuICAgICAgICAgICAgaGlnaGVzdFNjb3JlPXtoaWdoZXN0U2NvcmV9XG4gICAgICAgICAgICBoaWdoZXN0U2NvcmVBY2hpZXZlZEF0PXtoaWdoZXN0U2NvcmVBY2hpZXZlZEF0fVxuICAgICAgICAgICAgbGF0ZXN0U2NvcmU9e2xhdGVzdFNjb3JlfVxuICAgICAgICAgICAgbGF0ZXN0U2NvcmVBY2hpZXZlZEF0PXtsYXRlc3RTY29yZUFjaGlldmVkQXR9XG4gICAgICAgICAgLz5cbiAgICAgICAgPC9GbGV4Qm94PlxuXG4gICAgICAgIHsvKiBGb3IgbGV2ZWwgMiBhbmQgMyBMT3Mgb25seTogQ2hpbGRyZW4gTE9zIGdvZXMgYmVsb3cgaGVyZSAqL31cbiAgICAgICAge2lzTGV2ZWxUd29MZWFybmluZ091dGNvbWUgJiYgKFxuICAgICAgICAgIDxGbGV4Qm94IGdhcD17MTZ9IGNvbHVtbj5cbiAgICAgICAgICAgIDxUZXh0IHZhcmlhbnQ9XCJ0aXRsZS14c1wiPlN1YnNraWxsczwvVGV4dD5cbiAgICAgICAgICAgIHtyZW5kZXJTdWJza2lsbHMoKX1cbiAgICAgICAgICA8L0ZsZXhCb3g+XG4gICAgICAgICl9XG5cbiAgICAgICAgey8qIEZvciBsZXZlbCAyIExPcyBvbmx5OiBzaG93IFBhcmVudCBMT3MgKi99XG4gICAgICAgIHtzaG93UGFyZW50TE9zICYmIChcbiAgICAgICAgICA8RmxleEJveCBnYXA9ezE2fSBtYj17MTZ9IGNvbHVtbj5cbiAgICAgICAgICAgIDxUZXh0IHZhcmlhbnQ9XCJ0aXRsZS14c1wiPkJ1aWxkcyB0b3dhcmQuLi48L1RleHQ+XG4gICAgICAgICAgICA8TGVhcm5pbmdPdXRjb21lQ2FyZExpc3QgbGVhcm5pbmdPdXRjb21lcz17cGFyZW50TE9zfSAvPlxuICAgICAgICAgIDwvRmxleEJveD5cbiAgICAgICAgKX1cbiAgICAgIDwvRmxleEJveD5cbiAgICA8L0ZseW91dD5cbiAgKTtcbn07XG4iXX0= */");
|
|
22
38
|
const SkillTag = /*#__PURE__*/_styled(Anchor, {
|
|
23
39
|
target: "e1ylhic50",
|
|
24
40
|
label: "SkillTag"
|
|
@@ -31,12 +47,22 @@ const SkillTag = /*#__PURE__*/_styled(Anchor, {
|
|
|
31
47
|
color: 'text',
|
|
32
48
|
bg: 'background-hover'
|
|
33
49
|
}
|
|
34
|
-
}), process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9MZWFybmluZ091dGNvbWVGbHlvdXQvaW5kZXgudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQTJCaUIiLCJmaWxlIjoiLi4vLi4vc3JjL0xlYXJuaW5nT3V0Y29tZUZseW91dC9pbmRleC50c3giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBbmNob3IsIEZsZXhCb3gsIEZseW91dCwgVGV4dCB9IGZyb20gJ0Bjb2RlY2FkZW15L2dhbXV0JztcbmltcG9ydCB7IFNtYWxsQ2hlY2tJY29uIH0gZnJvbSAnQGNvZGVjYWRlbXkvZ2FtdXQtaWNvbnMnO1xuaW1wb3J0IHsgY3NzIH0gZnJvbSAnQGNvZGVjYWRlbXkvZ2FtdXQtc3R5bGVzJztcbmltcG9ydCBzdHlsZWQgZnJvbSAnQGVtb3Rpb24vc3R5bGVkJztcblxuaW1wb3J0IHsgTGVhcm5pbmdPdXRjb21lQXNzZXNzbWVudFNjb3JlcyB9IGZyb20gJy4uL0xlYXJuaW5nT3V0Y29tZUFzc2Vzc21lbnRTY29yZXMnO1xuaW1wb3J0IHtcbiAgbGVhcm5pbmdPdXRjb21lTGFiZWxzLFxuICBMZWFybmluZ091dGNvbWVMZXZlbEJhZGdlLFxuICBMZWFybmluZ091dGNvbWVMZXZlbHMsXG4gIExlYXJuaW5nT3V0Y29tZUxvd0Fzc2Vzc21lbnRCYWRnZSxcbn0gZnJvbSAnLi4vTGVhcm5pbmdPdXRjb21lQmFkZ2VzJztcbmltcG9ydCB7IExlYXJuaW5nT3V0Y29tZUNhcmRMaXN0IH0gZnJvbSAnLi9MZWFybmluZ091dGNvbWVDYXJkTGlzdCc7XG5cbmNvbnN0IFN0eWxlZEFuY2hvciA9IHN0eWxlZChBbmNob3IpKFxuICBjc3Moe1xuICAgIGNvbG9yOiAndGV4dCcsXG4gICAgZm9udFNpemU6IDI2LFxuICAgIGZvbnRXZWlnaHQ6IDcwMCxcbiAgICB0ZXh0RGVjb3JhdGlvbjogJ25vbmUnLFxuICAgICcmOmhvdmVyLCAmOmZvY3VzJzoge1xuICAgICAgY29sb3I6ICd0ZXh0JyxcbiAgICAgIHRleHREZWNvcmF0aW9uOiAndW5kZXJsaW5lJyxcbiAgICB9LFxuICB9KVxuKTtcblxuY29uc3QgU2tpbGxUYWcgPSBzdHlsZWQoQW5jaG9yKShcbiAgY3NzKHtcbiAgICBmb250U2l6ZTogMTQsXG4gICAgYm9yZGVyUmFkaXVzOiAnbWQnLFxuICAgIGJvcmRlcjogMSxcbiAgICBib3JkZXJDb2xvcjogJ2JvcmRlci1wcmltYXJ5JyxcbiAgICAnJjpob3ZlciwgJjpmb2N1cyc6IHtcbiAgICAgIGNvbG9yOiAndGV4dCcsXG4gICAgICBiZzogJ2JhY2tncm91bmQtaG92ZXInLFxuICAgIH0sXG4gIH0pXG4pO1xuXG5leHBvcnQgZW51bSBTa2lsbENsYXNzaWZpY2F0aW9uIHtcbiAgTGFuZ3VhZ2UgPSAnbGFuZ3VhZ2UnLFxuICBTdWJqZWN0ID0gJ3N1YmplY3QnLFxufVxuXG5pbnRlcmZhY2UgTGVhcm5pbmdPdXRjb21lU2tpbGwge1xuICBpZDogc3RyaW5nO1xuICBzbHVnOiBzdHJpbmc7XG4gIHRpdGxlPzogc3RyaW5nIHwgbnVsbDtcbiAgY2xhc3NpZmljYXRpb24/OiBTa2lsbENsYXNzaWZpY2F0aW9uIHwgbnVsbDtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBQYXJlbnRMZWFybmluZ091dGNvbWUge1xuICBpZDogc3RyaW5nO1xuICBvdXRjb21lOiBzdHJpbmc7XG4gIGxldmVsOiBudW1iZXIgfCBudWxsIHwgdW5kZWZpbmVkO1xufVxuXG5pbnRlcmZhY2UgTGVhcm5pbmdPdXRjb21lRGV0YWlsc1Byb3BzIHtcbiAgbGV2ZWw6IExlYXJuaW5nT3V0Y29tZUxldmVscztcbiAgb3V0Y29tZTogc3RyaW5nO1xuICBwZXJjZW50Q29tcGxldGU6IG51bWJlciB8IHVuZGVmaW5lZCB8IG51bGw7XG4gIGhpZ2hlc3RTY29yZTogbnVtYmVyIHwgdW5kZWZpbmVkIHwgbnVsbDtcbiAgaGlnaGVzdFNjb3JlQWNoaWV2ZWRBdDogc3RyaW5nIHwgdW5kZWZpbmVkIHwgbnVsbDtcbiAgbGF0ZXN0U2NvcmU6IG51bWJlciB8IHVuZGVmaW5lZCB8IG51bGw7XG4gIGxhdGVzdFNjb3JlQWNoaWV2ZWRBdDogc3RyaW5nIHwgdW5kZWZpbmVkIHwgbnVsbDtcbiAgcGFyZW50TE9zPzogUGFyZW50TGVhcm5pbmdPdXRjb21lW107XG4gIHNraWxscz86IExlYXJuaW5nT3V0Y29tZVNraWxsW10gfCBudWxsO1xufVxuXG5pbnRlcmZhY2UgTGVhcm5pbmdPdXRjb21lRmx5b3V0UHJvcHMge1xuICBleHBhbmRlZDogYm9vbGVhbjtcbiAgb25DbG9zZTogKCkgPT4gdm9pZDtcbiAgbGVhcm5pbmdPdXRjb21lOiBMZWFybmluZ091dGNvbWVEZXRhaWxzUHJvcHM7XG4gIGxlYXJuaW5nT3V0Y29tZUhyZWY6IHN0cmluZztcbiAgbGVhcm5pbmdPdXRjb21lT25DbGljaz86ICgpID0+IHZvaWQ7XG4gIHNraWxsVGFnT25DbGljaz86IChza2lsbFNsdWc6IHN0cmluZykgPT4gdm9pZDtcbn1cblxuZXhwb3J0IGNvbnN0IHNvcnRTa2lsbHNCeUNsYXNzaWZpY2F0aW9uID0gKFxuICBza2lsbHM/OiBMZWFybmluZ091dGNvbWVTa2lsbFtdIHwgbnVsbFxuKSA9PiB7XG4gIGlmICghc2tpbGxzPy5sZW5ndGgpIHJldHVybiBbXTtcbiAgY29uc3Qgc2tpbGxzQ29weSA9IHNraWxscy5zbGljZSgpO1xuXG4gIGNvbnN0IHNvcnRlZFNraWxscyA9IHNraWxsc0NvcHk/LnNvcnQoKGEsIGIpID0+IHtcbiAgICBpZiAoYT8uY2xhc3NpZmljYXRpb24gPT09ICdsYW5ndWFnZScpIHtcbiAgICAgIHJldHVybiAtMTtcbiAgICB9XG4gICAgaWYgKGI/LmNsYXNzaWZpY2F0aW9uID09PSAnc3ViamVjdCcpIHtcbiAgICAgIHJldHVybiAxO1xuICAgIH1cbiAgICByZXR1cm4gMDtcbiAgfSk7XG5cbiAgcmV0dXJuIHNvcnRlZFNraWxscztcbn07XG5cbmNvbnN0IGdldFNraWxsc0FyZWFQYXRoID0gKHNraWxsU2x1Zz86IHN0cmluZykgPT4ge1xuICByZXR1cm4gc2tpbGxTbHVnID8gYC9za2lsbC1hcmVhcy8ke3NraWxsU2x1Z31gIDogJy8nO1xufTtcblxuZXhwb3J0IGNvbnN0IExlYXJuaW5nT3V0Y29tZUZseW91dDogUmVhY3QuRkM8TGVhcm5pbmdPdXRjb21lRmx5b3V0UHJvcHM+ID0gKHtcbiAgZXhwYW5kZWQsXG4gIGxlYXJuaW5nT3V0Y29tZUhyZWYsXG4gIGxlYXJuaW5nT3V0Y29tZU9uQ2xpY2ssXG4gIGxlYXJuaW5nT3V0Y29tZToge1xuICAgIGhpZ2hlc3RTY29yZSxcbiAgICBoaWdoZXN0U2NvcmVBY2hpZXZlZEF0LFxuICAgIGxhdGVzdFNjb3JlLFxuICAgIGxhdGVzdFNjb3JlQWNoaWV2ZWRBdCxcbiAgICBsZXZlbCxcbiAgICBvdXRjb21lLFxuICAgIHBhcmVudExPcyxcbiAgICBwZXJjZW50Q29tcGxldGUsXG4gICAgc2tpbGxzLFxuICB9LFxuICBza2lsbFRhZ09uQ2xpY2ssXG4gIG9uQ2xvc2UsXG59KSA9PiB7XG4gIGNvbnN0IHBlcmNlbnRDb21wbGV0ZVBlcmNlbnRhZ2UgPVxuICAgIHBlcmNlbnRDb21wbGV0ZSAhPSBudWxsID8gcGVyY2VudENvbXBsZXRlIDogMDtcbiAgY29uc3QgbGV2ZWxMYWJlbCA9IGxlYXJuaW5nT3V0Y29tZUxhYmVsc1tsZXZlbF07XG5cbiAgY29uc3QgaGFzTG93TGF0ZXN0QXNzZXNzbWVudCA9IEJvb2xlYW4oXG4gICAgbGF0ZXN0U2NvcmUgIT0gbnVsbCAmJiBsYXRlc3RTY29yZSA8IDcwXG4gICk7XG5cbiAgY29uc3Qgc2hvd1NraWxscyA9ICEhc2tpbGxzPy5sZW5ndGg7XG4gIGNvbnN0IHNvcnRlZFNraWxscyA9IHNvcnRTa2lsbHNCeUNsYXNzaWZpY2F0aW9uKHNraWxscyk7XG5cbiAgY29uc3Qgc2hvd1BhcmVudExPcyA9XG4gICAgbGV2ZWwgPT09IExlYXJuaW5nT3V0Y29tZUxldmVscy5Ud28gJiYgISFwYXJlbnRMT3MgJiYgcGFyZW50TE9zLmxlbmd0aCA+IDA7XG5cbiAgY29uc3QgcmVuZGVyUHJvZ3Jlc3MgPSAoKSA9PiAoXG4gICAgPEZsZXhCb3ggYWxpZ25JdGVtcz1cImNlbnRlclwiPlxuICAgICAge0Jvb2xlYW4ocGVyY2VudENvbXBsZXRlUGVyY2VudGFnZSA9PT0gMTAwKSAmJiAoXG4gICAgICAgIDxGbGV4Qm94XG4gICAgICAgICAgd2lkdGg9ezE2fVxuICAgICAgICAgIGhlaWdodD17MTZ9XG4gICAgICAgICAgYm9yZGVyUmFkaXVzPVwibWRcIlxuICAgICAgICAgIGJnPVwicHJpbWFyeVwiXG4gICAgICAgICAgbXI9ezh9XG4gICAgICAgICAgYWxpZ25JdGVtcz1cImNlbnRlclwiXG4gICAgICAgICAganVzdGlmeUNvbnRlbnQ9XCJjZW50ZXJcIlxuICAgICAgICA+XG4gICAgICAgICAgPFNtYWxsQ2hlY2tJY29uIHNpemU9ezExfSBjb2xvcj1cIndoaXRlXCIgLz5cbiAgICAgICAgPC9GbGV4Qm94PlxuICAgICAgKX1cbiAgICAgIDxUZXh0XG4gICAgICAgIGNvbG9yPVwidGV4dFwiXG4gICAgICAgIHZhcmlhbnQ9XCJwLWxhcmdlXCJcbiAgICAgID57YCR7cGVyY2VudENvbXBsZXRlUGVyY2VudGFnZX0lIHByb2dyZXNzYH08L1RleHQ+XG4gICAgPC9GbGV4Qm94PlxuICApO1xuXG4gIHJldHVybiAoXG4gICAgPEZseW91dFxuICAgICAgYXJpYS1sYWJlbD17YCR7bGV2ZWxMYWJlbH0gZGV0YWlsc2B9XG4gICAgICBjbG9zZUxhYmVsPXtgQ2xvc2UgJHtsZXZlbExhYmVsfSBkZXRhaWxzYH1cbiAgICAgIGV4cGFuZGVkPXtleHBhbmRlZH1cbiAgICAgIG9uQ2xvc2U9e29uQ2xvc2V9XG4gICAgICBvcGVuRnJvbT1cInJpZ2h0XCJcbiAgICAgIHRpdGxlPXs8VGV4dCB2YXJpYW50PVwidGl0bGUtc21cIj57YCR7bGV2ZWxMYWJlbH0gZGV0YWlsc2B9PC9UZXh0Pn1cbiAgICA+XG4gICAgICA8RmxleEJveCBnYXA9ezMyfSBtdD17MzJ9IG14PXsyNH0gY29sdW1uPlxuICAgICAgICB7LyogQmFkZ2VzLCBPdXRjb21lLCBUb3BpYyB0YWdzLCBQcm9ncmVzcyAqL31cbiAgICAgICAgPEZsZXhCb3ggZ2FwPXsyNH0gY29sdW1uPlxuICAgICAgICAgIDxGbGV4Qm94IGp1c3RpZnlDb250ZW50PVwic3BhY2UtYmV0d2VlblwiIGFsaWduSXRlbXM9XCJjZW50ZXJcIj5cbiAgICAgICAgICAgIDxMZWFybmluZ091dGNvbWVMZXZlbEJhZGdlIGxldmVsPXtsZXZlbH0gc2l6ZT1cImJhc2VcIiAvPlxuICAgICAgICAgICAge2hhc0xvd0xhdGVzdEFzc2Vzc21lbnQgJiYgPExlYXJuaW5nT3V0Y29tZUxvd0Fzc2Vzc21lbnRCYWRnZSAvPn1cbiAgICAgICAgICA8L0ZsZXhCb3g+XG4gICAgICAgICAgPEZsZXhCb3ggZ2FwPXsxNn0gY29sdW1uPlxuICAgICAgICAgICAgPFN0eWxlZEFuY2hvclxuICAgICAgICAgICAgICBocmVmPXtsZWFybmluZ091dGNvbWVIcmVmfVxuICAgICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiBsZWFybmluZ091dGNvbWVPbkNsaWNrPy4oKX1cbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAge291dGNvbWV9XG4gICAgICAgICAgICA8L1N0eWxlZEFuY2hvcj5cbiAgICAgICAgICAgIHtzaG93U2tpbGxzICYmIChcbiAgICAgICAgICAgICAgPEZsZXhCb3ggYWxpZ25JdGVtcz1cImNlbnRlclwiIGdhcD17MTJ9IGZsZXhXcmFwPVwid3JhcFwiPlxuICAgICAgICAgICAgICAgIHtzb3J0ZWRTa2lsbHMubWFwKChza2lsbCkgPT4gKFxuICAgICAgICAgICAgICAgICAgPFNraWxsVGFnXG4gICAgICAgICAgICAgICAgICAgIGtleT17c2tpbGwuaWR9XG4gICAgICAgICAgICAgICAgICAgIGRhdGEtdGVzdGlkPVwic2tpbGwtdGFnXCJcbiAgICAgICAgICAgICAgICAgICAgcHg9ezh9XG4gICAgICAgICAgICAgICAgICAgIHB5PXs0fVxuICAgICAgICAgICAgICAgICAgICB2YXJpYW50PVwiaW50ZXJmYWNlXCJcbiAgICAgICAgICAgICAgICAgICAgaHJlZj17Z2V0U2tpbGxzQXJlYVBhdGgoc2tpbGwuc2x1Zyl9XG4gICAgICAgICAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+IHNraWxsVGFnT25DbGljaz8uKHNraWxsLnNsdWcpfVxuICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICA8RmxleEJveCBjZW50ZXI+XG4gICAgICAgICAgICAgICAgICAgICAgPFRleHQ+e3NraWxsLnRpdGxlfTwvVGV4dD5cbiAgICAgICAgICAgICAgICAgICAgPC9GbGV4Qm94PlxuICAgICAgICAgICAgICAgICAgPC9Ta2lsbFRhZz5cbiAgICAgICAgICAgICAgICApKX1cbiAgICAgICAgICAgICAgPC9GbGV4Qm94PlxuICAgICAgICAgICAgKX1cbiAgICAgICAgICA8L0ZsZXhCb3g+XG4gICAgICAgICAgPEZsZXhCb3ggYm9yZGVyWT17MX0gYm9yZGVyQ29sb3I9XCJiYWNrZ3JvdW5kLWhvdmVyXCIgcHk9ezE2fT5cbiAgICAgICAgICAgIHtyZW5kZXJQcm9ncmVzcygpfVxuICAgICAgICAgIDwvRmxleEJveD5cbiAgICAgICAgPC9GbGV4Qm94PlxuXG4gICAgICAgIHsvKiBBc3Nlc3NtZW50IHNjb3JlcyAqL31cbiAgICAgICAgPEZsZXhCb3ggZ2FwPXsxNn0gY29sdW1uPlxuICAgICAgICAgIDxUZXh0IHZhcmlhbnQ9XCJ0aXRsZS14c1wiPkV2YWx1YXRpb24gcmVzdWx0czwvVGV4dD5cbiAgICAgICAgICA8TGVhcm5pbmdPdXRjb21lQXNzZXNzbWVudFNjb3Jlc1xuICAgICAgICAgICAgaGlnaGVzdFNjb3JlPXtoaWdoZXN0U2NvcmV9XG4gICAgICAgICAgICBoaWdoZXN0U2NvcmVBY2hpZXZlZEF0PXtoaWdoZXN0U2NvcmVBY2hpZXZlZEF0fVxuICAgICAgICAgICAgbGF0ZXN0U2NvcmU9e2xhdGVzdFNjb3JlfVxuICAgICAgICAgICAgbGF0ZXN0U2NvcmVBY2hpZXZlZEF0PXtsYXRlc3RTY29yZUFjaGlldmVkQXR9XG4gICAgICAgICAgLz5cbiAgICAgICAgPC9GbGV4Qm94PlxuXG4gICAgICAgIHsvKiBGb3IgbGV2ZWwgMiBhbmQgMyBMT3Mgb25seTogQ2hpbGRyZW4gTE9zIGdvZXMgYmVsb3cgaGVyZSAqL31cblxuICAgICAgICB7LyogRm9yIGxldmVsIDIgTE9zIG9ubHk6IHNob3cgUGFyZW50IExPcyAqL31cbiAgICAgICAge3Nob3dQYXJlbnRMT3MgJiYgKFxuICAgICAgICAgIDxGbGV4Qm94IGdhcD17MTZ9IG1iPXsxNn0gY29sdW1uPlxuICAgICAgICAgICAgPFRleHQgdmFyaWFudD1cInRpdGxlLXhzXCI+QnVpbGRzIHRvd2FyZC4uLjwvVGV4dD5cbiAgICAgICAgICAgIDxMZWFybmluZ091dGNvbWVDYXJkTGlzdCBsZWFybmluZ091dGNvbWVzPXtwYXJlbnRMT3N9IC8+XG4gICAgICAgICAgPC9GbGV4Qm94PlxuICAgICAgICApfVxuICAgICAgPC9GbGV4Qm94PlxuICAgIDwvRmx5b3V0PlxuICApO1xufTtcbiJdfQ== */");
|
|
50
|
+
}), process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9MZWFybmluZ091dGNvbWVGbHlvdXQvaW5kZXgudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQTJDaUIiLCJmaWxlIjoiLi4vLi4vc3JjL0xlYXJuaW5nT3V0Y29tZUZseW91dC9pbmRleC50c3giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBbmNob3IsIEZsZXhCb3gsIEZseW91dCwgVGV4dCB9IGZyb20gJ0Bjb2RlY2FkZW15L2dhbXV0JztcbmltcG9ydCB7IFNtYWxsQ2hlY2tJY29uIH0gZnJvbSAnQGNvZGVjYWRlbXkvZ2FtdXQtaWNvbnMnO1xuaW1wb3J0IHsgY3NzIH0gZnJvbSAnQGNvZGVjYWRlbXkvZ2FtdXQtc3R5bGVzJztcbmltcG9ydCBzdHlsZWQgZnJvbSAnQGVtb3Rpb24vc3R5bGVkJztcblxuaW1wb3J0IHsgTGVhcm5pbmdPdXRjb21lQXNzZXNzbWVudFNjb3JlcyB9IGZyb20gJy4uL0xlYXJuaW5nT3V0Y29tZUFzc2Vzc21lbnRTY29yZXMnO1xuaW1wb3J0IHtcbiAgbGVhcm5pbmdPdXRjb21lTGFiZWxzLFxuICBMZWFybmluZ091dGNvbWVMZXZlbEJhZGdlLFxuICBMZWFybmluZ091dGNvbWVMZXZlbHMsXG4gIExlYXJuaW5nT3V0Y29tZUxvd0Fzc2Vzc21lbnRCYWRnZSxcbn0gZnJvbSAnLi4vTGVhcm5pbmdPdXRjb21lQmFkZ2VzJztcbmltcG9ydCB7IExlYXJuaW5nT3V0Y29tZVRpbGUgfSBmcm9tICcuLi9MZWFybmluZ091dGNvbWVUaWxlJztcbmltcG9ydCB7IExlYXJuaW5nT3V0Y29tZUNhcmRMaXN0IH0gZnJvbSAnLi9MZWFybmluZ091dGNvbWVDYXJkTGlzdCc7XG5cbmNvbnN0IENoaWxkTGVhcm5pbmdPdXRjb21lUm93ID0gc3R5bGVkKEZsZXhCb3gpKFxuICBjc3Moe1xuICAgICcmOmZpcnN0LW9mLXR5cGUnOiB7XG4gICAgICBib3JkZXJUb3BMZWZ0UmFkaXVzOiAnNHB4JyxcbiAgICAgIGJvcmRlclRvcFJpZ2h0UmFkaXVzOiAnNHB4JyxcbiAgICAgIGJvcmRlclRvcDogMSxcbiAgICAgIGJvcmRlckNvbG9yOiAnYm9yZGVyLXRlcnRpYXJ5JyxcbiAgICB9LFxuICAgICcmOmxhc3Qtb2YtdHlwZSc6IHtcbiAgICAgIGJvcmRlckJvdHRvbUxlZnRSYWRpdXM6ICc0cHgnLFxuICAgICAgYm9yZGVyQm90dG9tUmlnaHRSYWRpdXM6ICc0cHgnLFxuICAgIH0sXG4gIH0pXG4pO1xuXG5jb25zdCBTdHlsZWRBbmNob3IgPSBzdHlsZWQoQW5jaG9yKShcbiAgY3NzKHtcbiAgICBjb2xvcjogJ3RleHQnLFxuICAgIGZvbnRTaXplOiAyNixcbiAgICBmb250V2VpZ2h0OiA3MDAsXG4gICAgdGV4dERlY29yYXRpb246ICdub25lJyxcbiAgICAnJjpob3ZlciwgJjpmb2N1cyc6IHtcbiAgICAgIGNvbG9yOiAndGV4dCcsXG4gICAgICB0ZXh0RGVjb3JhdGlvbjogJ3VuZGVybGluZScsXG4gICAgfSxcbiAgfSlcbik7XG5cbmNvbnN0IFNraWxsVGFnID0gc3R5bGVkKEFuY2hvcikoXG4gIGNzcyh7XG4gICAgZm9udFNpemU6IDE0LFxuICAgIGJvcmRlclJhZGl1czogJ21kJyxcbiAgICBib3JkZXI6IDEsXG4gICAgYm9yZGVyQ29sb3I6ICdib3JkZXItcHJpbWFyeScsXG4gICAgJyY6aG92ZXIsICY6Zm9jdXMnOiB7XG4gICAgICBjb2xvcjogJ3RleHQnLFxuICAgICAgYmc6ICdiYWNrZ3JvdW5kLWhvdmVyJyxcbiAgICB9LFxuICB9KVxuKTtcblxuZXhwb3J0IGVudW0gU2tpbGxDbGFzc2lmaWNhdGlvbiB7XG4gIExhbmd1YWdlID0gJ2xhbmd1YWdlJyxcbiAgU3ViamVjdCA9ICdzdWJqZWN0Jyxcbn1cblxuaW50ZXJmYWNlIExlYXJuaW5nT3V0Y29tZVNraWxsIHtcbiAgaWQ6IHN0cmluZztcbiAgc2x1Zzogc3RyaW5nO1xuICB0aXRsZT86IHN0cmluZyB8IG51bGw7XG4gIGNsYXNzaWZpY2F0aW9uPzogU2tpbGxDbGFzc2lmaWNhdGlvbiB8IG51bGw7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUGFyZW50TGVhcm5pbmdPdXRjb21lIHtcbiAgaWQ6IHN0cmluZztcbiAgb3V0Y29tZTogc3RyaW5nO1xuICBsZXZlbDogbnVtYmVyIHwgbnVsbCB8IHVuZGVmaW5lZDtcbn1cblxuaW50ZXJmYWNlIENvbnRlbnRNb2R1bGVMZWFybmluZ091dGNvbWVEYXRhRnJhZ21lbnQge1xuICBpZDogc3RyaW5nO1xuICB0aXRsZTogc3RyaW5nO1xuICBwcm9ncmVzc1YyOiB7XG4gICAgcGVyY2VudENvbXBsZXRlOiBudW1iZXIgfCB1bmRlZmluZWQgfCBudWxsO1xuICB9O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIExlYXJuaW5nT3V0Y29tZURldGFpbHNQcm9wcyB7XG4gIGxldmVsOiBMZWFybmluZ091dGNvbWVMZXZlbHM7XG4gIG91dGNvbWU6IHN0cmluZztcbiAgcGVyY2VudENvbXBsZXRlOiBudW1iZXIgfCB1bmRlZmluZWQgfCBudWxsO1xuICBoaWdoZXN0U2NvcmU6IG51bWJlciB8IHVuZGVmaW5lZCB8IG51bGw7XG4gIGhpZ2hlc3RTY29yZUFjaGlldmVkQXQ6IHN0cmluZyB8IHVuZGVmaW5lZCB8IG51bGw7XG4gIGxhdGVzdFNjb3JlOiBudW1iZXIgfCB1bmRlZmluZWQgfCBudWxsO1xuICBsYXRlc3RTY29yZUFjaGlldmVkQXQ6IHN0cmluZyB8IHVuZGVmaW5lZCB8IG51bGw7XG4gIHBhcmVudExPcz86IFBhcmVudExlYXJuaW5nT3V0Y29tZVtdO1xuICBza2lsbHM/OiBMZWFybmluZ091dGNvbWVTa2lsbFtdIHwgbnVsbDtcbiAgY2hpbGRMZWFybmluZ091dGNvbWVzPzoge1xuICAgIGlkOiBzdHJpbmc7XG4gICAgb3V0Y29tZTogc3RyaW5nO1xuICAgIHBlcmNlbnRDb21wbGV0ZT86IG51bWJlciB8IHVuZGVmaW5lZCB8IG51bGw7IC8vIG5vdCBjdXJyZW50bHkgZ2V0dGluZyB0aGlzIGZyb20gdGhlIEFQSVxuICAgIGNvbnRlbnRNb2R1bGVzOiBDb250ZW50TW9kdWxlTGVhcm5pbmdPdXRjb21lRGF0YUZyYWdtZW50W107XG4gICAgcHJvZ3Jlc3M/OiB7XG4gICAgICBsYXRlc3RTY29yZTogbnVtYmVyIHwgdW5kZWZpbmVkIHwgbnVsbDtcbiAgICAgIGNvdmVyZWQ6IGJvb2xlYW4gfCB1bmRlZmluZWQgfCBudWxsO1xuICAgICAgY292ZXJlZEF0OiBzdHJpbmcgfCB1bmRlZmluZWQgfCBudWxsO1xuICAgICAgaGlnaGVzdFNjb3JlOiBudW1iZXIgfCB1bmRlZmluZWQgfCBudWxsO1xuICAgIH07XG4gIH1bXTtcbn1cblxuaW50ZXJmYWNlIExlYXJuaW5nT3V0Y29tZUZseW91dFByb3BzIHtcbiAgZXhwYW5kZWQ6IGJvb2xlYW47XG4gIG9uQ2xvc2U6ICgpID0+IHZvaWQ7XG4gIGxlYXJuaW5nT3V0Y29tZTogTGVhcm5pbmdPdXRjb21lRGV0YWlsc1Byb3BzO1xuICBsZWFybmluZ091dGNvbWVIcmVmOiBzdHJpbmc7XG4gIGxlYXJuaW5nT3V0Y29tZU9uQ2xpY2s/OiAoKSA9PiB2b2lkO1xuICBza2lsbFRhZ09uQ2xpY2s/OiAoc2tpbGxTbHVnOiBzdHJpbmcpID0+IHZvaWQ7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRBdmVyYWdlTW9kdWxlUGVyY2VudENvbXBsZXRlKFxuICBjb250ZW50TW9kdWxlczogQ29udGVudE1vZHVsZUxlYXJuaW5nT3V0Y29tZURhdGFGcmFnbWVudFtdXG4pOiBudW1iZXIge1xuICBpZiAoIWNvbnRlbnRNb2R1bGVzIHx8IGNvbnRlbnRNb2R1bGVzLmxlbmd0aCA9PT0gMCkgcmV0dXJuIDA7XG5cbiAgY29uc3QgdG90YWwgPSBjb250ZW50TW9kdWxlcy5yZWR1Y2UoKHN1bSwgbW9kdWxlKSA9PiB7XG4gICAgY29uc3QgeyBwcm9ncmVzc1YyIH0gPSBtb2R1bGU7XG4gICAgcmV0dXJuIHN1bSArIChwcm9ncmVzc1YyPy5wZXJjZW50Q29tcGxldGUgPz8gMCk7XG4gIH0sIDApO1xuXG4gIHJldHVybiBNYXRoLmZsb29yKHRvdGFsIC8gY29udGVudE1vZHVsZXMubGVuZ3RoKTtcbn1cblxuZXhwb3J0IGNvbnN0IHNvcnRTa2lsbHNCeUNsYXNzaWZpY2F0aW9uID0gKFxuICBza2lsbHM/OiBMZWFybmluZ091dGNvbWVTa2lsbFtdIHwgbnVsbFxuKSA9PiB7XG4gIGlmICghc2tpbGxzPy5sZW5ndGgpIHJldHVybiBbXTtcbiAgY29uc3Qgc2tpbGxzQ29weSA9IHNraWxscy5zbGljZSgpO1xuXG4gIGNvbnN0IHNvcnRlZFNraWxscyA9IHNraWxsc0NvcHk/LnNvcnQoKGEsIGIpID0+IHtcbiAgICBpZiAoYT8uY2xhc3NpZmljYXRpb24gPT09ICdsYW5ndWFnZScpIHtcbiAgICAgIHJldHVybiAtMTtcbiAgICB9XG4gICAgaWYgKGI/LmNsYXNzaWZpY2F0aW9uID09PSAnc3ViamVjdCcpIHtcbiAgICAgIHJldHVybiAxO1xuICAgIH1cbiAgICByZXR1cm4gMDtcbiAgfSk7XG5cbiAgcmV0dXJuIHNvcnRlZFNraWxscztcbn07XG5cbmNvbnN0IGdldFNraWxsc0FyZWFQYXRoID0gKHNraWxsU2x1Zz86IHN0cmluZykgPT4ge1xuICByZXR1cm4gc2tpbGxTbHVnID8gYC9za2lsbC1hcmVhcy8ke3NraWxsU2x1Z31gIDogJy8nO1xufTtcblxuY29uc3QgZ2V0TGVhcm5pbmdPdXRjb21lUGF0aCA9IChpZD86IHN0cmluZykgPT4ge1xuICByZXR1cm4gaWQgPyBgL2xlYXJuaW5nLW91dGNvbWVzLyR7aWR9YCA6ICcvJztcbn07XG5cbmV4cG9ydCBjb25zdCBMZWFybmluZ091dGNvbWVGbHlvdXQ6IFJlYWN0LkZDPExlYXJuaW5nT3V0Y29tZUZseW91dFByb3BzPiA9ICh7XG4gIGV4cGFuZGVkLFxuICBsZWFybmluZ091dGNvbWVIcmVmLFxuICBsZWFybmluZ091dGNvbWVPbkNsaWNrLFxuICBsZWFybmluZ091dGNvbWU6IHtcbiAgICBoaWdoZXN0U2NvcmUsXG4gICAgaGlnaGVzdFNjb3JlQWNoaWV2ZWRBdCxcbiAgICBsYXRlc3RTY29yZSxcbiAgICBsYXRlc3RTY29yZUFjaGlldmVkQXQsXG4gICAgbGV2ZWwsXG4gICAgb3V0Y29tZSxcbiAgICBwYXJlbnRMT3MsXG4gICAgcGVyY2VudENvbXBsZXRlLFxuICAgIHNraWxscyxcbiAgICBjaGlsZExlYXJuaW5nT3V0Y29tZXMsXG4gIH0sXG4gIHNraWxsVGFnT25DbGljayxcbiAgb25DbG9zZSxcbn0pID0+IHtcbiAgY29uc3QgcGVyY2VudENvbXBsZXRlUGVyY2VudGFnZSA9XG4gICAgcGVyY2VudENvbXBsZXRlICE9IG51bGwgPyBwZXJjZW50Q29tcGxldGUgOiAwO1xuICBjb25zdCBsZXZlbExhYmVsID0gbGVhcm5pbmdPdXRjb21lTGFiZWxzW2xldmVsXTtcblxuICBjb25zdCBoYXNMb3dMYXRlc3RBc3Nlc3NtZW50ID0gQm9vbGVhbihcbiAgICBsYXRlc3RTY29yZSAhPSBudWxsICYmIGxhdGVzdFNjb3JlIDwgNzBcbiAgKTtcblxuICBjb25zdCBzaG93U2tpbGxzID0gISFza2lsbHM/Lmxlbmd0aDtcbiAgY29uc3Qgc29ydGVkU2tpbGxzID0gc29ydFNraWxsc0J5Q2xhc3NpZmljYXRpb24oc2tpbGxzKTtcblxuICBjb25zdCBpc0xldmVsVHdvTGVhcm5pbmdPdXRjb21lID0gbGV2ZWwgPT09IExlYXJuaW5nT3V0Y29tZUxldmVscy5Ud287XG4gIGNvbnN0IHNob3dQYXJlbnRMT3MgPVxuICAgIGxldmVsID09PSBMZWFybmluZ091dGNvbWVMZXZlbHMuVHdvICYmICEhcGFyZW50TE9zICYmIHBhcmVudExPcy5sZW5ndGggPiAwO1xuXG4gIGNvbnN0IHJlbmRlclByb2dyZXNzID0gKCkgPT4gKFxuICAgIDxGbGV4Qm94IGFsaWduSXRlbXM9XCJjZW50ZXJcIj5cbiAgICAgIHtCb29sZWFuKHBlcmNlbnRDb21wbGV0ZVBlcmNlbnRhZ2UgPT09IDEwMCkgJiYgKFxuICAgICAgICA8RmxleEJveFxuICAgICAgICAgIHdpZHRoPXsxNn1cbiAgICAgICAgICBoZWlnaHQ9ezE2fVxuICAgICAgICAgIGJvcmRlclJhZGl1cz1cIm1kXCJcbiAgICAgICAgICBiZz1cInByaW1hcnlcIlxuICAgICAgICAgIG1yPXs4fVxuICAgICAgICAgIGFsaWduSXRlbXM9XCJjZW50ZXJcIlxuICAgICAgICAgIGp1c3RpZnlDb250ZW50PVwiY2VudGVyXCJcbiAgICAgICAgPlxuICAgICAgICAgIDxTbWFsbENoZWNrSWNvbiBzaXplPXsxMX0gY29sb3I9XCJ3aGl0ZVwiIC8+XG4gICAgICAgIDwvRmxleEJveD5cbiAgICAgICl9XG4gICAgICA8VGV4dFxuICAgICAgICBjb2xvcj1cInRleHRcIlxuICAgICAgICB2YXJpYW50PVwicC1sYXJnZVwiXG4gICAgICA+e2Ake3BlcmNlbnRDb21wbGV0ZVBlcmNlbnRhZ2V9JSBwcm9ncmVzc2B9PC9UZXh0PlxuICAgIDwvRmxleEJveD5cbiAgKTtcblxuICAvLyBSZW5kZXIgc3Vic2tpbGxzIHdoZW4gdGhlIGRyYXdlciBpcyBmZWF0dXJpbmcgYSBsZXZlbCAzIG91dGNvbWVcblxuICBjb25zdCByZW5kZXJTdWJza2lsbHMgPSAoKSA9PiB7XG4gICAgcmV0dXJuIChcbiAgICAgIDxGbGV4Qm94IGFzPVwidWxcIiBmbGV4RGlyZWN0aW9uPVwiY29sdW1uXCIgcD17MH0+XG4gICAgICAgIHtjaGlsZExlYXJuaW5nT3V0Y29tZXM/Lm1hcCgoY2hpbGRMbykgPT4ge1xuICAgICAgICAgIGNvbnN0IHsgaWQsIG91dGNvbWUsIHByb2dyZXNzLCBjb250ZW50TW9kdWxlcyB9ID0gY2hpbGRMbztcbiAgICAgICAgICBjb25zdCBjYWxjdWxhdGVkUGVyY2VudENvbXBsZXRlID1cbiAgICAgICAgICAgIHByb2dyZXNzPy5jb3ZlcmVkIHx8IHByb2dyZXNzPy5jb3ZlcmVkQXRcbiAgICAgICAgICAgICAgPyAxMDBcbiAgICAgICAgICAgICAgOiBnZXRBdmVyYWdlTW9kdWxlUGVyY2VudENvbXBsZXRlKGNvbnRlbnRNb2R1bGVzKTtcbiAgICAgICAgICBjb25zdCBzaG93TmVlZHNSZXZpZXdJbmRpY2F0b3IgPVxuICAgICAgICAgICAgcHJvZ3Jlc3M/LmxhdGVzdFNjb3JlICE9PSBudWxsICYmXG4gICAgICAgICAgICBwcm9ncmVzcz8ubGF0ZXN0U2NvcmUgIT09IHVuZGVmaW5lZFxuICAgICAgICAgICAgICA/IHByb2dyZXNzLmxhdGVzdFNjb3JlIDwgNzBcbiAgICAgICAgICAgICAgOiBmYWxzZTtcblxuICAgICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICA8Q2hpbGRMZWFybmluZ091dGNvbWVSb3dcbiAgICAgICAgICAgICAgcm93XG4gICAgICAgICAgICAgIGJnPVwid2hpdGVcIlxuICAgICAgICAgICAgICBib3JkZXJDb2xvcj1cImJvcmRlci10ZXJ0aWFyeVwiXG4gICAgICAgICAgICAgIGJvcmRlckxlZnQ9ezF9XG4gICAgICAgICAgICAgIGJvcmRlckJvdHRvbT17MX1cbiAgICAgICAgICAgICAgYm9yZGVyUmlnaHQ9ezF9XG4gICAgICAgICAgICAgIHB4PXsxNn1cbiAgICAgICAgICAgICAgcHk9ezI0fVxuICAgICAgICAgICAgICBhbGlnbkl0ZW1zPVwiZmxleC1zdGFydFwiXG4gICAgICAgICAgICAgIGFzPVwibGlcIlxuICAgICAgICAgICAgICBrZXk9e2lkfVxuICAgICAgICAgICAgICBqdXN0aWZ5Q29udGVudD1cImZsZXgtc3RhcnRcIlxuICAgICAgICAgICAgICBnYXA9ezE2fVxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICA8RmxleEJveCBtaW5XaWR0aD17MzJ9IHdpZHRoPXszMn0ganVzdGlmeUNvbnRlbnQ9XCJjZW50ZXJcIj5cbiAgICAgICAgICAgICAgICA8TGVhcm5pbmdPdXRjb21lVGlsZVxuICAgICAgICAgICAgICAgICAgbGVhcm5pbmdPdXRjb21lRGV0YWlscz17e1xuICAgICAgICAgICAgICAgICAgICBpZCxcbiAgICAgICAgICAgICAgICAgICAgbGV2ZWw6IExlYXJuaW5nT3V0Y29tZUxldmVscy5PbmUsXG4gICAgICAgICAgICAgICAgICAgIG91dGNvbWUsXG4gICAgICAgICAgICAgICAgICAgIHBlcmNlbnRDb21wbGV0ZTogY2FsY3VsYXRlZFBlcmNlbnRDb21wbGV0ZSxcbiAgICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgICAgICBzaXplPVwic21hbGxcIlxuICAgICAgICAgICAgICAgICAgcG9wb3Zlcj17ZmFsc2V9XG4gICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgPC9GbGV4Qm94PlxuICAgICAgICAgICAgICA8RmxleEJveCBjb2x1bW4gZ2FwPXs4fT5cbiAgICAgICAgICAgICAgICA8QW5jaG9yXG4gICAgICAgICAgICAgICAgICB2YXJpYW50PVwiaW50ZXJmYWNlXCJcbiAgICAgICAgICAgICAgICAgIGhyZWY9e2dldExlYXJuaW5nT3V0Y29tZVBhdGgoaWQpfVxuICAgICAgICAgICAgICAgICAgdGFyZ2V0PVwiX2JsYW5rXCJcbiAgICAgICAgICAgICAgICAgIHdoaXRlU3BhY2U9XCJub3JtYWxcIlxuICAgICAgICAgICAgICAgICAgb25DbGljaz17KCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAvLyBhZGQgdHJhY2tpbmcgaGVyZVxuICAgICAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICB7b3V0Y29tZX1cbiAgICAgICAgICAgICAgICA8L0FuY2hvcj5cbiAgICAgICAgICAgICAgICB7c2hvd05lZWRzUmV2aWV3SW5kaWNhdG9yICYmIChcbiAgICAgICAgICAgICAgICAgIDxGbGV4Qm94PlxuICAgICAgICAgICAgICAgICAgICA8TGVhcm5pbmdPdXRjb21lTG93QXNzZXNzbWVudEJhZGdlIC8+XG4gICAgICAgICAgICAgICAgICA8L0ZsZXhCb3g+XG4gICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgPC9GbGV4Qm94PlxuICAgICAgICAgICAgPC9DaGlsZExlYXJuaW5nT3V0Y29tZVJvdz5cbiAgICAgICAgICApO1xuICAgICAgICB9KX1cbiAgICAgIDwvRmxleEJveD5cbiAgICApO1xuICB9O1xuXG4gIHJldHVybiAoXG4gICAgPEZseW91dFxuICAgICAgYXJpYS1sYWJlbD17YCR7bGV2ZWxMYWJlbH0gZGV0YWlsc2B9XG4gICAgICBjbG9zZUxhYmVsPXtgQ2xvc2UgJHtsZXZlbExhYmVsfSBkZXRhaWxzYH1cbiAgICAgIGV4cGFuZGVkPXtleHBhbmRlZH1cbiAgICAgIG9uQ2xvc2U9e29uQ2xvc2V9XG4gICAgICBvcGVuRnJvbT1cInJpZ2h0XCJcbiAgICAgIHRpdGxlPXs8VGV4dCB2YXJpYW50PVwidGl0bGUtc21cIj57YCR7bGV2ZWxMYWJlbH0gZGV0YWlsc2B9PC9UZXh0Pn1cbiAgICA+XG4gICAgICA8RmxleEJveCBnYXA9ezMyfSBtdD17MzJ9IG14PXsyNH0gY29sdW1uPlxuICAgICAgICB7LyogQmFkZ2VzLCBPdXRjb21lLCBUb3BpYyB0YWdzLCBQcm9ncmVzcyAqL31cbiAgICAgICAgPEZsZXhCb3ggZ2FwPXsyNH0gY29sdW1uPlxuICAgICAgICAgIDxGbGV4Qm94IGp1c3RpZnlDb250ZW50PVwic3BhY2UtYmV0d2VlblwiIGFsaWduSXRlbXM9XCJjZW50ZXJcIj5cbiAgICAgICAgICAgIDxMZWFybmluZ091dGNvbWVMZXZlbEJhZGdlIGxldmVsPXtsZXZlbH0gc2l6ZT1cImJhc2VcIiAvPlxuICAgICAgICAgICAge2hhc0xvd0xhdGVzdEFzc2Vzc21lbnQgJiYgPExlYXJuaW5nT3V0Y29tZUxvd0Fzc2Vzc21lbnRCYWRnZSAvPn1cbiAgICAgICAgICA8L0ZsZXhCb3g+XG4gICAgICAgICAgPEZsZXhCb3ggZ2FwPXsxNn0gY29sdW1uPlxuICAgICAgICAgICAgPFN0eWxlZEFuY2hvclxuICAgICAgICAgICAgICBocmVmPXtsZWFybmluZ091dGNvbWVIcmVmfVxuICAgICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiBsZWFybmluZ091dGNvbWVPbkNsaWNrPy4oKX1cbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAge291dGNvbWV9XG4gICAgICAgICAgICA8L1N0eWxlZEFuY2hvcj5cbiAgICAgICAgICAgIHtzaG93U2tpbGxzICYmIChcbiAgICAgICAgICAgICAgPEZsZXhCb3ggYWxpZ25JdGVtcz1cImNlbnRlclwiIGdhcD17MTJ9IGZsZXhXcmFwPVwid3JhcFwiPlxuICAgICAgICAgICAgICAgIHtzb3J0ZWRTa2lsbHMubWFwKChza2lsbCkgPT4gKFxuICAgICAgICAgICAgICAgICAgPFNraWxsVGFnXG4gICAgICAgICAgICAgICAgICAgIGtleT17c2tpbGwuaWR9XG4gICAgICAgICAgICAgICAgICAgIGRhdGEtdGVzdGlkPVwic2tpbGwtdGFnXCJcbiAgICAgICAgICAgICAgICAgICAgcHg9ezh9XG4gICAgICAgICAgICAgICAgICAgIHB5PXs0fVxuICAgICAgICAgICAgICAgICAgICB2YXJpYW50PVwiaW50ZXJmYWNlXCJcbiAgICAgICAgICAgICAgICAgICAgaHJlZj17Z2V0U2tpbGxzQXJlYVBhdGgoc2tpbGwuc2x1Zyl9XG4gICAgICAgICAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+IHNraWxsVGFnT25DbGljaz8uKHNraWxsLnNsdWcpfVxuICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICA8RmxleEJveCBjZW50ZXI+XG4gICAgICAgICAgICAgICAgICAgICAgPFRleHQ+e3NraWxsLnRpdGxlfTwvVGV4dD5cbiAgICAgICAgICAgICAgICAgICAgPC9GbGV4Qm94PlxuICAgICAgICAgICAgICAgICAgPC9Ta2lsbFRhZz5cbiAgICAgICAgICAgICAgICApKX1cbiAgICAgICAgICAgICAgPC9GbGV4Qm94PlxuICAgICAgICAgICAgKX1cbiAgICAgICAgICA8L0ZsZXhCb3g+XG4gICAgICAgICAgPEZsZXhCb3ggYm9yZGVyWT17MX0gYm9yZGVyQ29sb3I9XCJiYWNrZ3JvdW5kLWhvdmVyXCIgcHk9ezE2fT5cbiAgICAgICAgICAgIHtyZW5kZXJQcm9ncmVzcygpfVxuICAgICAgICAgIDwvRmxleEJveD5cbiAgICAgICAgPC9GbGV4Qm94PlxuXG4gICAgICAgIHsvKiBBc3Nlc3NtZW50IHNjb3JlcyAqL31cbiAgICAgICAgPEZsZXhCb3ggZ2FwPXsxNn0gY29sdW1uPlxuICAgICAgICAgIDxUZXh0IHZhcmlhbnQ9XCJ0aXRsZS14c1wiPkV2YWx1YXRpb24gcmVzdWx0czwvVGV4dD5cbiAgICAgICAgICA8TGVhcm5pbmdPdXRjb21lQXNzZXNzbWVudFNjb3Jlc1xuICAgICAgICAgICAgaGlnaGVzdFNjb3JlPXtoaWdoZXN0U2NvcmV9XG4gICAgICAgICAgICBoaWdoZXN0U2NvcmVBY2hpZXZlZEF0PXtoaWdoZXN0U2NvcmVBY2hpZXZlZEF0fVxuICAgICAgICAgICAgbGF0ZXN0U2NvcmU9e2xhdGVzdFNjb3JlfVxuICAgICAgICAgICAgbGF0ZXN0U2NvcmVBY2hpZXZlZEF0PXtsYXRlc3RTY29yZUFjaGlldmVkQXR9XG4gICAgICAgICAgLz5cbiAgICAgICAgPC9GbGV4Qm94PlxuXG4gICAgICAgIHsvKiBGb3IgbGV2ZWwgMiBhbmQgMyBMT3Mgb25seTogQ2hpbGRyZW4gTE9zIGdvZXMgYmVsb3cgaGVyZSAqL31cbiAgICAgICAge2lzTGV2ZWxUd29MZWFybmluZ091dGNvbWUgJiYgKFxuICAgICAgICAgIDxGbGV4Qm94IGdhcD17MTZ9IGNvbHVtbj5cbiAgICAgICAgICAgIDxUZXh0IHZhcmlhbnQ9XCJ0aXRsZS14c1wiPlN1YnNraWxsczwvVGV4dD5cbiAgICAgICAgICAgIHtyZW5kZXJTdWJza2lsbHMoKX1cbiAgICAgICAgICA8L0ZsZXhCb3g+XG4gICAgICAgICl9XG5cbiAgICAgICAgey8qIEZvciBsZXZlbCAyIExPcyBvbmx5OiBzaG93IFBhcmVudCBMT3MgKi99XG4gICAgICAgIHtzaG93UGFyZW50TE9zICYmIChcbiAgICAgICAgICA8RmxleEJveCBnYXA9ezE2fSBtYj17MTZ9IGNvbHVtbj5cbiAgICAgICAgICAgIDxUZXh0IHZhcmlhbnQ9XCJ0aXRsZS14c1wiPkJ1aWxkcyB0b3dhcmQuLi48L1RleHQ+XG4gICAgICAgICAgICA8TGVhcm5pbmdPdXRjb21lQ2FyZExpc3QgbGVhcm5pbmdPdXRjb21lcz17cGFyZW50TE9zfSAvPlxuICAgICAgICAgIDwvRmxleEJveD5cbiAgICAgICAgKX1cbiAgICAgIDwvRmxleEJveD5cbiAgICA8L0ZseW91dD5cbiAgKTtcbn07XG4iXX0= */");
|
|
35
51
|
export let SkillClassification = /*#__PURE__*/function (SkillClassification) {
|
|
36
52
|
SkillClassification["Language"] = "language";
|
|
37
53
|
SkillClassification["Subject"] = "subject";
|
|
38
54
|
return SkillClassification;
|
|
39
55
|
}({});
|
|
56
|
+
export function getAverageModulePercentComplete(contentModules) {
|
|
57
|
+
if (!contentModules || contentModules.length === 0) return 0;
|
|
58
|
+
const total = contentModules.reduce((sum, module) => {
|
|
59
|
+
const {
|
|
60
|
+
progressV2
|
|
61
|
+
} = module;
|
|
62
|
+
return sum + (progressV2?.percentComplete ?? 0);
|
|
63
|
+
}, 0);
|
|
64
|
+
return Math.floor(total / contentModules.length);
|
|
65
|
+
}
|
|
40
66
|
export const sortSkillsByClassification = skills => {
|
|
41
67
|
if (!skills?.length) return [];
|
|
42
68
|
const skillsCopy = skills.slice();
|
|
@@ -54,6 +80,9 @@ export const sortSkillsByClassification = skills => {
|
|
|
54
80
|
const getSkillsAreaPath = skillSlug => {
|
|
55
81
|
return skillSlug ? `/skill-areas/${skillSlug}` : '/';
|
|
56
82
|
};
|
|
83
|
+
const getLearningOutcomePath = id => {
|
|
84
|
+
return id ? `/learning-outcomes/${id}` : '/';
|
|
85
|
+
};
|
|
57
86
|
export const LearningOutcomeFlyout = ({
|
|
58
87
|
expanded,
|
|
59
88
|
learningOutcomeHref,
|
|
@@ -67,7 +96,8 @@ export const LearningOutcomeFlyout = ({
|
|
|
67
96
|
outcome,
|
|
68
97
|
parentLOs,
|
|
69
98
|
percentComplete,
|
|
70
|
-
skills
|
|
99
|
+
skills,
|
|
100
|
+
childLearningOutcomes
|
|
71
101
|
},
|
|
72
102
|
skillTagOnClick,
|
|
73
103
|
onClose
|
|
@@ -77,6 +107,7 @@ export const LearningOutcomeFlyout = ({
|
|
|
77
107
|
const hasLowLatestAssessment = Boolean(latestScore != null && latestScore < 70);
|
|
78
108
|
const showSkills = !!skills?.length;
|
|
79
109
|
const sortedSkills = sortSkillsByClassification(skills);
|
|
110
|
+
const isLevelTwoLearningOutcome = level === LearningOutcomeLevels.Two;
|
|
80
111
|
const showParentLOs = level === LearningOutcomeLevels.Two && !!parentLOs && parentLOs.length > 0;
|
|
81
112
|
const renderProgress = () => /*#__PURE__*/_jsxs(FlexBox, {
|
|
82
113
|
alignItems: "center",
|
|
@@ -98,6 +129,70 @@ export const LearningOutcomeFlyout = ({
|
|
|
98
129
|
children: `${percentCompletePercentage}% progress`
|
|
99
130
|
})]
|
|
100
131
|
});
|
|
132
|
+
|
|
133
|
+
// Render subskills when the drawer is featuring a level 3 outcome
|
|
134
|
+
|
|
135
|
+
const renderSubskills = () => {
|
|
136
|
+
return /*#__PURE__*/_jsx(FlexBox, {
|
|
137
|
+
as: "ul",
|
|
138
|
+
flexDirection: "column",
|
|
139
|
+
p: 0,
|
|
140
|
+
children: childLearningOutcomes?.map(childLo => {
|
|
141
|
+
const {
|
|
142
|
+
id,
|
|
143
|
+
outcome,
|
|
144
|
+
progress,
|
|
145
|
+
contentModules
|
|
146
|
+
} = childLo;
|
|
147
|
+
const calculatedPercentComplete = progress?.covered || progress?.coveredAt ? 100 : getAverageModulePercentComplete(contentModules);
|
|
148
|
+
const showNeedsReviewIndicator = progress?.latestScore !== null && progress?.latestScore !== undefined ? progress.latestScore < 70 : false;
|
|
149
|
+
return /*#__PURE__*/_jsxs(ChildLearningOutcomeRow, {
|
|
150
|
+
row: true,
|
|
151
|
+
bg: "white",
|
|
152
|
+
borderColor: "border-tertiary",
|
|
153
|
+
borderLeft: 1,
|
|
154
|
+
borderBottom: 1,
|
|
155
|
+
borderRight: 1,
|
|
156
|
+
px: 16,
|
|
157
|
+
py: 24,
|
|
158
|
+
alignItems: "flex-start",
|
|
159
|
+
as: "li",
|
|
160
|
+
justifyContent: "flex-start",
|
|
161
|
+
gap: 16,
|
|
162
|
+
children: [/*#__PURE__*/_jsx(FlexBox, {
|
|
163
|
+
minWidth: 32,
|
|
164
|
+
width: 32,
|
|
165
|
+
justifyContent: "center",
|
|
166
|
+
children: /*#__PURE__*/_jsx(LearningOutcomeTile, {
|
|
167
|
+
learningOutcomeDetails: {
|
|
168
|
+
id,
|
|
169
|
+
level: LearningOutcomeLevels.One,
|
|
170
|
+
outcome,
|
|
171
|
+
percentComplete: calculatedPercentComplete
|
|
172
|
+
},
|
|
173
|
+
size: "small",
|
|
174
|
+
popover: false
|
|
175
|
+
})
|
|
176
|
+
}), /*#__PURE__*/_jsxs(FlexBox, {
|
|
177
|
+
column: true,
|
|
178
|
+
gap: 8,
|
|
179
|
+
children: [/*#__PURE__*/_jsx(Anchor, {
|
|
180
|
+
variant: "interface",
|
|
181
|
+
href: getLearningOutcomePath(id),
|
|
182
|
+
target: "_blank",
|
|
183
|
+
whiteSpace: "normal",
|
|
184
|
+
onClick: () => {
|
|
185
|
+
// add tracking here
|
|
186
|
+
},
|
|
187
|
+
children: outcome
|
|
188
|
+
}), showNeedsReviewIndicator && /*#__PURE__*/_jsx(FlexBox, {
|
|
189
|
+
children: /*#__PURE__*/_jsx(LearningOutcomeLowAssessmentBadge, {})
|
|
190
|
+
})]
|
|
191
|
+
})]
|
|
192
|
+
}, id);
|
|
193
|
+
})
|
|
194
|
+
});
|
|
195
|
+
};
|
|
101
196
|
return /*#__PURE__*/_jsx(Flyout, {
|
|
102
197
|
"aria-label": `${levelLabel} details`,
|
|
103
198
|
closeLabel: `Close ${levelLabel} details`,
|
|
@@ -167,6 +262,13 @@ export const LearningOutcomeFlyout = ({
|
|
|
167
262
|
latestScore: latestScore,
|
|
168
263
|
latestScoreAchievedAt: latestScoreAchievedAt
|
|
169
264
|
})]
|
|
265
|
+
}), isLevelTwoLearningOutcome && /*#__PURE__*/_jsxs(FlexBox, {
|
|
266
|
+
gap: 16,
|
|
267
|
+
column: true,
|
|
268
|
+
children: [/*#__PURE__*/_jsx(Text, {
|
|
269
|
+
variant: "title-xs",
|
|
270
|
+
children: "Subskills"
|
|
271
|
+
}), renderSubskills()]
|
|
170
272
|
}), showParentLOs && /*#__PURE__*/_jsxs(FlexBox, {
|
|
171
273
|
gap: 16,
|
|
172
274
|
mb: 16,
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* A symbol used as the default value for contexts that require a provider. When
|
|
3
|
+
* calling useContext, we can throw an error if we find this symbol rather than
|
|
4
|
+
* a provided value. This is useful in cases where we want to consider null or
|
|
5
|
+
* undefined as valid provided values.
|
|
6
|
+
*/
|
|
7
|
+
export declare const NO_PROVIDER: unique symbol;
|
|
8
|
+
export type NoProvider = typeof NO_PROVIDER;
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* A symbol used as the default value for contexts that require a provider. When
|
|
3
|
+
* calling useContext, we can throw an error if we find this symbol rather than
|
|
4
|
+
* a provided value. This is useful in cases where we want to consider null or
|
|
5
|
+
* undefined as valid provided values.
|
|
6
|
+
*/
|
|
7
|
+
export const NO_PROVIDER = Symbol('no provider');
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import type { ElementsInstance } from '@recurly/recurly-js';
|
|
2
|
+
import { PropsWithChildren } from 'react';
|
|
3
|
+
/**
|
|
4
|
+
* A provider that provides the Elements instance via context.
|
|
5
|
+
*
|
|
6
|
+
* If used outside of a RecurlyProvider, it will throw an error.
|
|
7
|
+
*/
|
|
8
|
+
export declare function Elements({ children }: PropsWithChildren): import("react/jsx-runtime").JSX.Element;
|
|
9
|
+
/**
|
|
10
|
+
* A hook that returns the Elements instance from context.
|
|
11
|
+
*
|
|
12
|
+
* If used outside of an Elements provider, it will throw an error.
|
|
13
|
+
*
|
|
14
|
+
* Within an Elements provider:
|
|
15
|
+
* - If used on the server, it will return undefined.
|
|
16
|
+
* - If used on the client, it will initially return undefined and then return
|
|
17
|
+
* the provided Elements instance once the Recurly library is loaded.
|
|
18
|
+
*
|
|
19
|
+
* @param options - An object to provide an alternate contextual error message
|
|
20
|
+
* to use if one tries to use this hook outside of an Elements provider.
|
|
21
|
+
*
|
|
22
|
+
* @returns The Elements instance.
|
|
23
|
+
*/
|
|
24
|
+
export declare function useElements(options?: {
|
|
25
|
+
noProviderError?: string;
|
|
26
|
+
}): ElementsInstance | undefined;
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import { createContext, useContext, useMemo } from 'react';
|
|
2
|
+
import { NO_PROVIDER } from '../NoProvider';
|
|
3
|
+
import { useRecurly } from '../recurly';
|
|
4
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
5
|
+
const ElementCtx = /*#__PURE__*/createContext(NO_PROVIDER);
|
|
6
|
+
|
|
7
|
+
/**
|
|
8
|
+
* A provider that provides the Elements instance via context.
|
|
9
|
+
*
|
|
10
|
+
* If used outside of a RecurlyProvider, it will throw an error.
|
|
11
|
+
*/
|
|
12
|
+
export function Elements({
|
|
13
|
+
children
|
|
14
|
+
}) {
|
|
15
|
+
const recurly = useRecurly({
|
|
16
|
+
noProviderError: 'Elements must be used within a RecurlyProvider.'
|
|
17
|
+
});
|
|
18
|
+
const elements = useMemo(() => recurly?.Elements(), [recurly]);
|
|
19
|
+
return /*#__PURE__*/_jsx(ElementCtx.Provider, {
|
|
20
|
+
value: elements,
|
|
21
|
+
children: children
|
|
22
|
+
});
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
/**
|
|
26
|
+
* A hook that returns the Elements instance from context.
|
|
27
|
+
*
|
|
28
|
+
* If used outside of an Elements provider, it will throw an error.
|
|
29
|
+
*
|
|
30
|
+
* Within an Elements provider:
|
|
31
|
+
* - If used on the server, it will return undefined.
|
|
32
|
+
* - If used on the client, it will initially return undefined and then return
|
|
33
|
+
* the provided Elements instance once the Recurly library is loaded.
|
|
34
|
+
*
|
|
35
|
+
* @param options - An object to provide an alternate contextual error message
|
|
36
|
+
* to use if one tries to use this hook outside of an Elements provider.
|
|
37
|
+
*
|
|
38
|
+
* @returns The Elements instance.
|
|
39
|
+
*/
|
|
40
|
+
export function useElements(options) {
|
|
41
|
+
const elements = useContext(ElementCtx);
|
|
42
|
+
if (elements === NO_PROVIDER) {
|
|
43
|
+
throw new Error(options?.noProviderError ?? 'useElements must be used within a Elements provider.');
|
|
44
|
+
}
|
|
45
|
+
return elements;
|
|
46
|
+
}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import type { Recurly } from '@recurly/recurly-js';
|
|
2
|
+
import { PropsWithChildren } from 'react';
|
|
3
|
+
import { RecurlyConfig } from './loadRecurly';
|
|
4
|
+
export type RecurlyProviderProps = PropsWithChildren<RecurlyConfig>;
|
|
5
|
+
/**
|
|
6
|
+
* A provider that:
|
|
7
|
+
* - loads the Recurly library
|
|
8
|
+
* - ensures that only a single instance of the library is loaded
|
|
9
|
+
* - configures the library with the provided public key
|
|
10
|
+
* - provides the library instance via context
|
|
11
|
+
*/
|
|
12
|
+
export declare function RecurlyProvider({ children, ...config }: RecurlyProviderProps): import("react/jsx-runtime").JSX.Element;
|
|
13
|
+
/**
|
|
14
|
+
* A hook that returns the Recurly instance from context.
|
|
15
|
+
*
|
|
16
|
+
* If used outside of a RecurlyProvider, it will throw an error.
|
|
17
|
+
*
|
|
18
|
+
* Within a RecurlyProvider:
|
|
19
|
+
* - If used on the server, it will return undefined.
|
|
20
|
+
* - If used on the client, it will initially return undefined and then return
|
|
21
|
+
* the provided Recurly instance once it is loaded.
|
|
22
|
+
*
|
|
23
|
+
* @param options - An object to provide an alternate contextual error message
|
|
24
|
+
* to use if one tries to use this hook outside of a RecurlyProvider.
|
|
25
|
+
*
|
|
26
|
+
* @returns The Recurly instance.
|
|
27
|
+
*/
|
|
28
|
+
export declare function useRecurly(options?: {
|
|
29
|
+
noProviderError?: string;
|
|
30
|
+
}): Recurly | undefined;
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import { createContext, useContext, useEffect, useState } from 'react';
|
|
2
|
+
import { NO_PROVIDER } from '../NoProvider';
|
|
3
|
+
import { loadRecurly } from './loadRecurly';
|
|
4
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
5
|
+
const RecurlyCtx = /*#__PURE__*/createContext(NO_PROVIDER);
|
|
6
|
+
/**
|
|
7
|
+
* A provider that:
|
|
8
|
+
* - loads the Recurly library
|
|
9
|
+
* - ensures that only a single instance of the library is loaded
|
|
10
|
+
* - configures the library with the provided public key
|
|
11
|
+
* - provides the library instance via context
|
|
12
|
+
*/
|
|
13
|
+
export function RecurlyProvider({
|
|
14
|
+
children,
|
|
15
|
+
...config
|
|
16
|
+
}) {
|
|
17
|
+
const [recurly, setRecurly] = useState(undefined);
|
|
18
|
+
useEffect(() => {
|
|
19
|
+
loadRecurly(config)?.then(setRecurly);
|
|
20
|
+
// Exclude `config` dependency as it should be treated as static.
|
|
21
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
22
|
+
}, []);
|
|
23
|
+
return /*#__PURE__*/_jsx(RecurlyCtx.Provider, {
|
|
24
|
+
value: recurly,
|
|
25
|
+
children: children
|
|
26
|
+
});
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
/**
|
|
30
|
+
* A hook that returns the Recurly instance from context.
|
|
31
|
+
*
|
|
32
|
+
* If used outside of a RecurlyProvider, it will throw an error.
|
|
33
|
+
*
|
|
34
|
+
* Within a RecurlyProvider:
|
|
35
|
+
* - If used on the server, it will return undefined.
|
|
36
|
+
* - If used on the client, it will initially return undefined and then return
|
|
37
|
+
* the provided Recurly instance once it is loaded.
|
|
38
|
+
*
|
|
39
|
+
* @param options - An object to provide an alternate contextual error message
|
|
40
|
+
* to use if one tries to use this hook outside of a RecurlyProvider.
|
|
41
|
+
*
|
|
42
|
+
* @returns The Recurly instance.
|
|
43
|
+
*/
|
|
44
|
+
export function useRecurly(options) {
|
|
45
|
+
const recurly = useContext(RecurlyCtx);
|
|
46
|
+
if (recurly === NO_PROVIDER) {
|
|
47
|
+
throw new Error(options?.noProviderError ?? 'useRecurly must be used within a RecurlyProvider');
|
|
48
|
+
}
|
|
49
|
+
return recurly;
|
|
50
|
+
}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { w } from './w';
|
|
2
|
+
export function loadRecurly(config) {
|
|
3
|
+
if (w && w._recurlyPromise) {
|
|
4
|
+
w._recurlyPromise = new Promise(resolve => {
|
|
5
|
+
const script = w.document.createElement('script');
|
|
6
|
+
script.src = 'https://js.recurly.com/v4/recurly.js';
|
|
7
|
+
script.async = true;
|
|
8
|
+
script.onload = () => {
|
|
9
|
+
const {
|
|
10
|
+
recurly
|
|
11
|
+
} = w;
|
|
12
|
+
if (!recurly) {
|
|
13
|
+
throw new Error('Recurly was not loaded by recurly.js');
|
|
14
|
+
}
|
|
15
|
+
recurly.configure(config);
|
|
16
|
+
resolve(recurly);
|
|
17
|
+
};
|
|
18
|
+
w.document.head.appendChild(script);
|
|
19
|
+
});
|
|
20
|
+
}
|
|
21
|
+
return w?._recurlyPromise;
|
|
22
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import type { Recurly } from '@recurly/recurly-js';
|
|
2
|
+
type Doc = {
|
|
3
|
+
createElement: Document['createElement'];
|
|
4
|
+
head: {
|
|
5
|
+
appendChild: Document['head']['appendChild'];
|
|
6
|
+
};
|
|
7
|
+
};
|
|
8
|
+
export type W = {
|
|
9
|
+
recurly?: Recurly;
|
|
10
|
+
_recurlyPromise?: Promise<Recurly>;
|
|
11
|
+
document: Doc;
|
|
12
|
+
};
|
|
13
|
+
export declare const w: W | undefined;
|
|
14
|
+
export {};
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { InputWrapperProps } from '@codecademy/gamut';
|
|
2
|
+
export type RecurlyFieldProps = InputWrapperProps & {
|
|
3
|
+
label: string;
|
|
4
|
+
};
|
|
5
|
+
/**
|
|
6
|
+
* A wrapper around a Recurly element (or two elements in the case of MM/YY) to
|
|
7
|
+
* add Gamut border styling and a label.
|
|
8
|
+
*/
|
|
9
|
+
export declare function RecurlyField({ label, children, ...props }: RecurlyFieldProps): import("react/jsx-runtime").JSX.Element;
|