@reshape-biotech/design-system 0.0.47 → 0.0.48
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/app.css +115 -0
- package/dist/components/activity/Activity.stories.svelte +100 -0
- package/dist/components/activity/Activity.stories.svelte.d.ts +19 -0
- package/dist/components/activity/Activity.svelte +80 -0
- package/dist/components/activity/Activity.svelte.d.ts +18 -0
- package/dist/components/activity/index.d.ts +1 -0
- package/dist/components/activity/index.js +1 -0
- package/dist/components/avatar/Avatar.svelte +63 -0
- package/dist/components/avatar/Avatar.svelte.d.ts +8 -0
- package/dist/components/avatar/index.d.ts +1 -0
- package/dist/components/avatar/index.js +1 -0
- package/dist/components/banner/Banner.stories.svelte +129 -0
- package/dist/components/banner/Banner.stories.svelte.d.ts +19 -0
- package/dist/components/banner/Banner.svelte +59 -0
- package/dist/components/banner/Banner.svelte.d.ts +11 -0
- package/dist/components/banner/index.d.ts +1 -0
- package/dist/components/banner/index.js +1 -0
- package/dist/components/button/Button.stories.svelte +37 -0
- package/dist/components/button/Button.stories.svelte.d.ts +19 -0
- package/dist/components/button/Button.svelte +263 -0
- package/dist/components/button/Button.svelte.d.ts +20 -0
- package/dist/components/button/index.d.ts +1 -0
- package/dist/components/button/index.js +1 -0
- package/dist/components/collapsible/Collapsible.stories.svelte +40 -0
- package/dist/components/collapsible/Collapsible.stories.svelte.d.ts +19 -0
- package/dist/components/collapsible/components/collapsible-content.svelte +26 -0
- package/dist/components/collapsible/components/collapsible-content.svelte.d.ts +10 -0
- package/dist/components/collapsible/components/collapsible-trigger.svelte +36 -0
- package/dist/components/collapsible/components/collapsible-trigger.svelte.d.ts +4 -0
- package/dist/components/collapsible/index.d.ts +5 -0
- package/dist/components/collapsible/index.js +4 -0
- package/dist/components/collapsible/types.d.ts +9 -0
- package/dist/components/collapsible/types.js +1 -0
- package/dist/components/combobox/Combobox.stories.svelte +119 -0
- package/dist/components/combobox/Combobox.stories.svelte.d.ts +19 -0
- package/dist/components/combobox/components/combobox-add.svelte +30 -0
- package/dist/components/combobox/components/combobox-add.svelte.d.ts +8 -0
- package/dist/components/combobox/components/combobox-content.svelte +137 -0
- package/dist/components/combobox/components/combobox-content.svelte.d.ts +4 -0
- package/dist/components/combobox/components/combobox-indicator.svelte +5 -0
- package/dist/components/combobox/components/combobox-indicator.svelte.d.ts +18 -0
- package/dist/components/combobox/index.d.ts +14 -0
- package/dist/components/combobox/index.js +15 -0
- package/dist/components/combobox/types.d.ts +20 -0
- package/dist/components/combobox/types.js +1 -0
- package/dist/components/datepicker/DatePicker.svelte +344 -0
- package/dist/components/datepicker/DatePicker.svelte.d.ts +8 -0
- package/dist/components/datepicker/index.d.ts +1 -0
- package/dist/components/datepicker/index.js +1 -0
- package/dist/components/divider/Divider.stories.svelte +14 -0
- package/dist/components/divider/Divider.stories.svelte.d.ts +27 -0
- package/dist/components/divider/Divider.svelte +9 -0
- package/dist/components/divider/Divider.svelte.d.ts +6 -0
- package/dist/components/divider/index.d.ts +1 -0
- package/dist/components/divider/index.js +1 -0
- package/dist/components/drawer/Drawer.stories.svelte +64 -0
- package/dist/components/drawer/Drawer.stories.svelte.d.ts +27 -0
- package/dist/components/drawer/Drawer.svelte +41 -0
- package/dist/components/drawer/Drawer.svelte.d.ts +12 -0
- package/dist/components/drawer/DrawerLabel.svelte +62 -0
- package/dist/components/drawer/DrawerLabel.svelte.d.ts +9 -0
- package/dist/components/drawer/index.d.ts +1 -0
- package/dist/components/drawer/index.js +1 -0
- package/dist/components/dropdown/Dropdown.stories.svelte +236 -0
- package/dist/components/dropdown/Dropdown.stories.svelte.d.ts +27 -0
- package/dist/components/dropdown/Dropdown.svelte +69 -0
- package/dist/components/dropdown/Dropdown.svelte.d.ts +26 -0
- package/dist/components/dropdown/components/DropdownContent.svelte +29 -0
- package/dist/components/dropdown/components/DropdownContent.svelte.d.ts +10 -0
- package/dist/components/dropdown/components/DropdownMenu.svelte +23 -0
- package/dist/components/dropdown/components/DropdownMenu.svelte.d.ts +8 -0
- package/dist/components/dropdown/components/DropdownTrigger.svelte +46 -0
- package/dist/components/dropdown/components/DropdownTrigger.svelte.d.ts +13 -0
- package/dist/components/dropdown/components/OutlinedButton.svelte +61 -0
- package/dist/components/dropdown/components/OutlinedButton.svelte.d.ts +8 -0
- package/dist/components/dropdown/index.d.ts +1 -0
- package/dist/components/dropdown/index.js +1 -0
- package/dist/components/empty-content/EmptyContent.svelte +19 -0
- package/dist/components/empty-content/EmptyContent.svelte.d.ts +8 -0
- package/dist/components/graphs/chart/Chart.stories.svelte +128 -0
- package/dist/components/graphs/chart/Chart.stories.svelte.d.ts +19 -0
- package/dist/components/graphs/chart/Chart.svelte +145 -0
- package/dist/components/graphs/chart/Chart.svelte.d.ts +17 -0
- package/dist/components/graphs/index.d.ts +4 -0
- package/dist/components/graphs/index.js +4 -0
- package/dist/components/graphs/line/LineChart.stories.svelte +73 -0
- package/dist/components/graphs/line/LineChart.stories.svelte.d.ts +19 -0
- package/dist/components/graphs/line/LineChart.svelte +102 -0
- package/dist/components/graphs/line/LineChart.svelte.d.ts +18 -0
- package/dist/components/graphs/multiline/MultiLineChart.stories.svelte +77 -0
- package/dist/components/graphs/multiline/MultiLineChart.stories.svelte.d.ts +19 -0
- package/dist/components/graphs/multiline/MultiLineChart.svelte +108 -0
- package/dist/components/graphs/multiline/MultiLineChart.svelte.d.ts +22 -0
- package/dist/components/graphs/scatterplot/Scatterplot.stories.svelte +78 -0
- package/dist/components/graphs/scatterplot/Scatterplot.stories.svelte.d.ts +19 -0
- package/dist/components/graphs/scatterplot/Scatterplot.svelte +67 -0
- package/dist/components/graphs/scatterplot/Scatterplot.svelte.d.ts +16 -0
- package/dist/components/icon-button/IconButton.stories.svelte +82 -0
- package/dist/components/icon-button/IconButton.stories.svelte.d.ts +19 -0
- package/dist/components/icon-button/IconButton.svelte +152 -0
- package/dist/components/icon-button/IconButton.svelte.d.ts +16 -0
- package/dist/components/icon-button/index.d.ts +1 -0
- package/dist/components/icon-button/index.js +1 -0
- package/dist/components/icons/AnalysisIcon.stories.svelte +38 -0
- package/dist/components/icons/AnalysisIcon.stories.svelte.d.ts +27 -0
- package/dist/components/icons/AnalysisIcon.svelte +110 -0
- package/dist/components/icons/AnalysisIcon.svelte.d.ts +10 -0
- package/dist/components/icons/Icon.svelte +23 -0
- package/dist/components/icons/Icon.svelte.d.ts +4 -0
- package/dist/components/icons/custom/Halo.svelte +32 -0
- package/dist/components/icons/custom/Halo.svelte.d.ts +26 -0
- package/dist/components/icons/custom/Well.svelte +26 -0
- package/dist/components/icons/custom/Well.svelte.d.ts +26 -0
- package/dist/components/icons/index.d.ts +17 -0
- package/dist/components/icons/index.js +21 -0
- package/dist/components/icons/types.d.ts +0 -0
- package/dist/components/icons/types.js +1 -0
- package/dist/components/image/Image.svelte +55 -0
- package/dist/components/image/Image.svelte.d.ts +7 -0
- package/dist/components/image/index.d.ts +1 -0
- package/dist/components/image/index.js +1 -0
- package/dist/components/input/Input.stories.svelte +87 -0
- package/dist/components/input/Input.stories.svelte.d.ts +27 -0
- package/dist/components/input/Input.svelte +204 -0
- package/dist/components/input/Input.svelte.d.ts +24 -0
- package/dist/components/input/index.d.ts +1 -0
- package/dist/components/input/index.js +1 -0
- package/dist/components/list/List.stories.svelte +97 -0
- package/dist/components/list/List.stories.svelte.d.ts +19 -0
- package/dist/components/list/List.svelte +69 -0
- package/dist/components/list/List.svelte.d.ts +24 -0
- package/dist/components/list/index.d.ts +1 -0
- package/dist/components/list/index.js +1 -0
- package/dist/components/logo/Logo.stories.svelte +21 -0
- package/dist/components/logo/Logo.stories.svelte.d.ts +27 -0
- package/dist/components/logo/Logo.svelte +39 -0
- package/dist/components/logo/Logo.svelte.d.ts +7 -0
- package/dist/components/logo/index.d.ts +1 -0
- package/dist/components/logo/index.js +1 -0
- package/dist/components/markdown/Markdown.stories.svelte +41 -0
- package/dist/components/markdown/Markdown.stories.svelte.d.ts +27 -0
- package/dist/components/markdown/Markdown.svelte +12 -0
- package/dist/components/markdown/Markdown.svelte.d.ts +6 -0
- package/dist/components/markdown/index.d.ts +1 -0
- package/dist/components/markdown/index.js +1 -0
- package/dist/components/modal/Modal.stories.svelte +39 -0
- package/dist/components/modal/Modal.stories.svelte.d.ts +19 -0
- package/dist/components/modal/Modal.svelte +76 -0
- package/dist/components/modal/Modal.svelte.d.ts +17 -0
- package/dist/components/modal/index.d.ts +1 -0
- package/dist/components/modal/index.js +1 -0
- package/dist/components/notification-popup/NotificationPopup.stories.svelte +27 -0
- package/dist/components/notification-popup/NotificationPopup.stories.svelte.d.ts +27 -0
- package/dist/components/notification-popup/NotificationPopup.svelte +33 -0
- package/dist/components/notification-popup/NotificationPopup.svelte.d.ts +11 -0
- package/dist/components/notification-popup/index.d.ts +1 -0
- package/dist/components/notification-popup/index.js +1 -0
- package/dist/components/pill/Pill.svelte +39 -0
- package/dist/components/pill/Pill.svelte.d.ts +10 -0
- package/dist/components/pill/index.d.ts +1 -0
- package/dist/components/pill/index.js +1 -0
- package/dist/components/progress-circle/ProgressCircle.svelte +79 -0
- package/dist/components/progress-circle/ProgressCircle.svelte.d.ts +7 -0
- package/dist/components/progress-circle/index.d.ts +1 -0
- package/dist/components/progress-circle/index.js +1 -0
- package/dist/components/segmented-control-buttons/ControlButton.svelte +57 -0
- package/dist/components/segmented-control-buttons/ControlButton.svelte.d.ts +14 -0
- package/dist/components/segmented-control-buttons/SegmentedControlButtons.stories.svelte +45 -0
- package/dist/components/segmented-control-buttons/SegmentedControlButtons.stories.svelte.d.ts +19 -0
- package/dist/components/segmented-control-buttons/SegmentedControlButtons.svelte +21 -0
- package/dist/components/segmented-control-buttons/SegmentedControlButtons.svelte.d.ts +12 -0
- package/dist/components/segmented-control-buttons/index.d.ts +1 -0
- package/dist/components/segmented-control-buttons/index.js +1 -0
- package/dist/components/select/Select.stories.svelte +113 -0
- package/dist/components/select/Select.stories.svelte.d.ts +19 -0
- package/dist/components/select/Select.svelte +141 -0
- package/dist/components/select/Select.svelte.d.ts +60 -0
- package/dist/components/select/index.d.ts +7 -0
- package/dist/components/select/index.js +1 -0
- package/dist/components/skeleton-loader/SkeletonLoader.stories.svelte +45 -0
- package/dist/components/skeleton-loader/SkeletonLoader.stories.svelte.d.ts +27 -0
- package/dist/components/skeleton-loader/SkeletonLoader.svelte +17 -0
- package/dist/components/skeleton-loader/SkeletonLoader.svelte.d.ts +14 -0
- package/dist/components/skeleton-loader/StatcardSkeleton.svelte +14 -0
- package/dist/components/skeleton-loader/StatcardSkeleton.svelte.d.ts +18 -0
- package/dist/components/skeleton-loader/components/Skeleton.svelte +14 -0
- package/dist/components/skeleton-loader/components/Skeleton.svelte.d.ts +8 -0
- package/dist/components/skeleton-loader/components/SkeletonImage.svelte +14 -0
- package/dist/components/skeleton-loader/components/SkeletonImage.svelte.d.ts +26 -0
- package/dist/components/skeleton-loader/index.d.ts +3 -0
- package/dist/components/skeleton-loader/index.js +3 -0
- package/dist/components/slider/Slider.stories.svelte +37 -0
- package/dist/components/slider/Slider.stories.svelte.d.ts +27 -0
- package/dist/components/slider/Slider.svelte +126 -0
- package/dist/components/slider/Slider.svelte.d.ts +31 -0
- package/dist/components/slider/index.d.ts +1 -0
- package/dist/components/slider/index.js +1 -0
- package/dist/components/spinner/Spinner.svelte +27 -0
- package/dist/components/spinner/Spinner.svelte.d.ts +6 -0
- package/dist/components/spinner/index.d.ts +1 -0
- package/dist/components/spinner/index.js +1 -0
- package/dist/components/stat-card/StatCard.stories.svelte +32 -0
- package/dist/components/stat-card/StatCard.stories.svelte.d.ts +27 -0
- package/dist/components/stat-card/StatCard.svelte +52 -0
- package/dist/components/stat-card/StatCard.svelte.d.ts +10 -0
- package/dist/components/stat-card/index.d.ts +1 -0
- package/dist/components/stat-card/index.js +1 -0
- package/dist/components/status-badge/StatusBadge.stories.svelte +401 -0
- package/dist/components/status-badge/StatusBadge.stories.svelte.d.ts +19 -0
- package/dist/components/status-badge/StatusBadge.svelte +147 -0
- package/dist/components/status-badge/StatusBadge.svelte.d.ts +12 -0
- package/dist/components/status-badge/index.d.ts +1 -0
- package/dist/components/status-badge/index.js +1 -0
- package/dist/components/table/Table.stories.svelte +90 -0
- package/dist/components/table/Table.stories.svelte.d.ts +24 -0
- package/dist/components/table/Table.svelte +47 -0
- package/dist/components/table/Table.svelte.d.ts +21 -0
- package/dist/components/table/components/TBody.svelte +14 -0
- package/dist/components/table/components/TBody.svelte.d.ts +8 -0
- package/dist/components/table/components/THead.svelte +14 -0
- package/dist/components/table/components/THead.svelte.d.ts +8 -0
- package/dist/components/table/components/Td.svelte +14 -0
- package/dist/components/table/components/Td.svelte.d.ts +8 -0
- package/dist/components/table/components/Th.svelte +15 -0
- package/dist/components/table/components/Th.svelte.d.ts +9 -0
- package/dist/components/table/components/Tr.svelte +31 -0
- package/dist/components/table/components/Tr.svelte.d.ts +8 -0
- package/dist/components/table/index.d.ts +1 -0
- package/dist/components/table/index.js +1 -0
- package/dist/components/tabs/Tabs.stories.svelte +28 -0
- package/dist/components/tabs/Tabs.stories.svelte.d.ts +27 -0
- package/dist/components/tabs/Tabs.svelte +13 -0
- package/dist/components/tabs/Tabs.svelte.d.ts +14 -0
- package/dist/components/tabs/components/Content.svelte +15 -0
- package/dist/components/tabs/components/Content.svelte.d.ts +9 -0
- package/dist/components/tabs/components/Tab.svelte +21 -0
- package/dist/components/tabs/components/Tab.svelte.d.ts +10 -0
- package/dist/components/tabs/components/Tabs.svelte +14 -0
- package/dist/components/tabs/components/Tabs.svelte.d.ts +8 -0
- package/dist/components/tabs/index.d.ts +1 -0
- package/dist/components/tabs/index.js +1 -0
- package/dist/components/tag/Tag.stories.svelte +51 -0
- package/dist/components/tag/Tag.stories.svelte.d.ts +19 -0
- package/dist/components/tag/Tag.svelte +102 -0
- package/dist/components/tag/Tag.svelte.d.ts +12 -0
- package/dist/components/tag/index.d.ts +1 -0
- package/dist/components/tag/index.js +1 -0
- package/dist/components/toggle/Toggle.stories.svelte +15 -0
- package/dist/components/toggle/Toggle.stories.svelte.d.ts +27 -0
- package/dist/components/toggle/Toggle.svelte +73 -0
- package/dist/components/toggle/Toggle.svelte.d.ts +8 -0
- package/dist/components/toggle/index.d.ts +1 -0
- package/dist/components/toggle/index.js +1 -0
- package/dist/components/tooltip/Tooltip.stories.svelte +126 -0
- package/dist/components/tooltip/Tooltip.stories.svelte.d.ts +27 -0
- package/dist/components/tooltip/Tooltip.svelte +49 -0
- package/dist/components/tooltip/Tooltip.svelte.d.ts +13 -0
- package/dist/components/tooltip/index.d.ts +1 -0
- package/dist/components/tooltip/index.js +1 -0
- package/dist/fonts/MDSystemMono-Regular.woff +0 -0
- package/dist/fonts/MDSystemMono-Regular.woff2 +0 -0
- package/dist/fonts/afAnotherSans-Medium.woff2 +0 -0
- package/dist/fonts/afAnotherSans-Regular.woff2 +0 -0
- package/dist/fonts/afAnotherSans-SemiBold.woff2 +0 -0
- package/dist/fonts/afAnotherSans.woff2 +0 -0
- package/dist/fonts/index.d.ts +4 -0
- package/dist/fonts/index.js +6 -0
- package/dist/index.d.ts +37 -0
- package/dist/index.js +39 -68464
- package/dist/tailwind-safelist.d.ts +27 -0
- package/dist/tailwind-safelist.js +475 -0
- package/dist/tailwind.d.ts +11 -0
- package/dist/tailwind.js +1 -0
- package/dist/tailwind.preset.d.ts +344 -0
- package/dist/tailwind.preset.js +55 -0
- package/dist/tokens.d.ts +598 -0
- package/dist/tokens.js +285 -0
- package/dist/types/fonts.d.ts +4 -0
- package/package.json +2 -1
- package/dist/index.css +0 -1
- package/dist/index.umd.cjs +0 -148
|
@@ -0,0 +1,401 @@
|
|
|
1
|
+
<script module lang="ts">
|
|
2
|
+
import StatusBadge from '../status-badge/StatusBadge.svelte';
|
|
3
|
+
import Tooltip from '../tooltip/Tooltip.svelte';
|
|
4
|
+
import ProgressCircle from '../progress-circle/ProgressCircle.svelte';
|
|
5
|
+
import { defineMeta } from '@storybook/addon-svelte-csf';
|
|
6
|
+
|
|
7
|
+
import {
|
|
8
|
+
SpinnerGap,
|
|
9
|
+
CheckCircle,
|
|
10
|
+
Moon,
|
|
11
|
+
StopCircle,
|
|
12
|
+
WifiSlash,
|
|
13
|
+
WarningCircle
|
|
14
|
+
} from 'phosphor-svelte';
|
|
15
|
+
|
|
16
|
+
const { Story } = defineMeta({
|
|
17
|
+
component: StatusBadge,
|
|
18
|
+
title: 'Design System/StatusBadge',
|
|
19
|
+
tags: ['autodocs']
|
|
20
|
+
});
|
|
21
|
+
|
|
22
|
+
let calculated_progress = 32;
|
|
23
|
+
</script>
|
|
24
|
+
|
|
25
|
+
<Story name="Neutral">
|
|
26
|
+
<p class="font-mono text-xs">Medium:</p>
|
|
27
|
+
<div class="flex flex-row gap-4">
|
|
28
|
+
<div class="flex flex-row gap-1">
|
|
29
|
+
<StatusBadge type="neutral">
|
|
30
|
+
{#snippet icon()}
|
|
31
|
+
<SpinnerGap size="100%" weight="bold" />
|
|
32
|
+
{/snippet}
|
|
33
|
+
{#snippet content()}
|
|
34
|
+
<div>Pending</div>
|
|
35
|
+
{/snippet}
|
|
36
|
+
</StatusBadge>
|
|
37
|
+
<StatusBadge type="neutral">
|
|
38
|
+
{#snippet icon()}
|
|
39
|
+
<SpinnerGap size="100%" weight="bold" />
|
|
40
|
+
{/snippet}
|
|
41
|
+
</StatusBadge>
|
|
42
|
+
</div>
|
|
43
|
+
<div class="flex flex-row gap-1">
|
|
44
|
+
<StatusBadge type="neutral">
|
|
45
|
+
{#snippet icon()}
|
|
46
|
+
<Moon size="100%" weight="bold" />
|
|
47
|
+
{/snippet}
|
|
48
|
+
{#snippet content()}
|
|
49
|
+
<div>Idle</div>
|
|
50
|
+
{/snippet}
|
|
51
|
+
</StatusBadge>
|
|
52
|
+
<StatusBadge type="neutral">
|
|
53
|
+
{#snippet icon()}
|
|
54
|
+
<Moon size="100%" weight="bold" />
|
|
55
|
+
{/snippet}
|
|
56
|
+
</StatusBadge>
|
|
57
|
+
</div>
|
|
58
|
+
</div>
|
|
59
|
+
<br />
|
|
60
|
+
<p class="font-mono text-xs">Small:</p>
|
|
61
|
+
<div class="flex flex-row gap-10">
|
|
62
|
+
<div class="flex flex-row gap-1">
|
|
63
|
+
<StatusBadge type="neutral" size="sm">
|
|
64
|
+
{#snippet icon()}
|
|
65
|
+
<SpinnerGap size="100%" weight="bold" />
|
|
66
|
+
{/snippet}
|
|
67
|
+
{#snippet content()}
|
|
68
|
+
<div>Pending</div>
|
|
69
|
+
{/snippet}
|
|
70
|
+
</StatusBadge>
|
|
71
|
+
<StatusBadge type="neutral" size="sm">
|
|
72
|
+
{#snippet icon()}
|
|
73
|
+
<SpinnerGap size="100%" weight="bold" />
|
|
74
|
+
{/snippet}
|
|
75
|
+
</StatusBadge>
|
|
76
|
+
</div>
|
|
77
|
+
<div class="flex flex-row gap-1">
|
|
78
|
+
<StatusBadge type="neutral" size="sm">
|
|
79
|
+
{#snippet icon()}
|
|
80
|
+
<Moon size="100%" weight="bold" />
|
|
81
|
+
{/snippet}
|
|
82
|
+
{#snippet content()}
|
|
83
|
+
<div>Idle</div>
|
|
84
|
+
{/snippet}
|
|
85
|
+
</StatusBadge>
|
|
86
|
+
<StatusBadge type="neutral" size="sm">
|
|
87
|
+
{#snippet icon()}
|
|
88
|
+
<Moon size="100%" weight="bold" />
|
|
89
|
+
{/snippet}
|
|
90
|
+
</StatusBadge>
|
|
91
|
+
</div>
|
|
92
|
+
</div>
|
|
93
|
+
</Story>
|
|
94
|
+
|
|
95
|
+
<Story name="Success">
|
|
96
|
+
<p class="font-mono text-xs">Medium:</p>
|
|
97
|
+
<div class="flex flex-row gap-4">
|
|
98
|
+
<div class="flex flex-row gap-1">
|
|
99
|
+
<Tooltip>
|
|
100
|
+
{#snippet trigger()}
|
|
101
|
+
<div>
|
|
102
|
+
<StatusBadge type="success">
|
|
103
|
+
{#snippet icon()}
|
|
104
|
+
<CheckCircle size="100%" weight="fill" />
|
|
105
|
+
{/snippet}
|
|
106
|
+
{#snippet content()}
|
|
107
|
+
<div>Completed</div>
|
|
108
|
+
{/snippet}
|
|
109
|
+
</StatusBadge>
|
|
110
|
+
</div>
|
|
111
|
+
{/snippet}
|
|
112
|
+
{#snippet content()}
|
|
113
|
+
<div class="flex flex-col text-left">
|
|
114
|
+
<p class="font-bold">Job completed</p>
|
|
115
|
+
<p class="text-xs">8/30/2024, 11:07 AM</p>
|
|
116
|
+
</div>
|
|
117
|
+
{/snippet}
|
|
118
|
+
</Tooltip>
|
|
119
|
+
<StatusBadge type="success">
|
|
120
|
+
{#snippet icon()}
|
|
121
|
+
<CheckCircle size="100%" weight="fill" />
|
|
122
|
+
{/snippet}
|
|
123
|
+
</StatusBadge>
|
|
124
|
+
</div>
|
|
125
|
+
<div class="flex flex-row gap-1">
|
|
126
|
+
<Tooltip>
|
|
127
|
+
{#snippet trigger()}
|
|
128
|
+
<div>
|
|
129
|
+
<StatusBadge type="success">
|
|
130
|
+
{#snippet icon()}
|
|
131
|
+
<StopCircle size="100%" weight="bold" />
|
|
132
|
+
{/snippet}
|
|
133
|
+
{#snippet content()}
|
|
134
|
+
<div>Stopped</div>
|
|
135
|
+
{/snippet}
|
|
136
|
+
</StatusBadge>
|
|
137
|
+
</div>
|
|
138
|
+
{/snippet}
|
|
139
|
+
{#snippet content()}
|
|
140
|
+
<div class="flex flex-col text-left">
|
|
141
|
+
<p class="font-bold">Job stopped</p>
|
|
142
|
+
<p class="text-xs">8/30/2024, 11:07 AM</p>
|
|
143
|
+
</div>
|
|
144
|
+
{/snippet}
|
|
145
|
+
</Tooltip>
|
|
146
|
+
<StatusBadge type="success">
|
|
147
|
+
{#snippet icon()}
|
|
148
|
+
<StopCircle size="100%" weight="bold" />
|
|
149
|
+
{/snippet}
|
|
150
|
+
</StatusBadge>
|
|
151
|
+
</div>
|
|
152
|
+
</div>
|
|
153
|
+
<br />
|
|
154
|
+
<p class="font-mono text-xs">Small:</p>
|
|
155
|
+
<div class="flex flex-row gap-10">
|
|
156
|
+
<div class="flex flex-row gap-1">
|
|
157
|
+
<Tooltip>
|
|
158
|
+
{#snippet trigger()}
|
|
159
|
+
<StatusBadge type="success" size="sm">
|
|
160
|
+
{#snippet icon()}
|
|
161
|
+
<CheckCircle size="100%" weight="fill" />
|
|
162
|
+
{/snippet}
|
|
163
|
+
{#snippet content()}
|
|
164
|
+
<div>Completed</div>
|
|
165
|
+
{/snippet}
|
|
166
|
+
</StatusBadge>
|
|
167
|
+
{/snippet}
|
|
168
|
+
{#snippet content()}
|
|
169
|
+
<div class="flex flex-col text-left">
|
|
170
|
+
<p class="font-bold">Job completed</p>
|
|
171
|
+
<p class="text-xs">8/30/2024, 11:07 AM</p>
|
|
172
|
+
</div>
|
|
173
|
+
{/snippet}
|
|
174
|
+
</Tooltip>
|
|
175
|
+
<StatusBadge type="success" size="sm">
|
|
176
|
+
{#snippet icon()}
|
|
177
|
+
<CheckCircle size="100%" weight="fill" />
|
|
178
|
+
{/snippet}
|
|
179
|
+
</StatusBadge>
|
|
180
|
+
</div>
|
|
181
|
+
<div class="flex flex-row gap-1">
|
|
182
|
+
<Tooltip>
|
|
183
|
+
{#snippet trigger()}
|
|
184
|
+
<StatusBadge type="success" size="sm">
|
|
185
|
+
{#snippet icon()}
|
|
186
|
+
<StopCircle size="100%" weight="bold" />
|
|
187
|
+
{/snippet}
|
|
188
|
+
{#snippet content()}
|
|
189
|
+
<div>Stopped</div>
|
|
190
|
+
{/snippet}
|
|
191
|
+
</StatusBadge>
|
|
192
|
+
{/snippet}
|
|
193
|
+
{#snippet content()}
|
|
194
|
+
<div class="flex flex-col text-left">
|
|
195
|
+
<p class="font-bold">Job stopped</p>
|
|
196
|
+
<p class="text-xs">8/30/2024, 11:07 AM</p>
|
|
197
|
+
</div>
|
|
198
|
+
{/snippet}
|
|
199
|
+
</Tooltip>
|
|
200
|
+
<StatusBadge type="success" size="sm">
|
|
201
|
+
{#snippet icon()}
|
|
202
|
+
<StopCircle size="100%" weight="bold" />
|
|
203
|
+
{/snippet}
|
|
204
|
+
</StatusBadge>
|
|
205
|
+
</div>
|
|
206
|
+
</div>
|
|
207
|
+
</Story>
|
|
208
|
+
|
|
209
|
+
<Story name="Progress">
|
|
210
|
+
<p class="font-mono text-xs">Medium:</p>
|
|
211
|
+
<div class="flex flex-row gap-1">
|
|
212
|
+
<Tooltip>
|
|
213
|
+
{#snippet trigger()}
|
|
214
|
+
<StatusBadge type="progress">
|
|
215
|
+
{#snippet icon()}
|
|
216
|
+
<ProgressCircle progress={calculated_progress} size="md" />
|
|
217
|
+
{/snippet}
|
|
218
|
+
{#snippet content()}
|
|
219
|
+
<div>Running</div>
|
|
220
|
+
{/snippet}
|
|
221
|
+
{#snippet progress()}
|
|
222
|
+
<div>{calculated_progress}%</div>
|
|
223
|
+
{/snippet}
|
|
224
|
+
</StatusBadge>
|
|
225
|
+
{/snippet}
|
|
226
|
+
{#snippet content()}
|
|
227
|
+
<div class="flex flex-col text-left">
|
|
228
|
+
<p class="font-bold">Job running</p>
|
|
229
|
+
<p class="text-xs">1d 3h 2m left</p>
|
|
230
|
+
</div>
|
|
231
|
+
{/snippet}
|
|
232
|
+
</Tooltip>
|
|
233
|
+
|
|
234
|
+
<StatusBadge type="progress">
|
|
235
|
+
{#snippet icon()}
|
|
236
|
+
<ProgressCircle progress={calculated_progress} size="md" />
|
|
237
|
+
{/snippet}
|
|
238
|
+
{#snippet progress()}
|
|
239
|
+
<div>{calculated_progress}%</div>
|
|
240
|
+
{/snippet}
|
|
241
|
+
</StatusBadge>
|
|
242
|
+
</div>
|
|
243
|
+
<br />
|
|
244
|
+
<p class="font-mono text-xs">Small:</p>
|
|
245
|
+
<div class="flex flex-row gap-1">
|
|
246
|
+
<Tooltip>
|
|
247
|
+
{#snippet trigger()}
|
|
248
|
+
<StatusBadge type="progress" size="sm">
|
|
249
|
+
{#snippet icon()}
|
|
250
|
+
<ProgressCircle progress={calculated_progress} size="sm" />
|
|
251
|
+
{/snippet}
|
|
252
|
+
{#snippet content()}
|
|
253
|
+
<div>Running</div>
|
|
254
|
+
{/snippet}
|
|
255
|
+
{#snippet progress()}
|
|
256
|
+
<div>{calculated_progress}%</div>
|
|
257
|
+
{/snippet}
|
|
258
|
+
</StatusBadge>
|
|
259
|
+
{/snippet}
|
|
260
|
+
{#snippet content()}
|
|
261
|
+
<div class="flex flex-col text-left">
|
|
262
|
+
<p class="font-bold">Job running</p>
|
|
263
|
+
<p class="text-xs">1d 3h 2m left</p>
|
|
264
|
+
</div>
|
|
265
|
+
{/snippet}
|
|
266
|
+
</Tooltip>
|
|
267
|
+
|
|
268
|
+
<StatusBadge type="progress" size="sm">
|
|
269
|
+
{#snippet icon()}
|
|
270
|
+
<ProgressCircle progress={calculated_progress} size="sm" />
|
|
271
|
+
{/snippet}
|
|
272
|
+
{#snippet progress()}
|
|
273
|
+
<div>{calculated_progress}%</div>
|
|
274
|
+
{/snippet}
|
|
275
|
+
</StatusBadge>
|
|
276
|
+
</div>
|
|
277
|
+
</Story>
|
|
278
|
+
|
|
279
|
+
<Story name="Warning">
|
|
280
|
+
<p class="font-mono text-xs">Medium:</p>
|
|
281
|
+
<div class="flex flex-row gap-1">
|
|
282
|
+
<Tooltip>
|
|
283
|
+
{#snippet trigger()}
|
|
284
|
+
<StatusBadge type="warning">
|
|
285
|
+
{#snippet icon()}
|
|
286
|
+
<WifiSlash size="100%" weight="bold" />
|
|
287
|
+
{/snippet}
|
|
288
|
+
{#snippet content()}
|
|
289
|
+
<div>Offline</div>
|
|
290
|
+
{/snippet}
|
|
291
|
+
</StatusBadge>
|
|
292
|
+
{/snippet}
|
|
293
|
+
{#snippet content()}
|
|
294
|
+
<div class="flex flex-col text-left">
|
|
295
|
+
<p class="font-bold">Device is offline</p>
|
|
296
|
+
<p class="text-xs">Connect to the internet to start a Job</p>
|
|
297
|
+
</div>
|
|
298
|
+
{/snippet}
|
|
299
|
+
</Tooltip>
|
|
300
|
+
|
|
301
|
+
<StatusBadge type="warning">
|
|
302
|
+
{#snippet icon()}
|
|
303
|
+
<WifiSlash size="100%" weight="bold" />
|
|
304
|
+
{/snippet}
|
|
305
|
+
</StatusBadge>
|
|
306
|
+
</div>
|
|
307
|
+
<br />
|
|
308
|
+
<p class="font-mono text-xs">Small:</p>
|
|
309
|
+
<div class="flex flex-row gap-1">
|
|
310
|
+
<Tooltip>
|
|
311
|
+
{#snippet trigger()}
|
|
312
|
+
<StatusBadge type="warning" size="sm">
|
|
313
|
+
{#snippet icon()}
|
|
314
|
+
<WifiSlash size="100%" weight="bold" />
|
|
315
|
+
{/snippet}
|
|
316
|
+
{#snippet content()}
|
|
317
|
+
<div>Offline</div>
|
|
318
|
+
{/snippet}
|
|
319
|
+
</StatusBadge>
|
|
320
|
+
{/snippet}
|
|
321
|
+
{#snippet content()}
|
|
322
|
+
<div class="flex flex-col text-left">
|
|
323
|
+
<p class="font-bold">Device is offline</p>
|
|
324
|
+
<p class="text-xs">Connect to the internet to start a Job</p>
|
|
325
|
+
</div>
|
|
326
|
+
{/snippet}
|
|
327
|
+
</Tooltip>
|
|
328
|
+
|
|
329
|
+
<StatusBadge type="warning" size="sm">
|
|
330
|
+
{#snippet icon()}
|
|
331
|
+
<WifiSlash size="100%" weight="bold" />
|
|
332
|
+
{/snippet}
|
|
333
|
+
</StatusBadge>
|
|
334
|
+
</div>
|
|
335
|
+
</Story>
|
|
336
|
+
|
|
337
|
+
<Story name="Error">
|
|
338
|
+
<p class="font-mono text-xs">Medium:</p>
|
|
339
|
+
<div class="flex flex-row gap-1">
|
|
340
|
+
<Tooltip>
|
|
341
|
+
{#snippet trigger()}
|
|
342
|
+
<StatusBadge type="error">
|
|
343
|
+
{#snippet icon()}
|
|
344
|
+
<WarningCircle size="100%" weight="fill" />
|
|
345
|
+
{/snippet}
|
|
346
|
+
{#snippet content()}
|
|
347
|
+
<div>Failed</div>
|
|
348
|
+
{/snippet}
|
|
349
|
+
</StatusBadge>
|
|
350
|
+
{/snippet}
|
|
351
|
+
{#snippet content()}
|
|
352
|
+
<div class="flex flex-col text-left">
|
|
353
|
+
<p class="font-bold">Job failed</p>
|
|
354
|
+
<p class="text-xs">8/30/2024, 11:07 AM</p>
|
|
355
|
+
</div>
|
|
356
|
+
{/snippet}</Tooltip
|
|
357
|
+
>
|
|
358
|
+
|
|
359
|
+
<StatusBadge type="error">
|
|
360
|
+
{#snippet icon()}
|
|
361
|
+
<WarningCircle size="100%" weight="fill" />
|
|
362
|
+
{/snippet}
|
|
363
|
+
</StatusBadge>
|
|
364
|
+
</div>
|
|
365
|
+
<br />
|
|
366
|
+
<p class="font-mono text-xs">Small:</p>
|
|
367
|
+
<div class="flex flex-row gap-1">
|
|
368
|
+
<Tooltip>
|
|
369
|
+
{#snippet trigger()}
|
|
370
|
+
<StatusBadge type="error" size="sm">
|
|
371
|
+
{#snippet icon()}
|
|
372
|
+
<WarningCircle size="100%" weight="fill" />
|
|
373
|
+
{/snippet}
|
|
374
|
+
{#snippet content()}
|
|
375
|
+
<div>Failed</div>
|
|
376
|
+
{/snippet}
|
|
377
|
+
</StatusBadge>
|
|
378
|
+
{/snippet}
|
|
379
|
+
{#snippet content()}
|
|
380
|
+
<div class="flex flex-col text-left">
|
|
381
|
+
<p class="font-bold">Job failed</p>
|
|
382
|
+
<p class="text-xs">8/30/2024, 11:07 AM</p>
|
|
383
|
+
</div>
|
|
384
|
+
{/snippet}</Tooltip
|
|
385
|
+
>
|
|
386
|
+
|
|
387
|
+
<StatusBadge type="error" size="sm">
|
|
388
|
+
{#snippet icon()}
|
|
389
|
+
<WarningCircle size="100%" weight="fill" />
|
|
390
|
+
{/snippet}
|
|
391
|
+
</StatusBadge>
|
|
392
|
+
</div>
|
|
393
|
+
</Story>
|
|
394
|
+
|
|
395
|
+
<Story name="Icon only">
|
|
396
|
+
<StatusBadge type="neutral" iconOnly>
|
|
397
|
+
{#snippet icon()}
|
|
398
|
+
<SpinnerGap size="100%" weight="bold" />
|
|
399
|
+
{/snippet}
|
|
400
|
+
</StatusBadge>
|
|
401
|
+
</Story>
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import StatusBadge from '../status-badge/StatusBadge.svelte';
|
|
2
|
+
interface $$__sveltets_2_IsomorphicComponent<Props extends Record<string, any> = any, Events extends Record<string, any> = any, Slots extends Record<string, any> = any, Exports = {}, Bindings = string> {
|
|
3
|
+
new (options: import('svelte').ComponentConstructorOptions<Props>): import('svelte').SvelteComponent<Props, Events, Slots> & {
|
|
4
|
+
$$bindings?: Bindings;
|
|
5
|
+
} & Exports;
|
|
6
|
+
(internal: unknown, props: {
|
|
7
|
+
$$events?: Events;
|
|
8
|
+
$$slots?: Slots;
|
|
9
|
+
}): Exports & {
|
|
10
|
+
$set?: any;
|
|
11
|
+
$on?: any;
|
|
12
|
+
};
|
|
13
|
+
z_$$bindings?: Bindings;
|
|
14
|
+
}
|
|
15
|
+
declare const StatusBadge: $$__sveltets_2_IsomorphicComponent<Record<string, never>, {
|
|
16
|
+
[evt: string]: CustomEvent<any>;
|
|
17
|
+
}, {}, {}, string>;
|
|
18
|
+
type StatusBadge = InstanceType<typeof StatusBadge>;
|
|
19
|
+
export default StatusBadge;
|
|
@@ -0,0 +1,147 @@
|
|
|
1
|
+
<script lang="ts">
|
|
2
|
+
import type { Snippet } from 'svelte';
|
|
3
|
+
|
|
4
|
+
interface Props {
|
|
5
|
+
// we can add dynamic classes because they are safelisted in tailwind-safelist.txt
|
|
6
|
+
type?: 'neutral' | 'success' | 'progress' | 'warning' | 'error';
|
|
7
|
+
size?: 'md' | 'sm';
|
|
8
|
+
content?: Snippet;
|
|
9
|
+
progress?: Snippet;
|
|
10
|
+
icon?: Snippet;
|
|
11
|
+
iconOnly?: boolean;
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
let {
|
|
15
|
+
type = 'neutral',
|
|
16
|
+
size = 'md',
|
|
17
|
+
content,
|
|
18
|
+
progress,
|
|
19
|
+
icon,
|
|
20
|
+
iconOnly: propIconOnly = false
|
|
21
|
+
}: Props = $props();
|
|
22
|
+
|
|
23
|
+
let iconOnly = $derived((content === undefined && progress === undefined) || propIconOnly);
|
|
24
|
+
</script>
|
|
25
|
+
|
|
26
|
+
<div
|
|
27
|
+
class={`badge badge-${type} badge-${size}`}
|
|
28
|
+
class:badge-icon-only={iconOnly}
|
|
29
|
+
data-testid="status-badge"
|
|
30
|
+
>
|
|
31
|
+
<div class={`icon`}>
|
|
32
|
+
{@render icon?.()}
|
|
33
|
+
</div>
|
|
34
|
+
<div class="gap-2">
|
|
35
|
+
{@render content?.()}
|
|
36
|
+
{@render progress?.()}
|
|
37
|
+
</div>
|
|
38
|
+
</div>
|
|
39
|
+
|
|
40
|
+
<style>
|
|
41
|
+
.badge {
|
|
42
|
+
gap: 0.5rem;
|
|
43
|
+
border-style: none;
|
|
44
|
+
--tw-text-opacity: 1;
|
|
45
|
+
color: rgb(18 25 42 / var(--tw-text-opacity, 1))
|
|
46
|
+
}
|
|
47
|
+
.badge-md {
|
|
48
|
+
height: 2rem;
|
|
49
|
+
padding-top: 0.5rem;
|
|
50
|
+
padding-bottom: 0.5rem;
|
|
51
|
+
padding-left: 0.5rem;
|
|
52
|
+
padding-right: 0.75rem
|
|
53
|
+
}
|
|
54
|
+
.badge-md .icon {
|
|
55
|
+
width: 1.25rem;
|
|
56
|
+
height: 1.25rem
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
.badge-sm {
|
|
60
|
+
height: 1.5rem;
|
|
61
|
+
gap: 0.25rem;
|
|
62
|
+
padding-left: 0.25rem;
|
|
63
|
+
padding-right: 0.5rem
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
.badge-sm .icon {
|
|
67
|
+
width: 1rem;
|
|
68
|
+
height: 1rem
|
|
69
|
+
}
|
|
70
|
+
.badge-icon-only {
|
|
71
|
+
width: 2rem;
|
|
72
|
+
height: 2rem;
|
|
73
|
+
gap: 0px;
|
|
74
|
+
padding: 0px
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
.badge-sm.badge-icon-only {
|
|
78
|
+
width: 1.5rem;
|
|
79
|
+
height: 1.5rem;
|
|
80
|
+
padding: 0px
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
.badge-neutral {
|
|
84
|
+
background-color: #12192a0d
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
.badge-neutral:hover {
|
|
88
|
+
background-color: #12192A1A
|
|
89
|
+
}
|
|
90
|
+
|
|
91
|
+
.badge-neutral .icon {
|
|
92
|
+
--tw-text-opacity: 1;
|
|
93
|
+
color: rgb(136 140 148 / var(--tw-text-opacity, 1))
|
|
94
|
+
}
|
|
95
|
+
|
|
96
|
+
.badge-success {
|
|
97
|
+
background-color: #0aad6e1A
|
|
98
|
+
}
|
|
99
|
+
|
|
100
|
+
.badge-success:hover {
|
|
101
|
+
background-color: #0aad6e40
|
|
102
|
+
}
|
|
103
|
+
|
|
104
|
+
.badge-success .icon {
|
|
105
|
+
--tw-text-opacity: 1;
|
|
106
|
+
color: rgb(10 173 110 / var(--tw-text-opacity, 1))
|
|
107
|
+
}
|
|
108
|
+
.badge-progress {
|
|
109
|
+
background-color: #5750ee1A
|
|
110
|
+
}
|
|
111
|
+
.badge-progress:hover {
|
|
112
|
+
background-color: #5750ee40
|
|
113
|
+
}
|
|
114
|
+
.badge-progress .icon {
|
|
115
|
+
--tw-text-opacity: 1;
|
|
116
|
+
color: rgb(71 65 193 / var(--tw-text-opacity, 1))
|
|
117
|
+
}
|
|
118
|
+
.badge-warning {
|
|
119
|
+
background-color: #f1b1231A
|
|
120
|
+
}
|
|
121
|
+
.badge-warning:hover {
|
|
122
|
+
background-color: #f1b12340
|
|
123
|
+
}
|
|
124
|
+
.badge-warning .icon {
|
|
125
|
+
--tw-text-opacity: 1;
|
|
126
|
+
color: rgb(241 177 35 / var(--tw-text-opacity, 1))
|
|
127
|
+
}
|
|
128
|
+
.badge-error {
|
|
129
|
+
background-color: #eb46471A
|
|
130
|
+
}
|
|
131
|
+
.badge-error:hover {
|
|
132
|
+
background-color: #eb464740
|
|
133
|
+
}
|
|
134
|
+
.badge-error .icon {
|
|
135
|
+
--tw-text-opacity: 1;
|
|
136
|
+
color: rgb(235 70 71 / var(--tw-text-opacity, 1))
|
|
137
|
+
}
|
|
138
|
+
|
|
139
|
+
:global(.badge > div) {
|
|
140
|
+
display: flex;
|
|
141
|
+
height: 100%;
|
|
142
|
+
flex-direction: row;
|
|
143
|
+
align-items: center;
|
|
144
|
+
justify-content: center;
|
|
145
|
+
white-space: nowrap
|
|
146
|
+
}
|
|
147
|
+
</style>
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type { Snippet } from 'svelte';
|
|
2
|
+
interface Props {
|
|
3
|
+
type?: 'neutral' | 'success' | 'progress' | 'warning' | 'error';
|
|
4
|
+
size?: 'md' | 'sm';
|
|
5
|
+
content?: Snippet;
|
|
6
|
+
progress?: Snippet;
|
|
7
|
+
icon?: Snippet;
|
|
8
|
+
iconOnly?: boolean;
|
|
9
|
+
}
|
|
10
|
+
declare const StatusBadge: import("svelte").Component<Props, {}, "">;
|
|
11
|
+
type StatusBadge = ReturnType<typeof StatusBadge>;
|
|
12
|
+
export default StatusBadge;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { default as StatusBadge } from './StatusBadge.svelte';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { default as StatusBadge } from './StatusBadge.svelte';
|
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
<script module lang="ts">
|
|
2
|
+
import Table from './Table.svelte';
|
|
3
|
+
|
|
4
|
+
import { defineMeta } from '@storybook/addon-svelte-csf';
|
|
5
|
+
const { Story } = defineMeta({
|
|
6
|
+
component: Table,
|
|
7
|
+
title: 'Design System/Table',
|
|
8
|
+
tags: ['autodocs']
|
|
9
|
+
});
|
|
10
|
+
import IconButton from '../icon-button/IconButton.svelte';
|
|
11
|
+
import { Phone } from 'phosphor-svelte';
|
|
12
|
+
|
|
13
|
+
export const users = [
|
|
14
|
+
{
|
|
15
|
+
name: 'John Doe',
|
|
16
|
+
age: 25,
|
|
17
|
+
role: 'admin'
|
|
18
|
+
},
|
|
19
|
+
{
|
|
20
|
+
name: 'Jane Smith',
|
|
21
|
+
age: 32,
|
|
22
|
+
role: 'member'
|
|
23
|
+
},
|
|
24
|
+
{
|
|
25
|
+
name: 'Michael Johnson',
|
|
26
|
+
age: 41,
|
|
27
|
+
role: 'deactivated'
|
|
28
|
+
},
|
|
29
|
+
{
|
|
30
|
+
name: 'Emily Brown',
|
|
31
|
+
age: 28,
|
|
32
|
+
role: 'member'
|
|
33
|
+
},
|
|
34
|
+
{
|
|
35
|
+
name: 'David Lee',
|
|
36
|
+
age: 37,
|
|
37
|
+
role: 'admin'
|
|
38
|
+
},
|
|
39
|
+
{
|
|
40
|
+
name: 'Sarah Wilson',
|
|
41
|
+
age: 29,
|
|
42
|
+
role: 'member'
|
|
43
|
+
},
|
|
44
|
+
{
|
|
45
|
+
name: 'Robert Taylor',
|
|
46
|
+
age: 45,
|
|
47
|
+
role: 'deactivated'
|
|
48
|
+
},
|
|
49
|
+
{
|
|
50
|
+
name: 'Lisa Anderson',
|
|
51
|
+
age: 33,
|
|
52
|
+
role: 'member'
|
|
53
|
+
},
|
|
54
|
+
{
|
|
55
|
+
name: 'James Martinez',
|
|
56
|
+
age: 39,
|
|
57
|
+
role: 'admin'
|
|
58
|
+
},
|
|
59
|
+
{
|
|
60
|
+
name: 'Jennifer Garcia',
|
|
61
|
+
age: 31,
|
|
62
|
+
role: 'deactivated'
|
|
63
|
+
}
|
|
64
|
+
];
|
|
65
|
+
</script>
|
|
66
|
+
|
|
67
|
+
<Story name="Base">
|
|
68
|
+
<Table>
|
|
69
|
+
{#snippet children({ THead, TBody, Tr, Th, Td })}
|
|
70
|
+
<THead>
|
|
71
|
+
<Tr>
|
|
72
|
+
<Th>Name</Th>
|
|
73
|
+
<Th>Age</Th>
|
|
74
|
+
<Th class="w-[100px]">Role</Th>
|
|
75
|
+
<Th class="w-6"></Th>
|
|
76
|
+
</Tr>
|
|
77
|
+
</THead>
|
|
78
|
+
<TBody>
|
|
79
|
+
{#each users as user}
|
|
80
|
+
<Tr disabled={user.role === 'deactivated'}>
|
|
81
|
+
<Td>{user.name}</Td>
|
|
82
|
+
<Td>{user.age}</Td>
|
|
83
|
+
<Td>{user.role}</Td>
|
|
84
|
+
<Td><IconButton disabled={user.role === 'deactivated'}><Phone /></IconButton></Td>
|
|
85
|
+
</Tr>
|
|
86
|
+
{/each}
|
|
87
|
+
</TBody>
|
|
88
|
+
{/snippet}
|
|
89
|
+
</Table>
|
|
90
|
+
</Story>
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import Table from './Table.svelte';
|
|
2
|
+
export declare const users: {
|
|
3
|
+
name: string;
|
|
4
|
+
age: number;
|
|
5
|
+
role: string;
|
|
6
|
+
}[];
|
|
7
|
+
interface $$__sveltets_2_IsomorphicComponent<Props extends Record<string, any> = any, Events extends Record<string, any> = any, Slots extends Record<string, any> = any, Exports = {}, Bindings = string> {
|
|
8
|
+
new (options: import('svelte').ComponentConstructorOptions<Props>): import('svelte').SvelteComponent<Props, Events, Slots> & {
|
|
9
|
+
$$bindings?: Bindings;
|
|
10
|
+
} & Exports;
|
|
11
|
+
(internal: unknown, props: {
|
|
12
|
+
$$events?: Events;
|
|
13
|
+
$$slots?: Slots;
|
|
14
|
+
}): Exports & {
|
|
15
|
+
$set?: any;
|
|
16
|
+
$on?: any;
|
|
17
|
+
};
|
|
18
|
+
z_$$bindings?: Bindings;
|
|
19
|
+
}
|
|
20
|
+
declare const Table: $$__sveltets_2_IsomorphicComponent<Record<string, never>, {
|
|
21
|
+
[evt: string]: CustomEvent<any>;
|
|
22
|
+
}, {}, {}, string>;
|
|
23
|
+
type Table = InstanceType<typeof Table>;
|
|
24
|
+
export default Table;
|