@oruga-ui/theme-oruga 0.7.1 → 0.8.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 (48) hide show
  1. package/LICENSE +1 -1
  2. package/README.md +5 -5
  3. package/dist/scss/components/_autocomplete.scss +3 -12
  4. package/dist/scss/components/_breadcrumb.scss +122 -103
  5. package/dist/scss/components/_button.scss +228 -173
  6. package/dist/scss/components/_carousel.scss +164 -142
  7. package/dist/scss/components/_checkbox.scss +118 -118
  8. package/dist/scss/components/_collapse.scss +1 -1
  9. package/dist/scss/components/_datepicker.scss +228 -290
  10. package/dist/scss/components/_datetimepicker.scss +8 -2
  11. package/dist/scss/components/_dialog.scss +243 -0
  12. package/dist/scss/components/_dropdown.scss +190 -164
  13. package/dist/scss/components/_field.scss +68 -39
  14. package/dist/scss/components/_icon.scss +24 -29
  15. package/dist/scss/components/_input.scss +112 -97
  16. package/dist/scss/components/_listbox.scss +176 -0
  17. package/dist/scss/components/_loading.scss +35 -15
  18. package/dist/scss/components/_menu.scss +113 -109
  19. package/dist/scss/components/_modal.scss +112 -50
  20. package/dist/scss/components/_notification.scss +113 -97
  21. package/dist/scss/components/_pagination.scss +173 -106
  22. package/dist/scss/components/_radio.scss +91 -84
  23. package/dist/scss/components/_select.scss +108 -115
  24. package/dist/scss/components/_sidebar.scss +102 -101
  25. package/dist/scss/components/_skeleton.scss +50 -39
  26. package/dist/scss/components/_slider.scss +221 -159
  27. package/dist/scss/components/_steps.scss +223 -261
  28. package/dist/scss/components/_switch.scss +126 -90
  29. package/dist/scss/components/_table.scss +307 -251
  30. package/dist/scss/components/_tabs.scss +360 -247
  31. package/dist/scss/components/_tag.scss +95 -39
  32. package/dist/scss/components/_taginput.scss +48 -36
  33. package/dist/scss/components/_timepicker.scss +61 -62
  34. package/dist/scss/components/_tooltip.scss +129 -254
  35. package/dist/scss/components/_upload.scss +83 -35
  36. package/dist/scss/theme-build.scss +9 -0
  37. package/dist/scss/theme.scss +44 -0
  38. package/dist/scss/utils/_animations.scss +30 -9
  39. package/dist/scss/utils/_base.scss +6 -4
  40. package/dist/scss/utils/_helpers.scss +84 -22
  41. package/dist/scss/utils/_root.scss +82 -29
  42. package/dist/scss/utils/_variables.scss +64 -42
  43. package/dist/theme.css +2 -0
  44. package/dist/theme.js +1 -1
  45. package/package.json +27 -20
  46. package/dist/oruga.css +0 -2
  47. package/dist/scss/oruga-build.scss +0 -9
  48. package/dist/scss/oruga.scss +0 -42
package/LICENSE CHANGED
@@ -1,6 +1,6 @@
1
1
  MIT License
2
2
 
3
- Copyright (c) 2023 Oruga
3
+ Copyright (c) 2025 Oruga
4
4
 
5
5
  Permission is hereby granted, free of charge, to any person obtaining a copy
6
6
  of this software and associated documentation files (the "Software"), to deal
package/README.md CHANGED
@@ -46,12 +46,12 @@ import App from "./App.vue";
46
46
  import Oruga from "@oruga-ui/oruga-next";
47
47
 
48
48
  // import Oruga theme styling
49
- import "@oruga-ui/theme-oruga/dist/oruga.css";
49
+ import "@oruga-ui/theme-oruga/style.css";
50
50
 
51
51
  createApp(App).use(Oruga).mount("#app");
52
52
  ```
53
53
 
54
- The Oruga Default theme uses the default classes set by Oruga and doesn't come with any JS configuration at all. The `oruga.css` contains the full Oruga style (the default style used for documentation).
54
+ The Oruga Default theme uses the default classes set by Oruga and doesn't come with any JS configuration at all. The `style.css` contains the full Oruga style (the default style used for the documentation page).
55
55
 
56
56
  ### Customization (SASS/SCSS)
57
57
 
@@ -62,7 +62,7 @@ In order to customize any SASS variables, you have to set them before the SCSS I
62
62
  // ...
63
63
 
64
64
  // Include the full Oruga theme here
65
- @import "/node_modules/@oruga-ui/theme-oruga/dist/scss/oruga";
65
+ @use "/node_modules/@oruga-ui/theme-oruga/scss/theme";
66
66
 
67
67
  // Then add additional custom code here
68
68
  // ...
@@ -77,7 +77,7 @@ import { createApp } from "vue";
77
77
 
78
78
  import Oruga from "@oruga-ui/oruga-next";
79
79
 
80
- import "@oruga-ui/theme-oruga/dist/oruga.css";
80
+ import "@oruga-ui/theme-oruga/style.css";
81
81
 
82
82
  const customConfig = {
83
83
  checkbox: {
@@ -97,7 +97,7 @@ Thank you to everyone involved for improving this project, day by day 💚
97
97
  <img src="https://contrib.rocks/image?repo=oruga-ui/theme-oruga" />
98
98
  </a>
99
99
 
100
- [Complete list](CONTRIBUTORS.md).
100
+ [Complete list](.github/CONTRIBUTORS.md).
101
101
 
102
102
  ## License
103
103
 
@@ -1,6 +1,4 @@
1
- /* @docs */
2
- $autocomplete-item-hover-background-color: $control-brackground-color !default;
3
- /* @docs */
1
+ @use "../utils/helpers" as h;
4
2
 
5
3
  .o-autocomplete {
6
4
  &__item {
@@ -8,16 +6,9 @@ $autocomplete-item-hover-background-color: $control-brackground-color !default;
8
6
  overflow: hidden;
9
7
  text-overflow: ellipsis;
10
8
 
11
- &-group-title,
9
+ &-group,
12
10
  &--empty {
13
- @extend .o-dropdown--disabled;
14
- }
15
-
16
- &--focused {
17
- background-color: var(
18
- --#{$prefix}autocomplete-item-hover-background-color,
19
- $autocomplete-item-hover-background-color
20
- );
11
+ @include h.disabled(h.useVar("control-disabled-opacity"));
21
12
  }
22
13
  }
23
14
  }
@@ -1,59 +1,109 @@
1
1
  @use "sass:list";
2
2
 
3
+ @use "../utils/helpers" as h;
4
+ @use "../utils/variables" as vars;
5
+
3
6
  /* @docs */
4
- $breadcrumb-list-line-height: 1.25em !default;
5
- $breadcrumb-item-spacer: 0.25em !default;
6
- $breadcrumb-item-font-size: $base-font-size !default;
7
+ $breadcrumb-line-height: 1.25em !default;
8
+ $breadcrumb-seperator-color: inherit;
9
+ $breadcrumb-disabled-opacity: h.useVar("control-disabled-opacity") !default;
10
+
11
+ $breadcrumb-item-spacer: calc(0.5 * h.useVar("control-spacer")) !default;
7
12
  $breadcrumb-item-padding: 0.3em !default;
8
- $breadcrumb-list-border-radius: var(--#{$prefix}base-border-radius) !default;
9
- $breadcrumb-item-color: var(--#{$prefix}grey-dark) !default;
13
+
14
+ $breadcrumb-item-color: h.useVar("font-color") !default;
15
+ $breadcrumb-item-font-size: h.useVar("font-size") !default;
16
+ $breadcrumb-item-font-weight: h.useVar("font-weight") !default;
17
+ $breadcrumb-item-line-height: h.useVar("line-height") !default;
18
+
19
+ $breadcrumb-item-border-radius: h.useVar("border-radius") !default;
10
20
  $breadcrumb-item-background-color: transparent !default;
11
- $breadcrumb-item-active-color: var(--#{$prefix}primary) !default;
21
+
22
+ $breadcrumb-item-active-color: h.useVar("primary") !default;
12
23
  $breadcrumb-item-active-background-color: transparent !default;
13
- $breadcrumb-item-disabled-color: var(--#{$prefix}grey-light) !default;
14
- $breadcrumb-item-hover-color: var(--#{$prefix}white) !default;
15
- $breadcrumb-item-hover-background-color: var(--#{$prefix}secondary) !default;
16
- $breadcrumb-seperator-color: inherit;
24
+
25
+ $breadcrumb-item-hover-color: h.useVar("white") !default;
26
+ $breadcrumb-item-hover-background-color: h.useVar("secondary") !default;
17
27
  /* @docs */
18
28
 
19
29
  .o-breadcrumb {
30
+ @include h.defineVar("breadcrumb-line-height", $breadcrumb-line-height);
31
+ @include h.defineVar(
32
+ "breadcrumb-disabled-opacity",
33
+ $breadcrumb-disabled-opacity
34
+ );
35
+ @include h.defineVar(
36
+ "breadcrumb-seperator-color",
37
+ $breadcrumb-seperator-color
38
+ );
39
+ @include h.defineVar("breadcrumb-item-spacer", $breadcrumb-item-spacer);
40
+ @include h.defineVar("breadcrumb-item-padding", $breadcrumb-item-padding);
41
+ @include h.defineVar(
42
+ "breadcrumb-item-font-size",
43
+ $breadcrumb-item-font-size
44
+ );
45
+ @include h.defineVar(
46
+ "breadcrumb-item-font-weight",
47
+ $breadcrumb-item-font-weight
48
+ );
49
+ @include h.defineVar(
50
+ "breadcrumb-item-line-height",
51
+ $breadcrumb-item-line-height
52
+ );
53
+ @include h.defineVar("breadcrumb-item-color", $breadcrumb-item-color);
54
+ @include h.defineVar(
55
+ "breadcrumb-item-border-radius",
56
+ $breadcrumb-item-border-radius
57
+ );
58
+ @include h.defineVar(
59
+ "breadcrumb-item-background-color",
60
+ $breadcrumb-item-background-color
61
+ );
62
+ @include h.defineVar(
63
+ "breadcrumb-item-active-color",
64
+ $breadcrumb-item-active-color
65
+ );
66
+ @include h.defineVar(
67
+ "breadcrumb-item-active-background-color",
68
+ $breadcrumb-item-active-background-color
69
+ );
70
+ @include h.defineVar(
71
+ "breadcrumb-item-hover-color",
72
+ $breadcrumb-item-hover-color
73
+ );
74
+ @include h.defineVar(
75
+ "breadcrumb-item-hover-background-color",
76
+ $breadcrumb-item-hover-background-color
77
+ );
78
+
20
79
  &__list {
21
80
  list-style: none;
22
81
  display: flex;
23
82
  padding: unset;
24
- line-height: var(
25
- --#{$prefix}breadcrumb-list-line-height,
26
- $breadcrumb-list-line-height
27
- );
83
+ line-height: h.useVar("breadcrumb-line-height");
28
84
  }
29
85
 
30
86
  &__item {
31
- -moz-appearance: none;
32
- -webkit-appearance: none;
87
+ // define focus shadow effect
88
+ @include h.focusable(".o-breadcrumb__item__link");
89
+
90
+ // remove default appearance
91
+ @include h.removeAppearance;
92
+
33
93
  display: block;
34
94
  list-style: none;
35
95
  border: transparent;
36
- background-color: var(
37
- --#{$prefix}breadcrumb-item-background-color,
38
- $breadcrumb-item-background-color
39
- );
40
- color: var(--#{$prefix}breadcrumb-item-color, $breadcrumb-item-color);
41
- font-size: var(
42
- --#{$prefix}breadcrumb-item-size,
43
- $breadcrumb-item-font-size
44
- );
45
- border-radius: var(
46
- --#{$prefix}breadcrumb-list-border-radius,
47
- $breadcrumb-list-border-radius
48
- );
96
+ color: h.useVar("breadcrumb-item-color");
97
+ font-size: h.useVar("breadcrumb-item-font-size");
98
+ font-weight: h.useVar("breadcrumb-item-font-weight");
99
+ line-height: h.useVar("breadcrumb-item-line-height");
100
+ border-radius: h.useVar("breadcrumb-item-border-radius");
101
+ background-color: h.useVar("breadcrumb-item-background-color");
49
102
 
50
103
  // define seprator
51
104
  &:not(:first-child)::before {
52
105
  float: left;
53
- color: var(
54
- --#{$prefix}breadcrumb-seperator-color,
55
- $breadcrumb-seperator-color
56
- );
106
+ color: h.useVar("breadcrumb-seperator-color");
57
107
  content: var(--seperator, "/");
58
108
  }
59
109
 
@@ -62,100 +112,79 @@ $breadcrumb-seperator-color: inherit;
62
112
  content: unset;
63
113
  }
64
114
 
115
+ .o-breadcrumb__item__link {
116
+ color: h.useVar("breadcrumb-item-color");
117
+ border-radius: h.useVar("breadcrumb-item-border-radius");
118
+ }
119
+
65
120
  &:focus-within:not(&--disabled),
66
121
  &:focus:not(&--disabled),
67
122
  &:hover:not(&--disabled) {
68
123
  .o-breadcrumb__item__link {
69
- color: var(
70
- --#{$prefix}breadcrumb-item-hover-color,
71
- $breadcrumb-item-hover-color
72
- );
73
- background-color: var(
74
- --#{$prefix}breadcrumb-item-hover-background-color,
75
- $breadcrumb-item-hover-background-color
76
- );
77
- border-radius: var(
78
- --#{$prefix}breadcrumb-list-border-radius,
79
- $breadcrumb-list-border-radius
124
+ color: h.useVar("breadcrumb-item-hover-color");
125
+ background-color: h.useVar(
126
+ "breadcrumb-item-hover-background-color"
80
127
  );
81
128
  }
82
129
  }
83
130
 
84
131
  &--active .o-breadcrumb__item__link {
85
- color: var(
86
- --#{$prefix}breadcrumb-item-active-color,
87
- $breadcrumb-item-active-color
88
- );
89
- background-color: var(
90
- --#{$prefix}breadcrumb-item-active-background-color,
91
- $breadcrumb-item-active-background-color
132
+ color: h.useVar("breadcrumb-item-active-color");
133
+ background-color: h.useVar(
134
+ "breadcrumb-item-active-background-color"
92
135
  );
93
136
  }
94
137
 
95
138
  &--disabled .o-breadcrumb__item__link {
96
- cursor: unset;
97
- pointer-events: none;
98
- color: var(
99
- --#{$prefix}breadcrumb-item-disabled-color,
100
- $breadcrumb-item-disabled-color
101
- );
139
+ @include h.disabled(h.useVar("breadcrumb-disabled-opacity"));
102
140
  }
103
141
 
104
142
  &__icon {
105
143
  &--left {
106
- padding-right: var(
107
- --#{$prefix}breadcrumb-item-spacer,
108
- $breadcrumb-item-spacer
109
- );
144
+ padding-right: h.useVar("breadcrumb-item-spacer");
110
145
  }
111
146
 
112
147
  &--right {
113
- padding-left: var(
114
- --#{$prefix}breadcrumb-item-spacer,
115
- $breadcrumb-item-spacer
116
- );
148
+ padding-left: h.useVar("breadcrumb-item-spacer");
117
149
  }
118
150
  }
119
151
 
120
152
  &__link {
121
- margin: var(
122
- --#{$prefix}breadcrumb-item-spacer,
123
- $breadcrumb-item-spacer
124
- );
125
- padding: var(
126
- --#{$prefix}breadcrumb-item-padding,
127
- $breadcrumb-item-padding
128
- );
153
+ margin: h.useVar("breadcrumb-item-spacer");
154
+ padding: h.useVar("breadcrumb-item-padding");
129
155
  }
130
156
  }
131
157
 
132
- /* size variants*/
133
- @each $name, $value in $sizes {
134
- &--#{$name} .o-breadcrumb__item {
135
- font-size: var(--#{$prefix}button-font-size-#{$name}, $value);
158
+ // size variants
159
+ @each $name, $value in vars.$sizes {
160
+ &--#{$name} {
161
+ @include h.defineVar(
162
+ "breadcrumb-item-font-size",
163
+ h.useVar("size-#{$name}")
164
+ );
136
165
  }
137
166
  }
138
167
 
139
- /* color variants*/
140
- @each $name, $pair in $colors {
141
- $color: list.nth($pair, 1);
142
-
168
+ // color variants
169
+ @each $name, $pair in vars.$colors {
143
170
  &--#{$name} {
144
- --#{$prefix}focus: #{createFocus($color)};
145
-
146
- .o-breadcrumb__item .o-breadcrumb__item__link {
147
- color: var(--#{$prefix}variant-#{$name}, $color);
148
-
149
- &:hover {
150
- /* background-color: darken($color, 2.5%)*/
151
- /* IE 11 needs polyfill*/
152
- filter: brightness(97.5%);
153
- }
154
- }
171
+ @include h.defineVar(
172
+ "breadcrumb-item-background-color",
173
+ transparent
174
+ );
175
+ @include h.defineVar("breadcrumb-item-color", h.useVar($name));
176
+ @include h.defineVar(
177
+ "breadcrumb-item-hover-color",
178
+ h.useVar("#{$name}-invert")
179
+ );
180
+ @include h.defineVar(
181
+ "breadcrumb-item-hover-background-color",
182
+ h.useVar($name)
183
+ );
155
184
  }
156
185
  }
157
186
 
158
- /** alignment **/
187
+ // alignments
159
188
  &--left {
160
189
  ol,
161
190
  ul {
@@ -176,14 +205,4 @@ $breadcrumb-seperator-color: inherit;
176
205
  justify-content: flex-end;
177
206
  }
178
207
  }
179
-
180
- // focus effect
181
- &:focus,
182
- &:focus-visible,
183
- &:focus-within {
184
- .o-breadcrumb__item {
185
- box-shadow: 0 0 0 0.25rem var(--#{$prefix}focus);
186
- outline: none;
187
- }
188
- }
189
208
  }