@adamjanicki/ui 1.6.6 → 1.6.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/components/Accordion/Accordion.js +12 -13
- package/components/Alert/Alert.d.ts +1 -6
- package/components/Alert/Alert.js +2 -2
- package/components/Animated/Animated.d.ts +21 -22
- package/components/Animated/Animated.js +2 -2
- package/components/Avatar/Avatar.d.ts +1 -6
- package/components/Avatar/Avatar.js +4 -4
- package/components/Badge/Badge.d.ts +1 -6
- package/components/Badge/Badge.js +2 -2
- package/components/Banner/Banner.js +2 -2
- package/components/Box/Box.d.ts +1 -1
- package/components/Button/Button.d.ts +19 -16
- package/components/Button/Button.js +18 -10
- package/components/Carousel/Carousel.js +16 -3
- package/components/Hamburger/Hamburger.d.ts +1 -1
- package/components/Icon/Icon.d.ts +2 -1
- package/components/Icon/Icon.js +2 -1
- package/components/Input/IconInput.d.ts +5 -17
- package/components/Input/IconInput.js +16 -3
- package/components/Input/Input.d.ts +5 -10
- package/components/Input/Input.js +3 -2
- package/components/Input/TextArea.d.ts +3 -9
- package/components/Input/TextArea.js +3 -2
- package/components/Layer/Layer.js +2 -2
- package/components/Link/Link.d.ts +7 -5
- package/components/Link/Link.js +12 -8
- package/components/Modal/Modal.js +11 -2
- package/components/Select/Select.d.ts +6 -5
- package/components/Select/Select.js +5 -3
- package/components/Spinner/Spinner.d.ts +2 -11
- package/components/Spinner/Spinner.js +1 -1
- package/components/ui.d.ts +5 -5
- package/components/ui.js +5 -5
- package/package.json +1 -1
- package/style.css +1 -1
- package/utils/transformVfx.d.ts +2 -0
- package/utils/transformVfx.js +147 -0
- package/utils/types.d.ts +70 -50
- package/utils/transformLayout.d.ts +0 -2
- package/utils/transformLayout.js +0 -76
package/components/Link/Link.js
CHANGED
|
@@ -22,23 +22,27 @@ var __rest = (this && this.__rest) || function (s, e) {
|
|
|
22
22
|
};
|
|
23
23
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
24
24
|
import React from "react";
|
|
25
|
-
import {
|
|
25
|
+
import { getButtonProps } from "../Button/Button";
|
|
26
26
|
import classNames from "../../functions/classNames";
|
|
27
|
-
import
|
|
27
|
+
import transformVfx from "../../utils/transformVfx";
|
|
28
28
|
export var UnstyledLink = React.forwardRef(function (_a, ref) {
|
|
29
|
-
var LinkElement = _a.LinkElement, to = _a.to, className = _a.className,
|
|
30
|
-
var props = __assign(__assign(__assign({}, (external ? { target: "_blank", rel: "noreferrer noopener" } : {})), rest), { className: classNames("aui-action",
|
|
29
|
+
var LinkElement = _a.LinkElement, to = _a.to, className = _a.className, vfx = _a.vfx, external = _a.external, rest = __rest(_a, ["LinkElement", "to", "className", "vfx", "external"]);
|
|
30
|
+
var props = __assign(__assign(__assign({}, (external ? { target: "_blank", rel: "noreferrer noopener" } : {})), rest), { className: classNames("aui-action", transformVfx(vfx), className) });
|
|
31
31
|
if (LinkElement) {
|
|
32
32
|
return _jsx(LinkElement, __assign({}, props, { to: to, ref: ref }));
|
|
33
33
|
}
|
|
34
34
|
return _jsx("a", __assign({}, props, { href: to, ref: ref }));
|
|
35
35
|
});
|
|
36
36
|
export var ButtonLink = React.forwardRef(function (_a, ref) {
|
|
37
|
-
var className = _a.className,
|
|
38
|
-
|
|
37
|
+
var className = _a.className, variant = _a.variant, vfx = _a.vfx, size = _a.size, props = __rest(_a, ["className", "variant", "vfx", "size"]);
|
|
38
|
+
var _b = getButtonProps({
|
|
39
|
+
variant: variant,
|
|
40
|
+
size: size,
|
|
41
|
+
}), additionalVfx = _b.vfx, additionalClassName = _b.className;
|
|
42
|
+
return (_jsx(UnstyledLink, __assign({}, props, { className: classNames(additionalClassName, className), vfx: __assign(__assign({}, additionalVfx), vfx), ref: ref })));
|
|
39
43
|
});
|
|
40
44
|
var Link = React.forwardRef(function (_a, ref) {
|
|
41
|
-
var className = _a.className,
|
|
42
|
-
return (_jsx(UnstyledLink, __assign({}, props, { className: classNames("aui-link",
|
|
45
|
+
var className = _a.className, vfx = _a.vfx, props = __rest(_a, ["className", "vfx"]);
|
|
46
|
+
return (_jsx(UnstyledLink, __assign({}, props, { vfx: __assign({ fontWeight: 6 }, vfx), className: classNames("aui-link", className), ref: ref })));
|
|
43
47
|
});
|
|
44
48
|
export default Link;
|
|
@@ -28,12 +28,21 @@ import Button, { IconButton } from "../Button";
|
|
|
28
28
|
import Animated from "../Animated";
|
|
29
29
|
var Modal = React.forwardRef(function (_a, ref) {
|
|
30
30
|
var open = _a.open, onClose = _a.onClose, onConfirm = _a.onConfirm, _b = _a.confirmLabel, confirmLabel = _b === void 0 ? "Ok" : _b, _c = _a.cancelLabel, cancelLabel = _c === void 0 ? "Cancel" : _c, returnFocusOnEscape = _a.returnFocusOnEscape, rest = __rest(_a, ["open", "onClose", "onConfirm", "confirmLabel", "cancelLabel", "returnFocusOnEscape"]);
|
|
31
|
-
return (_jsx(Animated, {
|
|
31
|
+
return (_jsx(Animated, { vfx: { z: "max" }, visible: open, animateTo: { vfx: { opacity: "full" } }, animateFrom: { vfx: { opacity: "none" } }, children: _jsx(Layer, { onClose: onClose, returnFocusOnEscape: returnFocusOnEscape, children: _jsxs(Box, { role: "dialog", "aria-modal": "true", vfx: {
|
|
32
|
+
axis: "y",
|
|
33
|
+
padding: "m",
|
|
34
|
+
gap: "m",
|
|
35
|
+
radius: "rounded",
|
|
36
|
+
maxWidth: "full",
|
|
37
|
+
shadow: "floating",
|
|
38
|
+
color: "default",
|
|
39
|
+
backgroundColor: "default",
|
|
40
|
+
}, children: [_jsx(Box, { vfx: {
|
|
32
41
|
axis: "x",
|
|
33
42
|
align: "center",
|
|
34
43
|
justify: "end",
|
|
35
44
|
width: "full",
|
|
36
|
-
}, children: _jsx(IconButton, { icon: "x", onClick: onClose }) }), _jsx(Box, __assign({}, rest, { ref: ref })), _jsxs(Box, {
|
|
45
|
+
}, children: _jsx(IconButton, { icon: "x", onClick: onClose }) }), _jsx(Box, __assign({}, rest, { ref: ref })), _jsxs(Box, { vfx: {
|
|
37
46
|
axis: "x",
|
|
38
47
|
align: "center",
|
|
39
48
|
justify: "end",
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
import React from "react";
|
|
2
|
-
import type
|
|
3
|
-
|
|
2
|
+
import { type BoxProps } from "../Box/Box";
|
|
3
|
+
import ui from "../ui";
|
|
4
|
+
type SelectProps = React.ComponentProps<typeof ui.select>;
|
|
5
|
+
type Props = Omit<BoxProps, "children"> & {
|
|
4
6
|
/**
|
|
5
7
|
* Array of options to display in the select
|
|
6
8
|
*/
|
|
@@ -13,10 +15,9 @@ type Props = React.DetailedHTMLProps<React.SelectHTMLAttributes<HTMLSelectElemen
|
|
|
13
15
|
*/
|
|
14
16
|
getOptionLabel?: (option: string) => string;
|
|
15
17
|
/**
|
|
16
|
-
*
|
|
17
|
-
* @default "rounded"
|
|
18
|
+
* Props to pass to the underlying select element
|
|
18
19
|
*/
|
|
19
|
-
|
|
20
|
+
selectProps?: SelectProps;
|
|
20
21
|
};
|
|
21
22
|
declare const Select: React.ForwardRefExoticComponent<Omit<Props, "ref"> & React.RefAttributes<HTMLSelectElement>>;
|
|
22
23
|
export default Select;
|
|
@@ -23,10 +23,12 @@ var __rest = (this && this.__rest) || function (s, e) {
|
|
|
23
23
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
24
24
|
import React from "react";
|
|
25
25
|
import classNames from "../../functions/classNames";
|
|
26
|
-
import Box from "../Box";
|
|
26
|
+
import Box from "../Box/Box";
|
|
27
27
|
import Icon from "../Icon";
|
|
28
|
+
import ui from "../ui";
|
|
28
29
|
var Select = React.forwardRef(function (_a, ref) {
|
|
29
|
-
var className = _a.className, options = _a.options,
|
|
30
|
-
|
|
30
|
+
var className = _a.className, options = _a.options, vfx = _a.vfx, getOptionLabel = _a.getOptionLabel, selectProps = _a.selectProps, rest = __rest(_a, ["className", "options", "vfx", "getOptionLabel", "selectProps"]);
|
|
31
|
+
var selectClassName = (selectProps || {}).className;
|
|
32
|
+
return (_jsxs(Box, __assign({ vfx: __assign({ pos: "relative", width: "fit", axis: "x", align: "center", radius: "rounded", backgroundColor: "default", color: "default", padding: "none" }, vfx), className: classNames("aui-select-container", (selectProps === null || selectProps === void 0 ? void 0 : selectProps.disabled) ? "aui-select-disabled" : undefined, className) }, rest, { children: [_jsx(ui.select, __assign({}, selectProps, { className: classNames("aui-select", selectClassName), ref: ref, children: options.map(function (option, index) { return (_jsx("option", { value: option, children: (getOptionLabel === null || getOptionLabel === void 0 ? void 0 : getOptionLabel(option)) || option }, index)); }) })), _jsx(Icon, { icon: "chevron-down", className: "aui-select-icon", "aria-hidden": true })] })));
|
|
31
33
|
});
|
|
32
34
|
export default Select;
|
|
@@ -1,13 +1,4 @@
|
|
|
1
|
-
import
|
|
2
|
-
type Props =
|
|
3
|
-
/**
|
|
4
|
-
* [Optional] Additional class names to apply to the spinner.
|
|
5
|
-
*/
|
|
6
|
-
className?: string;
|
|
7
|
-
/**
|
|
8
|
-
* [Optional] Additional styles to apply to the spinner.
|
|
9
|
-
*/
|
|
10
|
-
style?: Style;
|
|
11
|
-
};
|
|
1
|
+
import ui from "../ui";
|
|
2
|
+
type Props = Omit<React.ComponentProps<typeof ui.svg>, "children" | "viewBox">;
|
|
12
3
|
declare const Spinner: ({ className, ...props }: Props) => import("react/jsx-runtime").JSX.Element;
|
|
13
4
|
export default Spinner;
|
|
@@ -26,6 +26,6 @@ var Spinner = function (_a) {
|
|
|
26
26
|
var className = _a.className, props = __rest(_a, ["className"]);
|
|
27
27
|
return (
|
|
28
28
|
// Designed on 2023-08-18
|
|
29
|
-
_jsx("svg", __assign({ xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 512 512", className: classNames("aui-spinner", className)
|
|
29
|
+
_jsx("svg", __assign({ xmlns: "http://www.w3.org/2000/svg" }, props, { viewBox: "0 0 512 512", className: classNames("aui-spinner", className), children: _jsx("path", { fill: "currentColor", d: "M256,0C114.62,0,0,114.62,0,256S114.62,512,256,512c70.64,0,134.59-28.61,180.91-74.88l-31.11-31.11c-38.35,38.3-91.31,61.99-149.8,61.99-117.08,0-212-94.92-212-212S138.92,44,256,44V0Z" }) })));
|
|
30
30
|
};
|
|
31
31
|
export default Spinner;
|
package/components/ui.d.ts
CHANGED
|
@@ -1,16 +1,16 @@
|
|
|
1
1
|
import React from "react";
|
|
2
|
-
import type {
|
|
2
|
+
import type { Vfx } from "../utils/types";
|
|
3
3
|
type HtmlTag = keyof React.JSX.IntrinsicElements;
|
|
4
4
|
type Props<T extends HtmlTag> = React.ComponentPropsWithRef<T> & {
|
|
5
5
|
/**
|
|
6
|
-
* The
|
|
6
|
+
* The VFX or other organizational css to apply to this element.
|
|
7
7
|
* Properties are translated to class names before being applied.
|
|
8
8
|
*/
|
|
9
|
-
|
|
9
|
+
vfx?: Vfx;
|
|
10
10
|
};
|
|
11
|
-
declare function
|
|
11
|
+
declare function createVfxElement<T extends HtmlTag>(tag: T): React.ForwardRefExoticComponent<React.PropsWithoutRef<Props<T>> & React.RefAttributes<React.ComponentRef<T>>>;
|
|
12
12
|
type HtmlTags = {
|
|
13
|
-
[K in HtmlTag]: ReturnType<typeof
|
|
13
|
+
[K in HtmlTag]: ReturnType<typeof createVfxElement<K>>;
|
|
14
14
|
};
|
|
15
15
|
declare const ui: HtmlTags;
|
|
16
16
|
export default ui;
|
package/components/ui.js
CHANGED
|
@@ -22,11 +22,11 @@ var __rest = (this && this.__rest) || function (s, e) {
|
|
|
22
22
|
};
|
|
23
23
|
import React from "react";
|
|
24
24
|
import { classNames } from "../functions";
|
|
25
|
-
import
|
|
26
|
-
function
|
|
25
|
+
import transformVfx from "../utils/transformVfx";
|
|
26
|
+
function createVfxElement(tag) {
|
|
27
27
|
var Component = React.forwardRef(function (_a, ref) {
|
|
28
|
-
var
|
|
29
|
-
return React.createElement(tag, __assign(__assign({}, props), { ref: ref, className: classNames(
|
|
28
|
+
var vfx = _a.vfx, className = _a.className, props = __rest(_a, ["vfx", "className"]);
|
|
29
|
+
return React.createElement(tag, __assign(__assign({}, props), { ref: ref, className: classNames(transformVfx(vfx), className) }));
|
|
30
30
|
});
|
|
31
31
|
return Component;
|
|
32
32
|
}
|
|
@@ -36,7 +36,7 @@ var ui = new Proxy({}, {
|
|
|
36
36
|
if (cachedComponent) {
|
|
37
37
|
return cachedComponent;
|
|
38
38
|
}
|
|
39
|
-
var component =
|
|
39
|
+
var component = createVfxElement(tag);
|
|
40
40
|
cache[tag] = component;
|
|
41
41
|
return component;
|
|
42
42
|
},
|
package/package.json
CHANGED
package/style.css
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
:root{--aui-xxs: 2px;--aui-xs: 4px;--aui-s: 8px;--aui-m: 16px;--aui-l: 24px;--aui-xl: 32px;--aui-xxl: 64px;--aui-moon-gray: #ccc;--aui-dark-gray: #555;--aui-darkest-gray: #333;--aui-obsidian: #121212;--aui-focus-ring-color: #b2dbfa;--aui-default-text-color: black;--aui-default-background: white;--aui-default-border: var(--aui-moon-gray);--aui-disabled-opacity: 0.5;--aui-default-transition: 0.25s ease-in-out;--aui-default-opacity-dim: 0.75;--aui-floating-box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2);--aui-sharp-radius: 0;--aui-rounded-radius: 8px;--aui-pill-radius: 9999px;--aui-button-primary-background: black;--aui-button-primary-color: white;--aui-button-secondary-border-hover: var(--aui-darkest-gray);--aui-subtle-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.16);--aui-button-primary-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.36);--aui-success-background: #dff2e1;--aui-success-color: #1b5e20;--aui-success-border: #b2dfb1;--aui-warning-background: #fceeb6;--aui-warning-color: #b23904;--aui-warning-border: #e6d5a2;--aui-error-background: #fdecea;--aui-error-color: #b71c1c;--aui-error-border: #f5b7b7;--aui-info-background: #e3f2fd;--aui-info-color: #0d47a1;--aui-info-border: #90caf9;--aui-avatar-purple: #bc54d6;--aui-avatar-blue: #618bdc;--aui-avatar-red: #ee6060;--aui-avatar-green: #add386;--aui-avatar-yellow: #f5c76d;--aui-static-background: #e8e8e8;--aui-layer-backdrop-background: rgba(200, 200, 200, 0.6);--aui-link-color: #0070ff;--aui-select-icon: var(--aui-dark-gray)}[data-theme=dark]{--aui-focus-ring-color: #6699cc;--aui-default-text-color: white;--aui-default-background: var(--aui-obsidian);--aui-default-border: var(--aui-dark-gray);--aui-floating-box-shadow: 0 4px 12px rgba(0, 0, 0, 0.5);--aui-button-primary-background: white;--aui-button-primary-color: var(--aui-obsidian);--aui-button-secondary-border-hover: var(--aui-moon-gray);--aui-subtle-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.4);--aui-button-primary-box-shadow: 0 1px 2px rgba(64, 64, 64, 0.8);--aui-success-background: #2a5733;--aui-success-color: #d9efd8;--aui-success-border: #439e4a;--aui-warning-background: #736230;--aui-warning-color: #fff6d1;--aui-warning-border: #927a3b;--aui-error-background: #663232;--aui-error-color: #f9dadc;--aui-error-border: #8d2a2a;--aui-info-background: #335f72;--aui-info-color: #d4f1f5;--aui-info-border: #1d8ea4;--aui-avatar-purple: #771199;--aui-avatar-blue: #0b4cce;--aui-avatar-red: #bb1111;--aui-avatar-green: #307040;--aui-avatar-yellow: #bb8822;--aui-static-background: var(--aui-darkest-gray);--aui-layer-backdrop-background: rgba(55, 55, 55, 0.7);--aui-link-color: #33bfff;--aui-select-icon: var(--aui-moon-gray)}.aui-corners--rounded{border-radius:var(--aui-rounded-radius)}.aui-corners--pill{border-radius:var(--aui-pill-radius)}.aui-corners--sharp{border-radius:var(--aui-sharp-radius)}.aui-content--success{background-color:var(--aui-success-background);color:var(--aui-success-color);border-color:var(--aui-success-border)}.aui-content--warning{background-color:var(--aui-warning-background);color:var(--aui-warning-color);border-color:var(--aui-warning-border)}.aui-content--error{background-color:var(--aui-error-background);color:var(--aui-error-color);border-color:var(--aui-error-border)}.aui-content--info{background-color:var(--aui-info-background);color:var(--aui-info-color);border-color:var(--aui-info-border)}.aui-content--static{background-color:var(--aui-static-background);color:var(--aui-default-text-color);border-color:var(--aui-default-border)}.aui-modal{color:var(--aui-default-text-color);background-color:var(--aui-default-background);box-shadow:0 0 0 1px var(--aui-default-border) inset,var(--aui-floating-box-shadow);border-radius:var(--aui-rounded-radius);min-width:40%;max-width:100%}.aui-accordion{background-color:var(--aui-default-background);box-shadow:0 0 0 1px var(--aui-default-border) inset,var(--aui-subtle-box-shadow)}.aui-accordion-label{font-weight:600}.aui-accordion-hr{border:none;height:1px;background-color:var(--aui-default-border);width:100%;margin:0}.aui-accordion-arrow{color:var(--aui-select-icon)}.aui-alert{padding:var(--aui-m);border-style:solid;border-width:1px;font-weight:400}.aui-avatar{overflow:hidden;text-align:center;font-weight:600}.aui-badge{padding:var(--aui-xxs) var(--aui-xs);border-style:solid;border-width:1px;font-weight:500;font-size:14px;width:fit-content}.aui-banner{padding:var(--aui-l) var(--aui-xl);border:none;font-weight:400;width:100%}.aui-action{color:inherit;text-decoration:none;cursor:pointer;outline-color:var(--aui-link-color)}.aui-action:focus:not(:focus-visible){outline:none}.aui-button{background:none;border:none;padding:0}.aui-button-size--regular{padding:var(--aui-s);font-weight:600}.aui-button-size--small{padding:var(--aui-xs);font-size:12px;font-weight:600}.aui-button:disabled{cursor:default !important;opacity:var(--aui-disabled-opacity)}.aui-button--primary{background-color:var(--aui-button-primary-background);color:var(--aui-button-primary-color);box-shadow:var(--aui-button-primary-box-shadow);transition:opacity var(--aui-default-transition)}.aui-button--secondary{color:var(--aui-default-text-color);background-color:var(--aui-default-background);box-shadow:0 0 0 1px var(--aui-default-border) inset,var(--aui-subtle-box-shadow);transition:box-shadow var(--aui-default-transition)}.aui-dim,.aui-undim{transition:opacity var(--aui-default-transition)}.aui-dim{opacity:1}.aui-undim{opacity:var(--aui-default-opacity-dim)}.aui-link{font-weight:600;color:var(--aui-link-color);transition:opacity var(--aui-default-transition)}@media(hover: hover){.aui-button--primary:not([disabled]):hover,.aui-dim:not([disabled]):hover,.aui-link:hover{opacity:var(--aui-default-opacity-dim)}.aui-button--secondary:not([disabled]):hover{box-shadow:0 0 0 1px var(--aui-button-secondary-border-hover) inset,var(--aui-subtle-box-shadow)}.aui-undim:not([disabled]):hover{opacity:1}}.aui-input-base{outline:none;border:none;background-color:inherit;color:inherit;padding:var(--aui-s);font-weight:400}.aui-input-base::selection{background-color:var(--aui-focus-ring-color)}.aui-icon-input{overflow:scroll}.aui-icon-input input{background-color:rgba(0,0,0,0);width:100%}.aui-input{transition:box-shadow var(--aui-default-transition);box-shadow:0 0 0 1px var(--aui-default-border) inset,var(--aui-subtle-box-shadow);background-color:var(--aui-default-background)}.aui-input:disabled{opacity:var(--aui-disabled-opacity);cursor:default}.aui-input:not([disabled]):focus-within,.aui-select-container:not([disabled]):focus-within{box-shadow:0 0 0 1px var(--aui-default-border) inset,var(--aui-subtle-box-shadow),0 0 0 3px var(--aui-focus-ring-color)}.aui-select-container{position:relative;padding:0;width:fit-content;transition:box-shadow var(--aui-default-transition);box-shadow:0 0 0 1px var(--aui-default-border) inset,var(--aui-subtle-box-shadow);background-color:var(--aui-default-background)}.aui-select{width:100%;color:inherit;border:none;outline:none;box-shadow:none;cursor:pointer;background-color:rgba(0,0,0,0);padding:var(--aui-s) 28px var(--aui-s) var(--aui-s);font-weight:600;appearance:none;-webkit-appearance:none;-moz-appearance:none}.aui-select-disabled *{opacity:var(--aui-disabled-opacity);cursor:default}.aui-modal-backdrop,.aui-layer-backdrop{z-index:10000}.aui-layer-backdrop{position:fixed;top:0;left:0;width:100vw;height:100vh;background:var(--aui-layer-backdrop-background)}.aui-icon *{color:currentColor;fill:currentColor}.aui-spinner{animation:aui-spinner-animation 1s linear infinite;transform-origin:center;height:var(--aui-l)}@keyframes aui-spinner-animation{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}.aui-carousel{max-width:100%;position:relative;overflow:hidden;min-height:var(--aui-xxl);min-width:var(--aui-xxl);width:fit-content}.aui-carousel-item{flex:0 0 100%;width:100%;height:100%}.aui-carousel-arrow{position:absolute;top:50%;transform:translateY(-50%);width:var(--aui-l);height:var(--aui-l);padding:0}.aui-carousel-dots{position:absolute;bottom:var(--aui-s);transform:translateX(-50%);left:50%}.aui-carousel-dot{width:var(--aui-m);height:var(--aui-s);padding:0}.aui-flex-x,.aui-flex-y,.aui-flex--x,.aui-flex--y{display:flex}.aui-flex-x{flex-direction:row}.aui-flex-y{flex-direction:column}.aui-flex--x{flex-direction:row-reverse}.aui-flex--y{flex-direction:column-reverse}.aui-flex-wrap{flex-wrap:wrap}.aui-align-start{align-items:flex-start}.aui-align-center{align-items:center}.aui-align-end{align-items:flex-end}.aui-justify-start{justify-content:flex-start}.aui-justify-center{justify-content:center}.aui-justify-between{justify-content:space-between}.aui-justify-around{justify-content:space-around}.aui-justify-end{justify-content:flex-end}.aui-avatar-red{background-color:var(--aui-avatar-red)}.aui-avatar-yellow{background-color:var(--aui-avatar-yellow)}.aui-avatar-green{background-color:var(--aui-avatar-green)}.aui-avatar-blue{background-color:var(--aui-avatar-blue)}.aui-avatar-purple{background-color:var(--aui-avatar-purple)}.aui-avatar-xxs{width:12px;height:12px;line-height:12px;font-size:9.6px}.aui-avatar-xs{width:16px;height:16px;line-height:16px;font-size:12.8px}.aui-avatar-s{width:24px;height:24px;line-height:24px;font-size:19.2px}.aui-avatar-m{width:32px;height:32px;line-height:32px;font-size:25.6px}.aui-avatar-l{width:48px;height:48px;line-height:48px;font-size:38.4px}.aui-avatar-xl{width:64px;height:64px;line-height:64px;font-size:51.2px}.aui-avatar-xxl{width:128px;height:128px;line-height:128px;font-size:102.4px}.aui-icon-xxs{width:8px;height:8px}.aui-icon-xs{width:12px;height:12px}.aui-icon-s{width:16px;height:16px}.aui-icon-m{width:24px;height:24px}.aui-icon-l{width:32px;height:32px}.aui-icon-xl{width:48px;height:48px}.aui-icon-xxl{width:64px;height:64px}.aui-gap-none{gap:0}.aui-gap-xxs{gap:var(--aui-xxs)}.aui-gap-xs{gap:var(--aui-xs)}.aui-gap-s{gap:var(--aui-s)}.aui-gap-m{gap:var(--aui-m)}.aui-gap-l{gap:var(--aui-l)}.aui-gap-xl{gap:var(--aui-xl)}.aui-gap-xxl{gap:var(--aui-xxl)}.aui-pa-none{padding:0}.aui-pa-xxs{padding:var(--aui-xxs)}.aui-pa-xs{padding:var(--aui-xs)}.aui-pa-s{padding:var(--aui-s)}.aui-pa-m{padding:var(--aui-m)}.aui-pa-l{padding:var(--aui-l)}.aui-pa-xl{padding:var(--aui-xl)}.aui-pa-xxl{padding:var(--aui-xxl)}.aui-pt-none{padding-top:0}.aui-pt-xxs{padding-top:var(--aui-xxs)}.aui-pt-xs{padding-top:var(--aui-xs)}.aui-pt-s{padding-top:var(--aui-s)}.aui-pt-m{padding-top:var(--aui-m)}.aui-pt-l{padding-top:var(--aui-l)}.aui-pt-xl{padding-top:var(--aui-xl)}.aui-pt-xxl{padding-top:var(--aui-xxl)}.aui-pb-none{padding-bottom:0}.aui-pb-xxs{padding-bottom:var(--aui-xxs)}.aui-pb-xs{padding-bottom:var(--aui-xs)}.aui-pb-s{padding-bottom:var(--aui-s)}.aui-pb-m{padding-bottom:var(--aui-m)}.aui-pb-l{padding-bottom:var(--aui-l)}.aui-pb-xl{padding-bottom:var(--aui-xl)}.aui-pb-xxl{padding-bottom:var(--aui-xxl)}.aui-pl-none{padding-left:0}.aui-pl-xxs{padding-left:var(--aui-xxs)}.aui-pl-xs{padding-left:var(--aui-xs)}.aui-pl-s{padding-left:var(--aui-s)}.aui-pl-m{padding-left:var(--aui-m)}.aui-pl-l{padding-left:var(--aui-l)}.aui-pl-xl{padding-left:var(--aui-xl)}.aui-pl-xxl{padding-left:var(--aui-xxl)}.aui-pr-none{padding-right:0}.aui-pr-xxs{padding-right:var(--aui-xxs)}.aui-pr-xs{padding-right:var(--aui-xs)}.aui-pr-s{padding-right:var(--aui-s)}.aui-pr-m{padding-right:var(--aui-m)}.aui-pr-l{padding-right:var(--aui-l)}.aui-pr-xl{padding-right:var(--aui-xl)}.aui-pr-xxl{padding-right:var(--aui-xxl)}.aui-ma-auto{margin:auto}.aui-mt-auto{margin-top:auto}.aui-mb-auto{margin-bottom:auto}.aui-ml-auto{margin-left:auto}.aui-mr-auto{margin-right:auto}.aui-ma-none{margin:0}.aui-ma-xxs{margin:var(--aui-xxs)}.aui-ma-xs{margin:var(--aui-xs)}.aui-ma-s{margin:var(--aui-s)}.aui-ma-m{margin:var(--aui-m)}.aui-ma-l{margin:var(--aui-l)}.aui-ma-xl{margin:var(--aui-xl)}.aui-ma-xxl{margin:var(--aui-xxl)}.aui-mt-none{margin-top:0}.aui-mt-xxs{margin-top:var(--aui-xxs)}.aui-mt-xs{margin-top:var(--aui-xs)}.aui-mt-s{margin-top:var(--aui-s)}.aui-mt-m{margin-top:var(--aui-m)}.aui-mt-l{margin-top:var(--aui-l)}.aui-mt-xl{margin-top:var(--aui-xl)}.aui-mt-xxl{margin-top:var(--aui-xxl)}.aui-mb-none{margin-bottom:0}.aui-mb-xxs{margin-bottom:var(--aui-xxs)}.aui-mb-xs{margin-bottom:var(--aui-xs)}.aui-mb-s{margin-bottom:var(--aui-s)}.aui-mb-m{margin-bottom:var(--aui-m)}.aui-mb-l{margin-bottom:var(--aui-l)}.aui-mb-xl{margin-bottom:var(--aui-xl)}.aui-mb-xxl{margin-bottom:var(--aui-xxl)}.aui-ml-none{margin-left:0}.aui-ml-xxs{margin-left:var(--aui-xxs)}.aui-ml-xs{margin-left:var(--aui-xs)}.aui-ml-s{margin-left:var(--aui-s)}.aui-ml-m{margin-left:var(--aui-m)}.aui-ml-l{margin-left:var(--aui-l)}.aui-ml-xl{margin-left:var(--aui-xl)}.aui-ml-xxl{margin-left:var(--aui-xxl)}.aui-mr-none{margin-right:0}.aui-mr-xxs{margin-right:var(--aui-xxs)}.aui-mr-xs{margin-right:var(--aui-xs)}.aui-mr-s{margin-right:var(--aui-s)}.aui-mr-m{margin-right:var(--aui-m)}.aui-mr-l{margin-right:var(--aui-l)}.aui-mr-xl{margin-right:var(--aui-xl)}.aui-mr-xxl{margin-right:var(--aui-xxl)}.aui-w-full{width:100%}.aui-w-fit{width:fit-content}.aui-w-min{width:min-content}.aui-w-max{width:max-content}.aui-mw-full{max-width:100%}.aui-mw-fit{max-width:fit-content}.aui-mw-min{max-width:min-content}.aui-mw-max{max-width:max-content}.aui-h-full{height:100%}.aui-h-fit{height:fit-content}.aui-h-min{height:min-content}.aui-h-max{height:max-content}.aui-mh-full{max-height:100%}.aui-mh-fit{max-height:fit-content}.aui-mh-min{max-height:min-content}.aui-mh-max{max-height:max-content}.aui-select-icon{--size: 10px;color:var(--aui-select-icon);width:var(--size);height:var(--size);position:absolute;top:calc(50% + 1px);transform:translateY(-50%);right:var(--size);pointer-events:none}
|
|
1
|
+
:root{--aui-xxs: 2px;--aui-xs: 4px;--aui-s: 8px;--aui-m: 16px;--aui-l: 24px;--aui-xl: 32px;--aui-xxl: 64px;--aui-moon-gray: #ccc;--aui-dark-gray: #555;--aui-darkest-gray: #333;--aui-obsidian: #121212;--aui-focus-ring-color: #b2dbfa;--aui-color-default: black;--aui-color-muted: var(--aui-dark-gray);--aui-default-background: white;--aui-default-border: var(--aui-moon-gray);--aui-opacity-disabled: 0.5;--aui-opacity-dim: 0.75;--aui-default-transition: 0.25s ease-in-out;--aui-floating-box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2);--aui-radius-none: 0;--aui-radius-subtle: 4px;--aui-radius-rounded: 8px;--aui-radius-max: 10000px;--aui-button-primary-background: black;--aui-button-primary-color: white;--aui-button-secondary-border-hover: var(--aui-darkest-gray);--aui-subtle-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.16);--aui-button-primary-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.36);--aui-success-background: #dff2e1;--aui-success-color: #1b5e20;--aui-success-border: #b2dfb1;--aui-warning-background: #fceeb6;--aui-warning-color: #b23904;--aui-warning-border: #e6d5a2;--aui-error-background: #fdecea;--aui-error-color: #b71c1c;--aui-error-border: #f5b7b7;--aui-info-background: #e3f2fd;--aui-info-color: #0d47a1;--aui-info-border: #90caf9;--aui-avatar-purple: #bc54d6;--aui-avatar-blue: #618bdc;--aui-avatar-red: #ee6060;--aui-avatar-green: #add386;--aui-avatar-yellow: #f5c76d;--aui-static-background: #e8e8e8;--aui-static-color: var(--aui-color-default);--aui-static-border: var(--aui-default-border);--aui-layer-backdrop-background: rgba(200, 200, 200, 0.6);--aui-link-color: #0070ff}[data-theme=dark]{--aui-focus-ring-color: #6699cc;--aui-color-default: white;--aui-color-muted: var(--aui-moon-gray);--aui-default-background: var(--aui-obsidian);--aui-default-border: var(--aui-dark-gray);--aui-floating-box-shadow: 0 4px 12px rgba(0, 0, 0, 0.5);--aui-button-primary-background: white;--aui-button-primary-color: var(--aui-obsidian);--aui-button-secondary-border-hover: var(--aui-moon-gray);--aui-subtle-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.4);--aui-button-primary-box-shadow: 0 1px 2px rgba(64, 64, 64, 0.8);--aui-success-background: #2a5733;--aui-success-color: #d9efd8;--aui-success-border: #439e4a;--aui-warning-background: #736230;--aui-warning-color: #fff6d1;--aui-warning-border: #927a3b;--aui-error-background: #663232;--aui-error-color: #f9dadc;--aui-error-border: #8d2a2a;--aui-info-background: #335f72;--aui-info-color: #d4f1f5;--aui-info-border: #1d8ea4;--aui-static-background: var(--aui-darkest-gray);--aui-static-color: var(--aui-color-default);--aui-static-border: var(--aui-default-border);--aui-avatar-purple: #771199;--aui-avatar-blue: #0b4cce;--aui-avatar-red: #bb1111;--aui-avatar-green: #307040;--aui-avatar-yellow: #bb8822;--aui-layer-backdrop-background: rgba(55, 55, 55, 0.7);--aui-link-color: #33bfff}.aui-content-success{background-color:var(--aui-success-background);color:var(--aui-success-color);border-color:var(--aui-success-border)}.aui-content-warning{background-color:var(--aui-warning-background);color:var(--aui-warning-color);border-color:var(--aui-warning-border)}.aui-content-error{background-color:var(--aui-error-background);color:var(--aui-error-color);border-color:var(--aui-error-border)}.aui-content-info{background-color:var(--aui-info-background);color:var(--aui-info-color);border-color:var(--aui-info-border)}.aui-content-static{background-color:var(--aui-static-background);color:var(--aui-static-color);border-color:var(--aui-static-border)}.aui-alert,.aui-badge{border-style:solid;border-width:1px}.aui-action{color:inherit;text-decoration:none;cursor:pointer;outline-color:var(--aui-link-color)}.aui-action:focus:not(:focus-visible){outline:none}.aui-button{background:none;border:none;padding:0}.aui-button:disabled{cursor:default !important;opacity:var(--aui-opacity-disabled)}.aui-button-primary{background-color:var(--aui-button-primary-background);color:var(--aui-button-primary-color);box-shadow:var(--aui-button-primary-box-shadow);transition:opacity var(--aui-default-transition)}.aui-button-secondary{color:var(--aui-color-default);background-color:var(--aui-default-background);box-shadow:0 0 0 1px var(--aui-default-border) inset,var(--aui-subtle-box-shadow);transition:box-shadow var(--aui-default-transition)}.aui-dim,.aui-undim{transition:opacity var(--aui-default-transition)}.aui-dim{opacity:1}.aui-undim{opacity:var(--aui-opacity-dim)}.aui-link{color:var(--aui-link-color);transition:opacity var(--aui-default-transition)}@media(hover: hover){.aui-button-primary:not([disabled]):hover,.aui-dim:not([disabled]):hover,.aui-link:hover{opacity:var(--aui-opacity-dim)}.aui-button-secondary:not([disabled]):hover{box-shadow:0 0 0 1px var(--aui-button-secondary-border-hover) inset,var(--aui-subtle-box-shadow)}.aui-undim:not([disabled]):hover{opacity:1}}.aui-input-base{outline:none;border:none;background-color:inherit;color:inherit;padding:var(--aui-s);font-weight:400}.aui-input-base::selection{background-color:var(--aui-focus-ring-color)}.aui-input{transition:box-shadow var(--aui-default-transition);box-shadow:0 0 0 1px var(--aui-default-border) inset,var(--aui-subtle-box-shadow);background-color:var(--aui-default-background)}.aui-input:disabled{opacity:var(--aui-opacity-disabled);cursor:default}.aui-input:not([disabled]):focus-within,.aui-select-container:not([disabled]):focus-within{box-shadow:0 0 0 1px var(--aui-default-border) inset,var(--aui-subtle-box-shadow),0 0 0 3px var(--aui-focus-ring-color)}.aui-select-container{transition:box-shadow var(--aui-default-transition);box-shadow:0 0 0 1px var(--aui-default-border) inset,var(--aui-subtle-box-shadow);background-color:var(--aui-default-background)}.aui-select{width:100%;color:inherit;border:none;outline:none;box-shadow:none;cursor:pointer;background-color:rgba(0,0,0,0);padding:var(--aui-s) 28px var(--aui-s) var(--aui-s);font-weight:600;appearance:none;-webkit-appearance:none;-moz-appearance:none}.aui-select-disabled *{opacity:var(--aui-opacity-disabled);cursor:default}.aui-layer-backdrop{top:0;left:0;width:100vw;height:100vh;background:var(--aui-layer-backdrop-background)}.aui-icon *{color:currentColor;fill:currentColor}.aui-spinner{animation:aui-spinner-animation 1s linear infinite;transform-origin:center;height:var(--aui-l)}@keyframes aui-spinner-animation{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}.aui-carousel-item{flex:0 0 100%}.aui-carousel-arrow{position:absolute;top:50%;transform:translateY(-50%);width:var(--aui-l);height:var(--aui-l)}.aui-carousel-dots{position:absolute;bottom:var(--aui-s);transform:translateX(-50%);left:50%}.aui-carousel-dot{width:var(--aui-m);height:var(--aui-s)}.aui-pos-static{position:static}.aui-pos-relative{position:relative}.aui-pos-absolute{position:absolute}.aui-pos-fixed{position:fixed}.aui-pos-sticky{position:sticky}.aui-flex-x{display:flex;flex-direction:row}.aui-flex-y{display:flex;flex-direction:column}.aui-flex--x{display:flex;flex-direction:row-reverse}.aui-flex--y{display:flex;flex-direction:column-reverse}.aui-flex-wrap{flex-wrap:wrap}.aui-align-start{align-items:flex-start}.aui-align-center{align-items:center}.aui-align-end{align-items:flex-end}.aui-justify-start{justify-content:flex-start}.aui-justify-center{justify-content:center}.aui-justify-end{justify-content:flex-end}.aui-justify-between{justify-content:space-between}.aui-justify-around{justify-content:space-around}.aui-avatar-red{background-color:var(--aui-avatar-red)}.aui-avatar-yellow{background-color:var(--aui-avatar-yellow)}.aui-avatar-green{background-color:var(--aui-avatar-green)}.aui-avatar-blue{background-color:var(--aui-avatar-blue)}.aui-avatar-purple{background-color:var(--aui-avatar-purple)}.aui-avatar-xxs{width:12px;height:12px;line-height:12px;font-size:9.6px}.aui-avatar-xs{width:16px;height:16px;line-height:16px;font-size:12.8px}.aui-avatar-s{width:24px;height:24px;line-height:24px;font-size:19.2px}.aui-avatar-m{width:32px;height:32px;line-height:32px;font-size:25.6px}.aui-avatar-l{width:48px;height:48px;line-height:48px;font-size:38.4px}.aui-avatar-xl{width:64px;height:64px;line-height:64px;font-size:51.2px}.aui-avatar-xxl{width:128px;height:128px;line-height:128px;font-size:102.4px}.aui-icon-xxs{width:8px;height:8px}.aui-icon-xs{width:12px;height:12px}.aui-icon-s{width:16px;height:16px}.aui-icon-m{width:24px;height:24px}.aui-icon-l{width:32px;height:32px}.aui-icon-xl{width:48px;height:48px}.aui-icon-xxl{width:64px;height:64px}.aui-pa-none{padding:0}.aui-pa-xxs{padding:var(--aui-xxs)}.aui-pa-xs{padding:var(--aui-xs)}.aui-pa-s{padding:var(--aui-s)}.aui-pa-m{padding:var(--aui-m)}.aui-pa-l{padding:var(--aui-l)}.aui-pa-xl{padding:var(--aui-xl)}.aui-pa-xxl{padding:var(--aui-xxl)}.aui-pt-none{padding-top:0}.aui-pt-xxs{padding-top:var(--aui-xxs)}.aui-pt-xs{padding-top:var(--aui-xs)}.aui-pt-s{padding-top:var(--aui-s)}.aui-pt-m{padding-top:var(--aui-m)}.aui-pt-l{padding-top:var(--aui-l)}.aui-pt-xl{padding-top:var(--aui-xl)}.aui-pt-xxl{padding-top:var(--aui-xxl)}.aui-pb-none{padding-bottom:0}.aui-pb-xxs{padding-bottom:var(--aui-xxs)}.aui-pb-xs{padding-bottom:var(--aui-xs)}.aui-pb-s{padding-bottom:var(--aui-s)}.aui-pb-m{padding-bottom:var(--aui-m)}.aui-pb-l{padding-bottom:var(--aui-l)}.aui-pb-xl{padding-bottom:var(--aui-xl)}.aui-pb-xxl{padding-bottom:var(--aui-xxl)}.aui-pl-none{padding-left:0}.aui-pl-xxs{padding-left:var(--aui-xxs)}.aui-pl-xs{padding-left:var(--aui-xs)}.aui-pl-s{padding-left:var(--aui-s)}.aui-pl-m{padding-left:var(--aui-m)}.aui-pl-l{padding-left:var(--aui-l)}.aui-pl-xl{padding-left:var(--aui-xl)}.aui-pl-xxl{padding-left:var(--aui-xxl)}.aui-pr-none{padding-right:0}.aui-pr-xxs{padding-right:var(--aui-xxs)}.aui-pr-xs{padding-right:var(--aui-xs)}.aui-pr-s{padding-right:var(--aui-s)}.aui-pr-m{padding-right:var(--aui-m)}.aui-pr-l{padding-right:var(--aui-l)}.aui-pr-xl{padding-right:var(--aui-xl)}.aui-pr-xxl{padding-right:var(--aui-xxl)}.aui-ma-auto{margin:auto}.aui-ma-none{margin:0}.aui-ma-xxs{margin:var(--aui-xxs)}.aui-ma-xs{margin:var(--aui-xs)}.aui-ma-s{margin:var(--aui-s)}.aui-ma-m{margin:var(--aui-m)}.aui-ma-l{margin:var(--aui-l)}.aui-ma-xl{margin:var(--aui-xl)}.aui-ma-xxl{margin:var(--aui-xxl)}.aui-mt-auto{margin-top:auto}.aui-mt-none{margin-top:0}.aui-mt-xxs{margin-top:var(--aui-xxs)}.aui-mt-xs{margin-top:var(--aui-xs)}.aui-mt-s{margin-top:var(--aui-s)}.aui-mt-m{margin-top:var(--aui-m)}.aui-mt-l{margin-top:var(--aui-l)}.aui-mt-xl{margin-top:var(--aui-xl)}.aui-mt-xxl{margin-top:var(--aui-xxl)}.aui-mb-auto{margin-bottom:auto}.aui-mb-none{margin-bottom:0}.aui-mb-xxs{margin-bottom:var(--aui-xxs)}.aui-mb-xs{margin-bottom:var(--aui-xs)}.aui-mb-s{margin-bottom:var(--aui-s)}.aui-mb-m{margin-bottom:var(--aui-m)}.aui-mb-l{margin-bottom:var(--aui-l)}.aui-mb-xl{margin-bottom:var(--aui-xl)}.aui-mb-xxl{margin-bottom:var(--aui-xxl)}.aui-ml-auto{margin-left:auto}.aui-ml-none{margin-left:0}.aui-ml-xxs{margin-left:var(--aui-xxs)}.aui-ml-xs{margin-left:var(--aui-xs)}.aui-ml-s{margin-left:var(--aui-s)}.aui-ml-m{margin-left:var(--aui-m)}.aui-ml-l{margin-left:var(--aui-l)}.aui-ml-xl{margin-left:var(--aui-xl)}.aui-ml-xxl{margin-left:var(--aui-xxl)}.aui-mr-auto{margin-right:auto}.aui-mr-none{margin-right:0}.aui-mr-xxs{margin-right:var(--aui-xxs)}.aui-mr-xs{margin-right:var(--aui-xs)}.aui-mr-s{margin-right:var(--aui-s)}.aui-mr-m{margin-right:var(--aui-m)}.aui-mr-l{margin-right:var(--aui-l)}.aui-mr-xl{margin-right:var(--aui-xl)}.aui-mr-xxl{margin-right:var(--aui-xxl)}.aui-gap-none{gap:0}.aui-gap-xxs{gap:var(--aui-xxs)}.aui-gap-xs{gap:var(--aui-xs)}.aui-gap-s{gap:var(--aui-s)}.aui-gap-m{gap:var(--aui-m)}.aui-gap-l{gap:var(--aui-l)}.aui-gap-xl{gap:var(--aui-xl)}.aui-gap-xxl{gap:var(--aui-xxl)}.aui-w-full{width:100%}.aui-w-fit{width:fit-content}.aui-w-min{width:min-content}.aui-w-max{width:max-content}.aui-mw-full{max-width:100%}.aui-mw-fit{max-width:fit-content}.aui-mw-min{max-width:min-content}.aui-mw-max{max-width:max-content}.aui-h-full{height:100%}.aui-h-fit{height:fit-content}.aui-h-min{height:min-content}.aui-h-max{height:max-content}.aui-mh-full{max-height:100%}.aui-mh-fit{max-height:fit-content}.aui-mh-min{max-height:min-content}.aui-mh-max{max-height:max-content}.aui-radius-none{border-radius:var(--aui-radius-none)}.aui-radius-subtle{border-radius:var(--aui-radius-subtle)}.aui-radius-rounded{border-radius:var(--aui-radius-rounded)}.aui-radius-max{border-radius:var(--aui-radius-max)}.aui-ba{border:1px solid var(--aui-default-border)}.aui-bt{border-top:1px solid var(--aui-default-border)}.aui-br{border-right:1px solid var(--aui-default-border)}.aui-bb{border-bottom:1px solid var(--aui-default-border)}.aui-bl{border-left:1px solid var(--aui-default-border)}.aui-bw-none{border-width:0px}.aui-bw-xs{border-width:1px}.aui-bw-s{border-width:2px}.aui-bw-m{border-width:4px}.aui-bw-l{border-width:8px}.aui-bw-xl{border-width:16px}.aui-bs-solid{border-style:solid}.aui-bs-dotted{border-style:dotted}.aui-bs-dashed{border-style:dashed}.aui-bs-none{border-style:none}.aui-bc-default{border-color:var(--aui-default-border)}.aui-bc-primary{border-color:var(--aui-color-default)}.aui-shadow-sharp{box-shadow:0 0 0 1px var(--aui-default-border) inset}.aui-shadow-subtle{box-shadow:0 0 0 1px var(--aui-default-border) inset,var(--aui-subtle-box-shadow)}.aui-shadow-floating{box-shadow:0 0 0 1px var(--aui-default-border) inset,var(--aui-floating-box-shadow)}.aui-shadow-none{box-shadow:none}.aui-op-none{opacity:0}.aui-op-disabled{opacity:var(--aui-opacity-disabled)}.aui-op-dim{opacity:var(--aui-opacity-dim)}.aui-op-full{opacity:1}.aui-f-xxs{font-size:10px}.aui-f-xs{font-size:12px}.aui-f-s{font-size:14px}.aui-f-m{font-size:16px}.aui-f-l{font-size:20px}.aui-f-xl{font-size:24px}.aui-f-xxl{font-size:32px}.aui-fw-1{font-weight:100}.aui-fw-2{font-weight:200}.aui-fw-3{font-weight:300}.aui-fw-4{font-weight:400}.aui-fw-5{font-weight:500}.aui-fw-6{font-weight:600}.aui-fw-7{font-weight:700}.aui-fw-8{font-weight:800}.aui-fw-9{font-weight:900}.aui-ta-left{text-align:left}.aui-ta-right{text-align:right}.aui-ta-center{text-align:center}.aui-it{font-style:italic}.aui-bg-default{background-color:var(--aui-color-default)}.aui-bg-muted{background-color:var(--aui-color-muted)}.aui-bg-inherit{background-color:inherit}.aui-bg-transparent{background-color:rgba(0,0,0,0)}.aui-bg-default{background-color:var(--aui-default-background)}.aui-bg-muted{background-color:var(--aui-static-background)}.aui-bg-inherit{background-color:inherit}.aui-bg-transparent{background-color:rgba(0,0,0,0)}.aui-ov-scroll{overflow:scroll}.aui-ov-x-scroll{overflow-x:scroll}.aui-ov-y-scroll{overflow-y:scroll}.aui-ov-hidden{overflow:hidden}.aui-ov-x-hidden{overflow-x:hidden}.aui-ov-y-hidden{overflow-y:hidden}.aui-z-auto{z-index:auto}.aui-z-floating{z-index:100}.aui-z-nav{z-index:1000}.aui-z-max{z-index:10000}.aui-select-icon{--size: 10px;color:var(--aui-color-muted);width:var(--size);height:var(--size);position:absolute;top:calc(50% + 1px);transform:translateY(-50%);right:var(--size);pointer-events:none}
|
|
@@ -0,0 +1,147 @@
|
|
|
1
|
+
import { classNames } from "../functions";
|
|
2
|
+
// Prefix maps for padding and margin keys
|
|
3
|
+
var spacingPrefixMap = {
|
|
4
|
+
padding: "pa",
|
|
5
|
+
paddingTop: "pt",
|
|
6
|
+
paddingBottom: "pb",
|
|
7
|
+
paddingLeft: "pl",
|
|
8
|
+
paddingRight: "pr",
|
|
9
|
+
margin: "ma",
|
|
10
|
+
marginTop: "mt",
|
|
11
|
+
marginBottom: "mb",
|
|
12
|
+
marginLeft: "ml",
|
|
13
|
+
marginRight: "mr",
|
|
14
|
+
};
|
|
15
|
+
var dimensionPrefixMap = {
|
|
16
|
+
width: "w",
|
|
17
|
+
maxWidth: "mw",
|
|
18
|
+
height: "h",
|
|
19
|
+
maxHeight: "mh",
|
|
20
|
+
};
|
|
21
|
+
var mapLayout = function (_a) {
|
|
22
|
+
var pos = _a.pos, axis = _a.axis, wrap = _a.wrap, align = _a.align, justify = _a.justify, gap = _a.gap, overflow = _a.overflow, overflowX = _a.overflowX, overflowY = _a.overflowY, z = _a.z;
|
|
23
|
+
var className = pos ? "aui-pos-".concat(pos) : null;
|
|
24
|
+
if (axis)
|
|
25
|
+
className = classNames(className, "aui-flex-".concat(axis));
|
|
26
|
+
if (wrap)
|
|
27
|
+
className = classNames(className, "aui-flex-wrap");
|
|
28
|
+
if (align)
|
|
29
|
+
className = classNames(className, "aui-align-".concat(align));
|
|
30
|
+
if (justify)
|
|
31
|
+
className = classNames(className, "aui-justify-".concat(justify));
|
|
32
|
+
if (gap)
|
|
33
|
+
className = classNames(className, "aui-gap-".concat(gap));
|
|
34
|
+
if (overflow)
|
|
35
|
+
className = classNames(className, "aui-ov-".concat(overflow));
|
|
36
|
+
if (overflowX)
|
|
37
|
+
className = classNames(className, "aui-ov-x-".concat(overflowX));
|
|
38
|
+
if (overflowY)
|
|
39
|
+
className = classNames(className, "aui-ov-y-".concat(overflowY));
|
|
40
|
+
if (z)
|
|
41
|
+
className = classNames(className, "aui-z-".concat(z));
|
|
42
|
+
return className;
|
|
43
|
+
};
|
|
44
|
+
var mapSpacing = function (_a) {
|
|
45
|
+
var padding = _a.padding, paddingX = _a.paddingX, paddingY = _a.paddingY, paddingBottom = _a.paddingBottom, paddingTop = _a.paddingTop, paddingLeft = _a.paddingLeft, paddingRight = _a.paddingRight, margin = _a.margin, marginX = _a.marginX, marginY = _a.marginY, marginTop = _a.marginTop, marginBottom = _a.marginBottom, marginLeft = _a.marginLeft, marginRight = _a.marginRight;
|
|
46
|
+
// Use your existing spacingPrefixMap logic
|
|
47
|
+
var className = null;
|
|
48
|
+
var spacingProps = [
|
|
49
|
+
["padding", padding],
|
|
50
|
+
["paddingTop", paddingTop !== null && paddingTop !== void 0 ? paddingTop : paddingY],
|
|
51
|
+
["paddingBottom", paddingBottom !== null && paddingBottom !== void 0 ? paddingBottom : paddingY],
|
|
52
|
+
["paddingLeft", paddingLeft !== null && paddingLeft !== void 0 ? paddingLeft : paddingX],
|
|
53
|
+
["paddingRight", paddingRight !== null && paddingRight !== void 0 ? paddingRight : paddingX],
|
|
54
|
+
["margin", margin],
|
|
55
|
+
["marginTop", marginTop !== null && marginTop !== void 0 ? marginTop : marginY],
|
|
56
|
+
["marginBottom", marginBottom !== null && marginBottom !== void 0 ? marginBottom : marginY],
|
|
57
|
+
["marginLeft", marginLeft !== null && marginLeft !== void 0 ? marginLeft : marginX],
|
|
58
|
+
["marginRight", marginRight !== null && marginRight !== void 0 ? marginRight : marginX],
|
|
59
|
+
];
|
|
60
|
+
spacingProps.forEach(function (_a) {
|
|
61
|
+
var prop = _a[0], value = _a[1];
|
|
62
|
+
if (value) {
|
|
63
|
+
var prefix = spacingPrefixMap[prop];
|
|
64
|
+
className = classNames(className, "aui-".concat(prefix, "-").concat(value));
|
|
65
|
+
}
|
|
66
|
+
});
|
|
67
|
+
return className;
|
|
68
|
+
};
|
|
69
|
+
var dimensionProps = ["width", "height", "maxWidth", "maxHeight"];
|
|
70
|
+
var mapDimensions = function (vfx) {
|
|
71
|
+
var className = null;
|
|
72
|
+
dimensionProps.forEach(function (prop) {
|
|
73
|
+
var value = vfx[prop];
|
|
74
|
+
if (value)
|
|
75
|
+
className = classNames(className, "aui-".concat(dimensionPrefixMap[prop], "-").concat(value));
|
|
76
|
+
});
|
|
77
|
+
return className;
|
|
78
|
+
};
|
|
79
|
+
var mapBorders = function (_a) {
|
|
80
|
+
var border = _a.border, borderTop = _a.borderTop, borderBottom = _a.borderBottom, borderLeft = _a.borderLeft, borderRight = _a.borderRight, borderWidth = _a.borderWidth, borderStyle = _a.borderStyle, borderColor = _a.borderColor;
|
|
81
|
+
var className = null;
|
|
82
|
+
var sides = {
|
|
83
|
+
ba: border,
|
|
84
|
+
bt: borderTop,
|
|
85
|
+
bb: borderBottom,
|
|
86
|
+
bl: borderLeft,
|
|
87
|
+
br: borderRight,
|
|
88
|
+
};
|
|
89
|
+
Object.entries(sides).forEach(function (_a) {
|
|
90
|
+
var prefix = _a[0], value = _a[1];
|
|
91
|
+
if (value) {
|
|
92
|
+
className = classNames(className, "aui-".concat(prefix));
|
|
93
|
+
}
|
|
94
|
+
});
|
|
95
|
+
var modifiers = {
|
|
96
|
+
bw: borderWidth,
|
|
97
|
+
bs: borderStyle,
|
|
98
|
+
bc: borderColor,
|
|
99
|
+
};
|
|
100
|
+
Object.entries(modifiers).forEach(function (_a) {
|
|
101
|
+
var prefix = _a[0], value = _a[1];
|
|
102
|
+
if (value) {
|
|
103
|
+
className = classNames(className, "aui-".concat(prefix, "-").concat(value));
|
|
104
|
+
}
|
|
105
|
+
});
|
|
106
|
+
return className;
|
|
107
|
+
};
|
|
108
|
+
var mapMiscellaneous = function (_a) {
|
|
109
|
+
var radius = _a.radius, shadow = _a.shadow, color = _a.color, backgroundColor = _a.backgroundColor, opacity = _a.opacity;
|
|
110
|
+
var className = radius ? "aui-radius-".concat(radius) : null;
|
|
111
|
+
if (shadow)
|
|
112
|
+
className = classNames(className, "aui-shadow-".concat(shadow));
|
|
113
|
+
if (color)
|
|
114
|
+
className = classNames(className, "aui-c-".concat(color));
|
|
115
|
+
if (backgroundColor)
|
|
116
|
+
className = classNames(className, "aui-bg-".concat(backgroundColor));
|
|
117
|
+
if (opacity)
|
|
118
|
+
className = classNames(className, "aui-op-".concat(opacity));
|
|
119
|
+
return className;
|
|
120
|
+
};
|
|
121
|
+
var mapTypography = function (_a) {
|
|
122
|
+
var fontSize = _a.fontSize, fontWeight = _a.fontWeight, textAlign = _a.textAlign, italics = _a.italics;
|
|
123
|
+
var className = null;
|
|
124
|
+
if (fontSize)
|
|
125
|
+
className = classNames(className, "aui-f-".concat(fontSize));
|
|
126
|
+
if (fontWeight)
|
|
127
|
+
className = classNames(className, "aui-fw-".concat(fontWeight));
|
|
128
|
+
if (textAlign)
|
|
129
|
+
className = classNames(className, "aui-ta-".concat(textAlign));
|
|
130
|
+
if (italics)
|
|
131
|
+
className = classNames(className, "aui-it");
|
|
132
|
+
return className;
|
|
133
|
+
};
|
|
134
|
+
var transformers = [
|
|
135
|
+
mapLayout,
|
|
136
|
+
mapSpacing,
|
|
137
|
+
mapDimensions,
|
|
138
|
+
mapBorders,
|
|
139
|
+
mapTypography,
|
|
140
|
+
mapMiscellaneous,
|
|
141
|
+
];
|
|
142
|
+
export default function transformVfx(vfx) {
|
|
143
|
+
if (!vfx)
|
|
144
|
+
return null;
|
|
145
|
+
var combinedClasses = classNames.apply(void 0, transformers.map(function (transformer) { return transformer(vfx); }));
|
|
146
|
+
return combinedClasses || null;
|
|
147
|
+
}
|
package/utils/types.d.ts
CHANGED
|
@@ -1,83 +1,103 @@
|
|
|
1
1
|
import React from "react";
|
|
2
|
-
/**
|
|
3
|
-
* Default children type; can be a node or list of nodes
|
|
4
|
-
*/
|
|
5
2
|
export type Children = React.ReactNode | React.ReactNode[];
|
|
6
|
-
/**
|
|
7
|
-
* The type of corner to display, controlling the border radius property.
|
|
8
|
-
*/
|
|
9
|
-
export type CornerType = "pill" | "rounded" | "sharp";
|
|
10
|
-
/**
|
|
11
|
-
* The type of message associated with a piece of content.
|
|
12
|
-
*/
|
|
13
3
|
export type ContentType = "success" | "warning" | "error" | "info" | "static";
|
|
14
|
-
/**
|
|
15
|
-
* Standard style object to apply inline styling to components.
|
|
16
|
-
*/
|
|
17
4
|
export type Style = React.CSSProperties;
|
|
18
|
-
/**
|
|
19
|
-
* Used for width and height
|
|
20
|
-
*/
|
|
21
5
|
export type SizeDimension = "full" | "fit" | "min" | "max";
|
|
22
|
-
/**
|
|
23
|
-
* Size variants used for CSS.
|
|
24
|
-
*/
|
|
25
6
|
export type SizeToken = "xxs" | "xs" | "s" | "m" | "l" | "xl" | "xxl";
|
|
26
|
-
|
|
27
|
-
* Size variants used for padding & margin
|
|
28
|
-
*/
|
|
29
|
-
type SpacingSize = "none" | "xxs" | "xs" | "s" | "m" | "l" | "xl" | "xxl";
|
|
30
|
-
/**
|
|
31
|
-
* Used for margin
|
|
32
|
-
*/
|
|
7
|
+
type SpacingSize = SizeToken | "none";
|
|
33
8
|
type AutoSize = SpacingSize | "auto";
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
9
|
+
type Color = "default" | "muted" | "inherit" | "transparent";
|
|
10
|
+
type Overflow = "hidden" | "scroll";
|
|
11
|
+
export type Vfx = {
|
|
12
|
+
/** Element's positioning */
|
|
13
|
+
pos?: "static" | "relative" | "absolute" | "fixed" | "sticky";
|
|
14
|
+
/** Direction the content spans; along the x-axis or y-axis (Equivalent to flex-direction) */
|
|
37
15
|
axis?: "x" | "y" | "-x" | "-y";
|
|
38
|
-
/** Spacing between children of the
|
|
16
|
+
/** Spacing between children of the content */
|
|
39
17
|
gap?: SpacingSize;
|
|
40
18
|
/** Alignment orthogonal to the selected axis (Equivalent to align-items) */
|
|
41
19
|
align?: "start" | "center" | "end";
|
|
42
|
-
/** How to
|
|
20
|
+
/** How to content the children (Equivalent to justify-content) */
|
|
43
21
|
justify?: "start" | "center" | "between" | "around" | "end";
|
|
44
|
-
/** Whether to allow wrapping of
|
|
22
|
+
/** Whether to allow wrapping of children */
|
|
45
23
|
wrap?: boolean;
|
|
46
|
-
/**
|
|
24
|
+
/** How to handle overflow in the container */
|
|
25
|
+
overflow?: Overflow;
|
|
26
|
+
/** How to handle overflow in the X direction */
|
|
27
|
+
overflowX?: Overflow;
|
|
28
|
+
/** How to handle overflow in the Y direction */
|
|
29
|
+
overflowY?: Overflow;
|
|
30
|
+
/** Z-index to position the element at */
|
|
31
|
+
z?: "auto" | "floating" | "nav" | "max";
|
|
32
|
+
/** Padding inside the content */
|
|
47
33
|
padding?: SpacingSize;
|
|
48
|
-
/** Horizontal padding inside the
|
|
34
|
+
/** Horizontal padding inside the content */
|
|
49
35
|
paddingX?: SpacingSize;
|
|
50
|
-
/** Vertical padding inside the
|
|
36
|
+
/** Vertical padding inside the content */
|
|
51
37
|
paddingY?: SpacingSize;
|
|
52
|
-
/** Top padding inside the
|
|
38
|
+
/** Top padding inside the content */
|
|
53
39
|
paddingTop?: SpacingSize;
|
|
54
|
-
/** Bottom padding inside the
|
|
40
|
+
/** Bottom padding inside the content */
|
|
55
41
|
paddingBottom?: SpacingSize;
|
|
56
|
-
/** Left padding inside the
|
|
42
|
+
/** Left padding inside the content */
|
|
57
43
|
paddingLeft?: SpacingSize;
|
|
58
|
-
/** Right padding inside the
|
|
44
|
+
/** Right padding inside the content */
|
|
59
45
|
paddingRight?: SpacingSize;
|
|
60
|
-
/** Margin outside the
|
|
46
|
+
/** Margin outside the content */
|
|
61
47
|
margin?: AutoSize;
|
|
62
|
-
/** Horizontal margin outside the
|
|
48
|
+
/** Horizontal margin outside the content */
|
|
63
49
|
marginX?: AutoSize;
|
|
64
|
-
/** Vertical margin outside the
|
|
50
|
+
/** Vertical margin outside the content */
|
|
65
51
|
marginY?: AutoSize;
|
|
66
|
-
/** Top margin outside the
|
|
52
|
+
/** Top margin outside the content */
|
|
67
53
|
marginTop?: AutoSize;
|
|
68
|
-
/** Bottom margin outside the
|
|
54
|
+
/** Bottom margin outside the content */
|
|
69
55
|
marginBottom?: AutoSize;
|
|
70
|
-
/** Left margin outside the
|
|
56
|
+
/** Left margin outside the content */
|
|
71
57
|
marginLeft?: AutoSize;
|
|
72
|
-
/** Right margin outside the
|
|
58
|
+
/** Right margin outside the content */
|
|
73
59
|
marginRight?: AutoSize;
|
|
74
|
-
/** Width of the
|
|
60
|
+
/** Width of the content */
|
|
75
61
|
width?: SizeDimension;
|
|
76
|
-
/** Maximum width of the
|
|
62
|
+
/** Maximum width of the content */
|
|
77
63
|
maxWidth?: SizeDimension;
|
|
78
|
-
/** Height of the
|
|
64
|
+
/** Height of the content */
|
|
79
65
|
height?: SizeDimension;
|
|
80
|
-
/** Maximum of the
|
|
66
|
+
/** Maximum of the content */
|
|
81
67
|
maxHeight?: SizeDimension;
|
|
68
|
+
/** Border radius of the content */
|
|
69
|
+
radius?: "none" | "subtle" | "rounded" | "max";
|
|
70
|
+
/** Border for all edges */
|
|
71
|
+
border?: boolean;
|
|
72
|
+
/** Border top */
|
|
73
|
+
borderTop?: boolean;
|
|
74
|
+
/** Border bottom */
|
|
75
|
+
borderBottom?: boolean;
|
|
76
|
+
/** Border left */
|
|
77
|
+
borderLeft?: boolean;
|
|
78
|
+
/** Border right */
|
|
79
|
+
borderRight?: boolean;
|
|
80
|
+
/** Border thickness */
|
|
81
|
+
borderWidth?: SpacingSize;
|
|
82
|
+
/** Border type */
|
|
83
|
+
borderStyle?: "none" | "solid" | "dotted" | "dashed";
|
|
84
|
+
/** Border color */
|
|
85
|
+
borderColor?: "default" | "primary";
|
|
86
|
+
/** Box shadow presets */
|
|
87
|
+
shadow?: "subtle" | "floating" | "sharp";
|
|
88
|
+
/** Opacity presets */
|
|
89
|
+
opacity?: "none" | "disabled" | "dim" | "full";
|
|
90
|
+
/** Font size */
|
|
91
|
+
fontSize?: SizeToken;
|
|
92
|
+
/** Font weight */
|
|
93
|
+
fontWeight?: 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9;
|
|
94
|
+
/** Text alignment */
|
|
95
|
+
textAlign?: "center" | "left" | "right";
|
|
96
|
+
/** Use italics? */
|
|
97
|
+
italics?: boolean;
|
|
98
|
+
/** Color */
|
|
99
|
+
color?: Color;
|
|
100
|
+
/** Background color */
|
|
101
|
+
backgroundColor?: Color;
|
|
82
102
|
};
|
|
83
103
|
export {};
|