sprintify-ui 0.6.53 → 0.6.55

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.
@@ -0,0 +1,108 @@
1
+ import BaseTable from './BaseTable.vue';
2
+ import BaseTableHead from './BaseTableHead.vue';
3
+ import BaseTableBody from './BaseTableBody.vue';
4
+ import BaseTableRow from './BaseTableRow.vue';
5
+ import BaseTableCell from './BaseTableCell.vue';
6
+ import BaseTableHeader from './BaseTableHeader.vue';
7
+ import BaseBadge from './BaseBadge.vue';
8
+ import { options } from '../../.storybook/utils';
9
+
10
+ export default {
11
+ title: 'Data/BaseTable',
12
+ component: BaseTable,
13
+ args: {},
14
+ argTypes: {
15
+ spacing: {
16
+ control: {
17
+ type: 'select',
18
+ },
19
+ options: ['none', 'sm', 'md', 'lg'],
20
+ },
21
+ },
22
+ };
23
+
24
+ const headTemplate = `<BaseTableHead>
25
+ <BaseTableRow>
26
+ <BaseTableHeader>Label</BaseTableHeader>
27
+ <BaseTableHeader>ID</BaseTableHeader>
28
+ <BaseTableHeader>Type</BaseTableHeader>
29
+ </BaseTableRow>
30
+ </BaseTableHead>`;
31
+
32
+ const cellsTemplate = `<BaseTableCell class="font-medium">
33
+ {{ option.label }}
34
+ </BaseTableCell>
35
+ <BaseTableCell>
36
+ <BaseBadge class="font-mono">
37
+ {{ option.value ?? 'N/A' }}
38
+ </BaseBadge>
39
+ </BaseTableCell>
40
+ <BaseTableCell>
41
+ {{ option.type ?? 'N/A' }}
42
+ </BaseTableCell>
43
+ `;
44
+
45
+ const components = {
46
+ BaseTable,
47
+ BaseTableHead,
48
+ BaseTableBody,
49
+ BaseTableRow,
50
+ BaseTableCell,
51
+ BaseTableHeader,
52
+ BaseBadge,
53
+ };
54
+
55
+
56
+ const Template = (args) => ({
57
+ components: components,
58
+ setup() {
59
+ return { args, options };
60
+ },
61
+ template: `
62
+ <div class="p-6">
63
+ <BaseTable class="" v-bind="args">
64
+ ${headTemplate}
65
+ <BaseTableBody>
66
+ <BaseTableRow
67
+ v-for="option in options"
68
+ :key="option.value"
69
+ :href="'https://www.google.com/search?q=' + option.label"
70
+ target="_blank"
71
+ >
72
+ ${cellsTemplate}
73
+ </BaseTableRow>
74
+ </BaseTableBody>
75
+ </BaseTable>
76
+ </div>
77
+ `,
78
+ });
79
+
80
+ export const Demo = Template.bind({});
81
+ Demo.args = {};
82
+
83
+ const TemplateRouterLink = (args) => ({
84
+ components: components,
85
+ setup() {
86
+ return { args, options };
87
+ },
88
+ template: `
89
+ <div class="p-6">
90
+ <BaseTable class="" v-bind="args">
91
+ ${headTemplate}
92
+ <BaseTableBody>
93
+ <BaseTableRow
94
+ v-for="option in options"
95
+ :key="option.value"
96
+ :to="'/articles/' + option.value"
97
+ target="_blank"
98
+ :title="option.label"
99
+ >
100
+ ${cellsTemplate}
101
+ </BaseTableRow>
102
+ </BaseTableBody>
103
+ </BaseTable>
104
+ </div>`,
105
+ });
106
+
107
+ export const RouterLink = TemplateRouterLink.bind({});
108
+ RouterLink.args = {};