@sentropic/design-system-vue 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/Accordion.d.ts +66 -0
- package/dist/Accordion.d.ts.map +1 -0
- package/dist/Accordion.js +69 -0
- package/dist/Accordion.js.map +1 -0
- package/dist/Alert.d.ts +59 -0
- package/dist/Alert.d.ts.map +1 -0
- package/dist/Alert.js +36 -0
- package/dist/Alert.js.map +1 -0
- package/dist/AreaChart.d.ts +66 -0
- package/dist/AreaChart.d.ts.map +1 -0
- package/dist/AreaChart.js +54 -0
- package/dist/AreaChart.js.map +1 -0
- package/dist/AspectRatio.d.ts +29 -0
- package/dist/AspectRatio.d.ts.map +1 -0
- package/dist/AspectRatio.js +20 -0
- package/dist/AspectRatio.js.map +1 -0
- package/dist/Badge.d.ts +30 -0
- package/dist/Badge.d.ts.map +1 -0
- package/dist/Badge.js +16 -0
- package/dist/Badge.js.map +1 -0
- package/dist/BarChart.d.ts +66 -0
- package/dist/BarChart.d.ts.map +1 -0
- package/dist/BarChart.js +47 -0
- package/dist/BarChart.js.map +1 -0
- package/dist/Breadcrumb.d.ts +43 -0
- package/dist/Breadcrumb.d.ts.map +1 -0
- package/dist/Breadcrumb.js +29 -0
- package/dist/Breadcrumb.js.map +1 -0
- package/dist/Button.d.ts +61 -0
- package/dist/Button.d.ts.map +1 -0
- package/dist/Button.js +36 -0
- package/dist/Button.js.map +1 -0
- package/dist/Card.d.ts +29 -0
- package/dist/Card.d.ts.map +1 -0
- package/dist/Card.js +16 -0
- package/dist/Card.js.map +1 -0
- package/dist/ChatComposer.d.ts +51 -0
- package/dist/ChatComposer.d.ts.map +1 -0
- package/dist/ChatComposer.js +47 -0
- package/dist/ChatComposer.js.map +1 -0
- package/dist/ChatMessage.d.ts +71 -0
- package/dist/ChatMessage.d.ts.map +1 -0
- package/dist/ChatMessage.js +47 -0
- package/dist/ChatMessage.js.map +1 -0
- package/dist/ChatThread.d.ts +60 -0
- package/dist/ChatThread.d.ts.map +1 -0
- package/dist/ChatThread.js +41 -0
- package/dist/ChatThread.js.map +1 -0
- package/dist/Checkbox.d.ts +101 -0
- package/dist/Checkbox.d.ts.map +1 -0
- package/dist/Checkbox.js +45 -0
- package/dist/Checkbox.js.map +1 -0
- package/dist/CodeSnippet.d.ts +38 -0
- package/dist/CodeSnippet.d.ts.map +1 -0
- package/dist/CodeSnippet.js +20 -0
- package/dist/CodeSnippet.js.map +1 -0
- package/dist/Combobox.d.ts +109 -0
- package/dist/Combobox.d.ts.map +1 -0
- package/dist/Combobox.js +152 -0
- package/dist/Combobox.js.map +1 -0
- package/dist/ContentSwitcher.d.ts +67 -0
- package/dist/ContentSwitcher.d.ts.map +1 -0
- package/dist/ContentSwitcher.js +42 -0
- package/dist/ContentSwitcher.js.map +1 -0
- package/dist/CopyButton.d.ts +72 -0
- package/dist/CopyButton.d.ts.map +1 -0
- package/dist/CopyButton.js +28 -0
- package/dist/CopyButton.js.map +1 -0
- package/dist/DataTable.d.ts +100 -0
- package/dist/DataTable.d.ts.map +1 -0
- package/dist/DataTable.js +42 -0
- package/dist/DataTable.js.map +1 -0
- package/dist/DatePicker.d.ts +53 -0
- package/dist/DatePicker.d.ts.map +1 -0
- package/dist/DatePicker.js +46 -0
- package/dist/DatePicker.js.map +1 -0
- package/dist/DonutChart.d.ts +66 -0
- package/dist/DonutChart.d.ts.map +1 -0
- package/dist/DonutChart.js +42 -0
- package/dist/DonutChart.js.map +1 -0
- package/dist/Drawer.d.ts +62 -0
- package/dist/Drawer.d.ts.map +1 -0
- package/dist/Drawer.js +77 -0
- package/dist/Drawer.js.map +1 -0
- package/dist/Dropdown.d.ts +76 -0
- package/dist/Dropdown.d.ts.map +1 -0
- package/dist/Dropdown.js +81 -0
- package/dist/Dropdown.js.map +1 -0
- package/dist/EmptyState.d.ts +48 -0
- package/dist/EmptyState.d.ts.map +1 -0
- package/dist/EmptyState.js +33 -0
- package/dist/EmptyState.js.map +1 -0
- package/dist/FileUploader.d.ts +57 -0
- package/dist/FileUploader.d.ts.map +1 -0
- package/dist/FileUploader.js +39 -0
- package/dist/FileUploader.js.map +1 -0
- package/dist/Footer.d.ts +67 -0
- package/dist/Footer.d.ts.map +1 -0
- package/dist/Footer.js +39 -0
- package/dist/Footer.js.map +1 -0
- package/dist/ForceGraph.d.ts +86 -0
- package/dist/ForceGraph.d.ts.map +1 -0
- package/dist/ForceGraph.js +62 -0
- package/dist/ForceGraph.js.map +1 -0
- package/dist/Form.d.ts +42 -0
- package/dist/Form.d.ts.map +1 -0
- package/dist/Form.js +32 -0
- package/dist/Form.js.map +1 -0
- package/dist/FormGroup.d.ts +38 -0
- package/dist/FormGroup.d.ts.map +1 -0
- package/dist/FormGroup.js +23 -0
- package/dist/FormGroup.js.map +1 -0
- package/dist/Header.d.ts +89 -0
- package/dist/Header.d.ts.map +1 -0
- package/dist/Header.js +54 -0
- package/dist/Header.js.map +1 -0
- package/dist/Highlight.d.ts +40 -0
- package/dist/Highlight.d.ts.map +1 -0
- package/dist/Highlight.js +25 -0
- package/dist/Highlight.js.map +1 -0
- package/dist/IconButton.d.ts +61 -0
- package/dist/IconButton.d.ts.map +1 -0
- package/dist/IconButton.js +30 -0
- package/dist/IconButton.js.map +1 -0
- package/dist/InlineLoading.d.ts +40 -0
- package/dist/InlineLoading.d.ts.map +1 -0
- package/dist/InlineLoading.js +26 -0
- package/dist/InlineLoading.js.map +1 -0
- package/dist/Input.d.ts +126 -0
- package/dist/Input.d.ts.map +1 -0
- package/dist/Input.js +60 -0
- package/dist/Input.js.map +1 -0
- package/dist/LanguageSelector.d.ts +54 -0
- package/dist/LanguageSelector.d.ts.map +1 -0
- package/dist/LanguageSelector.js +34 -0
- package/dist/LanguageSelector.js.map +1 -0
- package/dist/LineChart.d.ts +66 -0
- package/dist/LineChart.d.ts.map +1 -0
- package/dist/LineChart.js +50 -0
- package/dist/LineChart.js.map +1 -0
- package/dist/Link.d.ts +59 -0
- package/dist/Link.d.ts.map +1 -0
- package/dist/Link.js +21 -0
- package/dist/Link.js.map +1 -0
- package/dist/LoadingState.d.ts +50 -0
- package/dist/LoadingState.d.ts.map +1 -0
- package/dist/LoadingState.js +28 -0
- package/dist/LoadingState.js.map +1 -0
- package/dist/Menu.d.ts +68 -0
- package/dist/Menu.d.ts.map +1 -0
- package/dist/Menu.js +95 -0
- package/dist/Menu.js.map +1 -0
- package/dist/MenuPopover.d.ts +52 -0
- package/dist/MenuPopover.d.ts.map +1 -0
- package/dist/MenuPopover.js +28 -0
- package/dist/MenuPopover.js.map +1 -0
- package/dist/MenuTriggerButton.d.ts +39 -0
- package/dist/MenuTriggerButton.d.ts.map +1 -0
- package/dist/MenuTriggerButton.js +22 -0
- package/dist/MenuTriggerButton.js.map +1 -0
- package/dist/MessageActions.d.ts +46 -0
- package/dist/MessageActions.d.ts.map +1 -0
- package/dist/MessageActions.js +30 -0
- package/dist/MessageActions.js.map +1 -0
- package/dist/MessageStatusBadge.d.ts +50 -0
- package/dist/MessageStatusBadge.d.ts.map +1 -0
- package/dist/MessageStatusBadge.js +44 -0
- package/dist/MessageStatusBadge.js.map +1 -0
- package/dist/Modal.d.ts +51 -0
- package/dist/Modal.d.ts.map +1 -0
- package/dist/Modal.js +66 -0
- package/dist/Modal.js.map +1 -0
- package/dist/MultiSelect.d.ts +88 -0
- package/dist/MultiSelect.d.ts.map +1 -0
- package/dist/MultiSelect.js +101 -0
- package/dist/MultiSelect.js.map +1 -0
- package/dist/NumberInput.d.ts +124 -0
- package/dist/NumberInput.d.ts.map +1 -0
- package/dist/NumberInput.js +65 -0
- package/dist/NumberInput.js.map +1 -0
- package/dist/OrderedList.d.ts +33 -0
- package/dist/OrderedList.d.ts.map +1 -0
- package/dist/OrderedList.js +52 -0
- package/dist/OrderedList.js.map +1 -0
- package/dist/OverflowMenu.d.ts +73 -0
- package/dist/OverflowMenu.d.ts.map +1 -0
- package/dist/OverflowMenu.js +57 -0
- package/dist/OverflowMenu.js.map +1 -0
- package/dist/Pagination.d.ts +70 -0
- package/dist/Pagination.d.ts.map +1 -0
- package/dist/Pagination.js +58 -0
- package/dist/Pagination.js.map +1 -0
- package/dist/PaginationNav.d.ts +59 -0
- package/dist/PaginationNav.d.ts.map +1 -0
- package/dist/PaginationNav.js +37 -0
- package/dist/PaginationNav.js.map +1 -0
- package/dist/PasswordInput.d.ts +94 -0
- package/dist/PasswordInput.d.ts.map +1 -0
- package/dist/PasswordInput.js +69 -0
- package/dist/PasswordInput.js.map +1 -0
- package/dist/Popover.d.ts +52 -0
- package/dist/Popover.d.ts.map +1 -0
- package/dist/Popover.js +66 -0
- package/dist/Popover.js.map +1 -0
- package/dist/ProgressBar.d.ts +81 -0
- package/dist/ProgressBar.d.ts.map +1 -0
- package/dist/ProgressBar.js +62 -0
- package/dist/ProgressBar.js.map +1 -0
- package/dist/ProgressIndicator.d.ts +46 -0
- package/dist/ProgressIndicator.d.ts.map +1 -0
- package/dist/ProgressIndicator.js +31 -0
- package/dist/ProgressIndicator.js.map +1 -0
- package/dist/Quote.d.ts +39 -0
- package/dist/Quote.d.ts.map +1 -0
- package/dist/Quote.js +29 -0
- package/dist/Quote.js.map +1 -0
- package/dist/Radio.d.ts +101 -0
- package/dist/Radio.d.ts.map +1 -0
- package/dist/Radio.js +46 -0
- package/dist/Radio.js.map +1 -0
- package/dist/ScatterPlot.d.ts +65 -0
- package/dist/ScatterPlot.d.ts.map +1 -0
- package/dist/ScatterPlot.js +41 -0
- package/dist/ScatterPlot.js.map +1 -0
- package/dist/Search.d.ts +85 -0
- package/dist/Search.d.ts.map +1 -0
- package/dist/Search.js +54 -0
- package/dist/Search.js.map +1 -0
- package/dist/Select.d.ts +108 -0
- package/dist/Select.d.ts.map +1 -0
- package/dist/Select.js +58 -0
- package/dist/Select.js.map +1 -0
- package/dist/SideNav.d.ts +44 -0
- package/dist/SideNav.d.ts.map +1 -0
- package/dist/SideNav.js +22 -0
- package/dist/SideNav.js.map +1 -0
- package/dist/SkeletonText.d.ts +39 -0
- package/dist/SkeletonText.d.ts.map +1 -0
- package/dist/SkeletonText.js +24 -0
- package/dist/SkeletonText.js.map +1 -0
- package/dist/SkipLink.d.ts +29 -0
- package/dist/SkipLink.d.ts.map +1 -0
- package/dist/SkipLink.js +17 -0
- package/dist/SkipLink.js.map +1 -0
- package/dist/Slider.d.ts +93 -0
- package/dist/Slider.d.ts.map +1 -0
- package/dist/Slider.js +45 -0
- package/dist/Slider.js.map +1 -0
- package/dist/Sparkline.d.ts +49 -0
- package/dist/Sparkline.d.ts.map +1 -0
- package/dist/Sparkline.js +42 -0
- package/dist/Sparkline.js.map +1 -0
- package/dist/StackedBarChart.d.ts +68 -0
- package/dist/StackedBarChart.d.ts.map +1 -0
- package/dist/StackedBarChart.js +55 -0
- package/dist/StackedBarChart.js.map +1 -0
- package/dist/StreamingMessage.d.ts +57 -0
- package/dist/StreamingMessage.d.ts.map +1 -0
- package/dist/StreamingMessage.js +25 -0
- package/dist/StreamingMessage.js.map +1 -0
- package/dist/StructuredList.d.ts +44 -0
- package/dist/StructuredList.d.ts.map +1 -0
- package/dist/StructuredList.js +20 -0
- package/dist/StructuredList.js.map +1 -0
- package/dist/Switch.d.ts +91 -0
- package/dist/Switch.d.ts.map +1 -0
- package/dist/Switch.js +48 -0
- package/dist/Switch.js.map +1 -0
- package/dist/Table.d.ts +53 -0
- package/dist/Table.d.ts.map +1 -0
- package/dist/Table.js +29 -0
- package/dist/Table.js.map +1 -0
- package/dist/Tabs.d.ts +67 -0
- package/dist/Tabs.d.ts.map +1 -0
- package/dist/Tabs.js +124 -0
- package/dist/Tabs.js.map +1 -0
- package/dist/Tag.d.ts +53 -0
- package/dist/Tag.d.ts.map +1 -0
- package/dist/Tag.js +21 -0
- package/dist/Tag.js.map +1 -0
- package/dist/Textarea.d.ts +113 -0
- package/dist/Textarea.d.ts.map +1 -0
- package/dist/Textarea.js +60 -0
- package/dist/Textarea.js.map +1 -0
- package/dist/ThemeProvider.d.ts +30 -0
- package/dist/ThemeProvider.d.ts.map +1 -0
- package/dist/ThemeProvider.js +43 -0
- package/dist/ThemeProvider.js.map +1 -0
- package/dist/Tile.d.ts +70 -0
- package/dist/Tile.d.ts.map +1 -0
- package/dist/Tile.js +30 -0
- package/dist/Tile.js.map +1 -0
- package/dist/TileGroup.d.ts +67 -0
- package/dist/TileGroup.d.ts.map +1 -0
- package/dist/TileGroup.js +48 -0
- package/dist/TileGroup.js.map +1 -0
- package/dist/Toast.d.ts +90 -0
- package/dist/Toast.d.ts.map +1 -0
- package/dist/Toast.js +80 -0
- package/dist/Toast.js.map +1 -0
- package/dist/Toggle.d.ts +102 -0
- package/dist/Toggle.d.ts.map +1 -0
- package/dist/Toggle.js +49 -0
- package/dist/Toggle.js.map +1 -0
- package/dist/Toggletip.d.ts +61 -0
- package/dist/Toggletip.d.ts.map +1 -0
- package/dist/Toggletip.js +53 -0
- package/dist/Toggletip.js.map +1 -0
- package/dist/Tooltip.d.ts +39 -0
- package/dist/Tooltip.d.ts.map +1 -0
- package/dist/Tooltip.js +37 -0
- package/dist/Tooltip.js.map +1 -0
- package/dist/TreeView.d.ts +64 -0
- package/dist/TreeView.d.ts.map +1 -0
- package/dist/TreeView.js +40 -0
- package/dist/TreeView.js.map +1 -0
- package/dist/UnorderedList.d.ts +33 -0
- package/dist/UnorderedList.d.ts.map +1 -0
- package/dist/UnorderedList.js +36 -0
- package/dist/UnorderedList.js.map +1 -0
- package/dist/classNames.d.ts +2 -0
- package/dist/classNames.d.ts.map +1 -0
- package/dist/classNames.js +4 -0
- package/dist/classNames.js.map +1 -0
- package/dist/index.d.ts +162 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +82 -0
- package/dist/index.js.map +1 -0
- package/dist/styles.css +6366 -0
- package/package.json +50 -0
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
export type CopyButtonSize = "sm" | "md" | "lg";
|
|
2
|
+
export type CopyButtonProps = {
|
|
3
|
+
text?: string;
|
|
4
|
+
value?: string;
|
|
5
|
+
label?: string;
|
|
6
|
+
copiedLabel?: string;
|
|
7
|
+
size?: CopyButtonSize;
|
|
8
|
+
class?: string;
|
|
9
|
+
};
|
|
10
|
+
export declare const CopyButton: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
|
|
11
|
+
text: {
|
|
12
|
+
type: StringConstructor;
|
|
13
|
+
default: undefined;
|
|
14
|
+
};
|
|
15
|
+
value: {
|
|
16
|
+
type: StringConstructor;
|
|
17
|
+
default: undefined;
|
|
18
|
+
};
|
|
19
|
+
label: {
|
|
20
|
+
type: StringConstructor;
|
|
21
|
+
default: string;
|
|
22
|
+
};
|
|
23
|
+
copiedLabel: {
|
|
24
|
+
type: StringConstructor;
|
|
25
|
+
default: string;
|
|
26
|
+
};
|
|
27
|
+
size: {
|
|
28
|
+
type: () => CopyButtonSize;
|
|
29
|
+
default: string;
|
|
30
|
+
};
|
|
31
|
+
class: {
|
|
32
|
+
type: StringConstructor;
|
|
33
|
+
default: undefined;
|
|
34
|
+
};
|
|
35
|
+
}>, () => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
|
|
36
|
+
[key: string]: any;
|
|
37
|
+
}>, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, "click"[], "click", import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
|
|
38
|
+
text: {
|
|
39
|
+
type: StringConstructor;
|
|
40
|
+
default: undefined;
|
|
41
|
+
};
|
|
42
|
+
value: {
|
|
43
|
+
type: StringConstructor;
|
|
44
|
+
default: undefined;
|
|
45
|
+
};
|
|
46
|
+
label: {
|
|
47
|
+
type: StringConstructor;
|
|
48
|
+
default: string;
|
|
49
|
+
};
|
|
50
|
+
copiedLabel: {
|
|
51
|
+
type: StringConstructor;
|
|
52
|
+
default: string;
|
|
53
|
+
};
|
|
54
|
+
size: {
|
|
55
|
+
type: () => CopyButtonSize;
|
|
56
|
+
default: string;
|
|
57
|
+
};
|
|
58
|
+
class: {
|
|
59
|
+
type: StringConstructor;
|
|
60
|
+
default: undefined;
|
|
61
|
+
};
|
|
62
|
+
}>> & Readonly<{
|
|
63
|
+
onClick?: ((...args: any[]) => any) | undefined;
|
|
64
|
+
}>, {
|
|
65
|
+
class: string;
|
|
66
|
+
label: string;
|
|
67
|
+
size: CopyButtonSize;
|
|
68
|
+
value: string;
|
|
69
|
+
text: string;
|
|
70
|
+
copiedLabel: string;
|
|
71
|
+
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
|
72
|
+
//# sourceMappingURL=CopyButton.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CopyButton.d.ts","sourceRoot":"","sources":["../src/CopyButton.ts"],"names":[],"mappings":"AAGA,MAAM,MAAM,cAAc,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;AAEhD,MAAM,MAAM,eAAe,GAAG;IAC5B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,IAAI,CAAC,EAAE,cAAc,CAAC;IACtB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;;cAOK,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;cAApB,MAAM,cAAc;;;;;;;;;;;;;;;;4EA4B9C,CAAC"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { defineComponent, h, ref } from "vue";
|
|
2
|
+
import { classNames } from "./classNames.js";
|
|
3
|
+
export const CopyButton = defineComponent({
|
|
4
|
+
name: "CopyButton",
|
|
5
|
+
props: {
|
|
6
|
+
text: { type: String, default: undefined },
|
|
7
|
+
value: { type: String, default: undefined },
|
|
8
|
+
label: { type: String, default: "Copy" },
|
|
9
|
+
copiedLabel: { type: String, default: "Copied" },
|
|
10
|
+
size: { type: String, default: "md" },
|
|
11
|
+
class: { type: String, default: undefined },
|
|
12
|
+
},
|
|
13
|
+
emits: ["click"],
|
|
14
|
+
setup(props, { emit, attrs }) {
|
|
15
|
+
const copied = ref(false);
|
|
16
|
+
return () => h("button", {
|
|
17
|
+
...attrs,
|
|
18
|
+
type: "button",
|
|
19
|
+
class: classNames("st-copyButton", `st-copyButton--${props.size}`, copied.value && "st-copyButton--copied", props.class),
|
|
20
|
+
onClick: (event) => {
|
|
21
|
+
copied.value = true;
|
|
22
|
+
void navigator.clipboard?.writeText(props.value ?? props.text ?? "");
|
|
23
|
+
emit("click", event);
|
|
24
|
+
},
|
|
25
|
+
}, h("span", { class: "st-copyButton__label" }, copied.value ? props.copiedLabel : props.label));
|
|
26
|
+
},
|
|
27
|
+
});
|
|
28
|
+
//# sourceMappingURL=CopyButton.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CopyButton.js","sourceRoot":"","sources":["../src/CopyButton.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,CAAC,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAC9C,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAa7C,MAAM,CAAC,MAAM,UAAU,GAAG,eAAe,CAAC;IACxC,IAAI,EAAE,YAAY;IAClB,KAAK,EAAE;QACL,IAAI,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE;QAC1C,KAAK,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE;QAC3C,KAAK,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE;QACxC,WAAW,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE;QAChD,IAAI,EAAE,EAAE,IAAI,EAAE,MAA8B,EAAE,OAAO,EAAE,IAAI,EAAE;QAC7D,KAAK,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE;KAC5C;IACD,KAAK,EAAE,CAAC,OAAO,CAAC;IAChB,KAAK,CAAC,KAAK,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE;QAC1B,MAAM,MAAM,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC;QAE1B,OAAO,GAAG,EAAE,CACV,CAAC,CACC,QAAQ,EACR;YACE,GAAG,KAAK;YACR,IAAI,EAAE,QAAQ;YACd,KAAK,EAAE,UAAU,CACf,eAAe,EACf,kBAAkB,KAAK,CAAC,IAAI,EAAE,EAC9B,MAAM,CAAC,KAAK,IAAI,uBAAuB,EACvC,KAAK,CAAC,KAAK,CACZ;YACD,OAAO,EAAE,CAAC,KAAiB,EAAE,EAAE;gBAC7B,MAAM,CAAC,KAAK,GAAG,IAAI,CAAC;gBACpB,KAAK,SAAS,CAAC,SAAS,EAAE,SAAS,CAAC,KAAK,CAAC,KAAK,IAAI,KAAK,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC;gBACrE,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;YACvB,CAAC;SACF,EACD,CAAC,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,sBAAsB,EAAE,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAC7F,CAAC;IACN,CAAC;CACF,CAAC,CAAC"}
|
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
export type DataTableColumn = {
|
|
2
|
+
key: string;
|
|
3
|
+
label: unknown;
|
|
4
|
+
sortable?: boolean;
|
|
5
|
+
align?: "start" | "center" | "end";
|
|
6
|
+
width?: string;
|
|
7
|
+
render?: (row: DataTableRow, column: DataTableColumn) => unknown;
|
|
8
|
+
};
|
|
9
|
+
export type DataTableRow = {
|
|
10
|
+
id: string;
|
|
11
|
+
[key: string]: unknown;
|
|
12
|
+
};
|
|
13
|
+
export type DataTableSize = "sm" | "md" | "lg";
|
|
14
|
+
export type DataTableProps = {
|
|
15
|
+
columns: DataTableColumn[];
|
|
16
|
+
rows: DataTableRow[];
|
|
17
|
+
caption?: unknown;
|
|
18
|
+
size?: DataTableSize;
|
|
19
|
+
pageSize?: number;
|
|
20
|
+
page?: number;
|
|
21
|
+
totalItems?: number;
|
|
22
|
+
class?: string;
|
|
23
|
+
};
|
|
24
|
+
export declare const DataTable: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
|
|
25
|
+
columns: {
|
|
26
|
+
type: () => DataTableColumn[];
|
|
27
|
+
required: true;
|
|
28
|
+
};
|
|
29
|
+
rows: {
|
|
30
|
+
type: () => DataTableRow[];
|
|
31
|
+
required: true;
|
|
32
|
+
};
|
|
33
|
+
caption: {
|
|
34
|
+
type: () => unknown;
|
|
35
|
+
default: undefined;
|
|
36
|
+
};
|
|
37
|
+
size: {
|
|
38
|
+
type: () => DataTableSize;
|
|
39
|
+
default: string;
|
|
40
|
+
};
|
|
41
|
+
pageSize: {
|
|
42
|
+
type: NumberConstructor;
|
|
43
|
+
default: undefined;
|
|
44
|
+
};
|
|
45
|
+
page: {
|
|
46
|
+
type: NumberConstructor;
|
|
47
|
+
default: number;
|
|
48
|
+
};
|
|
49
|
+
totalItems: {
|
|
50
|
+
type: NumberConstructor;
|
|
51
|
+
default: undefined;
|
|
52
|
+
};
|
|
53
|
+
class: {
|
|
54
|
+
type: StringConstructor;
|
|
55
|
+
default: undefined;
|
|
56
|
+
};
|
|
57
|
+
}>, () => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
|
|
58
|
+
[key: string]: any;
|
|
59
|
+
}>, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
|
|
60
|
+
columns: {
|
|
61
|
+
type: () => DataTableColumn[];
|
|
62
|
+
required: true;
|
|
63
|
+
};
|
|
64
|
+
rows: {
|
|
65
|
+
type: () => DataTableRow[];
|
|
66
|
+
required: true;
|
|
67
|
+
};
|
|
68
|
+
caption: {
|
|
69
|
+
type: () => unknown;
|
|
70
|
+
default: undefined;
|
|
71
|
+
};
|
|
72
|
+
size: {
|
|
73
|
+
type: () => DataTableSize;
|
|
74
|
+
default: string;
|
|
75
|
+
};
|
|
76
|
+
pageSize: {
|
|
77
|
+
type: NumberConstructor;
|
|
78
|
+
default: undefined;
|
|
79
|
+
};
|
|
80
|
+
page: {
|
|
81
|
+
type: NumberConstructor;
|
|
82
|
+
default: number;
|
|
83
|
+
};
|
|
84
|
+
totalItems: {
|
|
85
|
+
type: NumberConstructor;
|
|
86
|
+
default: undefined;
|
|
87
|
+
};
|
|
88
|
+
class: {
|
|
89
|
+
type: StringConstructor;
|
|
90
|
+
default: undefined;
|
|
91
|
+
};
|
|
92
|
+
}>> & Readonly<{}>, {
|
|
93
|
+
class: string;
|
|
94
|
+
caption: undefined;
|
|
95
|
+
page: number;
|
|
96
|
+
size: DataTableSize;
|
|
97
|
+
pageSize: number;
|
|
98
|
+
totalItems: number;
|
|
99
|
+
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
|
100
|
+
//# sourceMappingURL=DataTable.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DataTable.d.ts","sourceRoot":"","sources":["../src/DataTable.ts"],"names":[],"mappings":"AAGA,MAAM,MAAM,eAAe,GAAG;IAC5B,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,OAAO,CAAC;IACf,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,KAAK,CAAC,EAAE,OAAO,GAAG,QAAQ,GAAG,KAAK,CAAC;IACnC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,CAAC,GAAG,EAAE,YAAY,EAAE,MAAM,EAAE,eAAe,KAAK,OAAO,CAAC;CAClE,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG;IACzB,EAAE,EAAE,MAAM,CAAC;IACX,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;AAE/C,MAAM,MAAM,cAAc,GAAG;IAC3B,OAAO,EAAE,eAAe,EAAE,CAAC;IAC3B,IAAI,EAAE,YAAY,EAAE,CAAC;IACrB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,IAAI,CAAC,EAAE,aAAa,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,eAAO,MAAM,SAAS;;cAGQ,MAAM,eAAe,EAAE;;;;cAC1B,MAAM,YAAY,EAAE;;;;cACK,MAAM,OAAO;;;;cACrC,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;cAHjB,MAAM,eAAe,EAAE;;;;cAC1B,MAAM,YAAY,EAAE;;;;cACK,MAAM,OAAO;;;;cACrC,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;4EAoE7C,CAAC"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { defineComponent, h } from "vue";
|
|
2
|
+
import { classNames } from "./classNames.js";
|
|
3
|
+
export const DataTable = defineComponent({
|
|
4
|
+
name: "DataTable",
|
|
5
|
+
props: {
|
|
6
|
+
columns: { type: Array, required: true },
|
|
7
|
+
rows: { type: Array, required: true },
|
|
8
|
+
caption: { type: [String, Object], default: undefined },
|
|
9
|
+
size: { type: String, default: "md" },
|
|
10
|
+
pageSize: { type: Number, default: undefined },
|
|
11
|
+
page: { type: Number, default: 1 },
|
|
12
|
+
totalItems: { type: Number, default: undefined },
|
|
13
|
+
class: { type: String, default: undefined },
|
|
14
|
+
},
|
|
15
|
+
setup(props, { attrs }) {
|
|
16
|
+
return () => {
|
|
17
|
+
const visibleRows = props.pageSize
|
|
18
|
+
? props.rows.slice((props.page - 1) * props.pageSize, props.page * props.pageSize)
|
|
19
|
+
: props.rows;
|
|
20
|
+
const total = props.totalItems ?? props.rows.length;
|
|
21
|
+
return h("div", { class: "st-dataTable-wrap" }, [
|
|
22
|
+
h("table", {
|
|
23
|
+
...attrs,
|
|
24
|
+
class: classNames("st-dataTable", `st-dataTable--${props.size}`, props.class),
|
|
25
|
+
}, [
|
|
26
|
+
props.caption ? h("caption", {}, props.caption) : null,
|
|
27
|
+
h("thead", {}, h("tr", {}, props.columns.map((col) => h("th", { key: col.key }, col.label)))),
|
|
28
|
+
h("tbody", {}, visibleRows.map((row) => h("tr", { key: row.id }, props.columns.map((col) => h("td", {
|
|
29
|
+
key: col.key,
|
|
30
|
+
class: classNames(col.align === "center" && "st-dataTable__cell--center", col.align === "end" && "st-dataTable__cell--end"),
|
|
31
|
+
}, col.render
|
|
32
|
+
? col.render(row, col)
|
|
33
|
+
: String(row[col.key] ?? "")))))),
|
|
34
|
+
]),
|
|
35
|
+
props.pageSize
|
|
36
|
+
? h("div", { class: "st-dataTable__pagerStatus" }, `${(props.page - 1) * props.pageSize + 1}-${Math.min(props.page * props.pageSize, total)} of ${total}`)
|
|
37
|
+
: null,
|
|
38
|
+
]);
|
|
39
|
+
};
|
|
40
|
+
},
|
|
41
|
+
});
|
|
42
|
+
//# sourceMappingURL=DataTable.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DataTable.js","sourceRoot":"","sources":["../src/DataTable.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
export type DatePickerSize = "sm" | "md" | "lg";
|
|
2
|
+
export type DatePickerProps = {
|
|
3
|
+
label?: unknown;
|
|
4
|
+
value?: string;
|
|
5
|
+
size?: DatePickerSize;
|
|
6
|
+
class?: string;
|
|
7
|
+
};
|
|
8
|
+
export declare const DatePicker: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
|
|
9
|
+
label: {
|
|
10
|
+
type: () => unknown;
|
|
11
|
+
default: undefined;
|
|
12
|
+
};
|
|
13
|
+
value: {
|
|
14
|
+
type: StringConstructor;
|
|
15
|
+
default: undefined;
|
|
16
|
+
};
|
|
17
|
+
size: {
|
|
18
|
+
type: () => DatePickerSize;
|
|
19
|
+
default: string;
|
|
20
|
+
};
|
|
21
|
+
class: {
|
|
22
|
+
type: StringConstructor;
|
|
23
|
+
default: undefined;
|
|
24
|
+
};
|
|
25
|
+
}>, () => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
|
|
26
|
+
[key: string]: any;
|
|
27
|
+
}>, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("change" | "update:modelValue")[], "change" | "update:modelValue", import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
|
|
28
|
+
label: {
|
|
29
|
+
type: () => unknown;
|
|
30
|
+
default: undefined;
|
|
31
|
+
};
|
|
32
|
+
value: {
|
|
33
|
+
type: StringConstructor;
|
|
34
|
+
default: undefined;
|
|
35
|
+
};
|
|
36
|
+
size: {
|
|
37
|
+
type: () => DatePickerSize;
|
|
38
|
+
default: string;
|
|
39
|
+
};
|
|
40
|
+
class: {
|
|
41
|
+
type: StringConstructor;
|
|
42
|
+
default: undefined;
|
|
43
|
+
};
|
|
44
|
+
}>> & Readonly<{
|
|
45
|
+
onChange?: ((...args: any[]) => any) | undefined;
|
|
46
|
+
"onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
|
|
47
|
+
}>, {
|
|
48
|
+
class: string;
|
|
49
|
+
label: undefined;
|
|
50
|
+
size: DatePickerSize;
|
|
51
|
+
value: string;
|
|
52
|
+
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
|
53
|
+
//# sourceMappingURL=DatePicker.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DatePicker.d.ts","sourceRoot":"","sources":["../src/DatePicker.ts"],"names":[],"mappings":"AAGA,MAAM,MAAM,cAAc,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;AAEhD,MAAM,MAAM,eAAe,GAAG;IAC5B,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,cAAc,CAAC;IACtB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAOF,eAAO,MAAM,UAAU;;cAG2B,MAAM,OAAO;;;;;;;;cAEnC,MAAM,cAAc;;;;;;;;;;;cAFE,MAAM,OAAO;;;;;;;;cAEnC,MAAM,cAAc;;;;;;;;;;;;;;;4EA+C9C,CAAC"}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import { defineComponent, h, ref } from "vue";
|
|
2
|
+
import { classNames } from "./classNames.js";
|
|
3
|
+
let _dpCounter = 0;
|
|
4
|
+
function nextDpId() {
|
|
5
|
+
return `st-datepicker-${++_dpCounter}`;
|
|
6
|
+
}
|
|
7
|
+
export const DatePicker = defineComponent({
|
|
8
|
+
name: "DatePicker",
|
|
9
|
+
props: {
|
|
10
|
+
label: { type: [String, Object], default: undefined },
|
|
11
|
+
value: { type: String, default: undefined },
|
|
12
|
+
size: { type: String, default: "md" },
|
|
13
|
+
class: { type: String, default: undefined },
|
|
14
|
+
},
|
|
15
|
+
emits: ["update:modelValue", "change"],
|
|
16
|
+
setup(props, { emit, attrs }) {
|
|
17
|
+
const autoId = ref(nextDpId());
|
|
18
|
+
return () => {
|
|
19
|
+
const inputId = autoId.value;
|
|
20
|
+
return h("div", {
|
|
21
|
+
...attrs,
|
|
22
|
+
class: classNames("st-datepicker", `st-datepicker--${props.size}`, props.class),
|
|
23
|
+
}, [
|
|
24
|
+
h("div", { class: "st-field" }, [
|
|
25
|
+
h("label", { class: "st-field__control", for: inputId }, [
|
|
26
|
+
props.label
|
|
27
|
+
? h("span", { class: "st-field__label" }, props.label)
|
|
28
|
+
: null,
|
|
29
|
+
h("input", {
|
|
30
|
+
id: inputId,
|
|
31
|
+
class: "st-control st-datepicker__control",
|
|
32
|
+
type: "date",
|
|
33
|
+
value: props.value,
|
|
34
|
+
onChange: (event) => {
|
|
35
|
+
const val = event.target.value;
|
|
36
|
+
emit("update:modelValue", val);
|
|
37
|
+
emit("change", val);
|
|
38
|
+
},
|
|
39
|
+
}),
|
|
40
|
+
]),
|
|
41
|
+
]),
|
|
42
|
+
]);
|
|
43
|
+
};
|
|
44
|
+
},
|
|
45
|
+
});
|
|
46
|
+
//# sourceMappingURL=DatePicker.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DatePicker.js","sourceRoot":"","sources":["../src/DatePicker.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,CAAC,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAC9C,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAW7C,IAAI,UAAU,GAAG,CAAC,CAAC;AACnB,SAAS,QAAQ;IACf,OAAO,iBAAiB,EAAE,UAAU,EAAE,CAAC;AACzC,CAAC;AAED,MAAM,CAAC,MAAM,UAAU,GAAG,eAAe,CAAC;IACxC,IAAI,EAAE,YAAY;IAClB,KAAK,EAAE;QACL,KAAK,EAAE,EAAE,IAAI,EAAE,CAAC,MAAM,EAAE,MAAM,CAA6B,EAAE,OAAO,EAAE,SAAS,EAAE;QACjF,KAAK,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE;QAC3C,IAAI,EAAE,EAAE,IAAI,EAAE,MAA8B,EAAE,OAAO,EAAE,IAAI,EAAE;QAC7D,KAAK,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE;KAC5C;IACD,KAAK,EAAE,CAAC,mBAAmB,EAAE,QAAQ,CAAC;IACtC,KAAK,CAAC,KAAK,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE;QAC1B,MAAM,MAAM,GAAG,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC;QAE/B,OAAO,GAAG,EAAE;YACV,MAAM,OAAO,GAAG,MAAM,CAAC,KAAK,CAAC;YAE7B,OAAO,CAAC,CACN,KAAK,EACL;gBACE,GAAG,KAAK;gBACR,KAAK,EAAE,UAAU,CAAC,eAAe,EAAE,kBAAkB,KAAK,CAAC,IAAI,EAAE,EAAE,KAAK,CAAC,KAAK,CAAC;aAChF,EACD;gBACE,CAAC,CACC,KAAK,EACL,EAAE,KAAK,EAAE,UAAU,EAAE,EACrB;oBACE,CAAC,CACC,OAAO,EACP,EAAE,KAAK,EAAE,mBAAmB,EAAE,GAAG,EAAE,OAAO,EAAE,EAC5C;wBACE,KAAK,CAAC,KAAK;4BACT,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,iBAAiB,EAAE,EAAE,KAAK,CAAC,KAAe,CAAC;4BAChE,CAAC,CAAC,IAAI;wBACR,CAAC,CAAC,OAAO,EAAE;4BACT,EAAE,EAAE,OAAO;4BACX,KAAK,EAAE,mCAAmC;4BAC1C,IAAI,EAAE,MAAM;4BACZ,KAAK,EAAE,KAAK,CAAC,KAAK;4BAClB,QAAQ,EAAE,CAAC,KAAY,EAAE,EAAE;gCACzB,MAAM,GAAG,GAAI,KAAK,CAAC,MAA2B,CAAC,KAAK,CAAC;gCACrD,IAAI,CAAC,mBAAmB,EAAE,GAAG,CAAC,CAAC;gCAC/B,IAAI,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC;4BACtB,CAAC;yBACF,CAAC;qBACH,CACF;iBACF,CACF;aACF,CACF,CAAC;QACJ,CAAC,CAAC;IACJ,CAAC;CACF,CAAC,CAAC"}
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
export type DonutChartDatum = {
|
|
2
|
+
label?: string;
|
|
3
|
+
x?: string | number;
|
|
4
|
+
y?: number;
|
|
5
|
+
value?: number;
|
|
6
|
+
tone?: string;
|
|
7
|
+
};
|
|
8
|
+
export type DonutChartTone = string;
|
|
9
|
+
export type DonutChartProps = {
|
|
10
|
+
data: DonutChartDatum[];
|
|
11
|
+
label?: string;
|
|
12
|
+
width?: number;
|
|
13
|
+
height?: number;
|
|
14
|
+
class?: string;
|
|
15
|
+
};
|
|
16
|
+
export declare const DonutChart: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
|
|
17
|
+
data: {
|
|
18
|
+
type: () => DonutChartDatum[];
|
|
19
|
+
required: true;
|
|
20
|
+
};
|
|
21
|
+
label: {
|
|
22
|
+
type: StringConstructor;
|
|
23
|
+
default: string;
|
|
24
|
+
};
|
|
25
|
+
width: {
|
|
26
|
+
type: NumberConstructor;
|
|
27
|
+
default: undefined;
|
|
28
|
+
};
|
|
29
|
+
height: {
|
|
30
|
+
type: NumberConstructor;
|
|
31
|
+
default: undefined;
|
|
32
|
+
};
|
|
33
|
+
class: {
|
|
34
|
+
type: StringConstructor;
|
|
35
|
+
default: undefined;
|
|
36
|
+
};
|
|
37
|
+
}>, () => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
|
|
38
|
+
[key: string]: any;
|
|
39
|
+
}>, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
|
|
40
|
+
data: {
|
|
41
|
+
type: () => DonutChartDatum[];
|
|
42
|
+
required: true;
|
|
43
|
+
};
|
|
44
|
+
label: {
|
|
45
|
+
type: StringConstructor;
|
|
46
|
+
default: string;
|
|
47
|
+
};
|
|
48
|
+
width: {
|
|
49
|
+
type: NumberConstructor;
|
|
50
|
+
default: undefined;
|
|
51
|
+
};
|
|
52
|
+
height: {
|
|
53
|
+
type: NumberConstructor;
|
|
54
|
+
default: undefined;
|
|
55
|
+
};
|
|
56
|
+
class: {
|
|
57
|
+
type: StringConstructor;
|
|
58
|
+
default: undefined;
|
|
59
|
+
};
|
|
60
|
+
}>> & Readonly<{}>, {
|
|
61
|
+
class: string;
|
|
62
|
+
label: string;
|
|
63
|
+
width: number;
|
|
64
|
+
height: number;
|
|
65
|
+
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
|
66
|
+
//# sourceMappingURL=DonutChart.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DonutChart.d.ts","sourceRoot":"","sources":["../src/DonutChart.ts"],"names":[],"mappings":"AAGA,MAAM,MAAM,eAAe,GAAG;IAAE,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAAC,CAAC,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AACjH,MAAM,MAAM,cAAc,GAAG,MAAM,CAAC;AAEpC,MAAM,MAAM,eAAe,GAAG;IAC5B,IAAI,EAAE,eAAe,EAAE,CAAC;IACxB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAOF,eAAO,MAAM,UAAU;;cAGI,MAAM,eAAe,EAAE;;;;;;;;;;;;;;;;;;;;;;;cAAvB,MAAM,eAAe,EAAE;;;;;;;;;;;;;;;;;;;;;;;;4EAwChD,CAAC"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { defineComponent, h } from "vue";
|
|
2
|
+
import { classNames } from "./classNames.js";
|
|
3
|
+
const DATA_TONES = [
|
|
4
|
+
"category1", "category2", "category3", "category4",
|
|
5
|
+
"category5", "category6", "category7", "category8",
|
|
6
|
+
];
|
|
7
|
+
export const DonutChart = defineComponent({
|
|
8
|
+
name: "DonutChart",
|
|
9
|
+
props: {
|
|
10
|
+
data: { type: Array, required: true },
|
|
11
|
+
label: { type: String, default: "Donut chart" },
|
|
12
|
+
width: { type: Number, default: undefined },
|
|
13
|
+
height: { type: Number, default: undefined },
|
|
14
|
+
class: { type: String, default: undefined },
|
|
15
|
+
},
|
|
16
|
+
setup(props, { attrs }) {
|
|
17
|
+
return () => {
|
|
18
|
+
const label = props.label ?? "Donut chart";
|
|
19
|
+
const total = props.data.reduce((sum, datum) => sum + (datum.value ?? datum.y ?? 0), 0);
|
|
20
|
+
return h("figure", {
|
|
21
|
+
...attrs,
|
|
22
|
+
class: classNames("st-donutChart", props.class),
|
|
23
|
+
"aria-label": label,
|
|
24
|
+
}, [
|
|
25
|
+
h("span", { class: "st-visually-hidden" }, label),
|
|
26
|
+
h("svg", { viewBox: "0 0 120 120", "aria-hidden": "true" }, [
|
|
27
|
+
...props.data.map((datum, index) => h("circle", {
|
|
28
|
+
key: index,
|
|
29
|
+
class: classNames("st-donutChart__slice", `st-donutChart__slice--${datum.tone ?? DATA_TONES[index % DATA_TONES.length]}`),
|
|
30
|
+
cx: "60",
|
|
31
|
+
cy: "60",
|
|
32
|
+
r: 36 - index * 3,
|
|
33
|
+
fill: "none",
|
|
34
|
+
"stroke-width": "8",
|
|
35
|
+
})),
|
|
36
|
+
h("text", { class: "st-donutChart__center", x: "60", y: "64", "text-anchor": "middle" }, String(total)),
|
|
37
|
+
]),
|
|
38
|
+
]);
|
|
39
|
+
};
|
|
40
|
+
},
|
|
41
|
+
});
|
|
42
|
+
//# sourceMappingURL=DonutChart.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DonutChart.js","sourceRoot":"","sources":["../src/DonutChart.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACzC,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAa7C,MAAM,UAAU,GAAG;IACjB,WAAW,EAAE,WAAW,EAAE,WAAW,EAAE,WAAW;IAClD,WAAW,EAAE,WAAW,EAAE,WAAW,EAAE,WAAW;CACnD,CAAC;AAEF,MAAM,CAAC,MAAM,UAAU,GAAG,eAAe,CAAC;IACxC,IAAI,EAAE,YAAY;IAClB,KAAK,EAAE;QACL,IAAI,EAAE,EAAE,IAAI,EAAE,KAAgC,EAAE,QAAQ,EAAE,IAAI,EAAE;QAChE,KAAK,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa,EAAE;QAC/C,KAAK,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE;QAC3C,MAAM,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE;QAC5C,KAAK,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE;KAC5C;IACD,KAAK,CAAC,KAAK,EAAE,EAAE,KAAK,EAAE;QACpB,OAAO,GAAG,EAAE;YACV,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,IAAI,aAAa,CAAC;YAC3C,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE,CAAC,GAAG,GAAG,CAAC,KAAK,CAAC,KAAK,IAAI,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;YACxF,OAAO,CAAC,CACN,QAAQ,EACR;gBACE,GAAG,KAAK;gBACR,KAAK,EAAE,UAAU,CAAC,eAAe,EAAE,KAAK,CAAC,KAAK,CAAC;gBAC/C,YAAY,EAAE,KAAK;aACpB,EACD;gBACE,CAAC,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,oBAAoB,EAAE,EAAE,KAAK,CAAC;gBACjD,CAAC,CAAC,KAAK,EAAE,EAAE,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,EAAE,EAAE;oBAC1D,GAAG,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,CACjC,CAAC,CAAC,QAAQ,EAAE;wBACV,GAAG,EAAE,KAAK;wBACV,KAAK,EAAE,UAAU,CACf,sBAAsB,EACtB,yBAAyB,KAAK,CAAC,IAAI,IAAI,UAAU,CAAC,KAAK,GAAG,UAAU,CAAC,MAAM,CAAC,EAAE,CAC/E;wBACD,EAAE,EAAE,IAAI;wBACR,EAAE,EAAE,IAAI;wBACR,CAAC,EAAE,EAAE,GAAG,KAAK,GAAG,CAAC;wBACjB,IAAI,EAAE,MAAM;wBACZ,cAAc,EAAE,GAAG;qBACpB,CAAC,CACH;oBACD,CAAC,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,uBAAuB,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,aAAa,EAAE,QAAQ,EAAE,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;iBACxG,CAAC;aACH,CACF,CAAC;QACJ,CAAC,CAAC;IACJ,CAAC;CACF,CAAC,CAAC"}
|
package/dist/Drawer.d.ts
ADDED
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
export type DrawerPlacement = "left" | "right";
|
|
2
|
+
export type DrawerProps = {
|
|
3
|
+
open?: boolean;
|
|
4
|
+
title?: string;
|
|
5
|
+
description?: string;
|
|
6
|
+
placement?: DrawerPlacement;
|
|
7
|
+
class?: string;
|
|
8
|
+
};
|
|
9
|
+
export declare const Drawer: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
|
|
10
|
+
open: {
|
|
11
|
+
type: BooleanConstructor;
|
|
12
|
+
default: boolean;
|
|
13
|
+
};
|
|
14
|
+
title: {
|
|
15
|
+
type: StringConstructor;
|
|
16
|
+
default: undefined;
|
|
17
|
+
};
|
|
18
|
+
description: {
|
|
19
|
+
type: StringConstructor;
|
|
20
|
+
default: undefined;
|
|
21
|
+
};
|
|
22
|
+
placement: {
|
|
23
|
+
type: () => DrawerPlacement;
|
|
24
|
+
default: string;
|
|
25
|
+
};
|
|
26
|
+
class: {
|
|
27
|
+
type: StringConstructor;
|
|
28
|
+
default: undefined;
|
|
29
|
+
};
|
|
30
|
+
}>, () => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
|
|
31
|
+
[key: string]: any;
|
|
32
|
+
}> | null, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, "close"[], "close", import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
|
|
33
|
+
open: {
|
|
34
|
+
type: BooleanConstructor;
|
|
35
|
+
default: boolean;
|
|
36
|
+
};
|
|
37
|
+
title: {
|
|
38
|
+
type: StringConstructor;
|
|
39
|
+
default: undefined;
|
|
40
|
+
};
|
|
41
|
+
description: {
|
|
42
|
+
type: StringConstructor;
|
|
43
|
+
default: undefined;
|
|
44
|
+
};
|
|
45
|
+
placement: {
|
|
46
|
+
type: () => DrawerPlacement;
|
|
47
|
+
default: string;
|
|
48
|
+
};
|
|
49
|
+
class: {
|
|
50
|
+
type: StringConstructor;
|
|
51
|
+
default: undefined;
|
|
52
|
+
};
|
|
53
|
+
}>> & Readonly<{
|
|
54
|
+
onClose?: ((...args: any[]) => any) | undefined;
|
|
55
|
+
}>, {
|
|
56
|
+
class: string;
|
|
57
|
+
title: string;
|
|
58
|
+
open: boolean;
|
|
59
|
+
description: string;
|
|
60
|
+
placement: DrawerPlacement;
|
|
61
|
+
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
|
62
|
+
//# sourceMappingURL=Drawer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Drawer.d.ts","sourceRoot":"","sources":["../src/Drawer.ts"],"names":[],"mappings":"AAGA,MAAM,MAAM,eAAe,GAAG,MAAM,GAAG,OAAO,CAAC;AAE/C,MAAM,MAAM,WAAW,GAAG;IACxB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,eAAe,CAAC;IAC5B,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,eAAO,MAAM,MAAM;;;;;;;;;;;;;;cAMc,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;cAArB,MAAM,eAAe;;;;;;;;;;;;;;;4EAwFpD,CAAC"}
|
package/dist/Drawer.js
ADDED
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
import { defineComponent, h, onMounted, onUnmounted, ref, watch } from "vue";
|
|
2
|
+
import { classNames } from "./classNames.js";
|
|
3
|
+
export const Drawer = defineComponent({
|
|
4
|
+
name: "Drawer",
|
|
5
|
+
props: {
|
|
6
|
+
open: { type: Boolean, default: false },
|
|
7
|
+
title: { type: String, default: undefined },
|
|
8
|
+
description: { type: String, default: undefined },
|
|
9
|
+
placement: { type: String, default: "right" },
|
|
10
|
+
class: { type: String, default: undefined },
|
|
11
|
+
},
|
|
12
|
+
emits: ["close"],
|
|
13
|
+
setup(props, { emit, slots, attrs }) {
|
|
14
|
+
const panelRef = ref(null);
|
|
15
|
+
const onKeyDown = (event) => {
|
|
16
|
+
if (event.key === "Escape") {
|
|
17
|
+
event.preventDefault();
|
|
18
|
+
emit("close");
|
|
19
|
+
}
|
|
20
|
+
};
|
|
21
|
+
watch(() => props.open, (open) => {
|
|
22
|
+
if (open) {
|
|
23
|
+
document.body.style.overflow = "hidden";
|
|
24
|
+
document.addEventListener("keydown", onKeyDown);
|
|
25
|
+
}
|
|
26
|
+
else {
|
|
27
|
+
document.body.style.overflow = "";
|
|
28
|
+
document.removeEventListener("keydown", onKeyDown);
|
|
29
|
+
}
|
|
30
|
+
});
|
|
31
|
+
onUnmounted(() => {
|
|
32
|
+
document.body.style.overflow = "";
|
|
33
|
+
document.removeEventListener("keydown", onKeyDown);
|
|
34
|
+
});
|
|
35
|
+
return () => {
|
|
36
|
+
if (!props.open)
|
|
37
|
+
return null;
|
|
38
|
+
return h("div", {
|
|
39
|
+
class: "st-drawer__backdrop",
|
|
40
|
+
"data-testid": "st-drawer-backdrop",
|
|
41
|
+
role: "presentation",
|
|
42
|
+
onClick: (event) => {
|
|
43
|
+
if (event.target === event.currentTarget)
|
|
44
|
+
emit("close");
|
|
45
|
+
},
|
|
46
|
+
}, h("aside", {
|
|
47
|
+
...attrs,
|
|
48
|
+
ref: panelRef,
|
|
49
|
+
class: classNames("st-drawer", `st-drawer--${props.placement}`, props.class),
|
|
50
|
+
role: "dialog",
|
|
51
|
+
"aria-modal": "true",
|
|
52
|
+
"aria-label": props.title || "Drawer",
|
|
53
|
+
tabindex: -1,
|
|
54
|
+
}, [
|
|
55
|
+
h("div", { class: "st-drawer__header" }, [
|
|
56
|
+
props.title
|
|
57
|
+
? h("h2", { class: "st-drawer__title" }, props.title)
|
|
58
|
+
: null,
|
|
59
|
+
h("button", {
|
|
60
|
+
type: "button",
|
|
61
|
+
class: "st-drawer__close",
|
|
62
|
+
"aria-label": "Close",
|
|
63
|
+
onClick: () => emit("close"),
|
|
64
|
+
}, "x"),
|
|
65
|
+
]),
|
|
66
|
+
props.description
|
|
67
|
+
? h("p", { class: "st-drawer__description" }, props.description)
|
|
68
|
+
: null,
|
|
69
|
+
h("div", { class: "st-drawer__body" }, slots.default?.()),
|
|
70
|
+
slots.footer
|
|
71
|
+
? h("div", { class: "st-drawer__footer" }, slots.footer())
|
|
72
|
+
: null,
|
|
73
|
+
]));
|
|
74
|
+
};
|
|
75
|
+
},
|
|
76
|
+
});
|
|
77
|
+
//# sourceMappingURL=Drawer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Drawer.js","sourceRoot":"","sources":["../src/Drawer.ts"],"names":[],"mappings":"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"}
|