diff --git a/src/components/DataTableSkeleton/DataTable.stories.js b/src/components/DataTableSkeleton/DataTable.stories.js new file mode 100644 index 00000000..42793577 --- /dev/null +++ b/src/components/DataTableSkeleton/DataTable.stories.js @@ -0,0 +1,17 @@ +import { withKnobs, array, boolean } from '@storybook/addon-knobs'; +import Component from './DataTableSkeleton.Story.svelte'; + +export default { title: 'DataTableSkeleton', decorators: [withKnobs] }; + +export const Default = () => ({ + Component, + props: { + headers: array( + 'Optional table headers (headers)', + ['Name', 'Protocol', 'Port', 'Rule', 'Attached Groups'], + ',' + ), + zebra: boolean('Use zebra stripe (zebra)', false), + compact: boolean('Compact variant (compact)', false) + } +}); diff --git a/src/components/DataTableSkeleton/DataTableSkeleton.Story.svelte b/src/components/DataTableSkeleton/DataTableSkeleton.Story.svelte new file mode 100644 index 00000000..56778837 --- /dev/null +++ b/src/components/DataTableSkeleton/DataTableSkeleton.Story.svelte @@ -0,0 +1,10 @@ + + + +
+ +
+
diff --git a/src/components/DataTableSkeleton/DataTableSkeleton.svelte b/src/components/DataTableSkeleton/DataTableSkeleton.svelte new file mode 100644 index 00000000..b8584abb --- /dev/null +++ b/src/components/DataTableSkeleton/DataTableSkeleton.svelte @@ -0,0 +1,52 @@ + + + + + + {#each columns as column, i (column)} + + {/each} + + + + + {#each columns as column, i (column)} + + {/each} + + {#each rows as row, i (row)} + + {#each columns as column, j (column)} + + {/each} + +
{_headers[column]}
+ +
+ {/each} +
diff --git a/src/components/DataTableSkeleton/index.js b/src/components/DataTableSkeleton/index.js new file mode 100644 index 00000000..67f5dcff --- /dev/null +++ b/src/components/DataTableSkeleton/index.js @@ -0,0 +1,3 @@ +import DataTableSkeleton from './DataTableSkeleton.svelte'; + +export default DataTableSkeleton; diff --git a/src/index.js b/src/index.js index 9134d5c6..36105eb7 100644 --- a/src/index.js +++ b/src/index.js @@ -5,6 +5,7 @@ import Checkbox, { CheckboxSkeleton } from './components/Checkbox'; import Copy from './components/Copy'; import CopyButton from './components/CopyButton'; import CodeSnippet, { CodeSnippetSkeleton } from './components/CodeSnippet'; +import DataTableSkeleton from './components/DataTableSkeleton'; import InlineLoading from './components/InlineLoading'; import Loading from './components/Loading'; import Link from './components/Link'; @@ -38,6 +39,7 @@ export { CodeSnippetSkeleton, Copy, CopyButton, + DataTableSkeleton, InlineLoading, Loading, Link,