aidos-ui 3.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.prettierrc +4 -0
- package/LICENSE +21 -0
- package/README.md +55 -0
- package/dist/Badge.d.ts +7 -0
- package/dist/Badge.js +22 -0
- package/dist/Badge.js.map +1 -0
- package/dist/BaseButton.d.ts +13 -0
- package/dist/BaseButton.js +22 -0
- package/dist/BaseButton.js.map +1 -0
- package/dist/BaseInput.d.ts +15 -0
- package/dist/BaseInput.js +14 -0
- package/dist/BaseInput.js.map +1 -0
- package/dist/BaseLink.d.ts +17 -0
- package/dist/BaseLink.js +28 -0
- package/dist/BaseLink.js.map +1 -0
- package/dist/BaseList.d.ts +6 -0
- package/dist/BaseList.js +14 -0
- package/dist/BaseList.js.map +1 -0
- package/dist/BaseListAddOn.d.ts +5 -0
- package/dist/BaseListAddOn.js +7 -0
- package/dist/BaseListAddOn.js.map +1 -0
- package/dist/BaseListItem.d.ts +27 -0
- package/dist/BaseListItem.js +26 -0
- package/dist/BaseListItem.js.map +1 -0
- package/dist/BaseView.d.ts +12 -0
- package/dist/BaseView.js +26 -0
- package/dist/BaseView.js.map +1 -0
- package/dist/Box.d.ts +5 -0
- package/dist/Box.js +6 -0
- package/dist/Box.js.map +1 -0
- package/dist/Button.d.ts +20 -0
- package/dist/Button.js +20 -0
- package/dist/Button.js.map +1 -0
- package/dist/Calendar.d.ts +18 -0
- package/dist/Calendar.js +57 -0
- package/dist/Calendar.js.map +1 -0
- package/dist/Card.d.ts +4 -0
- package/dist/Card.js +12 -0
- package/dist/Card.js.map +1 -0
- package/dist/Checkbox.d.ts +12 -0
- package/dist/Checkbox.js +32 -0
- package/dist/Checkbox.js.map +1 -0
- package/dist/Circle.d.ts +6 -0
- package/dist/Circle.js +12 -0
- package/dist/Circle.js.map +1 -0
- package/dist/Column.d.ts +6 -0
- package/dist/Column.js +7 -0
- package/dist/Column.js.map +1 -0
- package/dist/DarkMode.d.ts +13 -0
- package/dist/DarkMode.js +61 -0
- package/dist/DarkMode.js.map +1 -0
- package/dist/DateInput.d.ts +13 -0
- package/dist/DateInput.js +29 -0
- package/dist/DateInput.js.map +1 -0
- package/dist/DatePicker.d.ts +12 -0
- package/dist/DatePicker.js +34 -0
- package/dist/DatePicker.js.map +1 -0
- package/dist/DatetimeInput.d.ts +13 -0
- package/dist/DatetimeInput.js +31 -0
- package/dist/DatetimeInput.js.map +1 -0
- package/dist/DesignBook.d.ts +2 -0
- package/dist/DesignBook.js +55 -0
- package/dist/DesignBook.js.map +1 -0
- package/dist/Dialog.d.ts +17 -0
- package/dist/Dialog.js +86 -0
- package/dist/Dialog.js.map +1 -0
- package/dist/Dropdown.d.ts +10 -0
- package/dist/Dropdown.js +64 -0
- package/dist/Dropdown.js.map +1 -0
- package/dist/Emitter.d.ts +6 -0
- package/dist/Emitter.js +19 -0
- package/dist/Emitter.js.map +1 -0
- package/dist/FlexLayout.d.ts +11 -0
- package/dist/FlexLayout.js +18 -0
- package/dist/FlexLayout.js.map +1 -0
- package/dist/Icon.d.ts +12 -0
- package/dist/Icon.js +69 -0
- package/dist/Icon.js.map +1 -0
- package/dist/IconButton.d.ts +9 -0
- package/dist/IconButton.js +31 -0
- package/dist/IconButton.js.map +1 -0
- package/dist/IconLink.d.ts +9 -0
- package/dist/IconLink.js +31 -0
- package/dist/IconLink.js.map +1 -0
- package/dist/IconType.d.ts +1 -0
- package/dist/IconType.js +2 -0
- package/dist/IconType.js.map +1 -0
- package/dist/Interactable.d.ts +48 -0
- package/dist/Interactable.js +131 -0
- package/dist/Interactable.js.map +1 -0
- package/dist/Link.d.ts +20 -0
- package/dist/Link.js +22 -0
- package/dist/Link.js.map +1 -0
- package/dist/List.d.ts +11 -0
- package/dist/List.js +17 -0
- package/dist/List.js.map +1 -0
- package/dist/ListButtonItem.d.ts +15 -0
- package/dist/ListButtonItem.js +9 -0
- package/dist/ListButtonItem.js.map +1 -0
- package/dist/ListDivider.d.ts +2 -0
- package/dist/ListDivider.js +12 -0
- package/dist/ListDivider.js.map +1 -0
- package/dist/ListHeaderItem.d.ts +11 -0
- package/dist/ListHeaderItem.js +13 -0
- package/dist/ListHeaderItem.js.map +1 -0
- package/dist/ListItem.d.ts +10 -0
- package/dist/ListItem.js +7 -0
- package/dist/ListItem.js.map +1 -0
- package/dist/ListLinkItem.d.ts +17 -0
- package/dist/ListLinkItem.js +9 -0
- package/dist/ListLinkItem.js.map +1 -0
- package/dist/ListSpacer.d.ts +2 -0
- package/dist/ListSpacer.js +13 -0
- package/dist/ListSpacer.js.map +1 -0
- package/dist/OnVisible.d.ts +5 -0
- package/dist/OnVisible.js +28 -0
- package/dist/OnVisible.js.map +1 -0
- package/dist/Popover.d.ts +21 -0
- package/dist/Popover.js +88 -0
- package/dist/Popover.js.map +1 -0
- package/dist/ProgressBar.d.ts +8 -0
- package/dist/ProgressBar.js +42 -0
- package/dist/ProgressBar.js.map +1 -0
- package/dist/ProgressCircle.d.ts +6 -0
- package/dist/ProgressCircle.js +12 -0
- package/dist/ProgressCircle.js.map +1 -0
- package/dist/Providers.d.ts +9 -0
- package/dist/Providers.js +16 -0
- package/dist/Providers.js.map +1 -0
- package/dist/RangeInput.d.ts +14 -0
- package/dist/RangeInput.js +32 -0
- package/dist/RangeInput.js.map +1 -0
- package/dist/ResultOrError.d.ts +13 -0
- package/dist/ResultOrError.js +7 -0
- package/dist/ResultOrError.js.map +1 -0
- package/dist/RootView.d.ts +5 -0
- package/dist/RootView.js +35 -0
- package/dist/RootView.js.map +1 -0
- package/dist/Router.d.ts +2 -0
- package/dist/Router.js +37 -0
- package/dist/Router.js.map +1 -0
- package/dist/RouterState.d.ts +38 -0
- package/dist/RouterState.js +111 -0
- package/dist/RouterState.js.map +1 -0
- package/dist/Row.d.ts +6 -0
- package/dist/Row.js +7 -0
- package/dist/Row.js.map +1 -0
- package/dist/StackContext.d.ts +8 -0
- package/dist/StackContext.js +25 -0
- package/dist/StackContext.js.map +1 -0
- package/dist/StaticCheckbox.d.ts +17 -0
- package/dist/StaticCheckbox.js +48 -0
- package/dist/StaticCheckbox.js.map +1 -0
- package/dist/Storage.d.ts +12 -0
- package/dist/Storage.js +148 -0
- package/dist/Storage.js.map +1 -0
- package/dist/Stream.d.ts +9 -0
- package/dist/Stream.js +36 -0
- package/dist/Stream.js.map +1 -0
- package/dist/Sublist.d.ts +12 -0
- package/dist/Sublist.js +18 -0
- package/dist/Sublist.js.map +1 -0
- package/dist/SubmitIconInput.d.ts +9 -0
- package/dist/SubmitIconInput.js +25 -0
- package/dist/SubmitIconInput.js.map +1 -0
- package/dist/Tabs.d.ts +20 -0
- package/dist/Tabs.js +35 -0
- package/dist/Tabs.js.map +1 -0
- package/dist/Text.d.ts +25 -0
- package/dist/Text.js +50 -0
- package/dist/Text.js.map +1 -0
- package/dist/TextArea.d.ts +10 -0
- package/dist/TextArea.js +22 -0
- package/dist/TextArea.js.map +1 -0
- package/dist/TextInput.d.ts +14 -0
- package/dist/TextInput.js +52 -0
- package/dist/TextInput.js.map +1 -0
- package/dist/TextInputWithState.d.ts +10 -0
- package/dist/TextInputWithState.js +14 -0
- package/dist/TextInputWithState.js.map +1 -0
- package/dist/TextPairing.d.ts +21 -0
- package/dist/TextPairing.js +26 -0
- package/dist/TextPairing.js.map +1 -0
- package/dist/TimeInput.d.ts +15 -0
- package/dist/TimeInput.js +58 -0
- package/dist/TimeInput.js.map +1 -0
- package/dist/Tooltip.d.ts +11 -0
- package/dist/Tooltip.js +72 -0
- package/dist/Tooltip.js.map +1 -0
- package/dist/aria.d.ts +8 -0
- package/dist/aria.js +42 -0
- package/dist/aria.js.map +1 -0
- package/dist/guid.d.ts +1 -0
- package/dist/guid.js +7 -0
- package/dist/guid.js.map +1 -0
- package/dist/hash.d.ts +1 -0
- package/dist/hash.js +20 -0
- package/dist/hash.js.map +1 -0
- package/dist/index.d.ts +65 -0
- package/dist/index.js +66 -0
- package/dist/index.js.map +1 -0
- package/dist/jss.d.ts +110 -0
- package/dist/jss.js +438 -0
- package/dist/jss.js.map +1 -0
- package/dist/numberToBase.d.ts +1 -0
- package/dist/numberToBase.js +44 -0
- package/dist/numberToBase.js.map +1 -0
- package/dist/stateMachineContextFactory.d.ts +36 -0
- package/dist/stateMachineContextFactory.js +48 -0
- package/dist/stateMachineContextFactory.js.map +1 -0
- package/dist/useCookie.d.ts +9 -0
- package/dist/useCookie.js +65 -0
- package/dist/useCookie.js.map +1 -0
- package/dist/useKeyboard.d.ts +8 -0
- package/dist/useKeyboard.js +26 -0
- package/dist/useKeyboard.js.map +1 -0
- package/dist/useNavigation.d.ts +5 -0
- package/dist/useNavigation.js +79 -0
- package/dist/useNavigation.js.map +1 -0
- package/dist/usePromise.d.ts +1 -0
- package/dist/usePromise.js +12 -0
- package/dist/usePromise.js.map +1 -0
- package/dist/useRefEffect.d.ts +1 -0
- package/dist/useRefEffect.js +15 -0
- package/dist/useRefEffect.js.map +1 -0
- package/next-env.d.ts +5 -0
- package/next.config.js +21 -0
- package/package.json +40 -0
- package/scripts/publish.js +27 -0
- package/src/Badge.tsx +36 -0
- package/src/BaseButton.tsx +58 -0
- package/src/BaseInput.tsx +57 -0
- package/src/BaseLink.tsx +77 -0
- package/src/BaseList.tsx +29 -0
- package/src/BaseListAddOn.tsx +10 -0
- package/src/BaseListItem.tsx +117 -0
- package/src/BaseView.tsx +57 -0
- package/src/Box.tsx +20 -0
- package/src/Button.tsx +84 -0
- package/src/Calendar.tsx +125 -0
- package/src/Card.tsx +17 -0
- package/src/Checkbox.tsx +63 -0
- package/src/Circle.tsx +24 -0
- package/src/Column.tsx +12 -0
- package/src/DarkMode.tsx +99 -0
- package/src/DateInput.tsx +63 -0
- package/src/DatePicker.tsx +67 -0
- package/src/DatetimeInput.tsx +71 -0
- package/src/DesignBook.tsx +697 -0
- package/src/Dialog.tsx +144 -0
- package/src/Dropdown.tsx +129 -0
- package/src/Emitter.ts +26 -0
- package/src/FlexLayout.tsx +53 -0
- package/src/Icon.tsx +96 -0
- package/src/IconButton.tsx +66 -0
- package/src/IconLink.tsx +58 -0
- package/src/IconType.ts +787 -0
- package/src/Interactable.tsx +159 -0
- package/src/Link.tsx +86 -0
- package/src/List.tsx +41 -0
- package/src/ListButtonItem.tsx +69 -0
- package/src/ListDivider.tsx +13 -0
- package/src/ListHeaderItem.tsx +45 -0
- package/src/ListItem.tsx +27 -0
- package/src/ListLinkItem.tsx +76 -0
- package/src/ListSpacer.tsx +14 -0
- package/src/OnVisible.tsx +42 -0
- package/src/Popover.tsx +141 -0
- package/src/ProgressBar.tsx +63 -0
- package/src/ProgressCircle.tsx +38 -0
- package/src/Providers.tsx +33 -0
- package/src/RangeInput.tsx +82 -0
- package/src/ResultOrError.ts +15 -0
- package/src/RootView.tsx +55 -0
- package/src/Router.tsx +62 -0
- package/src/RouterState.tsx +154 -0
- package/src/Row.tsx +12 -0
- package/src/StackContext.tsx +52 -0
- package/src/StaticCheckbox.tsx +74 -0
- package/src/Storage.tsx +200 -0
- package/src/Stream.tsx +50 -0
- package/src/Sublist.tsx +62 -0
- package/src/SubmitIconInput.tsx +45 -0
- package/src/Tabs.tsx +103 -0
- package/src/Text.tsx +102 -0
- package/src/TextArea.tsx +45 -0
- package/src/TextInput.tsx +111 -0
- package/src/TextInputWithState.tsx +35 -0
- package/src/TextPairing.tsx +115 -0
- package/src/TimeInput.tsx +109 -0
- package/src/Tooltip.tsx +108 -0
- package/src/aria.ts +72 -0
- package/src/examples/ExampleDialog.tsx +28 -0
- package/src/guid.ts +7 -0
- package/src/hash.ts +21 -0
- package/src/index.ts +65 -0
- package/src/jss.tsx +607 -0
- package/src/numberToBase.ts +52 -0
- package/src/pages/Badge.mdx +30 -0
- package/src/pages/Button.mdx +57 -0
- package/src/pages/Calendar.mdx +60 -0
- package/src/pages/Checkbox.mdx +56 -0
- package/src/pages/Dialog.mdx +32 -0
- package/src/pages/FlexLayout.mdx +77 -0
- package/src/pages/Hashing.mdx +20 -0
- package/src/pages/Icon.mdx +63 -0
- package/src/pages/IconButton.mdx +144 -0
- package/src/pages/Link.mdx +57 -0
- package/src/pages/List.mdx +292 -0
- package/src/pages/ListHeader.mdx +94 -0
- package/src/pages/Popover.mdx +101 -0
- package/src/pages/ProgressBar.mdx +20 -0
- package/src/pages/ProgressCircle.mdx +35 -0
- package/src/pages/RangeInput.mdx +109 -0
- package/src/pages/Tabs.mdx +168 -0
- package/src/pages/Text.mdx +133 -0
- package/src/pages/TextInput.mdx +110 -0
- package/src/pages/TextPairing.mdx +155 -0
- package/src/pages/TimeInput.mdx +73 -0
- package/src/pages/Tooltip.mdx +28 -0
- package/src/pages/_app.tsx +561 -0
- package/src/pages/_document.tsx +30 -0
- package/src/pages/css-in-js.mdx +127 -0
- package/src/pages/index.mdx +58 -0
- package/src/pages/navigation.mdx +56 -0
- package/src/pages/prism.css +3 -0
- package/src/pages/useCookie.mdx +15 -0
- package/src/pages/useKeyboard.mdx +20 -0
- package/src/pages/useNavigation.mdx +30 -0
- package/src/pages/usePromise.mdx +15 -0
- package/src/pages/useRefEffect.mdx +49 -0
- package/src/stateMachineContextFactory.tsx +111 -0
- package/src/useCookie.tsx +89 -0
- package/src/useKeyboard.tsx +43 -0
- package/src/useNavigation.tsx +89 -0
- package/src/usePromise.tsx +18 -0
- package/src/useRefEffect.tsx +18 -0
- package/tsconfig.build.json +23 -0
- package/tsconfig.json +23 -0
package/dist/Link.js
ADDED
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import React from "react";
|
|
3
|
+
import { BaseLink } from "./BaseLink";
|
|
4
|
+
import { Text } from "./Text";
|
|
5
|
+
import { Row } from "./Row";
|
|
6
|
+
import { Icon } from "./Icon";
|
|
7
|
+
import { getGlyphColor } from "./Interactable";
|
|
8
|
+
import { cssVar } from "./jss";
|
|
9
|
+
export const Link = React.forwardRef(({ label, color, bare, disabled, icon, iconSize = "medium", iconPosition = "left", align = "center", gap = "small", justify = "center", jsStyle, size = "medium", ...otherProps }, ref) => {
|
|
10
|
+
return (_jsx(BaseLink, { ...otherProps, bare: bare, ref: ref, color: color, disabled: disabled, jsStyle: [
|
|
11
|
+
{
|
|
12
|
+
borderRadius: "var(--border-radius-m)",
|
|
13
|
+
justifyContent: "center",
|
|
14
|
+
userSelect: "none",
|
|
15
|
+
padding: cssVar("--spacing-m"),
|
|
16
|
+
display: "inline-flex",
|
|
17
|
+
textDecoration: "none",
|
|
18
|
+
},
|
|
19
|
+
jsStyle,
|
|
20
|
+
], children: _jsxs(Row, { grow: true, align: align, gap: gap, justify: justify, children: [icon && iconPosition === "left" && (_jsx(Icon, { icon: icon, size: iconSize, color: getGlyphColor(color, disabled, bare) })), _jsx(Text, { size: size, color: getGlyphColor(color, disabled, bare), children: label }), icon && iconPosition === "right" && (_jsx(Icon, { icon: icon, size: iconSize, color: getGlyphColor(color, disabled, bare) }))] }) }));
|
|
21
|
+
});
|
|
22
|
+
//# sourceMappingURL=Link.js.map
|
package/dist/Link.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Link.js","sourceRoot":"","sources":["../src/Link.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,QAAQ,EAAiB,MAAM,YAAY,CAAC;AACrD,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAE9B,OAAO,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AAC5B,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAE9B,OAAO,EAAqB,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAClE,OAAO,EAA6B,MAAM,EAAE,MAAM,OAAO,CAAC;AAgB1D,MAAM,CAAC,MAAM,IAAI,GAAG,KAAK,CAAC,UAAU,CAClC,CACE,EACE,KAAK,EACL,KAAK,EACL,IAAI,EACJ,QAAQ,EACR,IAAI,EACJ,QAAQ,GAAG,QAAQ,EACnB,YAAY,GAAG,MAAM,EACrB,KAAK,GAAG,QAAQ,EAChB,GAAG,GAAG,OAAO,EACb,OAAO,GAAG,QAAQ,EAClB,OAAO,EACP,IAAI,GAAG,QAAQ,EACf,GAAG,UAAU,EACH,EACZ,GAAkC,EAClC,EAAE;IACF,OAAO,CACL,KAAC,QAAQ,OACH,UAAU,EACd,IAAI,EAAE,IAAI,EACV,GAAG,EAAE,GAAG,EACR,KAAK,EAAE,KAAK,EACZ,QAAQ,EAAE,QAAQ,EAClB,OAAO,EAAE;YACP;gBACE,YAAY,EAAE,wBAAwB;gBACtC,cAAc,EAAE,QAAQ;gBACxB,UAAU,EAAE,MAAM;gBAClB,OAAO,EAAE,MAAM,CAAC,aAAa,CAAC;gBAC9B,OAAO,EAAE,aAAa;gBACtB,cAAc,EAAE,MAAM;aACvB;YACD,OAAO;SACR,YAED,MAAC,GAAG,IAAC,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,OAAO,aACtD,IAAI,IAAI,YAAY,KAAK,MAAM,IAAI,CAClC,KAAC,IAAI,IACH,IAAI,EAAE,IAAI,EACV,IAAI,EAAE,QAAQ,EACd,KAAK,EAAE,aAAa,CAAC,KAAK,EAAE,QAAQ,EAAE,IAAI,CAAC,GAC3C,CACH,EACD,KAAC,IAAI,IAAC,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,aAAa,CAAC,KAAK,EAAE,QAAQ,EAAE,IAAI,CAAC,YAC1D,KAAK,GACD,EACN,IAAI,IAAI,YAAY,KAAK,OAAO,IAAI,CACnC,KAAC,IAAI,IACH,IAAI,EAAE,IAAI,EACV,IAAI,EAAE,QAAQ,EACd,KAAK,EAAE,aAAa,CAAC,KAAK,EAAE,QAAQ,EAAE,IAAI,CAAC,GAC3C,CACH,IACG,GACG,CACZ,CAAC;AACJ,CAAC,CACF,CAAC"}
|
package/dist/List.d.ts
ADDED
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
import { BaseListProps } from "./BaseList";
|
|
3
|
+
interface ListProps extends BaseListProps {
|
|
4
|
+
ariaLabel: string;
|
|
5
|
+
bare?: boolean;
|
|
6
|
+
autofocus?: boolean;
|
|
7
|
+
role?: undefined;
|
|
8
|
+
navigation?: boolean;
|
|
9
|
+
}
|
|
10
|
+
export declare function List({ ariaLabel, jsStyle, autofocus, navigation, bare, ...otherProps }: ListProps): JSX.Element;
|
|
11
|
+
export {};
|
package/dist/List.js
ADDED
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { BaseList } from "./BaseList";
|
|
3
|
+
import { useNavigation } from "./useNavigation";
|
|
4
|
+
import { cssVar } from "./jss";
|
|
5
|
+
export function List({ ariaLabel, jsStyle, autofocus = false, navigation = true, bare, ...otherProps }) {
|
|
6
|
+
const rootRef = useNavigation({ autofocus, enabled: navigation });
|
|
7
|
+
return (_jsx(BaseList, { role: "grid", "aria-label": ariaLabel, ref: rootRef, jsStyle: [
|
|
8
|
+
{ overflow: "hidden" },
|
|
9
|
+
!bare && {
|
|
10
|
+
border: `1px solid ${cssVar("--divider")}`,
|
|
11
|
+
borderRadius: cssVar("--border-radius-l"),
|
|
12
|
+
backgroundColor: cssVar("--overlay-background"),
|
|
13
|
+
},
|
|
14
|
+
jsStyle,
|
|
15
|
+
], ...otherProps }));
|
|
16
|
+
}
|
|
17
|
+
//# sourceMappingURL=List.js.map
|
package/dist/List.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"List.js","sourceRoot":"","sources":["../src/List.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,QAAQ,EAAiB,MAAM,YAAY,CAAC;AACrD,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AAU/B,MAAM,UAAU,IAAI,CAAC,EACnB,SAAS,EACT,OAAO,EACP,SAAS,GAAG,KAAK,EACjB,UAAU,GAAG,IAAI,EACjB,IAAI,EACJ,GAAG,UAAU,EACH;IACV,MAAM,OAAO,GAAG,aAAa,CAAC,EAAE,SAAS,EAAE,OAAO,EAAE,UAAU,EAAE,CAAC,CAAC;IAElE,OAAO,CACL,KAAC,QAAQ,IACP,IAAI,EAAC,MAAM,gBACC,SAAS,EACrB,GAAG,EAAE,OAAO,EACZ,OAAO,EAAE;YACP,EAAE,QAAQ,EAAE,QAAQ,EAAE;YACtB,CAAC,IAAI,IAAI;gBACP,MAAM,EAAE,aAAa,MAAM,CAAC,WAAW,CAAC,EAAE;gBAC1C,YAAY,EAAE,MAAM,CAAC,mBAAmB,CAAC;gBACzC,eAAe,EAAE,MAAM,CAAC,sBAAsB,CAAC;aAChD;YACD,OAAO;SACR,KACG,UAAU,GACd,CACH,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
import { BaseListItemProps } from "./BaseListItem";
|
|
3
|
+
import { InteractableColor } from "./Interactable";
|
|
4
|
+
interface ListButtonItemProps extends BaseListItemProps {
|
|
5
|
+
color: InteractableColor;
|
|
6
|
+
onClick: () => void;
|
|
7
|
+
headline: string;
|
|
8
|
+
body?: string;
|
|
9
|
+
disabled?: boolean;
|
|
10
|
+
selected?: boolean;
|
|
11
|
+
bare?: boolean;
|
|
12
|
+
children?: void;
|
|
13
|
+
}
|
|
14
|
+
export declare const ListButtonItem: React.ForwardRefExoticComponent<Pick<ListButtonItemProps, "padding" | "style" | "body" | "slot" | "title" | "children" | "hidden" | "color" | "relative" | "justify" | "disabled" | "direction" | "translate" | "gap" | "dangerouslySetInnerHTML" | "grow" | "shrink" | "jsStyle" | "tag" | "className" | "defaultChecked" | "defaultValue" | "suppressContentEditableWarning" | "suppressHydrationWarning" | "accessKey" | "contentEditable" | "contextMenu" | "dir" | "draggable" | "id" | "lang" | "nonce" | "placeholder" | "spellCheck" | "tabIndex" | "radioGroup" | "role" | "about" | "datatype" | "inlist" | "prefix" | "property" | "resource" | "typeof" | "vocab" | "autoCapitalize" | "autoCorrect" | "autoSave" | "itemProp" | "itemScope" | "itemType" | "itemID" | "itemRef" | "results" | "security" | "unselectable" | "inputMode" | "is" | "aria-activedescendant" | "aria-atomic" | "aria-autocomplete" | "aria-busy" | "aria-checked" | "aria-colcount" | "aria-colindex" | "aria-colspan" | "aria-controls" | "aria-current" | "aria-describedby" | "aria-details" | "aria-disabled" | "aria-dropeffect" | "aria-errormessage" | "aria-expanded" | "aria-flowto" | "aria-grabbed" | "aria-haspopup" | "aria-hidden" | "aria-invalid" | "aria-keyshortcuts" | "aria-label" | "aria-labelledby" | "aria-level" | "aria-live" | "aria-modal" | "aria-multiline" | "aria-multiselectable" | "aria-orientation" | "aria-owns" | "aria-placeholder" | "aria-posinset" | "aria-pressed" | "aria-readonly" | "aria-relevant" | "aria-required" | "aria-roledescription" | "aria-rowcount" | "aria-rowindex" | "aria-rowspan" | "aria-selected" | "aria-setsize" | "aria-sort" | "aria-valuemax" | "aria-valuemin" | "aria-valuenow" | "aria-valuetext" | "onCopy" | "onCopyCapture" | "onCut" | "onCutCapture" | "onPaste" | "onPasteCapture" | "onCompositionEnd" | "onCompositionEndCapture" | "onCompositionStart" | "onCompositionStartCapture" | "onCompositionUpdate" | "onCompositionUpdateCapture" | "onFocus" | "onFocusCapture" | "onBlur" | "onBlurCapture" | "onChange" | "onChangeCapture" | "onBeforeInput" | "onBeforeInputCapture" | "onInput" | "onInputCapture" | "onReset" | "onResetCapture" | "onSubmit" | "onSubmitCapture" | "onInvalid" | "onInvalidCapture" | "onLoad" | "onLoadCapture" | "onError" | "onErrorCapture" | "onKeyDown" | "onKeyDownCapture" | "onKeyPress" | "onKeyPressCapture" | "onKeyUp" | "onKeyUpCapture" | "onAbort" | "onAbortCapture" | "onCanPlay" | "onCanPlayCapture" | "onCanPlayThrough" | "onCanPlayThroughCapture" | "onDurationChange" | "onDurationChangeCapture" | "onEmptied" | "onEmptiedCapture" | "onEncrypted" | "onEncryptedCapture" | "onEnded" | "onEndedCapture" | "onLoadedData" | "onLoadedDataCapture" | "onLoadedMetadata" | "onLoadedMetadataCapture" | "onLoadStart" | "onLoadStartCapture" | "onPause" | "onPauseCapture" | "onPlay" | "onPlayCapture" | "onPlaying" | "onPlayingCapture" | "onProgress" | "onProgressCapture" | "onRateChange" | "onRateChangeCapture" | "onResize" | "onResizeCapture" | "onSeeked" | "onSeekedCapture" | "onSeeking" | "onSeekingCapture" | "onStalled" | "onStalledCapture" | "onSuspend" | "onSuspendCapture" | "onTimeUpdate" | "onTimeUpdateCapture" | "onVolumeChange" | "onVolumeChangeCapture" | "onWaiting" | "onWaitingCapture" | "onAuxClick" | "onAuxClickCapture" | "onClick" | "onClickCapture" | "onContextMenu" | "onContextMenuCapture" | "onDoubleClick" | "onDoubleClickCapture" | "onDrag" | "onDragCapture" | "onDragEnd" | "onDragEndCapture" | "onDragEnter" | "onDragEnterCapture" | "onDragExit" | "onDragExitCapture" | "onDragLeave" | "onDragLeaveCapture" | "onDragOver" | "onDragOverCapture" | "onDragStart" | "onDragStartCapture" | "onDrop" | "onDropCapture" | "onMouseDown" | "onMouseDownCapture" | "onMouseEnter" | "onMouseLeave" | "onMouseMove" | "onMouseMoveCapture" | "onMouseOut" | "onMouseOutCapture" | "onMouseOver" | "onMouseOverCapture" | "onMouseUp" | "onMouseUpCapture" | "onSelect" | "onSelectCapture" | "onTouchCancel" | "onTouchCancelCapture" | "onTouchEnd" | "onTouchEndCapture" | "onTouchMove" | "onTouchMoveCapture" | "onTouchStart" | "onTouchStartCapture" | "onPointerDown" | "onPointerDownCapture" | "onPointerMove" | "onPointerMoveCapture" | "onPointerUp" | "onPointerUpCapture" | "onPointerCancel" | "onPointerCancelCapture" | "onPointerEnter" | "onPointerEnterCapture" | "onPointerLeave" | "onPointerLeaveCapture" | "onPointerOver" | "onPointerOverCapture" | "onPointerOut" | "onPointerOutCapture" | "onGotPointerCapture" | "onGotPointerCaptureCapture" | "onLostPointerCapture" | "onLostPointerCaptureCapture" | "onScroll" | "onScrollCapture" | "onWheel" | "onWheelCapture" | "onAnimationStart" | "onAnimationStartCapture" | "onAnimationEnd" | "onAnimationEndCapture" | "onAnimationIteration" | "onAnimationIterationCapture" | "onTransitionEnd" | "onTransitionEndCapture" | "bare" | "selected" | "align" | "headline" | "headlineColor" | "headlineSize" | "headlineAddOn" | "bodyColor" | "bodySize" | "addOn" | "addOnPosition" | "headlineBold" | "withDivider" | "outerAddOn"> & React.RefAttributes<HTMLButtonElement>>;
|
|
15
|
+
export {};
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import React from "react";
|
|
3
|
+
import { BaseListItem } from "./BaseListItem";
|
|
4
|
+
import { getGlyphColor, getInteractableListItemJSStyles, } from "./Interactable";
|
|
5
|
+
import { BaseButton } from "./BaseButton";
|
|
6
|
+
export const ListButtonItem = React.forwardRef(({ onClick, color = "secondary", disabled = false, padding = "medium", jsStyle, gap, selected, bare, ...otherProps }, ref) => {
|
|
7
|
+
return (_jsx(BaseListItem, { withDivider: !bare, disabled: disabled, padding: "none", gap: gap, headlineColor: getGlyphColor(color, disabled, true), bodyColor: getGlyphColor(color, disabled, true), selected: selected, "aria-selected": selected, bare: bare, ...otherProps, jsStyle: jsStyle, children: ({ content }) => (_jsx(BaseButton, { padding: padding, disabled: disabled, animateInteraction: false, bare: true, color: bare ? "secondary" : color, ref: ref, jsStyle: getInteractableListItemJSStyles({ bare, selected }), onClick: onClick, children: content })) }));
|
|
8
|
+
});
|
|
9
|
+
//# sourceMappingURL=ListButtonItem.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ListButtonItem.js","sourceRoot":"","sources":["../src/ListButtonItem.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,YAAY,EAAqB,MAAM,gBAAgB,CAAC;AACjE,OAAO,EAEL,aAAa,EACb,+BAA+B,GAChC,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAc1C,MAAM,CAAC,MAAM,cAAc,GAAG,KAAK,CAAC,UAAU,CAC5C,CACE,EACE,OAAO,EACP,KAAK,GAAG,WAAW,EACnB,QAAQ,GAAG,KAAK,EAChB,OAAO,GAAG,QAAQ,EAClB,OAAO,EACP,GAAG,EACH,QAAQ,EACR,IAAI,EACJ,GAAG,UAAU,EACO,EACtB,GAAkC,EAClC,EAAE;IACF,OAAO,CACL,KAAC,YAAY,IACX,WAAW,EAAE,CAAC,IAAI,EAClB,QAAQ,EAAE,QAAQ,EAClB,OAAO,EAAC,MAAM,EACd,GAAG,EAAE,GAAG,EACR,aAAa,EAAE,aAAa,CAAC,KAAK,EAAE,QAAQ,EAAE,IAAI,CAAC,EACnD,SAAS,EAAE,aAAa,CAAC,KAAK,EAAE,QAAQ,EAAE,IAAI,CAAC,EAC/C,QAAQ,EAAE,QAAQ,mBACH,QAAQ,EACvB,IAAI,EAAE,IAAI,KACN,UAAU,EACd,OAAO,EAAE,OAAO,YAEf,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,CAChB,KAAC,UAAU,IACT,OAAO,EAAE,OAAO,EAChB,QAAQ,EAAE,QAAQ,EAClB,kBAAkB,EAAE,KAAK,EACzB,IAAI,EAAE,IAAI,EACV,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,KAAK,EACjC,GAAG,EAAE,GAAG,EACR,OAAO,EAAE,+BAA+B,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,EAC5D,OAAO,EAAE,OAAO,YAEf,OAAO,GACG,CACd,GACY,CAChB,CAAC;AACJ,CAAC,CACF,CAAC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { BaseView } from "./BaseView";
|
|
3
|
+
const jsStyles = {
|
|
4
|
+
root: {
|
|
5
|
+
width: "100%",
|
|
6
|
+
borderBottom: "1px solid var(--divider)",
|
|
7
|
+
},
|
|
8
|
+
};
|
|
9
|
+
export function ListDivider() {
|
|
10
|
+
return _jsx(BaseView, { jsStyle: jsStyles.root });
|
|
11
|
+
}
|
|
12
|
+
//# sourceMappingURL=ListDivider.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ListDivider.js","sourceRoot":"","sources":["../src/ListDivider.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAEtC,MAAM,QAAQ,GAAG;IACf,IAAI,EAAE;QACJ,KAAK,EAAE,MAAM;QACb,YAAY,EAAE,0BAA0B;KACzC;CACF,CAAC;AAEF,MAAM,UAAU,WAAW;IACzB,OAAO,KAAC,QAAQ,IAAC,OAAO,EAAE,QAAQ,CAAC,IAAI,GAAI,CAAC;AAC9C,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { ReactNode } from "react";
|
|
2
|
+
import { Position } from "./jss";
|
|
3
|
+
export declare function ListHeaderItem({ bare, highlight, headline, body, withDivider, addOn, addOnPosition, }: {
|
|
4
|
+
bare?: boolean;
|
|
5
|
+
highlight?: boolean;
|
|
6
|
+
headline: string;
|
|
7
|
+
body?: string;
|
|
8
|
+
withDivider?: boolean;
|
|
9
|
+
addOn?: ReactNode;
|
|
10
|
+
addOnPosition?: Position;
|
|
11
|
+
}): JSX.Element;
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { BaseListItem } from "./BaseListItem";
|
|
3
|
+
import { cssVar } from "./jss";
|
|
4
|
+
export function ListHeaderItem({ bare, highlight, headline, body, withDivider, addOn, addOnPosition, }) {
|
|
5
|
+
return (_jsx(BaseListItem, { bare: bare, headline: headline, headlineColor: highlight ? (bare ? "highlight" : "light") : "primary", headlineBold: true, body: body, addOn: addOn, addOnPosition: addOnPosition, withDivider: bare ? false : withDivider, jsStyle: bare
|
|
6
|
+
? null
|
|
7
|
+
: {
|
|
8
|
+
backgroundColor: highlight
|
|
9
|
+
? cssVar("--highlight")
|
|
10
|
+
: cssVar("--secondary-background"),
|
|
11
|
+
}, children: ({ content }) => content }));
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=ListHeaderItem.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ListHeaderItem.js","sourceRoot":"","sources":["../src/ListHeaderItem.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAY,MAAM,EAAE,MAAM,OAAO,CAAC;AAEzC,MAAM,UAAU,cAAc,CAAC,EAC7B,IAAI,EACJ,SAAS,EACT,QAAQ,EACR,IAAI,EACJ,WAAW,EACX,KAAK,EACL,aAAa,GASd;IACC,OAAO,CACL,KAAC,YAAY,IACX,IAAI,EAAE,IAAI,EACV,QAAQ,EAAE,QAAQ,EAClB,aAAa,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,EACrE,YAAY,EAAE,IAAI,EAClB,IAAI,EAAE,IAAI,EACV,KAAK,EAAE,KAAK,EACZ,aAAa,EAAE,aAAa,EAC5B,WAAW,EAAE,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,WAAW,EACvC,OAAO,EACL,IAAI;YACF,CAAC,CAAC,IAAI;YACN,CAAC,CAAC;gBACE,eAAe,EAAE,SAAS;oBACxB,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC;oBACvB,CAAC,CAAC,MAAM,CAAC,wBAAwB,CAAC;aACrC,YAGN,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,OAAO,GACZ,CAChB,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
import { BaseListItemProps } from "./BaseListItem";
|
|
3
|
+
interface ListItemProps extends BaseListItemProps {
|
|
4
|
+
headline: string;
|
|
5
|
+
body?: string;
|
|
6
|
+
bare?: boolean;
|
|
7
|
+
children?: void;
|
|
8
|
+
}
|
|
9
|
+
export declare const ListItem: React.ForwardRefExoticComponent<Pick<ListItemProps, "padding" | "style" | "body" | "slot" | "title" | "children" | "hidden" | "color" | "relative" | "justify" | "disabled" | "direction" | "translate" | "gap" | "dangerouslySetInnerHTML" | "grow" | "shrink" | "jsStyle" | "tag" | "className" | "defaultChecked" | "defaultValue" | "suppressContentEditableWarning" | "suppressHydrationWarning" | "accessKey" | "contentEditable" | "contextMenu" | "dir" | "draggable" | "id" | "lang" | "nonce" | "placeholder" | "spellCheck" | "tabIndex" | "radioGroup" | "role" | "about" | "datatype" | "inlist" | "prefix" | "property" | "resource" | "typeof" | "vocab" | "autoCapitalize" | "autoCorrect" | "autoSave" | "itemProp" | "itemScope" | "itemType" | "itemID" | "itemRef" | "results" | "security" | "unselectable" | "inputMode" | "is" | "aria-activedescendant" | "aria-atomic" | "aria-autocomplete" | "aria-busy" | "aria-checked" | "aria-colcount" | "aria-colindex" | "aria-colspan" | "aria-controls" | "aria-current" | "aria-describedby" | "aria-details" | "aria-disabled" | "aria-dropeffect" | "aria-errormessage" | "aria-expanded" | "aria-flowto" | "aria-grabbed" | "aria-haspopup" | "aria-hidden" | "aria-invalid" | "aria-keyshortcuts" | "aria-label" | "aria-labelledby" | "aria-level" | "aria-live" | "aria-modal" | "aria-multiline" | "aria-multiselectable" | "aria-orientation" | "aria-owns" | "aria-placeholder" | "aria-posinset" | "aria-pressed" | "aria-readonly" | "aria-relevant" | "aria-required" | "aria-roledescription" | "aria-rowcount" | "aria-rowindex" | "aria-rowspan" | "aria-selected" | "aria-setsize" | "aria-sort" | "aria-valuemax" | "aria-valuemin" | "aria-valuenow" | "aria-valuetext" | "onCopy" | "onCopyCapture" | "onCut" | "onCutCapture" | "onPaste" | "onPasteCapture" | "onCompositionEnd" | "onCompositionEndCapture" | "onCompositionStart" | "onCompositionStartCapture" | "onCompositionUpdate" | "onCompositionUpdateCapture" | "onFocus" | "onFocusCapture" | "onBlur" | "onBlurCapture" | "onChange" | "onChangeCapture" | "onBeforeInput" | "onBeforeInputCapture" | "onInput" | "onInputCapture" | "onReset" | "onResetCapture" | "onSubmit" | "onSubmitCapture" | "onInvalid" | "onInvalidCapture" | "onLoad" | "onLoadCapture" | "onError" | "onErrorCapture" | "onKeyDown" | "onKeyDownCapture" | "onKeyPress" | "onKeyPressCapture" | "onKeyUp" | "onKeyUpCapture" | "onAbort" | "onAbortCapture" | "onCanPlay" | "onCanPlayCapture" | "onCanPlayThrough" | "onCanPlayThroughCapture" | "onDurationChange" | "onDurationChangeCapture" | "onEmptied" | "onEmptiedCapture" | "onEncrypted" | "onEncryptedCapture" | "onEnded" | "onEndedCapture" | "onLoadedData" | "onLoadedDataCapture" | "onLoadedMetadata" | "onLoadedMetadataCapture" | "onLoadStart" | "onLoadStartCapture" | "onPause" | "onPauseCapture" | "onPlay" | "onPlayCapture" | "onPlaying" | "onPlayingCapture" | "onProgress" | "onProgressCapture" | "onRateChange" | "onRateChangeCapture" | "onResize" | "onResizeCapture" | "onSeeked" | "onSeekedCapture" | "onSeeking" | "onSeekingCapture" | "onStalled" | "onStalledCapture" | "onSuspend" | "onSuspendCapture" | "onTimeUpdate" | "onTimeUpdateCapture" | "onVolumeChange" | "onVolumeChangeCapture" | "onWaiting" | "onWaitingCapture" | "onAuxClick" | "onAuxClickCapture" | "onClick" | "onClickCapture" | "onContextMenu" | "onContextMenuCapture" | "onDoubleClick" | "onDoubleClickCapture" | "onDrag" | "onDragCapture" | "onDragEnd" | "onDragEndCapture" | "onDragEnter" | "onDragEnterCapture" | "onDragExit" | "onDragExitCapture" | "onDragLeave" | "onDragLeaveCapture" | "onDragOver" | "onDragOverCapture" | "onDragStart" | "onDragStartCapture" | "onDrop" | "onDropCapture" | "onMouseDown" | "onMouseDownCapture" | "onMouseEnter" | "onMouseLeave" | "onMouseMove" | "onMouseMoveCapture" | "onMouseOut" | "onMouseOutCapture" | "onMouseOver" | "onMouseOverCapture" | "onMouseUp" | "onMouseUpCapture" | "onSelect" | "onSelectCapture" | "onTouchCancel" | "onTouchCancelCapture" | "onTouchEnd" | "onTouchEndCapture" | "onTouchMove" | "onTouchMoveCapture" | "onTouchStart" | "onTouchStartCapture" | "onPointerDown" | "onPointerDownCapture" | "onPointerMove" | "onPointerMoveCapture" | "onPointerUp" | "onPointerUpCapture" | "onPointerCancel" | "onPointerCancelCapture" | "onPointerEnter" | "onPointerEnterCapture" | "onPointerLeave" | "onPointerLeaveCapture" | "onPointerOver" | "onPointerOverCapture" | "onPointerOut" | "onPointerOutCapture" | "onGotPointerCapture" | "onGotPointerCaptureCapture" | "onLostPointerCapture" | "onLostPointerCaptureCapture" | "onScroll" | "onScrollCapture" | "onWheel" | "onWheelCapture" | "onAnimationStart" | "onAnimationStartCapture" | "onAnimationEnd" | "onAnimationEndCapture" | "onAnimationIteration" | "onAnimationIterationCapture" | "onTransitionEnd" | "onTransitionEndCapture" | "bare" | "selected" | "align" | "headline" | "headlineColor" | "headlineSize" | "headlineAddOn" | "bodyColor" | "bodySize" | "addOn" | "addOnPosition" | "headlineBold" | "withDivider" | "outerAddOn"> & React.RefAttributes<HTMLLIElement>>;
|
|
10
|
+
export {};
|
package/dist/ListItem.js
ADDED
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import React from "react";
|
|
3
|
+
import { BaseListItem } from "./BaseListItem";
|
|
4
|
+
export const ListItem = React.forwardRef((props, ref) => {
|
|
5
|
+
return (_jsx(BaseListItem, { withDivider: !props.bare, ...props, jsStyle: props.jsStyle, ref: ref, children: ({ content }) => content }));
|
|
6
|
+
});
|
|
7
|
+
//# sourceMappingURL=ListItem.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ListItem.js","sourceRoot":"","sources":["../src/ListItem.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,YAAY,EAAqB,MAAM,gBAAgB,CAAC;AAWjE,MAAM,CAAC,MAAM,QAAQ,GAAG,KAAK,CAAC,UAAU,CACtC,CAAC,KAAoB,EAAE,GAA8B,EAAE,EAAE;IACvD,OAAO,CACL,KAAC,YAAY,IACX,WAAW,EAAE,CAAC,KAAK,CAAC,IAAI,KACpB,KAAK,EACT,OAAO,EAAE,KAAK,CAAC,OAAO,EACtB,GAAG,EAAE,GAAG,YAEP,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,OAAO,GACZ,CAChB,CAAC;AACJ,CAAC,CACF,CAAC"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
import { BaseListItemProps } from "./BaseListItem";
|
|
3
|
+
import { InteractableColor } from "./Interactable";
|
|
4
|
+
interface ListLinkItemProps extends BaseListItemProps {
|
|
5
|
+
color?: InteractableColor;
|
|
6
|
+
children?: void;
|
|
7
|
+
onClick?: () => void;
|
|
8
|
+
href: string;
|
|
9
|
+
headline: string;
|
|
10
|
+
body?: string;
|
|
11
|
+
disabled?: boolean;
|
|
12
|
+
selected?: boolean;
|
|
13
|
+
bare?: boolean;
|
|
14
|
+
target?: string;
|
|
15
|
+
}
|
|
16
|
+
export declare const ListLinkItem: React.ForwardRefExoticComponent<Pick<ListLinkItemProps, "padding" | "style" | "body" | "slot" | "title" | "children" | "hidden" | "color" | "relative" | "justify" | "disabled" | "direction" | "translate" | "gap" | "dangerouslySetInnerHTML" | "grow" | "shrink" | "jsStyle" | "tag" | "className" | "defaultChecked" | "defaultValue" | "suppressContentEditableWarning" | "suppressHydrationWarning" | "accessKey" | "contentEditable" | "contextMenu" | "dir" | "draggable" | "id" | "lang" | "nonce" | "placeholder" | "spellCheck" | "tabIndex" | "radioGroup" | "role" | "about" | "datatype" | "inlist" | "prefix" | "property" | "resource" | "typeof" | "vocab" | "autoCapitalize" | "autoCorrect" | "autoSave" | "itemProp" | "itemScope" | "itemType" | "itemID" | "itemRef" | "results" | "security" | "unselectable" | "inputMode" | "is" | "aria-activedescendant" | "aria-atomic" | "aria-autocomplete" | "aria-busy" | "aria-checked" | "aria-colcount" | "aria-colindex" | "aria-colspan" | "aria-controls" | "aria-current" | "aria-describedby" | "aria-details" | "aria-disabled" | "aria-dropeffect" | "aria-errormessage" | "aria-expanded" | "aria-flowto" | "aria-grabbed" | "aria-haspopup" | "aria-hidden" | "aria-invalid" | "aria-keyshortcuts" | "aria-label" | "aria-labelledby" | "aria-level" | "aria-live" | "aria-modal" | "aria-multiline" | "aria-multiselectable" | "aria-orientation" | "aria-owns" | "aria-placeholder" | "aria-posinset" | "aria-pressed" | "aria-readonly" | "aria-relevant" | "aria-required" | "aria-roledescription" | "aria-rowcount" | "aria-rowindex" | "aria-rowspan" | "aria-selected" | "aria-setsize" | "aria-sort" | "aria-valuemax" | "aria-valuemin" | "aria-valuenow" | "aria-valuetext" | "onCopy" | "onCopyCapture" | "onCut" | "onCutCapture" | "onPaste" | "onPasteCapture" | "onCompositionEnd" | "onCompositionEndCapture" | "onCompositionStart" | "onCompositionStartCapture" | "onCompositionUpdate" | "onCompositionUpdateCapture" | "onFocus" | "onFocusCapture" | "onBlur" | "onBlurCapture" | "onChange" | "onChangeCapture" | "onBeforeInput" | "onBeforeInputCapture" | "onInput" | "onInputCapture" | "onReset" | "onResetCapture" | "onSubmit" | "onSubmitCapture" | "onInvalid" | "onInvalidCapture" | "onLoad" | "onLoadCapture" | "onError" | "onErrorCapture" | "onKeyDown" | "onKeyDownCapture" | "onKeyPress" | "onKeyPressCapture" | "onKeyUp" | "onKeyUpCapture" | "onAbort" | "onAbortCapture" | "onCanPlay" | "onCanPlayCapture" | "onCanPlayThrough" | "onCanPlayThroughCapture" | "onDurationChange" | "onDurationChangeCapture" | "onEmptied" | "onEmptiedCapture" | "onEncrypted" | "onEncryptedCapture" | "onEnded" | "onEndedCapture" | "onLoadedData" | "onLoadedDataCapture" | "onLoadedMetadata" | "onLoadedMetadataCapture" | "onLoadStart" | "onLoadStartCapture" | "onPause" | "onPauseCapture" | "onPlay" | "onPlayCapture" | "onPlaying" | "onPlayingCapture" | "onProgress" | "onProgressCapture" | "onRateChange" | "onRateChangeCapture" | "onResize" | "onResizeCapture" | "onSeeked" | "onSeekedCapture" | "onSeeking" | "onSeekingCapture" | "onStalled" | "onStalledCapture" | "onSuspend" | "onSuspendCapture" | "onTimeUpdate" | "onTimeUpdateCapture" | "onVolumeChange" | "onVolumeChangeCapture" | "onWaiting" | "onWaitingCapture" | "onAuxClick" | "onAuxClickCapture" | "onClick" | "onClickCapture" | "onContextMenu" | "onContextMenuCapture" | "onDoubleClick" | "onDoubleClickCapture" | "onDrag" | "onDragCapture" | "onDragEnd" | "onDragEndCapture" | "onDragEnter" | "onDragEnterCapture" | "onDragExit" | "onDragExitCapture" | "onDragLeave" | "onDragLeaveCapture" | "onDragOver" | "onDragOverCapture" | "onDragStart" | "onDragStartCapture" | "onDrop" | "onDropCapture" | "onMouseDown" | "onMouseDownCapture" | "onMouseEnter" | "onMouseLeave" | "onMouseMove" | "onMouseMoveCapture" | "onMouseOut" | "onMouseOutCapture" | "onMouseOver" | "onMouseOverCapture" | "onMouseUp" | "onMouseUpCapture" | "onSelect" | "onSelectCapture" | "onTouchCancel" | "onTouchCancelCapture" | "onTouchEnd" | "onTouchEndCapture" | "onTouchMove" | "onTouchMoveCapture" | "onTouchStart" | "onTouchStartCapture" | "onPointerDown" | "onPointerDownCapture" | "onPointerMove" | "onPointerMoveCapture" | "onPointerUp" | "onPointerUpCapture" | "onPointerCancel" | "onPointerCancelCapture" | "onPointerEnter" | "onPointerEnterCapture" | "onPointerLeave" | "onPointerLeaveCapture" | "onPointerOver" | "onPointerOverCapture" | "onPointerOut" | "onPointerOutCapture" | "onGotPointerCapture" | "onGotPointerCaptureCapture" | "onLostPointerCapture" | "onLostPointerCaptureCapture" | "onScroll" | "onScrollCapture" | "onWheel" | "onWheelCapture" | "onAnimationStart" | "onAnimationStartCapture" | "onAnimationEnd" | "onAnimationEndCapture" | "onAnimationIteration" | "onAnimationIterationCapture" | "onTransitionEnd" | "onTransitionEndCapture" | "bare" | "selected" | "align" | "href" | "target" | "headline" | "headlineColor" | "headlineSize" | "headlineAddOn" | "bodyColor" | "bodySize" | "addOn" | "addOnPosition" | "headlineBold" | "withDivider" | "outerAddOn"> & React.RefAttributes<HTMLAnchorElement>>;
|
|
17
|
+
export {};
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import React from "react";
|
|
3
|
+
import { BaseListItem } from "./BaseListItem";
|
|
4
|
+
import { getGlyphColor, getInteractableListItemJSStyles, } from "./Interactable";
|
|
5
|
+
import { BaseLink } from "./BaseLink";
|
|
6
|
+
export const ListLinkItem = React.forwardRef(({ onClick, href, disabled = false, padding = "medium", jsStyle, gap, selected, bare, color = "secondary", target, ...otherProps }, ref) => {
|
|
7
|
+
return (_jsx(BaseListItem, { withDivider: !bare, disabled: disabled, "aria-selected": selected, padding: "none", gap: gap, headlineColor: getGlyphColor(color, disabled, true), bodyColor: getGlyphColor(color, disabled, true), selected: selected, bare: bare, ...otherProps, jsStyle: jsStyle, children: ({ content }) => (_jsx(BaseLink, { target: target, padding: padding, "aria-current": selected ? "page" : undefined, disabled: disabled, animateInteraction: false, bare: true, color: color, href: href, ref: ref, jsStyle: getInteractableListItemJSStyles({ bare, selected }), onClick: onClick, children: content })) }));
|
|
8
|
+
});
|
|
9
|
+
//# sourceMappingURL=ListLinkItem.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ListLinkItem.js","sourceRoot":"","sources":["../src/ListLinkItem.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,YAAY,EAAqB,MAAM,gBAAgB,CAAC;AACjE,OAAO,EAEL,aAAa,EACb,+BAA+B,GAChC,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAgBtC,MAAM,CAAC,MAAM,YAAY,GAAG,KAAK,CAAC,UAAU,CAC1C,CACE,EACE,OAAO,EACP,IAAI,EACJ,QAAQ,GAAG,KAAK,EAChB,OAAO,GAAG,QAAQ,EAClB,OAAO,EACP,GAAG,EACH,QAAQ,EACR,IAAI,EACJ,KAAK,GAAG,WAAW,EACnB,MAAM,EACN,GAAG,UAAU,EACK,EACpB,GAAkC,EAClC,EAAE;IACF,OAAO,CACL,KAAC,YAAY,IACX,WAAW,EAAE,CAAC,IAAI,EAClB,QAAQ,EAAE,QAAQ,mBACH,QAAQ,EACvB,OAAO,EAAC,MAAM,EACd,GAAG,EAAE,GAAG,EACR,aAAa,EAAE,aAAa,CAAC,KAAK,EAAE,QAAQ,EAAE,IAAI,CAAC,EACnD,SAAS,EAAE,aAAa,CAAC,KAAK,EAAE,QAAQ,EAAE,IAAI,CAAC,EAC/C,QAAQ,EAAE,QAAQ,EAClB,IAAI,EAAE,IAAI,KACN,UAAU,EACd,OAAO,EAAE,OAAO,YAEf,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,CAChB,KAAC,QAAQ,IACP,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,OAAO,kBACF,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,EAC3C,QAAQ,EAAE,QAAQ,EAClB,kBAAkB,EAAE,KAAK,EACzB,IAAI,EAAE,IAAI,EACV,KAAK,EAAE,KAAK,EACZ,IAAI,EAAE,IAAI,EACV,GAAG,EAAE,GAAG,EACR,OAAO,EAAE,+BAA+B,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,EAC5D,OAAO,EAAE,OAAO,YAEf,OAAO,GACC,CACZ,GACY,CAChB,CAAC;AACJ,CAAC,CACF,CAAC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { BaseView } from "./BaseView";
|
|
3
|
+
const jsStyles = {
|
|
4
|
+
root: {
|
|
5
|
+
height: "var(--spacing-xl)",
|
|
6
|
+
backgroundColor: "var(--secondary-background)",
|
|
7
|
+
width: "100%",
|
|
8
|
+
},
|
|
9
|
+
};
|
|
10
|
+
export function ListSpacer() {
|
|
11
|
+
return _jsx(BaseView, { jsStyle: jsStyles.root });
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=ListSpacer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ListSpacer.js","sourceRoot":"","sources":["../src/ListSpacer.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAEtC,MAAM,QAAQ,GAAG;IACf,IAAI,EAAE;QACJ,MAAM,EAAE,mBAAmB;QAC3B,eAAe,EAAE,6BAA6B;QAC9C,KAAK,EAAE,MAAM;KACd;CACF,CAAC;AAEF,MAAM,UAAU,UAAU;IACxB,OAAO,KAAC,QAAQ,IAAC,OAAO,EAAE,QAAQ,CAAC,IAAI,GAAI,CAAC;AAC9C,CAAC"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import React, { ReactElement } from "react";
|
|
2
|
+
export declare function OnVisible({ children, onVisible, }: {
|
|
3
|
+
children: (refCallback: React.RefCallback<HTMLElement>) => ReactElement;
|
|
4
|
+
onVisible: () => void;
|
|
5
|
+
}): React.ReactElement<any, string | React.JSXElementConstructor<any>>;
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { useRef, useCallback } from "react";
|
|
2
|
+
export function OnVisible({ children, onVisible, }) {
|
|
3
|
+
const intersectionObserverRef = useRef(null);
|
|
4
|
+
const refCallback = useCallback((element) => {
|
|
5
|
+
if (element == null) {
|
|
6
|
+
return;
|
|
7
|
+
}
|
|
8
|
+
const intersectionObserver = new IntersectionObserver((entries) => {
|
|
9
|
+
entries.forEach((entry) => {
|
|
10
|
+
if (entry.isIntersecting || entry.intersectionRatio > 0) {
|
|
11
|
+
onVisible();
|
|
12
|
+
}
|
|
13
|
+
});
|
|
14
|
+
}, {
|
|
15
|
+
root: null,
|
|
16
|
+
rootMargin: "0px",
|
|
17
|
+
});
|
|
18
|
+
intersectionObserverRef.current = intersectionObserver;
|
|
19
|
+
intersectionObserver.observe(element);
|
|
20
|
+
return () => {
|
|
21
|
+
intersectionObserver.unobserve(element);
|
|
22
|
+
intersectionObserverRef.current = null;
|
|
23
|
+
};
|
|
24
|
+
// eslint-disable-next-line
|
|
25
|
+
}, []);
|
|
26
|
+
return children(refCallback);
|
|
27
|
+
}
|
|
28
|
+
//# sourceMappingURL=OnVisible.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"OnVisible.js","sourceRoot":"","sources":["../src/OnVisible.tsx"],"names":[],"mappings":"AAAA,OAAc,EAAE,MAAM,EAAE,WAAW,EAAgB,MAAM,OAAO,CAAC;AAEjE,MAAM,UAAU,SAAS,CAAC,EACxB,QAAQ,EACR,SAAS,GAIV;IACC,MAAM,uBAAuB,GAAG,MAAM,CAA8B,IAAI,CAAC,CAAC;IAE1E,MAAM,WAAW,GAAG,WAAW,CAAC,CAAC,OAAO,EAAE,EAAE;QAC1C,IAAI,OAAO,IAAI,IAAI,EAAE;YACnB,OAAO;SACR;QAED,MAAM,oBAAoB,GAAG,IAAI,oBAAoB,CACnD,CAAC,OAAO,EAAE,EAAE;YACV,OAAO,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;gBACxB,IAAI,KAAK,CAAC,cAAc,IAAI,KAAK,CAAC,iBAAiB,GAAG,CAAC,EAAE;oBACvD,SAAS,EAAE,CAAC;iBACb;YACH,CAAC,CAAC,CAAC;QACL,CAAC,EACD;YACE,IAAI,EAAE,IAAI;YACV,UAAU,EAAE,KAAK;SAClB,CACF,CAAC;QAEF,uBAAuB,CAAC,OAAO,GAAG,oBAAoB,CAAC;QACvD,oBAAoB,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QAEtC,OAAO,GAAG,EAAE;YACV,oBAAoB,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;YACxC,uBAAuB,CAAC,OAAO,GAAG,IAAI,CAAC;QACzC,CAAC,CAAC;QACF,2BAA2B;IAC7B,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,OAAO,QAAQ,CAAC,WAAW,CAAC,CAAC;AAC/B,CAAC"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
import { JSStyle } from "./jss";
|
|
3
|
+
export declare function Popover({ children, close }: {
|
|
4
|
+
children: any;
|
|
5
|
+
close: any;
|
|
6
|
+
}): JSX.Element;
|
|
7
|
+
interface PopoverTriggerProps<Input> {
|
|
8
|
+
PopoverComponent: (props: {
|
|
9
|
+
close: () => void;
|
|
10
|
+
} & Input) => JSX.Element;
|
|
11
|
+
jsStyle?: JSStyle;
|
|
12
|
+
className?: undefined;
|
|
13
|
+
grow?: boolean;
|
|
14
|
+
shrink?: boolean;
|
|
15
|
+
tag?: keyof HTMLElementTagNameMap;
|
|
16
|
+
children: (props: {
|
|
17
|
+
toggle: (input: Input) => void;
|
|
18
|
+
}) => JSX.Element;
|
|
19
|
+
}
|
|
20
|
+
export declare function PopoverTrigger<Input>({ PopoverComponent, jsStyle, grow, shrink, tag, children, }: PopoverTriggerProps<Input>): JSX.Element;
|
|
21
|
+
export {};
|
package/dist/Popover.js
ADDED
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { useRef, useState } from "react";
|
|
3
|
+
import { queryFocusables } from "./aria";
|
|
4
|
+
import { BaseView } from "./BaseView";
|
|
5
|
+
import { useRefEffect } from "./useRefEffect";
|
|
6
|
+
import { jss } from "./jss";
|
|
7
|
+
const jsStyles = {
|
|
8
|
+
popover: {
|
|
9
|
+
padding: 0,
|
|
10
|
+
zIndex: 1,
|
|
11
|
+
backgroundColor: "var(--primary-background)",
|
|
12
|
+
borderRadius: "var(--border-radius-m)",
|
|
13
|
+
border: "1px solid var(--divider)",
|
|
14
|
+
overflow: "hidden",
|
|
15
|
+
},
|
|
16
|
+
};
|
|
17
|
+
export function Popover({ children, close }) {
|
|
18
|
+
const activeElementRef = useRef(null);
|
|
19
|
+
const focusTrapRoot = useRefEffect((root) => {
|
|
20
|
+
activeElementRef.current = document.activeElement;
|
|
21
|
+
const [element] = queryFocusables(root);
|
|
22
|
+
element ? element.focus() : root.focus();
|
|
23
|
+
const keydown = (e) => {
|
|
24
|
+
if (e.key === "Escape") {
|
|
25
|
+
close();
|
|
26
|
+
}
|
|
27
|
+
else if (e.key === "Tab") {
|
|
28
|
+
const focusables = queryFocusables(root).filter((element) => element.tabIndex !== -1);
|
|
29
|
+
if (focusables.length === 0) {
|
|
30
|
+
e.stopPropagation();
|
|
31
|
+
e.preventDefault();
|
|
32
|
+
}
|
|
33
|
+
const focusedIndex = focusables.findIndex((x) => x === document.activeElement);
|
|
34
|
+
if (focusables.length === 0) {
|
|
35
|
+
e.stopPropagation();
|
|
36
|
+
e.preventDefault();
|
|
37
|
+
}
|
|
38
|
+
else if (focusedIndex === focusables.length - 1) {
|
|
39
|
+
// Cycle back to the first element
|
|
40
|
+
focusables[0].focus();
|
|
41
|
+
e.stopPropagation();
|
|
42
|
+
e.preventDefault();
|
|
43
|
+
}
|
|
44
|
+
else {
|
|
45
|
+
// Just do the usual thing
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
};
|
|
49
|
+
const click = () => {
|
|
50
|
+
close();
|
|
51
|
+
};
|
|
52
|
+
// This is needed so that the trigger click is not captured immediatly, which would close the popover as it opens
|
|
53
|
+
setTimeout(() => {
|
|
54
|
+
window.addEventListener("keydown", keydown);
|
|
55
|
+
window.addEventListener("click", click);
|
|
56
|
+
}, 0);
|
|
57
|
+
return () => {
|
|
58
|
+
activeElementRef.current && activeElementRef.current.focus();
|
|
59
|
+
window.removeEventListener("keydown", keydown);
|
|
60
|
+
window.removeEventListener("click", click);
|
|
61
|
+
};
|
|
62
|
+
});
|
|
63
|
+
return _jsx(BaseView, { ref: focusTrapRoot, children: children });
|
|
64
|
+
}
|
|
65
|
+
export function PopoverTrigger({ PopoverComponent, jsStyle, grow, shrink, tag, children, }) {
|
|
66
|
+
const [popover, setPopover] = useState(null);
|
|
67
|
+
const dialogRef = useRef(null);
|
|
68
|
+
const toggle = (input) => {
|
|
69
|
+
if (popover == null) {
|
|
70
|
+
dialogRef && dialogRef.current.show();
|
|
71
|
+
setPopover(_jsx(PopoverComponent, { ...input, close: () => {
|
|
72
|
+
dialogRef && dialogRef.current.close();
|
|
73
|
+
} }));
|
|
74
|
+
}
|
|
75
|
+
else {
|
|
76
|
+
dialogRef && dialogRef.current.close();
|
|
77
|
+
}
|
|
78
|
+
};
|
|
79
|
+
return (_jsxs(BaseView, { grow: grow, shrink: shrink, tag: tag, relative: true, jsStyle: [jsStyle, { position: "relative", display: "inline-block" }], children: [children({ toggle }), _jsx("dialog", { ref: (ref) => {
|
|
80
|
+
dialogRef.current = ref;
|
|
81
|
+
}, className: jss(jsStyles.popover), onClose: () => {
|
|
82
|
+
setPopover(null);
|
|
83
|
+
}, onClick: (e) => {
|
|
84
|
+
e.preventDefault();
|
|
85
|
+
e.stopPropagation();
|
|
86
|
+
}, children: popover })] }));
|
|
87
|
+
}
|
|
88
|
+
//# sourceMappingURL=Popover.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Popover.js","sourceRoot":"","sources":["../src/Popover.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { BaseView } from "./BaseView";
|
|
3
|
+
import { getBackground } from "./jss";
|
|
4
|
+
const jsStyles = {
|
|
5
|
+
root: {
|
|
6
|
+
width: "100%",
|
|
7
|
+
display: "flex",
|
|
8
|
+
position: "relative",
|
|
9
|
+
backgroundColor: "var(--primary-background)",
|
|
10
|
+
borderRadius: "var(--border-radius-s)",
|
|
11
|
+
border: "1px solid var(--divider)",
|
|
12
|
+
overflow: "hidden",
|
|
13
|
+
},
|
|
14
|
+
fill: {
|
|
15
|
+
borderRadius: "var(--border-radius-s)",
|
|
16
|
+
position: "absolute",
|
|
17
|
+
transformOrigin: "center left",
|
|
18
|
+
top: 0,
|
|
19
|
+
bottom: 0,
|
|
20
|
+
left: 0,
|
|
21
|
+
right: 0,
|
|
22
|
+
},
|
|
23
|
+
};
|
|
24
|
+
const sizes = {
|
|
25
|
+
xsmall: 4,
|
|
26
|
+
small: 8,
|
|
27
|
+
medium: 12,
|
|
28
|
+
large: 16,
|
|
29
|
+
xlarge: 20,
|
|
30
|
+
};
|
|
31
|
+
export function ProgressBar({ color, progress, size, jsStyle, }) {
|
|
32
|
+
return (_jsx(BaseView, { jsStyle: [
|
|
33
|
+
jsStyles.root,
|
|
34
|
+
{
|
|
35
|
+
height: sizes[size],
|
|
36
|
+
},
|
|
37
|
+
jsStyle,
|
|
38
|
+
], children: _jsx(BaseView, { jsStyle: [jsStyles.fill, getBackground(color)], style: {
|
|
39
|
+
transform: `scaleX(${progress > 1 ? 1 : progress})`,
|
|
40
|
+
} }) }));
|
|
41
|
+
}
|
|
42
|
+
//# sourceMappingURL=ProgressBar.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ProgressBar.js","sourceRoot":"","sources":["../src/ProgressBar.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAwB,aAAa,EAAE,MAAM,OAAO,CAAC;AAE5D,MAAM,QAAQ,GAA+B;IAC3C,IAAI,EAAE;QACJ,KAAK,EAAE,MAAM;QACb,OAAO,EAAE,MAAM;QACf,QAAQ,EAAE,UAAU;QACpB,eAAe,EAAE,2BAA2B;QAC5C,YAAY,EAAE,wBAAwB;QACtC,MAAM,EAAE,0BAA0B;QAClC,QAAQ,EAAE,QAAQ;KACnB;IACD,IAAI,EAAE;QACJ,YAAY,EAAE,wBAAwB;QACtC,QAAQ,EAAE,UAAU;QACpB,eAAe,EAAE,aAAa;QAC9B,GAAG,EAAE,CAAC;QACN,MAAM,EAAE,CAAC;QACT,IAAI,EAAE,CAAC;QACP,KAAK,EAAE,CAAC;KACT;CACF,CAAC;AAEF,MAAM,KAAK,GAAG;IACZ,MAAM,EAAE,CAAC;IACT,KAAK,EAAE,CAAC;IACR,MAAM,EAAE,EAAE;IACV,KAAK,EAAE,EAAE;IACT,MAAM,EAAE,EAAE;CACX,CAAC;AAEF,MAAM,UAAU,WAAW,CAAC,EAC1B,KAAK,EACL,QAAQ,EACR,IAAI,EACJ,OAAO,GAMR;IACC,OAAO,CACL,KAAC,QAAQ,IACP,OAAO,EAAE;YACP,QAAQ,CAAC,IAAI;YACb;gBACE,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC;aACpB;YACD,OAAO;SACR,YAED,KAAC,QAAQ,IACP,OAAO,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAE,aAAa,CAAC,KAAK,CAAC,CAAC,EAC9C,KAAK,EAAE;gBACL,SAAS,EAAE,UAAU,QAAQ,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,GAAG;aACpD,GACD,GACO,CACZ,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { cssVar, jss } from "./jss";
|
|
3
|
+
export function ProgressCircle({ progress, stroke = 4, outerRadius, }) {
|
|
4
|
+
const circumference = outerRadius * 2 * Math.PI;
|
|
5
|
+
const strokeDashoffset = circumference - progress * circumference;
|
|
6
|
+
return (_jsx("svg", { className: jss({
|
|
7
|
+
backgroundColor: cssVar("--secondary-background"),
|
|
8
|
+
transform: "rotate(-90deg)",
|
|
9
|
+
borderRadius: "50%",
|
|
10
|
+
}), width: (outerRadius + stroke) * 2, height: (outerRadius + stroke) * 2, children: _jsx("circle", { stroke: "var(--highlight)", fill: "transparent", strokeWidth: stroke, strokeDasharray: `${circumference} ${circumference}`, style: { strokeDashoffset }, r: outerRadius, cx: outerRadius + stroke, cy: outerRadius + stroke }) }));
|
|
11
|
+
}
|
|
12
|
+
//# sourceMappingURL=ProgressCircle.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ProgressCircle.js","sourceRoot":"","sources":["../src/ProgressCircle.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AAEpC,MAAM,UAAU,cAAc,CAAC,EAC7B,QAAQ,EACR,MAAM,GAAG,CAAC,EACV,WAAW,GAKZ;IACC,MAAM,aAAa,GAAG,WAAW,GAAG,CAAC,GAAG,IAAI,CAAC,EAAE,CAAC;IAChD,MAAM,gBAAgB,GAAG,aAAa,GAAG,QAAQ,GAAG,aAAa,CAAC;IAElE,OAAO,CACL,cACE,SAAS,EAAE,GAAG,CAAC;YACb,eAAe,EAAE,MAAM,CAAC,wBAAwB,CAAC;YACjD,SAAS,EAAE,gBAAgB;YAC3B,YAAY,EAAE,KAAK;SACpB,CAAC,EACF,KAAK,EAAE,CAAC,WAAW,GAAG,MAAM,CAAC,GAAG,CAAC,EACjC,MAAM,EAAE,CAAC,WAAW,GAAG,MAAM,CAAC,GAAG,CAAC,YAElC,iBACE,MAAM,EAAC,kBAAkB,EACzB,IAAI,EAAC,aAAa,EAClB,WAAW,EAAE,MAAM,EACnB,eAAe,EAAE,GAAG,aAAa,IAAI,aAAa,EAAE,EACpD,KAAK,EAAE,EAAE,gBAAgB,EAAE,EAC3B,CAAC,EAAE,WAAW,EACd,EAAE,EAAE,WAAW,GAAG,MAAM,EACxB,EAAE,EAAE,WAAW,GAAG,MAAM,GACxB,GACE,CACP,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import React from "react";
|
|
3
|
+
import { DarkModeProvider } from "./DarkMode";
|
|
4
|
+
import { DialogProvider } from "./Dialog";
|
|
5
|
+
import { IconProvider } from "./Icon";
|
|
6
|
+
import { useCookie } from "./useCookie";
|
|
7
|
+
import { JSStylesProvider } from "./jss";
|
|
8
|
+
export function Providers({ children, themes, }) {
|
|
9
|
+
const [darkModeEnabled, setDarkModeEnabled] = useCookie("dark-mode", {
|
|
10
|
+
initialValue: false,
|
|
11
|
+
loadingValue: false,
|
|
12
|
+
});
|
|
13
|
+
const toggleDarkMode = React.useCallback(() => setDarkModeEnabled((x) => !x), []);
|
|
14
|
+
return (_jsx(JSStylesProvider, { themes: themes, children: _jsx(IconProvider, { children: _jsx(DarkModeProvider, { enabled: darkModeEnabled, toggle: toggleDarkMode, children: _jsx(DialogProvider, { children: children }) }) }) }));
|
|
15
|
+
}
|
|
16
|
+
//# sourceMappingURL=Providers.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Providers.js","sourceRoot":"","sources":["../src/Providers.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAkC,MAAM,OAAO,CAAC;AACvD,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAC9C,OAAO,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAC1C,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AACtC,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,gBAAgB,EAAS,MAAM,OAAO,CAAC;AAEhD,MAAM,UAAU,SAAS,CAAC,EACxB,QAAQ,EACR,MAAM,GAIP;IACC,MAAM,CAAC,eAAe,EAAE,kBAAkB,CAAC,GAAG,SAAS,CAAC,WAAW,EAAE;QACnE,YAAY,EAAE,KAAK;QACnB,YAAY,EAAE,KAAK;KACpB,CAAC,CAAC;IACH,MAAM,cAAc,GAAG,KAAK,CAAC,WAAW,CACtC,GAAG,EAAE,CAAC,kBAAkB,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EACnC,EAAE,CACH,CAAC;IAEF,OAAO,CACL,KAAC,gBAAgB,IAAC,MAAM,EAAE,MAAM,YAC9B,KAAC,YAAY,cACX,KAAC,gBAAgB,IAAC,OAAO,EAAE,eAAe,EAAE,MAAM,EAAE,cAAc,YAChE,KAAC,cAAc,cAAE,QAAQ,GAAkB,GAC1B,GACN,GACE,CACpB,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
import { BaseInputProps } from "./BaseInput";
|
|
3
|
+
import { Gap, JSStyle, Padding } from "./jss";
|
|
4
|
+
export interface RangeInputProps extends BaseInputProps {
|
|
5
|
+
onValueChange: (value: number) => void;
|
|
6
|
+
value: number;
|
|
7
|
+
rootJSStyle?: JSStyle;
|
|
8
|
+
onChange?: undefined;
|
|
9
|
+
padding?: Padding;
|
|
10
|
+
gap?: Gap;
|
|
11
|
+
addOn?: JSX.Element;
|
|
12
|
+
addOnPosition?: "start" | "end";
|
|
13
|
+
}
|
|
14
|
+
export declare const RangeInput: React.ForwardRefExoticComponent<RangeInputProps & React.RefAttributes<HTMLInputElement>>;
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import React from "react";
|
|
3
|
+
import { BaseInput } from "./BaseInput";
|
|
4
|
+
import { Row } from "./Row";
|
|
5
|
+
import { cssVar } from "./jss";
|
|
6
|
+
export const RangeInput = React.forwardRef(({ value, onValueChange, rootJSStyle, jsStyle, gap = "medium", padding = "none", min = 0, max = 100, step = 1, label, addOn, addOnPosition = "start", ...inputProps }, ref) => {
|
|
7
|
+
return (_jsxs(Row, { gap: gap, padding: padding, align: "center", jsStyle: [
|
|
8
|
+
{
|
|
9
|
+
":has(:focus-visible)": {
|
|
10
|
+
borderRadius: cssVar("--border-radius-m"),
|
|
11
|
+
backgroundColor: cssVar("--light-highlight"),
|
|
12
|
+
},
|
|
13
|
+
},
|
|
14
|
+
rootJSStyle,
|
|
15
|
+
], children: [addOnPosition === "start" && addOn, _jsx(BaseInput, { ...inputProps, label: label, min: min, max: max, type: "range", ref: ref, value: value, onChange: (e) => {
|
|
16
|
+
onValueChange(parseFloat(e.target.value));
|
|
17
|
+
}, jsStyle: [
|
|
18
|
+
{
|
|
19
|
+
backgroundColor: cssVar("--primary-background"),
|
|
20
|
+
flexGrow: 1,
|
|
21
|
+
color: cssVar("--primary-text"),
|
|
22
|
+
margin: 0,
|
|
23
|
+
paddingTop: cssVar("--spacing-m"),
|
|
24
|
+
paddingBottom: cssVar("--spacing-m"),
|
|
25
|
+
":disabled": {
|
|
26
|
+
color: cssVar("--subtle-text"),
|
|
27
|
+
},
|
|
28
|
+
},
|
|
29
|
+
jsStyle,
|
|
30
|
+
] }), addOnPosition === "end" && addOn] }));
|
|
31
|
+
});
|
|
32
|
+
//# sourceMappingURL=RangeInput.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RangeInput.js","sourceRoot":"","sources":["../src/RangeInput.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,SAAS,EAAkB,MAAM,aAAa,CAAC;AACxD,OAAO,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AAC5B,OAAO,EAAyB,MAAM,EAAE,MAAM,OAAO,CAAC;AAatD,MAAM,CAAC,MAAM,UAAU,GAAG,KAAK,CAAC,UAAU,CACxC,CACE,EACE,KAAK,EACL,aAAa,EACb,WAAW,EACX,OAAO,EACP,GAAG,GAAG,QAAQ,EACd,OAAO,GAAG,MAAM,EAChB,GAAG,GAAG,CAAC,EACP,GAAG,GAAG,GAAG,EACT,IAAI,GAAG,CAAC,EACR,KAAK,EACL,KAAK,EACL,aAAa,GAAG,OAAO,EACvB,GAAG,UAAU,EACG,EAClB,GAAiC,EACjC,EAAE;IACF,OAAO,CACL,MAAC,GAAG,IACF,GAAG,EAAE,GAAG,EACR,OAAO,EAAE,OAAO,EAChB,KAAK,EAAC,QAAQ,EACd,OAAO,EAAE;YACP;gBACE,sBAAsB,EAAE;oBACtB,YAAY,EAAE,MAAM,CAAC,mBAAmB,CAAC;oBACzC,eAAe,EAAE,MAAM,CAAC,mBAAmB,CAAC;iBAC7C;aACF;YACD,WAAW;SACZ,aAEA,aAAa,KAAK,OAAO,IAAI,KAAK,EACnC,KAAC,SAAS,OACJ,UAAU,EACd,KAAK,EAAE,KAAK,EACZ,GAAG,EAAE,GAAG,EACR,GAAG,EAAE,GAAG,EACR,IAAI,EAAC,OAAO,EACZ,GAAG,EAAE,GAAG,EACR,KAAK,EAAE,KAAK,EACZ,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE;oBACd,aAAa,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;gBAC5C,CAAC,EACD,OAAO,EAAE;oBACP;wBACE,eAAe,EAAE,MAAM,CAAC,sBAAsB,CAAC;wBAC/C,QAAQ,EAAE,CAAC;wBACX,KAAK,EAAE,MAAM,CAAC,gBAAgB,CAAC;wBAC/B,MAAM,EAAE,CAAC;wBACT,UAAU,EAAE,MAAM,CAAC,aAAa,CAAC;wBACjC,aAAa,EAAE,MAAM,CAAC,aAAa,CAAC;wBACpC,WAAW,EAAE;4BACX,KAAK,EAAE,MAAM,CAAC,eAAe,CAAC;yBAC/B;qBACF;oBACD,OAAO;iBACR,GACD,EACD,aAAa,KAAK,KAAK,IAAI,KAAK,IAC7B,CACP,CAAC;AACJ,CAAC,CACF,CAAC"}
|