@dillingerstaffing/strand-vue 0.14.0 → 0.15.1

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.
Files changed (77) hide show
  1. package/dist/components/Alert/Alert.vue.d.ts.map +1 -1
  2. package/dist/components/Avatar/Avatar.vue.d.ts.map +1 -1
  3. package/dist/components/Badge/Badge.vue.d.ts.map +1 -1
  4. package/dist/components/Breadcrumb/Breadcrumb.vue.d.ts.map +1 -1
  5. package/dist/components/Button/Button.vue.d.ts.map +1 -1
  6. package/dist/components/Card/Card.vue.d.ts.map +1 -1
  7. package/dist/components/Checkbox/Checkbox.vue.d.ts.map +1 -1
  8. package/dist/components/CodeBlock/CodeBlock.vue.d.ts +7 -0
  9. package/dist/components/CodeBlock/CodeBlock.vue.d.ts.map +1 -1
  10. package/dist/components/Container/Container.vue.d.ts.map +1 -1
  11. package/dist/components/DataReadout/DataReadout.vue.d.ts.map +1 -1
  12. package/dist/components/Dialog/Dialog.vue.d.ts.map +1 -1
  13. package/dist/components/Divider/Divider.vue.d.ts.map +1 -1
  14. package/dist/components/FormField/FormField.vue.d.ts.map +1 -1
  15. package/dist/components/Grid/Grid.vue.d.ts.map +1 -1
  16. package/dist/components/Input/Input.vue.d.ts.map +1 -1
  17. package/dist/components/InstrumentViewport/InstrumentViewport.vue.d.ts +5 -0
  18. package/dist/components/InstrumentViewport/InstrumentViewport.vue.d.ts.map +1 -1
  19. package/dist/components/Link/Link.vue.d.ts.map +1 -1
  20. package/dist/components/Nav/Nav.vue.d.ts.map +1 -1
  21. package/dist/components/Progress/Progress.vue.d.ts.map +1 -1
  22. package/dist/components/Radio/Radio.vue.d.ts.map +1 -1
  23. package/dist/components/ScrollReveal/ScrollReveal.vue.d.ts.map +1 -1
  24. package/dist/components/Section/Section.vue.d.ts.map +1 -1
  25. package/dist/components/Select/Select.vue.d.ts.map +1 -1
  26. package/dist/components/Skeleton/Skeleton.vue.d.ts.map +1 -1
  27. package/dist/components/Slider/Slider.vue.d.ts.map +1 -1
  28. package/dist/components/Spinner/Spinner.vue.d.ts.map +1 -1
  29. package/dist/components/Stack/Stack.vue.d.ts.map +1 -1
  30. package/dist/components/Switch/Switch.vue.d.ts.map +1 -1
  31. package/dist/components/Table/Table.vue.d.ts.map +1 -1
  32. package/dist/components/Tabs/Tabs.vue.d.ts.map +1 -1
  33. package/dist/components/Tag/Tag.vue.d.ts.map +1 -1
  34. package/dist/components/Textarea/Textarea.vue.d.ts.map +1 -1
  35. package/dist/components/Toast/Toast.vue.d.ts.map +1 -1
  36. package/dist/components/Toast/ToastProvider.vue.d.ts.map +1 -1
  37. package/dist/components/Tooltip/Tooltip.vue.d.ts.map +1 -1
  38. package/dist/css/strand-ui.css +2784 -223
  39. package/dist/index.js +365 -306
  40. package/dist/index.js.map +1 -1
  41. package/package.json +2 -2
  42. package/src/components/Alert/Alert.vue +16 -0
  43. package/src/components/Avatar/Avatar.vue +15 -0
  44. package/src/components/Badge/Badge.vue +17 -0
  45. package/src/components/Breadcrumb/Breadcrumb.vue +20 -0
  46. package/src/components/Button/Button.vue +16 -0
  47. package/src/components/Card/Card.vue +17 -0
  48. package/src/components/Checkbox/Checkbox.vue +16 -0
  49. package/src/components/CodeBlock/CodeBlock.vue +92 -5
  50. package/src/components/Container/Container.vue +16 -0
  51. package/src/components/DataReadout/DataReadout.vue +14 -0
  52. package/src/components/Dialog/Dialog.vue +18 -0
  53. package/src/components/Divider/Divider.vue +14 -0
  54. package/src/components/FormField/FormField.vue +16 -0
  55. package/src/components/Grid/Grid.vue +18 -0
  56. package/src/components/Input/Input.vue +14 -0
  57. package/src/components/InstrumentViewport/InstrumentViewport.test.ts +19 -0
  58. package/src/components/InstrumentViewport/InstrumentViewport.vue +22 -0
  59. package/src/components/Link/Link.vue +15 -0
  60. package/src/components/Nav/Nav.vue +23 -0
  61. package/src/components/Progress/Progress.vue +15 -0
  62. package/src/components/Radio/Radio.vue +17 -0
  63. package/src/components/ScrollReveal/ScrollReveal.vue +16 -0
  64. package/src/components/Section/Section.vue +18 -0
  65. package/src/components/Select/Select.vue +20 -0
  66. package/src/components/Skeleton/Skeleton.vue +16 -0
  67. package/src/components/Slider/Slider.vue +16 -0
  68. package/src/components/Spinner/Spinner.vue +14 -0
  69. package/src/components/Stack/Stack.vue +17 -0
  70. package/src/components/Switch/Switch.vue +16 -0
  71. package/src/components/Table/Table.vue +23 -0
  72. package/src/components/Tabs/Tabs.vue +23 -0
  73. package/src/components/Tag/Tag.vue +16 -0
  74. package/src/components/Textarea/Textarea.vue +16 -0
  75. package/src/components/Toast/Toast.vue +14 -0
  76. package/src/components/Toast/ToastProvider.vue +16 -0
  77. package/src/components/Tooltip/Tooltip.vue +16 -0
@@ -1,4 +1,21 @@
1
1
  <!--! Strand Vue | MIT License | dillingerstaffing.com -->
2
+ <!--
3
+ Flexbox layout container for arranging children with consistent spacing.
4
+
5
+ @example
6
+ ```vue
7
+ <script setup>
8
+ import { Stack, Button } from '@dillingerstaffing/strand-vue';
9
+ </script>
10
+
11
+ <template>
12
+ <Stack direction="horizontal" :gap="4" align="center">
13
+ <Button variant="primary">Save</Button>
14
+ <Button variant="secondary">Cancel</Button>
15
+ </Stack>
16
+ </template>
17
+ ```
18
+ -->
2
19
  <script setup lang="ts">
3
20
  import { computed } from 'vue'
4
21
 
@@ -1,4 +1,20 @@
1
1
  <!--! Strand Vue | MIT License | dillingerstaffing.com -->
2
+ <!--
3
+ Toggle switch for binary on/off settings with optional inline label.
4
+
5
+ @example
6
+ ```vue
7
+ <script setup>
8
+ import { ref } from 'vue';
9
+ import { Switch } from '@dillingerstaffing/strand-vue';
10
+ const darkMode = ref(false);
11
+ </script>
12
+
13
+ <template>
14
+ <Switch v-model:checked="darkMode" label="Dark mode" />
15
+ </template>
16
+ ```
17
+ -->
2
18
  <script setup lang="ts">
3
19
  import { computed } from 'vue'
4
20
 
@@ -1,4 +1,27 @@
1
1
  <!--! Strand Vue | MIT License | dillingerstaffing.com -->
2
+ <!--
3
+ Data table with column definitions, sortable headers, and row rendering.
4
+
5
+ @example
6
+ ```vue
7
+ <script setup>
8
+ import { Table } from '@dillingerstaffing/strand-vue';
9
+
10
+ const columns = [
11
+ { key: 'name', header: 'Name', sortable: true },
12
+ { key: 'role', header: 'Role' },
13
+ ];
14
+ const data = [
15
+ { name: 'Jane', role: 'Engineer' },
16
+ { name: 'Alex', role: 'Designer' },
17
+ ];
18
+ </script>
19
+
20
+ <template>
21
+ <Table :columns="columns" :data="data" @sort="(key, dir) => console.log(key, dir)" />
22
+ </template>
23
+ ```
24
+ -->
2
25
  <script setup lang="ts">
3
26
  import { computed, ref } from 'vue'
4
27
 
@@ -1,4 +1,27 @@
1
1
  <!--! Strand Vue | MIT License | dillingerstaffing.com -->
2
+ <!--
3
+ Tabbed content switcher with keyboard navigation and ARIA tab pattern.
4
+
5
+ @example
6
+ ```vue
7
+ <script setup>
8
+ import { ref } from 'vue';
9
+ import { Tabs } from '@dillingerstaffing/strand-vue';
10
+ const activeTab = ref('overview');
11
+ const tabs = [
12
+ { id: 'overview', label: 'Overview' },
13
+ { id: 'details', label: 'Details' },
14
+ ];
15
+ </script>
16
+
17
+ <template>
18
+ <Tabs :tabs="tabs" v-model:active-tab="activeTab">
19
+ <template #overview><p>Overview content</p></template>
20
+ <template #details><p>Details content</p></template>
21
+ </Tabs>
22
+ </template>
23
+ ```
24
+ -->
2
25
  <script setup lang="ts">
3
26
  import { computed, ref } from 'vue'
4
27
 
@@ -1,4 +1,20 @@
1
1
  <!--! Strand Vue | MIT License | dillingerstaffing.com -->
2
+ <!--
3
+ Compact label for categorization, filtering, or status display.
4
+
5
+ @example
6
+ ```vue
7
+ <script setup>
8
+ import { Tag } from '@dillingerstaffing/strand-vue';
9
+ </script>
10
+
11
+ <template>
12
+ <Tag variant="solid" status="teal" removable @remove="handleRemove">
13
+ Active
14
+ </Tag>
15
+ </template>
16
+ ```
17
+ -->
2
18
  <script setup lang="ts">
3
19
  import { computed } from 'vue'
4
20
 
@@ -1,4 +1,20 @@
1
1
  <!--! Strand Vue | MIT License | dillingerstaffing.com -->
2
+ <!--
3
+ Multi-line text input with auto-resize, character count, and error state.
4
+
5
+ @example
6
+ ```vue
7
+ <script setup>
8
+ import { ref } from 'vue';
9
+ import { Textarea } from '@dillingerstaffing/strand-vue';
10
+ const text = ref('');
11
+ </script>
12
+
13
+ <template>
14
+ <Textarea v-model:value="text" :max-length="500" show-count auto-resize />
15
+ </template>
16
+ ```
17
+ -->
2
18
  <script setup lang="ts">
3
19
  import { computed, ref, onMounted, watch } from 'vue'
4
20
 
@@ -1,4 +1,18 @@
1
1
  <!--! Strand Vue | MIT License | dillingerstaffing.com -->
2
+ <!--
3
+ Standalone notification message with status indicator and optional dismiss.
4
+
5
+ @example
6
+ ```vue
7
+ <script setup>
8
+ import { Toast } from '@dillingerstaffing/strand-vue';
9
+ </script>
10
+
11
+ <template>
12
+ <Toast status="success" message="Changes saved." @dismiss="handleDismiss" />
13
+ </template>
14
+ ```
15
+ -->
2
16
  <script setup lang="ts">
3
17
  import { computed } from 'vue'
4
18
  import type { ToastStatus } from './useToast'
@@ -1,4 +1,20 @@
1
1
  <!--! Strand Vue | MIT License | dillingerstaffing.com -->
2
+ <!--
3
+ Context provider that manages toast notifications for its subtree.
4
+
5
+ @example
6
+ ```vue
7
+ <script setup>
8
+ import { ToastProvider } from '@dillingerstaffing/strand-vue';
9
+ </script>
10
+
11
+ <template>
12
+ <ToastProvider>
13
+ <App />
14
+ </ToastProvider>
15
+ </template>
16
+ ```
17
+ -->
2
18
  <script setup lang="ts">
3
19
  import { ref, provide, onUnmounted } from 'vue'
4
20
  import { ToastKey } from './useToast'
@@ -1,4 +1,20 @@
1
1
  <!--! Strand Vue | MIT License | dillingerstaffing.com -->
2
+ <!--
3
+ Hover/focus-triggered text popup anchored to a trigger element.
4
+
5
+ @example
6
+ ```vue
7
+ <script setup>
8
+ import { Tooltip, Button } from '@dillingerstaffing/strand-vue';
9
+ </script>
10
+
11
+ <template>
12
+ <Tooltip content="Save your progress" position="top">
13
+ <Button variant="primary">Save</Button>
14
+ </Tooltip>
15
+ </template>
16
+ ```
17
+ -->
2
18
  <script setup lang="ts">
3
19
  import { computed, ref, onUnmounted } from 'vue'
4
20