@wireapp/react-ui-kit 8.5.0 → 8.5.3
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/CHANGELOG.md +30 -0
- package/package.json +2 -2
- package/src/Form/Button.d.js +0 -4
- package/src/Form/Button.d.ts +1 -2
- package/src/Form/Button.js +3 -2
- package/src/Form/Button.js.map +1 -1
- package/src/Form/CodeInput.js +2 -1
- package/src/Form/CodeInput.js.map +1 -1
- package/src/Form/Select.js +30 -4
- package/src/Form/Select.js.map +1 -1
- package/src/Form/Select.md +3 -0
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,36 @@
|
|
|
3
3
|
All notable changes to this project will be documented in this file.
|
|
4
4
|
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
|
5
5
|
|
|
6
|
+
## [8.5.3](https://github.com/wireapp/wire-web-packages/tree/main/packages/react-ui-kit/compare/@wireapp/react-ui-kit@8.5.2...@wireapp/react-ui-kit@8.5.3) (2022-06-10)
|
|
7
|
+
|
|
8
|
+
**Note:** Version bump only for package @wireapp/react-ui-kit
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
## [8.5.2](https://github.com/wireapp/wire-web-packages/tree/main/packages/react-ui-kit/compare/@wireapp/react-ui-kit@8.5.1...@wireapp/react-ui-kit@8.5.2) (2022-06-01)
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
### Bug Fixes
|
|
18
|
+
|
|
19
|
+
* Select default value ([#4279](https://github.com/wireapp/wire-web-packages/tree/main/packages/react-ui-kit/issues/4279)) ([2241ecb](https://github.com/wireapp/wire-web-packages/tree/main/packages/react-ui-kit/commit/2241ecbc752bf0fa898f046efe94f84c510d8904))
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
## [8.5.1](https://github.com/wireapp/wire-web-packages/tree/main/packages/react-ui-kit/compare/@wireapp/react-ui-kit@8.5.0...@wireapp/react-ui-kit@8.5.1) (2022-05-31)
|
|
26
|
+
|
|
27
|
+
|
|
28
|
+
### Bug Fixes
|
|
29
|
+
|
|
30
|
+
* add max-height-for-select-dropdown ([#4276](https://github.com/wireapp/wire-web-packages/tree/main/packages/react-ui-kit/issues/4276)) ([084acd7](https://github.com/wireapp/wire-web-packages/tree/main/packages/react-ui-kit/commit/084acd704b870af962a01282652c2dd0925052ee))
|
|
31
|
+
|
|
32
|
+
|
|
33
|
+
|
|
34
|
+
|
|
35
|
+
|
|
6
36
|
# [8.5.0](https://github.com/wireapp/wire-web-packages/tree/main/packages/react-ui-kit/compare/@wireapp/react-ui-kit@8.4.0...@wireapp/react-ui-kit@8.5.0) (2022-05-31)
|
|
7
37
|
|
|
8
38
|
|
package/package.json
CHANGED
|
@@ -67,6 +67,6 @@
|
|
|
67
67
|
"test:update": "yarn test --updateSnapshot",
|
|
68
68
|
"test:project": "yarn dist && yarn test"
|
|
69
69
|
},
|
|
70
|
-
"version": "8.5.
|
|
71
|
-
"gitHead": "
|
|
70
|
+
"version": "8.5.3",
|
|
71
|
+
"gitHead": "21dedc42e39b14e86f0d8eb132d87be1da754480"
|
|
72
72
|
}
|
package/src/Form/Button.d.js
CHANGED
package/src/Form/Button.d.ts
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
import { CSSObject, jsx } from '@emotion/react';
|
|
3
3
|
import type { Theme } from '../Layout';
|
|
4
4
|
import { TextProps } from '../Text';
|
|
5
|
-
declare enum ButtonVariant {
|
|
5
|
+
export declare enum ButtonVariant {
|
|
6
6
|
PRIMARY = "primary",
|
|
7
7
|
SECONDARY = "secondary",
|
|
8
8
|
TERTIARY = "tertiary",
|
|
@@ -18,4 +18,3 @@ export interface ButtonProps<T = HTMLButtonElement> extends TextProps<T> {
|
|
|
18
18
|
export declare const buttonStyle: <T>(theme: Theme, props: ButtonProps<T>) => CSSObject;
|
|
19
19
|
export declare const Button: ({ showLoading, children, loadingColor, ...props }: ButtonProps) => jsx.JSX.Element;
|
|
20
20
|
export declare const filterButtonProps: (props: ButtonProps) => Object;
|
|
21
|
-
export {};
|
package/src/Form/Button.js
CHANGED
|
@@ -5,7 +5,7 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", {
|
|
6
6
|
value: true
|
|
7
7
|
});
|
|
8
|
-
exports.filterButtonProps = exports.Button = exports.buttonStyle = void 0;
|
|
8
|
+
exports.filterButtonProps = exports.Button = exports.buttonStyle = exports.ButtonVariant = void 0;
|
|
9
9
|
|
|
10
10
|
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
11
11
|
|
|
@@ -33,13 +33,14 @@ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (O
|
|
|
33
33
|
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
|
|
34
34
|
|
|
35
35
|
var ButtonVariant;
|
|
36
|
+
exports.ButtonVariant = ButtonVariant;
|
|
36
37
|
|
|
37
38
|
(function (ButtonVariant) {
|
|
38
39
|
ButtonVariant["PRIMARY"] = "primary";
|
|
39
40
|
ButtonVariant["SECONDARY"] = "secondary";
|
|
40
41
|
ButtonVariant["TERTIARY"] = "tertiary";
|
|
41
42
|
ButtonVariant["SEND"] = "send";
|
|
42
|
-
})(ButtonVariant || (ButtonVariant = {}));
|
|
43
|
+
})(ButtonVariant || (exports.ButtonVariant = ButtonVariant = {}));
|
|
43
44
|
|
|
44
45
|
var buttonStyle = function buttonStyle(theme, _ref) {
|
|
45
46
|
var _ref$variant = _ref.variant,
|
package/src/Form/Button.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["Button.tsx"],"names":["ButtonVariant","buttonStyle","theme","variant","PRIMARY","backgroundColor","block","disabled","noCapital","bold","center","color","COLOR","WHITE","fontSize","noWrap","textTransform","truncate","props","border","cursor","display","alignItems","justifyContent","marginBottom","padding","outline","textDecoration","touchAction","transition","defaultTransition","width","TERTIARY","borderRadius","SEND","height","lineHeight","maxWidth","minWidth","COLOR_V2","GRAY_50","BLUE","GRAY_80","BLUE_LIGHT_600","BLUE_LIGHT_700","SECONDARY","GRAY_20","GRAY_40","GRAY_60","BLACK","BLUE_LIGHT_50","BLUE_LIGHT_300","GRAY_70","BLUE_LIGHT_800","Button","showLoading","children","loadingColor","filterButtonProps","margin"],"mappings":"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","sourcesContent":["/*\n * Wire\n * Copyright (C) 2018 Wire Swiss GmbH\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU General Public License as published by\n * the Free Software Foundation, either version 3 of the License, or\n * (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU General Public License for more details.\n *\n * You should have received a copy of the GNU General Public License\n * along with this program. If not, see http://www.gnu.org/licenses/.\n *\n */\n\n/** @jsx jsx */\nimport {CSSObject, jsx} from '@emotion/react';\n\nimport {COLOR, COLOR_V2} from '../Identity';\nimport {defaultTransition} from '../Identity/motions';\nimport type {Theme} from '../Layout';\nimport {Loading} from '../Misc';\nimport {TextProps, filterTextProps, textStyle} from '../Text';\nimport {filterProps} from '../util';\n\nenum ButtonVariant {\n PRIMARY = 'primary',\n SECONDARY = 'secondary',\n TERTIARY = 'tertiary',\n SEND = 'send',\n}\n\nexport interface ButtonProps<T = HTMLButtonElement> extends TextProps<T> {\n variant?: ButtonVariant;\n backgroundColor?: string;\n loadingColor?: string;\n noCapital?: boolean;\n showLoading?: boolean;\n}\n\nexport const buttonStyle: <T>(theme: Theme, props: ButtonProps<T>) => CSSObject = (\n theme,\n {\n variant = ButtonVariant.PRIMARY,\n backgroundColor,\n block = false,\n disabled = false,\n noCapital = false,\n bold = true,\n center = true,\n color = COLOR.WHITE,\n fontSize = '16px',\n noWrap = true,\n textTransform = 'none',\n truncate = true,\n ...props\n },\n) => ({\n ...textStyle(theme, {\n block,\n bold,\n center,\n disabled,\n fontSize,\n noWrap,\n textTransform,\n truncate,\n ...props,\n }),\n border: 0,\n cursor: disabled ? 'default' : 'pointer',\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n marginBottom: '16px',\n padding: 0,\n outline: 'none',\n textDecoration: 'none',\n touchAction: 'manipulation',\n transition: defaultTransition,\n width: block ? '100%' : 'auto',\n '&:hover, &:focus': {\n textDecoration: 'none',\n },\n ...(variant !== ButtonVariant.TERTIARY && {\n borderRadius: variant === ButtonVariant.SEND ? '100%' : '16px',\n height: variant === ButtonVariant.SEND ? '40px' : '48px',\n lineHeight: variant === ButtonVariant.SEND ? '40px' : '48px',\n ...(variant !== ButtonVariant.SEND && {\n maxWidth: '100%',\n minWidth: '125px',\n padding: '0 16px',\n }),\n }),\n ...(variant === ButtonVariant.PRIMARY && {\n backgroundColor: backgroundColor || disabled ? COLOR_V2.GRAY_50 : COLOR_V2.BLUE,\n color: disabled ? COLOR_V2.GRAY_80 : COLOR_V2.WHITE,\n ...(!disabled && {\n '&:hover, &:focus': {\n backgroundColor: COLOR_V2.BLUE_LIGHT_600,\n },\n '&:focus': {\n border: `1px solid ${COLOR_V2.BLUE_LIGHT_700}`,\n },\n '&:active': {\n backgroundColor: COLOR_V2.BLUE_LIGHT_700,\n },\n }),\n }),\n ...(variant === ButtonVariant.SECONDARY && {\n backgroundColor: backgroundColor || disabled ? COLOR_V2.GRAY_20 : COLOR_V2.WHITE,\n border: `1px solid ${COLOR_V2.GRAY_40}`,\n color: disabled ? COLOR_V2.GRAY_60 : COLOR_V2.BLACK,\n ...(!disabled && {\n '&:hover, &:focus': {\n border: `1px solid ${COLOR_V2.BLUE}`,\n },\n '&:focus': {\n color: COLOR_V2.BLUE,\n },\n '&:active': {\n backgroundColor: COLOR_V2.BLUE_LIGHT_50,\n border: `1px solid ${COLOR_V2.BLUE}`,\n color: COLOR_V2.BLUE,\n },\n }),\n }),\n ...(variant === ButtonVariant.TERTIARY && {\n color: disabled ? COLOR_V2.GRAY_60 : COLOR_V2.BLACK,\n lineHeight: '24px',\n ...(!disabled && {\n '&:hover, &:focus': {\n color: COLOR_V2.BLUE,\n },\n '&:focus': {\n border: `1px solid ${COLOR_V2.BLUE_LIGHT_300}`,\n },\n }),\n }),\n ...(variant === ButtonVariant.SEND && {\n backgroundColor: backgroundColor || disabled ? COLOR_V2.GRAY_70 : COLOR_V2.BLUE,\n width: '40px',\n ...(!disabled && {\n '&:hover, &:focus': {\n backgroundColor: COLOR_V2.BLUE_LIGHT_600,\n },\n '&:focus': {\n border: `1px solid ${COLOR_V2.BLUE_LIGHT_800}`,\n },\n '&:active': {\n backgroundColor: COLOR_V2.BLUE_LIGHT_700,\n },\n }),\n }),\n});\n\nexport const Button = ({showLoading, children, loadingColor = COLOR.WHITE, ...props}: ButtonProps) => (\n <button css={(theme: Theme) => buttonStyle(theme, props)} {...filterButtonProps(props)}>\n {showLoading ? <Loading size={30} color={loadingColor} style={{display: 'flex', margin: 'auto'}} /> : children}\n </button>\n);\n\nexport const filterButtonProps = (props: ButtonProps) => {\n return filterProps(filterTextProps(props) as ButtonProps, ['backgroundColor', 'noCapital']);\n};\n"],"file":"Button.js"}
|
|
1
|
+
{"version":3,"sources":["Button.tsx"],"names":["ButtonVariant","buttonStyle","theme","variant","PRIMARY","backgroundColor","block","disabled","noCapital","bold","center","color","COLOR","WHITE","fontSize","noWrap","textTransform","truncate","props","border","cursor","display","alignItems","justifyContent","marginBottom","padding","outline","textDecoration","touchAction","transition","defaultTransition","width","TERTIARY","borderRadius","SEND","height","lineHeight","maxWidth","minWidth","COLOR_V2","GRAY_50","BLUE","GRAY_80","BLUE_LIGHT_600","BLUE_LIGHT_700","SECONDARY","GRAY_20","GRAY_40","GRAY_60","BLACK","BLUE_LIGHT_50","BLUE_LIGHT_300","GRAY_70","BLUE_LIGHT_800","Button","showLoading","children","loadingColor","filterButtonProps","margin"],"mappings":"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","sourcesContent":["/*\n * Wire\n * Copyright (C) 2018 Wire Swiss GmbH\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU General Public License as published by\n * the Free Software Foundation, either version 3 of the License, or\n * (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU General Public License for more details.\n *\n * You should have received a copy of the GNU General Public License\n * along with this program. If not, see http://www.gnu.org/licenses/.\n *\n */\n\n/** @jsx jsx */\nimport {CSSObject, jsx} from '@emotion/react';\n\nimport {COLOR, COLOR_V2} from '../Identity';\nimport {defaultTransition} from '../Identity/motions';\nimport type {Theme} from '../Layout';\nimport {Loading} from '../Misc';\nimport {TextProps, filterTextProps, textStyle} from '../Text';\nimport {filterProps} from '../util';\n\nexport enum ButtonVariant {\n PRIMARY = 'primary',\n SECONDARY = 'secondary',\n TERTIARY = 'tertiary',\n SEND = 'send',\n}\n\nexport interface ButtonProps<T = HTMLButtonElement> extends TextProps<T> {\n variant?: ButtonVariant;\n backgroundColor?: string;\n loadingColor?: string;\n noCapital?: boolean;\n showLoading?: boolean;\n}\n\nexport const buttonStyle: <T>(theme: Theme, props: ButtonProps<T>) => CSSObject = (\n theme,\n {\n variant = ButtonVariant.PRIMARY,\n backgroundColor,\n block = false,\n disabled = false,\n noCapital = false,\n bold = true,\n center = true,\n color = COLOR.WHITE,\n fontSize = '16px',\n noWrap = true,\n textTransform = 'none',\n truncate = true,\n ...props\n },\n) => ({\n ...textStyle(theme, {\n block,\n bold,\n center,\n disabled,\n fontSize,\n noWrap,\n textTransform,\n truncate,\n ...props,\n }),\n border: 0,\n cursor: disabled ? 'default' : 'pointer',\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n marginBottom: '16px',\n padding: 0,\n outline: 'none',\n textDecoration: 'none',\n touchAction: 'manipulation',\n transition: defaultTransition,\n width: block ? '100%' : 'auto',\n '&:hover, &:focus': {\n textDecoration: 'none',\n },\n ...(variant !== ButtonVariant.TERTIARY && {\n borderRadius: variant === ButtonVariant.SEND ? '100%' : '16px',\n height: variant === ButtonVariant.SEND ? '40px' : '48px',\n lineHeight: variant === ButtonVariant.SEND ? '40px' : '48px',\n ...(variant !== ButtonVariant.SEND && {\n maxWidth: '100%',\n minWidth: '125px',\n padding: '0 16px',\n }),\n }),\n ...(variant === ButtonVariant.PRIMARY && {\n backgroundColor: backgroundColor || disabled ? COLOR_V2.GRAY_50 : COLOR_V2.BLUE,\n color: disabled ? COLOR_V2.GRAY_80 : COLOR_V2.WHITE,\n ...(!disabled && {\n '&:hover, &:focus': {\n backgroundColor: COLOR_V2.BLUE_LIGHT_600,\n },\n '&:focus': {\n border: `1px solid ${COLOR_V2.BLUE_LIGHT_700}`,\n },\n '&:active': {\n backgroundColor: COLOR_V2.BLUE_LIGHT_700,\n },\n }),\n }),\n ...(variant === ButtonVariant.SECONDARY && {\n backgroundColor: backgroundColor || disabled ? COLOR_V2.GRAY_20 : COLOR_V2.WHITE,\n border: `1px solid ${COLOR_V2.GRAY_40}`,\n color: disabled ? COLOR_V2.GRAY_60 : COLOR_V2.BLACK,\n ...(!disabled && {\n '&:hover, &:focus': {\n border: `1px solid ${COLOR_V2.BLUE}`,\n },\n '&:focus': {\n color: COLOR_V2.BLUE,\n },\n '&:active': {\n backgroundColor: COLOR_V2.BLUE_LIGHT_50,\n border: `1px solid ${COLOR_V2.BLUE}`,\n color: COLOR_V2.BLUE,\n },\n }),\n }),\n ...(variant === ButtonVariant.TERTIARY && {\n color: disabled ? COLOR_V2.GRAY_60 : COLOR_V2.BLACK,\n lineHeight: '24px',\n ...(!disabled && {\n '&:hover, &:focus': {\n color: COLOR_V2.BLUE,\n },\n '&:focus': {\n border: `1px solid ${COLOR_V2.BLUE_LIGHT_300}`,\n },\n }),\n }),\n ...(variant === ButtonVariant.SEND && {\n backgroundColor: backgroundColor || disabled ? COLOR_V2.GRAY_70 : COLOR_V2.BLUE,\n width: '40px',\n ...(!disabled && {\n '&:hover, &:focus': {\n backgroundColor: COLOR_V2.BLUE_LIGHT_600,\n },\n '&:focus': {\n border: `1px solid ${COLOR_V2.BLUE_LIGHT_800}`,\n },\n '&:active': {\n backgroundColor: COLOR_V2.BLUE_LIGHT_700,\n },\n }),\n }),\n});\n\nexport const Button = ({showLoading, children, loadingColor = COLOR.WHITE, ...props}: ButtonProps) => (\n <button css={(theme: Theme) => buttonStyle(theme, props)} {...filterButtonProps(props)}>\n {showLoading ? <Loading size={30} color={loadingColor} style={{display: 'flex', margin: 'auto'}} /> : children}\n </button>\n);\n\nexport const filterButtonProps = (props: ButtonProps) => {\n return filterProps(filterTextProps(props) as ButtonProps, ['backgroundColor', 'noCapital']);\n};\n"],"file":"Button.js"}
|
package/src/Form/CodeInput.js
CHANGED
|
@@ -41,7 +41,7 @@ var _ref = process.env.NODE_ENV === "production" ? {
|
|
|
41
41
|
} : {
|
|
42
42
|
name: "tvpiqi-CodeInputWrapper",
|
|
43
43
|
styles: "display:flex;justify-content:center;label:CodeInputWrapper;",
|
|
44
|
-
map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkNvZGVJbnB1dC50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBOEJJIiwiZmlsZSI6IkNvZGVJbnB1dC50c3giLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogV2lyZVxuICogQ29weXJpZ2h0IChDKSAyMDE4IFdpcmUgU3dpc3MgR21iSFxuICpcbiAqIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOiB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5XG4gKiBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieVxuICogdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3JcbiAqIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uXG4gKlxuICogVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsXG4gKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZlxuICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiBTZWUgdGhlXG4gKiBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLlxuICpcbiAqIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlXG4gKiBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gSWYgbm90LCBzZWUgaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLy5cbiAqXG4gKi9cblxuLyoqIEBqc3gganN4ICovXG5pbXBvcnQge0NTU09iamVjdCwganN4fSBmcm9tICdAZW1vdGlvbi9yZWFjdCc7XG5pbXBvcnQgUmVhY3QsIHt1c2VFZmZlY3QsIHVzZVN0YXRlfSBmcm9tICdyZWFjdCc7XG5cbmltcG9ydCB0eXBlIHtUaGVtZX0gZnJvbSAnLi4vTGF5b3V0JztcbmltcG9ydCB7bm9vcH0gZnJvbSAnLi4vdXRpbCc7XG5pbXBvcnQge0lucHV0UHJvcHMsIGlucHV0U3R5bGV9IGZyb20gJy4vSW5wdXQnO1xuaW1wb3J0IHtDT0xPUl9WMn0gZnJvbSAnLi4vSWRlbnRpdHknO1xuXG5jb25zdCBDb2RlSW5wdXRXcmFwcGVyID0gKHByb3BzOiBSZWFjdC5IVE1MUHJvcHM8SFRNTERpdkVsZW1lbnQ+KSA9PiAoXG4gIDxkaXZcbiAgICBjc3M9e3tcbiAgICAgIGRpc3BsYXk6ICdmbGV4JyxcbiAgICAgIGp1c3RpZnlDb250ZW50OiAnY2VudGVyJyxcbiAgICB9fVxuICAgIHsuLi5wcm9wc31cbiAgLz5cbik7XG5cbnR5cGUgRGlnaXRJbnB1dFByb3BzPFQgPSBIVE1MSW5wdXRFbGVtZW50PiA9IElucHV0UHJvcHM8VD47XG5cbmNvbnN0IGRpZ2l0SW5wdXRTdHlsZTogPFQ+
|
|
44
|
+
map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkNvZGVJbnB1dC50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBOEJJIiwiZmlsZSI6IkNvZGVJbnB1dC50c3giLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogV2lyZVxuICogQ29weXJpZ2h0IChDKSAyMDE4IFdpcmUgU3dpc3MgR21iSFxuICpcbiAqIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOiB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5XG4gKiBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieVxuICogdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3JcbiAqIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uXG4gKlxuICogVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsXG4gKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZlxuICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiBTZWUgdGhlXG4gKiBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLlxuICpcbiAqIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlXG4gKiBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gSWYgbm90LCBzZWUgaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLy5cbiAqXG4gKi9cblxuLyoqIEBqc3gganN4ICovXG5pbXBvcnQge0NTU09iamVjdCwganN4fSBmcm9tICdAZW1vdGlvbi9yZWFjdCc7XG5pbXBvcnQgUmVhY3QsIHt1c2VFZmZlY3QsIHVzZVN0YXRlfSBmcm9tICdyZWFjdCc7XG5cbmltcG9ydCB0eXBlIHtUaGVtZX0gZnJvbSAnLi4vTGF5b3V0JztcbmltcG9ydCB7bm9vcH0gZnJvbSAnLi4vdXRpbCc7XG5pbXBvcnQge0lucHV0UHJvcHMsIGlucHV0U3R5bGV9IGZyb20gJy4vSW5wdXQnO1xuaW1wb3J0IHtDT0xPUl9WMn0gZnJvbSAnLi4vSWRlbnRpdHknO1xuXG5jb25zdCBDb2RlSW5wdXRXcmFwcGVyID0gKHByb3BzOiBSZWFjdC5IVE1MUHJvcHM8SFRNTERpdkVsZW1lbnQ+KSA9PiAoXG4gIDxkaXZcbiAgICBjc3M9e3tcbiAgICAgIGRpc3BsYXk6ICdmbGV4JyxcbiAgICAgIGp1c3RpZnlDb250ZW50OiAnY2VudGVyJyxcbiAgICB9fVxuICAgIHsuLi5wcm9wc31cbiAgLz5cbik7XG5cbnR5cGUgRGlnaXRJbnB1dFByb3BzPFQgPSBIVE1MSW5wdXRFbGVtZW50PiA9IElucHV0UHJvcHM8VD47XG5cbmNvbnN0IGRpZ2l0SW5wdXRTdHlsZTogPFQ+KHRoZW1lOiBUaGVtZSwgcHJvcHM6IERpZ2l0SW5wdXRQcm9wczxUPikgPT4gQ1NTT2JqZWN0ID0gKHRoZW1lLCBwcm9wcykgPT4gKHtcbiAgLi4uaW5wdXRTdHlsZSh0aGVtZSwgcHJvcHMpLFxuICAnJiArICYnOiB7XG4gICAgbWFyZ2luTGVmdDogJzE5cHgnLFxuICB9LFxuICAnJjpob3Zlcic6IHtcbiAgICBib3hTaGFkb3c6IGAwIDAgMCAxcHggJHtDT0xPUl9WMi5HUkFZXzYwfWAsXG4gIH0sXG4gIGZvbnRTaXplOiAnMjRweCcsXG4gIGxpbmVIZWlnaHQ6ICcyOHB4JyxcbiAgYm9yZGVyUmFkaXVzOiAnMTJweCcsXG4gIHBhZGRpbmc6IDAsXG4gIHRleHRBbGlnbjogJ2NlbnRlcicsXG4gIHdpZHRoOiAnNDhweCcsXG4gIGhlaWdodDogJzU2cHgnLFxufSk7XG5cbmNvbnN0IERpZ2l0SW5wdXQ6IFJlYWN0LkZDPERpZ2l0SW5wdXRQcm9wczxIVE1MSW5wdXRFbGVtZW50Pj4gPSBSZWFjdC5mb3J3YXJkUmVmPFxuICBIVE1MSW5wdXRFbGVtZW50LFxuICBEaWdpdElucHV0UHJvcHM8SFRNTElucHV0RWxlbWVudD5cbj4oKHByb3BzLCByZWYpID0+IDxpbnB1dCByZWY9e3JlZn0gY3NzPXsodGhlbWU6IFRoZW1lKSA9PiBkaWdpdElucHV0U3R5bGUodGhlbWUsIHByb3BzKX0gey4uLnByb3BzfSB0eXBlPVwidGVsXCIgLz4pO1xuXG5leHBvcnQgaW50ZXJmYWNlIENvZGVJbnB1dFByb3BzPFQgPSBIVE1MSW5wdXRFbGVtZW50PiBleHRlbmRzIElucHV0UHJvcHM8VD4ge1xuICBhdXRvRm9jdXM/OiBib29sZWFuO1xuICBkaWdpdHM/OiBudW1iZXI7XG4gIG1hcmtJbnZhbGlkPzogYm9vbGVhbjtcbiAgb25Db2RlQ29tcGxldGU/OiAoY29tcGxldGVDb2RlPzogc3RyaW5nKSA9PiB2b2lkO1xufVxuXG5leHBvcnQgY29uc3QgQ29kZUlucHV0ID0gKHtcbiAgc3R5bGUsXG4gIGRpZ2l0cyA9IDYsXG4gIGF1dG9Gb2N1cyA9IGZhbHNlLFxuICBtYXJrSW52YWxpZCxcbiAgb25Db2RlQ29tcGxldGUgPSBub29wLFxuICBkaXNhYmxlZCxcbn06IENvZGVJbnB1dFByb3BzKSA9PiB7XG4gIGNvbnN0IFt2YWx1ZXMsIHNldFZhbHVlc10gPSB1c2VTdGF0ZShBcnJheShkaWdpdHMpLmZpbGwoJycpKTtcbiAgY29uc3QgaW5wdXRzID0gQXJyYXkoZGlnaXRzKTtcblxuICBjb25zdCBmb3JjZVNlbGVjdGlvbiA9IChcbiAgICBldmVudDpcbiAgICAgIHwgUmVhY3QuTW91c2VFdmVudDxIVE1MSW5wdXRFbGVtZW50PlxuICAgICAgfCBSZWFjdC5Ub3VjaEV2ZW50PEhUTUxJbnB1dEVsZW1lbnQ+XG4gICAgICB8IFJlYWN0LktleWJvYXJkRXZlbnQ8SFRNTElucHV0RWxlbWVudD5cbiAgICAgIHwgUmVhY3QuRm9jdXNFdmVudDxIVE1MSW5wdXRFbGVtZW50PixcbiAgKSA9PiB7XG4gICAgY29uc3QgdGFyZ2V0ID0gZXZlbnQudGFyZ2V0IGFzIEhUTUxJbnB1dEVsZW1lbnQ7XG4gICAgdGFyZ2V0LnNlbGVjdCgpO1xuICB9O1xuXG4gIGNvbnN0IGZvcmNlU2VsZWN0aW9uUHJldmVudERlZmF1bHQgPSAoXG4gICAgZXZlbnQ6IFJlYWN0Lk1vdXNlRXZlbnQ8SFRNTElucHV0RWxlbWVudD4gfCBSZWFjdC5Ub3VjaEV2ZW50PEhUTUxJbnB1dEVsZW1lbnQ+LFxuICApID0+IHtcbiAgICBmb3JjZVNlbGVjdGlvbihldmVudCk7XG4gICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgfTtcblxuICBjb25zdCBuZXh0RmllbGQgPSAoY3VycmVudEZpZWxkSW5kZXg6IG51bWJlcikgPT4ge1xuICAgIGNvbnN0IG5leHRGaWVsZEluZGV4ID0gY3VycmVudEZpZWxkSW5kZXggKyAxO1xuICAgIGlmIChuZXh0RmllbGRJbmRleCA8IGRpZ2l0cykge1xuICAgICAgaW5wdXRzW25leHRGaWVsZEluZGV4XS5mb2N1cygpO1xuICAgIH1cbiAgfTtcblxuICBjb25zdCBwcmV2aW91c0ZpZWxkID0gKGN1cnJlbnRGaWVsZEluZGV4OiBudW1iZXIpID0+IHtcbiAgICBpZiAoY3VycmVudEZpZWxkSW5kZXggPiAwKSB7XG4gICAgICBpbnB1dHNbY3VycmVudEZpZWxkSW5kZXggLSAxXS5mb2N1cygpO1xuICAgIH1cbiAgfTtcblxuICBjb25zdCBzZXRWYWx1ZSA9IChmaWVsZEluZGV4OiBudW1iZXIsIHZhbHVlOiBzdHJpbmcpID0+IHtcbiAgICBpZiAoL15bMC05XT8kLy50ZXN0KHZhbHVlKSkge1xuICAgICAgY29uc3QgdmFsdWVzQ29weSA9IHZhbHVlcy5zbGljZSgpO1xuICAgICAgdmFsdWVzQ29weVtmaWVsZEluZGV4XSA9IHZhbHVlO1xuICAgICAgc2V0VmFsdWVzKHZhbHVlc0NvcHkpO1xuICAgICAgaWYgKHZhbHVlLmxlbmd0aCkge1xuICAgICAgICBuZXh0RmllbGQoZmllbGRJbmRleCk7XG4gICAgICB9XG4gICAgfVxuICB9O1xuXG4gIGNvbnN0IGhhbmRsZUtleURvd24gPSAoZmllbGRJbmRleDogbnVtYmVyLCB7a2V5fTogUmVhY3QuS2V5Ym9hcmRFdmVudDxIVE1MSW5wdXRFbGVtZW50PikgPT4ge1xuICAgIHN3aXRjaCAoa2V5KSB7XG4gICAgICBjYXNlICdCYWNrc3BhY2UnOlxuICAgICAgICBzZXRWYWx1ZShmaWVsZEluZGV4LCAnJyk7XG4gICAgICAgIHByZXZpb3VzRmllbGQoZmllbGRJbmRleCk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSAnQXJyb3dMZWZ0JzpcbiAgICAgICAgcHJldmlvdXNGaWVsZChmaWVsZEluZGV4KTtcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlICdBcnJvd1JpZ2h0JzpcbiAgICAgICAgbmV4dEZpZWxkKGZpZWxkSW5kZXgpO1xuICAgICAgICBicmVhaztcbiAgICB9XG4gICAgaWYgKC9eWzAtOV0kLy50ZXN0KGtleSkpIHtcbiAgICAgIHNldFZhbHVlKGZpZWxkSW5kZXgsIGtleSk7XG4gICAgfVxuICB9O1xuXG4gIGNvbnN0IGhhbmRsZVBhc3RlID0gKGZpZWxkSW5kZXg6IG51bWJlciwgZXZlbnQ6IFJlYWN0LkNsaXBib2FyZEV2ZW50PEhUTUxJbnB1dEVsZW1lbnQ+KSA9PiB7XG4gICAgY29uc3QgcGFzdGVkVmFsdWUgPSBldmVudC5jbGlwYm9hcmREYXRhLmdldERhdGEoJ1RleHQnKTtcbiAgICBjb25zdCBjbGVhbmVkUGFzdGUgPSBwYXN0ZWRWYWx1ZS5yZXBsYWNlKC9bXjAtOV0vZywgJycpO1xuICAgIGlmICgvXlswLTldKyQvLnRlc3QoY2xlYW5lZFBhc3RlKSkge1xuICAgICAgc2V0VmFsdWVzKHZhbHVlcy5zbGljZSgwLCBmaWVsZEluZGV4KS5jb25jYXQoY2xlYW5lZFBhc3RlLnNwbGl0KCcnKSkuc2xpY2UoMCwgZGlnaXRzKSk7XG4gICAgfVxuICB9O1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgY29uc3QgY29tcGxldGVDb2RlID0gdmFsdWVzLmpvaW4oJycpO1xuICAgIGlmIChjb21wbGV0ZUNvZGUubGVuZ3RoID09PSBkaWdpdHMpIHtcbiAgICAgIG9uQ29kZUNvbXBsZXRlKGNvbXBsZXRlQ29kZSk7XG4gICAgfVxuICB9LCBbdmFsdWVzXSk7XG5cbiAgcmV0dXJuIChcbiAgICA8Q29kZUlucHV0V3JhcHBlciBzdHlsZT17c3R5bGV9PlxuICAgICAge0FycmF5LmZyb20oe2xlbmd0aDogZGlnaXRzfSwgKF8sIGluZGV4KSA9PiAoXG4gICAgICAgIDxEaWdpdElucHV0XG4gICAgICAgICAgYXV0b0ZvY3VzPXtpbmRleCA9PT0gMCAmJiBhdXRvRm9jdXN9XG4gICAgICAgICAga2V5PXtpbmRleH1cbiAgICAgICAgICBvblBhc3RlPXtldmVudCA9PiBoYW5kbGVQYXN0ZShpbmRleCwgZXZlbnQpfVxuICAgICAgICAgIG9uRm9jdXM9e2ZvcmNlU2VsZWN0aW9ufVxuICAgICAgICAgIG9uTW91c2VEb3duPXtmb3JjZVNlbGVjdGlvblByZXZlbnREZWZhdWx0fVxuICAgICAgICAgIG9uVG91Y2hTdGFydD17Zm9yY2VTZWxlY3Rpb25QcmV2ZW50RGVmYXVsdH1cbiAgICAgICAgICBvbktleURvd249e2V2ZW50ID0+IGhhbmRsZUtleURvd24oaW5kZXgsIGV2ZW50KX1cbiAgICAgICAgICBvbktleVVwPXtmb3JjZVNlbGVjdGlvbn1cbiAgICAgICAgICBtYXJrSW52YWxpZD17bWFya0ludmFsaWR9XG4gICAgICAgICAgcmVmPXtub2RlID0+IChpbnB1dHNbaW5kZXhdID0gbm9kZSl9XG4gICAgICAgICAgdmFsdWU9e3ZhbHVlc1tpbmRleF19XG4gICAgICAgICAgb25DaGFuZ2U9eygpID0+IHt9fVxuICAgICAgICAgIGRpc2FibGVkPXtkaXNhYmxlZH1cbiAgICAgICAgLz5cbiAgICAgICkpfVxuICAgIDwvQ29kZUlucHV0V3JhcHBlcj5cbiAgKTtcbn07XG4iXX0= */",
|
|
45
45
|
toString: _EMOTION_STRINGIFIED_CSS_ERROR__
|
|
46
46
|
};
|
|
47
47
|
|
|
@@ -61,6 +61,7 @@ var digitInputStyle = function digitInputStyle(theme, props) {
|
|
|
61
61
|
},
|
|
62
62
|
fontSize: '24px',
|
|
63
63
|
lineHeight: '28px',
|
|
64
|
+
borderRadius: '12px',
|
|
64
65
|
padding: 0,
|
|
65
66
|
textAlign: 'center',
|
|
66
67
|
width: '48px',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["CodeInput.tsx"],"names":["CodeInputWrapper","props","digitInputStyle","theme","marginLeft","boxShadow","COLOR_V2","GRAY_60","fontSize","lineHeight","padding","textAlign","width","height","DigitInput","React","forwardRef","ref","CodeInput","style","digits","autoFocus","markInvalid","onCodeComplete","noop","disabled","Array","fill","values","setValues","inputs","forceSelection","event","target","select","forceSelectionPreventDefault","preventDefault","nextField","currentFieldIndex","nextFieldIndex","focus","previousField","setValue","fieldIndex","value","test","valuesCopy","slice","length","handleKeyDown","key","handlePaste","pastedValue","clipboardData","getData","cleanedPaste","replace","concat","split","completeCode","join","from","_","index","node"],"mappings":"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","sourcesContent":["/*\n * Wire\n * Copyright (C) 2018 Wire Swiss GmbH\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU General Public License as published by\n * the Free Software Foundation, either version 3 of the License, or\n * (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU General Public License for more details.\n *\n * You should have received a copy of the GNU General Public License\n * along with this program. If not, see http://www.gnu.org/licenses/.\n *\n */\n\n/** @jsx jsx */\nimport {CSSObject, jsx} from '@emotion/react';\nimport React, {useEffect, useState} from 'react';\n\nimport type {Theme} from '../Layout';\nimport {noop} from '../util';\nimport {InputProps, inputStyle} from './Input';\nimport {COLOR_V2} from '../Identity';\n\nconst CodeInputWrapper = (props: React.HTMLProps<HTMLDivElement>) => (\n <div\n css={{\n display: 'flex',\n justifyContent: 'center',\n }}\n {...props}\n />\n);\n\ntype DigitInputProps<T = HTMLInputElement> = InputProps<T>;\n\nconst digitInputStyle: <T>(theme: Theme, props: DigitInputProps<T>) => CSSObject = (theme, props) => ({\n ...inputStyle(theme, props),\n '& + &': {\n marginLeft: '19px',\n },\n '&:hover': {\n boxShadow: `0 0 0 1px ${COLOR_V2.GRAY_60}`,\n },\n fontSize: '24px',\n lineHeight: '28px',\n padding: 0,\n textAlign: 'center',\n width: '48px',\n height: '56px',\n});\n\nconst DigitInput: React.FC<DigitInputProps<HTMLInputElement>> = React.forwardRef<\n HTMLInputElement,\n DigitInputProps<HTMLInputElement>\n>((props, ref) => <input ref={ref} css={(theme: Theme) => digitInputStyle(theme, props)} {...props} type=\"tel\" />);\n\nexport interface CodeInputProps<T = HTMLInputElement> extends InputProps<T> {\n autoFocus?: boolean;\n digits?: number;\n markInvalid?: boolean;\n onCodeComplete?: (completeCode?: string) => void;\n}\n\nexport const CodeInput = ({\n style,\n digits = 6,\n autoFocus = false,\n markInvalid,\n onCodeComplete = noop,\n disabled,\n}: CodeInputProps) => {\n const [values, setValues] = useState(Array(digits).fill(''));\n const inputs = Array(digits);\n\n const forceSelection = (\n event:\n | React.MouseEvent<HTMLInputElement>\n | React.TouchEvent<HTMLInputElement>\n | React.KeyboardEvent<HTMLInputElement>\n | React.FocusEvent<HTMLInputElement>,\n ) => {\n const target = event.target as HTMLInputElement;\n target.select();\n };\n\n const forceSelectionPreventDefault = (\n event: React.MouseEvent<HTMLInputElement> | React.TouchEvent<HTMLInputElement>,\n ) => {\n forceSelection(event);\n event.preventDefault();\n };\n\n const nextField = (currentFieldIndex: number) => {\n const nextFieldIndex = currentFieldIndex + 1;\n if (nextFieldIndex < digits) {\n inputs[nextFieldIndex].focus();\n }\n };\n\n const previousField = (currentFieldIndex: number) => {\n if (currentFieldIndex > 0) {\n inputs[currentFieldIndex - 1].focus();\n }\n };\n\n const setValue = (fieldIndex: number, value: string) => {\n if (/^[0-9]?$/.test(value)) {\n const valuesCopy = values.slice();\n valuesCopy[fieldIndex] = value;\n setValues(valuesCopy);\n if (value.length) {\n nextField(fieldIndex);\n }\n }\n };\n\n const handleKeyDown = (fieldIndex: number, {key}: React.KeyboardEvent<HTMLInputElement>) => {\n switch (key) {\n case 'Backspace':\n setValue(fieldIndex, '');\n previousField(fieldIndex);\n break;\n case 'ArrowLeft':\n previousField(fieldIndex);\n break;\n case 'ArrowRight':\n nextField(fieldIndex);\n break;\n }\n if (/^[0-9]$/.test(key)) {\n setValue(fieldIndex, key);\n }\n };\n\n const handlePaste = (fieldIndex: number, event: React.ClipboardEvent<HTMLInputElement>) => {\n const pastedValue = event.clipboardData.getData('Text');\n const cleanedPaste = pastedValue.replace(/[^0-9]/g, '');\n if (/^[0-9]+$/.test(cleanedPaste)) {\n setValues(values.slice(0, fieldIndex).concat(cleanedPaste.split('')).slice(0, digits));\n }\n };\n\n useEffect(() => {\n const completeCode = values.join('');\n if (completeCode.length === digits) {\n onCodeComplete(completeCode);\n }\n }, [values]);\n\n return (\n <CodeInputWrapper style={style}>\n {Array.from({length: digits}, (_, index) => (\n <DigitInput\n autoFocus={index === 0 && autoFocus}\n key={index}\n onPaste={event => handlePaste(index, event)}\n onFocus={forceSelection}\n onMouseDown={forceSelectionPreventDefault}\n onTouchStart={forceSelectionPreventDefault}\n onKeyDown={event => handleKeyDown(index, event)}\n onKeyUp={forceSelection}\n markInvalid={markInvalid}\n ref={node => (inputs[index] = node)}\n value={values[index]}\n onChange={() => {}}\n disabled={disabled}\n />\n ))}\n </CodeInputWrapper>\n );\n};\n"],"file":"CodeInput.js"}
|
|
1
|
+
{"version":3,"sources":["CodeInput.tsx"],"names":["CodeInputWrapper","props","digitInputStyle","theme","marginLeft","boxShadow","COLOR_V2","GRAY_60","fontSize","lineHeight","borderRadius","padding","textAlign","width","height","DigitInput","React","forwardRef","ref","CodeInput","style","digits","autoFocus","markInvalid","onCodeComplete","noop","disabled","Array","fill","values","setValues","inputs","forceSelection","event","target","select","forceSelectionPreventDefault","preventDefault","nextField","currentFieldIndex","nextFieldIndex","focus","previousField","setValue","fieldIndex","value","test","valuesCopy","slice","length","handleKeyDown","key","handlePaste","pastedValue","clipboardData","getData","cleanedPaste","replace","concat","split","completeCode","join","from","_","index","node"],"mappings":"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","sourcesContent":["/*\n * Wire\n * Copyright (C) 2018 Wire Swiss GmbH\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU General Public License as published by\n * the Free Software Foundation, either version 3 of the License, or\n * (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU General Public License for more details.\n *\n * You should have received a copy of the GNU General Public License\n * along with this program. If not, see http://www.gnu.org/licenses/.\n *\n */\n\n/** @jsx jsx */\nimport {CSSObject, jsx} from '@emotion/react';\nimport React, {useEffect, useState} from 'react';\n\nimport type {Theme} from '../Layout';\nimport {noop} from '../util';\nimport {InputProps, inputStyle} from './Input';\nimport {COLOR_V2} from '../Identity';\n\nconst CodeInputWrapper = (props: React.HTMLProps<HTMLDivElement>) => (\n <div\n css={{\n display: 'flex',\n justifyContent: 'center',\n }}\n {...props}\n />\n);\n\ntype DigitInputProps<T = HTMLInputElement> = InputProps<T>;\n\nconst digitInputStyle: <T>(theme: Theme, props: DigitInputProps<T>) => CSSObject = (theme, props) => ({\n ...inputStyle(theme, props),\n '& + &': {\n marginLeft: '19px',\n },\n '&:hover': {\n boxShadow: `0 0 0 1px ${COLOR_V2.GRAY_60}`,\n },\n fontSize: '24px',\n lineHeight: '28px',\n borderRadius: '12px',\n padding: 0,\n textAlign: 'center',\n width: '48px',\n height: '56px',\n});\n\nconst DigitInput: React.FC<DigitInputProps<HTMLInputElement>> = React.forwardRef<\n HTMLInputElement,\n DigitInputProps<HTMLInputElement>\n>((props, ref) => <input ref={ref} css={(theme: Theme) => digitInputStyle(theme, props)} {...props} type=\"tel\" />);\n\nexport interface CodeInputProps<T = HTMLInputElement> extends InputProps<T> {\n autoFocus?: boolean;\n digits?: number;\n markInvalid?: boolean;\n onCodeComplete?: (completeCode?: string) => void;\n}\n\nexport const CodeInput = ({\n style,\n digits = 6,\n autoFocus = false,\n markInvalid,\n onCodeComplete = noop,\n disabled,\n}: CodeInputProps) => {\n const [values, setValues] = useState(Array(digits).fill(''));\n const inputs = Array(digits);\n\n const forceSelection = (\n event:\n | React.MouseEvent<HTMLInputElement>\n | React.TouchEvent<HTMLInputElement>\n | React.KeyboardEvent<HTMLInputElement>\n | React.FocusEvent<HTMLInputElement>,\n ) => {\n const target = event.target as HTMLInputElement;\n target.select();\n };\n\n const forceSelectionPreventDefault = (\n event: React.MouseEvent<HTMLInputElement> | React.TouchEvent<HTMLInputElement>,\n ) => {\n forceSelection(event);\n event.preventDefault();\n };\n\n const nextField = (currentFieldIndex: number) => {\n const nextFieldIndex = currentFieldIndex + 1;\n if (nextFieldIndex < digits) {\n inputs[nextFieldIndex].focus();\n }\n };\n\n const previousField = (currentFieldIndex: number) => {\n if (currentFieldIndex > 0) {\n inputs[currentFieldIndex - 1].focus();\n }\n };\n\n const setValue = (fieldIndex: number, value: string) => {\n if (/^[0-9]?$/.test(value)) {\n const valuesCopy = values.slice();\n valuesCopy[fieldIndex] = value;\n setValues(valuesCopy);\n if (value.length) {\n nextField(fieldIndex);\n }\n }\n };\n\n const handleKeyDown = (fieldIndex: number, {key}: React.KeyboardEvent<HTMLInputElement>) => {\n switch (key) {\n case 'Backspace':\n setValue(fieldIndex, '');\n previousField(fieldIndex);\n break;\n case 'ArrowLeft':\n previousField(fieldIndex);\n break;\n case 'ArrowRight':\n nextField(fieldIndex);\n break;\n }\n if (/^[0-9]$/.test(key)) {\n setValue(fieldIndex, key);\n }\n };\n\n const handlePaste = (fieldIndex: number, event: React.ClipboardEvent<HTMLInputElement>) => {\n const pastedValue = event.clipboardData.getData('Text');\n const cleanedPaste = pastedValue.replace(/[^0-9]/g, '');\n if (/^[0-9]+$/.test(cleanedPaste)) {\n setValues(values.slice(0, fieldIndex).concat(cleanedPaste.split('')).slice(0, digits));\n }\n };\n\n useEffect(() => {\n const completeCode = values.join('');\n if (completeCode.length === digits) {\n onCodeComplete(completeCode);\n }\n }, [values]);\n\n return (\n <CodeInputWrapper style={style}>\n {Array.from({length: digits}, (_, index) => (\n <DigitInput\n autoFocus={index === 0 && autoFocus}\n key={index}\n onPaste={event => handlePaste(index, event)}\n onFocus={forceSelection}\n onMouseDown={forceSelectionPreventDefault}\n onTouchStart={forceSelectionPreventDefault}\n onKeyDown={event => handleKeyDown(index, event)}\n onKeyUp={forceSelection}\n markInvalid={markInvalid}\n ref={node => (inputs[index] = node)}\n value={values[index]}\n onChange={() => {}}\n disabled={disabled}\n />\n ))}\n </CodeInputWrapper>\n );\n};\n"],"file":"CodeInput.js"}
|
package/src/Form/Select.js
CHANGED
|
@@ -96,6 +96,8 @@ var dropdownStyles = function dropdownStyles(theme, isDropdownOpen) {
|
|
|
96
96
|
top: '100%',
|
|
97
97
|
left: 0,
|
|
98
98
|
width: '100%',
|
|
99
|
+
maxHeight: '240px',
|
|
100
|
+
overflowY: 'auto',
|
|
99
101
|
zIndex: 9
|
|
100
102
|
};
|
|
101
103
|
};
|
|
@@ -140,7 +142,7 @@ var _ref3 = process.env.NODE_ENV === "production" ? {
|
|
|
140
142
|
} : {
|
|
141
143
|
name: "tvi1yf-Select",
|
|
142
144
|
styles: "position:relative;label:Select;",
|
|
143
|
-
map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIlNlbGVjdC50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBcVBXIiwiZmlsZSI6IlNlbGVjdC50c3giLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogV2lyZVxuICogQ29weXJpZ2h0IChDKSAyMDE4IFdpcmUgU3dpc3MgR21iSFxuICpcbiAqIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOiB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5XG4gKiBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieVxuICogdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3JcbiAqIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uXG4gKlxuICogVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsXG4gKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZlxuICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiBTZWUgdGhlXG4gKiBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLlxuICpcbiAqIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlXG4gKiBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gSWYgbm90LCBzZWUgaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLy5cbiAqXG4gKi9cblxuLyoqIEBqc3gganN4ICovXG5pbXBvcnQge0NTU09iamVjdCwganN4fSBmcm9tICdAZW1vdGlvbi9yZWFjdCc7XG5cbmltcG9ydCB7Q09MT1JfVjJ9IGZyb20gJy4uL0lkZW50aXR5JztcbmltcG9ydCB0eXBlIHtUaGVtZX0gZnJvbSAnLi4vTGF5b3V0JztcbmltcG9ydCB7ZmlsdGVyUHJvcHMsIGlubGluZVNWR30gZnJvbSAnLi4vdXRpbCc7XG5pbXBvcnQge2lucHV0U3R5bGV9IGZyb20gJy4vSW5wdXQnO1xuaW1wb3J0IFJlYWN0LCB7UmVhY3RFbGVtZW50LCB1c2VFZmZlY3QsIHVzZVJlZiwgdXNlU3RhdGV9IGZyb20gJ3JlYWN0JztcbmltcG9ydCBJbnB1dExhYmVsIGZyb20gJy4vSW5wdXRMYWJlbCc7XG5cbnR5cGUgT3B0aW9uID0ge1xuICB2YWx1ZTogc3RyaW5nIHwgbnVtYmVyO1xuICBsYWJlbDogc3RyaW5nO1xufTtcblxuZXhwb3J0IGludGVyZmFjZSBTZWxlY3RQcm9wcyB7XG4gIGlkOiBzdHJpbmc7XG4gIG9uQ2hhbmdlOiAoc2VsZWN0ZWRPcHRpb246IHN0cmluZyB8IG51bWJlcikgPT4gdm9pZDtcbiAgZGF0YVVpZU5hbWU6IHN0cmluZztcbiAgb3B0aW9uczogT3B0aW9uW107XG4gIHZhbHVlPzogT3B0aW9uIHwgbnVsbDtcbiAgaGVscGVyVGV4dD86IHN0cmluZztcbiAgbGFiZWw/OiBzdHJpbmc7XG4gIGRpc2FibGVkPzogYm9vbGVhbjtcbiAgcmVxdWlyZWQ/OiBib29sZWFuO1xuICBtYXJrSW52YWxpZD86IGJvb2xlYW47XG4gIGVycm9yPzogUmVhY3RFbGVtZW50O1xufVxuXG5jb25zdCBBcnJvd0Rvd24gPSAodGhlbWU6IFRoZW1lKSA9PiBgXG4gICAgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIxNlwiIGhlaWdodD1cIjE2XCIgdmlld0JveD1cIjAgMCAxNiAxNlwiPlxuICAgICAgICA8cGF0aCBmaWxsPVwiJHt0aGVtZS5nZW5lcmFsLmNvbG9yfVwiIGZpbGwtcnVsZT1cImV2ZW5vZGRcIiBjbGlwLXJ1bGU9XCJldmVub2RkXCIgZD1cIk03Ljk5OTYzIDEyLjU3MTFMMTUuNjU2NSA0LjkxNDIxTDE0LjI0MjMgMy41TDcuOTk5NjMgOS43NDI2NEwxLjc1Njk5IDMuNUwwLjM0Mjc3MyA0LjkxNDIxTDcuOTk5NjMgMTIuNTcxMVpcIi8+XG4gICAgPC9zdmc+XG5gO1xuXG5leHBvcnQgY29uc3Qgc2VsZWN0U3R5bGU6IDxUPih0aGVtZTogVGhlbWUsIHByb3BzLCBlcnJvcj86IGJvb2xlYW4pID0+IENTU09iamVjdCA9IChcbiAgdGhlbWUsXG4gIHtkaXNhYmxlZCA9IGZhbHNlLCBtYXJrSW52YWxpZCwgLi4ucHJvcHN9LFxuICBlcnJvciA9IGZhbHNlLFxuKSA9PiAoe1xuICAuLi5pbnB1dFN0eWxlKHRoZW1lLCBwcm9wcyksXG4gICcmOi1tb3otZm9jdXNyaW5nJzoge1xuICAgIGNvbG9yOiAndHJhbnNwYXJlbnQnLFxuICAgIHRleHRTaGFkb3c6ICcwIDAgMCAjMDAwJyxcbiAgfSxcbiAgJyY6ZGlzYWJsZWQnOiB7XG4gICAgY29sb3I6IENPTE9SX1YyLkdSQVksXG4gIH0sXG4gIGFwcGVhcmFuY2U6ICdub25lJyxcbiAgYmFja2dyb3VuZDogZGlzYWJsZWRcbiAgICA/IGAke3RoZW1lLklucHV0LmJhY2tncm91bmRDb2xvckRpc2FibGVkfSBjZW50ZXIgcmlnaHQgMTZweCBuby1yZXBlYXQgdXJsKFwiJHtpbmxpbmVTVkcoQXJyb3dEb3duKHRoZW1lKSl9XCIpYFxuICAgIDogYCR7dGhlbWUuSW5wdXQuYmFja2dyb3VuZENvbG9yfSBjZW50ZXIgcmlnaHQgMTZweCBuby1yZXBlYXQgdXJsKFwiJHtpbmxpbmVTVkcoQXJyb3dEb3duKHRoZW1lKSl9XCIpYCxcbiAgYm94U2hhZG93OiBtYXJrSW52YWxpZCA/IGAwIDAgMCAxcHggJHtDT0xPUl9WMi5SRUR9YCA6IGAwIDAgMCAxcHggJHtDT0xPUl9WMi5HUkFZXzQwfWAsXG4gIGN1cnNvcjogZGlzYWJsZWQgPyAnbm9ybWFsJyA6ICdwb2ludGVyJyxcbiAgZm9udFNpemU6ICcxNnB4JyxcbiAgZm9udFdlaWdodDogMzAwLFxuICBwYWRkaW5nUmlnaHQ6ICczMHB4JyxcbiAgdGV4dEFsaWduOiAnbGVmdCcsXG4gIG1hcmdpbkJvdHRvbTogZXJyb3IgJiYgJzhweCcsXG4gICcmOmludmFsaWQsIG9wdGlvbjpmaXJzdC1vZi10eXBlJzoge1xuICAgIGNvbG9yOiBDT0xPUl9WMi5SRUQsXG4gIH0sXG4gIC4uLighZGlzYWJsZWQgJiYge1xuICAgICcmOmhvdmVyJzoge1xuICAgICAgYm94U2hhZG93OiBgMCAwIDAgMXB4ICR7Q09MT1JfVjIuR1JBWV82MH1gLFxuICAgIH0sXG4gICAgJyY6Zm9jdXMsICY6YWN0aXZlJzoge1xuICAgICAgYm94U2hhZG93OiBgMCAwIDAgMXB4ICR7Q09MT1JfVjIuQkxVRX1gLFxuICAgIH0sXG4gIH0pLFxufSk7XG5cbmNvbnN0IGRyb3Bkb3duU3R5bGVzID0gKHRoZW1lOiBUaGVtZSwgaXNEcm9wZG93bk9wZW46IGJvb2xlYW4pOiBDU1NPYmplY3QgPT4gKHtcbiAgaGVpZ2h0OiBpc0Ryb3Bkb3duT3BlbiA/ICdhdXRvJyA6IDAsXG4gIHZpc2liaWxpdHk6IGlzRHJvcGRvd25PcGVuID8gJ3Zpc2libGUnIDogJ2hpZGRlbicsXG4gIG1hcmdpbjogJzNweCAwIDAnLFxuICBwYWRkaW5nOiAwLFxuICBib3JkZXJSYWRpdXM6ICcxMHB4JyxcbiAgYm9yZGVyOiBgMXB4IHNvbGlkICR7Q09MT1JfVjIuQkxVRX1gLFxuICBwb3NpdGlvbjogJ2Fic29sdXRlJyxcbiAgdG9wOiAnMTAwJScsXG4gIGxlZnQ6IDAsXG4gIHdpZHRoOiAnMTAwJScsXG4gIHpJbmRleDogOSxcbn0pO1xuXG5jb25zdCBkcm9wZG93bk9wdGlvblN0eWxlcyA9ICh0aGVtZTogVGhlbWUsIGlzU2VsZWN0ZWQ6IGJvb2xlYW4pOiBDU1NPYmplY3QgPT4gKHtcbiAgYmFja2dyb3VuZDogaXNTZWxlY3RlZCA/IENPTE9SX1YyLkJMVUUgOiBDT0xPUl9WMi5XSElURSxcbiAgbGlzdFN0eWxlOiAnbm9uZScsXG4gIHBhZGRpbmc6ICcxMHB4IDIwcHggMTRweCcsXG4gIGN1cnNvcjogJ3BvaW50ZXInLFxuICBmb250U2l6ZTogJzE2cHgnLFxuICBmb250V2VpZ2h0OiAzMDAsXG4gIGxpbmVIZWlnaHQ6ICcyNHB4JyxcbiAgbGV0dGVyU3BhY2luZzogJzAuMDVweCcsXG4gIGNvbG9yOiBpc1NlbGVjdGVkID8gQ09MT1JfVjIuV0hJVEUgOiBDT0xPUl9WMi5CTEFDSyxcbiAgJyY6Zmlyc3Qtb2YtdHlwZSc6IHtcbiAgICBib3JkZXJSYWRpdXM6ICcxMHB4IDEwcHggMCAwJyxcbiAgfSxcbiAgJyY6bGFzdC1vZi10eXBlJzoge1xuICAgIGJvcmRlclJhZGl1czogJzAgMCAxMHB4IDEwcHgnLFxuICB9LFxuICAnJjpub3QoOmxhc3Qtb2YtdHlwZSknOiB7XG4gICAgYm9yZGVyQm90dG9tOiBgMXB4IHNvbGlkICR7Q09MT1JfVjIuR1JBWV80MH1gLFxuICB9LFxuICAnJjpob3ZlciwgJjphY3RpdmUsICY6Zm9jdXMnOiB7XG4gICAgYmFja2dyb3VuZDogQ09MT1JfVjIuQkxVRSxcbiAgICBib3JkZXJDb2xvcjogQ09MT1JfVjIuQkxVRSxcbiAgICBjb2xvcjogQ09MT1JfVjIuV0hJVEUsXG4gIH0sXG59KTtcblxuY29uc3QgZmlsdGVyU2VsZWN0UHJvcHMgPSBwcm9wcyA9PiBmaWx0ZXJQcm9wcyhwcm9wcywgWydtYXJrSW52YWxpZCddKTtcblxuY29uc3QgcGxhY2Vob2xkZXJUZXh0ID0gJy0gUGxlYXNlIHNlbGVjdCAtJztcblxuZXhwb3J0IGNvbnN0IFNlbGVjdCA9ICh7XG4gIGlkLFxuICBsYWJlbCxcbiAgZXJyb3IsXG4gIGhlbHBlclRleHQsXG4gIG9wdGlvbnMgPSBbXSxcbiAgdmFsdWUgPSBudWxsLFxuICBvbkNoYW5nZSxcbiAgcmVxdWlyZWQsXG4gIG1hcmtJbnZhbGlkLFxuICBkYXRhVWllTmFtZSxcbiAgLi4ucHJvcHNcbn06IFNlbGVjdFByb3BzKSA9PiB7XG4gIGNvbnN0IHNlbGVjdENvbnRhaW5lclJlZiA9IHVzZVJlZjxIVE1MRGl2RWxlbWVudD4obnVsbCk7XG4gIGNvbnN0IFtpc0Ryb3Bkb3duT3Blbiwgc2V0SXNEcm9wZG93bk9wZW5dID0gdXNlU3RhdGUoZmFsc2UpO1xuICBjb25zdCBbc2VsZWN0ZWRPcHRpb24sIHNldFNlbGVjdGVkT3B0aW9uXSA9IHVzZVN0YXRlPG51bWJlciB8IG51bGw+KCgpID0+ICh2YWx1ZSA/IG9wdGlvbnMuaW5kZXhPZih2YWx1ZSkgOiBudWxsKSk7XG5cbiAgY29uc3Qgb25Ub2dnbGVEcm9wZG93biA9ICgpID0+IHNldElzRHJvcGRvd25PcGVuKHByZXZTdGF0ZSA9PiAhcHJldlN0YXRlKTtcblxuICBjb25zdCBvbk9wdGlvblNlbGVjdCA9IChpZHg6IG51bWJlcikgPT4ge1xuICAgIHNldFNlbGVjdGVkT3B0aW9uKGlkeCk7XG4gICAgb25DaGFuZ2Uob3B0aW9uc1tpZHhdLnZhbHVlKTtcbiAgfTtcblxuICBjb25zdCBvbk9wdGlvbkNoYW5nZSA9IChpZHg6IG51bWJlcikgPT4ge1xuICAgIG9uT3B0aW9uU2VsZWN0KGlkeCk7XG4gICAgc2V0SXNEcm9wZG93bk9wZW4oZmFsc2UpO1xuICB9O1xuXG4gIGNvbnN0IGhhbmRsZUxpc3RLZXlEb3duID0gZSA9PiB7XG4gICAgc3dpdGNoIChlLmtleSkge1xuICAgICAgY2FzZSAnRXNjYXBlJzpcbiAgICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICBzZXRJc0Ryb3Bkb3duT3BlbihmYWxzZSk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSAnQXJyb3dVcCc6XG4gICAgICBjYXNlICdBcnJvd0xlZnQnOlxuICAgICAgICBpZiAoIWlzRHJvcGRvd25PcGVuKSB7XG4gICAgICAgICAgc2V0SXNEcm9wZG93bk9wZW4odHJ1ZSk7XG4gICAgICAgIH1cblxuICAgICAgICBlLnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgIG9uT3B0aW9uU2VsZWN0KHNlbGVjdGVkT3B0aW9uIC0gMSA+PSAwID8gc2VsZWN0ZWRPcHRpb24gLSAxIDogb3B0aW9ucy5sZW5ndGggLSAxKTtcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlICdBcnJvd0Rvd24nOlxuICAgICAgY2FzZSAnQXJyb3dSaWdodCc6XG4gICAgICAgIGlmICghaXNEcm9wZG93bk9wZW4pIHtcbiAgICAgICAgICBzZXRJc0Ryb3Bkb3duT3Blbih0cnVlKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGUucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgaWYgKHNlbGVjdGVkT3B0aW9uID09PSBudWxsKSB7XG4gICAgICAgICAgb25PcHRpb25TZWxlY3QoMCk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgb25PcHRpb25TZWxlY3Qoc2VsZWN0ZWRPcHRpb24gPT09IG9wdGlvbnMubGVuZ3RoIC0gMSA/IDAgOiBzZWxlY3RlZE9wdGlvbiArIDEpO1xuICAgICAgICB9XG4gICAgICAgIGJyZWFrO1xuICAgICAgZGVmYXVsdDpcbiAgICAgICAgYnJlYWs7XG4gICAgfVxuICB9O1xuXG4gIGNvbnN0IGhhbmRsZUtleURvd24gPSBpbmRleCA9PiBlID0+IHtcbiAgICBzd2l0Y2ggKGUua2V5KSB7XG4gICAgICBjYXNlICcgJzpcbiAgICAgIGNhc2UgJ1NwYWNlQmFyJzpcbiAgICAgIGNhc2UgJ0VudGVyJzpcbiAgICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICBvbk9wdGlvbkNoYW5nZShpbmRleCk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgZGVmYXVsdDpcbiAgICAgICAgYnJlYWs7XG4gICAgfVxuICB9O1xuXG4gIGNvbnN0IGhhc0Vycm9yID0gISFlcnJvcjtcblxuICBjb25zdCBoYXNTZWxlY3RlZE9wdGlvbiA9IG9wdGlvbnMgJiYgISFvcHRpb25zW3NlbGVjdGVkT3B0aW9uXTtcblxuICBjb25zdCBoYW5kbGVPdXRzaWRlQ2xpY2sgPSAoZXZlbnQ6IE1vdXNlRXZlbnQpID0+IHtcbiAgICBpZiAoc2VsZWN0Q29udGFpbmVyUmVmLmN1cnJlbnQgJiYgIXNlbGVjdENvbnRhaW5lclJlZi5jdXJyZW50LmNvbnRhaW5zKGV2ZW50LnRhcmdldCBhcyBOb2RlKSkge1xuICAgICAgc2V0SXNEcm9wZG93bk9wZW4oZmFsc2UpO1xuICAgIH1cbiAgfTtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCdjbGljaycsIGhhbmRsZU91dHNpZGVDbGljayk7XG5cbiAgICByZXR1cm4gKCkgPT4ge1xuICAgICAgd2luZG93LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ2NsaWNrJywgaGFuZGxlT3V0c2lkZUNsaWNrKTtcbiAgICB9O1xuICB9LCBbXSk7XG5cbiAgcmV0dXJuIChcbiAgICA8ZGl2XG4gICAgICBjc3M9e3tcbiAgICAgICAgbWFyZ2luQm90dG9tOiBtYXJrSW52YWxpZCA/ICcycHgnIDogJzIwcHgnLFxuICAgICAgICAnJjpmb2N1cy13aXRoaW4gbGFiZWwnOiB7XG4gICAgICAgICAgY29sb3I6IENPTE9SX1YyLkJMVUUsXG4gICAgICAgIH0sXG4gICAgICB9fVxuICAgICAgZGF0YS11aWUtbmFtZT17ZGF0YVVpZU5hbWV9XG4gICAgICByZWY9e3NlbGVjdENvbnRhaW5lclJlZn1cbiAgICA+XG4gICAgICB7bGFiZWwgJiYgKFxuICAgICAgICA8SW5wdXRMYWJlbCBodG1sRm9yPXtpZH0gaXNSZXF1aXJlZD17cmVxdWlyZWR9IG1hcmtJbnZhbGlkPXttYXJrSW52YWxpZH0+XG4gICAgICAgICAge2xhYmVsfVxuICAgICAgICA8L0lucHV0TGFiZWw+XG4gICAgICApfVxuXG4gICAgICA8ZGl2IGNzcz17e3Bvc2l0aW9uOiAncmVsYXRpdmUnfX0+XG4gICAgICAgIDxidXR0b25cbiAgICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgICBhcmlhLWFjdGl2ZWRlc2NlbmRhbnQ9e2hhc1NlbGVjdGVkT3B0aW9uID8gb3B0aW9uc1tzZWxlY3RlZE9wdGlvbl0ubGFiZWwgOiAnJ31cbiAgICAgICAgICBhcmlhLWV4cGFuZGVkPXtpc0Ryb3Bkb3duT3Blbn1cbiAgICAgICAgICBhcmlhLWhhc3BvcHVwPVwibGlzdGJveFwiXG4gICAgICAgICAgYXJpYS1sYWJlbGxlZGJ5PXtpZH1cbiAgICAgICAgICBpZD17aWR9XG4gICAgICAgICAgb25DbGljaz17b25Ub2dnbGVEcm9wZG93bn1cbiAgICAgICAgICBvbktleURvd249e2hhbmRsZUxpc3RLZXlEb3dufVxuICAgICAgICAgIGNzcz17KHRoZW1lOiBUaGVtZSkgPT4gc2VsZWN0U3R5bGUodGhlbWUsIHByb3BzLCBoYXNFcnJvcil9XG4gICAgICAgICAgey4uLmZpbHRlclNlbGVjdFByb3BzKHByb3BzKX1cbiAgICAgICAgICBkYXRhLXVpZS1uYW1lPXtkYXRhVWllTmFtZX1cbiAgICAgICAgPlxuICAgICAgICAgIHtoYXNTZWxlY3RlZE9wdGlvbiA/IG9wdGlvbnNbc2VsZWN0ZWRPcHRpb25dLmxhYmVsIDogcGxhY2Vob2xkZXJUZXh0fVxuICAgICAgICA8L2J1dHRvbj5cblxuICAgICAgICA8dWxcbiAgICAgICAgICByb2xlPVwibGlzdGJveFwiXG4gICAgICAgICAgYXJpYS1sYWJlbGxlZGJ5PXtpZH1cbiAgICAgICAgICB0YWJJbmRleD17LTF9XG4gICAgICAgICAgb25LZXlEb3duPXtoYW5kbGVMaXN0S2V5RG93bn1cbiAgICAgICAgICBjc3M9eyh0aGVtZTogVGhlbWUpID0+IGRyb3Bkb3duU3R5bGVzKHRoZW1lLCBpc0Ryb3Bkb3duT3Blbil9XG4gICAgICAgICAgey4uLihkYXRhVWllTmFtZSAmJiB7XG4gICAgICAgICAgICAnZGF0YS11aWUtbmFtZSc6IGBkcm9wZG93bi0ke2RhdGFVaWVOYW1lfWAsXG4gICAgICAgICAgfSl9XG4gICAgICAgID5cbiAgICAgICAgICB7b3B0aW9ucy5tYXAoKG9wdGlvbiwgaW5kZXgpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGlzU2VsZWN0ZWQgPSBzZWxlY3RlZE9wdGlvbiA9PSBpbmRleDtcblxuICAgICAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgICAgPGxpXG4gICAgICAgICAgICAgICAga2V5PXtvcHRpb24udmFsdWV9XG4gICAgICAgICAgICAgICAgaWQ9e29wdGlvbi52YWx1ZS50b1N0cmluZygpfVxuICAgICAgICAgICAgICAgIHJvbGU9XCJvcHRpb25cIlxuICAgICAgICAgICAgICAgIGFyaWEtc2VsZWN0ZWQ9e2lzU2VsZWN0ZWR9XG4gICAgICAgICAgICAgICAgdGFiSW5kZXg9ezB9XG4gICAgICAgICAgICAgICAgb25LZXlEb3duPXtoYW5kbGVLZXlEb3duKGluZGV4KX1cbiAgICAgICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiBvbk9wdGlvbkNoYW5nZShpbmRleCl9XG4gICAgICAgICAgICAgICAgY3NzPXsodGhlbWU6IFRoZW1lKSA9PiBkcm9wZG93bk9wdGlvblN0eWxlcyh0aGVtZSwgaXNTZWxlY3RlZCl9XG4gICAgICAgICAgICAgICAgey4uLihkYXRhVWllTmFtZSAmJiB7XG4gICAgICAgICAgICAgICAgICAnZGF0YS11aWUtbmFtZSc6IGBvcHRpb24tJHtkYXRhVWllTmFtZX1gLFxuICAgICAgICAgICAgICAgICAgJ2RhdGEtdWllLXZhbHVlJzogb3B0aW9uLmxhYmVsLFxuICAgICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAge29wdGlvbi5sYWJlbH1cbiAgICAgICAgICAgICAgPC9saT5cbiAgICAgICAgICAgICk7XG4gICAgICAgICAgfSl9XG4gICAgICAgIDwvdWw+XG4gICAgICA8L2Rpdj5cblxuICAgICAgeyFoYXNFcnJvciAmJiBoZWxwZXJUZXh0ICYmIChcbiAgICAgICAgPHAgY3NzPXt7Zm9udFNpemU6ICcxMnB4JywgZm9udFdlaWdodDogNDAwLCBjb2xvcjogQ09MT1JfVjIuR1JBWV84MCwgbWFyZ2luVG9wOiA4fX0+e2hlbHBlclRleHR9PC9wPlxuICAgICAgKX1cblxuICAgICAge2Vycm9yfVxuICAgIDwvZGl2PlxuICApO1xufTtcbiJdfQ== */",
|
|
145
|
+
map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIlNlbGVjdC50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBOFFXIiwiZmlsZSI6IlNlbGVjdC50c3giLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogV2lyZVxuICogQ29weXJpZ2h0IChDKSAyMDE4IFdpcmUgU3dpc3MgR21iSFxuICpcbiAqIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOiB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5XG4gKiBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieVxuICogdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3JcbiAqIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uXG4gKlxuICogVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsXG4gKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZlxuICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiBTZWUgdGhlXG4gKiBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLlxuICpcbiAqIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlXG4gKiBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gSWYgbm90LCBzZWUgaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLy5cbiAqXG4gKi9cblxuLyoqIEBqc3gganN4ICovXG5pbXBvcnQge0NTU09iamVjdCwganN4fSBmcm9tICdAZW1vdGlvbi9yZWFjdCc7XG5cbmltcG9ydCB7Q09MT1JfVjJ9IGZyb20gJy4uL0lkZW50aXR5JztcbmltcG9ydCB0eXBlIHtUaGVtZX0gZnJvbSAnLi4vTGF5b3V0JztcbmltcG9ydCB7ZmlsdGVyUHJvcHMsIGlubGluZVNWR30gZnJvbSAnLi4vdXRpbCc7XG5pbXBvcnQge2lucHV0U3R5bGV9IGZyb20gJy4vSW5wdXQnO1xuaW1wb3J0IFJlYWN0LCB7UmVhY3RFbGVtZW50LCB1c2VFZmZlY3QsIHVzZVJlZiwgdXNlU3RhdGV9IGZyb20gJ3JlYWN0JztcbmltcG9ydCBJbnB1dExhYmVsIGZyb20gJy4vSW5wdXRMYWJlbCc7XG5cbnR5cGUgT3B0aW9uID0ge1xuICB2YWx1ZTogc3RyaW5nIHwgbnVtYmVyO1xuICBsYWJlbDogc3RyaW5nO1xufTtcblxuZXhwb3J0IGludGVyZmFjZSBTZWxlY3RQcm9wcyB7XG4gIGlkOiBzdHJpbmc7XG4gIG9uQ2hhbmdlOiAoc2VsZWN0ZWRPcHRpb246IHN0cmluZyB8IG51bWJlcikgPT4gdm9pZDtcbiAgZGF0YVVpZU5hbWU6IHN0cmluZztcbiAgb3B0aW9uczogT3B0aW9uW107XG4gIHZhbHVlPzogT3B0aW9uIHwgbnVsbDtcbiAgaGVscGVyVGV4dD86IHN0cmluZztcbiAgbGFiZWw/OiBzdHJpbmc7XG4gIGRpc2FibGVkPzogYm9vbGVhbjtcbiAgcmVxdWlyZWQ/OiBib29sZWFuO1xuICBtYXJrSW52YWxpZD86IGJvb2xlYW47XG4gIGVycm9yPzogUmVhY3RFbGVtZW50O1xufVxuXG5jb25zdCBBcnJvd0Rvd24gPSAodGhlbWU6IFRoZW1lKSA9PiBgXG4gICAgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIxNlwiIGhlaWdodD1cIjE2XCIgdmlld0JveD1cIjAgMCAxNiAxNlwiPlxuICAgICAgICA8cGF0aCBmaWxsPVwiJHt0aGVtZS5nZW5lcmFsLmNvbG9yfVwiIGZpbGwtcnVsZT1cImV2ZW5vZGRcIiBjbGlwLXJ1bGU9XCJldmVub2RkXCIgZD1cIk03Ljk5OTYzIDEyLjU3MTFMMTUuNjU2NSA0LjkxNDIxTDE0LjI0MjMgMy41TDcuOTk5NjMgOS43NDI2NEwxLjc1Njk5IDMuNUwwLjM0Mjc3MyA0LjkxNDIxTDcuOTk5NjMgMTIuNTcxMVpcIi8+XG4gICAgPC9zdmc+XG5gO1xuXG5leHBvcnQgY29uc3Qgc2VsZWN0U3R5bGU6IDxUPih0aGVtZTogVGhlbWUsIHByb3BzLCBlcnJvcj86IGJvb2xlYW4pID0+IENTU09iamVjdCA9IChcbiAgdGhlbWUsXG4gIHtkaXNhYmxlZCA9IGZhbHNlLCBtYXJrSW52YWxpZCwgLi4ucHJvcHN9LFxuICBlcnJvciA9IGZhbHNlLFxuKSA9PiAoe1xuICAuLi5pbnB1dFN0eWxlKHRoZW1lLCBwcm9wcyksXG4gICcmOi1tb3otZm9jdXNyaW5nJzoge1xuICAgIGNvbG9yOiAndHJhbnNwYXJlbnQnLFxuICAgIHRleHRTaGFkb3c6ICcwIDAgMCAjMDAwJyxcbiAgfSxcbiAgJyY6ZGlzYWJsZWQnOiB7XG4gICAgY29sb3I6IENPTE9SX1YyLkdSQVksXG4gIH0sXG4gIGFwcGVhcmFuY2U6ICdub25lJyxcbiAgYmFja2dyb3VuZDogZGlzYWJsZWRcbiAgICA/IGAke3RoZW1lLklucHV0LmJhY2tncm91bmRDb2xvckRpc2FibGVkfSBjZW50ZXIgcmlnaHQgMTZweCBuby1yZXBlYXQgdXJsKFwiJHtpbmxpbmVTVkcoQXJyb3dEb3duKHRoZW1lKSl9XCIpYFxuICAgIDogYCR7dGhlbWUuSW5wdXQuYmFja2dyb3VuZENvbG9yfSBjZW50ZXIgcmlnaHQgMTZweCBuby1yZXBlYXQgdXJsKFwiJHtpbmxpbmVTVkcoQXJyb3dEb3duKHRoZW1lKSl9XCIpYCxcbiAgYm94U2hhZG93OiBtYXJrSW52YWxpZCA/IGAwIDAgMCAxcHggJHtDT0xPUl9WMi5SRUR9YCA6IGAwIDAgMCAxcHggJHtDT0xPUl9WMi5HUkFZXzQwfWAsXG4gIGN1cnNvcjogZGlzYWJsZWQgPyAnbm9ybWFsJyA6ICdwb2ludGVyJyxcbiAgZm9udFNpemU6ICcxNnB4JyxcbiAgZm9udFdlaWdodDogMzAwLFxuICBwYWRkaW5nUmlnaHQ6ICczMHB4JyxcbiAgdGV4dEFsaWduOiAnbGVmdCcsXG4gIG1hcmdpbkJvdHRvbTogZXJyb3IgJiYgJzhweCcsXG4gICcmOmludmFsaWQsIG9wdGlvbjpmaXJzdC1vZi10eXBlJzoge1xuICAgIGNvbG9yOiBDT0xPUl9WMi5SRUQsXG4gIH0sXG4gIC4uLighZGlzYWJsZWQgJiYge1xuICAgICcmOmhvdmVyJzoge1xuICAgICAgYm94U2hhZG93OiBgMCAwIDAgMXB4ICR7Q09MT1JfVjIuR1JBWV82MH1gLFxuICAgIH0sXG4gICAgJyY6Zm9jdXMsICY6YWN0aXZlJzoge1xuICAgICAgYm94U2hhZG93OiBgMCAwIDAgMXB4ICR7Q09MT1JfVjIuQkxVRX1gLFxuICAgIH0sXG4gIH0pLFxufSk7XG5cbmNvbnN0IGRyb3Bkb3duU3R5bGVzID0gKHRoZW1lOiBUaGVtZSwgaXNEcm9wZG93bk9wZW46IGJvb2xlYW4pOiBDU1NPYmplY3QgPT4gKHtcbiAgaGVpZ2h0OiBpc0Ryb3Bkb3duT3BlbiA/ICdhdXRvJyA6IDAsXG4gIHZpc2liaWxpdHk6IGlzRHJvcGRvd25PcGVuID8gJ3Zpc2libGUnIDogJ2hpZGRlbicsXG4gIG1hcmdpbjogJzNweCAwIDAnLFxuICBwYWRkaW5nOiAwLFxuICBib3JkZXJSYWRpdXM6ICcxMHB4JyxcbiAgYm9yZGVyOiBgMXB4IHNvbGlkICR7Q09MT1JfVjIuQkxVRX1gLFxuICBwb3NpdGlvbjogJ2Fic29sdXRlJyxcbiAgdG9wOiAnMTAwJScsXG4gIGxlZnQ6IDAsXG4gIHdpZHRoOiAnMTAwJScsXG4gIG1heEhlaWdodDogJzI0MHB4JyxcbiAgb3ZlcmZsb3dZOiAnYXV0bycsXG4gIHpJbmRleDogOSxcbn0pO1xuXG5jb25zdCBkcm9wZG93bk9wdGlvblN0eWxlcyA9ICh0aGVtZTogVGhlbWUsIGlzU2VsZWN0ZWQ6IGJvb2xlYW4pOiBDU1NPYmplY3QgPT4gKHtcbiAgYmFja2dyb3VuZDogaXNTZWxlY3RlZCA/IENPTE9SX1YyLkJMVUUgOiBDT0xPUl9WMi5XSElURSxcbiAgbGlzdFN0eWxlOiAnbm9uZScsXG4gIHBhZGRpbmc6ICcxMHB4IDIwcHggMTRweCcsXG4gIGN1cnNvcjogJ3BvaW50ZXInLFxuICBmb250U2l6ZTogJzE2cHgnLFxuICBmb250V2VpZ2h0OiAzMDAsXG4gIGxpbmVIZWlnaHQ6ICcyNHB4JyxcbiAgbGV0dGVyU3BhY2luZzogJzAuMDVweCcsXG4gIGNvbG9yOiBpc1NlbGVjdGVkID8gQ09MT1JfVjIuV0hJVEUgOiBDT0xPUl9WMi5CTEFDSyxcbiAgJyY6Zmlyc3Qtb2YtdHlwZSc6IHtcbiAgICBib3JkZXJSYWRpdXM6ICcxMHB4IDEwcHggMCAwJyxcbiAgfSxcbiAgJyY6bGFzdC1vZi10eXBlJzoge1xuICAgIGJvcmRlclJhZGl1czogJzAgMCAxMHB4IDEwcHgnLFxuICB9LFxuICAnJjpub3QoOmxhc3Qtb2YtdHlwZSknOiB7XG4gICAgYm9yZGVyQm90dG9tOiBgMXB4IHNvbGlkICR7Q09MT1JfVjIuR1JBWV80MH1gLFxuICB9LFxuICAnJjpob3ZlciwgJjphY3RpdmUsICY6Zm9jdXMnOiB7XG4gICAgYmFja2dyb3VuZDogQ09MT1JfVjIuQkxVRSxcbiAgICBib3JkZXJDb2xvcjogQ09MT1JfVjIuQkxVRSxcbiAgICBjb2xvcjogQ09MT1JfVjIuV0hJVEUsXG4gIH0sXG59KTtcblxuY29uc3QgZmlsdGVyU2VsZWN0UHJvcHMgPSBwcm9wcyA9PiBmaWx0ZXJQcm9wcyhwcm9wcywgWydtYXJrSW52YWxpZCddKTtcblxuY29uc3QgcGxhY2Vob2xkZXJUZXh0ID0gJy0gUGxlYXNlIHNlbGVjdCAtJztcblxuZXhwb3J0IGNvbnN0IFNlbGVjdCA9ICh7XG4gIGlkLFxuICBsYWJlbCxcbiAgZXJyb3IsXG4gIGhlbHBlclRleHQsXG4gIG9wdGlvbnMgPSBbXSxcbiAgdmFsdWUgPSBudWxsLFxuICBvbkNoYW5nZSxcbiAgcmVxdWlyZWQsXG4gIG1hcmtJbnZhbGlkLFxuICBkYXRhVWllTmFtZSxcbiAgLi4ucHJvcHNcbn06IFNlbGVjdFByb3BzKSA9PiB7XG4gIGNvbnN0IHNlbGVjdENvbnRhaW5lclJlZiA9IHVzZVJlZjxIVE1MRGl2RWxlbWVudD4obnVsbCk7XG4gIGNvbnN0IGxpc3RSZWYgPSB1c2VSZWY8SFRNTFVMaXN0RWxlbWVudD4obnVsbCk7XG4gIGNvbnN0IFtpc0Ryb3Bkb3duT3Blbiwgc2V0SXNEcm9wZG93bk9wZW5dID0gdXNlU3RhdGUoZmFsc2UpO1xuICBjb25zdCBbc2VsZWN0ZWRPcHRpb24sIHNldFNlbGVjdGVkT3B0aW9uXSA9IHVzZVN0YXRlPG51bWJlciB8IG51bGw+KCgpID0+XG4gICAgdmFsdWUgPyBvcHRpb25zLmZpbmRJbmRleChvcHRpb24gPT4gb3B0aW9uLnZhbHVlID09PSB2YWx1ZS52YWx1ZSkgOiBudWxsLFxuICApO1xuXG4gIGNvbnN0IG9uVG9nZ2xlRHJvcGRvd24gPSAoKSA9PiBzZXRJc0Ryb3Bkb3duT3BlbihwcmV2U3RhdGUgPT4gIXByZXZTdGF0ZSk7XG5cbiAgY29uc3Qgc2Nyb2xsVG9DdXJyZW50T3B0aW9uID0gKGlkeDogbnVtYmVyKSA9PiB7XG4gICAgaWYgKGxpc3RSZWYuY3VycmVudCkge1xuICAgICAgY29uc3QgbGlzdFNlbGVjdGVkT3B0aW9uID0gbGlzdFJlZi5jdXJyZW50LmNoaWxkcmVuW2lkeF0gYXMgSFRNTExJRWxlbWVudDtcbiAgICAgIGNvbnN0IGdldFlQb3NpdGlvbiA9IGxpc3RTZWxlY3RlZE9wdGlvbiAmJiBsaXN0U2VsZWN0ZWRPcHRpb24ub2Zmc2V0VG9wO1xuXG4gICAgICBsaXN0UmVmLmN1cnJlbnQuc2Nyb2xsKHtcbiAgICAgICAgdG9wOiBnZXRZUG9zaXRpb24gPz8gMCxcbiAgICAgICAgYmVoYXZpb3I6ICdzbW9vdGgnLFxuICAgICAgfSk7XG4gICAgfVxuICB9O1xuXG4gIGNvbnN0IG9uT3B0aW9uU2VsZWN0ID0gKGlkeDogbnVtYmVyKSA9PiB7XG4gICAgc2V0U2VsZWN0ZWRPcHRpb24oaWR4KTtcbiAgICBvbkNoYW5nZShvcHRpb25zW2lkeF0udmFsdWUpO1xuICAgIHNjcm9sbFRvQ3VycmVudE9wdGlvbihpZHgpO1xuICB9O1xuXG4gIGNvbnN0IG9uT3B0aW9uQ2hhbmdlID0gKGlkeDogbnVtYmVyKSA9PiB7XG4gICAgb25PcHRpb25TZWxlY3QoaWR4KTtcbiAgICBzZXRJc0Ryb3Bkb3duT3BlbihmYWxzZSk7XG4gIH07XG5cbiAgY29uc3QgaGFuZGxlTGlzdEtleURvd24gPSBlID0+IHtcbiAgICBzd2l0Y2ggKGUua2V5KSB7XG4gICAgICBjYXNlICdFc2NhcGUnOlxuICAgICAgICBlLnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgIHNldElzRHJvcGRvd25PcGVuKGZhbHNlKTtcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlICdBcnJvd1VwJzpcbiAgICAgIGNhc2UgJ0Fycm93TGVmdCc6XG4gICAgICAgIGlmICghaXNEcm9wZG93bk9wZW4pIHtcbiAgICAgICAgICBzZXRJc0Ryb3Bkb3duT3Blbih0cnVlKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGUucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgb25PcHRpb25TZWxlY3Qoc2VsZWN0ZWRPcHRpb24gLSAxID49IDAgPyBzZWxlY3RlZE9wdGlvbiAtIDEgOiBvcHRpb25zLmxlbmd0aCAtIDEpO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgJ0Fycm93RG93bic6XG4gICAgICBjYXNlICdBcnJvd1JpZ2h0JzpcbiAgICAgICAgaWYgKCFpc0Ryb3Bkb3duT3Blbikge1xuICAgICAgICAgIHNldElzRHJvcGRvd25PcGVuKHRydWUpO1xuICAgICAgICB9XG5cbiAgICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICBpZiAoc2VsZWN0ZWRPcHRpb24gPT09IG51bGwpIHtcbiAgICAgICAgICBvbk9wdGlvblNlbGVjdCgwKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBvbk9wdGlvblNlbGVjdChzZWxlY3RlZE9wdGlvbiA9PT0gb3B0aW9ucy5sZW5ndGggLSAxID8gMCA6IHNlbGVjdGVkT3B0aW9uICsgMSk7XG4gICAgICAgIH1cbiAgICAgICAgYnJlYWs7XG4gICAgICBkZWZhdWx0OlxuICAgICAgICBicmVhaztcbiAgICB9XG4gIH07XG5cbiAgY29uc3QgaGFuZGxlS2V5RG93biA9IGluZGV4ID0+IGUgPT4ge1xuICAgIHN3aXRjaCAoZS5rZXkpIHtcbiAgICAgIGNhc2UgJyAnOlxuICAgICAgY2FzZSAnU3BhY2VCYXInOlxuICAgICAgY2FzZSAnRW50ZXInOlxuICAgICAgICBlLnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgIG9uT3B0aW9uQ2hhbmdlKGluZGV4KTtcbiAgICAgICAgYnJlYWs7XG4gICAgICBkZWZhdWx0OlxuICAgICAgICBicmVhaztcbiAgICB9XG4gIH07XG5cbiAgY29uc3QgaGFzRXJyb3IgPSAhIWVycm9yO1xuXG4gIGNvbnN0IGhhc1NlbGVjdGVkT3B0aW9uID0gb3B0aW9ucyAmJiAhIW9wdGlvbnNbc2VsZWN0ZWRPcHRpb25dO1xuXG4gIGNvbnN0IGhhbmRsZU91dHNpZGVDbGljayA9IChldmVudDogTW91c2VFdmVudCkgPT4ge1xuICAgIGlmIChzZWxlY3RDb250YWluZXJSZWYuY3VycmVudCAmJiAhc2VsZWN0Q29udGFpbmVyUmVmLmN1cnJlbnQuY29udGFpbnMoZXZlbnQudGFyZ2V0IGFzIE5vZGUpKSB7XG4gICAgICBzZXRJc0Ryb3Bkb3duT3BlbihmYWxzZSk7XG4gICAgfVxuICB9O1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoJ2NsaWNrJywgaGFuZGxlT3V0c2lkZUNsaWNrKTtcblxuICAgIHJldHVybiAoKSA9PiB7XG4gICAgICB3aW5kb3cucmVtb3ZlRXZlbnRMaXN0ZW5lcignY2xpY2snLCBoYW5kbGVPdXRzaWRlQ2xpY2spO1xuICAgIH07XG4gIH0sIFtdKTtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGlmICh2YWx1ZSkge1xuICAgICAgY29uc3QgdmFsdWVJZHggPSBvcHRpb25zLmZpbmRJbmRleChvcHRpb24gPT4gb3B0aW9uLnZhbHVlID09PSB2YWx1ZS52YWx1ZSk7XG4gICAgICBzZXRTZWxlY3RlZE9wdGlvbih2YWx1ZUlkeCk7XG4gICAgfVxuICB9LCBbb3B0aW9ucywgdmFsdWVdKTtcblxuICByZXR1cm4gKFxuICAgIDxkaXZcbiAgICAgIGNzcz17e1xuICAgICAgICBtYXJnaW5Cb3R0b206IG1hcmtJbnZhbGlkID8gJzJweCcgOiAnMjBweCcsXG4gICAgICAgICcmOmZvY3VzLXdpdGhpbiBsYWJlbCc6IHtcbiAgICAgICAgICBjb2xvcjogQ09MT1JfVjIuQkxVRSxcbiAgICAgICAgfSxcbiAgICAgIH19XG4gICAgICBkYXRhLXVpZS1uYW1lPXtkYXRhVWllTmFtZX1cbiAgICAgIHJlZj17c2VsZWN0Q29udGFpbmVyUmVmfVxuICAgID5cbiAgICAgIHtsYWJlbCAmJiAoXG4gICAgICAgIDxJbnB1dExhYmVsIGh0bWxGb3I9e2lkfSBpc1JlcXVpcmVkPXtyZXF1aXJlZH0gbWFya0ludmFsaWQ9e21hcmtJbnZhbGlkfT5cbiAgICAgICAgICB7bGFiZWx9XG4gICAgICAgIDwvSW5wdXRMYWJlbD5cbiAgICAgICl9XG5cbiAgICAgIDxkaXYgY3NzPXt7cG9zaXRpb246ICdyZWxhdGl2ZSd9fT5cbiAgICAgICAgPGJ1dHRvblxuICAgICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAgIGFyaWEtYWN0aXZlZGVzY2VuZGFudD17aGFzU2VsZWN0ZWRPcHRpb24gPyBvcHRpb25zW3NlbGVjdGVkT3B0aW9uXS5sYWJlbCA6ICcnfVxuICAgICAgICAgIGFyaWEtZXhwYW5kZWQ9e2lzRHJvcGRvd25PcGVufVxuICAgICAgICAgIGFyaWEtaGFzcG9wdXA9XCJsaXN0Ym94XCJcbiAgICAgICAgICBhcmlhLWxhYmVsbGVkYnk9e2lkfVxuICAgICAgICAgIGlkPXtpZH1cbiAgICAgICAgICBvbkNsaWNrPXtvblRvZ2dsZURyb3Bkb3dufVxuICAgICAgICAgIG9uS2V5RG93bj17aGFuZGxlTGlzdEtleURvd259XG4gICAgICAgICAgY3NzPXsodGhlbWU6IFRoZW1lKSA9PiBzZWxlY3RTdHlsZSh0aGVtZSwgcHJvcHMsIGhhc0Vycm9yKX1cbiAgICAgICAgICB7Li4uZmlsdGVyU2VsZWN0UHJvcHMocHJvcHMpfVxuICAgICAgICAgIGRhdGEtdWllLW5hbWU9e2RhdGFVaWVOYW1lfVxuICAgICAgICA+XG4gICAgICAgICAge2hhc1NlbGVjdGVkT3B0aW9uID8gb3B0aW9uc1tzZWxlY3RlZE9wdGlvbl0ubGFiZWwgOiBwbGFjZWhvbGRlclRleHR9XG4gICAgICAgIDwvYnV0dG9uPlxuXG4gICAgICAgIDx1bFxuICAgICAgICAgIHJlZj17bGlzdFJlZn1cbiAgICAgICAgICByb2xlPVwibGlzdGJveFwiXG4gICAgICAgICAgYXJpYS1sYWJlbGxlZGJ5PXtpZH1cbiAgICAgICAgICB0YWJJbmRleD17LTF9XG4gICAgICAgICAgb25LZXlEb3duPXtoYW5kbGVMaXN0S2V5RG93bn1cbiAgICAgICAgICBjc3M9eyh0aGVtZTogVGhlbWUpID0+IGRyb3Bkb3duU3R5bGVzKHRoZW1lLCBpc0Ryb3Bkb3duT3Blbil9XG4gICAgICAgICAgey4uLihkYXRhVWllTmFtZSAmJiB7XG4gICAgICAgICAgICAnZGF0YS11aWUtbmFtZSc6IGBkcm9wZG93bi0ke2RhdGFVaWVOYW1lfWAsXG4gICAgICAgICAgfSl9XG4gICAgICAgID5cbiAgICAgICAgICB7b3B0aW9ucy5tYXAoKG9wdGlvbiwgaW5kZXgpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGlzU2VsZWN0ZWQgPSBzZWxlY3RlZE9wdGlvbiA9PSBpbmRleDtcblxuICAgICAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgICAgPGxpXG4gICAgICAgICAgICAgICAga2V5PXtvcHRpb24udmFsdWV9XG4gICAgICAgICAgICAgICAgaWQ9e29wdGlvbi52YWx1ZS50b1N0cmluZygpfVxuICAgICAgICAgICAgICAgIHJvbGU9XCJvcHRpb25cIlxuICAgICAgICAgICAgICAgIGFyaWEtc2VsZWN0ZWQ9e2lzU2VsZWN0ZWR9XG4gICAgICAgICAgICAgICAgdGFiSW5kZXg9ezB9XG4gICAgICAgICAgICAgICAgb25LZXlEb3duPXtoYW5kbGVLZXlEb3duKGluZGV4KX1cbiAgICAgICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiBvbk9wdGlvbkNoYW5nZShpbmRleCl9XG4gICAgICAgICAgICAgICAgY3NzPXsodGhlbWU6IFRoZW1lKSA9PiBkcm9wZG93bk9wdGlvblN0eWxlcyh0aGVtZSwgaXNTZWxlY3RlZCl9XG4gICAgICAgICAgICAgICAgey4uLihkYXRhVWllTmFtZSAmJiB7XG4gICAgICAgICAgICAgICAgICAnZGF0YS11aWUtbmFtZSc6IGBvcHRpb24tJHtkYXRhVWllTmFtZX1gLFxuICAgICAgICAgICAgICAgICAgJ2RhdGEtdWllLXZhbHVlJzogb3B0aW9uLmxhYmVsLFxuICAgICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAge29wdGlvbi5sYWJlbH1cbiAgICAgICAgICAgICAgPC9saT5cbiAgICAgICAgICAgICk7XG4gICAgICAgICAgfSl9XG4gICAgICAgIDwvdWw+XG4gICAgICA8L2Rpdj5cblxuICAgICAgeyFoYXNFcnJvciAmJiBoZWxwZXJUZXh0ICYmIChcbiAgICAgICAgPHAgY3NzPXt7Zm9udFNpemU6ICcxMnB4JywgZm9udFdlaWdodDogNDAwLCBjb2xvcjogQ09MT1JfVjIuR1JBWV84MCwgbWFyZ2luVG9wOiA4fX0+e2hlbHBlclRleHR9PC9wPlxuICAgICAgKX1cblxuICAgICAge2Vycm9yfVxuICAgIDwvZGl2PlxuICApO1xufTtcbiJdfQ== */",
|
|
144
146
|
toString: _EMOTION_STRINGIFIED_CSS_ERROR__
|
|
145
147
|
};
|
|
146
148
|
|
|
@@ -159,6 +161,7 @@ var Select = function Select(_ref2) {
|
|
|
159
161
|
dataUieName = _ref2.dataUieName,
|
|
160
162
|
props = (0, _objectWithoutProperties2["default"])(_ref2, _excluded2);
|
|
161
163
|
var selectContainerRef = (0, _react2.useRef)(null);
|
|
164
|
+
var listRef = (0, _react2.useRef)(null);
|
|
162
165
|
|
|
163
166
|
var _useState = (0, _react2.useState)(false),
|
|
164
167
|
_useState2 = (0, _slicedToArray2["default"])(_useState, 2),
|
|
@@ -166,7 +169,9 @@ var Select = function Select(_ref2) {
|
|
|
166
169
|
setIsDropdownOpen = _useState2[1];
|
|
167
170
|
|
|
168
171
|
var _useState3 = (0, _react2.useState)(function () {
|
|
169
|
-
return value ? options.
|
|
172
|
+
return value ? options.findIndex(function (option) {
|
|
173
|
+
return option.value === value.value;
|
|
174
|
+
}) : null;
|
|
170
175
|
}),
|
|
171
176
|
_useState4 = (0, _slicedToArray2["default"])(_useState3, 2),
|
|
172
177
|
selectedOption = _useState4[0],
|
|
@@ -178,9 +183,21 @@ var Select = function Select(_ref2) {
|
|
|
178
183
|
});
|
|
179
184
|
};
|
|
180
185
|
|
|
186
|
+
var scrollToCurrentOption = function scrollToCurrentOption(idx) {
|
|
187
|
+
if (listRef.current) {
|
|
188
|
+
var listSelectedOption = listRef.current.children[idx];
|
|
189
|
+
var getYPosition = listSelectedOption && listSelectedOption.offsetTop;
|
|
190
|
+
listRef.current.scroll({
|
|
191
|
+
top: getYPosition !== null && getYPosition !== void 0 ? getYPosition : 0,
|
|
192
|
+
behavior: 'smooth'
|
|
193
|
+
});
|
|
194
|
+
}
|
|
195
|
+
};
|
|
196
|
+
|
|
181
197
|
var onOptionSelect = function onOptionSelect(idx) {
|
|
182
198
|
setSelectedOption(idx);
|
|
183
199
|
onChange(options[idx].value);
|
|
200
|
+
scrollToCurrentOption(idx);
|
|
184
201
|
};
|
|
185
202
|
|
|
186
203
|
var onOptionChange = function onOptionChange(idx) {
|
|
@@ -257,13 +274,21 @@ var Select = function Select(_ref2) {
|
|
|
257
274
|
window.removeEventListener('click', handleOutsideClick);
|
|
258
275
|
};
|
|
259
276
|
}, []);
|
|
277
|
+
(0, _react2.useEffect)(function () {
|
|
278
|
+
if (value) {
|
|
279
|
+
var valueIdx = options.findIndex(function (option) {
|
|
280
|
+
return option.value === value.value;
|
|
281
|
+
});
|
|
282
|
+
setSelectedOption(valueIdx);
|
|
283
|
+
}
|
|
284
|
+
}, [options, value]);
|
|
260
285
|
return (0, _react.jsx)("div", {
|
|
261
286
|
css: /*#__PURE__*/(0, _react.css)({
|
|
262
287
|
marginBottom: markInvalid ? '2px' : '20px',
|
|
263
288
|
'&:focus-within label': {
|
|
264
289
|
color: _Identity.COLOR_V2.BLUE
|
|
265
290
|
}
|
|
266
|
-
}, process.env.NODE_ENV === "production" ? "" : ";label:Select;", process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIlNlbGVjdC50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBc09NIiwiZmlsZSI6IlNlbGVjdC50c3giLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogV2lyZVxuICogQ29weXJpZ2h0IChDKSAyMDE4IFdpcmUgU3dpc3MgR21iSFxuICpcbiAqIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOiB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5XG4gKiBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieVxuICogdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3JcbiAqIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uXG4gKlxuICogVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsXG4gKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZlxuICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiBTZWUgdGhlXG4gKiBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLlxuICpcbiAqIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlXG4gKiBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gSWYgbm90LCBzZWUgaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLy5cbiAqXG4gKi9cblxuLyoqIEBqc3gganN4ICovXG5pbXBvcnQge0NTU09iamVjdCwganN4fSBmcm9tICdAZW1vdGlvbi9yZWFjdCc7XG5cbmltcG9ydCB7Q09MT1JfVjJ9IGZyb20gJy4uL0lkZW50aXR5JztcbmltcG9ydCB0eXBlIHtUaGVtZX0gZnJvbSAnLi4vTGF5b3V0JztcbmltcG9ydCB7ZmlsdGVyUHJvcHMsIGlubGluZVNWR30gZnJvbSAnLi4vdXRpbCc7XG5pbXBvcnQge2lucHV0U3R5bGV9IGZyb20gJy4vSW5wdXQnO1xuaW1wb3J0IFJlYWN0LCB7UmVhY3RFbGVtZW50LCB1c2VFZmZlY3QsIHVzZVJlZiwgdXNlU3RhdGV9IGZyb20gJ3JlYWN0JztcbmltcG9ydCBJbnB1dExhYmVsIGZyb20gJy4vSW5wdXRMYWJlbCc7XG5cbnR5cGUgT3B0aW9uID0ge1xuICB2YWx1ZTogc3RyaW5nIHwgbnVtYmVyO1xuICBsYWJlbDogc3RyaW5nO1xufTtcblxuZXhwb3J0IGludGVyZmFjZSBTZWxlY3RQcm9wcyB7XG4gIGlkOiBzdHJpbmc7XG4gIG9uQ2hhbmdlOiAoc2VsZWN0ZWRPcHRpb246IHN0cmluZyB8IG51bWJlcikgPT4gdm9pZDtcbiAgZGF0YVVpZU5hbWU6IHN0cmluZztcbiAgb3B0aW9uczogT3B0aW9uW107XG4gIHZhbHVlPzogT3B0aW9uIHwgbnVsbDtcbiAgaGVscGVyVGV4dD86IHN0cmluZztcbiAgbGFiZWw/OiBzdHJpbmc7XG4gIGRpc2FibGVkPzogYm9vbGVhbjtcbiAgcmVxdWlyZWQ/OiBib29sZWFuO1xuICBtYXJrSW52YWxpZD86IGJvb2xlYW47XG4gIGVycm9yPzogUmVhY3RFbGVtZW50O1xufVxuXG5jb25zdCBBcnJvd0Rvd24gPSAodGhlbWU6IFRoZW1lKSA9PiBgXG4gICAgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIxNlwiIGhlaWdodD1cIjE2XCIgdmlld0JveD1cIjAgMCAxNiAxNlwiPlxuICAgICAgICA8cGF0aCBmaWxsPVwiJHt0aGVtZS5nZW5lcmFsLmNvbG9yfVwiIGZpbGwtcnVsZT1cImV2ZW5vZGRcIiBjbGlwLXJ1bGU9XCJldmVub2RkXCIgZD1cIk03Ljk5OTYzIDEyLjU3MTFMMTUuNjU2NSA0LjkxNDIxTDE0LjI0MjMgMy41TDcuOTk5NjMgOS43NDI2NEwxLjc1Njk5IDMuNUwwLjM0Mjc3MyA0LjkxNDIxTDcuOTk5NjMgMTIuNTcxMVpcIi8+XG4gICAgPC9zdmc+XG5gO1xuXG5leHBvcnQgY29uc3Qgc2VsZWN0U3R5bGU6IDxUPih0aGVtZTogVGhlbWUsIHByb3BzLCBlcnJvcj86IGJvb2xlYW4pID0+IENTU09iamVjdCA9IChcbiAgdGhlbWUsXG4gIHtkaXNhYmxlZCA9IGZhbHNlLCBtYXJrSW52YWxpZCwgLi4ucHJvcHN9LFxuICBlcnJvciA9IGZhbHNlLFxuKSA9PiAoe1xuICAuLi5pbnB1dFN0eWxlKHRoZW1lLCBwcm9wcyksXG4gICcmOi1tb3otZm9jdXNyaW5nJzoge1xuICAgIGNvbG9yOiAndHJhbnNwYXJlbnQnLFxuICAgIHRleHRTaGFkb3c6ICcwIDAgMCAjMDAwJyxcbiAgfSxcbiAgJyY6ZGlzYWJsZWQnOiB7XG4gICAgY29sb3I6IENPTE9SX1YyLkdSQVksXG4gIH0sXG4gIGFwcGVhcmFuY2U6ICdub25lJyxcbiAgYmFja2dyb3VuZDogZGlzYWJsZWRcbiAgICA/IGAke3RoZW1lLklucHV0LmJhY2tncm91bmRDb2xvckRpc2FibGVkfSBjZW50ZXIgcmlnaHQgMTZweCBuby1yZXBlYXQgdXJsKFwiJHtpbmxpbmVTVkcoQXJyb3dEb3duKHRoZW1lKSl9XCIpYFxuICAgIDogYCR7dGhlbWUuSW5wdXQuYmFja2dyb3VuZENvbG9yfSBjZW50ZXIgcmlnaHQgMTZweCBuby1yZXBlYXQgdXJsKFwiJHtpbmxpbmVTVkcoQXJyb3dEb3duKHRoZW1lKSl9XCIpYCxcbiAgYm94U2hhZG93OiBtYXJrSW52YWxpZCA/IGAwIDAgMCAxcHggJHtDT0xPUl9WMi5SRUR9YCA6IGAwIDAgMCAxcHggJHtDT0xPUl9WMi5HUkFZXzQwfWAsXG4gIGN1cnNvcjogZGlzYWJsZWQgPyAnbm9ybWFsJyA6ICdwb2ludGVyJyxcbiAgZm9udFNpemU6ICcxNnB4JyxcbiAgZm9udFdlaWdodDogMzAwLFxuICBwYWRkaW5nUmlnaHQ6ICczMHB4JyxcbiAgdGV4dEFsaWduOiAnbGVmdCcsXG4gIG1hcmdpbkJvdHRvbTogZXJyb3IgJiYgJzhweCcsXG4gICcmOmludmFsaWQsIG9wdGlvbjpmaXJzdC1vZi10eXBlJzoge1xuICAgIGNvbG9yOiBDT0xPUl9WMi5SRUQsXG4gIH0sXG4gIC4uLighZGlzYWJsZWQgJiYge1xuICAgICcmOmhvdmVyJzoge1xuICAgICAgYm94U2hhZG93OiBgMCAwIDAgMXB4ICR7Q09MT1JfVjIuR1JBWV82MH1gLFxuICAgIH0sXG4gICAgJyY6Zm9jdXMsICY6YWN0aXZlJzoge1xuICAgICAgYm94U2hhZG93OiBgMCAwIDAgMXB4ICR7Q09MT1JfVjIuQkxVRX1gLFxuICAgIH0sXG4gIH0pLFxufSk7XG5cbmNvbnN0IGRyb3Bkb3duU3R5bGVzID0gKHRoZW1lOiBUaGVtZSwgaXNEcm9wZG93bk9wZW46IGJvb2xlYW4pOiBDU1NPYmplY3QgPT4gKHtcbiAgaGVpZ2h0OiBpc0Ryb3Bkb3duT3BlbiA/ICdhdXRvJyA6IDAsXG4gIHZpc2liaWxpdHk6IGlzRHJvcGRvd25PcGVuID8gJ3Zpc2libGUnIDogJ2hpZGRlbicsXG4gIG1hcmdpbjogJzNweCAwIDAnLFxuICBwYWRkaW5nOiAwLFxuICBib3JkZXJSYWRpdXM6ICcxMHB4JyxcbiAgYm9yZGVyOiBgMXB4IHNvbGlkICR7Q09MT1JfVjIuQkxVRX1gLFxuICBwb3NpdGlvbjogJ2Fic29sdXRlJyxcbiAgdG9wOiAnMTAwJScsXG4gIGxlZnQ6IDAsXG4gIHdpZHRoOiAnMTAwJScsXG4gIHpJbmRleDogOSxcbn0pO1xuXG5jb25zdCBkcm9wZG93bk9wdGlvblN0eWxlcyA9ICh0aGVtZTogVGhlbWUsIGlzU2VsZWN0ZWQ6IGJvb2xlYW4pOiBDU1NPYmplY3QgPT4gKHtcbiAgYmFja2dyb3VuZDogaXNTZWxlY3RlZCA/IENPTE9SX1YyLkJMVUUgOiBDT0xPUl9WMi5XSElURSxcbiAgbGlzdFN0eWxlOiAnbm9uZScsXG4gIHBhZGRpbmc6ICcxMHB4IDIwcHggMTRweCcsXG4gIGN1cnNvcjogJ3BvaW50ZXInLFxuICBmb250U2l6ZTogJzE2cHgnLFxuICBmb250V2VpZ2h0OiAzMDAsXG4gIGxpbmVIZWlnaHQ6ICcyNHB4JyxcbiAgbGV0dGVyU3BhY2luZzogJzAuMDVweCcsXG4gIGNvbG9yOiBpc1NlbGVjdGVkID8gQ09MT1JfVjIuV0hJVEUgOiBDT0xPUl9WMi5CTEFDSyxcbiAgJyY6Zmlyc3Qtb2YtdHlwZSc6IHtcbiAgICBib3JkZXJSYWRpdXM6ICcxMHB4IDEwcHggMCAwJyxcbiAgfSxcbiAgJyY6bGFzdC1vZi10eXBlJzoge1xuICAgIGJvcmRlclJhZGl1czogJzAgMCAxMHB4IDEwcHgnLFxuICB9LFxuICAnJjpub3QoOmxhc3Qtb2YtdHlwZSknOiB7XG4gICAgYm9yZGVyQm90dG9tOiBgMXB4IHNvbGlkICR7Q09MT1JfVjIuR1JBWV80MH1gLFxuICB9LFxuICAnJjpob3ZlciwgJjphY3RpdmUsICY6Zm9jdXMnOiB7XG4gICAgYmFja2dyb3VuZDogQ09MT1JfVjIuQkxVRSxcbiAgICBib3JkZXJDb2xvcjogQ09MT1JfVjIuQkxVRSxcbiAgICBjb2xvcjogQ09MT1JfVjIuV0hJVEUsXG4gIH0sXG59KTtcblxuY29uc3QgZmlsdGVyU2VsZWN0UHJvcHMgPSBwcm9wcyA9PiBmaWx0ZXJQcm9wcyhwcm9wcywgWydtYXJrSW52YWxpZCddKTtcblxuY29uc3QgcGxhY2Vob2xkZXJUZXh0ID0gJy0gUGxlYXNlIHNlbGVjdCAtJztcblxuZXhwb3J0IGNvbnN0IFNlbGVjdCA9ICh7XG4gIGlkLFxuICBsYWJlbCxcbiAgZXJyb3IsXG4gIGhlbHBlclRleHQsXG4gIG9wdGlvbnMgPSBbXSxcbiAgdmFsdWUgPSBudWxsLFxuICBvbkNoYW5nZSxcbiAgcmVxdWlyZWQsXG4gIG1hcmtJbnZhbGlkLFxuICBkYXRhVWllTmFtZSxcbiAgLi4ucHJvcHNcbn06IFNlbGVjdFByb3BzKSA9PiB7XG4gIGNvbnN0IHNlbGVjdENvbnRhaW5lclJlZiA9IHVzZVJlZjxIVE1MRGl2RWxlbWVudD4obnVsbCk7XG4gIGNvbnN0IFtpc0Ryb3Bkb3duT3Blbiwgc2V0SXNEcm9wZG93bk9wZW5dID0gdXNlU3RhdGUoZmFsc2UpO1xuICBjb25zdCBbc2VsZWN0ZWRPcHRpb24sIHNldFNlbGVjdGVkT3B0aW9uXSA9IHVzZVN0YXRlPG51bWJlciB8IG51bGw+KCgpID0+ICh2YWx1ZSA/IG9wdGlvbnMuaW5kZXhPZih2YWx1ZSkgOiBudWxsKSk7XG5cbiAgY29uc3Qgb25Ub2dnbGVEcm9wZG93biA9ICgpID0+IHNldElzRHJvcGRvd25PcGVuKHByZXZTdGF0ZSA9PiAhcHJldlN0YXRlKTtcblxuICBjb25zdCBvbk9wdGlvblNlbGVjdCA9IChpZHg6IG51bWJlcikgPT4ge1xuICAgIHNldFNlbGVjdGVkT3B0aW9uKGlkeCk7XG4gICAgb25DaGFuZ2Uob3B0aW9uc1tpZHhdLnZhbHVlKTtcbiAgfTtcblxuICBjb25zdCBvbk9wdGlvbkNoYW5nZSA9IChpZHg6IG51bWJlcikgPT4ge1xuICAgIG9uT3B0aW9uU2VsZWN0KGlkeCk7XG4gICAgc2V0SXNEcm9wZG93bk9wZW4oZmFsc2UpO1xuICB9O1xuXG4gIGNvbnN0IGhhbmRsZUxpc3RLZXlEb3duID0gZSA9PiB7XG4gICAgc3dpdGNoIChlLmtleSkge1xuICAgICAgY2FzZSAnRXNjYXBlJzpcbiAgICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICBzZXRJc0Ryb3Bkb3duT3BlbihmYWxzZSk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSAnQXJyb3dVcCc6XG4gICAgICBjYXNlICdBcnJvd0xlZnQnOlxuICAgICAgICBpZiAoIWlzRHJvcGRvd25PcGVuKSB7XG4gICAgICAgICAgc2V0SXNEcm9wZG93bk9wZW4odHJ1ZSk7XG4gICAgICAgIH1cblxuICAgICAgICBlLnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgIG9uT3B0aW9uU2VsZWN0KHNlbGVjdGVkT3B0aW9uIC0gMSA+PSAwID8gc2VsZWN0ZWRPcHRpb24gLSAxIDogb3B0aW9ucy5sZW5ndGggLSAxKTtcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlICdBcnJvd0Rvd24nOlxuICAgICAgY2FzZSAnQXJyb3dSaWdodCc6XG4gICAgICAgIGlmICghaXNEcm9wZG93bk9wZW4pIHtcbiAgICAgICAgICBzZXRJc0Ryb3Bkb3duT3Blbih0cnVlKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGUucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgaWYgKHNlbGVjdGVkT3B0aW9uID09PSBudWxsKSB7XG4gICAgICAgICAgb25PcHRpb25TZWxlY3QoMCk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgb25PcHRpb25TZWxlY3Qoc2VsZWN0ZWRPcHRpb24gPT09IG9wdGlvbnMubGVuZ3RoIC0gMSA/IDAgOiBzZWxlY3RlZE9wdGlvbiArIDEpO1xuICAgICAgICB9XG4gICAgICAgIGJyZWFrO1xuICAgICAgZGVmYXVsdDpcbiAgICAgICAgYnJlYWs7XG4gICAgfVxuICB9O1xuXG4gIGNvbnN0IGhhbmRsZUtleURvd24gPSBpbmRleCA9PiBlID0+IHtcbiAgICBzd2l0Y2ggKGUua2V5KSB7XG4gICAgICBjYXNlICcgJzpcbiAgICAgIGNhc2UgJ1NwYWNlQmFyJzpcbiAgICAgIGNhc2UgJ0VudGVyJzpcbiAgICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICBvbk9wdGlvbkNoYW5nZShpbmRleCk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgZGVmYXVsdDpcbiAgICAgICAgYnJlYWs7XG4gICAgfVxuICB9O1xuXG4gIGNvbnN0IGhhc0Vycm9yID0gISFlcnJvcjtcblxuICBjb25zdCBoYXNTZWxlY3RlZE9wdGlvbiA9IG9wdGlvbnMgJiYgISFvcHRpb25zW3NlbGVjdGVkT3B0aW9uXTtcblxuICBjb25zdCBoYW5kbGVPdXRzaWRlQ2xpY2sgPSAoZXZlbnQ6IE1vdXNlRXZlbnQpID0+IHtcbiAgICBpZiAoc2VsZWN0Q29udGFpbmVyUmVmLmN1cnJlbnQgJiYgIXNlbGVjdENvbnRhaW5lclJlZi5jdXJyZW50LmNvbnRhaW5zKGV2ZW50LnRhcmdldCBhcyBOb2RlKSkge1xuICAgICAgc2V0SXNEcm9wZG93bk9wZW4oZmFsc2UpO1xuICAgIH1cbiAgfTtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCdjbGljaycsIGhhbmRsZU91dHNpZGVDbGljayk7XG5cbiAgICByZXR1cm4gKCkgPT4ge1xuICAgICAgd2luZG93LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ2NsaWNrJywgaGFuZGxlT3V0c2lkZUNsaWNrKTtcbiAgICB9O1xuICB9LCBbXSk7XG5cbiAgcmV0dXJuIChcbiAgICA8ZGl2XG4gICAgICBjc3M9e3tcbiAgICAgICAgbWFyZ2luQm90dG9tOiBtYXJrSW52YWxpZCA/ICcycHgnIDogJzIwcHgnLFxuICAgICAgICAnJjpmb2N1cy13aXRoaW4gbGFiZWwnOiB7XG4gICAgICAgICAgY29sb3I6IENPTE9SX1YyLkJMVUUsXG4gICAgICAgIH0sXG4gICAgICB9fVxuICAgICAgZGF0YS11aWUtbmFtZT17ZGF0YVVpZU5hbWV9XG4gICAgICByZWY9e3NlbGVjdENvbnRhaW5lclJlZn1cbiAgICA+XG4gICAgICB7bGFiZWwgJiYgKFxuICAgICAgICA8SW5wdXRMYWJlbCBodG1sRm9yPXtpZH0gaXNSZXF1aXJlZD17cmVxdWlyZWR9IG1hcmtJbnZhbGlkPXttYXJrSW52YWxpZH0+XG4gICAgICAgICAge2xhYmVsfVxuICAgICAgICA8L0lucHV0TGFiZWw+XG4gICAgICApfVxuXG4gICAgICA8ZGl2IGNzcz17e3Bvc2l0aW9uOiAncmVsYXRpdmUnfX0+XG4gICAgICAgIDxidXR0b25cbiAgICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgICBhcmlhLWFjdGl2ZWRlc2NlbmRhbnQ9e2hhc1NlbGVjdGVkT3B0aW9uID8gb3B0aW9uc1tzZWxlY3RlZE9wdGlvbl0ubGFiZWwgOiAnJ31cbiAgICAgICAgICBhcmlhLWV4cGFuZGVkPXtpc0Ryb3Bkb3duT3Blbn1cbiAgICAgICAgICBhcmlhLWhhc3BvcHVwPVwibGlzdGJveFwiXG4gICAgICAgICAgYXJpYS1sYWJlbGxlZGJ5PXtpZH1cbiAgICAgICAgICBpZD17aWR9XG4gICAgICAgICAgb25DbGljaz17b25Ub2dnbGVEcm9wZG93bn1cbiAgICAgICAgICBvbktleURvd249e2hhbmRsZUxpc3RLZXlEb3dufVxuICAgICAgICAgIGNzcz17KHRoZW1lOiBUaGVtZSkgPT4gc2VsZWN0U3R5bGUodGhlbWUsIHByb3BzLCBoYXNFcnJvcil9XG4gICAgICAgICAgey4uLmZpbHRlclNlbGVjdFByb3BzKHByb3BzKX1cbiAgICAgICAgICBkYXRhLXVpZS1uYW1lPXtkYXRhVWllTmFtZX1cbiAgICAgICAgPlxuICAgICAgICAgIHtoYXNTZWxlY3RlZE9wdGlvbiA/IG9wdGlvbnNbc2VsZWN0ZWRPcHRpb25dLmxhYmVsIDogcGxhY2Vob2xkZXJUZXh0fVxuICAgICAgICA8L2J1dHRvbj5cblxuICAgICAgICA8dWxcbiAgICAgICAgICByb2xlPVwibGlzdGJveFwiXG4gICAgICAgICAgYXJpYS1sYWJlbGxlZGJ5PXtpZH1cbiAgICAgICAgICB0YWJJbmRleD17LTF9XG4gICAgICAgICAgb25LZXlEb3duPXtoYW5kbGVMaXN0S2V5RG93bn1cbiAgICAgICAgICBjc3M9eyh0aGVtZTogVGhlbWUpID0+IGRyb3Bkb3duU3R5bGVzKHRoZW1lLCBpc0Ryb3Bkb3duT3Blbil9XG4gICAgICAgICAgey4uLihkYXRhVWllTmFtZSAmJiB7XG4gICAgICAgICAgICAnZGF0YS11aWUtbmFtZSc6IGBkcm9wZG93bi0ke2RhdGFVaWVOYW1lfWAsXG4gICAgICAgICAgfSl9XG4gICAgICAgID5cbiAgICAgICAgICB7b3B0aW9ucy5tYXAoKG9wdGlvbiwgaW5kZXgpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGlzU2VsZWN0ZWQgPSBzZWxlY3RlZE9wdGlvbiA9PSBpbmRleDtcblxuICAgICAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgICAgPGxpXG4gICAgICAgICAgICAgICAga2V5PXtvcHRpb24udmFsdWV9XG4gICAgICAgICAgICAgICAgaWQ9e29wdGlvbi52YWx1ZS50b1N0cmluZygpfVxuICAgICAgICAgICAgICAgIHJvbGU9XCJvcHRpb25cIlxuICAgICAgICAgICAgICAgIGFyaWEtc2VsZWN0ZWQ9e2lzU2VsZWN0ZWR9XG4gICAgICAgICAgICAgICAgdGFiSW5kZXg9ezB9XG4gICAgICAgICAgICAgICAgb25LZXlEb3duPXtoYW5kbGVLZXlEb3duKGluZGV4KX1cbiAgICAgICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiBvbk9wdGlvbkNoYW5nZShpbmRleCl9XG4gICAgICAgICAgICAgICAgY3NzPXsodGhlbWU6IFRoZW1lKSA9PiBkcm9wZG93bk9wdGlvblN0eWxlcyh0aGVtZSwgaXNTZWxlY3RlZCl9XG4gICAgICAgICAgICAgICAgey4uLihkYXRhVWllTmFtZSAmJiB7XG4gICAgICAgICAgICAgICAgICAnZGF0YS11aWUtbmFtZSc6IGBvcHRpb24tJHtkYXRhVWllTmFtZX1gLFxuICAgICAgICAgICAgICAgICAgJ2RhdGEtdWllLXZhbHVlJzogb3B0aW9uLmxhYmVsLFxuICAgICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAge29wdGlvbi5sYWJlbH1cbiAgICAgICAgICAgICAgPC9saT5cbiAgICAgICAgICAgICk7XG4gICAgICAgICAgfSl9XG4gICAgICAgIDwvdWw+XG4gICAgICA8L2Rpdj5cblxuICAgICAgeyFoYXNFcnJvciAmJiBoZWxwZXJUZXh0ICYmIChcbiAgICAgICAgPHAgY3NzPXt7Zm9udFNpemU6ICcxMnB4JywgZm9udFdlaWdodDogNDAwLCBjb2xvcjogQ09MT1JfVjIuR1JBWV84MCwgbWFyZ2luVG9wOiA4fX0+e2hlbHBlclRleHR9PC9wPlxuICAgICAgKX1cblxuICAgICAge2Vycm9yfVxuICAgIDwvZGl2PlxuICApO1xufTtcbiJdfQ== */"),
|
|
291
|
+
}, process.env.NODE_ENV === "production" ? "" : ";label:Select;", process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIlNlbGVjdC50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBK1BNIiwiZmlsZSI6IlNlbGVjdC50c3giLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogV2lyZVxuICogQ29weXJpZ2h0IChDKSAyMDE4IFdpcmUgU3dpc3MgR21iSFxuICpcbiAqIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOiB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5XG4gKiBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieVxuICogdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3JcbiAqIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uXG4gKlxuICogVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsXG4gKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZlxuICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiBTZWUgdGhlXG4gKiBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLlxuICpcbiAqIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlXG4gKiBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gSWYgbm90LCBzZWUgaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLy5cbiAqXG4gKi9cblxuLyoqIEBqc3gganN4ICovXG5pbXBvcnQge0NTU09iamVjdCwganN4fSBmcm9tICdAZW1vdGlvbi9yZWFjdCc7XG5cbmltcG9ydCB7Q09MT1JfVjJ9IGZyb20gJy4uL0lkZW50aXR5JztcbmltcG9ydCB0eXBlIHtUaGVtZX0gZnJvbSAnLi4vTGF5b3V0JztcbmltcG9ydCB7ZmlsdGVyUHJvcHMsIGlubGluZVNWR30gZnJvbSAnLi4vdXRpbCc7XG5pbXBvcnQge2lucHV0U3R5bGV9IGZyb20gJy4vSW5wdXQnO1xuaW1wb3J0IFJlYWN0LCB7UmVhY3RFbGVtZW50LCB1c2VFZmZlY3QsIHVzZVJlZiwgdXNlU3RhdGV9IGZyb20gJ3JlYWN0JztcbmltcG9ydCBJbnB1dExhYmVsIGZyb20gJy4vSW5wdXRMYWJlbCc7XG5cbnR5cGUgT3B0aW9uID0ge1xuICB2YWx1ZTogc3RyaW5nIHwgbnVtYmVyO1xuICBsYWJlbDogc3RyaW5nO1xufTtcblxuZXhwb3J0IGludGVyZmFjZSBTZWxlY3RQcm9wcyB7XG4gIGlkOiBzdHJpbmc7XG4gIG9uQ2hhbmdlOiAoc2VsZWN0ZWRPcHRpb246IHN0cmluZyB8IG51bWJlcikgPT4gdm9pZDtcbiAgZGF0YVVpZU5hbWU6IHN0cmluZztcbiAgb3B0aW9uczogT3B0aW9uW107XG4gIHZhbHVlPzogT3B0aW9uIHwgbnVsbDtcbiAgaGVscGVyVGV4dD86IHN0cmluZztcbiAgbGFiZWw/OiBzdHJpbmc7XG4gIGRpc2FibGVkPzogYm9vbGVhbjtcbiAgcmVxdWlyZWQ/OiBib29sZWFuO1xuICBtYXJrSW52YWxpZD86IGJvb2xlYW47XG4gIGVycm9yPzogUmVhY3RFbGVtZW50O1xufVxuXG5jb25zdCBBcnJvd0Rvd24gPSAodGhlbWU6IFRoZW1lKSA9PiBgXG4gICAgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIxNlwiIGhlaWdodD1cIjE2XCIgdmlld0JveD1cIjAgMCAxNiAxNlwiPlxuICAgICAgICA8cGF0aCBmaWxsPVwiJHt0aGVtZS5nZW5lcmFsLmNvbG9yfVwiIGZpbGwtcnVsZT1cImV2ZW5vZGRcIiBjbGlwLXJ1bGU9XCJldmVub2RkXCIgZD1cIk03Ljk5OTYzIDEyLjU3MTFMMTUuNjU2NSA0LjkxNDIxTDE0LjI0MjMgMy41TDcuOTk5NjMgOS43NDI2NEwxLjc1Njk5IDMuNUwwLjM0Mjc3MyA0LjkxNDIxTDcuOTk5NjMgMTIuNTcxMVpcIi8+XG4gICAgPC9zdmc+XG5gO1xuXG5leHBvcnQgY29uc3Qgc2VsZWN0U3R5bGU6IDxUPih0aGVtZTogVGhlbWUsIHByb3BzLCBlcnJvcj86IGJvb2xlYW4pID0+IENTU09iamVjdCA9IChcbiAgdGhlbWUsXG4gIHtkaXNhYmxlZCA9IGZhbHNlLCBtYXJrSW52YWxpZCwgLi4ucHJvcHN9LFxuICBlcnJvciA9IGZhbHNlLFxuKSA9PiAoe1xuICAuLi5pbnB1dFN0eWxlKHRoZW1lLCBwcm9wcyksXG4gICcmOi1tb3otZm9jdXNyaW5nJzoge1xuICAgIGNvbG9yOiAndHJhbnNwYXJlbnQnLFxuICAgIHRleHRTaGFkb3c6ICcwIDAgMCAjMDAwJyxcbiAgfSxcbiAgJyY6ZGlzYWJsZWQnOiB7XG4gICAgY29sb3I6IENPTE9SX1YyLkdSQVksXG4gIH0sXG4gIGFwcGVhcmFuY2U6ICdub25lJyxcbiAgYmFja2dyb3VuZDogZGlzYWJsZWRcbiAgICA/IGAke3RoZW1lLklucHV0LmJhY2tncm91bmRDb2xvckRpc2FibGVkfSBjZW50ZXIgcmlnaHQgMTZweCBuby1yZXBlYXQgdXJsKFwiJHtpbmxpbmVTVkcoQXJyb3dEb3duKHRoZW1lKSl9XCIpYFxuICAgIDogYCR7dGhlbWUuSW5wdXQuYmFja2dyb3VuZENvbG9yfSBjZW50ZXIgcmlnaHQgMTZweCBuby1yZXBlYXQgdXJsKFwiJHtpbmxpbmVTVkcoQXJyb3dEb3duKHRoZW1lKSl9XCIpYCxcbiAgYm94U2hhZG93OiBtYXJrSW52YWxpZCA/IGAwIDAgMCAxcHggJHtDT0xPUl9WMi5SRUR9YCA6IGAwIDAgMCAxcHggJHtDT0xPUl9WMi5HUkFZXzQwfWAsXG4gIGN1cnNvcjogZGlzYWJsZWQgPyAnbm9ybWFsJyA6ICdwb2ludGVyJyxcbiAgZm9udFNpemU6ICcxNnB4JyxcbiAgZm9udFdlaWdodDogMzAwLFxuICBwYWRkaW5nUmlnaHQ6ICczMHB4JyxcbiAgdGV4dEFsaWduOiAnbGVmdCcsXG4gIG1hcmdpbkJvdHRvbTogZXJyb3IgJiYgJzhweCcsXG4gICcmOmludmFsaWQsIG9wdGlvbjpmaXJzdC1vZi10eXBlJzoge1xuICAgIGNvbG9yOiBDT0xPUl9WMi5SRUQsXG4gIH0sXG4gIC4uLighZGlzYWJsZWQgJiYge1xuICAgICcmOmhvdmVyJzoge1xuICAgICAgYm94U2hhZG93OiBgMCAwIDAgMXB4ICR7Q09MT1JfVjIuR1JBWV82MH1gLFxuICAgIH0sXG4gICAgJyY6Zm9jdXMsICY6YWN0aXZlJzoge1xuICAgICAgYm94U2hhZG93OiBgMCAwIDAgMXB4ICR7Q09MT1JfVjIuQkxVRX1gLFxuICAgIH0sXG4gIH0pLFxufSk7XG5cbmNvbnN0IGRyb3Bkb3duU3R5bGVzID0gKHRoZW1lOiBUaGVtZSwgaXNEcm9wZG93bk9wZW46IGJvb2xlYW4pOiBDU1NPYmplY3QgPT4gKHtcbiAgaGVpZ2h0OiBpc0Ryb3Bkb3duT3BlbiA/ICdhdXRvJyA6IDAsXG4gIHZpc2liaWxpdHk6IGlzRHJvcGRvd25PcGVuID8gJ3Zpc2libGUnIDogJ2hpZGRlbicsXG4gIG1hcmdpbjogJzNweCAwIDAnLFxuICBwYWRkaW5nOiAwLFxuICBib3JkZXJSYWRpdXM6ICcxMHB4JyxcbiAgYm9yZGVyOiBgMXB4IHNvbGlkICR7Q09MT1JfVjIuQkxVRX1gLFxuICBwb3NpdGlvbjogJ2Fic29sdXRlJyxcbiAgdG9wOiAnMTAwJScsXG4gIGxlZnQ6IDAsXG4gIHdpZHRoOiAnMTAwJScsXG4gIG1heEhlaWdodDogJzI0MHB4JyxcbiAgb3ZlcmZsb3dZOiAnYXV0bycsXG4gIHpJbmRleDogOSxcbn0pO1xuXG5jb25zdCBkcm9wZG93bk9wdGlvblN0eWxlcyA9ICh0aGVtZTogVGhlbWUsIGlzU2VsZWN0ZWQ6IGJvb2xlYW4pOiBDU1NPYmplY3QgPT4gKHtcbiAgYmFja2dyb3VuZDogaXNTZWxlY3RlZCA/IENPTE9SX1YyLkJMVUUgOiBDT0xPUl9WMi5XSElURSxcbiAgbGlzdFN0eWxlOiAnbm9uZScsXG4gIHBhZGRpbmc6ICcxMHB4IDIwcHggMTRweCcsXG4gIGN1cnNvcjogJ3BvaW50ZXInLFxuICBmb250U2l6ZTogJzE2cHgnLFxuICBmb250V2VpZ2h0OiAzMDAsXG4gIGxpbmVIZWlnaHQ6ICcyNHB4JyxcbiAgbGV0dGVyU3BhY2luZzogJzAuMDVweCcsXG4gIGNvbG9yOiBpc1NlbGVjdGVkID8gQ09MT1JfVjIuV0hJVEUgOiBDT0xPUl9WMi5CTEFDSyxcbiAgJyY6Zmlyc3Qtb2YtdHlwZSc6IHtcbiAgICBib3JkZXJSYWRpdXM6ICcxMHB4IDEwcHggMCAwJyxcbiAgfSxcbiAgJyY6bGFzdC1vZi10eXBlJzoge1xuICAgIGJvcmRlclJhZGl1czogJzAgMCAxMHB4IDEwcHgnLFxuICB9LFxuICAnJjpub3QoOmxhc3Qtb2YtdHlwZSknOiB7XG4gICAgYm9yZGVyQm90dG9tOiBgMXB4IHNvbGlkICR7Q09MT1JfVjIuR1JBWV80MH1gLFxuICB9LFxuICAnJjpob3ZlciwgJjphY3RpdmUsICY6Zm9jdXMnOiB7XG4gICAgYmFja2dyb3VuZDogQ09MT1JfVjIuQkxVRSxcbiAgICBib3JkZXJDb2xvcjogQ09MT1JfVjIuQkxVRSxcbiAgICBjb2xvcjogQ09MT1JfVjIuV0hJVEUsXG4gIH0sXG59KTtcblxuY29uc3QgZmlsdGVyU2VsZWN0UHJvcHMgPSBwcm9wcyA9PiBmaWx0ZXJQcm9wcyhwcm9wcywgWydtYXJrSW52YWxpZCddKTtcblxuY29uc3QgcGxhY2Vob2xkZXJUZXh0ID0gJy0gUGxlYXNlIHNlbGVjdCAtJztcblxuZXhwb3J0IGNvbnN0IFNlbGVjdCA9ICh7XG4gIGlkLFxuICBsYWJlbCxcbiAgZXJyb3IsXG4gIGhlbHBlclRleHQsXG4gIG9wdGlvbnMgPSBbXSxcbiAgdmFsdWUgPSBudWxsLFxuICBvbkNoYW5nZSxcbiAgcmVxdWlyZWQsXG4gIG1hcmtJbnZhbGlkLFxuICBkYXRhVWllTmFtZSxcbiAgLi4ucHJvcHNcbn06IFNlbGVjdFByb3BzKSA9PiB7XG4gIGNvbnN0IHNlbGVjdENvbnRhaW5lclJlZiA9IHVzZVJlZjxIVE1MRGl2RWxlbWVudD4obnVsbCk7XG4gIGNvbnN0IGxpc3RSZWYgPSB1c2VSZWY8SFRNTFVMaXN0RWxlbWVudD4obnVsbCk7XG4gIGNvbnN0IFtpc0Ryb3Bkb3duT3Blbiwgc2V0SXNEcm9wZG93bk9wZW5dID0gdXNlU3RhdGUoZmFsc2UpO1xuICBjb25zdCBbc2VsZWN0ZWRPcHRpb24sIHNldFNlbGVjdGVkT3B0aW9uXSA9IHVzZVN0YXRlPG51bWJlciB8IG51bGw+KCgpID0+XG4gICAgdmFsdWUgPyBvcHRpb25zLmZpbmRJbmRleChvcHRpb24gPT4gb3B0aW9uLnZhbHVlID09PSB2YWx1ZS52YWx1ZSkgOiBudWxsLFxuICApO1xuXG4gIGNvbnN0IG9uVG9nZ2xlRHJvcGRvd24gPSAoKSA9PiBzZXRJc0Ryb3Bkb3duT3BlbihwcmV2U3RhdGUgPT4gIXByZXZTdGF0ZSk7XG5cbiAgY29uc3Qgc2Nyb2xsVG9DdXJyZW50T3B0aW9uID0gKGlkeDogbnVtYmVyKSA9PiB7XG4gICAgaWYgKGxpc3RSZWYuY3VycmVudCkge1xuICAgICAgY29uc3QgbGlzdFNlbGVjdGVkT3B0aW9uID0gbGlzdFJlZi5jdXJyZW50LmNoaWxkcmVuW2lkeF0gYXMgSFRNTExJRWxlbWVudDtcbiAgICAgIGNvbnN0IGdldFlQb3NpdGlvbiA9IGxpc3RTZWxlY3RlZE9wdGlvbiAmJiBsaXN0U2VsZWN0ZWRPcHRpb24ub2Zmc2V0VG9wO1xuXG4gICAgICBsaXN0UmVmLmN1cnJlbnQuc2Nyb2xsKHtcbiAgICAgICAgdG9wOiBnZXRZUG9zaXRpb24gPz8gMCxcbiAgICAgICAgYmVoYXZpb3I6ICdzbW9vdGgnLFxuICAgICAgfSk7XG4gICAgfVxuICB9O1xuXG4gIGNvbnN0IG9uT3B0aW9uU2VsZWN0ID0gKGlkeDogbnVtYmVyKSA9PiB7XG4gICAgc2V0U2VsZWN0ZWRPcHRpb24oaWR4KTtcbiAgICBvbkNoYW5nZShvcHRpb25zW2lkeF0udmFsdWUpO1xuICAgIHNjcm9sbFRvQ3VycmVudE9wdGlvbihpZHgpO1xuICB9O1xuXG4gIGNvbnN0IG9uT3B0aW9uQ2hhbmdlID0gKGlkeDogbnVtYmVyKSA9PiB7XG4gICAgb25PcHRpb25TZWxlY3QoaWR4KTtcbiAgICBzZXRJc0Ryb3Bkb3duT3BlbihmYWxzZSk7XG4gIH07XG5cbiAgY29uc3QgaGFuZGxlTGlzdEtleURvd24gPSBlID0+IHtcbiAgICBzd2l0Y2ggKGUua2V5KSB7XG4gICAgICBjYXNlICdFc2NhcGUnOlxuICAgICAgICBlLnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgIHNldElzRHJvcGRvd25PcGVuKGZhbHNlKTtcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlICdBcnJvd1VwJzpcbiAgICAgIGNhc2UgJ0Fycm93TGVmdCc6XG4gICAgICAgIGlmICghaXNEcm9wZG93bk9wZW4pIHtcbiAgICAgICAgICBzZXRJc0Ryb3Bkb3duT3Blbih0cnVlKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGUucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgb25PcHRpb25TZWxlY3Qoc2VsZWN0ZWRPcHRpb24gLSAxID49IDAgPyBzZWxlY3RlZE9wdGlvbiAtIDEgOiBvcHRpb25zLmxlbmd0aCAtIDEpO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgJ0Fycm93RG93bic6XG4gICAgICBjYXNlICdBcnJvd1JpZ2h0JzpcbiAgICAgICAgaWYgKCFpc0Ryb3Bkb3duT3Blbikge1xuICAgICAgICAgIHNldElzRHJvcGRvd25PcGVuKHRydWUpO1xuICAgICAgICB9XG5cbiAgICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICBpZiAoc2VsZWN0ZWRPcHRpb24gPT09IG51bGwpIHtcbiAgICAgICAgICBvbk9wdGlvblNlbGVjdCgwKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBvbk9wdGlvblNlbGVjdChzZWxlY3RlZE9wdGlvbiA9PT0gb3B0aW9ucy5sZW5ndGggLSAxID8gMCA6IHNlbGVjdGVkT3B0aW9uICsgMSk7XG4gICAgICAgIH1cbiAgICAgICAgYnJlYWs7XG4gICAgICBkZWZhdWx0OlxuICAgICAgICBicmVhaztcbiAgICB9XG4gIH07XG5cbiAgY29uc3QgaGFuZGxlS2V5RG93biA9IGluZGV4ID0+IGUgPT4ge1xuICAgIHN3aXRjaCAoZS5rZXkpIHtcbiAgICAgIGNhc2UgJyAnOlxuICAgICAgY2FzZSAnU3BhY2VCYXInOlxuICAgICAgY2FzZSAnRW50ZXInOlxuICAgICAgICBlLnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgIG9uT3B0aW9uQ2hhbmdlKGluZGV4KTtcbiAgICAgICAgYnJlYWs7XG4gICAgICBkZWZhdWx0OlxuICAgICAgICBicmVhaztcbiAgICB9XG4gIH07XG5cbiAgY29uc3QgaGFzRXJyb3IgPSAhIWVycm9yO1xuXG4gIGNvbnN0IGhhc1NlbGVjdGVkT3B0aW9uID0gb3B0aW9ucyAmJiAhIW9wdGlvbnNbc2VsZWN0ZWRPcHRpb25dO1xuXG4gIGNvbnN0IGhhbmRsZU91dHNpZGVDbGljayA9IChldmVudDogTW91c2VFdmVudCkgPT4ge1xuICAgIGlmIChzZWxlY3RDb250YWluZXJSZWYuY3VycmVudCAmJiAhc2VsZWN0Q29udGFpbmVyUmVmLmN1cnJlbnQuY29udGFpbnMoZXZlbnQudGFyZ2V0IGFzIE5vZGUpKSB7XG4gICAgICBzZXRJc0Ryb3Bkb3duT3BlbihmYWxzZSk7XG4gICAgfVxuICB9O1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoJ2NsaWNrJywgaGFuZGxlT3V0c2lkZUNsaWNrKTtcblxuICAgIHJldHVybiAoKSA9PiB7XG4gICAgICB3aW5kb3cucmVtb3ZlRXZlbnRMaXN0ZW5lcignY2xpY2snLCBoYW5kbGVPdXRzaWRlQ2xpY2spO1xuICAgIH07XG4gIH0sIFtdKTtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGlmICh2YWx1ZSkge1xuICAgICAgY29uc3QgdmFsdWVJZHggPSBvcHRpb25zLmZpbmRJbmRleChvcHRpb24gPT4gb3B0aW9uLnZhbHVlID09PSB2YWx1ZS52YWx1ZSk7XG4gICAgICBzZXRTZWxlY3RlZE9wdGlvbih2YWx1ZUlkeCk7XG4gICAgfVxuICB9LCBbb3B0aW9ucywgdmFsdWVdKTtcblxuICByZXR1cm4gKFxuICAgIDxkaXZcbiAgICAgIGNzcz17e1xuICAgICAgICBtYXJnaW5Cb3R0b206IG1hcmtJbnZhbGlkID8gJzJweCcgOiAnMjBweCcsXG4gICAgICAgICcmOmZvY3VzLXdpdGhpbiBsYWJlbCc6IHtcbiAgICAgICAgICBjb2xvcjogQ09MT1JfVjIuQkxVRSxcbiAgICAgICAgfSxcbiAgICAgIH19XG4gICAgICBkYXRhLXVpZS1uYW1lPXtkYXRhVWllTmFtZX1cbiAgICAgIHJlZj17c2VsZWN0Q29udGFpbmVyUmVmfVxuICAgID5cbiAgICAgIHtsYWJlbCAmJiAoXG4gICAgICAgIDxJbnB1dExhYmVsIGh0bWxGb3I9e2lkfSBpc1JlcXVpcmVkPXtyZXF1aXJlZH0gbWFya0ludmFsaWQ9e21hcmtJbnZhbGlkfT5cbiAgICAgICAgICB7bGFiZWx9XG4gICAgICAgIDwvSW5wdXRMYWJlbD5cbiAgICAgICl9XG5cbiAgICAgIDxkaXYgY3NzPXt7cG9zaXRpb246ICdyZWxhdGl2ZSd9fT5cbiAgICAgICAgPGJ1dHRvblxuICAgICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAgIGFyaWEtYWN0aXZlZGVzY2VuZGFudD17aGFzU2VsZWN0ZWRPcHRpb24gPyBvcHRpb25zW3NlbGVjdGVkT3B0aW9uXS5sYWJlbCA6ICcnfVxuICAgICAgICAgIGFyaWEtZXhwYW5kZWQ9e2lzRHJvcGRvd25PcGVufVxuICAgICAgICAgIGFyaWEtaGFzcG9wdXA9XCJsaXN0Ym94XCJcbiAgICAgICAgICBhcmlhLWxhYmVsbGVkYnk9e2lkfVxuICAgICAgICAgIGlkPXtpZH1cbiAgICAgICAgICBvbkNsaWNrPXtvblRvZ2dsZURyb3Bkb3dufVxuICAgICAgICAgIG9uS2V5RG93bj17aGFuZGxlTGlzdEtleURvd259XG4gICAgICAgICAgY3NzPXsodGhlbWU6IFRoZW1lKSA9PiBzZWxlY3RTdHlsZSh0aGVtZSwgcHJvcHMsIGhhc0Vycm9yKX1cbiAgICAgICAgICB7Li4uZmlsdGVyU2VsZWN0UHJvcHMocHJvcHMpfVxuICAgICAgICAgIGRhdGEtdWllLW5hbWU9e2RhdGFVaWVOYW1lfVxuICAgICAgICA+XG4gICAgICAgICAge2hhc1NlbGVjdGVkT3B0aW9uID8gb3B0aW9uc1tzZWxlY3RlZE9wdGlvbl0ubGFiZWwgOiBwbGFjZWhvbGRlclRleHR9XG4gICAgICAgIDwvYnV0dG9uPlxuXG4gICAgICAgIDx1bFxuICAgICAgICAgIHJlZj17bGlzdFJlZn1cbiAgICAgICAgICByb2xlPVwibGlzdGJveFwiXG4gICAgICAgICAgYXJpYS1sYWJlbGxlZGJ5PXtpZH1cbiAgICAgICAgICB0YWJJbmRleD17LTF9XG4gICAgICAgICAgb25LZXlEb3duPXtoYW5kbGVMaXN0S2V5RG93bn1cbiAgICAgICAgICBjc3M9eyh0aGVtZTogVGhlbWUpID0+IGRyb3Bkb3duU3R5bGVzKHRoZW1lLCBpc0Ryb3Bkb3duT3Blbil9XG4gICAgICAgICAgey4uLihkYXRhVWllTmFtZSAmJiB7XG4gICAgICAgICAgICAnZGF0YS11aWUtbmFtZSc6IGBkcm9wZG93bi0ke2RhdGFVaWVOYW1lfWAsXG4gICAgICAgICAgfSl9XG4gICAgICAgID5cbiAgICAgICAgICB7b3B0aW9ucy5tYXAoKG9wdGlvbiwgaW5kZXgpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGlzU2VsZWN0ZWQgPSBzZWxlY3RlZE9wdGlvbiA9PSBpbmRleDtcblxuICAgICAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgICAgPGxpXG4gICAgICAgICAgICAgICAga2V5PXtvcHRpb24udmFsdWV9XG4gICAgICAgICAgICAgICAgaWQ9e29wdGlvbi52YWx1ZS50b1N0cmluZygpfVxuICAgICAgICAgICAgICAgIHJvbGU9XCJvcHRpb25cIlxuICAgICAgICAgICAgICAgIGFyaWEtc2VsZWN0ZWQ9e2lzU2VsZWN0ZWR9XG4gICAgICAgICAgICAgICAgdGFiSW5kZXg9ezB9XG4gICAgICAgICAgICAgICAgb25LZXlEb3duPXtoYW5kbGVLZXlEb3duKGluZGV4KX1cbiAgICAgICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiBvbk9wdGlvbkNoYW5nZShpbmRleCl9XG4gICAgICAgICAgICAgICAgY3NzPXsodGhlbWU6IFRoZW1lKSA9PiBkcm9wZG93bk9wdGlvblN0eWxlcyh0aGVtZSwgaXNTZWxlY3RlZCl9XG4gICAgICAgICAgICAgICAgey4uLihkYXRhVWllTmFtZSAmJiB7XG4gICAgICAgICAgICAgICAgICAnZGF0YS11aWUtbmFtZSc6IGBvcHRpb24tJHtkYXRhVWllTmFtZX1gLFxuICAgICAgICAgICAgICAgICAgJ2RhdGEtdWllLXZhbHVlJzogb3B0aW9uLmxhYmVsLFxuICAgICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAge29wdGlvbi5sYWJlbH1cbiAgICAgICAgICAgICAgPC9saT5cbiAgICAgICAgICAgICk7XG4gICAgICAgICAgfSl9XG4gICAgICAgIDwvdWw+XG4gICAgICA8L2Rpdj5cblxuICAgICAgeyFoYXNFcnJvciAmJiBoZWxwZXJUZXh0ICYmIChcbiAgICAgICAgPHAgY3NzPXt7Zm9udFNpemU6ICcxMnB4JywgZm9udFdlaWdodDogNDAwLCBjb2xvcjogQ09MT1JfVjIuR1JBWV84MCwgbWFyZ2luVG9wOiA4fX0+e2hlbHBlclRleHR9PC9wPlxuICAgICAgKX1cblxuICAgICAge2Vycm9yfVxuICAgIDwvZGl2PlxuICApO1xufTtcbiJdfQ== */"),
|
|
267
292
|
"data-uie-name": dataUieName,
|
|
268
293
|
ref: selectContainerRef
|
|
269
294
|
}, label && (0, _react.jsx)(_InputLabel["default"], {
|
|
@@ -287,6 +312,7 @@ var Select = function Select(_ref2) {
|
|
|
287
312
|
}, filterSelectProps(props), {
|
|
288
313
|
"data-uie-name": dataUieName
|
|
289
314
|
}), hasSelectedOption ? options[selectedOption].label : placeholderText), (0, _react.jsx)("ul", (0, _extends2["default"])({
|
|
315
|
+
ref: listRef,
|
|
290
316
|
role: "listbox",
|
|
291
317
|
"aria-labelledby": id,
|
|
292
318
|
tabIndex: -1,
|
|
@@ -321,7 +347,7 @@ var Select = function Select(_ref2) {
|
|
|
321
347
|
fontWeight: 400,
|
|
322
348
|
color: _Identity.COLOR_V2.GRAY_80,
|
|
323
349
|
marginTop: 8
|
|
324
|
-
}, process.env.NODE_ENV === "production" ? "" : ";label:Select;", process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIlNlbGVjdC50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBMFNXIiwiZmlsZSI6IlNlbGVjdC50c3giLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogV2lyZVxuICogQ29weXJpZ2h0IChDKSAyMDE4IFdpcmUgU3dpc3MgR21iSFxuICpcbiAqIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOiB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5XG4gKiBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieVxuICogdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3JcbiAqIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uXG4gKlxuICogVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsXG4gKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZlxuICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiBTZWUgdGhlXG4gKiBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLlxuICpcbiAqIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlXG4gKiBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gSWYgbm90LCBzZWUgaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLy5cbiAqXG4gKi9cblxuLyoqIEBqc3gganN4ICovXG5pbXBvcnQge0NTU09iamVjdCwganN4fSBmcm9tICdAZW1vdGlvbi9yZWFjdCc7XG5cbmltcG9ydCB7Q09MT1JfVjJ9IGZyb20gJy4uL0lkZW50aXR5JztcbmltcG9ydCB0eXBlIHtUaGVtZX0gZnJvbSAnLi4vTGF5b3V0JztcbmltcG9ydCB7ZmlsdGVyUHJvcHMsIGlubGluZVNWR30gZnJvbSAnLi4vdXRpbCc7XG5pbXBvcnQge2lucHV0U3R5bGV9IGZyb20gJy4vSW5wdXQnO1xuaW1wb3J0IFJlYWN0LCB7UmVhY3RFbGVtZW50LCB1c2VFZmZlY3QsIHVzZVJlZiwgdXNlU3RhdGV9IGZyb20gJ3JlYWN0JztcbmltcG9ydCBJbnB1dExhYmVsIGZyb20gJy4vSW5wdXRMYWJlbCc7XG5cbnR5cGUgT3B0aW9uID0ge1xuICB2YWx1ZTogc3RyaW5nIHwgbnVtYmVyO1xuICBsYWJlbDogc3RyaW5nO1xufTtcblxuZXhwb3J0IGludGVyZmFjZSBTZWxlY3RQcm9wcyB7XG4gIGlkOiBzdHJpbmc7XG4gIG9uQ2hhbmdlOiAoc2VsZWN0ZWRPcHRpb246IHN0cmluZyB8IG51bWJlcikgPT4gdm9pZDtcbiAgZGF0YVVpZU5hbWU6IHN0cmluZztcbiAgb3B0aW9uczogT3B0aW9uW107XG4gIHZhbHVlPzogT3B0aW9uIHwgbnVsbDtcbiAgaGVscGVyVGV4dD86IHN0cmluZztcbiAgbGFiZWw/OiBzdHJpbmc7XG4gIGRpc2FibGVkPzogYm9vbGVhbjtcbiAgcmVxdWlyZWQ/OiBib29sZWFuO1xuICBtYXJrSW52YWxpZD86IGJvb2xlYW47XG4gIGVycm9yPzogUmVhY3RFbGVtZW50O1xufVxuXG5jb25zdCBBcnJvd0Rvd24gPSAodGhlbWU6IFRoZW1lKSA9PiBgXG4gICAgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIxNlwiIGhlaWdodD1cIjE2XCIgdmlld0JveD1cIjAgMCAxNiAxNlwiPlxuICAgICAgICA8cGF0aCBmaWxsPVwiJHt0aGVtZS5nZW5lcmFsLmNvbG9yfVwiIGZpbGwtcnVsZT1cImV2ZW5vZGRcIiBjbGlwLXJ1bGU9XCJldmVub2RkXCIgZD1cIk03Ljk5OTYzIDEyLjU3MTFMMTUuNjU2NSA0LjkxNDIxTDE0LjI0MjMgMy41TDcuOTk5NjMgOS43NDI2NEwxLjc1Njk5IDMuNUwwLjM0Mjc3MyA0LjkxNDIxTDcuOTk5NjMgMTIuNTcxMVpcIi8+XG4gICAgPC9zdmc+XG5gO1xuXG5leHBvcnQgY29uc3Qgc2VsZWN0U3R5bGU6IDxUPih0aGVtZTogVGhlbWUsIHByb3BzLCBlcnJvcj86IGJvb2xlYW4pID0+IENTU09iamVjdCA9IChcbiAgdGhlbWUsXG4gIHtkaXNhYmxlZCA9IGZhbHNlLCBtYXJrSW52YWxpZCwgLi4ucHJvcHN9LFxuICBlcnJvciA9IGZhbHNlLFxuKSA9PiAoe1xuICAuLi5pbnB1dFN0eWxlKHRoZW1lLCBwcm9wcyksXG4gICcmOi1tb3otZm9jdXNyaW5nJzoge1xuICAgIGNvbG9yOiAndHJhbnNwYXJlbnQnLFxuICAgIHRleHRTaGFkb3c6ICcwIDAgMCAjMDAwJyxcbiAgfSxcbiAgJyY6ZGlzYWJsZWQnOiB7XG4gICAgY29sb3I6IENPTE9SX1YyLkdSQVksXG4gIH0sXG4gIGFwcGVhcmFuY2U6ICdub25lJyxcbiAgYmFja2dyb3VuZDogZGlzYWJsZWRcbiAgICA/IGAke3RoZW1lLklucHV0LmJhY2tncm91bmRDb2xvckRpc2FibGVkfSBjZW50ZXIgcmlnaHQgMTZweCBuby1yZXBlYXQgdXJsKFwiJHtpbmxpbmVTVkcoQXJyb3dEb3duKHRoZW1lKSl9XCIpYFxuICAgIDogYCR7dGhlbWUuSW5wdXQuYmFja2dyb3VuZENvbG9yfSBjZW50ZXIgcmlnaHQgMTZweCBuby1yZXBlYXQgdXJsKFwiJHtpbmxpbmVTVkcoQXJyb3dEb3duKHRoZW1lKSl9XCIpYCxcbiAgYm94U2hhZG93OiBtYXJrSW52YWxpZCA/IGAwIDAgMCAxcHggJHtDT0xPUl9WMi5SRUR9YCA6IGAwIDAgMCAxcHggJHtDT0xPUl9WMi5HUkFZXzQwfWAsXG4gIGN1cnNvcjogZGlzYWJsZWQgPyAnbm9ybWFsJyA6ICdwb2ludGVyJyxcbiAgZm9udFNpemU6ICcxNnB4JyxcbiAgZm9udFdlaWdodDogMzAwLFxuICBwYWRkaW5nUmlnaHQ6ICczMHB4JyxcbiAgdGV4dEFsaWduOiAnbGVmdCcsXG4gIG1hcmdpbkJvdHRvbTogZXJyb3IgJiYgJzhweCcsXG4gICcmOmludmFsaWQsIG9wdGlvbjpmaXJzdC1vZi10eXBlJzoge1xuICAgIGNvbG9yOiBDT0xPUl9WMi5SRUQsXG4gIH0sXG4gIC4uLighZGlzYWJsZWQgJiYge1xuICAgICcmOmhvdmVyJzoge1xuICAgICAgYm94U2hhZG93OiBgMCAwIDAgMXB4ICR7Q09MT1JfVjIuR1JBWV82MH1gLFxuICAgIH0sXG4gICAgJyY6Zm9jdXMsICY6YWN0aXZlJzoge1xuICAgICAgYm94U2hhZG93OiBgMCAwIDAgMXB4ICR7Q09MT1JfVjIuQkxVRX1gLFxuICAgIH0sXG4gIH0pLFxufSk7XG5cbmNvbnN0IGRyb3Bkb3duU3R5bGVzID0gKHRoZW1lOiBUaGVtZSwgaXNEcm9wZG93bk9wZW46IGJvb2xlYW4pOiBDU1NPYmplY3QgPT4gKHtcbiAgaGVpZ2h0OiBpc0Ryb3Bkb3duT3BlbiA/ICdhdXRvJyA6IDAsXG4gIHZpc2liaWxpdHk6IGlzRHJvcGRvd25PcGVuID8gJ3Zpc2libGUnIDogJ2hpZGRlbicsXG4gIG1hcmdpbjogJzNweCAwIDAnLFxuICBwYWRkaW5nOiAwLFxuICBib3JkZXJSYWRpdXM6ICcxMHB4JyxcbiAgYm9yZGVyOiBgMXB4IHNvbGlkICR7Q09MT1JfVjIuQkxVRX1gLFxuICBwb3NpdGlvbjogJ2Fic29sdXRlJyxcbiAgdG9wOiAnMTAwJScsXG4gIGxlZnQ6IDAsXG4gIHdpZHRoOiAnMTAwJScsXG4gIHpJbmRleDogOSxcbn0pO1xuXG5jb25zdCBkcm9wZG93bk9wdGlvblN0eWxlcyA9ICh0aGVtZTogVGhlbWUsIGlzU2VsZWN0ZWQ6IGJvb2xlYW4pOiBDU1NPYmplY3QgPT4gKHtcbiAgYmFja2dyb3VuZDogaXNTZWxlY3RlZCA/IENPTE9SX1YyLkJMVUUgOiBDT0xPUl9WMi5XSElURSxcbiAgbGlzdFN0eWxlOiAnbm9uZScsXG4gIHBhZGRpbmc6ICcxMHB4IDIwcHggMTRweCcsXG4gIGN1cnNvcjogJ3BvaW50ZXInLFxuICBmb250U2l6ZTogJzE2cHgnLFxuICBmb250V2VpZ2h0OiAzMDAsXG4gIGxpbmVIZWlnaHQ6ICcyNHB4JyxcbiAgbGV0dGVyU3BhY2luZzogJzAuMDVweCcsXG4gIGNvbG9yOiBpc1NlbGVjdGVkID8gQ09MT1JfVjIuV0hJVEUgOiBDT0xPUl9WMi5CTEFDSyxcbiAgJyY6Zmlyc3Qtb2YtdHlwZSc6IHtcbiAgICBib3JkZXJSYWRpdXM6ICcxMHB4IDEwcHggMCAwJyxcbiAgfSxcbiAgJyY6bGFzdC1vZi10eXBlJzoge1xuICAgIGJvcmRlclJhZGl1czogJzAgMCAxMHB4IDEwcHgnLFxuICB9LFxuICAnJjpub3QoOmxhc3Qtb2YtdHlwZSknOiB7XG4gICAgYm9yZGVyQm90dG9tOiBgMXB4IHNvbGlkICR7Q09MT1JfVjIuR1JBWV80MH1gLFxuICB9LFxuICAnJjpob3ZlciwgJjphY3RpdmUsICY6Zm9jdXMnOiB7XG4gICAgYmFja2dyb3VuZDogQ09MT1JfVjIuQkxVRSxcbiAgICBib3JkZXJDb2xvcjogQ09MT1JfVjIuQkxVRSxcbiAgICBjb2xvcjogQ09MT1JfVjIuV0hJVEUsXG4gIH0sXG59KTtcblxuY29uc3QgZmlsdGVyU2VsZWN0UHJvcHMgPSBwcm9wcyA9PiBmaWx0ZXJQcm9wcyhwcm9wcywgWydtYXJrSW52YWxpZCddKTtcblxuY29uc3QgcGxhY2Vob2xkZXJUZXh0ID0gJy0gUGxlYXNlIHNlbGVjdCAtJztcblxuZXhwb3J0IGNvbnN0IFNlbGVjdCA9ICh7XG4gIGlkLFxuICBsYWJlbCxcbiAgZXJyb3IsXG4gIGhlbHBlclRleHQsXG4gIG9wdGlvbnMgPSBbXSxcbiAgdmFsdWUgPSBudWxsLFxuICBvbkNoYW5nZSxcbiAgcmVxdWlyZWQsXG4gIG1hcmtJbnZhbGlkLFxuICBkYXRhVWllTmFtZSxcbiAgLi4ucHJvcHNcbn06IFNlbGVjdFByb3BzKSA9PiB7XG4gIGNvbnN0IHNlbGVjdENvbnRhaW5lclJlZiA9IHVzZVJlZjxIVE1MRGl2RWxlbWVudD4obnVsbCk7XG4gIGNvbnN0IFtpc0Ryb3Bkb3duT3Blbiwgc2V0SXNEcm9wZG93bk9wZW5dID0gdXNlU3RhdGUoZmFsc2UpO1xuICBjb25zdCBbc2VsZWN0ZWRPcHRpb24sIHNldFNlbGVjdGVkT3B0aW9uXSA9IHVzZVN0YXRlPG51bWJlciB8IG51bGw+KCgpID0+ICh2YWx1ZSA/IG9wdGlvbnMuaW5kZXhPZih2YWx1ZSkgOiBudWxsKSk7XG5cbiAgY29uc3Qgb25Ub2dnbGVEcm9wZG93biA9ICgpID0+IHNldElzRHJvcGRvd25PcGVuKHByZXZTdGF0ZSA9PiAhcHJldlN0YXRlKTtcblxuICBjb25zdCBvbk9wdGlvblNlbGVjdCA9IChpZHg6IG51bWJlcikgPT4ge1xuICAgIHNldFNlbGVjdGVkT3B0aW9uKGlkeCk7XG4gICAgb25DaGFuZ2Uob3B0aW9uc1tpZHhdLnZhbHVlKTtcbiAgfTtcblxuICBjb25zdCBvbk9wdGlvbkNoYW5nZSA9IChpZHg6IG51bWJlcikgPT4ge1xuICAgIG9uT3B0aW9uU2VsZWN0KGlkeCk7XG4gICAgc2V0SXNEcm9wZG93bk9wZW4oZmFsc2UpO1xuICB9O1xuXG4gIGNvbnN0IGhhbmRsZUxpc3RLZXlEb3duID0gZSA9PiB7XG4gICAgc3dpdGNoIChlLmtleSkge1xuICAgICAgY2FzZSAnRXNjYXBlJzpcbiAgICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICBzZXRJc0Ryb3Bkb3duT3BlbihmYWxzZSk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSAnQXJyb3dVcCc6XG4gICAgICBjYXNlICdBcnJvd0xlZnQnOlxuICAgICAgICBpZiAoIWlzRHJvcGRvd25PcGVuKSB7XG4gICAgICAgICAgc2V0SXNEcm9wZG93bk9wZW4odHJ1ZSk7XG4gICAgICAgIH1cblxuICAgICAgICBlLnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgIG9uT3B0aW9uU2VsZWN0KHNlbGVjdGVkT3B0aW9uIC0gMSA+PSAwID8gc2VsZWN0ZWRPcHRpb24gLSAxIDogb3B0aW9ucy5sZW5ndGggLSAxKTtcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlICdBcnJvd0Rvd24nOlxuICAgICAgY2FzZSAnQXJyb3dSaWdodCc6XG4gICAgICAgIGlmICghaXNEcm9wZG93bk9wZW4pIHtcbiAgICAgICAgICBzZXRJc0Ryb3Bkb3duT3Blbih0cnVlKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGUucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgaWYgKHNlbGVjdGVkT3B0aW9uID09PSBudWxsKSB7XG4gICAgICAgICAgb25PcHRpb25TZWxlY3QoMCk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgb25PcHRpb25TZWxlY3Qoc2VsZWN0ZWRPcHRpb24gPT09IG9wdGlvbnMubGVuZ3RoIC0gMSA/IDAgOiBzZWxlY3RlZE9wdGlvbiArIDEpO1xuICAgICAgICB9XG4gICAgICAgIGJyZWFrO1xuICAgICAgZGVmYXVsdDpcbiAgICAgICAgYnJlYWs7XG4gICAgfVxuICB9O1xuXG4gIGNvbnN0IGhhbmRsZUtleURvd24gPSBpbmRleCA9PiBlID0+IHtcbiAgICBzd2l0Y2ggKGUua2V5KSB7XG4gICAgICBjYXNlICcgJzpcbiAgICAgIGNhc2UgJ1NwYWNlQmFyJzpcbiAgICAgIGNhc2UgJ0VudGVyJzpcbiAgICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICBvbk9wdGlvbkNoYW5nZShpbmRleCk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgZGVmYXVsdDpcbiAgICAgICAgYnJlYWs7XG4gICAgfVxuICB9O1xuXG4gIGNvbnN0IGhhc0Vycm9yID0gISFlcnJvcjtcblxuICBjb25zdCBoYXNTZWxlY3RlZE9wdGlvbiA9IG9wdGlvbnMgJiYgISFvcHRpb25zW3NlbGVjdGVkT3B0aW9uXTtcblxuICBjb25zdCBoYW5kbGVPdXRzaWRlQ2xpY2sgPSAoZXZlbnQ6IE1vdXNlRXZlbnQpID0+IHtcbiAgICBpZiAoc2VsZWN0Q29udGFpbmVyUmVmLmN1cnJlbnQgJiYgIXNlbGVjdENvbnRhaW5lclJlZi5jdXJyZW50LmNvbnRhaW5zKGV2ZW50LnRhcmdldCBhcyBOb2RlKSkge1xuICAgICAgc2V0SXNEcm9wZG93bk9wZW4oZmFsc2UpO1xuICAgIH1cbiAgfTtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCdjbGljaycsIGhhbmRsZU91dHNpZGVDbGljayk7XG5cbiAgICByZXR1cm4gKCkgPT4ge1xuICAgICAgd2luZG93LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ2NsaWNrJywgaGFuZGxlT3V0c2lkZUNsaWNrKTtcbiAgICB9O1xuICB9LCBbXSk7XG5cbiAgcmV0dXJuIChcbiAgICA8ZGl2XG4gICAgICBjc3M9e3tcbiAgICAgICAgbWFyZ2luQm90dG9tOiBtYXJrSW52YWxpZCA/ICcycHgnIDogJzIwcHgnLFxuICAgICAgICAnJjpmb2N1cy13aXRoaW4gbGFiZWwnOiB7XG4gICAgICAgICAgY29sb3I6IENPTE9SX1YyLkJMVUUsXG4gICAgICAgIH0sXG4gICAgICB9fVxuICAgICAgZGF0YS11aWUtbmFtZT17ZGF0YVVpZU5hbWV9XG4gICAgICByZWY9e3NlbGVjdENvbnRhaW5lclJlZn1cbiAgICA+XG4gICAgICB7bGFiZWwgJiYgKFxuICAgICAgICA8SW5wdXRMYWJlbCBodG1sRm9yPXtpZH0gaXNSZXF1aXJlZD17cmVxdWlyZWR9IG1hcmtJbnZhbGlkPXttYXJrSW52YWxpZH0+XG4gICAgICAgICAge2xhYmVsfVxuICAgICAgICA8L0lucHV0TGFiZWw+XG4gICAgICApfVxuXG4gICAgICA8ZGl2IGNzcz17e3Bvc2l0aW9uOiAncmVsYXRpdmUnfX0+XG4gICAgICAgIDxidXR0b25cbiAgICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgICBhcmlhLWFjdGl2ZWRlc2NlbmRhbnQ9e2hhc1NlbGVjdGVkT3B0aW9uID8gb3B0aW9uc1tzZWxlY3RlZE9wdGlvbl0ubGFiZWwgOiAnJ31cbiAgICAgICAgICBhcmlhLWV4cGFuZGVkPXtpc0Ryb3Bkb3duT3Blbn1cbiAgICAgICAgICBhcmlhLWhhc3BvcHVwPVwibGlzdGJveFwiXG4gICAgICAgICAgYXJpYS1sYWJlbGxlZGJ5PXtpZH1cbiAgICAgICAgICBpZD17aWR9XG4gICAgICAgICAgb25DbGljaz17b25Ub2dnbGVEcm9wZG93bn1cbiAgICAgICAgICBvbktleURvd249e2hhbmRsZUxpc3RLZXlEb3dufVxuICAgICAgICAgIGNzcz17KHRoZW1lOiBUaGVtZSkgPT4gc2VsZWN0U3R5bGUodGhlbWUsIHByb3BzLCBoYXNFcnJvcil9XG4gICAgICAgICAgey4uLmZpbHRlclNlbGVjdFByb3BzKHByb3BzKX1cbiAgICAgICAgICBkYXRhLXVpZS1uYW1lPXtkYXRhVWllTmFtZX1cbiAgICAgICAgPlxuICAgICAgICAgIHtoYXNTZWxlY3RlZE9wdGlvbiA/IG9wdGlvbnNbc2VsZWN0ZWRPcHRpb25dLmxhYmVsIDogcGxhY2Vob2xkZXJUZXh0fVxuICAgICAgICA8L2J1dHRvbj5cblxuICAgICAgICA8dWxcbiAgICAgICAgICByb2xlPVwibGlzdGJveFwiXG4gICAgICAgICAgYXJpYS1sYWJlbGxlZGJ5PXtpZH1cbiAgICAgICAgICB0YWJJbmRleD17LTF9XG4gICAgICAgICAgb25LZXlEb3duPXtoYW5kbGVMaXN0S2V5RG93bn1cbiAgICAgICAgICBjc3M9eyh0aGVtZTogVGhlbWUpID0+IGRyb3Bkb3duU3R5bGVzKHRoZW1lLCBpc0Ryb3Bkb3duT3Blbil9XG4gICAgICAgICAgey4uLihkYXRhVWllTmFtZSAmJiB7XG4gICAgICAgICAgICAnZGF0YS11aWUtbmFtZSc6IGBkcm9wZG93bi0ke2RhdGFVaWVOYW1lfWAsXG4gICAgICAgICAgfSl9XG4gICAgICAgID5cbiAgICAgICAgICB7b3B0aW9ucy5tYXAoKG9wdGlvbiwgaW5kZXgpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGlzU2VsZWN0ZWQgPSBzZWxlY3RlZE9wdGlvbiA9PSBpbmRleDtcblxuICAgICAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgICAgPGxpXG4gICAgICAgICAgICAgICAga2V5PXtvcHRpb24udmFsdWV9XG4gICAgICAgICAgICAgICAgaWQ9e29wdGlvbi52YWx1ZS50b1N0cmluZygpfVxuICAgICAgICAgICAgICAgIHJvbGU9XCJvcHRpb25cIlxuICAgICAgICAgICAgICAgIGFyaWEtc2VsZWN0ZWQ9e2lzU2VsZWN0ZWR9XG4gICAgICAgICAgICAgICAgdGFiSW5kZXg9ezB9XG4gICAgICAgICAgICAgICAgb25LZXlEb3duPXtoYW5kbGVLZXlEb3duKGluZGV4KX1cbiAgICAgICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiBvbk9wdGlvbkNoYW5nZShpbmRleCl9XG4gICAgICAgICAgICAgICAgY3NzPXsodGhlbWU6IFRoZW1lKSA9PiBkcm9wZG93bk9wdGlvblN0eWxlcyh0aGVtZSwgaXNTZWxlY3RlZCl9XG4gICAgICAgICAgICAgICAgey4uLihkYXRhVWllTmFtZSAmJiB7XG4gICAgICAgICAgICAgICAgICAnZGF0YS11aWUtbmFtZSc6IGBvcHRpb24tJHtkYXRhVWllTmFtZX1gLFxuICAgICAgICAgICAgICAgICAgJ2RhdGEtdWllLXZhbHVlJzogb3B0aW9uLmxhYmVsLFxuICAgICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAge29wdGlvbi5sYWJlbH1cbiAgICAgICAgICAgICAgPC9saT5cbiAgICAgICAgICAgICk7XG4gICAgICAgICAgfSl9XG4gICAgICAgIDwvdWw+XG4gICAgICA8L2Rpdj5cblxuICAgICAgeyFoYXNFcnJvciAmJiBoZWxwZXJUZXh0ICYmIChcbiAgICAgICAgPHAgY3NzPXt7Zm9udFNpemU6ICcxMnB4JywgZm9udFdlaWdodDogNDAwLCBjb2xvcjogQ09MT1JfVjIuR1JBWV84MCwgbWFyZ2luVG9wOiA4fX0+e2hlbHBlclRleHR9PC9wPlxuICAgICAgKX1cblxuICAgICAge2Vycm9yfVxuICAgIDwvZGl2PlxuICApO1xufTtcbiJdfQ== */")
|
|
350
|
+
}, process.env.NODE_ENV === "production" ? "" : ";label:Select;", process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIlNlbGVjdC50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBb1VXIiwiZmlsZSI6IlNlbGVjdC50c3giLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogV2lyZVxuICogQ29weXJpZ2h0IChDKSAyMDE4IFdpcmUgU3dpc3MgR21iSFxuICpcbiAqIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOiB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5XG4gKiBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieVxuICogdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3JcbiAqIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uXG4gKlxuICogVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsXG4gKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZlxuICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiBTZWUgdGhlXG4gKiBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLlxuICpcbiAqIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlXG4gKiBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gSWYgbm90LCBzZWUgaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLy5cbiAqXG4gKi9cblxuLyoqIEBqc3gganN4ICovXG5pbXBvcnQge0NTU09iamVjdCwganN4fSBmcm9tICdAZW1vdGlvbi9yZWFjdCc7XG5cbmltcG9ydCB7Q09MT1JfVjJ9IGZyb20gJy4uL0lkZW50aXR5JztcbmltcG9ydCB0eXBlIHtUaGVtZX0gZnJvbSAnLi4vTGF5b3V0JztcbmltcG9ydCB7ZmlsdGVyUHJvcHMsIGlubGluZVNWR30gZnJvbSAnLi4vdXRpbCc7XG5pbXBvcnQge2lucHV0U3R5bGV9IGZyb20gJy4vSW5wdXQnO1xuaW1wb3J0IFJlYWN0LCB7UmVhY3RFbGVtZW50LCB1c2VFZmZlY3QsIHVzZVJlZiwgdXNlU3RhdGV9IGZyb20gJ3JlYWN0JztcbmltcG9ydCBJbnB1dExhYmVsIGZyb20gJy4vSW5wdXRMYWJlbCc7XG5cbnR5cGUgT3B0aW9uID0ge1xuICB2YWx1ZTogc3RyaW5nIHwgbnVtYmVyO1xuICBsYWJlbDogc3RyaW5nO1xufTtcblxuZXhwb3J0IGludGVyZmFjZSBTZWxlY3RQcm9wcyB7XG4gIGlkOiBzdHJpbmc7XG4gIG9uQ2hhbmdlOiAoc2VsZWN0ZWRPcHRpb246IHN0cmluZyB8IG51bWJlcikgPT4gdm9pZDtcbiAgZGF0YVVpZU5hbWU6IHN0cmluZztcbiAgb3B0aW9uczogT3B0aW9uW107XG4gIHZhbHVlPzogT3B0aW9uIHwgbnVsbDtcbiAgaGVscGVyVGV4dD86IHN0cmluZztcbiAgbGFiZWw/OiBzdHJpbmc7XG4gIGRpc2FibGVkPzogYm9vbGVhbjtcbiAgcmVxdWlyZWQ/OiBib29sZWFuO1xuICBtYXJrSW52YWxpZD86IGJvb2xlYW47XG4gIGVycm9yPzogUmVhY3RFbGVtZW50O1xufVxuXG5jb25zdCBBcnJvd0Rvd24gPSAodGhlbWU6IFRoZW1lKSA9PiBgXG4gICAgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIxNlwiIGhlaWdodD1cIjE2XCIgdmlld0JveD1cIjAgMCAxNiAxNlwiPlxuICAgICAgICA8cGF0aCBmaWxsPVwiJHt0aGVtZS5nZW5lcmFsLmNvbG9yfVwiIGZpbGwtcnVsZT1cImV2ZW5vZGRcIiBjbGlwLXJ1bGU9XCJldmVub2RkXCIgZD1cIk03Ljk5OTYzIDEyLjU3MTFMMTUuNjU2NSA0LjkxNDIxTDE0LjI0MjMgMy41TDcuOTk5NjMgOS43NDI2NEwxLjc1Njk5IDMuNUwwLjM0Mjc3MyA0LjkxNDIxTDcuOTk5NjMgMTIuNTcxMVpcIi8+XG4gICAgPC9zdmc+XG5gO1xuXG5leHBvcnQgY29uc3Qgc2VsZWN0U3R5bGU6IDxUPih0aGVtZTogVGhlbWUsIHByb3BzLCBlcnJvcj86IGJvb2xlYW4pID0+IENTU09iamVjdCA9IChcbiAgdGhlbWUsXG4gIHtkaXNhYmxlZCA9IGZhbHNlLCBtYXJrSW52YWxpZCwgLi4ucHJvcHN9LFxuICBlcnJvciA9IGZhbHNlLFxuKSA9PiAoe1xuICAuLi5pbnB1dFN0eWxlKHRoZW1lLCBwcm9wcyksXG4gICcmOi1tb3otZm9jdXNyaW5nJzoge1xuICAgIGNvbG9yOiAndHJhbnNwYXJlbnQnLFxuICAgIHRleHRTaGFkb3c6ICcwIDAgMCAjMDAwJyxcbiAgfSxcbiAgJyY6ZGlzYWJsZWQnOiB7XG4gICAgY29sb3I6IENPTE9SX1YyLkdSQVksXG4gIH0sXG4gIGFwcGVhcmFuY2U6ICdub25lJyxcbiAgYmFja2dyb3VuZDogZGlzYWJsZWRcbiAgICA/IGAke3RoZW1lLklucHV0LmJhY2tncm91bmRDb2xvckRpc2FibGVkfSBjZW50ZXIgcmlnaHQgMTZweCBuby1yZXBlYXQgdXJsKFwiJHtpbmxpbmVTVkcoQXJyb3dEb3duKHRoZW1lKSl9XCIpYFxuICAgIDogYCR7dGhlbWUuSW5wdXQuYmFja2dyb3VuZENvbG9yfSBjZW50ZXIgcmlnaHQgMTZweCBuby1yZXBlYXQgdXJsKFwiJHtpbmxpbmVTVkcoQXJyb3dEb3duKHRoZW1lKSl9XCIpYCxcbiAgYm94U2hhZG93OiBtYXJrSW52YWxpZCA/IGAwIDAgMCAxcHggJHtDT0xPUl9WMi5SRUR9YCA6IGAwIDAgMCAxcHggJHtDT0xPUl9WMi5HUkFZXzQwfWAsXG4gIGN1cnNvcjogZGlzYWJsZWQgPyAnbm9ybWFsJyA6ICdwb2ludGVyJyxcbiAgZm9udFNpemU6ICcxNnB4JyxcbiAgZm9udFdlaWdodDogMzAwLFxuICBwYWRkaW5nUmlnaHQ6ICczMHB4JyxcbiAgdGV4dEFsaWduOiAnbGVmdCcsXG4gIG1hcmdpbkJvdHRvbTogZXJyb3IgJiYgJzhweCcsXG4gICcmOmludmFsaWQsIG9wdGlvbjpmaXJzdC1vZi10eXBlJzoge1xuICAgIGNvbG9yOiBDT0xPUl9WMi5SRUQsXG4gIH0sXG4gIC4uLighZGlzYWJsZWQgJiYge1xuICAgICcmOmhvdmVyJzoge1xuICAgICAgYm94U2hhZG93OiBgMCAwIDAgMXB4ICR7Q09MT1JfVjIuR1JBWV82MH1gLFxuICAgIH0sXG4gICAgJyY6Zm9jdXMsICY6YWN0aXZlJzoge1xuICAgICAgYm94U2hhZG93OiBgMCAwIDAgMXB4ICR7Q09MT1JfVjIuQkxVRX1gLFxuICAgIH0sXG4gIH0pLFxufSk7XG5cbmNvbnN0IGRyb3Bkb3duU3R5bGVzID0gKHRoZW1lOiBUaGVtZSwgaXNEcm9wZG93bk9wZW46IGJvb2xlYW4pOiBDU1NPYmplY3QgPT4gKHtcbiAgaGVpZ2h0OiBpc0Ryb3Bkb3duT3BlbiA/ICdhdXRvJyA6IDAsXG4gIHZpc2liaWxpdHk6IGlzRHJvcGRvd25PcGVuID8gJ3Zpc2libGUnIDogJ2hpZGRlbicsXG4gIG1hcmdpbjogJzNweCAwIDAnLFxuICBwYWRkaW5nOiAwLFxuICBib3JkZXJSYWRpdXM6ICcxMHB4JyxcbiAgYm9yZGVyOiBgMXB4IHNvbGlkICR7Q09MT1JfVjIuQkxVRX1gLFxuICBwb3NpdGlvbjogJ2Fic29sdXRlJyxcbiAgdG9wOiAnMTAwJScsXG4gIGxlZnQ6IDAsXG4gIHdpZHRoOiAnMTAwJScsXG4gIG1heEhlaWdodDogJzI0MHB4JyxcbiAgb3ZlcmZsb3dZOiAnYXV0bycsXG4gIHpJbmRleDogOSxcbn0pO1xuXG5jb25zdCBkcm9wZG93bk9wdGlvblN0eWxlcyA9ICh0aGVtZTogVGhlbWUsIGlzU2VsZWN0ZWQ6IGJvb2xlYW4pOiBDU1NPYmplY3QgPT4gKHtcbiAgYmFja2dyb3VuZDogaXNTZWxlY3RlZCA/IENPTE9SX1YyLkJMVUUgOiBDT0xPUl9WMi5XSElURSxcbiAgbGlzdFN0eWxlOiAnbm9uZScsXG4gIHBhZGRpbmc6ICcxMHB4IDIwcHggMTRweCcsXG4gIGN1cnNvcjogJ3BvaW50ZXInLFxuICBmb250U2l6ZTogJzE2cHgnLFxuICBmb250V2VpZ2h0OiAzMDAsXG4gIGxpbmVIZWlnaHQ6ICcyNHB4JyxcbiAgbGV0dGVyU3BhY2luZzogJzAuMDVweCcsXG4gIGNvbG9yOiBpc1NlbGVjdGVkID8gQ09MT1JfVjIuV0hJVEUgOiBDT0xPUl9WMi5CTEFDSyxcbiAgJyY6Zmlyc3Qtb2YtdHlwZSc6IHtcbiAgICBib3JkZXJSYWRpdXM6ICcxMHB4IDEwcHggMCAwJyxcbiAgfSxcbiAgJyY6bGFzdC1vZi10eXBlJzoge1xuICAgIGJvcmRlclJhZGl1czogJzAgMCAxMHB4IDEwcHgnLFxuICB9LFxuICAnJjpub3QoOmxhc3Qtb2YtdHlwZSknOiB7XG4gICAgYm9yZGVyQm90dG9tOiBgMXB4IHNvbGlkICR7Q09MT1JfVjIuR1JBWV80MH1gLFxuICB9LFxuICAnJjpob3ZlciwgJjphY3RpdmUsICY6Zm9jdXMnOiB7XG4gICAgYmFja2dyb3VuZDogQ09MT1JfVjIuQkxVRSxcbiAgICBib3JkZXJDb2xvcjogQ09MT1JfVjIuQkxVRSxcbiAgICBjb2xvcjogQ09MT1JfVjIuV0hJVEUsXG4gIH0sXG59KTtcblxuY29uc3QgZmlsdGVyU2VsZWN0UHJvcHMgPSBwcm9wcyA9PiBmaWx0ZXJQcm9wcyhwcm9wcywgWydtYXJrSW52YWxpZCddKTtcblxuY29uc3QgcGxhY2Vob2xkZXJUZXh0ID0gJy0gUGxlYXNlIHNlbGVjdCAtJztcblxuZXhwb3J0IGNvbnN0IFNlbGVjdCA9ICh7XG4gIGlkLFxuICBsYWJlbCxcbiAgZXJyb3IsXG4gIGhlbHBlclRleHQsXG4gIG9wdGlvbnMgPSBbXSxcbiAgdmFsdWUgPSBudWxsLFxuICBvbkNoYW5nZSxcbiAgcmVxdWlyZWQsXG4gIG1hcmtJbnZhbGlkLFxuICBkYXRhVWllTmFtZSxcbiAgLi4ucHJvcHNcbn06IFNlbGVjdFByb3BzKSA9PiB7XG4gIGNvbnN0IHNlbGVjdENvbnRhaW5lclJlZiA9IHVzZVJlZjxIVE1MRGl2RWxlbWVudD4obnVsbCk7XG4gIGNvbnN0IGxpc3RSZWYgPSB1c2VSZWY8SFRNTFVMaXN0RWxlbWVudD4obnVsbCk7XG4gIGNvbnN0IFtpc0Ryb3Bkb3duT3Blbiwgc2V0SXNEcm9wZG93bk9wZW5dID0gdXNlU3RhdGUoZmFsc2UpO1xuICBjb25zdCBbc2VsZWN0ZWRPcHRpb24sIHNldFNlbGVjdGVkT3B0aW9uXSA9IHVzZVN0YXRlPG51bWJlciB8IG51bGw+KCgpID0+XG4gICAgdmFsdWUgPyBvcHRpb25zLmZpbmRJbmRleChvcHRpb24gPT4gb3B0aW9uLnZhbHVlID09PSB2YWx1ZS52YWx1ZSkgOiBudWxsLFxuICApO1xuXG4gIGNvbnN0IG9uVG9nZ2xlRHJvcGRvd24gPSAoKSA9PiBzZXRJc0Ryb3Bkb3duT3BlbihwcmV2U3RhdGUgPT4gIXByZXZTdGF0ZSk7XG5cbiAgY29uc3Qgc2Nyb2xsVG9DdXJyZW50T3B0aW9uID0gKGlkeDogbnVtYmVyKSA9PiB7XG4gICAgaWYgKGxpc3RSZWYuY3VycmVudCkge1xuICAgICAgY29uc3QgbGlzdFNlbGVjdGVkT3B0aW9uID0gbGlzdFJlZi5jdXJyZW50LmNoaWxkcmVuW2lkeF0gYXMgSFRNTExJRWxlbWVudDtcbiAgICAgIGNvbnN0IGdldFlQb3NpdGlvbiA9IGxpc3RTZWxlY3RlZE9wdGlvbiAmJiBsaXN0U2VsZWN0ZWRPcHRpb24ub2Zmc2V0VG9wO1xuXG4gICAgICBsaXN0UmVmLmN1cnJlbnQuc2Nyb2xsKHtcbiAgICAgICAgdG9wOiBnZXRZUG9zaXRpb24gPz8gMCxcbiAgICAgICAgYmVoYXZpb3I6ICdzbW9vdGgnLFxuICAgICAgfSk7XG4gICAgfVxuICB9O1xuXG4gIGNvbnN0IG9uT3B0aW9uU2VsZWN0ID0gKGlkeDogbnVtYmVyKSA9PiB7XG4gICAgc2V0U2VsZWN0ZWRPcHRpb24oaWR4KTtcbiAgICBvbkNoYW5nZShvcHRpb25zW2lkeF0udmFsdWUpO1xuICAgIHNjcm9sbFRvQ3VycmVudE9wdGlvbihpZHgpO1xuICB9O1xuXG4gIGNvbnN0IG9uT3B0aW9uQ2hhbmdlID0gKGlkeDogbnVtYmVyKSA9PiB7XG4gICAgb25PcHRpb25TZWxlY3QoaWR4KTtcbiAgICBzZXRJc0Ryb3Bkb3duT3BlbihmYWxzZSk7XG4gIH07XG5cbiAgY29uc3QgaGFuZGxlTGlzdEtleURvd24gPSBlID0+IHtcbiAgICBzd2l0Y2ggKGUua2V5KSB7XG4gICAgICBjYXNlICdFc2NhcGUnOlxuICAgICAgICBlLnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgIHNldElzRHJvcGRvd25PcGVuKGZhbHNlKTtcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlICdBcnJvd1VwJzpcbiAgICAgIGNhc2UgJ0Fycm93TGVmdCc6XG4gICAgICAgIGlmICghaXNEcm9wZG93bk9wZW4pIHtcbiAgICAgICAgICBzZXRJc0Ryb3Bkb3duT3Blbih0cnVlKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGUucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgb25PcHRpb25TZWxlY3Qoc2VsZWN0ZWRPcHRpb24gLSAxID49IDAgPyBzZWxlY3RlZE9wdGlvbiAtIDEgOiBvcHRpb25zLmxlbmd0aCAtIDEpO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgJ0Fycm93RG93bic6XG4gICAgICBjYXNlICdBcnJvd1JpZ2h0JzpcbiAgICAgICAgaWYgKCFpc0Ryb3Bkb3duT3Blbikge1xuICAgICAgICAgIHNldElzRHJvcGRvd25PcGVuKHRydWUpO1xuICAgICAgICB9XG5cbiAgICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICBpZiAoc2VsZWN0ZWRPcHRpb24gPT09IG51bGwpIHtcbiAgICAgICAgICBvbk9wdGlvblNlbGVjdCgwKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBvbk9wdGlvblNlbGVjdChzZWxlY3RlZE9wdGlvbiA9PT0gb3B0aW9ucy5sZW5ndGggLSAxID8gMCA6IHNlbGVjdGVkT3B0aW9uICsgMSk7XG4gICAgICAgIH1cbiAgICAgICAgYnJlYWs7XG4gICAgICBkZWZhdWx0OlxuICAgICAgICBicmVhaztcbiAgICB9XG4gIH07XG5cbiAgY29uc3QgaGFuZGxlS2V5RG93biA9IGluZGV4ID0+IGUgPT4ge1xuICAgIHN3aXRjaCAoZS5rZXkpIHtcbiAgICAgIGNhc2UgJyAnOlxuICAgICAgY2FzZSAnU3BhY2VCYXInOlxuICAgICAgY2FzZSAnRW50ZXInOlxuICAgICAgICBlLnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgIG9uT3B0aW9uQ2hhbmdlKGluZGV4KTtcbiAgICAgICAgYnJlYWs7XG4gICAgICBkZWZhdWx0OlxuICAgICAgICBicmVhaztcbiAgICB9XG4gIH07XG5cbiAgY29uc3QgaGFzRXJyb3IgPSAhIWVycm9yO1xuXG4gIGNvbnN0IGhhc1NlbGVjdGVkT3B0aW9uID0gb3B0aW9ucyAmJiAhIW9wdGlvbnNbc2VsZWN0ZWRPcHRpb25dO1xuXG4gIGNvbnN0IGhhbmRsZU91dHNpZGVDbGljayA9IChldmVudDogTW91c2VFdmVudCkgPT4ge1xuICAgIGlmIChzZWxlY3RDb250YWluZXJSZWYuY3VycmVudCAmJiAhc2VsZWN0Q29udGFpbmVyUmVmLmN1cnJlbnQuY29udGFpbnMoZXZlbnQudGFyZ2V0IGFzIE5vZGUpKSB7XG4gICAgICBzZXRJc0Ryb3Bkb3duT3BlbihmYWxzZSk7XG4gICAgfVxuICB9O1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoJ2NsaWNrJywgaGFuZGxlT3V0c2lkZUNsaWNrKTtcblxuICAgIHJldHVybiAoKSA9PiB7XG4gICAgICB3aW5kb3cucmVtb3ZlRXZlbnRMaXN0ZW5lcignY2xpY2snLCBoYW5kbGVPdXRzaWRlQ2xpY2spO1xuICAgIH07XG4gIH0sIFtdKTtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGlmICh2YWx1ZSkge1xuICAgICAgY29uc3QgdmFsdWVJZHggPSBvcHRpb25zLmZpbmRJbmRleChvcHRpb24gPT4gb3B0aW9uLnZhbHVlID09PSB2YWx1ZS52YWx1ZSk7XG4gICAgICBzZXRTZWxlY3RlZE9wdGlvbih2YWx1ZUlkeCk7XG4gICAgfVxuICB9LCBbb3B0aW9ucywgdmFsdWVdKTtcblxuICByZXR1cm4gKFxuICAgIDxkaXZcbiAgICAgIGNzcz17e1xuICAgICAgICBtYXJnaW5Cb3R0b206IG1hcmtJbnZhbGlkID8gJzJweCcgOiAnMjBweCcsXG4gICAgICAgICcmOmZvY3VzLXdpdGhpbiBsYWJlbCc6IHtcbiAgICAgICAgICBjb2xvcjogQ09MT1JfVjIuQkxVRSxcbiAgICAgICAgfSxcbiAgICAgIH19XG4gICAgICBkYXRhLXVpZS1uYW1lPXtkYXRhVWllTmFtZX1cbiAgICAgIHJlZj17c2VsZWN0Q29udGFpbmVyUmVmfVxuICAgID5cbiAgICAgIHtsYWJlbCAmJiAoXG4gICAgICAgIDxJbnB1dExhYmVsIGh0bWxGb3I9e2lkfSBpc1JlcXVpcmVkPXtyZXF1aXJlZH0gbWFya0ludmFsaWQ9e21hcmtJbnZhbGlkfT5cbiAgICAgICAgICB7bGFiZWx9XG4gICAgICAgIDwvSW5wdXRMYWJlbD5cbiAgICAgICl9XG5cbiAgICAgIDxkaXYgY3NzPXt7cG9zaXRpb246ICdyZWxhdGl2ZSd9fT5cbiAgICAgICAgPGJ1dHRvblxuICAgICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAgIGFyaWEtYWN0aXZlZGVzY2VuZGFudD17aGFzU2VsZWN0ZWRPcHRpb24gPyBvcHRpb25zW3NlbGVjdGVkT3B0aW9uXS5sYWJlbCA6ICcnfVxuICAgICAgICAgIGFyaWEtZXhwYW5kZWQ9e2lzRHJvcGRvd25PcGVufVxuICAgICAgICAgIGFyaWEtaGFzcG9wdXA9XCJsaXN0Ym94XCJcbiAgICAgICAgICBhcmlhLWxhYmVsbGVkYnk9e2lkfVxuICAgICAgICAgIGlkPXtpZH1cbiAgICAgICAgICBvbkNsaWNrPXtvblRvZ2dsZURyb3Bkb3dufVxuICAgICAgICAgIG9uS2V5RG93bj17aGFuZGxlTGlzdEtleURvd259XG4gICAgICAgICAgY3NzPXsodGhlbWU6IFRoZW1lKSA9PiBzZWxlY3RTdHlsZSh0aGVtZSwgcHJvcHMsIGhhc0Vycm9yKX1cbiAgICAgICAgICB7Li4uZmlsdGVyU2VsZWN0UHJvcHMocHJvcHMpfVxuICAgICAgICAgIGRhdGEtdWllLW5hbWU9e2RhdGFVaWVOYW1lfVxuICAgICAgICA+XG4gICAgICAgICAge2hhc1NlbGVjdGVkT3B0aW9uID8gb3B0aW9uc1tzZWxlY3RlZE9wdGlvbl0ubGFiZWwgOiBwbGFjZWhvbGRlclRleHR9XG4gICAgICAgIDwvYnV0dG9uPlxuXG4gICAgICAgIDx1bFxuICAgICAgICAgIHJlZj17bGlzdFJlZn1cbiAgICAgICAgICByb2xlPVwibGlzdGJveFwiXG4gICAgICAgICAgYXJpYS1sYWJlbGxlZGJ5PXtpZH1cbiAgICAgICAgICB0YWJJbmRleD17LTF9XG4gICAgICAgICAgb25LZXlEb3duPXtoYW5kbGVMaXN0S2V5RG93bn1cbiAgICAgICAgICBjc3M9eyh0aGVtZTogVGhlbWUpID0+IGRyb3Bkb3duU3R5bGVzKHRoZW1lLCBpc0Ryb3Bkb3duT3Blbil9XG4gICAgICAgICAgey4uLihkYXRhVWllTmFtZSAmJiB7XG4gICAgICAgICAgICAnZGF0YS11aWUtbmFtZSc6IGBkcm9wZG93bi0ke2RhdGFVaWVOYW1lfWAsXG4gICAgICAgICAgfSl9XG4gICAgICAgID5cbiAgICAgICAgICB7b3B0aW9ucy5tYXAoKG9wdGlvbiwgaW5kZXgpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGlzU2VsZWN0ZWQgPSBzZWxlY3RlZE9wdGlvbiA9PSBpbmRleDtcblxuICAgICAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgICAgPGxpXG4gICAgICAgICAgICAgICAga2V5PXtvcHRpb24udmFsdWV9XG4gICAgICAgICAgICAgICAgaWQ9e29wdGlvbi52YWx1ZS50b1N0cmluZygpfVxuICAgICAgICAgICAgICAgIHJvbGU9XCJvcHRpb25cIlxuICAgICAgICAgICAgICAgIGFyaWEtc2VsZWN0ZWQ9e2lzU2VsZWN0ZWR9XG4gICAgICAgICAgICAgICAgdGFiSW5kZXg9ezB9XG4gICAgICAgICAgICAgICAgb25LZXlEb3duPXtoYW5kbGVLZXlEb3duKGluZGV4KX1cbiAgICAgICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiBvbk9wdGlvbkNoYW5nZShpbmRleCl9XG4gICAgICAgICAgICAgICAgY3NzPXsodGhlbWU6IFRoZW1lKSA9PiBkcm9wZG93bk9wdGlvblN0eWxlcyh0aGVtZSwgaXNTZWxlY3RlZCl9XG4gICAgICAgICAgICAgICAgey4uLihkYXRhVWllTmFtZSAmJiB7XG4gICAgICAgICAgICAgICAgICAnZGF0YS11aWUtbmFtZSc6IGBvcHRpb24tJHtkYXRhVWllTmFtZX1gLFxuICAgICAgICAgICAgICAgICAgJ2RhdGEtdWllLXZhbHVlJzogb3B0aW9uLmxhYmVsLFxuICAgICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAge29wdGlvbi5sYWJlbH1cbiAgICAgICAgICAgICAgPC9saT5cbiAgICAgICAgICAgICk7XG4gICAgICAgICAgfSl9XG4gICAgICAgIDwvdWw+XG4gICAgICA8L2Rpdj5cblxuICAgICAgeyFoYXNFcnJvciAmJiBoZWxwZXJUZXh0ICYmIChcbiAgICAgICAgPHAgY3NzPXt7Zm9udFNpemU6ICcxMnB4JywgZm9udFdlaWdodDogNDAwLCBjb2xvcjogQ09MT1JfVjIuR1JBWV84MCwgbWFyZ2luVG9wOiA4fX0+e2hlbHBlclRleHR9PC9wPlxuICAgICAgKX1cblxuICAgICAge2Vycm9yfVxuICAgIDwvZGl2PlxuICApO1xufTtcbiJdfQ== */")
|
|
325
351
|
}, helperText), error);
|
|
326
352
|
};
|
|
327
353
|
|
package/src/Form/Select.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["Select.tsx"],"names":["ArrowDown","theme","general","color","selectStyle","disabled","markInvalid","props","error","textShadow","COLOR_V2","GRAY","appearance","background","Input","backgroundColorDisabled","backgroundColor","boxShadow","RED","GRAY_40","cursor","fontSize","fontWeight","paddingRight","textAlign","marginBottom","GRAY_60","BLUE","dropdownStyles","isDropdownOpen","height","visibility","margin","padding","borderRadius","border","position","top","left","width","zIndex","dropdownOptionStyles","isSelected","WHITE","listStyle","lineHeight","letterSpacing","BLACK","borderBottom","borderColor","filterSelectProps","placeholderText","Select","id","label","helperText","options","value","onChange","required","dataUieName","selectContainerRef","setIsDropdownOpen","indexOf","selectedOption","setSelectedOption","onToggleDropdown","prevState","onOptionSelect","idx","onOptionChange","handleListKeyDown","e","key","preventDefault","length","handleKeyDown","index","hasError","hasSelectedOption","handleOutsideClick","event","current","contains","target","window","addEventListener","removeEventListener","map","option","toString","GRAY_80","marginTop"],"mappings":"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","sourcesContent":["/*\n * Wire\n * Copyright (C) 2018 Wire Swiss GmbH\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU General Public License as published by\n * the Free Software Foundation, either version 3 of the License, or\n * (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU General Public License for more details.\n *\n * You should have received a copy of the GNU General Public License\n * along with this program. If not, see http://www.gnu.org/licenses/.\n *\n */\n\n/** @jsx jsx */\nimport {CSSObject, jsx} from '@emotion/react';\n\nimport {COLOR_V2} from '../Identity';\nimport type {Theme} from '../Layout';\nimport {filterProps, inlineSVG} from '../util';\nimport {inputStyle} from './Input';\nimport React, {ReactElement, useEffect, useRef, useState} from 'react';\nimport InputLabel from './InputLabel';\n\ntype Option = {\n value: string | number;\n label: string;\n};\n\nexport interface SelectProps {\n id: string;\n onChange: (selectedOption: string | number) => void;\n dataUieName: string;\n options: Option[];\n value?: Option | null;\n helperText?: string;\n label?: string;\n disabled?: boolean;\n required?: boolean;\n markInvalid?: boolean;\n error?: ReactElement;\n}\n\nconst ArrowDown = (theme: Theme) => `\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\">\n <path fill=\"${theme.general.color}\" fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M7.99963 12.5711L15.6565 4.91421L14.2423 3.5L7.99963 9.74264L1.75699 3.5L0.342773 4.91421L7.99963 12.5711Z\"/>\n </svg>\n`;\n\nexport const selectStyle: <T>(theme: Theme, props, error?: boolean) => CSSObject = (\n theme,\n {disabled = false, markInvalid, ...props},\n error = false,\n) => ({\n ...inputStyle(theme, props),\n '&:-moz-focusring': {\n color: 'transparent',\n textShadow: '0 0 0 #000',\n },\n '&:disabled': {\n color: COLOR_V2.GRAY,\n },\n appearance: 'none',\n background: disabled\n ? `${theme.Input.backgroundColorDisabled} center right 16px no-repeat url(\"${inlineSVG(ArrowDown(theme))}\")`\n : `${theme.Input.backgroundColor} center right 16px no-repeat url(\"${inlineSVG(ArrowDown(theme))}\")`,\n boxShadow: markInvalid ? `0 0 0 1px ${COLOR_V2.RED}` : `0 0 0 1px ${COLOR_V2.GRAY_40}`,\n cursor: disabled ? 'normal' : 'pointer',\n fontSize: '16px',\n fontWeight: 300,\n paddingRight: '30px',\n textAlign: 'left',\n marginBottom: error && '8px',\n '&:invalid, option:first-of-type': {\n color: COLOR_V2.RED,\n },\n ...(!disabled && {\n '&:hover': {\n boxShadow: `0 0 0 1px ${COLOR_V2.GRAY_60}`,\n },\n '&:focus, &:active': {\n boxShadow: `0 0 0 1px ${COLOR_V2.BLUE}`,\n },\n }),\n});\n\nconst dropdownStyles = (theme: Theme, isDropdownOpen: boolean): CSSObject => ({\n height: isDropdownOpen ? 'auto' : 0,\n visibility: isDropdownOpen ? 'visible' : 'hidden',\n margin: '3px 0 0',\n padding: 0,\n borderRadius: '10px',\n border: `1px solid ${COLOR_V2.BLUE}`,\n position: 'absolute',\n top: '100%',\n left: 0,\n width: '100%',\n zIndex: 9,\n});\n\nconst dropdownOptionStyles = (theme: Theme, isSelected: boolean): CSSObject => ({\n background: isSelected ? COLOR_V2.BLUE : COLOR_V2.WHITE,\n listStyle: 'none',\n padding: '10px 20px 14px',\n cursor: 'pointer',\n fontSize: '16px',\n fontWeight: 300,\n lineHeight: '24px',\n letterSpacing: '0.05px',\n color: isSelected ? COLOR_V2.WHITE : COLOR_V2.BLACK,\n '&:first-of-type': {\n borderRadius: '10px 10px 0 0',\n },\n '&:last-of-type': {\n borderRadius: '0 0 10px 10px',\n },\n '&:not(:last-of-type)': {\n borderBottom: `1px solid ${COLOR_V2.GRAY_40}`,\n },\n '&:hover, &:active, &:focus': {\n background: COLOR_V2.BLUE,\n borderColor: COLOR_V2.BLUE,\n color: COLOR_V2.WHITE,\n },\n});\n\nconst filterSelectProps = props => filterProps(props, ['markInvalid']);\n\nconst placeholderText = '- Please select -';\n\nexport const Select = ({\n id,\n label,\n error,\n helperText,\n options = [],\n value = null,\n onChange,\n required,\n markInvalid,\n dataUieName,\n ...props\n}: SelectProps) => {\n const selectContainerRef = useRef<HTMLDivElement>(null);\n const [isDropdownOpen, setIsDropdownOpen] = useState(false);\n const [selectedOption, setSelectedOption] = useState<number | null>(() => (value ? options.indexOf(value) : null));\n\n const onToggleDropdown = () => setIsDropdownOpen(prevState => !prevState);\n\n const onOptionSelect = (idx: number) => {\n setSelectedOption(idx);\n onChange(options[idx].value);\n };\n\n const onOptionChange = (idx: number) => {\n onOptionSelect(idx);\n setIsDropdownOpen(false);\n };\n\n const handleListKeyDown = e => {\n switch (e.key) {\n case 'Escape':\n e.preventDefault();\n setIsDropdownOpen(false);\n break;\n case 'ArrowUp':\n case 'ArrowLeft':\n if (!isDropdownOpen) {\n setIsDropdownOpen(true);\n }\n\n e.preventDefault();\n onOptionSelect(selectedOption - 1 >= 0 ? selectedOption - 1 : options.length - 1);\n break;\n case 'ArrowDown':\n case 'ArrowRight':\n if (!isDropdownOpen) {\n setIsDropdownOpen(true);\n }\n\n e.preventDefault();\n if (selectedOption === null) {\n onOptionSelect(0);\n } else {\n onOptionSelect(selectedOption === options.length - 1 ? 0 : selectedOption + 1);\n }\n break;\n default:\n break;\n }\n };\n\n const handleKeyDown = index => e => {\n switch (e.key) {\n case ' ':\n case 'SpaceBar':\n case 'Enter':\n e.preventDefault();\n onOptionChange(index);\n break;\n default:\n break;\n }\n };\n\n const hasError = !!error;\n\n const hasSelectedOption = options && !!options[selectedOption];\n\n const handleOutsideClick = (event: MouseEvent) => {\n if (selectContainerRef.current && !selectContainerRef.current.contains(event.target as Node)) {\n setIsDropdownOpen(false);\n }\n };\n\n useEffect(() => {\n window.addEventListener('click', handleOutsideClick);\n\n return () => {\n window.removeEventListener('click', handleOutsideClick);\n };\n }, []);\n\n return (\n <div\n css={{\n marginBottom: markInvalid ? '2px' : '20px',\n '&:focus-within label': {\n color: COLOR_V2.BLUE,\n },\n }}\n data-uie-name={dataUieName}\n ref={selectContainerRef}\n >\n {label && (\n <InputLabel htmlFor={id} isRequired={required} markInvalid={markInvalid}>\n {label}\n </InputLabel>\n )}\n\n <div css={{position: 'relative'}}>\n <button\n type=\"button\"\n aria-activedescendant={hasSelectedOption ? options[selectedOption].label : ''}\n aria-expanded={isDropdownOpen}\n aria-haspopup=\"listbox\"\n aria-labelledby={id}\n id={id}\n onClick={onToggleDropdown}\n onKeyDown={handleListKeyDown}\n css={(theme: Theme) => selectStyle(theme, props, hasError)}\n {...filterSelectProps(props)}\n data-uie-name={dataUieName}\n >\n {hasSelectedOption ? options[selectedOption].label : placeholderText}\n </button>\n\n <ul\n role=\"listbox\"\n aria-labelledby={id}\n tabIndex={-1}\n onKeyDown={handleListKeyDown}\n css={(theme: Theme) => dropdownStyles(theme, isDropdownOpen)}\n {...(dataUieName && {\n 'data-uie-name': `dropdown-${dataUieName}`,\n })}\n >\n {options.map((option, index) => {\n const isSelected = selectedOption == index;\n\n return (\n <li\n key={option.value}\n id={option.value.toString()}\n role=\"option\"\n aria-selected={isSelected}\n tabIndex={0}\n onKeyDown={handleKeyDown(index)}\n onClick={() => onOptionChange(index)}\n css={(theme: Theme) => dropdownOptionStyles(theme, isSelected)}\n {...(dataUieName && {\n 'data-uie-name': `option-${dataUieName}`,\n 'data-uie-value': option.label,\n })}\n >\n {option.label}\n </li>\n );\n })}\n </ul>\n </div>\n\n {!hasError && helperText && (\n <p css={{fontSize: '12px', fontWeight: 400, color: COLOR_V2.GRAY_80, marginTop: 8}}>{helperText}</p>\n )}\n\n {error}\n </div>\n );\n};\n"],"file":"Select.js"}
|
|
1
|
+
{"version":3,"sources":["Select.tsx"],"names":["ArrowDown","theme","general","color","selectStyle","disabled","markInvalid","props","error","textShadow","COLOR_V2","GRAY","appearance","background","Input","backgroundColorDisabled","backgroundColor","boxShadow","RED","GRAY_40","cursor","fontSize","fontWeight","paddingRight","textAlign","marginBottom","GRAY_60","BLUE","dropdownStyles","isDropdownOpen","height","visibility","margin","padding","borderRadius","border","position","top","left","width","maxHeight","overflowY","zIndex","dropdownOptionStyles","isSelected","WHITE","listStyle","lineHeight","letterSpacing","BLACK","borderBottom","borderColor","filterSelectProps","placeholderText","Select","id","label","helperText","options","value","onChange","required","dataUieName","selectContainerRef","listRef","setIsDropdownOpen","findIndex","option","selectedOption","setSelectedOption","onToggleDropdown","prevState","scrollToCurrentOption","idx","current","listSelectedOption","children","getYPosition","offsetTop","scroll","behavior","onOptionSelect","onOptionChange","handleListKeyDown","e","key","preventDefault","length","handleKeyDown","index","hasError","hasSelectedOption","handleOutsideClick","event","contains","target","window","addEventListener","removeEventListener","valueIdx","map","toString","GRAY_80","marginTop"],"mappings":"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","sourcesContent":["/*\n * Wire\n * Copyright (C) 2018 Wire Swiss GmbH\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU General Public License as published by\n * the Free Software Foundation, either version 3 of the License, or\n * (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU General Public License for more details.\n *\n * You should have received a copy of the GNU General Public License\n * along with this program. If not, see http://www.gnu.org/licenses/.\n *\n */\n\n/** @jsx jsx */\nimport {CSSObject, jsx} from '@emotion/react';\n\nimport {COLOR_V2} from '../Identity';\nimport type {Theme} from '../Layout';\nimport {filterProps, inlineSVG} from '../util';\nimport {inputStyle} from './Input';\nimport React, {ReactElement, useEffect, useRef, useState} from 'react';\nimport InputLabel from './InputLabel';\n\ntype Option = {\n value: string | number;\n label: string;\n};\n\nexport interface SelectProps {\n id: string;\n onChange: (selectedOption: string | number) => void;\n dataUieName: string;\n options: Option[];\n value?: Option | null;\n helperText?: string;\n label?: string;\n disabled?: boolean;\n required?: boolean;\n markInvalid?: boolean;\n error?: ReactElement;\n}\n\nconst ArrowDown = (theme: Theme) => `\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\">\n <path fill=\"${theme.general.color}\" fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M7.99963 12.5711L15.6565 4.91421L14.2423 3.5L7.99963 9.74264L1.75699 3.5L0.342773 4.91421L7.99963 12.5711Z\"/>\n </svg>\n`;\n\nexport const selectStyle: <T>(theme: Theme, props, error?: boolean) => CSSObject = (\n theme,\n {disabled = false, markInvalid, ...props},\n error = false,\n) => ({\n ...inputStyle(theme, props),\n '&:-moz-focusring': {\n color: 'transparent',\n textShadow: '0 0 0 #000',\n },\n '&:disabled': {\n color: COLOR_V2.GRAY,\n },\n appearance: 'none',\n background: disabled\n ? `${theme.Input.backgroundColorDisabled} center right 16px no-repeat url(\"${inlineSVG(ArrowDown(theme))}\")`\n : `${theme.Input.backgroundColor} center right 16px no-repeat url(\"${inlineSVG(ArrowDown(theme))}\")`,\n boxShadow: markInvalid ? `0 0 0 1px ${COLOR_V2.RED}` : `0 0 0 1px ${COLOR_V2.GRAY_40}`,\n cursor: disabled ? 'normal' : 'pointer',\n fontSize: '16px',\n fontWeight: 300,\n paddingRight: '30px',\n textAlign: 'left',\n marginBottom: error && '8px',\n '&:invalid, option:first-of-type': {\n color: COLOR_V2.RED,\n },\n ...(!disabled && {\n '&:hover': {\n boxShadow: `0 0 0 1px ${COLOR_V2.GRAY_60}`,\n },\n '&:focus, &:active': {\n boxShadow: `0 0 0 1px ${COLOR_V2.BLUE}`,\n },\n }),\n});\n\nconst dropdownStyles = (theme: Theme, isDropdownOpen: boolean): CSSObject => ({\n height: isDropdownOpen ? 'auto' : 0,\n visibility: isDropdownOpen ? 'visible' : 'hidden',\n margin: '3px 0 0',\n padding: 0,\n borderRadius: '10px',\n border: `1px solid ${COLOR_V2.BLUE}`,\n position: 'absolute',\n top: '100%',\n left: 0,\n width: '100%',\n maxHeight: '240px',\n overflowY: 'auto',\n zIndex: 9,\n});\n\nconst dropdownOptionStyles = (theme: Theme, isSelected: boolean): CSSObject => ({\n background: isSelected ? COLOR_V2.BLUE : COLOR_V2.WHITE,\n listStyle: 'none',\n padding: '10px 20px 14px',\n cursor: 'pointer',\n fontSize: '16px',\n fontWeight: 300,\n lineHeight: '24px',\n letterSpacing: '0.05px',\n color: isSelected ? COLOR_V2.WHITE : COLOR_V2.BLACK,\n '&:first-of-type': {\n borderRadius: '10px 10px 0 0',\n },\n '&:last-of-type': {\n borderRadius: '0 0 10px 10px',\n },\n '&:not(:last-of-type)': {\n borderBottom: `1px solid ${COLOR_V2.GRAY_40}`,\n },\n '&:hover, &:active, &:focus': {\n background: COLOR_V2.BLUE,\n borderColor: COLOR_V2.BLUE,\n color: COLOR_V2.WHITE,\n },\n});\n\nconst filterSelectProps = props => filterProps(props, ['markInvalid']);\n\nconst placeholderText = '- Please select -';\n\nexport const Select = ({\n id,\n label,\n error,\n helperText,\n options = [],\n value = null,\n onChange,\n required,\n markInvalid,\n dataUieName,\n ...props\n}: SelectProps) => {\n const selectContainerRef = useRef<HTMLDivElement>(null);\n const listRef = useRef<HTMLUListElement>(null);\n const [isDropdownOpen, setIsDropdownOpen] = useState(false);\n const [selectedOption, setSelectedOption] = useState<number | null>(() =>\n value ? options.findIndex(option => option.value === value.value) : null,\n );\n\n const onToggleDropdown = () => setIsDropdownOpen(prevState => !prevState);\n\n const scrollToCurrentOption = (idx: number) => {\n if (listRef.current) {\n const listSelectedOption = listRef.current.children[idx] as HTMLLIElement;\n const getYPosition = listSelectedOption && listSelectedOption.offsetTop;\n\n listRef.current.scroll({\n top: getYPosition ?? 0,\n behavior: 'smooth',\n });\n }\n };\n\n const onOptionSelect = (idx: number) => {\n setSelectedOption(idx);\n onChange(options[idx].value);\n scrollToCurrentOption(idx);\n };\n\n const onOptionChange = (idx: number) => {\n onOptionSelect(idx);\n setIsDropdownOpen(false);\n };\n\n const handleListKeyDown = e => {\n switch (e.key) {\n case 'Escape':\n e.preventDefault();\n setIsDropdownOpen(false);\n break;\n case 'ArrowUp':\n case 'ArrowLeft':\n if (!isDropdownOpen) {\n setIsDropdownOpen(true);\n }\n\n e.preventDefault();\n onOptionSelect(selectedOption - 1 >= 0 ? selectedOption - 1 : options.length - 1);\n break;\n case 'ArrowDown':\n case 'ArrowRight':\n if (!isDropdownOpen) {\n setIsDropdownOpen(true);\n }\n\n e.preventDefault();\n if (selectedOption === null) {\n onOptionSelect(0);\n } else {\n onOptionSelect(selectedOption === options.length - 1 ? 0 : selectedOption + 1);\n }\n break;\n default:\n break;\n }\n };\n\n const handleKeyDown = index => e => {\n switch (e.key) {\n case ' ':\n case 'SpaceBar':\n case 'Enter':\n e.preventDefault();\n onOptionChange(index);\n break;\n default:\n break;\n }\n };\n\n const hasError = !!error;\n\n const hasSelectedOption = options && !!options[selectedOption];\n\n const handleOutsideClick = (event: MouseEvent) => {\n if (selectContainerRef.current && !selectContainerRef.current.contains(event.target as Node)) {\n setIsDropdownOpen(false);\n }\n };\n\n useEffect(() => {\n window.addEventListener('click', handleOutsideClick);\n\n return () => {\n window.removeEventListener('click', handleOutsideClick);\n };\n }, []);\n\n useEffect(() => {\n if (value) {\n const valueIdx = options.findIndex(option => option.value === value.value);\n setSelectedOption(valueIdx);\n }\n }, [options, value]);\n\n return (\n <div\n css={{\n marginBottom: markInvalid ? '2px' : '20px',\n '&:focus-within label': {\n color: COLOR_V2.BLUE,\n },\n }}\n data-uie-name={dataUieName}\n ref={selectContainerRef}\n >\n {label && (\n <InputLabel htmlFor={id} isRequired={required} markInvalid={markInvalid}>\n {label}\n </InputLabel>\n )}\n\n <div css={{position: 'relative'}}>\n <button\n type=\"button\"\n aria-activedescendant={hasSelectedOption ? options[selectedOption].label : ''}\n aria-expanded={isDropdownOpen}\n aria-haspopup=\"listbox\"\n aria-labelledby={id}\n id={id}\n onClick={onToggleDropdown}\n onKeyDown={handleListKeyDown}\n css={(theme: Theme) => selectStyle(theme, props, hasError)}\n {...filterSelectProps(props)}\n data-uie-name={dataUieName}\n >\n {hasSelectedOption ? options[selectedOption].label : placeholderText}\n </button>\n\n <ul\n ref={listRef}\n role=\"listbox\"\n aria-labelledby={id}\n tabIndex={-1}\n onKeyDown={handleListKeyDown}\n css={(theme: Theme) => dropdownStyles(theme, isDropdownOpen)}\n {...(dataUieName && {\n 'data-uie-name': `dropdown-${dataUieName}`,\n })}\n >\n {options.map((option, index) => {\n const isSelected = selectedOption == index;\n\n return (\n <li\n key={option.value}\n id={option.value.toString()}\n role=\"option\"\n aria-selected={isSelected}\n tabIndex={0}\n onKeyDown={handleKeyDown(index)}\n onClick={() => onOptionChange(index)}\n css={(theme: Theme) => dropdownOptionStyles(theme, isSelected)}\n {...(dataUieName && {\n 'data-uie-name': `option-${dataUieName}`,\n 'data-uie-value': option.label,\n })}\n >\n {option.label}\n </li>\n );\n })}\n </ul>\n </div>\n\n {!hasError && helperText && (\n <p css={{fontSize: '12px', fontWeight: 400, color: COLOR_V2.GRAY_80, marginTop: 8}}>{helperText}</p>\n )}\n\n {error}\n </div>\n );\n};\n"],"file":"Select.js"}
|
package/src/Form/Select.md
CHANGED