arvue-ui 0.3.3 → 0.5.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.
Files changed (93) hide show
  1. package/dist/all.css +1 -1
  2. package/dist/autocomplete/autocompleteInput.js +3 -3
  3. package/dist/autocomplete/autocompleteInput.js.map +1 -1
  4. package/dist/combobox/combobox.js +56 -0
  5. package/dist/combobox/combobox.js.map +1 -0
  6. package/dist/combobox/comboboxAnchor.js +24 -0
  7. package/dist/combobox/comboboxAnchor.js.map +1 -0
  8. package/dist/combobox/comboboxCancel.js +23 -0
  9. package/dist/combobox/comboboxCancel.js.map +1 -0
  10. package/dist/combobox/comboboxContent.js +73 -0
  11. package/dist/combobox/comboboxContent.js.map +1 -0
  12. package/dist/combobox/comboboxEmpty.js +33 -0
  13. package/dist/combobox/comboboxEmpty.js.map +1 -0
  14. package/dist/combobox/comboboxGroup.js +23 -0
  15. package/dist/combobox/comboboxGroup.js.map +1 -0
  16. package/dist/combobox/comboboxInput.js +67 -0
  17. package/dist/combobox/comboboxInput.js.map +1 -0
  18. package/dist/combobox/comboboxItem.js +36 -0
  19. package/dist/combobox/comboboxItem.js.map +1 -0
  20. package/dist/combobox/comboboxLabel.js +34 -0
  21. package/dist/combobox/comboboxLabel.js.map +1 -0
  22. package/dist/combobox/comboboxPortal.js +25 -0
  23. package/dist/combobox/comboboxPortal.js.map +1 -0
  24. package/dist/combobox/comboboxSeparator.js +33 -0
  25. package/dist/combobox/comboboxSeparator.js.map +1 -0
  26. package/dist/combobox/comboboxTrigger.js +24 -0
  27. package/dist/combobox/comboboxTrigger.js.map +1 -0
  28. package/dist/combobox/comboboxViewport.js +24 -0
  29. package/dist/combobox/comboboxViewport.js.map +1 -0
  30. package/dist/dialog/dialogDescription.js.map +1 -1
  31. package/dist/dialog/dialogFooter.js.map +1 -1
  32. package/dist/dialog/dialogHeader.js.map +1 -1
  33. package/dist/dialog/dialogTitle.js.map +1 -1
  34. package/dist/drawer/drawerDescription.js.map +1 -1
  35. package/dist/drawer/drawerFooter.js.map +1 -1
  36. package/dist/drawer/drawerHeader.js.map +1 -1
  37. package/dist/drawer/drawerTitle.js.map +1 -1
  38. package/dist/index.d.ts +331 -113
  39. package/dist/index.d.ts.map +1 -1
  40. package/dist/index.js +57 -1277
  41. package/dist/index.js.map +1 -1
  42. package/dist/sheet/sheetContent.js.map +1 -1
  43. package/dist/sheet/sheetDescription.js.map +1 -1
  44. package/dist/sheet/sheetFooter.js.map +1 -1
  45. package/dist/sheet/sheetHeader.js.map +1 -1
  46. package/dist/sheet/sheetOverlay.js.map +1 -1
  47. package/dist/sheet/sheetTitle.js.map +1 -1
  48. package/dist/sonner/sonner.js +51 -0
  49. package/dist/sonner/sonner.js.map +1 -0
  50. package/dist/style.css +30 -14
  51. package/package.json +3 -2
  52. package/src/autocomplete/AutocompleteInput.vue +1 -1
  53. package/src/autocomplete/autocomplete-input.css +5 -0
  54. package/src/autocomplete/autocomplete.css +1 -0
  55. package/src/combobox/Combobox.vue +36 -0
  56. package/src/combobox/ComboboxAnchor.vue +17 -0
  57. package/src/combobox/ComboboxCancel.vue +17 -0
  58. package/src/combobox/ComboboxContent.vue +46 -0
  59. package/src/combobox/ComboboxEmpty.vue +31 -0
  60. package/src/combobox/ComboboxGroup.vue +17 -0
  61. package/src/combobox/ComboboxInput.vue +69 -0
  62. package/src/combobox/ComboboxItem.vue +35 -0
  63. package/src/combobox/ComboboxLabel.vue +31 -0
  64. package/src/combobox/ComboboxPortal.vue +17 -0
  65. package/src/combobox/ComboboxSeparator.vue +31 -0
  66. package/src/combobox/ComboboxTrigger.vue +17 -0
  67. package/src/combobox/ComboboxViewport.vue +17 -0
  68. package/src/combobox/combobox-content.css +11 -0
  69. package/src/combobox/combobox-empty.css +7 -0
  70. package/src/combobox/combobox-input.css +10 -0
  71. package/src/combobox/combobox-item.css +14 -0
  72. package/src/combobox/combobox-label.css +6 -0
  73. package/src/combobox/combobox-separator.css +5 -0
  74. package/src/combobox/combobox.css +5 -0
  75. package/src/combobox/index.ts +56 -0
  76. package/src/dialog/DialogDescription.vue +1 -1
  77. package/src/dialog/DialogFooter.vue +1 -1
  78. package/src/dialog/DialogHeader.vue +1 -1
  79. package/src/dialog/DialogTitle.vue +1 -1
  80. package/src/drawer/DrawerDescription.vue +1 -1
  81. package/src/drawer/DrawerFooter.vue +1 -1
  82. package/src/drawer/DrawerHeader.vue +1 -1
  83. package/src/drawer/DrawerTitle.vue +1 -1
  84. package/src/index.ts +2 -0
  85. package/src/sheet/SheetContent.vue +1 -1
  86. package/src/sheet/SheetDescription.vue +1 -1
  87. package/src/sheet/SheetFooter.vue +1 -1
  88. package/src/sheet/SheetHeader.vue +1 -1
  89. package/src/sheet/SheetOverlay.vue +1 -1
  90. package/src/sheet/SheetTitle.vue +1 -1
  91. package/src/sonner/Sonner.vue +47 -0
  92. package/src/sonner/index.ts +5 -0
  93. package/src/sonner/sonner.css +91 -0
@@ -0,0 +1,17 @@
1
+ <template>
2
+ <ComboboxCancel v-bind="props">
3
+ <slot/>
4
+ </ComboboxCancel>
5
+ </template>
6
+
7
+ <script lang="ts">
8
+ import type { ComboboxCancelProps as RekaComboboxCancelProps } from 'reka-ui'
9
+
10
+ export interface ComboboxCancelProps extends RekaComboboxCancelProps {}
11
+ </script>
12
+
13
+ <script setup lang="ts">
14
+ import { ComboboxCancel } from 'reka-ui'
15
+
16
+ const props = defineProps<ComboboxCancelProps>()
17
+ </script>
@@ -0,0 +1,46 @@
1
+ <style>
2
+ @import './combobox-content.css';
3
+ </style>
4
+
5
+ <template>
6
+ <ComboboxContent
7
+ v-bind="{ ...$attrs, ...forwarded }"
8
+ :class="clsx('arvue-combobox-content', props.class)"
9
+ position="popper"
10
+ >
11
+ <ComboboxViewport>
12
+ <slot/>
13
+ </ComboboxViewport>
14
+ </ComboboxContent>
15
+ </template>
16
+
17
+ <script lang="ts">
18
+ import type {
19
+ ComboboxContentEmits as RekaComboboxContentEmits,
20
+ ComboboxContentProps as RekaComboboxContentProps,
21
+ } from 'reka-ui'
22
+ import type { HTMLAttributes } from 'vue'
23
+
24
+ export interface ComboboxContentProps extends Omit<RekaComboboxContentProps, 'position'> {
25
+ class?: HTMLAttributes['class']
26
+ }
27
+ export interface ComboboxContentEmits extends RekaComboboxContentEmits {}
28
+ </script>
29
+
30
+ <script setup lang="ts">
31
+ import { reactiveOmit } from '@vueuse/core'
32
+ import { clsx } from 'clsx'
33
+ import { ComboboxContent, useForwardPropsEmits } from 'reka-ui'
34
+ import { ComboboxViewport } from '.'
35
+
36
+ defineOptions({
37
+ inheritAttrs: false,
38
+ })
39
+
40
+ const props = defineProps<ComboboxContentProps>()
41
+ const emits = defineEmits<ComboboxContentEmits>()
42
+
43
+ const delegatedProps = reactiveOmit(props, 'class')
44
+
45
+ const forwarded = useForwardPropsEmits(delegatedProps, emits)
46
+ </script>
@@ -0,0 +1,31 @@
1
+ <style>
2
+ @import './combobox-empty.css';
3
+ </style>
4
+
5
+ <template>
6
+ <ComboboxEmpty
7
+ v-bind="delegatedProps"
8
+ :class="clsx('arvue-combobox-empty', props.class)"
9
+ >
10
+ <slot/>
11
+ </ComboboxEmpty>
12
+ </template>
13
+
14
+ <script lang="ts">
15
+ import type { ComboboxEmptyProps as RekaComboboxEmptyProps } from 'reka-ui'
16
+ import type { HTMLAttributes } from 'vue'
17
+
18
+ export interface ComboboxEmptyProps extends RekaComboboxEmptyProps {
19
+ class?: HTMLAttributes['class']
20
+ }
21
+ </script>
22
+
23
+ <script setup lang="ts">
24
+ import { reactiveOmit } from '@vueuse/core'
25
+ import { clsx } from 'clsx'
26
+ import { ComboboxEmpty } from 'reka-ui'
27
+
28
+ const props = defineProps<ComboboxEmptyProps>()
29
+
30
+ const delegatedProps = reactiveOmit(props, 'class')
31
+ </script>
@@ -0,0 +1,17 @@
1
+ <template>
2
+ <ComboboxGroup v-bind="props">
3
+ <slot/>
4
+ </ComboboxGroup>
5
+ </template>
6
+
7
+ <script lang="ts">
8
+ import type { ComboboxGroupProps as RekaComboboxGroupProps } from 'reka-ui'
9
+
10
+ export interface ComboboxGroupProps extends RekaComboboxGroupProps {}
11
+ </script>
12
+
13
+ <script setup lang="ts">
14
+ import { ComboboxGroup } from 'reka-ui'
15
+
16
+ const props = defineProps<ComboboxGroupProps>()
17
+ </script>
@@ -0,0 +1,69 @@
1
+ <style>
2
+ @import './combobox-input.css';
3
+ </style>
4
+
5
+ <template>
6
+ <div class="arvue-combobox-input-wrapper">
7
+ <ComboboxAnchor
8
+ :class="{ 'state-with-inner-icon right': showTriggerButton }"
9
+ :reference="inputRef?.$el"
10
+ >
11
+ <ComboboxInput
12
+ v-bind="{ ...$attrs, ...forwarded }"
13
+ ref="inputRef"
14
+ />
15
+ <ComboboxTrigger
16
+ v-if="showTriggerButton"
17
+ class="icon"
18
+ >
19
+ <i class="fas fa-sort"/>
20
+ </ComboboxTrigger>
21
+ </ComboboxAnchor>
22
+ <ComboboxCancel
23
+ v-if="showCancelButton"
24
+ class="icon"
25
+ @click="emits('cancel')"
26
+ >
27
+ <i class="fas fa-times"/>
28
+ </ComboboxCancel>
29
+ </div>
30
+ </template>
31
+
32
+ <script lang="ts">
33
+ import type {
34
+ ComboboxInputEmits as RekaComboboxInputEmits,
35
+ ComboboxInputProps as RekaComboboxInputProps,
36
+ } from 'reka-ui'
37
+
38
+ export interface ComboboxInputProps extends RekaComboboxInputProps {
39
+ showTriggerButton?: boolean
40
+ showCancelButton?: boolean
41
+ }
42
+
43
+ export interface ComboboxInputEmits extends RekaComboboxInputEmits {
44
+ 'cancel': [void]
45
+ }
46
+ </script>
47
+
48
+ <script setup lang="ts">
49
+ import { reactiveOmit } from '@vueuse/core'
50
+ import { ComboboxInput, useForwardPropsEmits } from 'reka-ui'
51
+ import { useTemplateRef } from 'vue'
52
+ import { ComboboxAnchor, ComboboxCancel, ComboboxTrigger } from '.'
53
+
54
+ defineOptions({
55
+ inheritAttrs: false,
56
+ })
57
+
58
+ const props = withDefaults(defineProps<ComboboxInputProps>(), {
59
+ showTriggerButton: true,
60
+ showCancelButton: false,
61
+ })
62
+ const emits = defineEmits<ComboboxInputEmits>()
63
+
64
+ const delegatedProps = reactiveOmit(props, 'showCancelButton', 'showTriggerButton')
65
+
66
+ const forwarded = useForwardPropsEmits(delegatedProps, emits)
67
+
68
+ const inputRef = useTemplateRef('inputRef')
69
+ </script>
@@ -0,0 +1,35 @@
1
+ <style>
2
+ @import './combobox-item.css';
3
+ </style>
4
+
5
+ <template>
6
+ <ComboboxItem
7
+ v-bind="forwarded"
8
+ :class="clsx('arvue-combobox-item', props.class)"
9
+ >
10
+ <slot/>
11
+ </ComboboxItem>
12
+ </template>
13
+
14
+ <script lang="ts">
15
+ import type {
16
+ ComboboxItemEmits as RekaComboboxItemEmits,
17
+ ComboboxItemProps as RekaComboboxItemProps,
18
+ } from 'reka-ui'
19
+ import type { HTMLAttributes } from 'vue'
20
+
21
+ export interface ComboboxItemProps extends RekaComboboxItemProps {
22
+ class?: HTMLAttributes['class']
23
+ }
24
+ export interface ComboboxItemEmits extends RekaComboboxItemEmits {}
25
+ </script>
26
+
27
+ <script setup lang="ts">
28
+ import { clsx } from 'clsx'
29
+ import { ComboboxItem, useForwardPropsEmits } from 'reka-ui'
30
+
31
+ const props = defineProps<ComboboxItemProps>()
32
+ const emits = defineEmits<ComboboxItemEmits>()
33
+
34
+ const forwarded = useForwardPropsEmits(props, emits)
35
+ </script>
@@ -0,0 +1,31 @@
1
+ <style>
2
+ @import './combobox-label.css';
3
+ </style>
4
+
5
+ <template>
6
+ <ComboboxLabel
7
+ v-bind="delegatedProps"
8
+ :class="clsx('arvue-combobox-label', props.class)"
9
+ >
10
+ <slot/>
11
+ </ComboboxLabel>
12
+ </template>
13
+
14
+ <script lang="ts">
15
+ import type { ComboboxLabelProps as RekaComboboxLabelProps } from 'reka-ui'
16
+ import type { HTMLAttributes } from 'vue'
17
+
18
+ export interface ComboboxLabelProps extends RekaComboboxLabelProps {
19
+ class?: HTMLAttributes['class']
20
+ }
21
+ </script>
22
+
23
+ <script setup lang="ts">
24
+ import { reactiveOmit } from '@vueuse/core'
25
+ import { clsx } from 'clsx'
26
+ import { ComboboxLabel } from 'reka-ui'
27
+
28
+ const props = defineProps<ComboboxLabelProps>()
29
+
30
+ const delegatedProps = reactiveOmit(props, 'class')
31
+ </script>
@@ -0,0 +1,17 @@
1
+ <template>
2
+ <ComboboxPortal v-bind="props">
3
+ <slot/>
4
+ </ComboboxPortal>
5
+ </template>
6
+
7
+ <script lang="ts">
8
+ import type { ComboboxPortalProps as RekaComboboxPortalProps } from 'reka-ui'
9
+
10
+ export interface ComboboxPortalProps extends RekaComboboxPortalProps {}
11
+ </script>
12
+
13
+ <script setup lang="ts">
14
+ import { ComboboxPortal } from 'reka-ui'
15
+
16
+ const props = defineProps<ComboboxPortalProps>()
17
+ </script>
@@ -0,0 +1,31 @@
1
+ <style>
2
+ @import './combobox-separator.css';
3
+ </style>
4
+
5
+ <template>
6
+ <ComboboxSeparator
7
+ v-bind="delegatedProps"
8
+ :class="clsx('arvue-combobox-separator', props.class)"
9
+ >
10
+ <slot/>
11
+ </ComboboxSeparator>
12
+ </template>
13
+
14
+ <script lang="ts">
15
+ import type { ComboboxSeparatorProps as RekaComboboxSeparatorProps } from 'reka-ui'
16
+ import type { HTMLAttributes } from 'vue'
17
+
18
+ export interface ComboboxSeparatorProps extends RekaComboboxSeparatorProps {
19
+ class?: HTMLAttributes['class']
20
+ }
21
+ </script>
22
+
23
+ <script setup lang="ts">
24
+ import { reactiveOmit } from '@vueuse/core'
25
+ import { clsx } from 'clsx'
26
+ import { ComboboxSeparator } from 'reka-ui'
27
+
28
+ const props = defineProps<ComboboxSeparatorProps>()
29
+
30
+ const delegatedProps = reactiveOmit(props, 'class')
31
+ </script>
@@ -0,0 +1,17 @@
1
+ <template>
2
+ <ComboboxTrigger v-bind="props">
3
+ <slot/>
4
+ </ComboboxTrigger>
5
+ </template>
6
+
7
+ <script lang="ts">
8
+ import type { ComboboxTriggerProps as RekaComboboxTriggerProps } from 'reka-ui'
9
+
10
+ export interface ComboboxTriggerProps extends RekaComboboxTriggerProps {}
11
+ </script>
12
+
13
+ <script setup lang="ts">
14
+ import { ComboboxTrigger } from 'reka-ui'
15
+
16
+ const props = defineProps<ComboboxTriggerProps>()
17
+ </script>
@@ -0,0 +1,17 @@
1
+ <template>
2
+ <ComboboxViewport v-bind="props">
3
+ <slot/>
4
+ </ComboboxViewport>
5
+ </template>
6
+
7
+ <script lang="ts">
8
+ import type { ComboboxViewportProps as RekaComboboxViewportProps } from 'reka-ui'
9
+
10
+ export interface ComboboxViewportProps extends RekaComboboxViewportProps {}
11
+ </script>
12
+
13
+ <script setup lang="ts">
14
+ import { ComboboxViewport } from 'reka-ui'
15
+
16
+ const props = defineProps<ComboboxViewportProps>()
17
+ </script>
@@ -0,0 +1,11 @@
1
+ .arvue-combobox-content {
2
+ width: var(--reka-popper-anchor-width);
3
+ background: var(--background-color-blank);
4
+ box-shadow: 0 0.25rem 1rem -0.25rem rgba(0, 0, 0, 0.1);
5
+ margin-top: .5em;
6
+ border-radius: 0.5em;
7
+ }
8
+
9
+ .arvue-combobox div[data-reka-popper-content-wrapper] {
10
+ z-index: 110 !important;
11
+ }
@@ -0,0 +1,7 @@
1
+ .arvue-combobox-empty {
2
+ font-size: 0.75rem;
3
+ font-weight: 600;
4
+ text-align: center;
5
+ padding-top: 0.5rem;
6
+ padding-bottom: 0.5rem;
7
+ }
@@ -0,0 +1,10 @@
1
+ .arvue-combobox-input-wrapper {
2
+ display: flex;
3
+ align-items: center;
4
+ gap: 0.25rem;
5
+ }
6
+
7
+ .arvue-combobox-input-wrapper .state-with-inner-icon {
8
+ max-width: 100%;
9
+ }
10
+
@@ -0,0 +1,14 @@
1
+ .arvue-combobox-item {
2
+ line-height: 1;
3
+ display: flex;
4
+ align-items: center;
5
+ padding: 0.5em 1em;
6
+ position: relative;
7
+ user-select: none;
8
+ border-radius: 0.5em;
9
+ }
10
+
11
+ .arvue-combobox-item[data-highlighted] {
12
+ outline: none;
13
+ background: var(--background-color-zebra-row-odd-hover);
14
+ }
@@ -0,0 +1,6 @@
1
+ .arvue-combobox-label {
2
+ padding: .25em .75em;
3
+ font-size: .75em;
4
+ line-height: 1.2em;
5
+ font-weight: 600;
6
+ }
@@ -0,0 +1,5 @@
1
+ .arvue-combobox-separator {
2
+ height: 1px;
3
+ background-color: var(--border-color-hr);
4
+ margin: 5px;
5
+ }
@@ -0,0 +1,5 @@
1
+ .arvue-combobox {
2
+ position: relative;
3
+ width: fit-content;
4
+ max-width: 100%;
5
+ }
@@ -0,0 +1,56 @@
1
+ export {
2
+ default as Combobox,
3
+ type ComboboxEmits,
4
+ type ComboboxProps,
5
+ } from './Combobox.vue'
6
+ export {
7
+ default as ComboboxAnchor,
8
+ type ComboboxAnchorProps,
9
+ } from './ComboboxAnchor.vue'
10
+ export {
11
+ default as ComboboxCancel,
12
+ type ComboboxCancelProps,
13
+ } from './ComboboxCancel.vue'
14
+ export {
15
+ default as ComboboxContent,
16
+ type ComboboxContentEmits,
17
+ type ComboboxContentProps,
18
+ } from './ComboboxContent.vue'
19
+ export {
20
+ default as ComboboxEmpty,
21
+ type ComboboxEmptyProps,
22
+ } from './ComboboxEmpty.vue'
23
+ export {
24
+ default as ComboboxGroup,
25
+ type ComboboxGroupProps,
26
+ } from './ComboboxGroup.vue'
27
+ export {
28
+ default as ComboboxInput,
29
+ type ComboboxInputEmits,
30
+ type ComboboxInputProps,
31
+ } from './ComboboxInput.vue'
32
+ export {
33
+ default as ComboboxItem,
34
+ type ComboboxItemEmits,
35
+ type ComboboxItemProps,
36
+ } from './ComboboxItem.vue'
37
+ export {
38
+ default as ComboboxLabel,
39
+ type ComboboxLabelProps,
40
+ } from './ComboboxLabel.vue'
41
+ export {
42
+ default as ComboboxPortal,
43
+ type ComboboxPortalProps,
44
+ } from './ComboboxPortal.vue'
45
+ export {
46
+ default as ComboboxSeparator,
47
+ type ComboboxSeparatorProps,
48
+ } from './ComboboxSeparator.vue'
49
+ export {
50
+ default as ComboboxTrigger,
51
+ type ComboboxTriggerProps,
52
+ } from './ComboboxTrigger.vue'
53
+ export {
54
+ default as ComboboxViewport,
55
+ type ComboboxViewportProps,
56
+ } from './ComboboxViewport.vue'
@@ -1,5 +1,5 @@
1
1
  <style>
2
- @import "./dialog-description.css";
2
+ @import './dialog-description.css';
3
3
  </style>
4
4
 
5
5
  <template>
@@ -1,5 +1,5 @@
1
1
  <style>
2
- @import "./dialog-footer.css";
2
+ @import './dialog-footer.css';
3
3
  </style>
4
4
 
5
5
  <template>
@@ -1,5 +1,5 @@
1
1
  <style>
2
- @import "./dialog-header.css";
2
+ @import './dialog-header.css';
3
3
  </style>
4
4
 
5
5
  <template>
@@ -1,5 +1,5 @@
1
1
  <style>
2
- @import "./dialog-title.css";
2
+ @import './dialog-title.css';
3
3
  </style>
4
4
 
5
5
  <template>
@@ -1,5 +1,5 @@
1
1
  <style>
2
- @import "./drawer-description.css";
2
+ @import './drawer-description.css';
3
3
  </style>
4
4
 
5
5
  <template>
@@ -1,5 +1,5 @@
1
1
  <style>
2
- @import "./drawer-footer.css";
2
+ @import './drawer-footer.css';
3
3
  </style>
4
4
 
5
5
  <template>
@@ -1,5 +1,5 @@
1
1
  <style>
2
- @import "./drawer-header.css";
2
+ @import './drawer-header.css';
3
3
  </style>
4
4
 
5
5
  <template>
@@ -1,5 +1,5 @@
1
1
  <style>
2
- @import "./drawer-title.css";
2
+ @import './drawer-title.css';
3
3
  </style>
4
4
 
5
5
  <template>
package/src/index.ts CHANGED
@@ -1,4 +1,6 @@
1
1
  export * from './autocomplete'
2
+ export * from './combobox'
2
3
  export * from './dialog'
3
4
  export * from './drawer'
4
5
  export * from './sheet'
6
+ export * from './sonner'
@@ -1,5 +1,5 @@
1
1
  <style>
2
- @import 'sheet-content.css';
2
+ @import './sheet-content.css';
3
3
  </style>
4
4
 
5
5
  <template>
@@ -1,5 +1,5 @@
1
1
  <style>
2
- @import "sheet-description.css";
2
+ @import './sheet-description.css';
3
3
  </style>
4
4
 
5
5
  <template>
@@ -1,5 +1,5 @@
1
1
  <style>
2
- @import "sheet-footer.css";
2
+ @import './sheet-footer.css';
3
3
  </style>
4
4
 
5
5
  <template>
@@ -1,5 +1,5 @@
1
1
  <style>
2
- @import "sheet-header.css";
2
+ @import './sheet-header.css';
3
3
  </style>
4
4
 
5
5
  <template>
@@ -1,5 +1,5 @@
1
1
  <style>
2
- @import 'sheet-overlay.css';
2
+ @import './sheet-overlay.css';
3
3
  </style>
4
4
 
5
5
  <template>
@@ -1,5 +1,5 @@
1
1
  <style>
2
- @import "sheet-title.css";
2
+ @import './sheet-title.css';
3
3
  </style>
4
4
 
5
5
  <template>
@@ -0,0 +1,47 @@
1
+ <style>
2
+ @import './sonner.css';
3
+ </style>
4
+
5
+ <template>
6
+ <Toaster
7
+ v-bind="props"
8
+ :class="clsx('arvue-sonner', props.class)"
9
+ >
10
+ <template #success-icon>
11
+ <i class="fas fa-check-circle"/>
12
+ </template>
13
+ <template #info-icon>
14
+ <i class="fas fa-info-circle"/>
15
+ </template>
16
+ <template #warning-icon>
17
+ <i class="fas fa-exclamation-triangle"/>
18
+ </template>
19
+ <template #error-icon>
20
+ <i class="fas fa-skull"/>
21
+ </template>
22
+ <template #loading-icon>
23
+ <div>
24
+ <i class="fas fa-spinner wa-animation-spin"/>
25
+ </div>
26
+ </template>
27
+ <template #close-icon>
28
+ <i class="fas fa-times"/>
29
+ </template>
30
+ </Toaster>
31
+ </template>
32
+
33
+ <script lang="ts">
34
+ import type { ToasterProps } from 'vue-sonner'
35
+
36
+ export interface SonnerProps extends ToasterProps {
37
+ }
38
+ </script>
39
+
40
+ <script setup lang="ts">
41
+ import { clsx } from 'clsx'
42
+ import { Toaster } from 'vue-sonner'
43
+
44
+ const props = withDefaults(defineProps<SonnerProps>(), {
45
+ richColors: true,
46
+ })
47
+ </script>
@@ -0,0 +1,5 @@
1
+ export {
2
+ default as Sonner,
3
+ type SonnerProps,
4
+ } from './Sonner.vue'
5
+ export { toast } from 'vue-sonner'