@codecademy/gamut 68.2.3-alpha.f27e78.0 → 68.2.3-alpha.f669d7.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/Pagination/index.js +5 -10
- package/dist/Popover/styles/beak.d.ts +4 -1
- package/dist/Popover/styles/beak.js +7 -1
- package/dist/PopoverContainer/PopoverContainer.js +2 -6
- package/dist/Tip/shared/styles/styles.d.ts +45 -17
- package/dist/Tip/shared/styles/styles.js +24 -2
- package/package.json +6 -6
package/dist/Pagination/index.js
CHANGED
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
import { MiniChevronLeftIcon, MiniChevronRightIcon } from '@codecademy/gamut-icons';
|
|
2
|
-
import {
|
|
3
|
-
import { useMemo, useRef, useState } from 'react';
|
|
2
|
+
import { useMemo, useState } from 'react';
|
|
4
3
|
import * as React from 'react';
|
|
5
|
-
import {
|
|
4
|
+
import { HiddenText } from '..';
|
|
6
5
|
import { FlexBox } from '../Box';
|
|
7
6
|
import { AnimatedFadeButton, AnimatedSlideButton } from './AnimatedPaginationButtons';
|
|
8
7
|
import { EllipsisButton } from './EllipsisButton';
|
|
@@ -24,8 +23,6 @@ export const Pagination = ({
|
|
|
24
23
|
const [currentPage, setCurrentPage] = useState(pageNumber ?? defaultPageNumber);
|
|
25
24
|
const [liveText, setLiveText] = useState('');
|
|
26
25
|
const [shownPageArray, setShownPageArray] = useState([0]);
|
|
27
|
-
const rootRef = useRef(null);
|
|
28
|
-
const isRtl = useElementDir(rootRef);
|
|
29
26
|
const showSkipToButtons = !!(type === undefined && totalPages >= 10 || type === 'includeSkipToButtons');
|
|
30
27
|
const changeShownPages = shouldPagesChange({
|
|
31
28
|
chapterSize,
|
|
@@ -70,16 +67,14 @@ export const Pagination = ({
|
|
|
70
67
|
chapterSize
|
|
71
68
|
}) : 'initial'}`
|
|
72
69
|
},
|
|
73
|
-
|
|
74
|
-
children: [/*#__PURE__*/_jsx(Text, {
|
|
70
|
+
children: [/*#__PURE__*/_jsx(HiddenText, {
|
|
75
71
|
"aria-live": "polite",
|
|
76
|
-
screenreader: true,
|
|
77
72
|
children: liveText
|
|
78
73
|
}), /*#__PURE__*/_jsx(AnimatedFadeButton, {
|
|
79
74
|
"aria-label": `Navigate back to page ${currentPage - 1}`,
|
|
80
75
|
buttonType: variant,
|
|
81
76
|
href: navigation,
|
|
82
|
-
icon:
|
|
77
|
+
icon: MiniChevronLeftIcon,
|
|
83
78
|
showButton: currentPage === 1 ? 'hidden' : 'shown',
|
|
84
79
|
onClick: () => changeHandler(currentPage - 1)
|
|
85
80
|
}), showSkipToButtons && /*#__PURE__*/_jsxs(_Fragment, {
|
|
@@ -134,7 +129,7 @@ export const Pagination = ({
|
|
|
134
129
|
"aria-label": `Navigate forward to page ${currentPage + 1}`,
|
|
135
130
|
buttonType: variant,
|
|
136
131
|
href: navigation,
|
|
137
|
-
icon:
|
|
132
|
+
icon: MiniChevronRightIcon,
|
|
138
133
|
showButton: currentPage === totalPages ? 'hidden' : 'shown',
|
|
139
134
|
onClick: () => changeHandler(currentPage + 1)
|
|
140
135
|
})]
|
|
@@ -1,7 +1,10 @@
|
|
|
1
1
|
import { PopoverProps } from '../types';
|
|
2
2
|
export declare const beakRightCenterStylesLrg: {
|
|
3
3
|
left: number;
|
|
4
|
-
|
|
4
|
+
'&:dir(rtl)': {
|
|
5
|
+
transform: "rotate(135deg)" | "rotate(-45deg)";
|
|
6
|
+
};
|
|
7
|
+
transform: "rotate(45deg)" | "rotate(-135deg)" | "rotate(135deg)" | "rotate(-45deg)";
|
|
5
8
|
backgroundImage: string;
|
|
6
9
|
borderColor: string;
|
|
7
10
|
borderWidth: string;
|
|
@@ -1,5 +1,7 @@
|
|
|
1
|
-
import { beakBottomStyles, beakLeftCenterStyles, beakRightCenterStyles, beakStylesBase, beakTopStyles, getBeakBgAndRotation, tooltipBgColor } from '../../Tip/shared/styles/styles';
|
|
1
|
+
import { beakBottomStyles, beakLeftCenterStyles, beakRightCenterStyles, beakStylesBase, beakTopStyles, getBeakBgAndRotation, horizontalCenterBeakRtlPopover, tooltipBgColor } from '../../Tip/shared/styles/styles';
|
|
2
2
|
import { popoverPrimaryBgColor } from './base';
|
|
3
|
+
const rtlBeakBoxRight = horizontalCenterBeakRtlPopover('right');
|
|
4
|
+
const rtlBeakBoxLeft = horizontalCenterBeakRtlPopover('left');
|
|
3
5
|
const positionAbove = {
|
|
4
6
|
top: 'calc(100% - 10px)',
|
|
5
7
|
...beakStylesBase,
|
|
@@ -52,6 +54,7 @@ const beakYCenterSml = {
|
|
|
52
54
|
};
|
|
53
55
|
const beakRightCenterStylesSml = {
|
|
54
56
|
...beakRightCenterStyles,
|
|
57
|
+
...rtlBeakBoxRight,
|
|
55
58
|
left: -8
|
|
56
59
|
};
|
|
57
60
|
export const beakRightCenterStylesLrg = {
|
|
@@ -60,10 +63,12 @@ export const beakRightCenterStylesLrg = {
|
|
|
60
63
|
alignment: 'right',
|
|
61
64
|
color: popoverPrimaryBgColor
|
|
62
65
|
}),
|
|
66
|
+
...rtlBeakBoxRight,
|
|
63
67
|
left: -10
|
|
64
68
|
};
|
|
65
69
|
const beakLeftCenterStylesSml = {
|
|
66
70
|
...beakLeftCenterStyles,
|
|
71
|
+
...rtlBeakBoxLeft,
|
|
67
72
|
right: -8
|
|
68
73
|
};
|
|
69
74
|
const beakLeftCenterStylesLrg = {
|
|
@@ -72,6 +77,7 @@ const beakLeftCenterStylesLrg = {
|
|
|
72
77
|
alignment: 'left',
|
|
73
78
|
color: popoverPrimaryBgColor
|
|
74
79
|
}),
|
|
80
|
+
...rtlBeakBoxLeft,
|
|
75
81
|
right: -10
|
|
76
82
|
};
|
|
77
83
|
export const beakBoxX = {
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import _styled from "@emotion/styled/base";
|
|
2
|
-
import { system, useElementDir
|
|
2
|
+
import { system, useElementDir } from '@codecademy/gamut-styles';
|
|
3
3
|
import { variance } from '@codecademy/variance';
|
|
4
4
|
import { useCallback, useEffect, useMemo, useRef, useState } from 'react';
|
|
5
5
|
import * as React from 'react';
|
|
@@ -16,7 +16,7 @@ const PopoverContent = /*#__PURE__*/_styled("div", {
|
|
|
16
16
|
transform: {
|
|
17
17
|
property: 'transform'
|
|
18
18
|
}
|
|
19
|
-
})), process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9Qb3BvdmVyQ29udGFpbmVyL1BvcG92ZXJDb250YWluZXIudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQXFCdUIiLCJmaWxlIjoiLi4vLi4vc3JjL1BvcG92ZXJDb250YWluZXIvUG9wb3ZlckNvbnRhaW5lci50c3giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBzeXN0ZW0sXG4gIHVzZUVsZW1lbnREaXIsXG4gIHVzZUxvZ2ljYWxQcm9wZXJ0aWVzLFxufSBmcm9tICdAY29kZWNhZGVteS9nYW11dC1zdHlsZXMnO1xuaW1wb3J0IHsgdmFyaWFuY2UgfSBmcm9tICdAY29kZWNhZGVteS92YXJpYW5jZSc7XG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XG5pbXBvcnQgeyB1c2VDYWxsYmFjaywgdXNlRWZmZWN0LCB1c2VNZW1vLCB1c2VSZWYsIHVzZVN0YXRlIH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0ICogYXMgUmVhY3QgZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgdXNlV2luZG93U2Nyb2xsLCB1c2VXaW5kb3dTaXplIH0gZnJvbSAncmVhY3QtdXNlJztcblxuaW1wb3J0IHsgQm9keVBvcnRhbCB9IGZyb20gJy4uL0JvZHlQb3J0YWwnO1xuaW1wb3J0IHsgRm9jdXNUcmFwIH0gZnJvbSAnLi4vRm9jdXNUcmFwJztcbmltcG9ydCB7XG4gIHVzZVJlc2l6aW5nUGFyZW50RWZmZWN0LFxuICB1c2VTY3JvbGxpbmdQYXJlbnRzLFxuICB1c2VTY3JvbGxpbmdQYXJlbnRzRWZmZWN0LFxufSBmcm9tICcuL2hvb2tzJztcbmltcG9ydCB7IENvbnRhaW5lclN0YXRlLCBQb3BvdmVyQ29udGFpbmVyUHJvcHMgfSBmcm9tICcuL3R5cGVzJztcbmltcG9ydCB7IGdldENvbnRhaW5lcnMsIGdldFBvc2l0aW9uLCBpc091dE9mVmlldyB9IGZyb20gJy4vdXRpbHMnO1xuXG5jb25zdCBQb3BvdmVyQ29udGVudCA9IHN0eWxlZC5kaXYoXG4gIHZhcmlhbmNlLmNvbXBvc2UoXG4gICAgc3lzdGVtLnBvc2l0aW9uaW5nLFxuICAgIHZhcmlhbmNlLmNyZWF0ZSh7XG4gICAgICB0cmFuc2Zvcm06IHtcbiAgICAgICAgcHJvcGVydHk6ICd0cmFuc2Zvcm0nLFxuICAgICAgfSxcbiAgICB9KVxuICApXG4pO1xuXG5leHBvcnQgY29uc3QgUG9wb3ZlckNvbnRhaW5lcjogUmVhY3QuRkM8UG9wb3ZlckNvbnRhaW5lclByb3BzPiA9ICh7XG4gIGFsaWdubWVudCA9ICdib3R0b20tbGVmdCcsXG4gIG9mZnNldCA9IDIwLFxuICB5ID0gMCxcbiAgeCA9IDAsXG4gIGludmVydEF4aXMsXG4gIGlubGluZSA9IGZhbHNlLFxuICBpc09wZW4sXG4gIG9uUmVxdWVzdENsb3NlLFxuICB0YXJnZXRSZWYsXG4gIGFsbG93UGFnZUludGVyYWN0aW9uLFxuICBjbG9zZU9uVmlld3BvcnRFeGl0ID0gZmFsc2UsXG4gIC4uLnJlc3Rcbn0pID0+IHtcbiAgY29uc3QgcG9wb3ZlclJlZiA9IHVzZVJlZjxIVE1MRGl2RWxlbWVudD4obnVsbCk7XG4gIGNvbnN0IGhhc1JlcXVlc3RlZENsb3NlUmVmID0gdXNlUmVmKGZhbHNlKTtcbiAgY29uc3Qgb25SZXF1ZXN0Q2xvc2VSZWYgPSB1c2VSZWYob25SZXF1ZXN0Q2xvc2UpO1xuICBjb25zdCB7IHdpZHRoOiB3aW5XLCBoZWlnaHQ6IHdpbkggfSA9IHVzZVdpbmRvd1NpemUoKTtcbiAgY29uc3QgeyB4OiB3aW5YLCB5OiB3aW5ZIH0gPSB1c2VXaW5kb3dTY3JvbGwoKTtcbiAgY29uc3QgW2NvbnRhaW5lcnMsIHNldENvbnRhaW5lcnNdID0gdXNlU3RhdGU8Q29udGFpbmVyU3RhdGU+KCk7XG4gIGNvbnN0IFt0YXJnZXRSZWN0LCBzZXRUYXJnZXRSZWN0XSA9IHVzZVN0YXRlPERPTVJlY3Q+KCk7XG4gIGNvbnN0IHBhcmVudCA9IGNvbnRhaW5lcnM/LnBhcmVudDtcblxuICAvLyBNZW1vaXplIHNjcm9sbGluZyBwYXJlbnRzIHRvIGF2b2lkIGV4cGVuc2l2ZSBET00gdHJhdmVyc2Fsc1xuICBjb25zdCBzY3JvbGxpbmdQYXJlbnRzID0gdXNlU2Nyb2xsaW5nUGFyZW50cyh0YXJnZXRSZWYpO1xuXG4gIC8vIEtlZXAgb25SZXF1ZXN0Q2xvc2UgcmVmIHVwIHRvIGRhdGVcbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBvblJlcXVlc3RDbG9zZVJlZi5jdXJyZW50ID0gb25SZXF1ZXN0Q2xvc2U7XG4gIH0sIFtvblJlcXVlc3RDbG9zZV0pO1xuXG4gIGNvbnN0IGlzUnRsID0gdXNlRWxlbWVudERpcih0YXJnZXRSZWYpID09PSAncnRsJztcblxuICBjb25zdCBwb3BvdmVyUG9zaXRpb24gPSB1c2VNZW1vKCgpID0+IHtcbiAgICBpZiAocGFyZW50ICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIHJldHVybiBnZXRQb3NpdGlvbih7XG4gICAgICAgIGFsaWdubWVudCxcbiAgICAgICAgY29udGFpbmVyOiBwYXJlbnQsXG4gICAgICAgIGludmVydEF4aXMsXG4gICAgICAgIGlzUnRsLFxuICAgICAgICBvZmZzZXQsXG4gICAgICAgIHgsXG4gICAgICAgIHksXG4gICAgICB9KTtcbiAgICB9XG4gICAgcmV0dXJuIHsgc3R5bGVzOiB7fSwgcGh5c2ljYWxTdHlsZXM6IHVuZGVmaW5lZCB9O1xuICB9LCBbcGFyZW50LCB4LCB5LCBvZmZzZXQsIGFsaWdubWVudCwgaW52ZXJ0QXhpcywgaXNSdGxdKTtcblxuICAvLyBMb2cgbG9naWNhbCBwcm9wZXJ0aWVzIHRvIHRoZSBjb25zb2xlIFRFU1QgQ09ERVxuICBjb25zdCBsb2dpY2FsUHJvcGVydGllcyA9IHVzZUxvZ2ljYWxQcm9wZXJ0aWVzKCk7XG4gIGNvbnNvbGUubG9nKCdkaXInLCBpc1J0bCwgJ2xvZ2ljYWxQcm9wZXJ0aWVzJywgbG9naWNhbFByb3BlcnRpZXMpO1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgY29uc3QgdGFyZ2V0ID0gdGFyZ2V0UmVmPy5jdXJyZW50O1xuICAgIGlmICghdGFyZ2V0KSByZXR1cm47XG4gICAgc2V0Q29udGFpbmVycyhnZXRDb250YWluZXJzKHRhcmdldCwgaW5saW5lLCB7IHg6IHdpblgsIHk6IHdpblkgfSkpO1xuICB9LCBbdGFyZ2V0UmVmLCBpbmxpbmUsIHdpblcsIHdpbkgsIHdpblgsIHdpblksIHRhcmdldFJlY3RdKTtcblxuICAvLyBVcGRhdGUgdGFyZ2V0IHJlY3RhbmdsZSB3aGVuIHdpbmRvdyBzaXplL3Njcm9sbCBjaGFuZ2VzXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgc2V0VGFyZ2V0UmVjdCh0YXJnZXRSZWY/LmN1cnJlbnQ/LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpKTtcbiAgfSwgW3RhcmdldFJlZiwgaXNPcGVuLCB3aW5XLCB3aW5ILCB3aW5YLCB3aW5ZXSk7XG5cbiAgLy8gVXBkYXRlIHRhcmdldCByZWN0YW5nbGUgd2hlbiBwYXJlbnQgc2l6ZS9zY3JvbGwgY2hhbmdlc1xuICBjb25zdCB1cGRhdGVUYXJnZXRQb3NpdGlvbiA9IHVzZUNhbGxiYWNrKFxuICAgIChyZWN0PzogRE9NUmVjdCkgPT4ge1xuICAgICAgY29uc3QgdGFyZ2V0ID0gdGFyZ2V0UmVmPy5jdXJyZW50O1xuICAgICAgaWYgKCF0YXJnZXQpIHJldHVybjtcblxuICAgICAgY29uc3QgbmV3UmVjdCA9IHJlY3QgfHwgdGFyZ2V0LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xuICAgICAgc2V0VGFyZ2V0UmVjdChuZXdSZWN0KTtcblxuICAgICAgY29uc3QgY3VycmVudFNjcm9sbFggPVxuICAgICAgICB3aW5kb3cucGFnZVhPZmZzZXQgfHwgZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LnNjcm9sbExlZnQ7XG4gICAgICBjb25zdCBjdXJyZW50U2Nyb2xsWSA9XG4gICAgICAgIHdpbmRvdy5wYWdlWU9mZnNldCB8fCBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuc2Nyb2xsVG9wO1xuXG4gICAgICBzZXRDb250YWluZXJzKFxuICAgICAgICBnZXRDb250YWluZXJzKHRhcmdldCwgaW5saW5lLCB7IHg6IGN1cnJlbnRTY3JvbGxYLCB5OiBjdXJyZW50U2Nyb2xsWSB9KVxuICAgICAgKTtcbiAgICB9LFxuICAgIFt0YXJnZXRSZWYsIGlubGluZV1cbiAgKTtcblxuICB1c2VTY3JvbGxpbmdQYXJlbnRzRWZmZWN0KHRhcmdldFJlZiwgdXBkYXRlVGFyZ2V0UG9zaXRpb24pO1xuXG4gIHVzZVJlc2l6aW5nUGFyZW50RWZmZWN0KHRhcmdldFJlZiwgc2V0VGFyZ2V0UmVjdCk7XG5cbiAgLy8gSGFuZGxlIGNsb3NlT25WaWV3cG9ydEV4aXQgd2l0aCBjYWNoZWQgc2Nyb2xsaW5nIHBhcmVudHMgZm9yIHBlcmZvcm1hbmNlXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKCFjbG9zZU9uVmlld3BvcnRFeGl0KSByZXR1cm47XG5cbiAgICBjb25zdCByZWN0ID0gdGFyZ2V0UmVjdCB8fCBjb250YWluZXJzPy52aWV3cG9ydDtcbiAgICBpZiAoIXJlY3QpIHJldHVybjtcblxuICAgIGNvbnN0IGlzT3V0ID0gaXNPdXRPZlZpZXcoXG4gICAgICByZWN0LFxuICAgICAgdGFyZ2V0UmVmPy5jdXJyZW50IGFzIEhUTUxFbGVtZW50LFxuICAgICAgc2Nyb2xsaW5nUGFyZW50c1xuICAgICk7XG5cbiAgICBpZiAoaXNPdXQgJiYgIWhhc1JlcXVlc3RlZENsb3NlUmVmLmN1cnJlbnQpIHtcbiAgICAgIGhhc1JlcXVlc3RlZENsb3NlUmVmLmN1cnJlbnQgPSB0cnVlO1xuICAgICAgb25SZXF1ZXN0Q2xvc2VSZWYuY3VycmVudD8uKCk7XG4gICAgfSBlbHNlIGlmICghaXNPdXQpIHtcbiAgICAgIGhhc1JlcXVlc3RlZENsb3NlUmVmLmN1cnJlbnQgPSBmYWxzZTtcbiAgICB9XG4gIH0sIFtcbiAgICB0YXJnZXRSZWN0LFxuICAgIGNvbnRhaW5lcnM/LnZpZXdwb3J0LFxuICAgIHRhcmdldFJlZixcbiAgICBjbG9zZU9uVmlld3BvcnRFeGl0LFxuICAgIHNjcm9sbGluZ1BhcmVudHMsXG4gIF0pO1xuICAvKipcbiAgICogQWxsb3dzIHRhcmdldFJlZiB0byBiZSBvciBjb250YWluIGEgYnV0dG9uIHRoYXQgdG9nZ2xlcyB0aGUgcG9wb3ZlciBvcGVuIGFuZCBjbG9zZWQuXG4gICAqIFdpdGhvdXQgdGhpcyBjaGVjayBpdCB3b3VsZCB0b2dnbGUgY2xvc2VkIHRoZW4gYmFjayBvcGVuIGltbWVkaWF0ZWx5LlxuICAgKlxuICAgKi9cbiAgY29uc3QgaGFuZGxlQ2xpY2tPdXRzaWRlID0gdXNlQ2FsbGJhY2soXG4gICAgKGU6IE1vdXNlRXZlbnQgfCBUb3VjaEV2ZW50KSA9PiB7XG4gICAgICBjb25zdCB0YXJnZXQgPSBlLnRhcmdldCBhcyBOb2RlO1xuICAgICAgY29uc3QgdGFyZ2V0RWxlbWVudCA9IHRhcmdldFJlZi5jdXJyZW50O1xuXG4gICAgICBpZiAoIXRhcmdldEVsZW1lbnQpIHJldHVybjtcbiAgICAgIGlmICh0YXJnZXRFbGVtZW50LmNvbnRhaW5zKHRhcmdldCkpIHJldHVybjtcbiAgICAgIGlmIChwb3BvdmVyUmVmLmN1cnJlbnQ/LmNvbnRhaW5zKHRhcmdldCkpIHJldHVybjtcblxuICAgICAgLy8gSWYgd2UgZ2V0IGhlcmUsIGl0J3MgYSBnZW51aW5lIG91dHNpZGUgY2xpY2tcbiAgICAgIG9uUmVxdWVzdENsb3NlPy4oKTtcbiAgICB9LFxuICAgIFtvblJlcXVlc3RDbG9zZSwgdGFyZ2V0UmVmXVxuICApO1xuXG4gIC8qKlxuICAgKiBCYWNrdXAgY2xpY2sgb3V0c2lkZSBoYW5kbGVyIGZvciBjYXNlcyB3aGVyZSBGb2N1c1RyYXAgZGV0ZWN0aW9uIG1pZ2h0IGJlIGludGVyZmVyZWQgd2l0aFxuICAgKiBieSBvdXIgb3duIGZsb2F0aW5nIGVsZW1lbnRzXG4gICAqL1xuICBjb25zdCBoYW5kbGVHbG9iYWxDbGlja091dHNpZGUgPSB1c2VDYWxsYmFjayhcbiAgICAoZTogTW91c2VFdmVudCkgPT4ge1xuICAgICAgY29uc3QgdGFyZ2V0ID0gZS50YXJnZXQgYXMgTm9kZTtcbiAgICAgIGNvbnN0IHRhcmdldEVsZW1lbnQgPSB0YXJnZXRSZWYuY3VycmVudDtcblxuICAgICAgaWYgKCF0YXJnZXRFbGVtZW50IHx8ICFpc09wZW4pIHJldHVybjtcblxuICAgICAgaWYgKFxuICAgICAgICB0YXJnZXRFbGVtZW50LmNvbnRhaW5zKHRhcmdldCkgfHxcbiAgICAgICAgcG9wb3ZlclJlZi5jdXJyZW50Py5jb250YWlucyh0YXJnZXQpXG4gICAgICApXG4gICAgICAgIHJldHVybjtcblxuICAgICAgLy8gQ2hlY2sgaWYgdGhlIGNsaWNrZWQgZWxlbWVudCBpcyB3aXRoaW4gYW4gT3ZlcmxheSBjb21wb25lbnRcbiAgICAgIGNvbnN0IGNsaWNrZWRFbGVtZW50ID0gdGFyZ2V0IGFzIEVsZW1lbnQ7XG4gICAgICBpZiAoY2xpY2tlZEVsZW1lbnQuY2xvc2VzdCgnW2RhdGEtZmxvYXRpbmc9XCJvdmVybGF5XCJdJykpIHtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuXG4gICAgICAvLyBDaGVjayBpZiB0aGUgY2xpY2tlZCBlbGVtZW50IGlzIHdpdGhpbiBhbm90aGVyIFBvcG92ZXIgb3IgUG9wb3ZlckNvbnRhaW5lclxuICAgICAgY29uc3QgaXNGbG9hdGluZ0VsZW1lbnQgPSBjbGlja2VkRWxlbWVudC5jbG9zZXN0KFxuICAgICAgICAnW2RhdGEtZmxvYXRpbmc9XCJwb3BvdmVyXCJdJ1xuICAgICAgKTtcbiAgICAgIGlmIChcbiAgICAgICAgaXNGbG9hdGluZ0VsZW1lbnQgJiZcbiAgICAgICAgIXBvcG92ZXJSZWYuY3VycmVudD8uY29udGFpbnMoaXNGbG9hdGluZ0VsZW1lbnQpXG4gICAgICApIHtcbiAgICAgICAgb25SZXF1ZXN0Q2xvc2U/LigpO1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG5cbiAgICAgIG9uUmVxdWVzdENsb3NlPy4oKTtcbiAgICB9LFxuICAgIFtvblJlcXVlc3RDbG9zZSwgdGFyZ2V0UmVmLCBpc09wZW5dXG4gICk7XG5cbiAgLy8gQmFja3VwIGdsb2JhbCBjbGljayBsaXN0ZW5lciBmb3Igd2hlbiBhIFBvcG92ZXIgb3IgUG9wb3ZlckNvbnRhaW5lciBpcyBvcGVuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKGlzT3Blbikge1xuICAgICAgLy8gVXNlIGEgc21hbGwgZGVsYXkgdG8gZW5zdXJlIHRoaXMgZG9lc24ndCBpbnRlcmZlcmUgd2l0aCB0aGUgRm9jdXNUcmFwJ3Mgb3duIGRldGVjdGlvblxuICAgICAgY29uc3QgdGltZW91dElkID0gc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgIGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoJ21vdXNlZG93bicsIGhhbmRsZUdsb2JhbENsaWNrT3V0c2lkZSwgdHJ1ZSk7XG4gICAgICB9LCA1MCk7XG5cbiAgICAgIHJldHVybiAoKSA9PiB7XG4gICAgICAgIGNsZWFyVGltZW91dCh0aW1lb3V0SWQpO1xuICAgICAgICBkb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKFxuICAgICAgICAgICdtb3VzZWRvd24nLFxuICAgICAgICAgIGhhbmRsZUdsb2JhbENsaWNrT3V0c2lkZSxcbiAgICAgICAgICB0cnVlXG4gICAgICAgICk7XG4gICAgICB9O1xuICAgIH1cbiAgfSwgW2lzT3BlbiwgaGFuZGxlR2xvYmFsQ2xpY2tPdXRzaWRlXSk7XG5cbiAgaWYgKCFpc09wZW4gfHwgIXRhcmdldFJlZikgcmV0dXJuIG51bGw7XG5cbiAgY29uc3QgY29udGVudCA9IChcbiAgICA8Rm9jdXNUcmFwXG4gICAgICBhbGxvd1BhZ2VJbnRlcmFjdGlvbj17aW5saW5lIHx8IGFsbG93UGFnZUludGVyYWN0aW9ufVxuICAgICAgb25DbGlja091dHNpZGU9e2hhbmRsZUNsaWNrT3V0c2lkZX1cbiAgICAgIG9uRXNjYXBlS2V5PXtvblJlcXVlc3RDbG9zZX1cbiAgICA+XG4gICAgICA8UG9wb3ZlckNvbnRlbnRcbiAgICAgICAgZGF0YS1mbG9hdGluZz1cInBvcG92ZXJcIlxuICAgICAgICBkYXRhLXRlc3RpZD1cInBvcG92ZXItY29udGVudC1jb250YWluZXJcIlxuICAgICAgICBwb3NpdGlvbj1cImFic29sdXRlXCJcbiAgICAgICAgcmVmPXtwb3BvdmVyUmVmfVxuICAgICAgICB0YWJJbmRleD17LTF9XG4gICAgICAgIHpJbmRleD17aW5saW5lID8gNSA6ICdpbml0aWFsJ31cbiAgICAgICAgey4uLnBvcG92ZXJQb3NpdGlvbi5zdHlsZXN9XG4gICAgICAgIC8qIFBoeXNpY2FsIGlubGluZSBzdHlsZSBmb3IgY2VudGVyZWQgYWxpZ25tZW50cyAodG9wL2JvdHRvbSkgd2hlcmVcbiAgICAgICAgICAgaW5zZXQtaW5saW5lLXN0YXJ0IHdvdWxkIGluY29ycmVjdGx5IGZsaXAgdGhlIGNlbnRlciBwb2ludCBpbiBSVEwgKi9cbiAgICAgICAgLyogZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGdhbXV0L25vLWlubGluZS1zdHlsZSAqL1xuICAgICAgICBzdHlsZT17cG9wb3ZlclBvc2l0aW9uLnBoeXNpY2FsU3R5bGVzfVxuICAgICAgICB7Li4ucmVzdH1cbiAgICAgIC8+XG4gICAgPC9Gb2N1c1RyYXA+XG4gICk7XG5cbiAgaWYgKGlubGluZSkgcmV0dXJuIGNvbnRlbnQ7XG5cbiAgcmV0dXJuIDxCb2R5UG9ydGFsPntjb250ZW50fTwvQm9keVBvcnRhbD47XG59O1xuIl19 */");
|
|
19
|
+
})), process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9Qb3BvdmVyQ29udGFpbmVyL1BvcG92ZXJDb250YWluZXIudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQWlCdUIiLCJmaWxlIjoiLi4vLi4vc3JjL1BvcG92ZXJDb250YWluZXIvUG9wb3ZlckNvbnRhaW5lci50c3giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBzeXN0ZW0sIHVzZUVsZW1lbnREaXIgfSBmcm9tICdAY29kZWNhZGVteS9nYW11dC1zdHlsZXMnO1xuaW1wb3J0IHsgdmFyaWFuY2UgfSBmcm9tICdAY29kZWNhZGVteS92YXJpYW5jZSc7XG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XG5pbXBvcnQgeyB1c2VDYWxsYmFjaywgdXNlRWZmZWN0LCB1c2VNZW1vLCB1c2VSZWYsIHVzZVN0YXRlIH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0ICogYXMgUmVhY3QgZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgdXNlV2luZG93U2Nyb2xsLCB1c2VXaW5kb3dTaXplIH0gZnJvbSAncmVhY3QtdXNlJztcblxuaW1wb3J0IHsgQm9keVBvcnRhbCB9IGZyb20gJy4uL0JvZHlQb3J0YWwnO1xuaW1wb3J0IHsgRm9jdXNUcmFwIH0gZnJvbSAnLi4vRm9jdXNUcmFwJztcbmltcG9ydCB7XG4gIHVzZVJlc2l6aW5nUGFyZW50RWZmZWN0LFxuICB1c2VTY3JvbGxpbmdQYXJlbnRzLFxuICB1c2VTY3JvbGxpbmdQYXJlbnRzRWZmZWN0LFxufSBmcm9tICcuL2hvb2tzJztcbmltcG9ydCB7IENvbnRhaW5lclN0YXRlLCBQb3BvdmVyQ29udGFpbmVyUHJvcHMgfSBmcm9tICcuL3R5cGVzJztcbmltcG9ydCB7IGdldENvbnRhaW5lcnMsIGdldFBvc2l0aW9uLCBpc091dE9mVmlldyB9IGZyb20gJy4vdXRpbHMnO1xuXG5jb25zdCBQb3BvdmVyQ29udGVudCA9IHN0eWxlZC5kaXYoXG4gIHZhcmlhbmNlLmNvbXBvc2UoXG4gICAgc3lzdGVtLnBvc2l0aW9uaW5nLFxuICAgIHZhcmlhbmNlLmNyZWF0ZSh7XG4gICAgICB0cmFuc2Zvcm06IHtcbiAgICAgICAgcHJvcGVydHk6ICd0cmFuc2Zvcm0nLFxuICAgICAgfSxcbiAgICB9KVxuICApXG4pO1xuXG5leHBvcnQgY29uc3QgUG9wb3ZlckNvbnRhaW5lcjogUmVhY3QuRkM8UG9wb3ZlckNvbnRhaW5lclByb3BzPiA9ICh7XG4gIGFsaWdubWVudCA9ICdib3R0b20tbGVmdCcsXG4gIG9mZnNldCA9IDIwLFxuICB5ID0gMCxcbiAgeCA9IDAsXG4gIGludmVydEF4aXMsXG4gIGlubGluZSA9IGZhbHNlLFxuICBpc09wZW4sXG4gIG9uUmVxdWVzdENsb3NlLFxuICB0YXJnZXRSZWYsXG4gIGFsbG93UGFnZUludGVyYWN0aW9uLFxuICBjbG9zZU9uVmlld3BvcnRFeGl0ID0gZmFsc2UsXG4gIC4uLnJlc3Rcbn0pID0+IHtcbiAgY29uc3QgcG9wb3ZlclJlZiA9IHVzZVJlZjxIVE1MRGl2RWxlbWVudD4obnVsbCk7XG4gIGNvbnN0IGhhc1JlcXVlc3RlZENsb3NlUmVmID0gdXNlUmVmKGZhbHNlKTtcbiAgY29uc3Qgb25SZXF1ZXN0Q2xvc2VSZWYgPSB1c2VSZWYob25SZXF1ZXN0Q2xvc2UpO1xuICBjb25zdCB7IHdpZHRoOiB3aW5XLCBoZWlnaHQ6IHdpbkggfSA9IHVzZVdpbmRvd1NpemUoKTtcbiAgY29uc3QgeyB4OiB3aW5YLCB5OiB3aW5ZIH0gPSB1c2VXaW5kb3dTY3JvbGwoKTtcbiAgY29uc3QgW2NvbnRhaW5lcnMsIHNldENvbnRhaW5lcnNdID0gdXNlU3RhdGU8Q29udGFpbmVyU3RhdGU+KCk7XG4gIGNvbnN0IFt0YXJnZXRSZWN0LCBzZXRUYXJnZXRSZWN0XSA9IHVzZVN0YXRlPERPTVJlY3Q+KCk7XG4gIGNvbnN0IHBhcmVudCA9IGNvbnRhaW5lcnM/LnBhcmVudDtcblxuICAvLyBNZW1vaXplIHNjcm9sbGluZyBwYXJlbnRzIHRvIGF2b2lkIGV4cGVuc2l2ZSBET00gdHJhdmVyc2Fsc1xuICBjb25zdCBzY3JvbGxpbmdQYXJlbnRzID0gdXNlU2Nyb2xsaW5nUGFyZW50cyh0YXJnZXRSZWYpO1xuXG4gIC8vIEtlZXAgb25SZXF1ZXN0Q2xvc2UgcmVmIHVwIHRvIGRhdGVcbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBvblJlcXVlc3RDbG9zZVJlZi5jdXJyZW50ID0gb25SZXF1ZXN0Q2xvc2U7XG4gIH0sIFtvblJlcXVlc3RDbG9zZV0pO1xuXG4gIGNvbnN0IGlzUnRsID0gdXNlRWxlbWVudERpcih0YXJnZXRSZWYpID09PSAncnRsJztcblxuICBjb25zdCBwb3BvdmVyUG9zaXRpb24gPSB1c2VNZW1vKCgpID0+IHtcbiAgICBpZiAocGFyZW50ICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIHJldHVybiBnZXRQb3NpdGlvbih7XG4gICAgICAgIGFsaWdubWVudCxcbiAgICAgICAgY29udGFpbmVyOiBwYXJlbnQsXG4gICAgICAgIGludmVydEF4aXMsXG4gICAgICAgIGlzUnRsLFxuICAgICAgICBvZmZzZXQsXG4gICAgICAgIHgsXG4gICAgICAgIHksXG4gICAgICB9KTtcbiAgICB9XG4gICAgcmV0dXJuIHsgc3R5bGVzOiB7fSwgcGh5c2ljYWxTdHlsZXM6IHVuZGVmaW5lZCB9O1xuICB9LCBbcGFyZW50LCB4LCB5LCBvZmZzZXQsIGFsaWdubWVudCwgaW52ZXJ0QXhpcywgaXNSdGxdKTtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGNvbnN0IHRhcmdldCA9IHRhcmdldFJlZj8uY3VycmVudDtcbiAgICBpZiAoIXRhcmdldCkgcmV0dXJuO1xuICAgIHNldENvbnRhaW5lcnMoZ2V0Q29udGFpbmVycyh0YXJnZXQsIGlubGluZSwgeyB4OiB3aW5YLCB5OiB3aW5ZIH0pKTtcbiAgfSwgW3RhcmdldFJlZiwgaW5saW5lLCB3aW5XLCB3aW5ILCB3aW5YLCB3aW5ZLCB0YXJnZXRSZWN0XSk7XG5cbiAgLy8gVXBkYXRlIHRhcmdldCByZWN0YW5nbGUgd2hlbiB3aW5kb3cgc2l6ZS9zY3JvbGwgY2hhbmdlc1xuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIHNldFRhcmdldFJlY3QodGFyZ2V0UmVmPy5jdXJyZW50Py5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKSk7XG4gIH0sIFt0YXJnZXRSZWYsIGlzT3Blbiwgd2luVywgd2luSCwgd2luWCwgd2luWV0pO1xuXG4gIC8vIFVwZGF0ZSB0YXJnZXQgcmVjdGFuZ2xlIHdoZW4gcGFyZW50IHNpemUvc2Nyb2xsIGNoYW5nZXNcbiAgY29uc3QgdXBkYXRlVGFyZ2V0UG9zaXRpb24gPSB1c2VDYWxsYmFjayhcbiAgICAocmVjdD86IERPTVJlY3QpID0+IHtcbiAgICAgIGNvbnN0IHRhcmdldCA9IHRhcmdldFJlZj8uY3VycmVudDtcbiAgICAgIGlmICghdGFyZ2V0KSByZXR1cm47XG5cbiAgICAgIGNvbnN0IG5ld1JlY3QgPSByZWN0IHx8IHRhcmdldC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcbiAgICAgIHNldFRhcmdldFJlY3QobmV3UmVjdCk7XG5cbiAgICAgIGNvbnN0IGN1cnJlbnRTY3JvbGxYID1cbiAgICAgICAgd2luZG93LnBhZ2VYT2Zmc2V0IHx8IGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5zY3JvbGxMZWZ0O1xuICAgICAgY29uc3QgY3VycmVudFNjcm9sbFkgPVxuICAgICAgICB3aW5kb3cucGFnZVlPZmZzZXQgfHwgZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LnNjcm9sbFRvcDtcblxuICAgICAgc2V0Q29udGFpbmVycyhcbiAgICAgICAgZ2V0Q29udGFpbmVycyh0YXJnZXQsIGlubGluZSwgeyB4OiBjdXJyZW50U2Nyb2xsWCwgeTogY3VycmVudFNjcm9sbFkgfSlcbiAgICAgICk7XG4gICAgfSxcbiAgICBbdGFyZ2V0UmVmLCBpbmxpbmVdXG4gICk7XG5cbiAgdXNlU2Nyb2xsaW5nUGFyZW50c0VmZmVjdCh0YXJnZXRSZWYsIHVwZGF0ZVRhcmdldFBvc2l0aW9uKTtcblxuICB1c2VSZXNpemluZ1BhcmVudEVmZmVjdCh0YXJnZXRSZWYsIHNldFRhcmdldFJlY3QpO1xuXG4gIC8vIEhhbmRsZSBjbG9zZU9uVmlld3BvcnRFeGl0IHdpdGggY2FjaGVkIHNjcm9sbGluZyBwYXJlbnRzIGZvciBwZXJmb3JtYW5jZVxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGlmICghY2xvc2VPblZpZXdwb3J0RXhpdCkgcmV0dXJuO1xuXG4gICAgY29uc3QgcmVjdCA9IHRhcmdldFJlY3QgfHwgY29udGFpbmVycz8udmlld3BvcnQ7XG4gICAgaWYgKCFyZWN0KSByZXR1cm47XG5cbiAgICBjb25zdCBpc091dCA9IGlzT3V0T2ZWaWV3KFxuICAgICAgcmVjdCxcbiAgICAgIHRhcmdldFJlZj8uY3VycmVudCBhcyBIVE1MRWxlbWVudCxcbiAgICAgIHNjcm9sbGluZ1BhcmVudHNcbiAgICApO1xuXG4gICAgaWYgKGlzT3V0ICYmICFoYXNSZXF1ZXN0ZWRDbG9zZVJlZi5jdXJyZW50KSB7XG4gICAgICBoYXNSZXF1ZXN0ZWRDbG9zZVJlZi5jdXJyZW50ID0gdHJ1ZTtcbiAgICAgIG9uUmVxdWVzdENsb3NlUmVmLmN1cnJlbnQ/LigpO1xuICAgIH0gZWxzZSBpZiAoIWlzT3V0KSB7XG4gICAgICBoYXNSZXF1ZXN0ZWRDbG9zZVJlZi5jdXJyZW50ID0gZmFsc2U7XG4gICAgfVxuICB9LCBbXG4gICAgdGFyZ2V0UmVjdCxcbiAgICBjb250YWluZXJzPy52aWV3cG9ydCxcbiAgICB0YXJnZXRSZWYsXG4gICAgY2xvc2VPblZpZXdwb3J0RXhpdCxcbiAgICBzY3JvbGxpbmdQYXJlbnRzLFxuICBdKTtcbiAgLyoqXG4gICAqIEFsbG93cyB0YXJnZXRSZWYgdG8gYmUgb3IgY29udGFpbiBhIGJ1dHRvbiB0aGF0IHRvZ2dsZXMgdGhlIHBvcG92ZXIgb3BlbiBhbmQgY2xvc2VkLlxuICAgKiBXaXRob3V0IHRoaXMgY2hlY2sgaXQgd291bGQgdG9nZ2xlIGNsb3NlZCB0aGVuIGJhY2sgb3BlbiBpbW1lZGlhdGVseS5cbiAgICpcbiAgICovXG4gIGNvbnN0IGhhbmRsZUNsaWNrT3V0c2lkZSA9IHVzZUNhbGxiYWNrKFxuICAgIChlOiBNb3VzZUV2ZW50IHwgVG91Y2hFdmVudCkgPT4ge1xuICAgICAgY29uc3QgdGFyZ2V0ID0gZS50YXJnZXQgYXMgTm9kZTtcbiAgICAgIGNvbnN0IHRhcmdldEVsZW1lbnQgPSB0YXJnZXRSZWYuY3VycmVudDtcblxuICAgICAgaWYgKCF0YXJnZXRFbGVtZW50KSByZXR1cm47XG4gICAgICBpZiAodGFyZ2V0RWxlbWVudC5jb250YWlucyh0YXJnZXQpKSByZXR1cm47XG4gICAgICBpZiAocG9wb3ZlclJlZi5jdXJyZW50Py5jb250YWlucyh0YXJnZXQpKSByZXR1cm47XG5cbiAgICAgIC8vIElmIHdlIGdldCBoZXJlLCBpdCdzIGEgZ2VudWluZSBvdXRzaWRlIGNsaWNrXG4gICAgICBvblJlcXVlc3RDbG9zZT8uKCk7XG4gICAgfSxcbiAgICBbb25SZXF1ZXN0Q2xvc2UsIHRhcmdldFJlZl1cbiAgKTtcblxuICAvKipcbiAgICogQmFja3VwIGNsaWNrIG91dHNpZGUgaGFuZGxlciBmb3IgY2FzZXMgd2hlcmUgRm9jdXNUcmFwIGRldGVjdGlvbiBtaWdodCBiZSBpbnRlcmZlcmVkIHdpdGhcbiAgICogYnkgb3VyIG93biBmbG9hdGluZyBlbGVtZW50c1xuICAgKi9cbiAgY29uc3QgaGFuZGxlR2xvYmFsQ2xpY2tPdXRzaWRlID0gdXNlQ2FsbGJhY2soXG4gICAgKGU6IE1vdXNlRXZlbnQpID0+IHtcbiAgICAgIGNvbnN0IHRhcmdldCA9IGUudGFyZ2V0IGFzIE5vZGU7XG4gICAgICBjb25zdCB0YXJnZXRFbGVtZW50ID0gdGFyZ2V0UmVmLmN1cnJlbnQ7XG5cbiAgICAgIGlmICghdGFyZ2V0RWxlbWVudCB8fCAhaXNPcGVuKSByZXR1cm47XG5cbiAgICAgIGlmIChcbiAgICAgICAgdGFyZ2V0RWxlbWVudC5jb250YWlucyh0YXJnZXQpIHx8XG4gICAgICAgIHBvcG92ZXJSZWYuY3VycmVudD8uY29udGFpbnModGFyZ2V0KVxuICAgICAgKVxuICAgICAgICByZXR1cm47XG5cbiAgICAgIC8vIENoZWNrIGlmIHRoZSBjbGlja2VkIGVsZW1lbnQgaXMgd2l0aGluIGFuIE92ZXJsYXkgY29tcG9uZW50XG4gICAgICBjb25zdCBjbGlja2VkRWxlbWVudCA9IHRhcmdldCBhcyBFbGVtZW50O1xuICAgICAgaWYgKGNsaWNrZWRFbGVtZW50LmNsb3Nlc3QoJ1tkYXRhLWZsb2F0aW5nPVwib3ZlcmxheVwiXScpKSB7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cblxuICAgICAgLy8gQ2hlY2sgaWYgdGhlIGNsaWNrZWQgZWxlbWVudCBpcyB3aXRoaW4gYW5vdGhlciBQb3BvdmVyIG9yIFBvcG92ZXJDb250YWluZXJcbiAgICAgIGNvbnN0IGlzRmxvYXRpbmdFbGVtZW50ID0gY2xpY2tlZEVsZW1lbnQuY2xvc2VzdChcbiAgICAgICAgJ1tkYXRhLWZsb2F0aW5nPVwicG9wb3ZlclwiXSdcbiAgICAgICk7XG4gICAgICBpZiAoXG4gICAgICAgIGlzRmxvYXRpbmdFbGVtZW50ICYmXG4gICAgICAgICFwb3BvdmVyUmVmLmN1cnJlbnQ/LmNvbnRhaW5zKGlzRmxvYXRpbmdFbGVtZW50KVxuICAgICAgKSB7XG4gICAgICAgIG9uUmVxdWVzdENsb3NlPy4oKTtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuXG4gICAgICBvblJlcXVlc3RDbG9zZT8uKCk7XG4gICAgfSxcbiAgICBbb25SZXF1ZXN0Q2xvc2UsIHRhcmdldFJlZiwgaXNPcGVuXVxuICApO1xuXG4gIC8vIEJhY2t1cCBnbG9iYWwgY2xpY2sgbGlzdGVuZXIgZm9yIHdoZW4gYSBQb3BvdmVyIG9yIFBvcG92ZXJDb250YWluZXIgaXMgb3BlblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGlmIChpc09wZW4pIHtcbiAgICAgIC8vIFVzZSBhIHNtYWxsIGRlbGF5IHRvIGVuc3VyZSB0aGlzIGRvZXNuJ3QgaW50ZXJmZXJlIHdpdGggdGhlIEZvY3VzVHJhcCdzIG93biBkZXRlY3Rpb25cbiAgICAgIGNvbnN0IHRpbWVvdXRJZCA9IHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICBkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCdtb3VzZWRvd24nLCBoYW5kbGVHbG9iYWxDbGlja091dHNpZGUsIHRydWUpO1xuICAgICAgfSwgNTApO1xuXG4gICAgICByZXR1cm4gKCkgPT4ge1xuICAgICAgICBjbGVhclRpbWVvdXQodGltZW91dElkKTtcbiAgICAgICAgZG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcihcbiAgICAgICAgICAnbW91c2Vkb3duJyxcbiAgICAgICAgICBoYW5kbGVHbG9iYWxDbGlja091dHNpZGUsXG4gICAgICAgICAgdHJ1ZVxuICAgICAgICApO1xuICAgICAgfTtcbiAgICB9XG4gIH0sIFtpc09wZW4sIGhhbmRsZUdsb2JhbENsaWNrT3V0c2lkZV0pO1xuXG4gIGlmICghaXNPcGVuIHx8ICF0YXJnZXRSZWYpIHJldHVybiBudWxsO1xuXG4gIGNvbnN0IGNvbnRlbnQgPSAoXG4gICAgPEZvY3VzVHJhcFxuICAgICAgYWxsb3dQYWdlSW50ZXJhY3Rpb249e2lubGluZSB8fCBhbGxvd1BhZ2VJbnRlcmFjdGlvbn1cbiAgICAgIG9uQ2xpY2tPdXRzaWRlPXtoYW5kbGVDbGlja091dHNpZGV9XG4gICAgICBvbkVzY2FwZUtleT17b25SZXF1ZXN0Q2xvc2V9XG4gICAgPlxuICAgICAgPFBvcG92ZXJDb250ZW50XG4gICAgICAgIGRhdGEtZmxvYXRpbmc9XCJwb3BvdmVyXCJcbiAgICAgICAgZGF0YS10ZXN0aWQ9XCJwb3BvdmVyLWNvbnRlbnQtY29udGFpbmVyXCJcbiAgICAgICAgcG9zaXRpb249XCJhYnNvbHV0ZVwiXG4gICAgICAgIHJlZj17cG9wb3ZlclJlZn1cbiAgICAgICAgdGFiSW5kZXg9ey0xfVxuICAgICAgICB6SW5kZXg9e2lubGluZSA/IDUgOiAnaW5pdGlhbCd9XG4gICAgICAgIHsuLi5wb3BvdmVyUG9zaXRpb24uc3R5bGVzfVxuICAgICAgICAvKiBQaHlzaWNhbCBpbmxpbmUgc3R5bGUgZm9yIGNlbnRlcmVkIGFsaWdubWVudHMgKHRvcC9ib3R0b20pIHdoZXJlXG4gICAgICAgICAgIGluc2V0LWlubGluZS1zdGFydCB3b3VsZCBpbmNvcnJlY3RseSBmbGlwIHRoZSBjZW50ZXIgcG9pbnQgaW4gUlRMICovXG4gICAgICAgIC8qIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBnYW11dC9uby1pbmxpbmUtc3R5bGUgKi9cbiAgICAgICAgc3R5bGU9e3BvcG92ZXJQb3NpdGlvbi5waHlzaWNhbFN0eWxlc31cbiAgICAgICAgey4uLnJlc3R9XG4gICAgICAvPlxuICAgIDwvRm9jdXNUcmFwPlxuICApO1xuXG4gIGlmIChpbmxpbmUpIHJldHVybiBjb250ZW50O1xuXG4gIHJldHVybiA8Qm9keVBvcnRhbD57Y29udGVudH08L0JvZHlQb3J0YWw+O1xufTtcbiJdfQ== */");
|
|
20
20
|
export const PopoverContainer = ({
|
|
21
21
|
alignment = 'bottom-left',
|
|
22
22
|
offset = 20,
|
|
@@ -71,10 +71,6 @@ export const PopoverContainer = ({
|
|
|
71
71
|
physicalStyles: undefined
|
|
72
72
|
};
|
|
73
73
|
}, [parent, x, y, offset, alignment, invertAxis, isRtl]);
|
|
74
|
-
|
|
75
|
-
// Log logical properties to the console TEST CODE
|
|
76
|
-
const logicalProperties = useLogicalProperties();
|
|
77
|
-
console.log('dir', isRtl, 'logicalProperties', logicalProperties);
|
|
78
74
|
useEffect(() => {
|
|
79
75
|
const target = targetRef?.current;
|
|
80
76
|
if (!target) return;
|
|
@@ -26,17 +26,35 @@ export declare const centerHorizontal: {
|
|
|
26
26
|
readonly my: "auto";
|
|
27
27
|
};
|
|
28
28
|
declare const beakBackgroundRotation: {
|
|
29
|
-
above:
|
|
30
|
-
below:
|
|
31
|
-
right:
|
|
32
|
-
left:
|
|
29
|
+
readonly above: "rotate(45deg)";
|
|
30
|
+
readonly below: "rotate(-135deg)";
|
|
31
|
+
readonly right: "rotate(135deg)";
|
|
32
|
+
readonly left: "rotate(-45deg)";
|
|
33
|
+
};
|
|
34
|
+
type SideCenterBeakSide = 'left' | 'right';
|
|
35
|
+
/**
|
|
36
|
+
* Inline ToolTip / InfoTip: RTL beak rotation on the container that owns `::after`
|
|
37
|
+
* (avoids invalid `::after:dir(rtl)` when the same beak object is merged under `&::after`).
|
|
38
|
+
*/
|
|
39
|
+
export declare const horizontalCenterBeakRtlInline: (side: SideCenterBeakSide) => {
|
|
40
|
+
'&:dir(rtl)': {
|
|
41
|
+
'&::after': {
|
|
42
|
+
transform: "rotate(135deg)" | "rotate(-45deg)";
|
|
43
|
+
};
|
|
44
|
+
};
|
|
45
|
+
};
|
|
46
|
+
/** Popover beak is a real node; `:dir(rtl)` applies on that element (not under `&::after`). */
|
|
47
|
+
export declare const horizontalCenterBeakRtlPopover: (side: SideCenterBeakSide) => {
|
|
48
|
+
'&:dir(rtl)': {
|
|
49
|
+
transform: "rotate(135deg)" | "rotate(-45deg)";
|
|
50
|
+
};
|
|
33
51
|
};
|
|
34
52
|
type GetBeakBackgroundType = {
|
|
35
53
|
alignment: keyof typeof beakBackgroundRotation;
|
|
36
54
|
color: typeof tooltipBgColor | typeof popoverPrimaryBgColor;
|
|
37
55
|
};
|
|
38
56
|
export declare const getBeakBgAndRotation: ({ alignment, color, }: GetBeakBackgroundType) => {
|
|
39
|
-
transform:
|
|
57
|
+
transform: "rotate(45deg)" | "rotate(-135deg)" | "rotate(135deg)" | "rotate(-45deg)";
|
|
40
58
|
backgroundImage: string;
|
|
41
59
|
};
|
|
42
60
|
export declare const beakStylesBase: {
|
|
@@ -44,25 +62,25 @@ export declare const beakStylesBase: {
|
|
|
44
62
|
borderWidth: string;
|
|
45
63
|
};
|
|
46
64
|
export declare const beakTopStyles: {
|
|
47
|
-
transform:
|
|
65
|
+
transform: "rotate(45deg)" | "rotate(-135deg)" | "rotate(135deg)" | "rotate(-45deg)";
|
|
48
66
|
backgroundImage: string;
|
|
49
67
|
borderColor: string;
|
|
50
68
|
borderWidth: string;
|
|
51
69
|
};
|
|
52
70
|
export declare const beakBottomStyles: {
|
|
53
|
-
transform:
|
|
71
|
+
transform: "rotate(45deg)" | "rotate(-135deg)" | "rotate(135deg)" | "rotate(-45deg)";
|
|
54
72
|
backgroundImage: string;
|
|
55
73
|
borderColor: string;
|
|
56
74
|
borderWidth: string;
|
|
57
75
|
};
|
|
58
76
|
export declare const beakRightCenterStyles: {
|
|
59
|
-
transform:
|
|
77
|
+
transform: "rotate(45deg)" | "rotate(-135deg)" | "rotate(135deg)" | "rotate(-45deg)";
|
|
60
78
|
backgroundImage: string;
|
|
61
79
|
borderColor: string;
|
|
62
80
|
borderWidth: string;
|
|
63
81
|
};
|
|
64
82
|
export declare const beakLeftCenterStyles: {
|
|
65
|
-
transform:
|
|
83
|
+
transform: "rotate(45deg)" | "rotate(-135deg)" | "rotate(135deg)" | "rotate(-45deg)";
|
|
66
84
|
backgroundImage: string;
|
|
67
85
|
borderColor: string;
|
|
68
86
|
borderWidth: string;
|
|
@@ -73,7 +91,7 @@ export declare const topStyles: {
|
|
|
73
91
|
};
|
|
74
92
|
export declare const topStylesAfter: {
|
|
75
93
|
readonly bottom: "0.25rem";
|
|
76
|
-
readonly transform:
|
|
94
|
+
readonly transform: "rotate(45deg)" | "rotate(-135deg)" | "rotate(135deg)" | "rotate(-45deg)";
|
|
77
95
|
readonly backgroundImage: string;
|
|
78
96
|
readonly borderColor: string;
|
|
79
97
|
readonly borderWidth: string;
|
|
@@ -103,14 +121,19 @@ export declare const bottomStylesBefore: {
|
|
|
103
121
|
};
|
|
104
122
|
export declare const bottomStylesAfter: {
|
|
105
123
|
readonly top: "0.25rem";
|
|
106
|
-
readonly transform:
|
|
124
|
+
readonly transform: "rotate(45deg)" | "rotate(-135deg)" | "rotate(135deg)" | "rotate(-45deg)";
|
|
107
125
|
readonly backgroundImage: string;
|
|
108
126
|
readonly borderColor: string;
|
|
109
127
|
readonly borderWidth: string;
|
|
110
128
|
};
|
|
111
129
|
export declare const rightAlignStyles: {
|
|
112
|
-
|
|
113
|
-
|
|
130
|
+
'&:dir(rtl)': {
|
|
131
|
+
'&::after': {
|
|
132
|
+
transform: "rotate(135deg)" | "rotate(-45deg)";
|
|
133
|
+
};
|
|
134
|
+
};
|
|
135
|
+
pl: number;
|
|
136
|
+
left: string;
|
|
114
137
|
};
|
|
115
138
|
export declare const horizontalCenterStyles: {
|
|
116
139
|
readonly maxWidth: number;
|
|
@@ -121,8 +144,13 @@ export declare const horizontalCenterStyles: {
|
|
|
121
144
|
readonly minWidth: 4;
|
|
122
145
|
};
|
|
123
146
|
export declare const leftAlignStyles: {
|
|
124
|
-
|
|
125
|
-
|
|
147
|
+
'&:dir(rtl)': {
|
|
148
|
+
'&::after': {
|
|
149
|
+
transform: "rotate(135deg)" | "rotate(-45deg)";
|
|
150
|
+
};
|
|
151
|
+
};
|
|
152
|
+
pr: number;
|
|
153
|
+
right: string;
|
|
126
154
|
};
|
|
127
155
|
export declare const verticalCenterStyles: {
|
|
128
156
|
readonly left: "calc(50% - 4rem)";
|
|
@@ -147,14 +175,14 @@ export declare const rightVertStylesAfter: {
|
|
|
147
175
|
readonly left: "1.5rem";
|
|
148
176
|
};
|
|
149
177
|
export declare const rightAlignStylesAfter: {
|
|
150
|
-
readonly transform:
|
|
178
|
+
readonly transform: "rotate(45deg)" | "rotate(-135deg)" | "rotate(135deg)" | "rotate(-45deg)";
|
|
151
179
|
readonly backgroundImage: string;
|
|
152
180
|
readonly borderColor: string;
|
|
153
181
|
readonly borderWidth: string;
|
|
154
182
|
readonly left: "4px";
|
|
155
183
|
};
|
|
156
184
|
export declare const leftAlignStylesAfter: {
|
|
157
|
-
readonly transform:
|
|
185
|
+
readonly transform: "rotate(45deg)" | "rotate(-135deg)" | "rotate(135deg)" | "rotate(-45deg)";
|
|
158
186
|
readonly backgroundImage: string;
|
|
159
187
|
readonly borderColor: string;
|
|
160
188
|
readonly borderWidth: string;
|
|
@@ -58,6 +58,26 @@ const beakBackgroundRotation = {
|
|
|
58
58
|
right: 'rotate(135deg)',
|
|
59
59
|
left: 'rotate(-45deg)'
|
|
60
60
|
};
|
|
61
|
+
const sideCenterMirroredTransform = side => side === 'right' ? beakBackgroundRotation.left : beakBackgroundRotation.right;
|
|
62
|
+
|
|
63
|
+
/**
|
|
64
|
+
* Inline ToolTip / InfoTip: RTL beak rotation on the container that owns `::after`
|
|
65
|
+
* (avoids invalid `::after:dir(rtl)` when the same beak object is merged under `&::after`).
|
|
66
|
+
*/
|
|
67
|
+
export const horizontalCenterBeakRtlInline = side => ({
|
|
68
|
+
'&:dir(rtl)': {
|
|
69
|
+
'&::after': {
|
|
70
|
+
transform: sideCenterMirroredTransform(side)
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
});
|
|
74
|
+
|
|
75
|
+
/** Popover beak is a real node; `:dir(rtl)` applies on that element (not under `&::after`). */
|
|
76
|
+
export const horizontalCenterBeakRtlPopover = side => ({
|
|
77
|
+
'&:dir(rtl)': {
|
|
78
|
+
transform: sideCenterMirroredTransform(side)
|
|
79
|
+
}
|
|
80
|
+
});
|
|
61
81
|
export const getBeakBgAndRotation = ({
|
|
62
82
|
alignment,
|
|
63
83
|
color
|
|
@@ -137,7 +157,8 @@ export const bottomStylesAfter = {
|
|
|
137
157
|
};
|
|
138
158
|
export const rightAlignStyles = {
|
|
139
159
|
pl: containerOffsetVertical,
|
|
140
|
-
left: '100%'
|
|
160
|
+
left: '100%',
|
|
161
|
+
...horizontalCenterBeakRtlInline('right')
|
|
141
162
|
};
|
|
142
163
|
export const horizontalCenterStyles = {
|
|
143
164
|
...horizontalCenterWidths,
|
|
@@ -150,7 +171,8 @@ export const horizontalCenterStyles = {
|
|
|
150
171
|
};
|
|
151
172
|
export const leftAlignStyles = {
|
|
152
173
|
pr: containerOffsetVertical,
|
|
153
|
-
right: '100%'
|
|
174
|
+
right: '100%',
|
|
175
|
+
...horizontalCenterBeakRtlInline('left')
|
|
154
176
|
};
|
|
155
177
|
export const verticalCenterStyles = {
|
|
156
178
|
...verticalCenterWidths,
|
package/package.json
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@codecademy/gamut",
|
|
3
3
|
"description": "Styleguide & Component library for Codecademy",
|
|
4
|
-
"version": "68.2.3-alpha.
|
|
4
|
+
"version": "68.2.3-alpha.f669d7.0",
|
|
5
5
|
"author": "Codecademy Engineering <dev@codecademy.com>",
|
|
6
6
|
"dependencies": {
|
|
7
|
-
"@codecademy/gamut-icons": "9.57.3-alpha.
|
|
8
|
-
"@codecademy/gamut-illustrations": "0.58.10-alpha.
|
|
9
|
-
"@codecademy/gamut-patterns": "0.10.29-alpha.
|
|
10
|
-
"@codecademy/gamut-styles": "17.13.2-alpha.
|
|
11
|
-
"@codecademy/variance": "0.26.2-alpha.
|
|
7
|
+
"@codecademy/gamut-icons": "9.57.3-alpha.f669d7.0",
|
|
8
|
+
"@codecademy/gamut-illustrations": "0.58.10-alpha.f669d7.0",
|
|
9
|
+
"@codecademy/gamut-patterns": "0.10.29-alpha.f669d7.0",
|
|
10
|
+
"@codecademy/gamut-styles": "17.13.2-alpha.f669d7.0",
|
|
11
|
+
"@codecademy/variance": "0.26.2-alpha.f669d7.0",
|
|
12
12
|
"@react-aria/interactions": "3.25.0",
|
|
13
13
|
"@types/marked": "^4.0.8",
|
|
14
14
|
"@vidstack/react": "^1.12.12",
|