@oruga-ui/theme-oruga 0.8.0 → 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.
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/theme.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 `theme.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
- @use "/node_modules/@oruga-ui/theme-oruga/dist/scss/theme";
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/theme.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
 
@@ -70,7 +70,7 @@ $button-outlined-border-color: h.useVar("grey-light") !default;
70
70
  );
71
71
 
72
72
  // define focus shadow effect
73
- @include h.focusable();
73
+ @include h.focusable;
74
74
 
75
75
  // add clickable cursor
76
76
  @include h.clickable;
@@ -0,0 +1,243 @@
1
+ @use "sass:map";
2
+ @use "../utils/helpers" as h;
3
+ @use "../utils/variables" as vars;
4
+
5
+ /* @docs */
6
+ $dialog-spacer: calc(2 * h.useVar("control-spacer")) !default;
7
+ $dialog-zindex: map.get(vars.$zindex, "fixed") !default;
8
+ $dialog-box-shadow: h.useVar("overlay-box-shadow") !default;
9
+ $dialog-background-color: h.useVar("control-brackground-color") !default;
10
+ $dialog-border-width: h.useVar("control-border-width") !default;
11
+ $dialog-border-style: solid !default;
12
+ $dialog-border-color: h.useVar("control-border-color") !default;
13
+ $dialog-border-radius: h.useVar("border-radius") !default;
14
+
15
+ $dialog-backdrop-background-color: h.useVar(
16
+ "overlay-background-color"
17
+ ) !default;
18
+
19
+ $dialog-header-padding: $dialog-spacer !default;
20
+ $dialog-header-background-color: inherit !default;
21
+
22
+ $dialog-body-padding: $dialog-spacer !default;
23
+ $dialog-body-background-color: inherit !default;
24
+
25
+ $dialog-footer-padding: $dialog-spacer !default;
26
+ $dialog-footer-background-color: inherit !default;
27
+
28
+ $dialog-title-color: h.useVar("font-color") !default;
29
+ $dialog-title-font-size: 2em !default;
30
+ $dialog-title-font-weight: bold !default;
31
+
32
+ $dialog-subtitle-color: h.useVar("font-color") !default;
33
+ $dialog-subtitle-font-size: 1.5em !default;
34
+ $dialog-subtitle-font-weight: normal !default;
35
+
36
+ $dialog-content-color: h.useVar("font-color") !default;
37
+ $dialog-content-font-size: h.useVar("font-size") !default;
38
+ $dialog-content-font-weight: h.useVar("font-weight") !default;
39
+
40
+ $dialog-close-top: $dialog-spacer !default;
41
+ $dialog-close-right: $dialog-spacer !default;
42
+ $dialog-close-color: h.useVar("black") !default;
43
+ $dialog-close-size: 2rem !default;
44
+ $dialog-close-border-radius: h.useVar("border-radius-rounded") !default;
45
+ $dialog-close-background-color: inherit !default;
46
+ /* @docs */
47
+
48
+ .o-dialog {
49
+ @include h.defineVar("dialog-zindex", $dialog-zindex);
50
+ @include h.defineVar(
51
+ "dialog-backdrop-background-color",
52
+ $dialog-backdrop-background-color
53
+ );
54
+
55
+ @include h.defineVar("dialog-box-shadow", $dialog-box-shadow);
56
+ @include h.defineVar("dialog-background-color", $dialog-background-color);
57
+ @include h.defineVar("dialog-border-width", $dialog-border-width);
58
+ @include h.defineVar("dialog-border-style", $dialog-border-style);
59
+ @include h.defineVar("dialog-border-color", $dialog-border-color);
60
+ @include h.defineVar("dialog-border-radius", $dialog-border-radius);
61
+
62
+ @include h.defineVar("dialog-header-padding", $dialog-header-padding);
63
+ @include h.defineVar(
64
+ "dialog-header-background-color",
65
+ $dialog-header-background-color
66
+ );
67
+
68
+ @include h.defineVar("dialog-body-padding", $dialog-body-padding);
69
+ @include h.defineVar(
70
+ "dialog-body-background-color",
71
+ $dialog-body-background-color
72
+ );
73
+
74
+ @include h.defineVar("dialog-footer-padding", $dialog-footer-padding);
75
+ @include h.defineVar(
76
+ "dialog-footer-background-color",
77
+ $dialog-footer-background-color
78
+ );
79
+
80
+ @include h.defineVar("dialog-title-color", $dialog-title-color);
81
+ @include h.defineVar("dialog-title-font-size", $dialog-title-font-size);
82
+ @include h.defineVar("dialog-title-font-weight", $dialog-title-font-weight);
83
+
84
+ @include h.defineVar("dialog-subtitle-color", $dialog-subtitle-color);
85
+ @include h.defineVar(
86
+ "dialog-subtitle-font-size",
87
+ $dialog-subtitle-font-size
88
+ );
89
+ @include h.defineVar(
90
+ "dialog-subtitle-font-weight",
91
+ $dialog-subtitle-font-weight
92
+ );
93
+
94
+ @include h.defineVar("dialog-content-color", $dialog-content-color);
95
+ @include h.defineVar("dialog-content-font-size", $dialog-content-font-size);
96
+ @include h.defineVar(
97
+ "dialog-content-font-weight",
98
+ $dialog-content-font-weight
99
+ );
100
+
101
+ @include h.defineVar("dialog-close-top", $dialog-close-top);
102
+ @include h.defineVar("dialog-close-right", $dialog-close-right);
103
+ @include h.defineVar("dialog-close-color", $dialog-close-color);
104
+ @include h.defineVar("dialog-close-size", $dialog-close-size);
105
+ @include h.defineVar(
106
+ "dialog-close-border-radius",
107
+ $dialog-close-border-radius
108
+ );
109
+ @include h.defineVar(
110
+ "dialog-close-background-color",
111
+ $dialog-close-background-color
112
+ );
113
+
114
+ position: fixed;
115
+ top: 0;
116
+ left: 0;
117
+ padding: 0;
118
+
119
+ // mode non dialog dialogs adjustements
120
+ &:not(dialog:modal) {
121
+ margin-top: 10vh;
122
+ }
123
+
124
+ box-shadow: h.useVar("dialog-box-shadow");
125
+ background-color: h.useVar("dialog-background-color");
126
+
127
+ border-color: h.useVar("dialog-border-color");
128
+ border-style: h.useVar("dialog-border-style");
129
+ border-width: h.useVar("dialog-border-width");
130
+ border-radius: h.useVar("dialog-border-radius");
131
+
132
+ z-index: h.useVar("dialog-zindex");
133
+
134
+ &::backdrop {
135
+ background-color: h.useVar("dialog-backdrop-background-color");
136
+ }
137
+
138
+ &--fullscreen {
139
+ width: 100%;
140
+ height: 100%;
141
+ }
142
+
143
+ &__wrapper {
144
+ position: relative;
145
+
146
+ &--left {
147
+ text-align: start;
148
+ }
149
+
150
+ &--center {
151
+ text-align: center;
152
+ }
153
+
154
+ &--right {
155
+ text-align: flex-end;
156
+ }
157
+ }
158
+
159
+ &__header {
160
+ padding: h.useVar("dialog-header-padding");
161
+ background-color: h.useVar("dialog-header-background-color");
162
+ border-bottom-color: h.useVar("dialog-border-color");
163
+ border-bottom-style: h.useVar("dialog-border-style");
164
+ border-bottom-width: h.useVar("dialog-border-width");
165
+
166
+ &-title {
167
+ margin: 0;
168
+
169
+ color: h.useVar("dialog-title-color");
170
+ font-size: h.useVar("dialog-title-font-size");
171
+ font-weight: h.useVar("dialog-title-font-weight");
172
+ }
173
+
174
+ &-subtitle {
175
+ margin: 0;
176
+ color: h.useVar("dialog-subtitle-color");
177
+ font-size: h.useVar("dialog-subtitle-font-size");
178
+ font-weight: h.useVar("dialog-subtitle-font-weight");
179
+ }
180
+ }
181
+
182
+ &__close {
183
+ // define focus shadow effect
184
+ @include h.focusable;
185
+
186
+ // add clickable cursor
187
+ @include h.clickable;
188
+
189
+ // remove default appearance
190
+ @include h.removeAppearance;
191
+
192
+ position: absolute;
193
+ top: h.useVar("dialog-close-top");
194
+ right: h.useVar("dialog-close-right");
195
+
196
+ display: inline-flex;
197
+ align-items: center;
198
+ justify-content: center;
199
+
200
+ height: h.useVar("dialog-close-size");
201
+ width: h.useVar("dialog-close-size");
202
+
203
+ color: h.useVar("dialog-close-color");
204
+
205
+ border: none;
206
+ border-radius: h.useVar("dialog-close-border-radius");
207
+ background-color: h.useVar("dialog-close-background-color");
208
+ }
209
+
210
+ &__body {
211
+ padding: h.useVar("dialog-body-padding");
212
+ background-color: h.useVar("dialog-body-background-color");
213
+
214
+ &-content {
215
+ color: h.useVar("dialog-content-color");
216
+ font-size: h.useVar("dialog-content-font-size");
217
+ font-weight: h.useVar("dialog-content-font-weight");
218
+ }
219
+ }
220
+
221
+ &__footer {
222
+ padding: h.useVar("dialog-footer-padding");
223
+ background-color: h.useVar("dialog-footer-background-color");
224
+ border-top-color: h.useVar("dialog-border-color");
225
+ border-top-style: h.useVar("dialog-border-style");
226
+ border-top-width: h.useVar("dialog-border-width");
227
+
228
+ display: flex;
229
+ gap: 0.5rem;
230
+
231
+ &--left {
232
+ justify-content: flex-start;
233
+ }
234
+
235
+ &--center {
236
+ justify-content: center;
237
+ }
238
+
239
+ &--right {
240
+ justify-content: flex-end;
241
+ }
242
+ }
243
+ }
@@ -38,7 +38,6 @@ $dropdown-overlay-background-color: h.useVar(
38
38
  "overlay-background-color"
39
39
  ) !default;
40
40
  $dropdown-overlay-zindex: map.get(vars.$zindex, "overlay") !default;
41
-
42
41
  /* @docs */
43
42
 
44
43
  .o-dropdown {
@@ -0,0 +1,176 @@
1
+ @use "../utils/helpers" as h;
2
+ @use "../utils/variables" as vars;
3
+
4
+ /* @docs */
5
+ $listbox-disabled-opacity: h.useVar("control-disabled-opacity") !default;
6
+ $listbox-box-shadow:
7
+ 0 0.5em 1em -0.125em rgba(10, 10, 10, 0.1),
8
+ 0 0 0 1px rgba(10, 10, 10, 0.02) !default;
9
+ $listbox-background-color: h.useVar("control-brackground-color") !default;
10
+ $listbox-border-color: h.useVar("control-border-color") !default;
11
+ $listbox-border-style: solid !default;
12
+ $listbox-border-width: h.useVar("control-border-width") !default;
13
+ $listbox-border-radius: h.useVar("border-radius") !default;
14
+
15
+ $listbox-item-padding: h.useVar("control-spacer")
16
+ calc(h.useVar("control-spacer") * 2) !default;
17
+ $listbox-item-color: h.useVar("font-color") !default;
18
+ $listbox-item-font-size: h.useVar("font-size") !default;
19
+ $listbox-item-font-weight: h.useVar("font-weight") !default;
20
+ $listbox-item-line-height: h.useVar("line-height") !default;
21
+
22
+ $listbox-item-background-color: transparent !default;
23
+ $listbox-item-active-color: h.useVar("primary-invert") !default;
24
+ $listbox-item-active-background-color: h.useVar("primary") !default;
25
+ $listbox-item-hover-background-color: h.useVar("grey-lighter") !default;
26
+ $listbox-item-hover-color: h.useVar("font-color") !default;
27
+ /* @docs */
28
+
29
+ .o-listbox {
30
+ @include h.defineVar("listbox-disabled-opacity", $listbox-disabled-opacity);
31
+ @include h.defineVar("listbox-box-shadow", $listbox-box-shadow);
32
+
33
+ @include h.defineVar("listbox-background-color", $listbox-background-color);
34
+ @include h.defineVar("listbox-border-style", $listbox-border-style);
35
+ @include h.defineVar("listbox-border-color", $listbox-border-color);
36
+ @include h.defineVar("listbox-border-width", $listbox-border-width);
37
+ @include h.defineVar("listbox-border-radius", $listbox-border-radius);
38
+
39
+ @include h.defineVar("listbox-item-color", $listbox-item-color);
40
+ @include h.defineVar("listbox-item-font-size", $listbox-item-font-size);
41
+ @include h.defineVar("listbox-item-font-weight", $listbox-item-font-weight);
42
+ @include h.defineVar("listbox-item-line-height", $listbox-item-line-height);
43
+ @include h.defineVar("listbox-item-padding", $listbox-item-padding);
44
+ @include h.defineVar(
45
+ "listbox-item-background-color",
46
+ $listbox-item-background-color
47
+ );
48
+ @include h.defineVar(
49
+ "listbox-item-active-color",
50
+ $listbox-item-active-color
51
+ );
52
+ @include h.defineVar(
53
+ "listbox-item-active-background-color",
54
+ $listbox-item-active-background-color
55
+ );
56
+ @include h.defineVar("listbox-item-hover-color", $listbox-item-hover-color);
57
+ @include h.defineVar(
58
+ "listbox-item-hover-background-color",
59
+ $listbox-item-hover-background-color
60
+ );
61
+
62
+ // define focus shadow effect
63
+ @include h.focusable();
64
+
65
+ display: block;
66
+ position: relative;
67
+ overflow: hidden;
68
+
69
+ box-shadow: h.useVar("listbox-box-shadow");
70
+ background-color: h.useVar("listbox-background-color");
71
+ border-color: h.useVar("listbox-border-color");
72
+ border-style: h.useVar("listbox-border-style");
73
+ border-width: h.useVar("listbox-border-width");
74
+ border-radius: h.useVar("listbox-border-radius");
75
+
76
+ &--disabled {
77
+ @include h.disabled(h.useVar("listbox-disabled-opacity"));
78
+ }
79
+
80
+ &__header,
81
+ &__filter {
82
+ padding: h.useVar("listbox-item-padding");
83
+
84
+ border-bottom-color: h.useVar("listbox-border-color");
85
+ border-bottom-style: h.useVar("listbox-border-style");
86
+ border-bottom-width: h.useVar("listbox-border-width");
87
+ }
88
+
89
+ &__footer,
90
+ &__empty {
91
+ padding: h.useVar("listbox-item-padding");
92
+ }
93
+
94
+ &__list {
95
+ outline: none;
96
+ list-style: none;
97
+ padding: 0;
98
+ margin: 0;
99
+
100
+ &:only-child {
101
+ border-radius: h.useVar("listbox-border-radius");
102
+ }
103
+
104
+ &:first-child {
105
+ border-top-left-radius: h.useVar("listbox-border-radius");
106
+ border-top-right-radius: h.useVar("listbox-border-radius");
107
+ }
108
+
109
+ &:last-child {
110
+ border-bottom-left-radius: h.useVar("listbox-border-radius");
111
+ border-bottom-right-radius: h.useVar("listbox-border-radius");
112
+ }
113
+
114
+ &:not(:last-child) {
115
+ .o-listbox__item:last-child {
116
+ border-bottom-color: h.useVar("listbox-border-color");
117
+ border-bottom-style: h.useVar("listbox-border-style");
118
+ border-bottom-width: h.useVar("listbox-border-width");
119
+ }
120
+ }
121
+ }
122
+
123
+ &__item {
124
+ display: block;
125
+ position: relative;
126
+
127
+ padding: h.useVar("listbox-item-padding");
128
+
129
+ color: h.useVar("listbox-item-color");
130
+ font-size: h.useVar("listbox-item-font-size");
131
+ font-weight: h.useVar("listbox-item-font-weight");
132
+ line-height: h.useVar("listbox-item-line-height");
133
+
134
+ background-color: h.useVar("listbox-item-background-color");
135
+
136
+ &:not(:last-child) {
137
+ border-bottom-color: h.useVar("listbox-border-color");
138
+ border-bottom-style: h.useVar("listbox-border-style");
139
+ border-bottom-width: h.useVar("listbox-border-width");
140
+ }
141
+
142
+ &--selected,
143
+ &--active {
144
+ @include h.defineVar(
145
+ "listbox-item-color",
146
+ h.useVar("listbox-item-active-color")
147
+ );
148
+ @include h.defineVar(
149
+ "listbox-item-background-color",
150
+ h.useVar("listbox-item-active-background-color")
151
+ );
152
+ }
153
+
154
+ &--clickable {
155
+ @include h.clickable;
156
+ }
157
+
158
+ &--clickable:not(&--active) {
159
+ &:hover,
160
+ &.o-listbox__item--focused {
161
+ @include h.defineVar(
162
+ "listbox-item-color",
163
+ h.useVar("listbox-item-hover-color")
164
+ );
165
+ @include h.defineVar(
166
+ "listbox-item-background-color",
167
+ h.useVar("listbox-item-hover-background-color")
168
+ );
169
+ }
170
+ }
171
+
172
+ &--disabled {
173
+ @include h.disabled(h.useVar("listbox-disabled-opacity"));
174
+ }
175
+ }
176
+ }
@@ -144,7 +144,7 @@ $pagination-button-current-border-color: h.useVar("primary") !default;
144
144
  // TODO: normal o-button will be used here later
145
145
  &__button {
146
146
  // define focus shadow effect
147
- @include h.focusable();
147
+ @include h.focusable;
148
148
 
149
149
  // add clickable cursor
150
150
  @include h.clickable;
@@ -127,7 +127,7 @@ $tabs-content-padding: calc(2 * h.useVar("control-spacer")) !default;
127
127
  @include h.clickable;
128
128
 
129
129
  // define focus shadow effect
130
- @include h.focusable();
130
+ @include h.focusable;
131
131
 
132
132
  // remove default appearance
133
133
  @include h.removeAppearance;
@@ -17,10 +17,12 @@
17
17
  @forward "components/collapse";
18
18
  @forward "components/datepicker";
19
19
  @forward "components/datetimepicker";
20
+ @forward "components/dialog";
20
21
  @forward "components/dropdown";
21
22
  @forward "components/field";
22
23
  @forward "components/icon";
23
24
  @forward "components/input";
25
+ @forward "components/listbox";
24
26
  @forward "components/loading";
25
27
  @forward "components/menu";
26
28
  @forward "components/modal";