arvue-ui 0.4.0 → 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 (59) 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.map +1 -1
  5. package/dist/combobox/comboboxContent.js.map +1 -1
  6. package/dist/combobox/comboboxEmpty.js.map +1 -1
  7. package/dist/combobox/comboboxInput.js +3 -3
  8. package/dist/combobox/comboboxInput.js.map +1 -1
  9. package/dist/combobox/comboboxItem.js.map +1 -1
  10. package/dist/combobox/comboboxLabel.js.map +1 -1
  11. package/dist/combobox/comboboxSeparator.js.map +1 -1
  12. package/dist/dialog/dialogDescription.js.map +1 -1
  13. package/dist/dialog/dialogFooter.js.map +1 -1
  14. package/dist/dialog/dialogHeader.js.map +1 -1
  15. package/dist/dialog/dialogTitle.js.map +1 -1
  16. package/dist/drawer/drawerDescription.js.map +1 -1
  17. package/dist/drawer/drawerFooter.js.map +1 -1
  18. package/dist/drawer/drawerHeader.js.map +1 -1
  19. package/dist/drawer/drawerTitle.js.map +1 -1
  20. package/dist/index.d.ts +124 -116
  21. package/dist/index.d.ts.map +1 -1
  22. package/dist/index.js +3 -1
  23. package/dist/index.js.map +1 -1
  24. package/dist/sheet/sheetContent.js.map +1 -1
  25. package/dist/sheet/sheetDescription.js.map +1 -1
  26. package/dist/sheet/sheetFooter.js.map +1 -1
  27. package/dist/sheet/sheetHeader.js.map +1 -1
  28. package/dist/sheet/sheetOverlay.js.map +1 -1
  29. package/dist/sheet/sheetTitle.js.map +1 -1
  30. package/dist/sonner/sonner.js +51 -0
  31. package/dist/sonner/sonner.js.map +1 -0
  32. package/dist/style.css +23 -21
  33. package/package.json +3 -2
  34. package/src/autocomplete/AutocompleteInput.vue +1 -1
  35. package/src/combobox/Combobox.vue +1 -1
  36. package/src/combobox/ComboboxContent.vue +1 -1
  37. package/src/combobox/ComboboxEmpty.vue +1 -1
  38. package/src/combobox/ComboboxInput.vue +2 -2
  39. package/src/combobox/ComboboxItem.vue +1 -1
  40. package/src/combobox/ComboboxLabel.vue +1 -1
  41. package/src/combobox/ComboboxSeparator.vue +1 -1
  42. package/src/dialog/DialogDescription.vue +1 -1
  43. package/src/dialog/DialogFooter.vue +1 -1
  44. package/src/dialog/DialogHeader.vue +1 -1
  45. package/src/dialog/DialogTitle.vue +1 -1
  46. package/src/drawer/DrawerDescription.vue +1 -1
  47. package/src/drawer/DrawerFooter.vue +1 -1
  48. package/src/drawer/DrawerHeader.vue +1 -1
  49. package/src/drawer/DrawerTitle.vue +1 -1
  50. package/src/index.ts +1 -0
  51. package/src/sheet/SheetContent.vue +1 -1
  52. package/src/sheet/SheetDescription.vue +1 -1
  53. package/src/sheet/SheetFooter.vue +1 -1
  54. package/src/sheet/SheetHeader.vue +1 -1
  55. package/src/sheet/SheetOverlay.vue +1 -1
  56. package/src/sheet/SheetTitle.vue +1 -1
  57. package/src/sonner/Sonner.vue +47 -0
  58. package/src/sonner/index.ts +5 -0
  59. package/src/sonner/sonner.css +91 -0
package/dist/style.css CHANGED
@@ -13,52 +13,54 @@
13
13
 
14
14
  @import './autocomplete-separator.css';
15
15
 
16
- @import 'combobox.css';
16
+ @import './combobox.css';
17
17
 
18
- @import 'combobox-content.css';
18
+ @import './combobox-content.css';
19
19
 
20
- @import 'combobox-empty.css';
20
+ @import './combobox-empty.css';
21
21
 
22
- @import 'combobox-input.css';
22
+ @import './combobox-input.css';
23
23
 
24
- @import 'combobox-item.css';
24
+ @import './combobox-item.css';
25
25
 
26
- @import 'combobox-label.css';
26
+ @import './combobox-label.css';
27
27
 
28
- @import 'combobox-separator.css';
28
+ @import './combobox-separator.css';
29
29
 
30
30
  @import './dialog-content.css';
31
31
 
32
- @import "./dialog-description.css";
32
+ @import './dialog-description.css';
33
33
 
34
- @import "./dialog-footer.css";
34
+ @import './dialog-footer.css';
35
35
 
36
- @import "./dialog-header.css";
36
+ @import './dialog-header.css';
37
37
 
38
38
  @import './dialog-overlay.css';
39
39
 
40
- @import "./dialog-title.css";
40
+ @import './dialog-title.css';
41
41
 
42
42
  @import './drawer-content.css';
43
43
 
44
- @import "./drawer-description.css";
44
+ @import './drawer-description.css';
45
45
 
46
- @import "./drawer-footer.css";
46
+ @import './drawer-footer.css';
47
47
 
48
- @import "./drawer-header.css";
48
+ @import './drawer-header.css';
49
49
 
50
50
  @import './drawer-overlay.css';
51
51
 
52
- @import "./drawer-title.css";
52
+ @import './drawer-title.css';
53
53
 
54
- @import 'sheet-content.css';
54
+ @import './sheet-content.css';
55
55
 
56
- @import "sheet-description.css";
56
+ @import './sheet-description.css';
57
57
 
58
- @import "sheet-footer.css";
58
+ @import './sheet-footer.css';
59
59
 
60
- @import "sheet-header.css";
60
+ @import './sheet-header.css';
61
61
 
62
- @import 'sheet-overlay.css';
62
+ @import './sheet-overlay.css';
63
63
 
64
- @import "sheet-title.css";
64
+ @import './sheet-title.css';
65
+
66
+ @import './sonner.css';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "arvue-ui",
3
- "version": "0.4.0",
3
+ "version": "0.5.0",
4
4
  "repository": {
5
5
  "type": "git",
6
6
  "url": "git+https://github.com/Articus-Company/arvue-ui.git",
@@ -40,7 +40,8 @@
40
40
  "class-variance-authority": "^0.7.1",
41
41
  "motion-v": "^2.2.1",
42
42
  "reka-ui": "^2.9.8",
43
- "vaul-vue": "^0.4.1"
43
+ "vaul-vue": "^0.4.1",
44
+ "vue-sonner": "^2.0.9"
44
45
  },
45
46
  "devDependencies": {
46
47
  "@microsoft/api-extractor": "^7.58.7",
@@ -5,7 +5,7 @@
5
5
  <template>
6
6
  <div class="arvue-autocomplete-input-wrapper">
7
7
  <AutocompleteAnchor
8
- class="state-with-inner-icon right"
8
+ :class="{ 'state-with-inner-icon right': showTriggerButton }"
9
9
  :reference="inputRef?.$el"
10
10
  >
11
11
  <AutocompleteInput
@@ -1,5 +1,5 @@
1
1
  <style>
2
- @import 'combobox.css';
2
+ @import './combobox.css';
3
3
  </style>
4
4
 
5
5
  <template>
@@ -1,5 +1,5 @@
1
1
  <style>
2
- @import 'combobox-content.css';
2
+ @import './combobox-content.css';
3
3
  </style>
4
4
 
5
5
  <template>
@@ -1,5 +1,5 @@
1
1
  <style>
2
- @import 'combobox-empty.css';
2
+ @import './combobox-empty.css';
3
3
  </style>
4
4
 
5
5
  <template>
@@ -1,11 +1,11 @@
1
1
  <style>
2
- @import 'combobox-input.css';
2
+ @import './combobox-input.css';
3
3
  </style>
4
4
 
5
5
  <template>
6
6
  <div class="arvue-combobox-input-wrapper">
7
7
  <ComboboxAnchor
8
- class="state-with-inner-icon right"
8
+ :class="{ 'state-with-inner-icon right': showTriggerButton }"
9
9
  :reference="inputRef?.$el"
10
10
  >
11
11
  <ComboboxInput
@@ -1,5 +1,5 @@
1
1
  <style>
2
- @import 'combobox-item.css';
2
+ @import './combobox-item.css';
3
3
  </style>
4
4
 
5
5
  <template>
@@ -1,5 +1,5 @@
1
1
  <style>
2
- @import 'combobox-label.css';
2
+ @import './combobox-label.css';
3
3
  </style>
4
4
 
5
5
  <template>
@@ -1,5 +1,5 @@
1
1
  <style>
2
- @import 'combobox-separator.css';
2
+ @import './combobox-separator.css';
3
3
  </style>
4
4
 
5
5
  <template>
@@ -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
@@ -3,3 +3,4 @@ export * from './combobox'
3
3
  export * from './dialog'
4
4
  export * from './drawer'
5
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'
@@ -0,0 +1,91 @@
1
+ /* tsdown/css (postcss-import) не резолвит пути из package.json у пакета, поэтому путь до стилей прямой */
2
+ @import 'vue-sonner/lib/index.css';
3
+
4
+ .arvue-sonner[data-sonner-toaster] {
5
+ --offset-top: 5.5rem !important;
6
+ --offset-right: 1.5rem !important;
7
+ --offset-left: 1.5rem !important;
8
+ z-index: 1060;
9
+ }
10
+
11
+ .arvue-sonner[data-sonner-toaster][data-sonner-theme='light'],
12
+ .arvue-sonner[data-sonner-toaster][data-sonner-theme='dark'] {
13
+ --normal-bg: var(--alert-background-color);
14
+ --normal-border: var(--alert-border-color);
15
+ --normal-text: var(--alert-text-color);
16
+
17
+ --success-bg: var(--alert-success-background-color);
18
+ --success-border: var(--alert-success-border-color);
19
+ --success-text: var(--alert-success-text-color);
20
+
21
+ --info-bg: var(--alert-info-background-color);
22
+ --info-border: var(--alert-info-border-color);
23
+ --info-text: var(--alert-info-text-color);
24
+
25
+ --warning-bg: var(--alert-warning-background-color);
26
+ --warning-border: var(--alert-warning-border-color);
27
+ --warning-text: var(--alert-warning-text-color);
28
+
29
+ --error-bg: var(--alert-danger-background-color);
30
+ --error-border: var(--alert-danger-border-color);
31
+ --error-text: var(--alert-danger-text-color);
32
+
33
+ --border-radius: 0.75em;
34
+ }
35
+
36
+ .arvue-sonner li[data-sonner-toast][data-styled="true"] {
37
+ padding: 0.75em 1em;
38
+ font-weight: normal;
39
+ font-style: normal;
40
+ font-size: initial;
41
+ border-width: 0.125rem;
42
+ transition: background-color var(--timing-default),
43
+ opacity var(--timing-default),
44
+ transform var(--timing-default),
45
+ height var(--timing-default),
46
+ box-shadow var(--timing-fast);
47
+ }
48
+
49
+ .arvue-sonner li[data-sonner-toast][data-styled='true'] [data-description] {
50
+ color: var(--text-color-hint);
51
+ font-size: 81.25%;
52
+ }
53
+
54
+ .arvue-sonner li[data-sonner-toast][data-styled='true'] [data-button] {
55
+ border-radius: .5em;
56
+ background: var(--accent-color);
57
+ margin-left: var(--toast-button-margin-start);
58
+ outline: 0 none;
59
+ box-shadow: 0 0.25em 0.75em -0.25em rgba(0, 0, 0, 0.2);
60
+ cursor: pointer;
61
+ color: var(--white);
62
+ transition: color 0.1s ease-in-out,
63
+ background-color 0.1s ease-in-out,
64
+ border-color 0.1s ease-in-out,
65
+ box-shadow 0.1s ease-in-out,
66
+ opacity 0.1s ease-in-out;
67
+ }
68
+
69
+ .arvue-sonner li[data-sonner-toast][data-styled='true'] [data-button]:hover {
70
+ box-shadow: none;
71
+ background: var(--accent-color);
72
+ }
73
+
74
+ .arvue-sonner li[data-sonner-toast][data-styled='true'] [data-close-button] {
75
+ border-width: 0.125rem;
76
+ border-color: inherit;
77
+ margin: 0;
78
+ }
79
+
80
+ .arvue-sonner li[data-sonner-toast][data-styled='true'] [data-close-button] [data-icon] {
81
+ display: inline-block;
82
+ margin: 0;
83
+ color: var(--dark-gray);
84
+ height: 12px;
85
+ width: 12px;
86
+ }
87
+
88
+ html[data-theme="dark"] .arvue-sonner li[data-sonner-toast][data-styled='true'] [data-close-button] [data-icon],
89
+ .arvue-sonner li[data-sonner-toast][data-type='error'][data-styled='true'] [data-close-button] [data-icon]{
90
+ color: var(--white);
91
+ }