@aristobyte-ui/button 1.0.5 → 1.0.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.css +732 -0
- package/dist/index.css.map +1 -0
- package/dist/index.d.mts +28 -0
- package/dist/index.d.ts +28 -0
- package/dist/index.js +225 -1
- package/dist/index.js.map +1 -0
- package/dist/index.mjs +190 -0
- package/dist/index.mjs.map +1 -0
- package/package.json +11 -8
- package/dist/components/Button/index.js +0 -35
- package/dist/components/ButtonGroup/index.js +0 -16
- package/dist/components/index.js +0 -2
- package/dist/tsconfig.tsbuildinfo +0 -1
- package/dist/types/components/Button/index.d.ts +0 -15
- package/dist/types/components/Button/index.d.ts.map +0 -1
- package/dist/types/components/ButtonGroup/index.d.ts +0 -13
- package/dist/types/components/ButtonGroup/index.d.ts.map +0 -1
- package/dist/types/components/index.d.ts +0 -3
- package/dist/types/components/index.d.ts.map +0 -1
- package/dist/types/index.d.ts +0 -2
- package/dist/types/index.d.ts.map +0 -1
- package/dist/types/utils/Portal.d.ts +0 -5
- package/dist/types/utils/Portal.d.ts.map +0 -1
- package/dist/types/utils/icons.d.ts +0 -8
- package/dist/types/utils/icons.d.ts.map +0 -1
- package/dist/types/utils/index.d.ts +0 -3
- package/dist/types/utils/index.d.ts.map +0 -1
- package/dist/types/utils/ripple.d.ts +0 -9
- package/dist/types/utils/ripple.d.ts.map +0 -1
- package/dist/utils/Portal.js +0 -12
- package/dist/utils/icons.js +0 -12
- package/dist/utils/index.js +0 -2
- package/dist/utils/ripple.js +0 -38
package/dist/index.mjs
ADDED
|
@@ -0,0 +1,190 @@
|
|
|
1
|
+
var __defProp = Object.defineProperty;
|
|
2
|
+
var __getOwnPropSymbols = Object.getOwnPropertySymbols;
|
|
3
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
4
|
+
var __propIsEnum = Object.prototype.propertyIsEnumerable;
|
|
5
|
+
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
6
|
+
var __spreadValues = (a, b) => {
|
|
7
|
+
for (var prop in b || (b = {}))
|
|
8
|
+
if (__hasOwnProp.call(b, prop))
|
|
9
|
+
__defNormalProp(a, prop, b[prop]);
|
|
10
|
+
if (__getOwnPropSymbols)
|
|
11
|
+
for (var prop of __getOwnPropSymbols(b)) {
|
|
12
|
+
if (__propIsEnum.call(b, prop))
|
|
13
|
+
__defNormalProp(a, prop, b[prop]);
|
|
14
|
+
}
|
|
15
|
+
return a;
|
|
16
|
+
};
|
|
17
|
+
var __objRest = (source, exclude) => {
|
|
18
|
+
var target = {};
|
|
19
|
+
for (var prop in source)
|
|
20
|
+
if (__hasOwnProp.call(source, prop) && exclude.indexOf(prop) < 0)
|
|
21
|
+
target[prop] = source[prop];
|
|
22
|
+
if (source != null && __getOwnPropSymbols)
|
|
23
|
+
for (var prop of __getOwnPropSymbols(source)) {
|
|
24
|
+
if (exclude.indexOf(prop) < 0 && __propIsEnum.call(source, prop))
|
|
25
|
+
target[prop] = source[prop];
|
|
26
|
+
}
|
|
27
|
+
return target;
|
|
28
|
+
};
|
|
29
|
+
|
|
30
|
+
// components/Button/index.tsx
|
|
31
|
+
import * as React from "react";
|
|
32
|
+
import { Spinner } from "@aristobyte-ui/spinner";
|
|
33
|
+
|
|
34
|
+
// utils/ripple.tsx
|
|
35
|
+
var renderRipple = ({
|
|
36
|
+
ref,
|
|
37
|
+
clientX,
|
|
38
|
+
clientY
|
|
39
|
+
}) => {
|
|
40
|
+
const button = ref.current;
|
|
41
|
+
if (!button) return;
|
|
42
|
+
const circle = document.createElement("span");
|
|
43
|
+
const diameter = Math.max(button.clientWidth, button.clientHeight);
|
|
44
|
+
const radius = diameter / 2;
|
|
45
|
+
circle.id = "ripple";
|
|
46
|
+
const style = document.createElement("style");
|
|
47
|
+
style.innerHTML = `
|
|
48
|
+
#ripple {
|
|
49
|
+
animation: ripple 300ms linear;
|
|
50
|
+
background-color: rgba(255, 255, 255, 0.3);
|
|
51
|
+
border-radius: 50%;
|
|
52
|
+
height: ${diameter}px;
|
|
53
|
+
left: ${clientX - button.getBoundingClientRect().left - radius}px;
|
|
54
|
+
pointer-events: none;
|
|
55
|
+
position: absolute;
|
|
56
|
+
top: ${clientY - button.getBoundingClientRect().top - radius}px;
|
|
57
|
+
transform: scale(0);
|
|
58
|
+
width: ${diameter}px;
|
|
59
|
+
z-index: 0;
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
@keyframes ripple {
|
|
63
|
+
to {
|
|
64
|
+
opacity: 0;
|
|
65
|
+
transform: scale(2);
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
`;
|
|
69
|
+
button.appendChild(style);
|
|
70
|
+
button.appendChild(circle);
|
|
71
|
+
circle.addEventListener("animationend", () => {
|
|
72
|
+
circle.remove();
|
|
73
|
+
style.remove();
|
|
74
|
+
});
|
|
75
|
+
};
|
|
76
|
+
|
|
77
|
+
// components/Button/Button.module.scss
|
|
78
|
+
var Button_module_default = {};
|
|
79
|
+
|
|
80
|
+
// components/Button/index.tsx
|
|
81
|
+
import { Fragment, jsx, jsxs } from "react/jsx-runtime";
|
|
82
|
+
var Button = (_a) => {
|
|
83
|
+
var _b = _a, {
|
|
84
|
+
onClick,
|
|
85
|
+
children,
|
|
86
|
+
variant = "default",
|
|
87
|
+
appearance = "solid",
|
|
88
|
+
size = "md",
|
|
89
|
+
radius = "md",
|
|
90
|
+
icon,
|
|
91
|
+
spinnerType = "default",
|
|
92
|
+
isLoading = false,
|
|
93
|
+
disabled,
|
|
94
|
+
className = "",
|
|
95
|
+
dangerouslySetInnerHTML
|
|
96
|
+
} = _b, restProps = __objRest(_b, [
|
|
97
|
+
"onClick",
|
|
98
|
+
"children",
|
|
99
|
+
"variant",
|
|
100
|
+
"appearance",
|
|
101
|
+
"size",
|
|
102
|
+
"radius",
|
|
103
|
+
"icon",
|
|
104
|
+
"spinnerType",
|
|
105
|
+
"isLoading",
|
|
106
|
+
"disabled",
|
|
107
|
+
"className",
|
|
108
|
+
"dangerouslySetInnerHTML"
|
|
109
|
+
]);
|
|
110
|
+
const ref = React.useRef(null);
|
|
111
|
+
const handleClick = (e) => {
|
|
112
|
+
const { clientX, clientY } = e;
|
|
113
|
+
renderRipple({ ref, clientX, clientY });
|
|
114
|
+
if (onClick) {
|
|
115
|
+
onClick(e);
|
|
116
|
+
}
|
|
117
|
+
};
|
|
118
|
+
const Children2 = () => {
|
|
119
|
+
var _a2;
|
|
120
|
+
return /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
121
|
+
isLoading && /* @__PURE__ */ jsx(
|
|
122
|
+
Spinner,
|
|
123
|
+
{
|
|
124
|
+
size,
|
|
125
|
+
variant,
|
|
126
|
+
type: spinnerType,
|
|
127
|
+
className: Button_module_default["spinner"]
|
|
128
|
+
}
|
|
129
|
+
),
|
|
130
|
+
icon && /* @__PURE__ */ jsx(
|
|
131
|
+
"span",
|
|
132
|
+
{
|
|
133
|
+
className: `${Button_module_default["icon"]} ${Button_module_default[`icon--${(_a2 = icon.align) != null ? _a2 : "left"}`]}`,
|
|
134
|
+
children: React.createElement(icon.component)
|
|
135
|
+
}
|
|
136
|
+
),
|
|
137
|
+
children
|
|
138
|
+
] });
|
|
139
|
+
};
|
|
140
|
+
return /* @__PURE__ */ jsx(
|
|
141
|
+
"button",
|
|
142
|
+
__spreadValues(__spreadValues({
|
|
143
|
+
ref,
|
|
144
|
+
disabled: disabled || isLoading,
|
|
145
|
+
className: `${Button_module_default["button"]} ${Button_module_default[`button-variant--${variant}`]} ${Button_module_default[`button-appearance--${appearance}`]} ${Button_module_default[`button-size--${size}`]} ${Button_module_default[`button-radius--${radius}`]} ${isLoading ? Button_module_default["button--loading"] : ""} ${className}`,
|
|
146
|
+
onClick: handleClick
|
|
147
|
+
}, dangerouslySetInnerHTML ? { dangerouslySetInnerHTML } : { children: /* @__PURE__ */ jsx(Children2, {}) }), restProps)
|
|
148
|
+
);
|
|
149
|
+
};
|
|
150
|
+
|
|
151
|
+
// components/ButtonGroup/index.tsx
|
|
152
|
+
import * as React2 from "react";
|
|
153
|
+
|
|
154
|
+
// components/ButtonGroup/ButtonGroup.module.scss
|
|
155
|
+
var ButtonGroup_module_default = {};
|
|
156
|
+
|
|
157
|
+
// components/ButtonGroup/index.tsx
|
|
158
|
+
import { jsx as jsx2 } from "react/jsx-runtime";
|
|
159
|
+
var ButtonGroup = ({
|
|
160
|
+
children,
|
|
161
|
+
align = "horizontal",
|
|
162
|
+
variant = "default",
|
|
163
|
+
size = "md",
|
|
164
|
+
radius = "md",
|
|
165
|
+
disabled,
|
|
166
|
+
className = ""
|
|
167
|
+
}) => {
|
|
168
|
+
return /* @__PURE__ */ jsx2(
|
|
169
|
+
"div",
|
|
170
|
+
{
|
|
171
|
+
className: `${ButtonGroup_module_default["button-group"]} ${ButtonGroup_module_default[`button-group-variant--${variant}`]} ${ButtonGroup_module_default[`button-group-size--${size}`]} ${ButtonGroup_module_default[`button-group-radius--${radius}`]} ${ButtonGroup_module_default[`button-group-align--${align}`]} ${className}`,
|
|
172
|
+
children: React2.Children.toArray(children).filter(
|
|
173
|
+
(child) => React2.isValidElement(child) && child.type === Button
|
|
174
|
+
).map(
|
|
175
|
+
(child, index) => React2.cloneElement(child, {
|
|
176
|
+
key: index || child.key,
|
|
177
|
+
size: size || child.props.size,
|
|
178
|
+
disabled: disabled || child.props.disabled,
|
|
179
|
+
variant: variant || child.props.variant,
|
|
180
|
+
radius: "none"
|
|
181
|
+
})
|
|
182
|
+
)
|
|
183
|
+
}
|
|
184
|
+
);
|
|
185
|
+
};
|
|
186
|
+
export {
|
|
187
|
+
Button,
|
|
188
|
+
ButtonGroup
|
|
189
|
+
};
|
|
190
|
+
//# sourceMappingURL=index.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../components/Button/index.tsx","../utils/ripple.tsx","../components/Button/Button.module.scss","../components/ButtonGroup/index.tsx","../components/ButtonGroup/ButtonGroup.module.scss"],"sourcesContent":["\"use client\";\n\nimport * as React from \"react\";\nimport { Spinner } from \"@aristobyte-ui/spinner\";\n\nimport { renderRipple } from \"../../utils\";\n\nimport styles from \"./Button.module.scss\";\n\nexport interface IButton extends React.ButtonHTMLAttributes<HTMLButtonElement> {\n variant?:\n | \"default\"\n | \"primary\"\n | \"secondary\"\n | \"success\"\n | \"error\"\n | \"warning\";\n appearance?:\n | \"solid\"\n | \"outline\"\n | \"outline-dashed\"\n | \"no-outline\"\n | \"glowing\";\n size?: \"xsm\" | \"sm\" | \"md\" | \"lg\" | \"xlg\";\n radius?: \"none\" | \"sm\" | \"md\" | \"lg\" | \"full\";\n icon?: {\n component: React.ElementType;\n align?: \"left\" | \"right\";\n };\n isLoading?: boolean;\n spinnerType?: \"default\" | \"duo\" | \"gradient\" | \"pulse\" | \"pulse-duo\";\n}\n\nexport const Button: React.FC<IButton> = ({\n onClick,\n children,\n variant = \"default\",\n appearance = \"solid\",\n size = \"md\",\n radius = \"md\",\n icon,\n spinnerType = \"default\",\n isLoading = false,\n disabled,\n className = \"\",\n dangerouslySetInnerHTML,\n ...restProps\n}) => {\n const ref = React.useRef<HTMLButtonElement>(null);\n\n const handleClick = (e: React.MouseEvent<HTMLButtonElement, MouseEvent>) => {\n const { clientX, clientY } = e;\n renderRipple<HTMLButtonElement>({ ref, clientX, clientY });\n if (onClick) {\n onClick(e);\n }\n };\n\n const Children = () => (\n <>\n {isLoading && (\n <Spinner\n size={size}\n variant={variant}\n type={spinnerType}\n className={styles[\"spinner\"]}\n />\n )}\n {icon && (\n <span\n className={`${styles[\"icon\"]} ${styles[`icon--${icon.align ?? \"left\"}`]}`}\n >\n {React.createElement(icon.component)}\n </span>\n )}\n {children}\n </>\n );\n\n return (\n <button\n ref={ref}\n disabled={disabled || isLoading}\n className={`${styles[\"button\"]} ${styles[`button-variant--${variant}`]} ${styles[`button-appearance--${appearance}`]} ${styles[`button-size--${size}`]} ${styles[`button-radius--${radius}`]} ${isLoading ? styles[\"button--loading\"] : \"\"} ${className}`}\n onClick={handleClick}\n {...(dangerouslySetInnerHTML\n ? { dangerouslySetInnerHTML }\n : { children: <Children /> })}\n {...restProps}\n />\n );\n};\n","type RippleParamsRef = HTMLButtonElement | HTMLAnchorElement;\n\nexport type RippleParams<HTMLElementType extends RippleParamsRef> = {\n ref: React.RefObject<HTMLElementType | null>;\n clientX: number;\n clientY: number;\n};\n\nexport const renderRipple = <HTMLElementType extends RippleParamsRef>({\n ref,\n clientX,\n clientY,\n}: RippleParams<HTMLElementType>) => {\n const button = ref.current;\n if (!button) return;\n\n const circle = document.createElement(\"span\");\n const diameter = Math.max(button.clientWidth, button.clientHeight);\n const radius = diameter / 2;\n\n circle.id = \"ripple\";\n\n const style = document.createElement(\"style\");\n style.innerHTML = `\n #ripple {\n animation: ripple 300ms linear;\n background-color: rgba(255, 255, 255, 0.3);\n border-radius: 50%;\n height: ${diameter}px;\n left: ${clientX - button.getBoundingClientRect().left - radius}px;\n pointer-events: none;\n position: absolute;\n top: ${clientY - button.getBoundingClientRect().top - radius}px;\n transform: scale(0);\n width: ${diameter}px;\n z-index: 0;\n }\n \n @keyframes ripple {\n to {\n opacity: 0;\n transform: scale(2);\n }\n }\n `;\n\n button.appendChild(style);\n button.appendChild(circle);\n\n circle.addEventListener(\"animationend\", () => {\n circle.remove();\n style.remove();\n });\n};\n",".button {\n align-items: center;\n border: none;\n cursor: pointer;\n display: flex;\n font-weight: 500;\n gap: 10px;\n letter-spacing: 0rem;\n line-height: 1.42;\n overflow: hidden;\n position: relative;\n transition: background-color 200ms ease, transform 300ms ease;\n}\n.button:disabled {\n cursor: not-allowed;\n opacity: 1;\n}\n.button:active {\n transform: scale(0.97);\n}\n.button-variant--default.button-appearance--solid {\n background-color: #1f2937;\n backdrop-filter: 8px;\n color: #ffffff;\n}\n.button-variant--default.button-appearance--solid:hover {\n background-color: #111827;\n}\n.button-variant--default.button-appearance--solid:disabled {\n background-color: rgba(31, 41, 55, 0.5);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--default.button-appearance--solid:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--default.button-appearance--solid .icon {\n color: #ffffff;\n}\n.button-variant--default.button-appearance--outline {\n background-color: rgba(31, 41, 55, 0.2);\n backdrop-filter: 8px;\n border: 1px solid #1f2937;\n color: #ffffff;\n}\n.button-variant--default.button-appearance--outline:hover {\n background-color: #1f2937;\n}\n.button-variant--default.button-appearance--outline:disabled {\n background-color: rgba(31, 41, 55, 0.2);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--default.button-appearance--outline:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--default.button-appearance--outline .icon {\n color: #ffffff;\n}\n.button-variant--default.button-appearance--outline-dashed {\n background-color: rgba(31, 41, 55, 0.2);\n backdrop-filter: 8px;\n border: 1px dashed #1f2937;\n color: #ffffff;\n}\n.button-variant--default.button-appearance--outline-dashed:hover {\n background-color: #1f2937;\n}\n.button-variant--default.button-appearance--outline-dashed:disabled {\n background-color: rgba(31, 41, 55, 0.2);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--default.button-appearance--outline-dashed:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--default.button-appearance--outline-dashed .icon {\n color: #ffffff;\n}\n.button-variant--default.button-appearance--no-outline {\n background-color: rgba(31, 41, 55, 0.2);\n backdrop-filter: 8px;\n color: #ffffff;\n}\n.button-variant--default.button-appearance--no-outline:hover {\n background-color: #1f2937;\n}\n.button-variant--default.button-appearance--no-outline:disabled {\n background-color: rgba(31, 41, 55, 0.2);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--default.button-appearance--no-outline:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--default.button-appearance--no-outline .icon {\n color: #ffffff;\n}\n.button-variant--default.button-appearance--glowing {\n background-color: rgba(31, 41, 55, 0.2);\n backdrop-filter: 8px;\n border: 1px solid #1f2937;\n color: #ffffff;\n box-shadow: 0 0 8px rgba(31, 41, 55, 0.5), 0 0 16px rgba(31, 41, 55, 0.4), 0 0 24px rgba(31, 41, 55, 0.3);\n}\n.button-variant--default.button-appearance--glowing:hover {\n background-color: #1f2937;\n}\n.button-variant--default.button-appearance--glowing:disabled {\n background-color: rgba(31, 41, 55, 0.2);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--default.button-appearance--glowing:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--default.button-appearance--glowing .icon {\n color: #ffffff;\n}\n.button-variant--primary.button-appearance--solid {\n background-color: #2563eb;\n backdrop-filter: 8px;\n color: #ffffff;\n}\n.button-variant--primary.button-appearance--solid:hover {\n background-color: #1d4ed8;\n}\n.button-variant--primary.button-appearance--solid:disabled {\n background-color: rgba(37, 99, 235, 0.5);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--primary.button-appearance--solid:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--primary.button-appearance--solid .icon {\n color: #ffffff;\n}\n.button-variant--primary.button-appearance--outline {\n background-color: rgba(37, 99, 235, 0.2);\n backdrop-filter: 8px;\n border: 1px solid #2563eb;\n color: #ffffff;\n}\n.button-variant--primary.button-appearance--outline:hover {\n background-color: #2563eb;\n}\n.button-variant--primary.button-appearance--outline:disabled {\n background-color: rgba(37, 99, 235, 0.2);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--primary.button-appearance--outline:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--primary.button-appearance--outline .icon {\n color: #ffffff;\n}\n.button-variant--primary.button-appearance--outline-dashed {\n background-color: rgba(37, 99, 235, 0.2);\n backdrop-filter: 8px;\n border: 1px dashed #2563eb;\n color: #ffffff;\n}\n.button-variant--primary.button-appearance--outline-dashed:hover {\n background-color: #2563eb;\n}\n.button-variant--primary.button-appearance--outline-dashed:disabled {\n background-color: rgba(37, 99, 235, 0.2);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--primary.button-appearance--outline-dashed:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--primary.button-appearance--outline-dashed .icon {\n color: #ffffff;\n}\n.button-variant--primary.button-appearance--no-outline {\n background-color: rgba(37, 99, 235, 0.2);\n backdrop-filter: 8px;\n color: #ffffff;\n}\n.button-variant--primary.button-appearance--no-outline:hover {\n background-color: #2563eb;\n}\n.button-variant--primary.button-appearance--no-outline:disabled {\n background-color: rgba(37, 99, 235, 0.2);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--primary.button-appearance--no-outline:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--primary.button-appearance--no-outline .icon {\n color: #ffffff;\n}\n.button-variant--primary.button-appearance--glowing {\n background-color: rgba(37, 99, 235, 0.2);\n backdrop-filter: 8px;\n border: 1px solid #2563eb;\n color: #ffffff;\n box-shadow: 0 0 8px rgba(37, 99, 235, 0.5), 0 0 16px rgba(37, 99, 235, 0.4), 0 0 24px rgba(37, 99, 235, 0.3);\n}\n.button-variant--primary.button-appearance--glowing:hover {\n background-color: #2563eb;\n}\n.button-variant--primary.button-appearance--glowing:disabled {\n background-color: rgba(37, 99, 235, 0.2);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--primary.button-appearance--glowing:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--primary.button-appearance--glowing .icon {\n color: #ffffff;\n}\n.button-variant--secondary.button-appearance--solid {\n background-color: #4f46e5;\n backdrop-filter: 8px;\n color: #ffffff;\n}\n.button-variant--secondary.button-appearance--solid:hover {\n background-color: #4338ca;\n}\n.button-variant--secondary.button-appearance--solid:disabled {\n background-color: rgba(79, 70, 229, 0.5);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--secondary.button-appearance--solid:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--secondary.button-appearance--solid .icon {\n color: #ffffff;\n}\n.button-variant--secondary.button-appearance--outline {\n background-color: rgba(79, 70, 229, 0.2);\n backdrop-filter: 8px;\n border: 1px solid #4f46e5;\n color: #ffffff;\n}\n.button-variant--secondary.button-appearance--outline:hover {\n background-color: #4f46e5;\n}\n.button-variant--secondary.button-appearance--outline:disabled {\n background-color: rgba(79, 70, 229, 0.2);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--secondary.button-appearance--outline:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--secondary.button-appearance--outline .icon {\n color: #ffffff;\n}\n.button-variant--secondary.button-appearance--outline-dashed {\n background-color: rgba(79, 70, 229, 0.2);\n backdrop-filter: 8px;\n border: 1px dashed #4f46e5;\n color: #ffffff;\n}\n.button-variant--secondary.button-appearance--outline-dashed:hover {\n background-color: #4f46e5;\n}\n.button-variant--secondary.button-appearance--outline-dashed:disabled {\n background-color: rgba(79, 70, 229, 0.2);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--secondary.button-appearance--outline-dashed:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--secondary.button-appearance--outline-dashed .icon {\n color: #ffffff;\n}\n.button-variant--secondary.button-appearance--no-outline {\n background-color: rgba(79, 70, 229, 0.2);\n backdrop-filter: 8px;\n color: #ffffff;\n}\n.button-variant--secondary.button-appearance--no-outline:hover {\n background-color: #4f46e5;\n}\n.button-variant--secondary.button-appearance--no-outline:disabled {\n background-color: rgba(79, 70, 229, 0.2);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--secondary.button-appearance--no-outline:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--secondary.button-appearance--no-outline .icon {\n color: #ffffff;\n}\n.button-variant--secondary.button-appearance--glowing {\n background-color: rgba(79, 70, 229, 0.2);\n backdrop-filter: 8px;\n border: 1px solid #4f46e5;\n color: #ffffff;\n box-shadow: 0 0 8px rgba(79, 70, 229, 0.5), 0 0 16px rgba(79, 70, 229, 0.4), 0 0 24px rgba(79, 70, 229, 0.3);\n}\n.button-variant--secondary.button-appearance--glowing:hover {\n background-color: #4f46e5;\n}\n.button-variant--secondary.button-appearance--glowing:disabled {\n background-color: rgba(79, 70, 229, 0.2);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--secondary.button-appearance--glowing:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--secondary.button-appearance--glowing .icon {\n color: #ffffff;\n}\n.button-variant--success.button-appearance--solid {\n background-color: #16a34a;\n backdrop-filter: 8px;\n color: #ffffff;\n}\n.button-variant--success.button-appearance--solid:hover {\n background-color: #15803d;\n}\n.button-variant--success.button-appearance--solid:disabled {\n background-color: rgba(22, 163, 74, 0.5);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--success.button-appearance--solid:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--success.button-appearance--solid .icon {\n color: #ffffff;\n}\n.button-variant--success.button-appearance--outline {\n background-color: rgba(22, 163, 74, 0.2);\n backdrop-filter: 8px;\n border: 1px solid #16a34a;\n color: #ffffff;\n}\n.button-variant--success.button-appearance--outline:hover {\n background-color: #16a34a;\n}\n.button-variant--success.button-appearance--outline:disabled {\n background-color: rgba(22, 163, 74, 0.2);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--success.button-appearance--outline:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--success.button-appearance--outline .icon {\n color: #ffffff;\n}\n.button-variant--success.button-appearance--outline-dashed {\n background-color: rgba(22, 163, 74, 0.2);\n backdrop-filter: 8px;\n border: 1px dashed #16a34a;\n color: #ffffff;\n}\n.button-variant--success.button-appearance--outline-dashed:hover {\n background-color: #16a34a;\n}\n.button-variant--success.button-appearance--outline-dashed:disabled {\n background-color: rgba(22, 163, 74, 0.2);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--success.button-appearance--outline-dashed:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--success.button-appearance--outline-dashed .icon {\n color: #ffffff;\n}\n.button-variant--success.button-appearance--no-outline {\n background-color: rgba(22, 163, 74, 0.2);\n backdrop-filter: 8px;\n color: #ffffff;\n}\n.button-variant--success.button-appearance--no-outline:hover {\n background-color: #16a34a;\n}\n.button-variant--success.button-appearance--no-outline:disabled {\n background-color: rgba(22, 163, 74, 0.2);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--success.button-appearance--no-outline:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--success.button-appearance--no-outline .icon {\n color: #ffffff;\n}\n.button-variant--success.button-appearance--glowing {\n background-color: rgba(22, 163, 74, 0.2);\n backdrop-filter: 8px;\n border: 1px solid #16a34a;\n color: #ffffff;\n box-shadow: 0 0 8px rgba(22, 163, 74, 0.5), 0 0 16px rgba(22, 163, 74, 0.4), 0 0 24px rgba(22, 163, 74, 0.3);\n}\n.button-variant--success.button-appearance--glowing:hover {\n background-color: #16a34a;\n}\n.button-variant--success.button-appearance--glowing:disabled {\n background-color: rgba(22, 163, 74, 0.2);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--success.button-appearance--glowing:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--success.button-appearance--glowing .icon {\n color: #ffffff;\n}\n.button-variant--error.button-appearance--solid {\n background-color: #dc2626;\n backdrop-filter: 8px;\n color: #ffffff;\n}\n.button-variant--error.button-appearance--solid:hover {\n background-color: #b91c1c;\n}\n.button-variant--error.button-appearance--solid:disabled {\n background-color: rgba(220, 38, 38, 0.5);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--error.button-appearance--solid:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--error.button-appearance--solid .icon {\n color: #ffffff;\n}\n.button-variant--error.button-appearance--outline {\n background-color: rgba(220, 38, 38, 0.2);\n backdrop-filter: 8px;\n border: 1px solid #dc2626;\n color: #ffffff;\n}\n.button-variant--error.button-appearance--outline:hover {\n background-color: #dc2626;\n}\n.button-variant--error.button-appearance--outline:disabled {\n background-color: rgba(220, 38, 38, 0.2);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--error.button-appearance--outline:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--error.button-appearance--outline .icon {\n color: #ffffff;\n}\n.button-variant--error.button-appearance--outline-dashed {\n background-color: rgba(220, 38, 38, 0.2);\n backdrop-filter: 8px;\n border: 1px dashed #dc2626;\n color: #ffffff;\n}\n.button-variant--error.button-appearance--outline-dashed:hover {\n background-color: #dc2626;\n}\n.button-variant--error.button-appearance--outline-dashed:disabled {\n background-color: rgba(220, 38, 38, 0.2);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--error.button-appearance--outline-dashed:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--error.button-appearance--outline-dashed .icon {\n color: #ffffff;\n}\n.button-variant--error.button-appearance--no-outline {\n background-color: rgba(220, 38, 38, 0.2);\n backdrop-filter: 8px;\n color: #ffffff;\n}\n.button-variant--error.button-appearance--no-outline:hover {\n background-color: #dc2626;\n}\n.button-variant--error.button-appearance--no-outline:disabled {\n background-color: rgba(220, 38, 38, 0.2);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--error.button-appearance--no-outline:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--error.button-appearance--no-outline .icon {\n color: #ffffff;\n}\n.button-variant--error.button-appearance--glowing {\n background-color: rgba(220, 38, 38, 0.2);\n backdrop-filter: 8px;\n border: 1px solid #dc2626;\n color: #ffffff;\n box-shadow: 0 0 8px rgba(220, 38, 38, 0.5), 0 0 16px rgba(220, 38, 38, 0.4), 0 0 24px rgba(220, 38, 38, 0.3);\n}\n.button-variant--error.button-appearance--glowing:hover {\n background-color: #dc2626;\n}\n.button-variant--error.button-appearance--glowing:disabled {\n background-color: rgba(220, 38, 38, 0.2);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--error.button-appearance--glowing:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--error.button-appearance--glowing .icon {\n color: #ffffff;\n}\n.button-variant--warning.button-appearance--solid {\n background-color: #d97706;\n backdrop-filter: 8px;\n color: #ffffff;\n}\n.button-variant--warning.button-appearance--solid:hover {\n background-color: #b45309;\n}\n.button-variant--warning.button-appearance--solid:disabled {\n background-color: rgba(217, 119, 6, 0.5);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--warning.button-appearance--solid:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--warning.button-appearance--solid .icon {\n color: #ffffff;\n}\n.button-variant--warning.button-appearance--outline {\n background-color: rgba(217, 119, 6, 0.2);\n backdrop-filter: 8px;\n border: 1px solid #d97706;\n color: #ffffff;\n}\n.button-variant--warning.button-appearance--outline:hover {\n background-color: #d97706;\n}\n.button-variant--warning.button-appearance--outline:disabled {\n background-color: rgba(217, 119, 6, 0.2);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--warning.button-appearance--outline:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--warning.button-appearance--outline .icon {\n color: #ffffff;\n}\n.button-variant--warning.button-appearance--outline-dashed {\n background-color: rgba(217, 119, 6, 0.2);\n backdrop-filter: 8px;\n border: 1px dashed #d97706;\n color: #ffffff;\n}\n.button-variant--warning.button-appearance--outline-dashed:hover {\n background-color: #d97706;\n}\n.button-variant--warning.button-appearance--outline-dashed:disabled {\n background-color: rgba(217, 119, 6, 0.2);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--warning.button-appearance--outline-dashed:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--warning.button-appearance--outline-dashed .icon {\n color: #ffffff;\n}\n.button-variant--warning.button-appearance--no-outline {\n background-color: rgba(217, 119, 6, 0.2);\n backdrop-filter: 8px;\n color: #ffffff;\n}\n.button-variant--warning.button-appearance--no-outline:hover {\n background-color: #d97706;\n}\n.button-variant--warning.button-appearance--no-outline:disabled {\n background-color: rgba(217, 119, 6, 0.2);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--warning.button-appearance--no-outline:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--warning.button-appearance--no-outline .icon {\n color: #ffffff;\n}\n.button-variant--warning.button-appearance--glowing {\n background-color: rgba(217, 119, 6, 0.2);\n backdrop-filter: 8px;\n border: 1px solid #d97706;\n color: #ffffff;\n box-shadow: 0 0 8px rgba(217, 119, 6, 0.5), 0 0 16px rgba(217, 119, 6, 0.4), 0 0 24px rgba(217, 119, 6, 0.3);\n}\n.button-variant--warning.button-appearance--glowing:hover {\n background-color: #d97706;\n}\n.button-variant--warning.button-appearance--glowing:disabled {\n background-color: rgba(217, 119, 6, 0.2);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--warning.button-appearance--glowing:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--warning.button-appearance--glowing .icon {\n color: #ffffff;\n}\n.button-size--xsm {\n font-size: 0.75rem;\n line-height: 1rem;\n padding: 0.25rem 0.5rem;\n min-height: 28px;\n}\n.button-size--xsm .spinner,\n.button-size--xsm .icon {\n max-height: 1rem;\n max-width: 1rem;\n}\n.button-size--sm {\n font-size: 0.875rem;\n line-height: 1.25rem;\n padding: 0.375rem 0.75rem;\n min-height: 32px;\n}\n.button-size--sm .spinner,\n.button-size--sm .icon {\n max-height: 1.125rem;\n max-width: 1.125rem;\n}\n.button-size--md {\n font-size: 1rem;\n line-height: 1.5rem;\n padding: 0.5rem 1rem;\n min-height: 40px;\n}\n.button-size--md .spinner,\n.button-size--md .icon {\n height: 1.25rem;\n width: 1.25rem;\n}\n.button-size--lg {\n font-size: 1.125rem;\n line-height: 1.75rem;\n padding: 0.625rem 1.25rem;\n min-height: 44px;\n}\n.button-size--lg .spinner,\n.button-size--lg .icon {\n max-height: 1.375rem;\n max-width: 1.375rem;\n}\n.button-size--xlg {\n font-size: 1.25rem;\n line-height: 1.75rem;\n padding: 0.75rem 1.5rem;\n min-height: 48px;\n}\n.button-size--xlg .spinner,\n.button-size--xlg .icon {\n max-height: 1.5rem;\n max-width: 1.5rem;\n}\n.button-radius--none {\n border-radius: 0rem;\n}\n.button-radius--sm {\n border-radius: 0.125rem;\n}\n.button-radius--md {\n border-radius: 0.375rem;\n}\n.button-radius--lg {\n border-radius: 0.5rem;\n}\n.button-radius--full {\n border-radius: 1.5rem;\n}\n.button .icon {\n align-items: center;\n display: flex;\n justify-content: center;\n}\n.button .icon--right {\n order: 5;\n}\n.button .icon svg {\n width: 100%;\n}\n/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VSb290IjoiL1VzZXJzL2RodW5hbnlhbi9hcmlzdG9ieXRlL2dpdGh1Yi9hcmlzdG9ieXRlLXVpL3BhY2thZ2VzL2J1dHRvbi9jb21wb25lbnRzL0J1dHRvbiIsInNvdXJjZXMiOlsiQnV0dG9uLm1vZHVsZS5zY3NzIiwiLi4vLi4vc3R5bGVzL19zZXR0aW5ncy5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSxZQUNFOztBQUdGO0VBQ0U7RUFDQTs7QUFHRjtFQUNFOztBQUtFO0VBQ0Usa0JDU0c7RURSSDtFQUNBLE9DNUJBOztBRDhCQTtFQUNFLGtCQ0tDOztBREZIO0VBQ0Usa0JDMERlO0VEekRmLE9DaUZrQjs7QUQvRWxCO0VBQ0UsT0M4RWdCOztBRDFFcEI7RUFDRSxPQzVDRjs7QURnREY7RUFDRTtFQUNBO0VBQ0E7RUFDQSxPQ3BEQTs7QURzREE7RUFDRSxrQkNwQkM7O0FEdUJIO0VBQ0U7RUFDQSxPQ3lEa0I7O0FEdkRsQjtFQUNFLE9Dc0RnQjs7QURsRHBCO0VBQ0UsT0NwRUY7O0FEd0VGO0VBQ0U7RUFDQTtFQUNBO0VBQ0EsT0M1RUE7O0FEOEVBO0VBQ0Usa0JDNUNDOztBRCtDSDtFQUNFO0VBQ0EsT0NpQ2tCOztBRC9CbEI7RUFDRSxPQzhCZ0I7O0FEMUJwQjtFQUNFLE9DNUZGOztBRGdHRjtFQUNFO0VBQ0E7RUFDQSxPQ25HQTs7QURxR0E7RUFDRSxrQkNuRUM7O0FEc0VIO0VBQ0U7RUFDQSxPQ1VrQjs7QURSbEI7RUFDRSxPQ09nQjs7QURIcEI7RUFDRSxPQ25IRjs7QUR1SEY7RUFDRTtFQUNBO0VBQ0E7RUFDQSxPQzNIQTtFRDRIQSxZQUNFOztBQUlGO0VBQ0Usa0JDL0ZDOztBRGtHSDtFQUNFO0VBQ0EsT0NsQmtCOztBRG9CbEI7RUFDRSxPQ3JCZ0I7O0FEeUJwQjtFQUNFLE9DL0lGOztBRHFKRjtFQUNFLGtCQ3pHRztFRDBHSDtFQUNBLE9DeEpBOztBRDBKQTtFQUNFLGtCQzdHQzs7QURnSEg7RUFDRSxrQkM5RGU7RUQrRGYsT0MzQ2tCOztBRDZDbEI7RUFDRSxPQzlDZ0I7O0FEa0RwQjtFQUNFLE9DeEtGOztBRDRLRjtFQUNFO0VBQ0E7RUFDQTtFQUNBLE9DaExBOztBRGtMQTtFQUNFLGtCQ3RJQzs7QUR5SUg7RUFDRTtFQUNBLE9DbkVrQjs7QURxRWxCO0VBQ0UsT0N0RWdCOztBRDBFcEI7RUFDRSxPQ2hNRjs7QURvTUY7RUFDRTtFQUNBO0VBQ0E7RUFDQSxPQ3hNQTs7QUQwTUE7RUFDRSxrQkM5SkM7O0FEaUtIO0VBQ0U7RUFDQSxPQzNGa0I7O0FENkZsQjtFQUNFLE9DOUZnQjs7QURrR3BCO0VBQ0UsT0N4TkY7O0FENE5GO0VBQ0U7RUFDQTtFQUNBLE9DL05BOztBRGlPQTtFQUNFLGtCQ3JMQzs7QUR3TEg7RUFDRTtFQUNBLE9DbEhrQjs7QURvSGxCO0VBQ0UsT0NySGdCOztBRHlIcEI7RUFDRSxPQy9PRjs7QURtUEY7RUFDRTtFQUNBO0VBQ0E7RUFDQSxPQ3ZQQTtFRHdQQSxZQUNFOztBQUlGO0VBQ0Usa0JDak5DOztBRG9OSDtFQUNFO0VBQ0EsT0M5SWtCOztBRGdKbEI7RUFDRSxPQ2pKZ0I7O0FEcUpwQjtFQUNFLE9DM1FGOztBRGlSRjtFQUNFLGtCQ3pOSztFRDBOTDtFQUNBLE9DcFJBOztBRHNSQTtFQUNFLGtCQzdORzs7QURnT0w7RUFDRSxrQkN0TGlCO0VEdUxqQixPQ3ZLa0I7O0FEeUtsQjtFQUNFLE9DMUtnQjs7QUQ4S3BCO0VBQ0UsT0NwU0Y7O0FEd1NGO0VBQ0U7RUFDQTtFQUNBO0VBQ0EsT0M1U0E7O0FEOFNBO0VBQ0Usa0JDdFBHOztBRHlQTDtFQUNFO0VBQ0EsT0MvTGtCOztBRGlNbEI7RUFDRSxPQ2xNZ0I7O0FEc01wQjtFQUNFLE9DNVRGOztBRGdVRjtFQUNFO0VBQ0E7RUFDQTtFQUNBLE9DcFVBOztBRHNVQTtFQUNFLGtCQzlRRzs7QURpUkw7RUFDRTtFQUNBLE9Ddk5rQjs7QUR5TmxCO0VBQ0UsT0MxTmdCOztBRDhOcEI7RUFDRSxPQ3BWRjs7QUR3VkY7RUFDRTtFQUNBO0VBQ0EsT0MzVkE7O0FENlZBO0VBQ0Usa0JDclNHOztBRHdTTDtFQUNFO0VBQ0EsT0M5T2tCOztBRGdQbEI7RUFDRSxPQ2pQZ0I7O0FEcVBwQjtFQUNFLE9DM1dGOztBRCtXRjtFQUNFO0VBQ0E7RUFDQTtFQUNBLE9DblhBO0VEb1hBLFlBQ0U7O0FBSUY7RUFDRSxrQkNqVUc7O0FEb1VMO0VBQ0U7RUFDQSxPQzFRa0I7O0FENFFsQjtFQUNFLE9DN1FnQjs7QURpUnBCO0VBQ0UsT0N2WUY7O0FENllGO0VBQ0Usa0JDalVJO0VEa1VKO0VBQ0EsT0NoWkE7O0FEa1pBO0VBQ0Usa0JDclVFOztBRHdVSjtFQUNFLGtCQzFTZTtFRDJTZixPQ25Ta0I7O0FEcVNsQjtFQUNFLE9DdFNnQjs7QUQwU3BCO0VBQ0UsT0NoYUY7O0FEb2FGO0VBQ0U7RUFDQTtFQUNBO0VBQ0EsT0N4YUE7O0FEMGFBO0VBQ0Usa0JDOVZFOztBRGlXSjtFQUNFO0VBQ0EsT0MzVGtCOztBRDZUbEI7RUFDRSxPQzlUZ0I7O0FEa1VwQjtFQUNFLE9DeGJGOztBRDRiRjtFQUNFO0VBQ0E7RUFDQTtFQUNBLE9DaGNBOztBRGtjQTtFQUNFLGtCQ3RYRTs7QUR5WEo7RUFDRTtFQUNBLE9DblZrQjs7QURxVmxCO0VBQ0UsT0N0VmdCOztBRDBWcEI7RUFDRSxPQ2hkRjs7QURvZEY7RUFDRTtFQUNBO0VBQ0EsT0N2ZEE7O0FEeWRBO0VBQ0Usa0JDN1lFOztBRGdaSjtFQUNFO0VBQ0EsT0MxV2tCOztBRDRXbEI7RUFDRSxPQzdXZ0I7O0FEaVhwQjtFQUNFLE9DdmVGOztBRDJlRjtFQUNFO0VBQ0E7RUFDQTtFQUNBLE9DL2VBO0VEZ2ZBLFlBQ0U7O0FBSUY7RUFDRSxrQkN6YUU7O0FENGFKO0VBQ0U7RUFDQSxPQ3RZa0I7O0FEd1lsQjtFQUNFLE9DellnQjs7QUQ2WXBCO0VBQ0UsT0NuZ0JGOztBRHlnQkY7RUFDRSxrQkN2Y0U7RUR3Y0Y7RUFDQSxPQzVnQkE7O0FEOGdCQTtFQUNFLGtCQzNjQTs7QUQ4Y0Y7RUFDRSxrQkMxYWE7RUQyYWIsT0MvWmtCOztBRGlhbEI7RUFDRSxPQ2xhZ0I7O0FEc2FwQjtFQUNFLE9DNWhCRjs7QURnaUJGO0VBQ0U7RUFDQTtFQUNBO0VBQ0EsT0NwaUJBOztBRHNpQkE7RUFDRSxrQkNwZUE7O0FEdWVGO0VBQ0U7RUFDQSxPQ3Zia0I7O0FEeWJsQjtFQUNFLE9DMWJnQjs7QUQ4YnBCO0VBQ0UsT0NwakJGOztBRHdqQkY7RUFDRTtFQUNBO0VBQ0E7RUFDQSxPQzVqQkE7O0FEOGpCQTtFQUNFLGtCQzVmQTs7QUQrZkY7RUFDRTtFQUNBLE9DL2NrQjs7QURpZGxCO0VBQ0UsT0NsZGdCOztBRHNkcEI7RUFDRSxPQzVrQkY7O0FEZ2xCRjtFQUNFO0VBQ0E7RUFDQSxPQ25sQkE7O0FEcWxCQTtFQUNFLGtCQ25oQkE7O0FEc2hCRjtFQUNFO0VBQ0EsT0N0ZWtCOztBRHdlbEI7RUFDRSxPQ3plZ0I7O0FENmVwQjtFQUNFLE9Dbm1CRjs7QUR1bUJGO0VBQ0U7RUFDQTtFQUNBO0VBQ0EsT0MzbUJBO0VENG1CQSxZQUNFOztBQUlGO0VBQ0Usa0JDL2lCQTs7QURrakJGO0VBQ0U7RUFDQSxPQ2xnQmtCOztBRG9nQmxCO0VBQ0UsT0NyZ0JnQjs7QUR5Z0JwQjtFQUNFLE9DL25CRjs7QURxb0JGO0VBQ0Usa0JDL2lCSTtFRGdqQko7RUFDQSxPQ3hvQkE7O0FEMG9CQTtFQUNFLGtCQ25qQkU7O0FEc2pCSjtFQUNFLGtCQzloQmU7RUQraEJmLE9DM2hCa0I7O0FENmhCbEI7RUFDRSxPQzloQmdCOztBRGtpQnBCO0VBQ0UsT0N4cEJGOztBRDRwQkY7RUFDRTtFQUNBO0VBQ0E7RUFDQSxPQ2hxQkE7O0FEa3FCQTtFQUNFLGtCQzVrQkU7O0FEK2tCSjtFQUNFO0VBQ0EsT0NuakJrQjs7QURxakJsQjtFQUNFLE9DdGpCZ0I7O0FEMGpCcEI7RUFDRSxPQ2hyQkY7O0FEb3JCRjtFQUNFO0VBQ0E7RUFDQTtFQUNBLE9DeHJCQTs7QUQwckJBO0VBQ0Usa0JDcG1CRTs7QUR1bUJKO0VBQ0U7RUFDQSxPQzNrQmtCOztBRDZrQmxCO0VBQ0UsT0M5a0JnQjs7QURrbEJwQjtFQUNFLE9DeHNCRjs7QUQ0c0JGO0VBQ0U7RUFDQTtFQUNBLE9DL3NCQTs7QURpdEJBO0VBQ0Usa0JDM25CRTs7QUQ4bkJKO0VBQ0U7RUFDQSxPQ2xtQmtCOztBRG9tQmxCO0VBQ0UsT0NybUJnQjs7QUR5bUJwQjtFQUNFLE9DL3RCRjs7QURtdUJGO0VBQ0U7RUFDQTtFQUNBO0VBQ0EsT0N2dUJBO0VEd3VCQSxZQUNFOztBQUlGO0VBQ0Usa0JDdnBCRTs7QUQwcEJKO0VBQ0U7RUFDQSxPQzluQmtCOztBRGdvQmxCO0VBQ0UsT0Nqb0JnQjs7QURxb0JwQjtFQUNFLE9DM3ZCRjs7QURrd0JKO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7QUFBQTtFQUVFO0VBQ0E7O0FBSUo7RUFDRTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtBQUFBO0VBRUU7RUFDQTs7QUFJSjtFQUNFO0VBQ0E7RUFDQTtFQUNBOztBQUVBO0FBQUE7RUFFRTtFQUNBOztBQUlKO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7QUFBQTtFQUVFO0VBQ0E7O0FBSUo7RUFDRTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtBQUFBO0VBRUU7RUFDQTs7QUFNSjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBSUo7RUFDRTtFQUNBO0VBQ0E7O0FBRUE7RUFDRTs7QUFHRjtFQUNFIiwic291cmNlc0NvbnRlbnQiOlsiQHVzZSBcIi4uLy4uL3N0eWxlcy9zZXR0aW5nc1wiIGFzICo7XG5cbi5idXR0b24ge1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBib3JkZXI6IG5vbmU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZGlzcGxheTogZmxleDtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgZ2FwOiAxMHB4O1xuICBsZXR0ZXItc3BhY2luZzogMHJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNDI7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdHJhbnNpdGlvbjpcbiAgICBiYWNrZ3JvdW5kLWNvbG9yIDIwMG1zIGVhc2UsXG4gICAgdHJhbnNmb3JtIDMwMG1zIGVhc2U7XG5cbiAgJjpkaXNhYmxlZCB7XG4gICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgJjphY3RpdmUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMC45Nyk7XG4gIH1cblxuICAmLXZhcmlhbnQge1xuICAgICYtLWRlZmF1bHQuYnV0dG9uLWFwcGVhcmFuY2Uge1xuICAgICAgJi0tc29saWQge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItZGVmYXVsdDtcbiAgICAgICAgYmFja2Ryb3AtZmlsdGVyOiA4cHg7XG4gICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZTtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItZGVmYXVsdC1ob3ZlcjtcbiAgICAgICAgfVxuXG4gICAgICAgICY6ZGlzYWJsZWQge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1kZWZhdWx0LWRpc2FibGVkO1xuICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZS1kaXNhYmxlZDtcblxuICAgICAgICAgIC5pY29uIHtcbiAgICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZS1kaXNhYmxlZDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYtLW91dGxpbmUge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRjb2xvci1kZWZhdWx0LCAwLjIpO1xuICAgICAgICBiYWNrZHJvcC1maWx0ZXI6IDhweDtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGNvbG9yLWRlZmF1bHQ7XG4gICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZTtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItZGVmYXVsdDtcbiAgICAgICAgfVxuXG4gICAgICAgICY6ZGlzYWJsZWQge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGNvbG9yLWRlZmF1bHQtZGlzYWJsZWQsIDAuMik7XG4gICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlLWRpc2FibGVkO1xuXG4gICAgICAgICAgLmljb24ge1xuICAgICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlLWRpc2FibGVkO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5pY29uIHtcbiAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGU7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi0tb3V0bGluZS1kYXNoZWQge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRjb2xvci1kZWZhdWx0LCAwLjIpO1xuICAgICAgICBiYWNrZHJvcC1maWx0ZXI6IDhweDtcbiAgICAgICAgYm9yZGVyOiAxcHggZGFzaGVkICRjb2xvci1kZWZhdWx0O1xuICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGU7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWRlZmF1bHQ7XG4gICAgICAgIH1cblxuICAgICAgICAmOmRpc2FibGVkIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRjb2xvci1kZWZhdWx0LWRpc2FibGVkLCAwLjIpO1xuICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZS1kaXNhYmxlZDtcblxuICAgICAgICAgIC5pY29uIHtcbiAgICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZS1kaXNhYmxlZDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYtLW5vLW91dGxpbmUge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRjb2xvci1kZWZhdWx0LCAwLjIpO1xuICAgICAgICBiYWNrZHJvcC1maWx0ZXI6IDhweDtcbiAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1kZWZhdWx0O1xuICAgICAgICB9XG5cbiAgICAgICAgJjpkaXNhYmxlZCB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkY29sb3ItZGVmYXVsdC1kaXNhYmxlZCwgMC4yKTtcbiAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGUtZGlzYWJsZWQ7XG5cbiAgICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGUtZGlzYWJsZWQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmljb24ge1xuICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLS1nbG93aW5nIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkY29sb3ItZGVmYXVsdCwgMC4yKTtcbiAgICAgICAgYmFja2Ryb3AtZmlsdGVyOiA4cHg7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRjb2xvci1kZWZhdWx0O1xuICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGU7XG4gICAgICAgIGJveC1zaGFkb3c6XG4gICAgICAgICAgMCAwIDhweCByZ2JhKCRjb2xvci1kZWZhdWx0LCAwLjUpLFxuICAgICAgICAgIDAgMCAxNnB4IHJnYmEoJGNvbG9yLWRlZmF1bHQsIDAuNCksXG4gICAgICAgICAgMCAwIDI0cHggcmdiYSgkY29sb3ItZGVmYXVsdCwgMC4zKTtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItZGVmYXVsdDtcbiAgICAgICAgfVxuXG4gICAgICAgICY6ZGlzYWJsZWQge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGNvbG9yLWRlZmF1bHQtZGlzYWJsZWQsIDAuMik7XG4gICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlLWRpc2FibGVkO1xuXG4gICAgICAgICAgLmljb24ge1xuICAgICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlLWRpc2FibGVkO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5pY29uIHtcbiAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLS1wcmltYXJ5LmJ1dHRvbi1hcHBlYXJhbmNlIHtcbiAgICAgICYtLXNvbGlkIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXByaW1hcnk7XG4gICAgICAgIGJhY2tkcm9wLWZpbHRlcjogOHB4O1xuICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGU7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXByaW1hcnktaG92ZXI7XG4gICAgICAgIH1cblxuICAgICAgICAmOmRpc2FibGVkIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItcHJpbWFyeS1kaXNhYmxlZDtcbiAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGUtZGlzYWJsZWQ7XG5cbiAgICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGUtZGlzYWJsZWQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmljb24ge1xuICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLS1vdXRsaW5lIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkY29sb3ItcHJpbWFyeSwgMC4yKTtcbiAgICAgICAgYmFja2Ryb3AtZmlsdGVyOiA4cHg7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRjb2xvci1wcmltYXJ5O1xuICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGU7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXByaW1hcnk7XG4gICAgICAgIH1cblxuICAgICAgICAmOmRpc2FibGVkIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRjb2xvci1wcmltYXJ5LWRpc2FibGVkLCAwLjIpO1xuICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZS1kaXNhYmxlZDtcblxuICAgICAgICAgIC5pY29uIHtcbiAgICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZS1kaXNhYmxlZDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYtLW91dGxpbmUtZGFzaGVkIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkY29sb3ItcHJpbWFyeSwgMC4yKTtcbiAgICAgICAgYmFja2Ryb3AtZmlsdGVyOiA4cHg7XG4gICAgICAgIGJvcmRlcjogMXB4IGRhc2hlZCAkY29sb3ItcHJpbWFyeTtcbiAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1wcmltYXJ5O1xuICAgICAgICB9XG5cbiAgICAgICAgJjpkaXNhYmxlZCB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkY29sb3ItcHJpbWFyeS1kaXNhYmxlZCwgMC4yKTtcbiAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGUtZGlzYWJsZWQ7XG5cbiAgICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGUtZGlzYWJsZWQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmljb24ge1xuICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLS1uby1vdXRsaW5lIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkY29sb3ItcHJpbWFyeSwgMC4yKTtcbiAgICAgICAgYmFja2Ryb3AtZmlsdGVyOiA4cHg7XG4gICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZTtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItcHJpbWFyeTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6ZGlzYWJsZWQge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGNvbG9yLXByaW1hcnktZGlzYWJsZWQsIDAuMik7XG4gICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlLWRpc2FibGVkO1xuXG4gICAgICAgICAgLmljb24ge1xuICAgICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlLWRpc2FibGVkO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5pY29uIHtcbiAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGU7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi0tZ2xvd2luZyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGNvbG9yLXByaW1hcnksIDAuMik7XG4gICAgICAgIGJhY2tkcm9wLWZpbHRlcjogOHB4O1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkY29sb3ItcHJpbWFyeTtcbiAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlO1xuICAgICAgICBib3gtc2hhZG93OlxuICAgICAgICAgIDAgMCA4cHggcmdiYSgkY29sb3ItcHJpbWFyeSwgMC41KSxcbiAgICAgICAgICAwIDAgMTZweCByZ2JhKCRjb2xvci1wcmltYXJ5LCAwLjQpLFxuICAgICAgICAgIDAgMCAyNHB4IHJnYmEoJGNvbG9yLXByaW1hcnksIDAuMyk7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXByaW1hcnk7XG4gICAgICAgIH1cblxuICAgICAgICAmOmRpc2FibGVkIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRjb2xvci1wcmltYXJ5LWRpc2FibGVkLCAwLjIpO1xuICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZS1kaXNhYmxlZDtcblxuICAgICAgICAgIC5pY29uIHtcbiAgICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZS1kaXNhYmxlZDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi0tc2Vjb25kYXJ5LmJ1dHRvbi1hcHBlYXJhbmNlIHtcbiAgICAgICYtLXNvbGlkIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXNlY29uZGFyeTtcbiAgICAgICAgYmFja2Ryb3AtZmlsdGVyOiA4cHg7XG4gICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZTtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3Itc2Vjb25kYXJ5LWhvdmVyO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpkaXNhYmxlZCB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXNlY29uZGFyeS1kaXNhYmxlZDtcbiAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGUtZGlzYWJsZWQ7XG5cbiAgICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGUtZGlzYWJsZWQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmljb24ge1xuICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLS1vdXRsaW5lIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkY29sb3Itc2Vjb25kYXJ5LCAwLjIpO1xuICAgICAgICBiYWNrZHJvcC1maWx0ZXI6IDhweDtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGNvbG9yLXNlY29uZGFyeTtcbiAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1zZWNvbmRhcnk7XG4gICAgICAgIH1cblxuICAgICAgICAmOmRpc2FibGVkIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRjb2xvci1zZWNvbmRhcnktZGlzYWJsZWQsIDAuMik7XG4gICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlLWRpc2FibGVkO1xuXG4gICAgICAgICAgLmljb24ge1xuICAgICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlLWRpc2FibGVkO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5pY29uIHtcbiAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGU7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi0tb3V0bGluZS1kYXNoZWQge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRjb2xvci1zZWNvbmRhcnksIDAuMik7XG4gICAgICAgIGJhY2tkcm9wLWZpbHRlcjogOHB4O1xuICAgICAgICBib3JkZXI6IDFweCBkYXNoZWQgJGNvbG9yLXNlY29uZGFyeTtcbiAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1zZWNvbmRhcnk7XG4gICAgICAgIH1cblxuICAgICAgICAmOmRpc2FibGVkIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRjb2xvci1zZWNvbmRhcnktZGlzYWJsZWQsIDAuMik7XG4gICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlLWRpc2FibGVkO1xuXG4gICAgICAgICAgLmljb24ge1xuICAgICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlLWRpc2FibGVkO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5pY29uIHtcbiAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGU7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi0tbm8tb3V0bGluZSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGNvbG9yLXNlY29uZGFyeSwgMC4yKTtcbiAgICAgICAgYmFja2Ryb3AtZmlsdGVyOiA4cHg7XG4gICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZTtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3Itc2Vjb25kYXJ5O1xuICAgICAgICB9XG5cbiAgICAgICAgJjpkaXNhYmxlZCB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkY29sb3Itc2Vjb25kYXJ5LWRpc2FibGVkLCAwLjIpO1xuICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZS1kaXNhYmxlZDtcblxuICAgICAgICAgIC5pY29uIHtcbiAgICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZS1kaXNhYmxlZDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYtLWdsb3dpbmcge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRjb2xvci1zZWNvbmRhcnksIDAuMik7XG4gICAgICAgIGJhY2tkcm9wLWZpbHRlcjogOHB4O1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkY29sb3Itc2Vjb25kYXJ5O1xuICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGU7XG4gICAgICAgIGJveC1zaGFkb3c6XG4gICAgICAgICAgMCAwIDhweCByZ2JhKCRjb2xvci1zZWNvbmRhcnksIDAuNSksXG4gICAgICAgICAgMCAwIDE2cHggcmdiYSgkY29sb3Itc2Vjb25kYXJ5LCAwLjQpLFxuICAgICAgICAgIDAgMCAyNHB4IHJnYmEoJGNvbG9yLXNlY29uZGFyeSwgMC4zKTtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3Itc2Vjb25kYXJ5O1xuICAgICAgICB9XG5cbiAgICAgICAgJjpkaXNhYmxlZCB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkY29sb3Itc2Vjb25kYXJ5LWRpc2FibGVkLCAwLjIpO1xuICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZS1kaXNhYmxlZDtcblxuICAgICAgICAgIC5pY29uIHtcbiAgICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZS1kaXNhYmxlZDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi0tc3VjY2Vzcy5idXR0b24tYXBwZWFyYW5jZSB7XG4gICAgICAmLS1zb2xpZCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1zdWNjZXNzO1xuICAgICAgICBiYWNrZHJvcC1maWx0ZXI6IDhweDtcbiAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1zdWNjZXNzLWhvdmVyO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpkaXNhYmxlZCB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXN1Y2Nlc3MtZGlzYWJsZWQ7XG4gICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlLWRpc2FibGVkO1xuXG4gICAgICAgICAgLmljb24ge1xuICAgICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlLWRpc2FibGVkO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5pY29uIHtcbiAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGU7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi0tb3V0bGluZSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGNvbG9yLXN1Y2Nlc3MsIDAuMik7XG4gICAgICAgIGJhY2tkcm9wLWZpbHRlcjogOHB4O1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkY29sb3Itc3VjY2VzcztcbiAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1zdWNjZXNzO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpkaXNhYmxlZCB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkY29sb3Itc3VjY2Vzcy1kaXNhYmxlZCwgMC4yKTtcbiAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGUtZGlzYWJsZWQ7XG5cbiAgICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGUtZGlzYWJsZWQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmljb24ge1xuICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLS1vdXRsaW5lLWRhc2hlZCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGNvbG9yLXN1Y2Nlc3MsIDAuMik7XG4gICAgICAgIGJhY2tkcm9wLWZpbHRlcjogOHB4O1xuICAgICAgICBib3JkZXI6IDFweCBkYXNoZWQgJGNvbG9yLXN1Y2Nlc3M7XG4gICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZTtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3Itc3VjY2VzcztcbiAgICAgICAgfVxuXG4gICAgICAgICY6ZGlzYWJsZWQge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGNvbG9yLXN1Y2Nlc3MtZGlzYWJsZWQsIDAuMik7XG4gICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlLWRpc2FibGVkO1xuXG4gICAgICAgICAgLmljb24ge1xuICAgICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlLWRpc2FibGVkO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5pY29uIHtcbiAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGU7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi0tbm8tb3V0bGluZSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGNvbG9yLXN1Y2Nlc3MsIDAuMik7XG4gICAgICAgIGJhY2tkcm9wLWZpbHRlcjogOHB4O1xuICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGU7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXN1Y2Nlc3M7XG4gICAgICAgIH1cblxuICAgICAgICAmOmRpc2FibGVkIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRjb2xvci1zdWNjZXNzLWRpc2FibGVkLCAwLjIpO1xuICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZS1kaXNhYmxlZDtcblxuICAgICAgICAgIC5pY29uIHtcbiAgICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZS1kaXNhYmxlZDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYtLWdsb3dpbmcge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRjb2xvci1zdWNjZXNzLCAwLjIpO1xuICAgICAgICBiYWNrZHJvcC1maWx0ZXI6IDhweDtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGNvbG9yLXN1Y2Nlc3M7XG4gICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZTtcbiAgICAgICAgYm94LXNoYWRvdzpcbiAgICAgICAgICAwIDAgOHB4IHJnYmEoJGNvbG9yLXN1Y2Nlc3MsIDAuNSksXG4gICAgICAgICAgMCAwIDE2cHggcmdiYSgkY29sb3Itc3VjY2VzcywgMC40KSxcbiAgICAgICAgICAwIDAgMjRweCByZ2JhKCRjb2xvci1zdWNjZXNzLCAwLjMpO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1zdWNjZXNzO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpkaXNhYmxlZCB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkY29sb3Itc3VjY2Vzcy1kaXNhYmxlZCwgMC4yKTtcbiAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGUtZGlzYWJsZWQ7XG5cbiAgICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGUtZGlzYWJsZWQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmljb24ge1xuICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgICYtLWVycm9yLmJ1dHRvbi1hcHBlYXJhbmNlIHtcbiAgICAgICYtLXNvbGlkIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWVycm9yO1xuICAgICAgICBiYWNrZHJvcC1maWx0ZXI6IDhweDtcbiAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1lcnJvci1ob3ZlcjtcbiAgICAgICAgfVxuXG4gICAgICAgICY6ZGlzYWJsZWQge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1lcnJvci1kaXNhYmxlZDtcbiAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGUtZGlzYWJsZWQ7XG5cbiAgICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGUtZGlzYWJsZWQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmljb24ge1xuICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLS1vdXRsaW5lIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkY29sb3ItZXJyb3IsIDAuMik7XG4gICAgICAgIGJhY2tkcm9wLWZpbHRlcjogOHB4O1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkY29sb3ItZXJyb3I7XG4gICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZTtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItZXJyb3I7XG4gICAgICAgIH1cblxuICAgICAgICAmOmRpc2FibGVkIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRjb2xvci1lcnJvci1kaXNhYmxlZCwgMC4yKTtcbiAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGUtZGlzYWJsZWQ7XG5cbiAgICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGUtZGlzYWJsZWQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmljb24ge1xuICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLS1vdXRsaW5lLWRhc2hlZCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGNvbG9yLWVycm9yLCAwLjIpO1xuICAgICAgICBiYWNrZHJvcC1maWx0ZXI6IDhweDtcbiAgICAgICAgYm9yZGVyOiAxcHggZGFzaGVkICRjb2xvci1lcnJvcjtcbiAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1lcnJvcjtcbiAgICAgICAgfVxuXG4gICAgICAgICY6ZGlzYWJsZWQge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGNvbG9yLWVycm9yLWRpc2FibGVkLCAwLjIpO1xuICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZS1kaXNhYmxlZDtcblxuICAgICAgICAgIC5pY29uIHtcbiAgICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZS1kaXNhYmxlZDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYtLW5vLW91dGxpbmUge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRjb2xvci1lcnJvciwgMC4yKTtcbiAgICAgICAgYmFja2Ryb3AtZmlsdGVyOiA4cHg7XG4gICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZTtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItZXJyb3I7XG4gICAgICAgIH1cblxuICAgICAgICAmOmRpc2FibGVkIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRjb2xvci1lcnJvci1kaXNhYmxlZCwgMC4yKTtcbiAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGUtZGlzYWJsZWQ7XG5cbiAgICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGUtZGlzYWJsZWQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmljb24ge1xuICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLS1nbG93aW5nIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkY29sb3ItZXJyb3IsIDAuMik7XG4gICAgICAgIGJhY2tkcm9wLWZpbHRlcjogOHB4O1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkY29sb3ItZXJyb3I7XG4gICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZTtcbiAgICAgICAgYm94LXNoYWRvdzpcbiAgICAgICAgICAwIDAgOHB4IHJnYmEoJGNvbG9yLWVycm9yLCAwLjUpLFxuICAgICAgICAgIDAgMCAxNnB4IHJnYmEoJGNvbG9yLWVycm9yLCAwLjQpLFxuICAgICAgICAgIDAgMCAyNHB4IHJnYmEoJGNvbG9yLWVycm9yLCAwLjMpO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1lcnJvcjtcbiAgICAgICAgfVxuXG4gICAgICAgICY6ZGlzYWJsZWQge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGNvbG9yLWVycm9yLWRpc2FibGVkLCAwLjIpO1xuICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZS1kaXNhYmxlZDtcblxuICAgICAgICAgIC5pY29uIHtcbiAgICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZS1kaXNhYmxlZDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi0td2FybmluZy5idXR0b24tYXBwZWFyYW5jZSB7XG4gICAgICAmLS1zb2xpZCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci13YXJuaW5nO1xuICAgICAgICBiYWNrZHJvcC1maWx0ZXI6IDhweDtcbiAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci13YXJuaW5nLWhvdmVyO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpkaXNhYmxlZCB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXdhcm5pbmctZGlzYWJsZWQ7XG4gICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlLWRpc2FibGVkO1xuXG4gICAgICAgICAgLmljb24ge1xuICAgICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlLWRpc2FibGVkO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5pY29uIHtcbiAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGU7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi0tb3V0bGluZSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGNvbG9yLXdhcm5pbmcsIDAuMik7XG4gICAgICAgIGJhY2tkcm9wLWZpbHRlcjogOHB4O1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkY29sb3Itd2FybmluZztcbiAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci13YXJuaW5nO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpkaXNhYmxlZCB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkY29sb3Itd2FybmluZy1kaXNhYmxlZCwgMC4yKTtcbiAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGUtZGlzYWJsZWQ7XG5cbiAgICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGUtZGlzYWJsZWQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmljb24ge1xuICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLS1vdXRsaW5lLWRhc2hlZCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGNvbG9yLXdhcm5pbmcsIDAuMik7XG4gICAgICAgIGJhY2tkcm9wLWZpbHRlcjogOHB4O1xuICAgICAgICBib3JkZXI6IDFweCBkYXNoZWQgJGNvbG9yLXdhcm5pbmc7XG4gICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZTtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3Itd2FybmluZztcbiAgICAgICAgfVxuXG4gICAgICAgICY6ZGlzYWJsZWQge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGNvbG9yLXdhcm5pbmctZGlzYWJsZWQsIDAuMik7XG4gICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlLWRpc2FibGVkO1xuXG4gICAgICAgICAgLmljb24ge1xuICAgICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlLWRpc2FibGVkO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5pY29uIHtcbiAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGU7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi0tbm8tb3V0bGluZSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGNvbG9yLXdhcm5pbmcsIDAuMik7XG4gICAgICAgIGJhY2tkcm9wLWZpbHRlcjogOHB4O1xuICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGU7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXdhcm5pbmc7XG4gICAgICAgIH1cblxuICAgICAgICAmOmRpc2FibGVkIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRjb2xvci13YXJuaW5nLWRpc2FibGVkLCAwLjIpO1xuICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZS1kaXNhYmxlZDtcblxuICAgICAgICAgIC5pY29uIHtcbiAgICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZS1kaXNhYmxlZDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYtLWdsb3dpbmcge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRjb2xvci13YXJuaW5nLCAwLjIpO1xuICAgICAgICBiYWNrZHJvcC1maWx0ZXI6IDhweDtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGNvbG9yLXdhcm5pbmc7XG4gICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZTtcbiAgICAgICAgYm94LXNoYWRvdzpcbiAgICAgICAgICAwIDAgOHB4IHJnYmEoJGNvbG9yLXdhcm5pbmcsIDAuNSksXG4gICAgICAgICAgMCAwIDE2cHggcmdiYSgkY29sb3Itd2FybmluZywgMC40KSxcbiAgICAgICAgICAwIDAgMjRweCByZ2JhKCRjb2xvci13YXJuaW5nLCAwLjMpO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci13YXJuaW5nO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpkaXNhYmxlZCB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkY29sb3Itd2FybmluZy1kaXNhYmxlZCwgMC4yKTtcbiAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGUtZGlzYWJsZWQ7XG5cbiAgICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGUtZGlzYWJsZWQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmljb24ge1xuICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICYtc2l6ZSB7XG4gICAgJi0teHNtIHtcbiAgICAgIGZvbnQtc2l6ZTogMC43NXJlbTsgLy8gMTJweFxuICAgICAgbGluZS1oZWlnaHQ6IDFyZW07IC8vIDE2cHhcbiAgICAgIHBhZGRpbmc6IDAuMjVyZW0gMC41cmVtOyAvLyA0cHggOHB4XG4gICAgICBtaW4taGVpZ2h0OiAyOHB4O1xuXG4gICAgICAuc3Bpbm5lcixcbiAgICAgIC5pY29uIHtcbiAgICAgICAgbWF4LWhlaWdodDogMXJlbTsgLy8gMTZweFxuICAgICAgICBtYXgtd2lkdGg6IDFyZW07IC8vIDE2cHhcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLS1zbSB7XG4gICAgICBmb250LXNpemU6IDAuODc1cmVtOyAvLyAxNHB4XG4gICAgICBsaW5lLWhlaWdodDogMS4yNXJlbTsgLy8gMjBweFxuICAgICAgcGFkZGluZzogMC4zNzVyZW0gMC43NXJlbTsgLy8gNnB4IDEycHhcbiAgICAgIG1pbi1oZWlnaHQ6IDMycHg7XG5cbiAgICAgIC5zcGlubmVyLFxuICAgICAgLmljb24ge1xuICAgICAgICBtYXgtaGVpZ2h0OiAxLjEyNXJlbTsgLy8gMThweFxuICAgICAgICBtYXgtd2lkdGg6IDEuMTI1cmVtOyAvLyAxOHB4XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi0tbWQge1xuICAgICAgZm9udC1zaXplOiAxcmVtOyAvLyAxNnB4XG4gICAgICBsaW5lLWhlaWdodDogMS41cmVtOyAvLyAyNHB4XG4gICAgICBwYWRkaW5nOiAwLjVyZW0gMXJlbTsgLy8gOHB4IDE2cHhcbiAgICAgIG1pbi1oZWlnaHQ6IDQwcHg7XG5cbiAgICAgIC5zcGlubmVyLFxuICAgICAgLmljb24ge1xuICAgICAgICBoZWlnaHQ6IDEuMjVyZW07IC8vIDIwcHhcbiAgICAgICAgd2lkdGg6IDEuMjVyZW07IC8vIDIwcHhcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLS1sZyB7XG4gICAgICBmb250LXNpemU6IDEuMTI1cmVtOyAvLyAxOHB4XG4gICAgICBsaW5lLWhlaWdodDogMS43NXJlbTsgLy8gMjhweFxuICAgICAgcGFkZGluZzogMC42MjVyZW0gMS4yNXJlbTsgLy8gMTBweCAyMHB4XG4gICAgICBtaW4taGVpZ2h0OiA0NHB4O1xuXG4gICAgICAuc3Bpbm5lcixcbiAgICAgIC5pY29uIHtcbiAgICAgICAgbWF4LWhlaWdodDogMS4zNzVyZW07IC8vIDIycHhcbiAgICAgICAgbWF4LXdpZHRoOiAxLjM3NXJlbTsgLy8gMjJweFxuICAgICAgfVxuICAgIH1cblxuICAgICYtLXhsZyB7XG4gICAgICBmb250LXNpemU6IDEuMjVyZW07IC8vIDIwcHhcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjc1cmVtOyAvLyAyOHB4XG4gICAgICBwYWRkaW5nOiAwLjc1cmVtIDEuNXJlbTsgLy8gMTJweCAyNHB4XG4gICAgICBtaW4taGVpZ2h0OiA0OHB4O1xuXG4gICAgICAuc3Bpbm5lcixcbiAgICAgIC5pY29uIHtcbiAgICAgICAgbWF4LWhlaWdodDogMS41cmVtOyAvLyAyNHB4XG4gICAgICAgIG1heC13aWR0aDogMS41cmVtOyAvLyAyNHB4XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi1yYWRpdXMge1xuICAgICYtLW5vbmUge1xuICAgICAgYm9yZGVyLXJhZGl1czogMHJlbTsgLy8gMHB4XG4gICAgfVxuXG4gICAgJi0tc20ge1xuICAgICAgYm9yZGVyLXJhZGl1czogMC4xMjVyZW07IC8vIDJweFxuICAgIH1cblxuICAgICYtLW1kIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDAuMzc1cmVtOyAvLyA2cHhcbiAgICB9XG5cbiAgICAmLS1sZyB7XG4gICAgICBib3JkZXItcmFkaXVzOiAwLjVyZW07IC8vIDhweFxuICAgIH1cblxuICAgICYtLWZ1bGwge1xuICAgICAgYm9yZGVyLXJhZGl1czogMS41cmVtOyAvLyAyNHB4XG4gICAgfVxuICB9XG5cbiAgLmljb24ge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuICAgICYtLXJpZ2h0IHtcbiAgICAgIG9yZGVyOiA1O1xuICAgIH1cblxuICAgIHN2ZyB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vID09PSBEZXNpZ24gVG9rZW5zIOKAlCBDb2xvciBQYWxldHRlID09PVxuXG4vLyBCYXNlXG4kd2hpdGU6ICNmZmZmZmY7XG4kYmxhY2s6ICMwMDAwMDA7XG4kdHJhbnNwYXJlbnQ6IHRyYW5zcGFyZW50O1xuXG4vLyA9PT0gQmxhY2sgVHJhbnNwYXJlbnQgU2NhbGUgPT09XG4kYmxhY2stdHJhbnNwYXJlbnQtMTAwOiByZ2JhKDAsIDAsIDAsIDAuMSk7XG4kYmxhY2stdHJhbnNwYXJlbnQtMjAwOiByZ2JhKDAsIDAsIDAsIDAuMik7XG4kYmxhY2stdHJhbnNwYXJlbnQtMzAwOiByZ2JhKDAsIDAsIDAsIDAuMyk7XG4kYmxhY2stdHJhbnNwYXJlbnQtNDAwOiByZ2JhKDAsIDAsIDAsIDAuNCk7XG4kYmxhY2stdHJhbnNwYXJlbnQtNTAwOiByZ2JhKDAsIDAsIDAsIDAuNSk7XG4kYmxhY2stdHJhbnNwYXJlbnQtNjAwOiByZ2JhKDAsIDAsIDAsIDAuNik7XG4kYmxhY2stdHJhbnNwYXJlbnQtNzAwOiByZ2JhKDAsIDAsIDAsIDAuNyk7XG4kYmxhY2stdHJhbnNwYXJlbnQtODAwOiByZ2JhKDAsIDAsIDAsIDAuOCk7XG4kYmxhY2stdHJhbnNwYXJlbnQtOTAwOiByZ2JhKDAsIDAsIDAsIDAuOSk7XG5cbi8vID09PSBCbGFjayBUcmFuc3BhcmVudCBTY2FsZSA9PT1cbiR3aGl0ZS10cmFuc3BhcmVudC0xMDA6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKTtcbiR3aGl0ZS10cmFuc3BhcmVudC0yMDA6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yKTtcbiR3aGl0ZS10cmFuc3BhcmVudC0zMDA6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4zKTtcbiR3aGl0ZS10cmFuc3BhcmVudC00MDA6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC40KTtcbiR3aGl0ZS10cmFuc3BhcmVudC01MDA6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTtcbiR3aGl0ZS10cmFuc3BhcmVudC02MDA6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC42KTtcbiR3aGl0ZS10cmFuc3BhcmVudC03MDA6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC43KTtcbiR3aGl0ZS10cmFuc3BhcmVudC04MDA6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44KTtcbiR3aGl0ZS10cmFuc3BhcmVudC05MDA6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC45KTtcblxuLy8gPT09IE5ldXRyYWwgU2NhbGUgKEdyZXkpID09PVxuJGdyZXktNTA6ICNmOWZhZmI7XG4kZ3JleS0xMDA6ICNmM2Y0ZjY7XG4kZ3JleS0yMDA6ICNlNWU3ZWI7XG4kZ3JleS0zMDA6ICNkMWQ1ZGI7XG4kZ3JleS00MDA6ICM5Y2EzYWY7XG4kZ3JleS01MDA6ICM2YjcyODA7XG4kZ3JleS02MDA6ICM0YjU1NjM7XG4kZ3JleS03MDA6ICMzNzQxNTE7XG4kZ3JleS04MDA6ICMxZjI5Mzc7XG4kZ3JleS05MDA6ICMxMTE4Mjc7XG5cbi8vID09PSBQcmltYXJ5IFNjYWxlIChCbHVlKSA9PT1cbiRibHVlLTUwOiAjZWZmNmZmO1xuJGJsdWUtMTAwOiAjZGJlYWZlO1xuJGJsdWUtMjAwOiAjYmZkYmZlO1xuJGJsdWUtMzAwOiAjOTNjNWZkO1xuJGJsdWUtNDAwOiAjNjBhNWZhO1xuJGJsdWUtNTAwOiAjM2I4MmY2O1xuJGJsdWUtNjAwOiAjMjU2M2ViOyAvLyBNYWluXG4kYmx1ZS03MDA6ICMxZDRlZDg7IC8vIEhvdmVyXG4kYmx1ZS04MDA6ICMxZTQwYWY7XG4kYmx1ZS05MDA6ICMxZTNhOGE7XG5cbi8vID09PSBTZWNvbmRhcnkgU2NhbGUgKEluZGlnbykgPT09XG4kaW5kaWdvLTUwOiAjZWVmMmZmO1xuJGluZGlnby0xMDA6ICNlMGU3ZmY7XG4kaW5kaWdvLTIwMDogI2M3ZDJmZTtcbiRpbmRpZ28tMzAwOiAjYTViNGZjO1xuJGluZGlnby00MDA6ICM4MThjZjg7XG4kaW5kaWdvLTUwMDogIzYzNjZmMTtcbiRpbmRpZ28tNjAwOiAjNGY0NmU1OyAvLyBNYWluXG4kaW5kaWdvLTcwMDogIzQzMzhjYTsgLy8gSG92ZXJcblxuLy8gPT09IEVycm9yIFNjYWxlIChSZWQpID09PVxuJHJlZC01MDogI2ZlZjJmMjtcbiRyZWQtMTAwOiAjZmVlMmUyO1xuJHJlZC0yMDA6ICNmZWNhY2E7XG4kcmVkLTMwMDogI2ZjYTVhNTtcbiRyZWQtNDAwOiAjZjg3MTcxO1xuJHJlZC01MDA6ICNlZjQ0NDQ7XG4kcmVkLTYwMDogI2RjMjYyNjsgLy8gTWFpblxuJHJlZC03MDA6ICNiOTFjMWM7IC8vIEhvdmVyXG5cbi8vID09PSBTdWNjZXNzIFNjYWxlIChHcmVlbikgPT09XG4kZ3JlZW4tNTA6ICNmMGZkZjQ7XG4kZ3JlZW4tMTAwOiAjZGNmY2U3O1xuJGdyZWVuLTIwMDogI2JiZjdkMDtcbiRncmVlbi0zMDA6ICM4NmVmYWM7XG4kZ3JlZW4tNDAwOiAjNGFkZTgwO1xuJGdyZWVuLTUwMDogIzIyYzU1ZTtcbiRncmVlbi02MDA6ICMxNmEzNGE7IC8vIE1haW5cbiRncmVlbi03MDA6ICMxNTgwM2Q7IC8vIEhvdmVyXG5cbi8vID09PSBXYXJuaW5nIFNjYWxlIChBbWJlcikgPT09XG4kYW1iZXItNTA6ICNmZmZiZWI7XG4kYW1iZXItMTAwOiAjZmVmM2M3O1xuJGFtYmVyLTIwMDogI2ZkZTY4YTtcbiRhbWJlci0zMDA6ICNmY2QzNGQ7XG4kYW1iZXItNDAwOiAjZmJiZjI0O1xuJGFtYmVyLTUwMDogI2Y1OWUwYjtcbiRhbWJlci02MDA6ICNkOTc3MDY7IC8vIE1haW5cbiRhbWJlci03MDA6ICNiNDUzMDk7IC8vIEhvdmVyXG5cbi8vID09PSBTZW1hbnRpYyBUb2tlbnMgPT09XG4kY29sb3ItZGVmYXVsdDogJGdyZXktODAwO1xuJGNvbG9yLWRlZmF1bHQtaG92ZXI6ICRncmV5LTkwMDtcbiRjb2xvci1kZWZhdWx0LWRpc2FibGVkOiByZ2JhKCRjb2xvci1kZWZhdWx0LCAwLjUpO1xuXG4kY29sb3ItcHJpbWFyeTogJGJsdWUtNjAwO1xuJGNvbG9yLXByaW1hcnktaG92ZXI6ICRibHVlLTcwMDtcbiRjb2xvci1wcmltYXJ5LWRpc2FibGVkOiByZ2JhKCRjb2xvci1wcmltYXJ5LCAwLjUpO1xuXG4kY29sb3Itc2Vjb25kYXJ5OiAkaW5kaWdvLTYwMDtcbiRjb2xvci1zZWNvbmRhcnktaG92ZXI6ICRpbmRpZ28tNzAwO1xuJGNvbG9yLXNlY29uZGFyeS1kaXNhYmxlZDogcmdiYSgkY29sb3Itc2Vjb25kYXJ5LCAwLjUpO1xuXG4kY29sb3ItZXJyb3I6ICRyZWQtNjAwO1xuJGNvbG9yLWVycm9yLWhvdmVyOiAkcmVkLTcwMDtcbiRjb2xvci1lcnJvci1kaXNhYmxlZDogcmdiYSgkY29sb3ItZXJyb3IsIDAuNSk7XG5cbiRjb2xvci1zdWNjZXNzOiAkZ3JlZW4tNjAwO1xuJGNvbG9yLXN1Y2Nlc3MtaG92ZXI6ICRncmVlbi03MDA7XG4kY29sb3Itc3VjY2Vzcy1kaXNhYmxlZDogcmdiYSgkY29sb3Itc3VjY2VzcywgMC41KTtcblxuJGNvbG9yLXdhcm5pbmc6ICRhbWJlci02MDA7XG4kY29sb3Itd2FybmluZy1ob3ZlcjogJGFtYmVyLTcwMDtcbiRjb2xvci13YXJuaW5nLWRpc2FibGVkOiByZ2JhKCRjb2xvci13YXJuaW5nLCAwLjUpO1xuXG4kdGV4dC1jb2xvci13aGl0ZTogJHdoaXRlO1xuJHRleHQtY29sb3ItYmxhY2s6ICRibGFjaztcbiR0ZXh0LWNvbG9yLXdoaXRlLWRpc2FibGVkOiByZ2JhKCR3aGl0ZSwgMC41KTtcbiR0ZXh0LWNvbG9yLWJsYWNrLWRpc2FibGVkOiByZ2JhKCRibGFjaywgMC41KTtcblxuLy8gPT09IFNoYWRvd3MgPT09XG4kc2hhZG93LXNtOiAwIDFweCAycHggMCByZ2JhKCRibGFjaywgMC4wNSk7XG4kc2hhZG93LW1kOlxuICAwIDRweCA2cHggLTFweCByZ2JhKCRibGFjaywgMC4xKSxcbiAgMCAycHggNHB4IC0xcHggcmdiYSgkYmxhY2ssIDAuMDYpO1xuJHNoYWRvdy1sZzpcbiAgMCAxMHB4IDE1cHggLTNweCByZ2JhKCRibGFjaywgMC4xKSxcbiAgMCA0cHggNnB4IC0ycHggcmdiYSgkYmxhY2ssIDAuMDUpO1xuXG4vLyA9PT0gRm9udCBmYW1pbGllcyA9PT1cbiRmb250LWZhbWlseS1zYW5zOiBcIkludGVyXCIsIHNhbnMtc2VyaWY7XG4kZm9udC1mYW1pbHktc2VyaWY6IFwiR2VvcmdpYVwiLCBzZXJpZjtcbiRmb250LWZhbWlseS1tb25vOiBcIkZpcmEgQ29kZVwiLCBtb25vc3BhY2U7XG5cbi8vID09PSBGb250IHdlaWdodHMgPT09XG4kZm9udC13ZWlnaHQtcmVndWxhcjogNDAwO1xuJGZvbnQtd2VpZ2h0LW1lZGl1bTogNTAwO1xuJGZvbnQtd2VpZ2h0LXNlbWlib2xkOiA2MDA7XG4kZm9udC13ZWlnaHQtYm9sZDogNzAwO1xuXG4vLyA9PT0gTGluZSBoZWlnaHRzID09PVxuJGxpbmUtaGVpZ2h0LXRpZ2h0OiAxLjI7XG4kbGluZS1oZWlnaHQtc251ZzogMS4zNzU7XG4kbGluZS1oZWlnaHQtbm9ybWFsOiAxLjU7XG4kbGluZS1oZWlnaHQtbG9vc2U6IDEuNjI1O1xuXG4vLyA9PT0gRm9udCBTaXplcyDigJQgU2VtYW50aWMgVG9rZW5zID09PVxuXG4vLyA9PT0gVGl0bGVzID09PVxuJGZvbnQtc2l6ZS1oZXJvOiAzcmVtOyAvLyA0OHB4XG4kZm9udC1zaXplLXRpdGxlLTE6IDIuMjVyZW07IC8vIDM2cHhcbiRmb250LXNpemUtdGl0bGUtMjogMS44NzVyZW07IC8vIDMwcHhcbiRmb250LXNpemUtdGl0bGUtMzogMS41cmVtOyAvLyAyNHB4XG5cbi8vID09PSBTdWJ0aXRsZXMgPT09XG4kZm9udC1zaXplLXN1YnRpdGxlLTE6IDEuMjVyZW07IC8vIDIwcHhcbiRmb250LXNpemUtc3VidGl0bGUtMjogMS4xMjVyZW07IC8vIDE4cHhcblxuLy8gPT09IEJvZHkgdGV4dCA9PT1cbiRmb250LXNpemUtYm9keS1sZzogMXJlbTsgLy8gMTZweFxuJGZvbnQtc2l6ZS1ib2R5LW1kOiAwLjkzNzVyZW07IC8vIDE1cHhcbiRmb250LXNpemUtYm9keS1zbTogMC44NzVyZW07IC8vIDE0cHhcblxuLy8gPT09IENhcHRpb25zIC8gRGVzY3JpcHRpb25zID09PVxuJGZvbnQtc2l6ZS1jYXB0aW9uOiAwLjc1cmVtOyAvLyAxMnB4XG4kZm9udC1zaXplLWZvb3Rub3RlOiAwLjY4NzVyZW07IC8vIDExcHhcblxuLy8gPT09IEJ1dHRvbnMgPT09XG4kZm9udC1zaXplLWJ1dHRvbi1sZzogMXJlbTsgLy8gMTZweFxuJGZvbnQtc2l6ZS1idXR0b24tbWQ6IDAuODc1cmVtOyAvLyAxNHB4XG4kZm9udC1zaXplLWJ1dHRvbi1zbTogMC43NXJlbTsgLy8gMTJweFxuXG4vLyA9PT0gQW5pbWF0aW9ucyA9PT1cblxuJGN1YmljLWJlemllci1wcmltYXJ5OiBjdWJpYy1iZXppZXIoMC41NSwgLTAuMTksIDAuNTksIDAuOTUpO1xuJGN1YmljLWJlemllci1zZWNvbmRhcnk6IGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIsIDEuMjc1KTtcbiJdfQ== */","\"use client\";\n\nimport * as React from \"react\";\nimport { type IButton, Button } from \"../Button\";\n\nimport styles from \"./ButtonGroup.module.scss\";\n\nexport interface IButtonGroup {\n children:\n | React.ReactElement<IButton, typeof Button>\n | React.ReactElement<IButton, typeof Button>[];\n align?: \"vertical\" | \"horizontal\";\n variant?:\n | \"default\"\n | \"primary\"\n | \"secondary\"\n | \"success\"\n | \"error\"\n | \"warning\";\n size?: \"xsm\" | \"sm\" | \"md\" | \"lg\" | \"xlg\";\n radius?: \"none\" | \"sm\" | \"md\" | \"lg\" | \"full\";\n disabled?: boolean;\n className?: string;\n}\n\nexport const ButtonGroup: React.FC<IButtonGroup> = ({\n children,\n align = \"horizontal\",\n variant = \"default\",\n size = \"md\",\n radius = \"md\",\n disabled,\n className = \"\",\n}) => {\n return (\n <div\n className={`${styles[\"button-group\"]} ${styles[`button-group-variant--${variant}`]} ${styles[`button-group-size--${size}`]} ${styles[`button-group-radius--${radius}`]} ${styles[`button-group-align--${align}`]} ${className}`}\n >\n {React.Children.toArray(children)\n .filter(\n (child): child is React.ReactElement<IButton, typeof Button> =>\n React.isValidElement(child) && child.type === Button\n )\n .map((child, index) =>\n React.cloneElement(child, {\n key: index || child.key,\n size: size || child.props.size,\n disabled: disabled || child.props.disabled,\n variant: variant || child.props.variant,\n radius: \"none\",\n })\n )}\n </div>\n );\n};\n",".button-group {\n align-items: center;\n display: flex;\n overflow: hidden;\n max-width: max-content;\n}\n.button-group-align--horizontal {\n flex-direction: row;\n}\n.button-group-align--vertical {\n flex-direction: column;\n}\n.button-group-variant--default {\n background-color: #1f2937;\n}\n.button-group-variant--primary {\n background-color: #2563eb;\n}\n.button-group-variant--secondary {\n background-color: #4f46e5;\n}\n.button-group-variant--success {\n background-color: #16a34a;\n}\n.button-group-variant--error {\n background-color: #dc2626;\n}\n.button-group-variant--warning {\n background-color: #d97706;\n}\n.button-group-radius--none {\n border-radius: 0rem;\n}\n.button-group-radius--sm {\n border-radius: 0.125rem;\n}\n.button-group-radius--md {\n border-radius: 0.375rem;\n}\n.button-group-radius--lg {\n border-radius: 0.5rem;\n}\n.button-group-radius--full {\n border-radius: 1.5rem;\n}\n/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VSb290IjoiL1VzZXJzL2RodW5hbnlhbi9hcmlzdG9ieXRlL2dpdGh1Yi9hcmlzdG9ieXRlLXVpL3BhY2thZ2VzL2J1dHRvbi9jb21wb25lbnRzL0J1dHRvbkdyb3VwIiwic291cmNlcyI6WyJCdXR0b25Hcm91cC5tb2R1bGUuc2NzcyIsIi4uLy4uL3N0eWxlcy9fc2V0dGluZ3Muc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQTtFQUNFO0VBQ0E7RUFDQTtFQUNBOztBQUdFO0VBQ0U7O0FBR0Y7RUFDRTs7QUFLRjtFQUNFLGtCQ2tCSzs7QURmUDtFQUNFLGtCQ3dCSzs7QURyQlA7RUFDRSxrQkNnQ087O0FEN0JUO0VBQ0Usa0JDZ0RNOztBRDdDUjtFQUNFLGtCQ2tDSTs7QUQvQk47RUFDRSxrQkNrRE07O0FEN0NSO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRSIsInNvdXJjZXNDb250ZW50IjpbIkB1c2UgXCIuLi8uLi9zdHlsZXMvc2V0dGluZ3NcIiBhcyAqO1xuXG4uYnV0dG9uLWdyb3VwIHtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZGlzcGxheTogZmxleDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgbWF4LXdpZHRoOiBtYXgtY29udGVudDtcblxuICAmLWFsaWduIHtcbiAgICAmLS1ob3Jpem9udGFsIHtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgfVxuXG4gICAgJi0tdmVydGljYWwge1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICB9XG4gIH1cblxuICAmLXZhcmlhbnQge1xuICAgICYtLWRlZmF1bHQge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWRlZmF1bHQ7XG4gICAgfVxuXG4gICAgJi0tcHJpbWFyeSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItcHJpbWFyeTtcbiAgICB9XG5cbiAgICAmLS1zZWNvbmRhcnkge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXNlY29uZGFyeTtcbiAgICB9XG5cbiAgICAmLS1zdWNjZXNzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1zdWNjZXNzO1xuICAgIH1cblxuICAgICYtLWVycm9yIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1lcnJvcjtcbiAgICB9XG5cbiAgICAmLS13YXJuaW5nIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci13YXJuaW5nO1xuICAgIH1cbiAgfVxuXG4gICYtcmFkaXVzIHtcbiAgICAmLS1ub25lIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDByZW07IC8vIDBweFxuICAgIH1cblxuICAgICYtLXNtIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDAuMTI1cmVtOyAvLyAycHhcbiAgICB9XG5cbiAgICAmLS1tZCB7XG4gICAgICBib3JkZXItcmFkaXVzOiAwLjM3NXJlbTsgLy8gNnB4XG4gICAgfVxuXG4gICAgJi0tbGcge1xuICAgICAgYm9yZGVyLXJhZGl1czogMC41cmVtOyAvLyA4cHhcbiAgICB9XG5cbiAgICAmLS1mdWxsIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDEuNXJlbTsgLy8gMjRweFxuICAgIH1cbiAgfVxufVxuIiwiLy8gPT09IERlc2lnbiBUb2tlbnMg4oCUIENvbG9yIFBhbGV0dGUgPT09XG5cbi8vIEJhc2VcbiR3aGl0ZTogI2ZmZmZmZjtcbiRibGFjazogIzAwMDAwMDtcbiR0cmFuc3BhcmVudDogdHJhbnNwYXJlbnQ7XG5cbi8vID09PSBCbGFjayBUcmFuc3BhcmVudCBTY2FsZSA9PT1cbiRibGFjay10cmFuc3BhcmVudC0xMDA6IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiRibGFjay10cmFuc3BhcmVudC0yMDA6IHJnYmEoMCwgMCwgMCwgMC4yKTtcbiRibGFjay10cmFuc3BhcmVudC0zMDA6IHJnYmEoMCwgMCwgMCwgMC4zKTtcbiRibGFjay10cmFuc3BhcmVudC00MDA6IHJnYmEoMCwgMCwgMCwgMC40KTtcbiRibGFjay10cmFuc3BhcmVudC01MDA6IHJnYmEoMCwgMCwgMCwgMC41KTtcbiRibGFjay10cmFuc3BhcmVudC02MDA6IHJnYmEoMCwgMCwgMCwgMC42KTtcbiRibGFjay10cmFuc3BhcmVudC03MDA6IHJnYmEoMCwgMCwgMCwgMC43KTtcbiRibGFjay10cmFuc3BhcmVudC04MDA6IHJnYmEoMCwgMCwgMCwgMC44KTtcbiRibGFjay10cmFuc3BhcmVudC05MDA6IHJnYmEoMCwgMCwgMCwgMC45KTtcblxuLy8gPT09IEJsYWNrIFRyYW5zcGFyZW50IFNjYWxlID09PVxuJHdoaXRlLXRyYW5zcGFyZW50LTEwMDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpO1xuJHdoaXRlLXRyYW5zcGFyZW50LTIwMDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjIpO1xuJHdoaXRlLXRyYW5zcGFyZW50LTMwMDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjMpO1xuJHdoaXRlLXRyYW5zcGFyZW50LTQwMDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjQpO1xuJHdoaXRlLXRyYW5zcGFyZW50LTUwMDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpO1xuJHdoaXRlLXRyYW5zcGFyZW50LTYwMDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjYpO1xuJHdoaXRlLXRyYW5zcGFyZW50LTcwMDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjcpO1xuJHdoaXRlLXRyYW5zcGFyZW50LTgwMDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjgpO1xuJHdoaXRlLXRyYW5zcGFyZW50LTkwMDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjkpO1xuXG4vLyA9PT0gTmV1dHJhbCBTY2FsZSAoR3JleSkgPT09XG4kZ3JleS01MDogI2Y5ZmFmYjtcbiRncmV5LTEwMDogI2YzZjRmNjtcbiRncmV5LTIwMDogI2U1ZTdlYjtcbiRncmV5LTMwMDogI2QxZDVkYjtcbiRncmV5LTQwMDogIzljYTNhZjtcbiRncmV5LTUwMDogIzZiNzI4MDtcbiRncmV5LTYwMDogIzRiNTU2MztcbiRncmV5LTcwMDogIzM3NDE1MTtcbiRncmV5LTgwMDogIzFmMjkzNztcbiRncmV5LTkwMDogIzExMTgyNztcblxuLy8gPT09IFByaW1hcnkgU2NhbGUgKEJsdWUpID09PVxuJGJsdWUtNTA6ICNlZmY2ZmY7XG4kYmx1ZS0xMDA6ICNkYmVhZmU7XG4kYmx1ZS0yMDA6ICNiZmRiZmU7XG4kYmx1ZS0zMDA6ICM5M2M1ZmQ7XG4kYmx1ZS00MDA6ICM2MGE1ZmE7XG4kYmx1ZS01MDA6ICMzYjgyZjY7XG4kYmx1ZS02MDA6ICMyNTYzZWI7IC8vIE1haW5cbiRibHVlLTcwMDogIzFkNGVkODsgLy8gSG92ZXJcbiRibHVlLTgwMDogIzFlNDBhZjtcbiRibHVlLTkwMDogIzFlM2E4YTtcblxuLy8gPT09IFNlY29uZGFyeSBTY2FsZSAoSW5kaWdvKSA9PT1cbiRpbmRpZ28tNTA6ICNlZWYyZmY7XG4kaW5kaWdvLTEwMDogI2UwZTdmZjtcbiRpbmRpZ28tMjAwOiAjYzdkMmZlO1xuJGluZGlnby0zMDA6ICNhNWI0ZmM7XG4kaW5kaWdvLTQwMDogIzgxOGNmODtcbiRpbmRpZ28tNTAwOiAjNjM2NmYxO1xuJGluZGlnby02MDA6ICM0ZjQ2ZTU7IC8vIE1haW5cbiRpbmRpZ28tNzAwOiAjNDMzOGNhOyAvLyBIb3ZlclxuXG4vLyA9PT0gRXJyb3IgU2NhbGUgKFJlZCkgPT09XG4kcmVkLTUwOiAjZmVmMmYyO1xuJHJlZC0xMDA6ICNmZWUyZTI7XG4kcmVkLTIwMDogI2ZlY2FjYTtcbiRyZWQtMzAwOiAjZmNhNWE1O1xuJHJlZC00MDA6ICNmODcxNzE7XG4kcmVkLTUwMDogI2VmNDQ0NDtcbiRyZWQtNjAwOiAjZGMyNjI2OyAvLyBNYWluXG4kcmVkLTcwMDogI2I5MWMxYzsgLy8gSG92ZXJcblxuLy8gPT09IFN1Y2Nlc3MgU2NhbGUgKEdyZWVuKSA9PT1cbiRncmVlbi01MDogI2YwZmRmNDtcbiRncmVlbi0xMDA6ICNkY2ZjZTc7XG4kZ3JlZW4tMjAwOiAjYmJmN2QwO1xuJGdyZWVuLTMwMDogIzg2ZWZhYztcbiRncmVlbi00MDA6ICM0YWRlODA7XG4kZ3JlZW4tNTAwOiAjMjJjNTVlO1xuJGdyZWVuLTYwMDogIzE2YTM0YTsgLy8gTWFpblxuJGdyZWVuLTcwMDogIzE1ODAzZDsgLy8gSG92ZXJcblxuLy8gPT09IFdhcm5pbmcgU2NhbGUgKEFtYmVyKSA9PT1cbiRhbWJlci01MDogI2ZmZmJlYjtcbiRhbWJlci0xMDA6ICNmZWYzYzc7XG4kYW1iZXItMjAwOiAjZmRlNjhhO1xuJGFtYmVyLTMwMDogI2ZjZDM0ZDtcbiRhbWJlci00MDA6ICNmYmJmMjQ7XG4kYW1iZXItNTAwOiAjZjU5ZTBiO1xuJGFtYmVyLTYwMDogI2Q5NzcwNjsgLy8gTWFpblxuJGFtYmVyLTcwMDogI2I0NTMwOTsgLy8gSG92ZXJcblxuLy8gPT09IFNlbWFudGljIFRva2VucyA9PT1cbiRjb2xvci1kZWZhdWx0OiAkZ3JleS04MDA7XG4kY29sb3ItZGVmYXVsdC1ob3ZlcjogJGdyZXktOTAwO1xuJGNvbG9yLWRlZmF1bHQtZGlzYWJsZWQ6IHJnYmEoJGNvbG9yLWRlZmF1bHQsIDAuNSk7XG5cbiRjb2xvci1wcmltYXJ5OiAkYmx1ZS02MDA7XG4kY29sb3ItcHJpbWFyeS1ob3ZlcjogJGJsdWUtNzAwO1xuJGNvbG9yLXByaW1hcnktZGlzYWJsZWQ6IHJnYmEoJGNvbG9yLXByaW1hcnksIDAuNSk7XG5cbiRjb2xvci1zZWNvbmRhcnk6ICRpbmRpZ28tNjAwO1xuJGNvbG9yLXNlY29uZGFyeS1ob3ZlcjogJGluZGlnby03MDA7XG4kY29sb3Itc2Vjb25kYXJ5LWRpc2FibGVkOiByZ2JhKCRjb2xvci1zZWNvbmRhcnksIDAuNSk7XG5cbiRjb2xvci1lcnJvcjogJHJlZC02MDA7XG4kY29sb3ItZXJyb3ItaG92ZXI6ICRyZWQtNzAwO1xuJGNvbG9yLWVycm9yLWRpc2FibGVkOiByZ2JhKCRjb2xvci1lcnJvciwgMC41KTtcblxuJGNvbG9yLXN1Y2Nlc3M6ICRncmVlbi02MDA7XG4kY29sb3Itc3VjY2Vzcy1ob3ZlcjogJGdyZWVuLTcwMDtcbiRjb2xvci1zdWNjZXNzLWRpc2FibGVkOiByZ2JhKCRjb2xvci1zdWNjZXNzLCAwLjUpO1xuXG4kY29sb3Itd2FybmluZzogJGFtYmVyLTYwMDtcbiRjb2xvci13YXJuaW5nLWhvdmVyOiAkYW1iZXItNzAwO1xuJGNvbG9yLXdhcm5pbmctZGlzYWJsZWQ6IHJnYmEoJGNvbG9yLXdhcm5pbmcsIDAuNSk7XG5cbiR0ZXh0LWNvbG9yLXdoaXRlOiAkd2hpdGU7XG4kdGV4dC1jb2xvci1ibGFjazogJGJsYWNrO1xuJHRleHQtY29sb3Itd2hpdGUtZGlzYWJsZWQ6IHJnYmEoJHdoaXRlLCAwLjUpO1xuJHRleHQtY29sb3ItYmxhY2stZGlzYWJsZWQ6IHJnYmEoJGJsYWNrLCAwLjUpO1xuXG4vLyA9PT0gU2hhZG93cyA9PT1cbiRzaGFkb3ctc206IDAgMXB4IDJweCAwIHJnYmEoJGJsYWNrLCAwLjA1KTtcbiRzaGFkb3ctbWQ6XG4gIDAgNHB4IDZweCAtMXB4IHJnYmEoJGJsYWNrLCAwLjEpLFxuICAwIDJweCA0cHggLTFweCByZ2JhKCRibGFjaywgMC4wNik7XG4kc2hhZG93LWxnOlxuICAwIDEwcHggMTVweCAtM3B4IHJnYmEoJGJsYWNrLCAwLjEpLFxuICAwIDRweCA2cHggLTJweCByZ2JhKCRibGFjaywgMC4wNSk7XG5cbi8vID09PSBGb250IGZhbWlsaWVzID09PVxuJGZvbnQtZmFtaWx5LXNhbnM6IFwiSW50ZXJcIiwgc2Fucy1zZXJpZjtcbiRmb250LWZhbWlseS1zZXJpZjogXCJHZW9yZ2lhXCIsIHNlcmlmO1xuJGZvbnQtZmFtaWx5LW1vbm86IFwiRmlyYSBDb2RlXCIsIG1vbm9zcGFjZTtcblxuLy8gPT09IEZvbnQgd2VpZ2h0cyA9PT1cbiRmb250LXdlaWdodC1yZWd1bGFyOiA0MDA7XG4kZm9udC13ZWlnaHQtbWVkaXVtOiA1MDA7XG4kZm9udC13ZWlnaHQtc2VtaWJvbGQ6IDYwMDtcbiRmb250LXdlaWdodC1ib2xkOiA3MDA7XG5cbi8vID09PSBMaW5lIGhlaWdodHMgPT09XG4kbGluZS1oZWlnaHQtdGlnaHQ6IDEuMjtcbiRsaW5lLWhlaWdodC1zbnVnOiAxLjM3NTtcbiRsaW5lLWhlaWdodC1ub3JtYWw6IDEuNTtcbiRsaW5lLWhlaWdodC1sb29zZTogMS42MjU7XG5cbi8vID09PSBGb250IFNpemVzIOKAlCBTZW1hbnRpYyBUb2tlbnMgPT09XG5cbi8vID09PSBUaXRsZXMgPT09XG4kZm9udC1zaXplLWhlcm86IDNyZW07IC8vIDQ4cHhcbiRmb250LXNpemUtdGl0bGUtMTogMi4yNXJlbTsgLy8gMzZweFxuJGZvbnQtc2l6ZS10aXRsZS0yOiAxLjg3NXJlbTsgLy8gMzBweFxuJGZvbnQtc2l6ZS10aXRsZS0zOiAxLjVyZW07IC8vIDI0cHhcblxuLy8gPT09IFN1YnRpdGxlcyA9PT1cbiRmb250LXNpemUtc3VidGl0bGUtMTogMS4yNXJlbTsgLy8gMjBweFxuJGZvbnQtc2l6ZS1zdWJ0aXRsZS0yOiAxLjEyNXJlbTsgLy8gMThweFxuXG4vLyA9PT0gQm9keSB0ZXh0ID09PVxuJGZvbnQtc2l6ZS1ib2R5LWxnOiAxcmVtOyAvLyAxNnB4XG4kZm9udC1zaXplLWJvZHktbWQ6IDAuOTM3NXJlbTsgLy8gMTVweFxuJGZvbnQtc2l6ZS1ib2R5LXNtOiAwLjg3NXJlbTsgLy8gMTRweFxuXG4vLyA9PT0gQ2FwdGlvbnMgLyBEZXNjcmlwdGlvbnMgPT09XG4kZm9udC1zaXplLWNhcHRpb246IDAuNzVyZW07IC8vIDEycHhcbiRmb250LXNpemUtZm9vdG5vdGU6IDAuNjg3NXJlbTsgLy8gMTFweFxuXG4vLyA9PT0gQnV0dG9ucyA9PT1cbiRmb250LXNpemUtYnV0dG9uLWxnOiAxcmVtOyAvLyAxNnB4XG4kZm9udC1zaXplLWJ1dHRvbi1tZDogMC44NzVyZW07IC8vIDE0cHhcbiRmb250LXNpemUtYnV0dG9uLXNtOiAwLjc1cmVtOyAvLyAxMnB4XG5cbi8vID09PSBBbmltYXRpb25zID09PVxuXG4kY3ViaWMtYmV6aWVyLXByaW1hcnk6IGN1YmljLWJlemllcigwLjU1LCAtMC4xOSwgMC41OSwgMC45NSk7XG4kY3ViaWMtYmV6aWVyLXNlY29uZGFyeTogY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMiwgMS4yNzUpO1xuIl19 */"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,YAAY,WAAW;AACvB,SAAS,eAAe;;;ACKjB,IAAM,eAAe,CAA0C;AAAA,EACpE;AAAA,EACA;AAAA,EACA;AACF,MAAqC;AACnC,QAAM,SAAS,IAAI;AACnB,MAAI,CAAC,OAAQ;AAEb,QAAM,SAAS,SAAS,cAAc,MAAM;AAC5C,QAAM,WAAW,KAAK,IAAI,OAAO,aAAa,OAAO,YAAY;AACjE,QAAM,SAAS,WAAW;AAE1B,SAAO,KAAK;AAEZ,QAAM,QAAQ,SAAS,cAAc,OAAO;AAC5C,QAAM,YAAY;AAAA;AAAA;AAAA;AAAA;AAAA,kBAKF,QAAQ;AAAA,gBACV,UAAU,OAAO,sBAAsB,EAAE,OAAO,MAAM;AAAA;AAAA;AAAA,eAGvD,UAAU,OAAO,sBAAsB,EAAE,MAAM,MAAM;AAAA;AAAA,iBAEnD,QAAQ;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAYvB,SAAO,YAAY,KAAK;AACxB,SAAO,YAAY,MAAM;AAEzB,SAAO,iBAAiB,gBAAgB,MAAM;AAC5C,WAAO,OAAO;AACd,UAAM,OAAO;AAAA,EACf,CAAC;AACH;;;ACrDA;;;AF2DI,mBAEI,KAFJ;AA1BG,IAAM,SAA4B,CAAC,OAcpC;AAdoC,eACxC;AAAA;AAAA,IACA;AAAA,IACA,UAAU;AAAA,IACV,aAAa;AAAA,IACb,OAAO;AAAA,IACP,SAAS;AAAA,IACT;AAAA,IACA,cAAc;AAAA,IACd,YAAY;AAAA,IACZ;AAAA,IACA,YAAY;AAAA,IACZ;AAAA,EA7CF,IAiC0C,IAarC,sBAbqC,IAarC;AAAA,IAZH;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA;AAGA,QAAM,MAAY,aAA0B,IAAI;AAEhD,QAAM,cAAc,CAAC,MAAuD;AAC1E,UAAM,EAAE,SAAS,QAAQ,IAAI;AAC7B,iBAAgC,EAAE,KAAK,SAAS,QAAQ,CAAC;AACzD,QAAI,SAAS;AACX,cAAQ,CAAC;AAAA,IACX;AAAA,EACF;AAEA,QAAMA,YAAW,MAAG;AA1DtB,QAAAC;AA2DI,4CACG;AAAA,mBACC;AAAA,QAAC;AAAA;AAAA,UACC;AAAA,UACA;AAAA,UACA,MAAM;AAAA,UACN,WAAW,sBAAO,SAAS;AAAA;AAAA,MAC7B;AAAA,MAED,QACC;AAAA,QAAC;AAAA;AAAA,UACC,WAAW,GAAG,sBAAO,MAAM,CAAC,IAAI,sBAAO,UAASA,MAAA,KAAK,UAAL,OAAAA,MAAc,MAAM,EAAE,CAAC;AAAA,UAEtE,UAAM,oBAAc,KAAK,SAAS;AAAA;AAAA,MACrC;AAAA,MAED;AAAA,OACH;AAAA;AAGF,SACE;AAAA,IAAC;AAAA;AAAA,MACC;AAAA,MACA,UAAU,YAAY;AAAA,MACtB,WAAW,GAAG,sBAAO,QAAQ,CAAC,IAAI,sBAAO,mBAAmB,OAAO,EAAE,CAAC,IAAI,sBAAO,sBAAsB,UAAU,EAAE,CAAC,IAAI,sBAAO,gBAAgB,IAAI,EAAE,CAAC,IAAI,sBAAO,kBAAkB,MAAM,EAAE,CAAC,IAAI,YAAY,sBAAO,iBAAiB,IAAI,EAAE,IAAI,SAAS;AAAA,MACvP,SAAS;AAAA,OACJ,0BACD,EAAE,wBAAwB,IAC1B,EAAE,UAAU,oBAACD,WAAA,EAAS,EAAG,IACzB;AAAA,EACN;AAEJ;;;AGzFA,YAAYE,YAAW;;;ACFvB;;;ADmCI,gBAAAC,YAAA;AAVG,IAAM,cAAsC,CAAC;AAAA,EAClD;AAAA,EACA,QAAQ;AAAA,EACR,UAAU;AAAA,EACV,OAAO;AAAA,EACP,SAAS;AAAA,EACT;AAAA,EACA,YAAY;AACd,MAAM;AACJ,SACE,gBAAAA;AAAA,IAAC;AAAA;AAAA,MACC,WAAW,GAAG,2BAAO,cAAc,CAAC,IAAI,2BAAO,yBAAyB,OAAO,EAAE,CAAC,IAAI,2BAAO,sBAAsB,IAAI,EAAE,CAAC,IAAI,2BAAO,wBAAwB,MAAM,EAAE,CAAC,IAAI,2BAAO,uBAAuB,KAAK,EAAE,CAAC,IAAI,SAAS;AAAA,MAE5N,UAAM,gBAAS,QAAQ,QAAQ,EAC7B;AAAA,QACC,CAAC,UACO,sBAAe,KAAK,KAAK,MAAM,SAAS;AAAA,MAClD,EACC;AAAA,QAAI,CAAC,OAAO,UACL,oBAAa,OAAO;AAAA,UACxB,KAAK,SAAS,MAAM;AAAA,UACpB,MAAM,QAAQ,MAAM,MAAM;AAAA,UAC1B,UAAU,YAAY,MAAM,MAAM;AAAA,UAClC,SAAS,WAAW,MAAM,MAAM;AAAA,UAChC,QAAQ;AAAA,QACV,CAAC;AAAA,MACH;AAAA;AAAA,EACJ;AAEJ;","names":["Children","_a","React","jsx"]}
|
package/package.json
CHANGED
|
@@ -1,33 +1,36 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@aristobyte-ui/button",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.7",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"private": false,
|
|
6
|
-
"main": "dist/index.
|
|
7
|
-
"module": "dist/index.
|
|
8
|
-
"types": "dist/
|
|
6
|
+
"main": "dist/index.js",
|
|
7
|
+
"module": "dist/index.mjs",
|
|
8
|
+
"types": "dist/index.d.ts",
|
|
9
9
|
"files": [
|
|
10
10
|
"dist"
|
|
11
11
|
],
|
|
12
12
|
"exports": {
|
|
13
13
|
".": {
|
|
14
|
-
"import": "./dist/index.
|
|
15
|
-
"require": "./dist/index.
|
|
14
|
+
"import": "./dist/index.mjs",
|
|
15
|
+
"require": "./dist/index.js"
|
|
16
16
|
}
|
|
17
17
|
},
|
|
18
18
|
"scripts": {
|
|
19
|
-
"build": "tsc -b tsconfig.json",
|
|
19
|
+
"old-build:tsc": "tsc -b tsconfig.json",
|
|
20
|
+
"build": "tsup",
|
|
20
21
|
"lint": "eslint . --max-warnings 0",
|
|
21
22
|
"generate:component": "turbo gen react-component",
|
|
22
23
|
"check-types": "tsc --noEmit"
|
|
23
24
|
},
|
|
24
25
|
"dependencies": {
|
|
25
26
|
"@aristobyte-ui/spinner": "^1.0.4",
|
|
27
|
+
"esbuild-sass-plugin": "^3.3.1",
|
|
26
28
|
"framer-motion": "^12.23.9",
|
|
27
29
|
"react": "^19.1.0",
|
|
28
30
|
"react-dom": "^19.1.0",
|
|
29
31
|
"sass": "^1.89.0",
|
|
30
|
-
"shiki": "^3.7.0"
|
|
32
|
+
"shiki": "^3.7.0",
|
|
33
|
+
"tsup": "^8.5.0"
|
|
31
34
|
},
|
|
32
35
|
"devDependencies": {
|
|
33
36
|
"@aristobyte-ui/eslint-config": "^1.0.4",
|
|
@@ -1,35 +0,0 @@
|
|
|
1
|
-
"use client";
|
|
2
|
-
var __rest = (this && this.__rest) || function (s, e) {
|
|
3
|
-
var t = {};
|
|
4
|
-
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
5
|
-
t[p] = s[p];
|
|
6
|
-
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
|
7
|
-
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
8
|
-
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
|
9
|
-
t[p[i]] = s[p[i]];
|
|
10
|
-
}
|
|
11
|
-
return t;
|
|
12
|
-
};
|
|
13
|
-
import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
|
|
14
|
-
import * as React from "react";
|
|
15
|
-
import { Spinner } from "@aristobyte-ui/spinner";
|
|
16
|
-
import { renderRipple } from "../../utils";
|
|
17
|
-
import styles from "./Button.module.scss";
|
|
18
|
-
export const Button = (_a) => {
|
|
19
|
-
var { onClick, children, variant = "default", appearance = "solid", size = "md", radius = "md", icon, spinnerType = "default", isLoading = false, disabled, className = "", dangerouslySetInnerHTML } = _a, restProps = __rest(_a, ["onClick", "children", "variant", "appearance", "size", "radius", "icon", "spinnerType", "isLoading", "disabled", "className", "dangerouslySetInnerHTML"]);
|
|
20
|
-
const ref = React.useRef(null);
|
|
21
|
-
const handleClick = (e) => {
|
|
22
|
-
const { clientX, clientY } = e;
|
|
23
|
-
renderRipple({ ref, clientX, clientY });
|
|
24
|
-
if (onClick) {
|
|
25
|
-
onClick(e);
|
|
26
|
-
}
|
|
27
|
-
};
|
|
28
|
-
const Children = () => {
|
|
29
|
-
var _a;
|
|
30
|
-
return (_jsxs(_Fragment, { children: [isLoading && (_jsx(Spinner, { size: size, variant: variant, type: spinnerType, className: styles["spinner"] })), icon && (_jsx("span", { className: `${styles["icon"]} ${styles[`icon--${(_a = icon.align) !== null && _a !== void 0 ? _a : "left"}`]}`, children: React.createElement(icon.component) })), children] }));
|
|
31
|
-
};
|
|
32
|
-
return (_jsx("button", Object.assign({ ref: ref, disabled: disabled || isLoading, className: `${styles["button"]} ${styles[`button-variant--${variant}`]} ${styles[`button-appearance--${appearance}`]} ${styles[`button-size--${size}`]} ${styles[`button-radius--${radius}`]} ${isLoading ? styles["button--loading"] : ""} ${className}`, onClick: handleClick }, (dangerouslySetInnerHTML
|
|
33
|
-
? { dangerouslySetInnerHTML }
|
|
34
|
-
: { children: _jsx(Children, {}) }), restProps)));
|
|
35
|
-
};
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
"use client";
|
|
2
|
-
import { jsx as _jsx } from "react/jsx-runtime";
|
|
3
|
-
import * as React from "react";
|
|
4
|
-
import { Button } from "../Button";
|
|
5
|
-
import styles from "./ButtonGroup.module.scss";
|
|
6
|
-
export const ButtonGroup = ({ children, align = "horizontal", variant = "default", size = "md", radius = "md", disabled, className = "", }) => {
|
|
7
|
-
return (_jsx("div", { className: `${styles["button-group"]} ${styles[`button-group-variant--${variant}`]} ${styles[`button-group-size--${size}`]} ${styles[`button-group-radius--${radius}`]} ${styles[`button-group-align--${align}`]} ${className}`, children: React.Children.toArray(children)
|
|
8
|
-
.filter((child) => React.isValidElement(child) && child.type === Button)
|
|
9
|
-
.map((child, index) => React.cloneElement(child, {
|
|
10
|
-
key: index || child.key,
|
|
11
|
-
size: size || child.props.size,
|
|
12
|
-
disabled: disabled || child.props.disabled,
|
|
13
|
-
variant: variant || child.props.variant,
|
|
14
|
-
radius: "none",
|
|
15
|
-
})) }));
|
|
16
|
-
};
|
package/dist/components/index.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"fileNames":["../node_modules/typescript/lib/lib.es5.d.ts","../node_modules/typescript/lib/lib.es2015.d.ts","../node_modules/typescript/lib/lib.es2016.d.ts","../node_modules/typescript/lib/lib.es2017.d.ts","../node_modules/typescript/lib/lib.es2018.d.ts","../node_modules/typescript/lib/lib.es2019.d.ts","../node_modules/typescript/lib/lib.es2020.d.ts","../node_modules/typescript/lib/lib.es2021.d.ts","../node_modules/typescript/lib/lib.es2022.d.ts","../node_modules/typescript/lib/lib.dom.d.ts","../node_modules/typescript/lib/lib.dom.iterable.d.ts","../node_modules/typescript/lib/lib.es2015.core.d.ts","../node_modules/typescript/lib/lib.es2015.collection.d.ts","../node_modules/typescript/lib/lib.es2015.generator.d.ts","../node_modules/typescript/lib/lib.es2015.iterable.d.ts","../node_modules/typescript/lib/lib.es2015.promise.d.ts","../node_modules/typescript/lib/lib.es2015.proxy.d.ts","../node_modules/typescript/lib/lib.es2015.reflect.d.ts","../node_modules/typescript/lib/lib.es2015.symbol.d.ts","../node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../node_modules/typescript/lib/lib.es2016.array.include.d.ts","../node_modules/typescript/lib/lib.es2016.intl.d.ts","../node_modules/typescript/lib/lib.es2017.arraybuffer.d.ts","../node_modules/typescript/lib/lib.es2017.date.d.ts","../node_modules/typescript/lib/lib.es2017.object.d.ts","../node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../node_modules/typescript/lib/lib.es2017.string.d.ts","../node_modules/typescript/lib/lib.es2017.intl.d.ts","../node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../node_modules/typescript/lib/lib.es2018.intl.d.ts","../node_modules/typescript/lib/lib.es2018.promise.d.ts","../node_modules/typescript/lib/lib.es2018.regexp.d.ts","../node_modules/typescript/lib/lib.es2019.array.d.ts","../node_modules/typescript/lib/lib.es2019.object.d.ts","../node_modules/typescript/lib/lib.es2019.string.d.ts","../node_modules/typescript/lib/lib.es2019.symbol.d.ts","../node_modules/typescript/lib/lib.es2019.intl.d.ts","../node_modules/typescript/lib/lib.es2020.bigint.d.ts","../node_modules/typescript/lib/lib.es2020.date.d.ts","../node_modules/typescript/lib/lib.es2020.promise.d.ts","../node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","../node_modules/typescript/lib/lib.es2020.string.d.ts","../node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","../node_modules/typescript/lib/lib.es2020.intl.d.ts","../node_modules/typescript/lib/lib.es2020.number.d.ts","../node_modules/typescript/lib/lib.es2021.promise.d.ts","../node_modules/typescript/lib/lib.es2021.string.d.ts","../node_modules/typescript/lib/lib.es2021.weakref.d.ts","../node_modules/typescript/lib/lib.es2021.intl.d.ts","../node_modules/typescript/lib/lib.es2022.array.d.ts","../node_modules/typescript/lib/lib.es2022.error.d.ts","../node_modules/typescript/lib/lib.es2022.intl.d.ts","../node_modules/typescript/lib/lib.es2022.object.d.ts","../node_modules/typescript/lib/lib.es2022.string.d.ts","../node_modules/typescript/lib/lib.es2022.regexp.d.ts","../node_modules/typescript/lib/lib.decorators.d.ts","../node_modules/typescript/lib/lib.decorators.legacy.d.ts","../@types/index.d.ts","../../../node_modules/@types/react/global.d.ts","../../../node_modules/csstype/index.d.ts","../../../node_modules/@types/react/index.d.ts","../../../node_modules/@types/react/jsx-runtime.d.ts","../../spinner/components/spinner/index.tsx","../../spinner/components/index.ts","../../spinner/index.ts","../utils/ripple.tsx","../utils/icons.ts","../utils/index.ts","../components/button/index.tsx","../components/buttongroup/index.tsx","../components/index.ts","../../../node_modules/@types/react-dom/index.d.ts","../utils/portal.tsx","../index.ts"],"fileIdsList":[[63],[61,62],[60,63,64,67,70],[60,63,64,71],[64,71,72],[64,73],[60,64],[64,68,69],[63,64,74],[64],[64,65],[60,63,64],[64,66]],"fileInfos":[{"version":"c430d44666289dae81f30fa7b2edebf186ecc91a2d4c71266ea6ae76388792e1","affectsGlobalScope":true,"impliedFormat":1},{"version":"45b7ab580deca34ae9729e97c13cfd999df04416a79116c3bfb483804f85ded4","impliedFormat":1},{"version":"3facaf05f0c5fc569c5649dd359892c98a85557e3e0c847964caeb67076f4d75","impliedFormat":1},{"version":"e44bb8bbac7f10ecc786703fe0a6a4b952189f908707980ba8f3c8975a760962","impliedFormat":1},{"version":"5e1c4c362065a6b95ff952c0eab010f04dcd2c3494e813b493ecfd4fcb9fc0d8","impliedFormat":1},{"version":"68d73b4a11549f9c0b7d352d10e91e5dca8faa3322bfb77b661839c42b1ddec7","impliedFormat":1},{"version":"5efce4fc3c29ea84e8928f97adec086e3dc876365e0982cc8479a07954a3efd4","impliedFormat":1},{"version":"feecb1be483ed332fad555aff858affd90a48ab19ba7272ee084704eb7167569","impliedFormat":1},{"version":"ee7bad0c15b58988daa84371e0b89d313b762ab83cb5b31b8a2d1162e8eb41c2","impliedFormat":1},{"version":"080941d9f9ff9307f7e27a83bcd888b7c8270716c39af943532438932ec1d0b9","affectsGlobalScope":true,"impliedFormat":1},{"version":"2e80ee7a49e8ac312cc11b77f1475804bee36b3b2bc896bead8b6e1266befb43","affectsGlobalScope":true,"impliedFormat":1},{"version":"c57796738e7f83dbc4b8e65132f11a377649c00dd3eee333f672b8f0a6bea671","affectsGlobalScope":true,"impliedFormat":1},{"version":"dc2df20b1bcdc8c2d34af4926e2c3ab15ffe1160a63e58b7e09833f616efff44","affectsGlobalScope":true,"impliedFormat":1},{"version":"515d0b7b9bea2e31ea4ec968e9edd2c39d3eebf4a2d5cbd04e88639819ae3b71","affectsGlobalScope":true,"impliedFormat":1},{"version":"0559b1f683ac7505ae451f9a96ce4c3c92bdc71411651ca6ddb0e88baaaad6a3","affectsGlobalScope":true,"impliedFormat":1},{"version":"0dc1e7ceda9b8b9b455c3a2d67b0412feab00bd2f66656cd8850e8831b08b537","affectsGlobalScope":true,"impliedFormat":1},{"version":"ce691fb9e5c64efb9547083e4a34091bcbe5bdb41027e310ebba8f7d96a98671","affectsGlobalScope":true,"impliedFormat":1},{"version":"8d697a2a929a5fcb38b7a65594020fcef05ec1630804a33748829c5ff53640d0","affectsGlobalScope":true,"impliedFormat":1},{"version":"4ff2a353abf8a80ee399af572debb8faab2d33ad38c4b4474cff7f26e7653b8d","affectsGlobalScope":true,"impliedFormat":1},{"version":"fb0f136d372979348d59b3f5020b4cdb81b5504192b1cacff5d1fbba29378aa1","affectsGlobalScope":true,"impliedFormat":1},{"version":"d15bea3d62cbbdb9797079416b8ac375ae99162a7fba5de2c6c505446486ac0a","affectsGlobalScope":true,"impliedFormat":1},{"version":"68d18b664c9d32a7336a70235958b8997ebc1c3b8505f4f1ae2b7e7753b87618","affectsGlobalScope":true,"impliedFormat":1},{"version":"eb3d66c8327153d8fa7dd03f9c58d351107fe824c79e9b56b462935176cdf12a","affectsGlobalScope":true,"impliedFormat":1},{"version":"38f0219c9e23c915ef9790ab1d680440d95419ad264816fa15009a8851e79119","affectsGlobalScope":true,"impliedFormat":1},{"version":"69ab18c3b76cd9b1be3d188eaf8bba06112ebbe2f47f6c322b5105a6fbc45a2e","affectsGlobalScope":true,"impliedFormat":1},{"version":"a680117f487a4d2f30ea46f1b4b7f58bef1480456e18ba53ee85c2746eeca012","affectsGlobalScope":true,"impliedFormat":1},{"version":"2f11ff796926e0832f9ae148008138ad583bd181899ab7dd768a2666700b1893","affectsGlobalScope":true,"impliedFormat":1},{"version":"4de680d5bb41c17f7f68e0419412ca23c98d5749dcaaea1896172f06435891fc","affectsGlobalScope":true,"impliedFormat":1},{"version":"954296b30da6d508a104a3a0b5d96b76495c709785c1d11610908e63481ee667","affectsGlobalScope":true,"impliedFormat":1},{"version":"ac9538681b19688c8eae65811b329d3744af679e0bdfa5d842d0e32524c73e1c","affectsGlobalScope":true,"impliedFormat":1},{"version":"0a969edff4bd52585473d24995c5ef223f6652d6ef46193309b3921d65dd4376","affectsGlobalScope":true,"impliedFormat":1},{"version":"9e9fbd7030c440b33d021da145d3232984c8bb7916f277e8ffd3dc2e3eae2bdb","affectsGlobalScope":true,"impliedFormat":1},{"version":"811ec78f7fefcabbda4bfa93b3eb67d9ae166ef95f9bff989d964061cbf81a0c","affectsGlobalScope":true,"impliedFormat":1},{"version":"717937616a17072082152a2ef351cb51f98802fb4b2fdabd32399843875974ca","affectsGlobalScope":true,"impliedFormat":1},{"version":"d7e7d9b7b50e5f22c915b525acc5a49a7a6584cf8f62d0569e557c5cfc4b2ac2","affectsGlobalScope":true,"impliedFormat":1},{"version":"71c37f4c9543f31dfced6c7840e068c5a5aacb7b89111a4364b1d5276b852557","affectsGlobalScope":true,"impliedFormat":1},{"version":"576711e016cf4f1804676043e6a0a5414252560eb57de9faceee34d79798c850","affectsGlobalScope":true,"impliedFormat":1},{"version":"89c1b1281ba7b8a96efc676b11b264de7a8374c5ea1e6617f11880a13fc56dc6","affectsGlobalScope":true,"impliedFormat":1},{"version":"74f7fa2d027d5b33eb0471c8e82a6c87216223181ec31247c357a3e8e2fddc5b","affectsGlobalScope":true,"impliedFormat":1},{"version":"d6d7ae4d1f1f3772e2a3cde568ed08991a8ae34a080ff1151af28b7f798e22ca","affectsGlobalScope":true,"impliedFormat":1},{"version":"063600664504610fe3e99b717a1223f8b1900087fab0b4cad1496a114744f8df","affectsGlobalScope":true,"impliedFormat":1},{"version":"934019d7e3c81950f9a8426d093458b65d5aff2c7c1511233c0fd5b941e608ab","affectsGlobalScope":true,"impliedFormat":1},{"version":"52ada8e0b6e0482b728070b7639ee42e83a9b1c22d205992756fe020fd9f4a47","affectsGlobalScope":true,"impliedFormat":1},{"version":"3bdefe1bfd4d6dee0e26f928f93ccc128f1b64d5d501ff4a8cf3c6371200e5e6","affectsGlobalScope":true,"impliedFormat":1},{"version":"59fb2c069260b4ba00b5643b907ef5d5341b167e7d1dbf58dfd895658bda2867","affectsGlobalScope":true,"impliedFormat":1},{"version":"639e512c0dfc3fad96a84caad71b8834d66329a1f28dc95e3946c9b58176c73a","affectsGlobalScope":true,"impliedFormat":1},{"version":"368af93f74c9c932edd84c58883e736c9e3d53cec1fe24c0b0ff451f529ceab1","affectsGlobalScope":true,"impliedFormat":1},{"version":"af3dd424cf267428f30ccfc376f47a2c0114546b55c44d8c0f1d57d841e28d74","affectsGlobalScope":true,"impliedFormat":1},{"version":"995c005ab91a498455ea8dfb63aa9f83fa2ea793c3d8aa344be4a1678d06d399","affectsGlobalScope":true,"impliedFormat":1},{"version":"959d36cddf5e7d572a65045b876f2956c973a586da58e5d26cde519184fd9b8a","affectsGlobalScope":true,"impliedFormat":1},{"version":"965f36eae237dd74e6cca203a43e9ca801ce38824ead814728a2807b1910117d","affectsGlobalScope":true,"impliedFormat":1},{"version":"3925a6c820dcb1a06506c90b1577db1fdbf7705d65b62b99dce4be75c637e26b","affectsGlobalScope":true,"impliedFormat":1},{"version":"0a3d63ef2b853447ec4f749d3f368ce642264246e02911fcb1590d8c161b8005","affectsGlobalScope":true,"impliedFormat":1},{"version":"8cdf8847677ac7d20486e54dd3fcf09eda95812ac8ace44b4418da1bbbab6eb8","affectsGlobalScope":true,"impliedFormat":1},{"version":"8444af78980e3b20b49324f4a16ba35024fef3ee069a0eb67616ea6ca821c47a","affectsGlobalScope":true,"impliedFormat":1},{"version":"3287d9d085fbd618c3971944b65b4be57859f5415f495b33a6adc994edd2f004","affectsGlobalScope":true,"impliedFormat":1},{"version":"b4b67b1a91182421f5df999988c690f14d813b9850b40acd06ed44691f6727ad","affectsGlobalScope":true,"impliedFormat":1},{"version":"8e7f8264d0fb4c5339605a15daadb037bf238c10b654bb3eee14208f860a32ea","affectsGlobalScope":true,"impliedFormat":1},{"version":"782dec38049b92d4e85c1585fbea5474a219c6984a35b004963b00beb1aab538","affectsGlobalScope":true,"impliedFormat":1},"06b3ac816b0092e91fb537f525e292dd7d81e3d9fff9645516f935dc15ba2cb6",{"version":"36a2e4c9a67439aca5f91bb304611d5ae6e20d420503e96c230cf8fcdc948d94","affectsGlobalScope":true,"impliedFormat":1},{"version":"8a8eb4ebffd85e589a1cc7c178e291626c359543403d58c9cd22b81fab5b1fb9","impliedFormat":1},{"version":"af5eabf1ad1627f116f661b0232c0fa57e7918123c2d191776f77e84c7e71f44","impliedFormat":1},{"version":"42c169fb8c2d42f4f668c624a9a11e719d5d07dacbebb63cbcf7ef365b0a75b3","impliedFormat":1},"175e8e4ae382fccec47dd3e0c022c57152a97351e75712d8fe337d81f6920085","5b1fb9c65c20be2e54b7c205fd3d246af33577673bde5ef08ca9ab8d429863bf","b8808ce79cf31e8bf8ef18871ebdb2b9609082c37026cf58b114b5217d328ff9",{"version":"2131dccd3974363f85b1c37b335ec39ac4701dc8c55b874907e9ce5586131cc9","signature":"0b2c3364cb5720a80e2b6f58ba739eae0cd0ea5d16506e789077a9ed61ba6273"},{"version":"0d1f10be352ac65dad8e682440d07e6f96bc2313468948e2b86960d120ee86d0","signature":"8c902282bd82c87c4ff39f4d2ab00d5c3989988e4933c9dfcb83af82e85b5dd1"},"475ca14b7c6667df6bebedd23ea900b774489e4a54075b50c0f7d499bff730c8",{"version":"5126a85915cc1775a72b0461d1f9063d3e4ada692f91012fd378a45f9ce40763","signature":"05685202f07d6dc7deb9447d8a9118c78a40281cc47edf39de19aa9bb9cec850"},{"version":"c6ab10d78a8f21b79fd8792ef353d16ddf5926ce76ddf5e0a089276f4182e6ea","signature":"be238250dfb189e71fcdc878e5749ea7c86a120fd9d4095635abcb727d396ce7"},"3e5e7eab334b2fbfc1284ed1e68525ae932c90982d51f49c1b3fbf5653d7da46",{"version":"115b2ad73fa7d175cd71a5873d984c21593b2a022f1a2036cc39d9f53629e5dc","impliedFormat":1},{"version":"6d649584dae5c95852da35d3b7295f4d0442cae3867db2584e70ac0869bd87aa","signature":"0459cf6187aa67e43ca9c93881fb83737ea2dba7f20aba0537336be7c57db0e5"},"8f6dd5ac45ed5e2570fa42c3a0515016cd0f082d13acfdb27798897853f3862c"],"root":[60,[68,73],75,76],"options":{"allowSyntheticDefaultImports":true,"declaration":true,"declarationDir":"./types","declarationMap":true,"emitDeclarationOnly":false,"esModuleInterop":true,"jsx":4,"module":99,"noUncheckedIndexedAccess":true,"outDir":"./","skipLibCheck":true,"strict":true,"target":2},"referencedMap":[[74,1],[63,2],[64,1],[71,3],[72,4],[73,5],[76,6],[69,7],[70,8],[75,9],[68,10],[66,11],[65,12],[67,13]],"version":"5.9.2"}
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
import * as React from "react";
|
|
2
|
-
export interface IButton extends React.ButtonHTMLAttributes<HTMLButtonElement> {
|
|
3
|
-
variant?: "default" | "primary" | "secondary" | "success" | "error" | "warning";
|
|
4
|
-
appearance?: "solid" | "outline" | "outline-dashed" | "no-outline" | "glowing";
|
|
5
|
-
size?: "xsm" | "sm" | "md" | "lg" | "xlg";
|
|
6
|
-
radius?: "none" | "sm" | "md" | "lg" | "full";
|
|
7
|
-
icon?: {
|
|
8
|
-
component: React.ElementType;
|
|
9
|
-
align?: "left" | "right";
|
|
10
|
-
};
|
|
11
|
-
isLoading?: boolean;
|
|
12
|
-
spinnerType?: "default" | "duo" | "gradient" | "pulse" | "pulse-duo";
|
|
13
|
-
}
|
|
14
|
-
export declare const Button: React.FC<IButton>;
|
|
15
|
-
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../components/Button/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAO/B,MAAM,WAAW,OAAQ,SAAQ,KAAK,CAAC,oBAAoB,CAAC,iBAAiB,CAAC;IAC5E,OAAO,CAAC,EACJ,SAAS,GACT,SAAS,GACT,WAAW,GACX,SAAS,GACT,OAAO,GACP,SAAS,CAAC;IACd,UAAU,CAAC,EACP,OAAO,GACP,SAAS,GACT,gBAAgB,GAChB,YAAY,GACZ,SAAS,CAAC;IACd,IAAI,CAAC,EAAE,KAAK,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,KAAK,CAAC;IAC1C,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,MAAM,CAAC;IAC9C,IAAI,CAAC,EAAE;QACL,SAAS,EAAE,KAAK,CAAC,WAAW,CAAC;QAC7B,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;KAC1B,CAAC;IACF,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,WAAW,CAAC,EAAE,SAAS,GAAG,KAAK,GAAG,UAAU,GAAG,OAAO,GAAG,WAAW,CAAC;CACtE;AAED,eAAO,MAAM,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC,OAAO,CA0DpC,CAAC"}
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
import * as React from "react";
|
|
2
|
-
import { type IButton, Button } from "../Button";
|
|
3
|
-
export interface IButtonGroup {
|
|
4
|
-
children: React.ReactElement<IButton, typeof Button> | React.ReactElement<IButton, typeof Button>[];
|
|
5
|
-
align?: "vertical" | "horizontal";
|
|
6
|
-
variant?: "default" | "primary" | "secondary" | "success" | "error" | "warning";
|
|
7
|
-
size?: "xsm" | "sm" | "md" | "lg" | "xlg";
|
|
8
|
-
radius?: "none" | "sm" | "md" | "lg" | "full";
|
|
9
|
-
disabled?: boolean;
|
|
10
|
-
className?: string;
|
|
11
|
-
}
|
|
12
|
-
export declare const ButtonGroup: React.FC<IButtonGroup>;
|
|
13
|
-
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../components/ButtonGroup/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,KAAK,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AAIjD,MAAM,WAAW,YAAY;IAC3B,QAAQ,EACJ,KAAK,CAAC,YAAY,CAAC,OAAO,EAAE,OAAO,MAAM,CAAC,GAC1C,KAAK,CAAC,YAAY,CAAC,OAAO,EAAE,OAAO,MAAM,CAAC,EAAE,CAAC;IACjD,KAAK,CAAC,EAAE,UAAU,GAAG,YAAY,CAAC;IAClC,OAAO,CAAC,EACJ,SAAS,GACT,SAAS,GACT,WAAW,GACX,SAAS,GACT,OAAO,GACP,SAAS,CAAC;IACd,IAAI,CAAC,EAAE,KAAK,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,KAAK,CAAC;IAC1C,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,MAAM,CAAC;IAC9C,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,eAAO,MAAM,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC,YAAY,CA6B9C,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../components/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC"}
|
package/dist/types/index.d.ts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Portal.d.ts","sourceRoot":"","sources":["../../../utils/Portal.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAG/B,eAAO,MAAM,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC;IAAE,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;CAAE,CAW1D,CAAC"}
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
export declare const Icons: {
|
|
2
|
-
Copy: import("react").FunctionComponent<import("react").SVGAttributes<SVGElement>>;
|
|
3
|
-
Error: import("react").FunctionComponent<import("react").SVGAttributes<SVGElement>>;
|
|
4
|
-
Info: import("react").FunctionComponent<import("react").SVGAttributes<SVGElement>>;
|
|
5
|
-
Success: import("react").FunctionComponent<import("react").SVGAttributes<SVGElement>>;
|
|
6
|
-
Warning: import("react").FunctionComponent<import("react").SVGAttributes<SVGElement>>;
|
|
7
|
-
};
|
|
8
|
-
//# sourceMappingURL=icons.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"icons.d.ts","sourceRoot":"","sources":["../../../utils/icons.ts"],"names":[],"mappings":"AAMA,eAAO,MAAM,KAAK;;;;;;CAMjB,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../utils/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,KAAK,YAAY,EAAE,MAAM,UAAU,CAAC;AAC3D,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC"}
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
type RippleParamsRef = HTMLButtonElement | HTMLAnchorElement;
|
|
2
|
-
export type RippleParams<HTMLElementType extends RippleParamsRef> = {
|
|
3
|
-
ref: React.RefObject<HTMLElementType | null>;
|
|
4
|
-
clientX: number;
|
|
5
|
-
clientY: number;
|
|
6
|
-
};
|
|
7
|
-
export declare const renderRipple: <HTMLElementType extends RippleParamsRef>({ ref, clientX, clientY, }: RippleParams<HTMLElementType>) => void;
|
|
8
|
-
export {};
|
|
9
|
-
//# sourceMappingURL=ripple.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ripple.d.ts","sourceRoot":"","sources":["../../../utils/ripple.tsx"],"names":[],"mappings":"AAAA,KAAK,eAAe,GAAG,iBAAiB,GAAG,iBAAiB,CAAC;AAE7D,MAAM,MAAM,YAAY,CAAC,eAAe,SAAS,eAAe,IAAI;IAClE,GAAG,EAAE,KAAK,CAAC,SAAS,CAAC,eAAe,GAAG,IAAI,CAAC,CAAC;IAC7C,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,eAAO,MAAM,YAAY,GAAI,eAAe,SAAS,eAAe,EAAE,4BAInE,YAAY,CAAC,eAAe,CAAC,SAyC/B,CAAC"}
|