@dolanske/vui 0.3.4 → 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 (114) hide show
  1. package/LICENSE +673 -673
  2. package/README.md +41 -40
  3. package/dist/components/Dropdown/DropdownItem.vue.d.ts +1 -0
  4. package/dist/components/Flex/Flex.vue.d.ts +3 -1
  5. package/dist/components/Grid/Grid.vue.d.ts +3 -1
  6. package/dist/components/Tabs/Tabs.vue.d.ts +4 -0
  7. package/dist/style.css +1 -1
  8. package/dist/vui.js +1547 -1534
  9. package/package.json +68 -68
  10. package/src/App.vue +176 -175
  11. package/src/components/Accordion/Accordion.vue +91 -91
  12. package/src/components/Accordion/AccordionGroup.vue +43 -43
  13. package/src/components/Accordion/accordion.scss +81 -80
  14. package/src/components/Alert/Alert.vue +53 -53
  15. package/src/components/Alert/alert.scss +80 -80
  16. package/src/components/Avatar/Avatar.vue +50 -50
  17. package/src/components/Avatar/avatar.scss +52 -52
  18. package/src/components/Badge/Badge.vue +21 -21
  19. package/src/components/Badge/badge.scss +89 -89
  20. package/src/components/Breadcrumbs/BreadcrumbItem.vue +26 -26
  21. package/src/components/Breadcrumbs/Breadcrumbs.vue +33 -33
  22. package/src/components/Breadcrumbs/breadcrumbs.scss +30 -30
  23. package/src/components/Button/Button.vue +90 -90
  24. package/src/components/Button/button.scss +178 -176
  25. package/src/components/ButtonGroup/ButtonGroup.vue +25 -25
  26. package/src/components/ButtonGroup/button-group.scss +51 -51
  27. package/src/components/Calendar/Calendar.vue +63 -60
  28. package/src/components/Calendar/calendar.scss +60 -56
  29. package/src/components/Card/Card.vue +48 -48
  30. package/src/components/Card/card.scss +53 -53
  31. package/src/components/Checkbox/Checkbox.vue +51 -52
  32. package/src/components/Checkbox/checkbox.scss +75 -66
  33. package/src/components/CopyClipboard/CopyClipboard.vue +82 -82
  34. package/src/components/CopyClipboard/copy-clipboard.scss +17 -17
  35. package/src/components/Divider/Divider.vue +44 -44
  36. package/src/components/Divider/divider.scss +35 -35
  37. package/src/components/Drawer/Drawer.vue +97 -97
  38. package/src/components/Drawer/drawer.scss +36 -36
  39. package/src/components/Dropdown/Dropdown.vue +111 -111
  40. package/src/components/Dropdown/DropdownItem.vue +33 -29
  41. package/src/components/Dropdown/DropdownTitle.vue +8 -8
  42. package/src/components/Dropdown/dropdown-item.scss +77 -0
  43. package/src/components/Dropdown/dropdown.scss +39 -117
  44. package/src/components/Flex/Flex.vue +113 -106
  45. package/src/components/Grid/Grid.vue +60 -54
  46. package/src/components/Input/Counter.vue +70 -70
  47. package/src/components/Input/Dropzone.vue +65 -65
  48. package/src/components/Input/File.vue +15 -15
  49. package/src/components/Input/Input.vue +121 -121
  50. package/src/components/Input/Password.vue +47 -47
  51. package/src/components/Input/Textarea.vue +76 -76
  52. package/src/components/Input/input.scss +208 -208
  53. package/src/components/Kbd/Kbd.vue +48 -48
  54. package/src/components/Kbd/KbdGroup.vue +31 -31
  55. package/src/components/Kbd/kbd.scss +18 -18
  56. package/src/components/Modal/Confirm.vue +56 -56
  57. package/src/components/Modal/Modal.vue +91 -91
  58. package/src/components/Modal/modal.scss +49 -49
  59. package/src/components/OTP/OTP.vue +133 -133
  60. package/src/components/OTP/OTPItem.vue +37 -37
  61. package/src/components/OTP/otp.scss +83 -83
  62. package/src/components/Pagination/Pagination.vue +74 -74
  63. package/src/components/Pagination/pagination.ts +78 -78
  64. package/src/components/Popout/Popout.vue +42 -42
  65. package/src/components/Popout/popout.scss +8 -8
  66. package/src/components/Progress/Progress.vue +90 -90
  67. package/src/components/Progress/progress.scss +41 -41
  68. package/src/components/Radio/Radio.vue +36 -36
  69. package/src/components/Radio/RadioGroup.vue +40 -40
  70. package/src/components/Radio/radio.scss +68 -59
  71. package/src/components/Select/Select.vue +180 -180
  72. package/src/components/Select/select.scss +44 -44
  73. package/src/components/Sheet/Sheet.vue +92 -92
  74. package/src/components/Sheet/sheet.scss +60 -60
  75. package/src/components/Sidebar/Sidebar.vue +102 -0
  76. package/src/components/Sidebar/sidebar.scss +123 -0
  77. package/src/components/Skeleton/Skeleton.vue +43 -43
  78. package/src/components/Skeleton/skeleton.scss +14 -14
  79. package/src/components/Spinner/Spinner.vue +42 -42
  80. package/src/components/Spinner/spinner.scss +46 -46
  81. package/src/components/Switch/Switch.vue +30 -30
  82. package/src/components/Switch/switch.scss +60 -52
  83. package/src/components/Table/Cell.vue +23 -23
  84. package/src/components/Table/Header.vue +59 -59
  85. package/src/components/Table/Row.vue +9 -9
  86. package/src/components/Table/SelectAll.vue +23 -23
  87. package/src/components/Table/SelectRow.vue +29 -29
  88. package/src/components/Table/Table.vue +66 -66
  89. package/src/components/Table/table.scss +134 -134
  90. package/src/components/Table/table.ts +244 -244
  91. package/src/components/Tabs/Tab.vue +27 -27
  92. package/src/components/Tabs/Tabs.vue +89 -82
  93. package/src/components/Tabs/tabs.scss +80 -79
  94. package/src/components/Toast/Toasts.vue +47 -47
  95. package/src/components/Toast/toast.scss +41 -41
  96. package/src/components/Toast/toast.ts +68 -68
  97. package/src/components/Tooltip/Tooltip.vue +86 -86
  98. package/src/components/Tooltip/tooltip.scss +4 -4
  99. package/src/index.scss +1 -1
  100. package/src/index.ts +119 -119
  101. package/src/internal/Backdrop/Backdrop.vue +22 -22
  102. package/src/internal/Backdrop/backdrop.scss +28 -28
  103. package/src/main.ts +5 -5
  104. package/src/shared/helpers.ts +74 -74
  105. package/src/shared/types.ts +29 -29
  106. package/src/style/animation.scss +21 -21
  107. package/src/style/core.scss +150 -148
  108. package/src/style/layout.scss +168 -136
  109. package/src/style/media-query.scss +29 -29
  110. package/src/style/reset.scss +135 -135
  111. package/src/style/{fonts.scss → text.scss} +74 -53
  112. package/src/style/tooltip.scss +128 -128
  113. package/src/style/typography.scss +338 -338
  114. package/src/style/utils.scss +36 -36
@@ -1,136 +1,168 @@
1
- // Container layout styling
2
- $containers: 'xs', 's', 'm', 'l', 'xl', 'xxl';
3
-
4
- .container {
5
- display: block;
6
- margin-inline: auto;
7
- width: 100%;
8
- padding-inline: var(--space-m);
9
- max-width: var(--container-l);
10
-
11
- @each $container in $containers {
12
- &.container-#{$container} {
13
- max-width: var(--container-#{$container});
14
- }
15
- }
16
-
17
- &.container-full {
18
- max-width: 100%;
19
- }
20
- }
21
-
22
- // Layout
23
- .flex {
24
- display: flex;
25
- }
26
-
27
- .inline-flex {
28
- display: inline-flex;
29
- }
30
-
31
- .block {
32
- display: block;
33
- }
34
-
35
- .inline-block {
36
- display: inline-block;
37
- }
38
-
39
- // Sizes
40
- // Paddings & margins
41
- .mx-auto {
42
- margin-inline: auto;
43
- }
44
-
45
- .my-auto {
46
- margin-block: auto;
47
- }
48
-
49
- .m-auto {
50
- margin: auto;
51
- }
52
-
53
- // Generate layout classes from size styles
54
- $sizes: 'xxs', 'xs', 's', 'm', 'l', 'xl', 'xxl', 'xxxl';
55
-
56
- @each $size in $sizes {
57
- // Margin
58
- .mb-#{$size} {
59
- margin-bottom: var(--space-#{$size});
60
- }
61
-
62
- .mr-#{$size} {
63
- margin-right: var(--space-#{$size});
64
- }
65
-
66
- .ml-#{$size} {
67
- margin-left: var(--space-#{$size});
68
- }
69
-
70
- .mt-#{$size} {
71
- margin-top: var(--space-#{$size});
72
- }
73
-
74
- .mx-#{$size} {
75
- margin-inline: var(--space-#{$size});
76
- }
77
-
78
- .my-#{$size} {
79
- margin-block: var(--space-#{$size});
80
- }
81
-
82
- .m-#{$size} {
83
- margin: var(--space-#{$size});
84
- }
85
-
86
- // Padding
87
- .pb-#{$size} {
88
- padding-bottom: var(--space-#{$size});
89
- }
90
-
91
- .pr-#{$size} {
92
- padding-right: var(--space-#{$size});
93
- }
94
-
95
- .pl-#{$size} {
96
- padding-left: var(--space-#{$size});
97
- }
98
-
99
- .pt-#{$size} {
100
- padding-top: var(--space-#{$size});
101
- }
102
-
103
- .px-#{$size} {
104
- padding-inline: var(--space-#{$size});
105
- }
106
-
107
- .py-#{$size} {
108
- padding-block: var(--space-#{$size});
109
- }
110
-
111
- .p-#{$size} {
112
- padding: var(--space-#{$size});
113
- }
114
-
115
- // Gap
116
- .g-#{$size} {
117
- gap: var(--space-#{$size});
118
- }
119
-
120
- .g-y-#{$size} {
121
- row-gap: var(--space-#{$size});
122
- }
123
-
124
- .g-x-#{$size} {
125
- column-gap: var(--space-#{$size});
126
- }
127
- }
128
-
129
- // Z-index
130
- $zindexes: 0, 10, 20, 30, 40, 50, auto;
131
-
132
- @each $zindex in $zindexes {
133
- .z-#{$zindex} {
134
- z-index: $zindex;
135
- }
136
- }
1
+ // Container layout styling
2
+ $containers: 'xs', 's', 'm', 'l', 'xl', 'xxl';
3
+
4
+ .container {
5
+ display: block;
6
+ margin-inline: auto;
7
+ width: 100%;
8
+ padding-inline: var(--space-m);
9
+ max-width: var(--container-l);
10
+
11
+ @each $container in $containers {
12
+ &.container-#{$container} {
13
+ max-width: var(--container-#{$container});
14
+ }
15
+ }
16
+
17
+ &.container-full {
18
+ max-width: 100%;
19
+ }
20
+ }
21
+
22
+ // Layout
23
+ .flex {
24
+ display: flex;
25
+ }
26
+
27
+ .flex-1 {
28
+ flex: 1;
29
+ }
30
+
31
+ .inline-flex {
32
+ display: inline-flex;
33
+ }
34
+
35
+ .block {
36
+ display: block;
37
+ }
38
+
39
+ .inline-block {
40
+ display: inline-block;
41
+ }
42
+
43
+ .inline {
44
+ display: inline;
45
+ }
46
+
47
+ .x-center {
48
+ justify-content: center;
49
+ }
50
+
51
+ .x-start {
52
+ justify-content: flex-start;
53
+ }
54
+
55
+ .x-end {
56
+ justify-content: flex-end;
57
+ }
58
+
59
+ .y-start {
60
+ align-items: center;
61
+ }
62
+
63
+ .y-end {
64
+ align-self: flex-end;
65
+ }
66
+
67
+ .y-center {
68
+ align-items: center;
69
+ }
70
+
71
+ // Sizes
72
+ // Paddings & margins
73
+ .mx-auto {
74
+ margin-inline: auto;
75
+ }
76
+
77
+ .my-auto {
78
+ margin-block: auto;
79
+ }
80
+
81
+ .m-auto {
82
+ margin: auto;
83
+ }
84
+
85
+ // Generate layout classes from size styles
86
+ $sizes: 'xxs', 'xs', 's', 'm', 'l', 'xl', 'xxl', 'xxxl';
87
+
88
+ @each $size in $sizes {
89
+ // Margin
90
+ .mb-#{$size} {
91
+ margin-bottom: var(--space-#{$size});
92
+ }
93
+
94
+ .mr-#{$size} {
95
+ margin-right: var(--space-#{$size});
96
+ }
97
+
98
+ .ml-#{$size} {
99
+ margin-left: var(--space-#{$size});
100
+ }
101
+
102
+ .mt-#{$size} {
103
+ margin-top: var(--space-#{$size});
104
+ }
105
+
106
+ .mx-#{$size} {
107
+ margin-inline: var(--space-#{$size});
108
+ }
109
+
110
+ .my-#{$size} {
111
+ margin-block: var(--space-#{$size});
112
+ }
113
+
114
+ .m-#{$size} {
115
+ margin: var(--space-#{$size});
116
+ }
117
+
118
+ // Padding
119
+ .pb-#{$size} {
120
+ padding-bottom: var(--space-#{$size});
121
+ }
122
+
123
+ .pr-#{$size} {
124
+ padding-right: var(--space-#{$size});
125
+ }
126
+
127
+ .pl-#{$size} {
128
+ padding-left: var(--space-#{$size});
129
+ }
130
+
131
+ .pt-#{$size} {
132
+ padding-top: var(--space-#{$size});
133
+ }
134
+
135
+ .px-#{$size} {
136
+ padding-inline: var(--space-#{$size});
137
+ }
138
+
139
+ .py-#{$size} {
140
+ padding-block: var(--space-#{$size});
141
+ }
142
+
143
+ .p-#{$size} {
144
+ padding: var(--space-#{$size});
145
+ }
146
+
147
+ // Gap
148
+ .g-#{$size} {
149
+ gap: var(--space-#{$size});
150
+ }
151
+
152
+ .g-y-#{$size} {
153
+ row-gap: var(--space-#{$size});
154
+ }
155
+
156
+ .g-x-#{$size} {
157
+ column-gap: var(--space-#{$size});
158
+ }
159
+ }
160
+
161
+ // Z-index
162
+ $zindexes: 0, 10, 20, 30, 40, 50, auto;
163
+
164
+ @each $zindex in $zindexes {
165
+ .z-#{$zindex} {
166
+ z-index: $zindex;
167
+ }
168
+ }
@@ -1,29 +1,29 @@
1
- // Mobile phones
2
- @media screen and (max-width: 572px) {
3
- :root {
4
- --space-xs: 5px;
5
- --space-s: 8px;
6
- --space-m: 12px;
7
- --space-l: 20px;
8
- --space-xl: 32px;
9
- --space-xxl: 44px;
10
- }
11
-
12
- // Typography changes
13
- h1 {
14
- font-size: 3.2rem;
15
- }
16
-
17
- h2 {
18
- font-size: 2.8rem;
19
- }
20
-
21
- h3 {
22
- font-size: 2.2rem;
23
- }
24
-
25
- .vui-tabs .vui-tab {
26
- font-size: var(--font-size-s);
27
- padding: 0 var(--space-xs);
28
- }
29
- }
1
+ // Mobile phones
2
+ @media screen and (max-width: 572px) {
3
+ :root {
4
+ --space-xs: 5px;
5
+ --space-s: 8px;
6
+ --space-m: 12px;
7
+ --space-l: 20px;
8
+ --space-xl: 32px;
9
+ --space-xxl: 44px;
10
+ }
11
+
12
+ // Typography changes
13
+ h1 {
14
+ font-size: 3.2rem;
15
+ }
16
+
17
+ h2 {
18
+ font-size: 2.8rem;
19
+ }
20
+
21
+ h3 {
22
+ font-size: 2.2rem;
23
+ }
24
+
25
+ .vui-tabs .vui-tab {
26
+ font-size: var(--font-size-s);
27
+ padding: 0 var(--space-xs);
28
+ }
29
+ }
@@ -1,135 +1,135 @@
1
- html,
2
- body,
3
- div,
4
- span,
5
- applet,
6
- object,
7
- iframe,
8
- h1,
9
- h2,
10
- h3,
11
- h4,
12
- h5,
13
- h6,
14
- p,
15
- blockquote,
16
- pre,
17
- a,
18
- abbr,
19
- acronym,
20
- address,
21
- big,
22
- cite,
23
- code,
24
- del,
25
- dfn,
26
- em,
27
- img,
28
- ins,
29
- kbd,
30
- q,
31
- s,
32
- samp,
33
- small,
34
- strike,
35
- strong,
36
- sub,
37
- sup,
38
- tt,
39
- var,
40
- b,
41
- u,
42
- i,
43
- center,
44
- dl,
45
- dt,
46
- dd,
47
- ol,
48
- ul,
49
- li,
50
- fieldset,
51
- form,
52
- label,
53
- legend,
54
- table,
55
- caption,
56
- tbody,
57
- tfoot,
58
- thead,
59
- tr,
60
- th,
61
- td,
62
- article,
63
- aside,
64
- canvas,
65
- details,
66
- embed,
67
- figure,
68
- figcaption,
69
- footer,
70
- header,
71
- hgroup,
72
- menu,
73
- nav,
74
- output,
75
- ruby,
76
- section,
77
- summary,
78
- time,
79
- mark,
80
- audio,
81
- video {
82
- margin: 0;
83
- padding: 0;
84
- border: 0;
85
- font-size: 100%;
86
- font: inherit;
87
- vertical-align: baseline;
88
- }
89
- /* HTML5 display-role reset for older browsers */
90
- article,
91
- aside,
92
- details,
93
- figcaption,
94
- figure,
95
- footer,
96
- header,
97
- hgroup,
98
- menu,
99
- nav,
100
- section {
101
- display: block;
102
- }
103
- body {
104
- line-height: 1;
105
- }
106
- ol,
107
- ul {
108
- list-style: none;
109
- }
110
- blockquote,
111
- q {
112
- quotes: none;
113
- }
114
- blockquote:before,
115
- blockquote:after,
116
- q:before,
117
- q:after {
118
- content: '';
119
- content: none;
120
- }
121
- table {
122
- border-collapse: collapse;
123
- border-spacing: 0;
124
- }
125
- button {
126
- border: none;
127
- background-color: unset;
128
- margin: 0;
129
- font-family: var(--global-font);
130
- }
131
-
132
- hr {
133
- border: none;
134
- border-bottom: 1px solid var(--color-border);
135
- }
1
+ html,
2
+ body,
3
+ div,
4
+ span,
5
+ applet,
6
+ object,
7
+ iframe,
8
+ h1,
9
+ h2,
10
+ h3,
11
+ h4,
12
+ h5,
13
+ h6,
14
+ p,
15
+ blockquote,
16
+ pre,
17
+ a,
18
+ abbr,
19
+ acronym,
20
+ address,
21
+ big,
22
+ cite,
23
+ code,
24
+ del,
25
+ dfn,
26
+ em,
27
+ img,
28
+ ins,
29
+ kbd,
30
+ q,
31
+ s,
32
+ samp,
33
+ small,
34
+ strike,
35
+ strong,
36
+ sub,
37
+ sup,
38
+ tt,
39
+ var,
40
+ b,
41
+ u,
42
+ i,
43
+ center,
44
+ dl,
45
+ dt,
46
+ dd,
47
+ ol,
48
+ ul,
49
+ li,
50
+ fieldset,
51
+ form,
52
+ label,
53
+ legend,
54
+ table,
55
+ caption,
56
+ tbody,
57
+ tfoot,
58
+ thead,
59
+ tr,
60
+ th,
61
+ td,
62
+ article,
63
+ aside,
64
+ canvas,
65
+ details,
66
+ embed,
67
+ figure,
68
+ figcaption,
69
+ footer,
70
+ header,
71
+ hgroup,
72
+ menu,
73
+ nav,
74
+ output,
75
+ ruby,
76
+ section,
77
+ summary,
78
+ time,
79
+ mark,
80
+ audio,
81
+ video {
82
+ margin: 0;
83
+ padding: 0;
84
+ border: 0;
85
+ font-size: 100%;
86
+ font: inherit;
87
+ vertical-align: baseline;
88
+ }
89
+ /* HTML5 display-role reset for older browsers */
90
+ article,
91
+ aside,
92
+ details,
93
+ figcaption,
94
+ figure,
95
+ footer,
96
+ header,
97
+ hgroup,
98
+ menu,
99
+ nav,
100
+ section {
101
+ display: block;
102
+ }
103
+ body {
104
+ line-height: 1;
105
+ }
106
+ ol,
107
+ ul {
108
+ list-style: none;
109
+ }
110
+ blockquote,
111
+ q {
112
+ quotes: none;
113
+ }
114
+ blockquote:before,
115
+ blockquote:after,
116
+ q:before,
117
+ q:after {
118
+ content: '';
119
+ content: none;
120
+ }
121
+ table {
122
+ border-collapse: collapse;
123
+ border-spacing: 0;
124
+ }
125
+ button {
126
+ border: none;
127
+ background-color: unset;
128
+ margin: 0;
129
+ font-family: var(--global-font);
130
+ }
131
+
132
+ hr {
133
+ border: none;
134
+ border-bottom: 1px solid var(--color-border);
135
+ }