react-ui-suite 0.1.0 → 1.1.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.
@@ -0,0 +1,141 @@
1
+ .rui-input-field > :not([hidden]) ~ :not([hidden]) {
2
+ margin-top: 0.375rem;
3
+ margin-bottom: 0px;
4
+ }
5
+
6
+ .rui-input-field__shell {
7
+ display: flex;
8
+ align-items: center;
9
+ gap: 0.75rem;
10
+ border-radius: 1rem;
11
+ border-width: 1px;
12
+ border-style: solid;
13
+ border-color: rgb(203 213 225 / 1);
14
+ background-color: rgb(255 255 255 / 1);
15
+ padding: 0.5rem 0.75rem;
16
+ min-width: 0;
17
+ transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;
18
+ transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
19
+ transition-duration: 150ms;
20
+ }
21
+
22
+ .rui-input-field__shell--disabled {
23
+ opacity: 0.6;
24
+ }
25
+
26
+ .rui-input-field__shell:focus-within {
27
+ border-color: rgb(148 163 184 / 1);
28
+ box-shadow: 0 0 #0000, 0 0 #0000, 0 0 0 1px rgba(148, 163, 184, 0.45);
29
+ }
30
+
31
+ .rui-input-field__shell--error {
32
+ border-color: rgb(253 164 175 / 1);
33
+ }
34
+
35
+ .rui-input-field__shell--error:focus-within {
36
+ border-color: rgb(251 113 133 / 1);
37
+ box-shadow: 0 0 #0000, 0 0 #0000, 0 0 0 1px rgba(248, 113, 113, 0.35);
38
+ }
39
+
40
+ .rui-input-field__shell:is([data-theme="dark"] *) {
41
+ border-color: rgb(63 63 70 / 1);
42
+ background-color: rgb(24 24 27 / 0.7);
43
+ }
44
+
45
+ .rui-input-field__shell:focus-within:is([data-theme="dark"] *) {
46
+ border-color: rgb(100 116 139 / 1);
47
+ }
48
+
49
+ .rui-input-field__shell--error:is([data-theme="dark"] *) {
50
+ border-color: rgb(244 63 94 / 0.6);
51
+ }
52
+
53
+ [data-theme="dark"] .rui-input-field__shell {
54
+ background-color: rgb(24 24 27 / 0.7);
55
+ }
56
+
57
+ .rui-input-field__input {
58
+ flex: 1 1 0%;
59
+ min-width: 0;
60
+ border-style: none;
61
+ background-color: transparent;
62
+ font-size: 0.875rem;
63
+ line-height: 1.25rem;
64
+ color: rgb(15 23 42 / 1);
65
+ }
66
+
67
+ .rui-input-field__input::placeholder {
68
+ color: rgb(148 163 184 / 1);
69
+ }
70
+
71
+ .rui-input-field__input:focus {
72
+ outline: 2px solid transparent;
73
+ outline-offset: 2px;
74
+ }
75
+
76
+ .rui-input-field__input:disabled {
77
+ cursor: not-allowed;
78
+ }
79
+
80
+ .rui-input-field__input:is([data-theme="dark"] *) {
81
+ color: rgb(244 244 245 / 1);
82
+ }
83
+
84
+ .rui-input-field__input:is([data-theme="dark"] *)::placeholder {
85
+ color: rgb(113 113 122 / 1);
86
+ }
87
+
88
+ .rui-input-field__leading {
89
+ color: rgb(148 163 184 / 1);
90
+ }
91
+
92
+ .rui-input-field__leading:is([data-theme="dark"] *) {
93
+ color: rgb(113 113 122 / 1);
94
+ }
95
+
96
+ .rui-input-field__trailing {
97
+ font-size: 0.75rem;
98
+ line-height: 1rem;
99
+ font-weight: 600;
100
+ text-transform: uppercase;
101
+ letter-spacing: 0.025em;
102
+ color: rgb(148 163 184 / 1);
103
+ }
104
+
105
+ .rui-input-field__trailing:is([data-theme="dark"] *) {
106
+ color: rgb(113 113 122 / 1);
107
+ }
108
+
109
+ .rui-input-field__label {
110
+ font-size: 0.75rem;
111
+ line-height: 1rem;
112
+ font-weight: 600;
113
+ text-transform: uppercase;
114
+ letter-spacing: 0.2em;
115
+ color: rgb(100 116 139 / 1);
116
+ }
117
+
118
+ .rui-input-field__label:is([data-theme="dark"] *) {
119
+ color: rgb(161 161 170 / 1);
120
+ }
121
+
122
+ .rui-input-field__description {
123
+ font-size: 0.75rem;
124
+ line-height: 1rem;
125
+ color: rgb(100 116 139 / 1);
126
+ }
127
+
128
+ .rui-input-field__description:is([data-theme="dark"] *) {
129
+ color: rgb(161 161 170 / 1);
130
+ }
131
+
132
+ .rui-input-field__error {
133
+ font-size: 0.75rem;
134
+ line-height: 1rem;
135
+ font-weight: 500;
136
+ color: rgb(244 63 94 / 1);
137
+ }
138
+
139
+ .rui-input-field__error:is([data-theme="dark"] *) {
140
+ color: rgb(251 113 133 / 1);
141
+ }
@@ -0,0 +1,203 @@
1
+ .rui-number-input {
2
+ display: inline-flex;
3
+ flex-direction: column;
4
+ align-items: center;
5
+ max-width: 100%;
6
+ text-align: center;
7
+ }
8
+
9
+ .rui-number-input > :not([hidden]) ~ :not([hidden]) {
10
+ margin-top: 0.375rem;
11
+ margin-bottom: 0px;
12
+ }
13
+
14
+ .rui-number-input__label {
15
+ font-size: calc(0.75rem * var(--rui-number-input-scale, 1));
16
+ line-height: calc(1rem * var(--rui-number-input-scale, 1));
17
+ font-weight: 600;
18
+ text-transform: uppercase;
19
+ letter-spacing: 0.2em;
20
+ color: rgb(100 116 139 / 1);
21
+ }
22
+
23
+ .rui-number-input__label:is([data-theme="dark"] *) {
24
+ color: rgb(161 161 170 / 1);
25
+ }
26
+
27
+ .rui-number-input__shell {
28
+ display: flex;
29
+ align-items: center;
30
+ gap: calc(0.75rem * var(--rui-number-input-scale, 1));
31
+ border-radius: calc(1rem * var(--rui-number-input-scale, 1));
32
+ border-width: 1px;
33
+ border-color: rgb(203 213 225 / 1);
34
+ background-color: rgb(255 255 255 / 0.8);
35
+ padding: calc(0.5rem * var(--rui-number-input-scale, 1))
36
+ calc(0.75rem * var(--rui-number-input-scale, 1));
37
+ box-shadow: 0 0 #0000, 0 0 #0000, 0 1px 2px 0 rgb(0 0 0 / 0.05),
38
+ 0 0 0 1px rgb(203 213 225 / 0.95);
39
+ min-width: 0;
40
+ width: max-content;
41
+ max-width: 100%;
42
+ transition-property: color, background-color, border-color, text-decoration-color, fill, stroke,
43
+ opacity, box-shadow, transform, filter, backdrop-filter;
44
+ transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
45
+ transition-duration: 150ms;
46
+ }
47
+
48
+ .rui-number-input__shell--disabled {
49
+ opacity: 0.6;
50
+ }
51
+
52
+ .rui-number-input__shell:focus-within {
53
+ border-color: rgb(148 163 184 / 1);
54
+ box-shadow: 0 0 #0000, 0 0 #0000, 0 0 0 1px rgba(148, 163, 184, 0.45);
55
+ }
56
+
57
+ .rui-number-input__shell--error {
58
+ border-color: rgb(253 164 175 / 1);
59
+ }
60
+
61
+ .rui-number-input__shell--error:focus-within {
62
+ border-color: rgb(251 113 133 / 1);
63
+ box-shadow: 0 0 #0000, 0 0 #0000, 0 0 0 1px rgba(248, 113, 113, 0.35);
64
+ }
65
+
66
+ .rui-number-input__shell:is([data-theme="dark"] *) {
67
+ border-color: rgb(63 63 70 / 1);
68
+ background-color: rgb(24 24 27 / 0.7);
69
+ box-shadow: 0 0 #0000, 0 0 #0000, 0 1px 2px 0 rgb(0 0 0 / 0.05);
70
+ }
71
+
72
+ .rui-number-input__shell:focus-within:is([data-theme="dark"] *) {
73
+ border-color: rgb(100 116 139 / 1);
74
+ }
75
+
76
+ .rui-number-input__shell--error:is([data-theme="dark"] *) {
77
+ border-color: rgb(244 63 94 / 0.6);
78
+ }
79
+
80
+ .rui-number-input__shell:is([data-theme="dark"] *) {
81
+ box-shadow: 0 0 #0000, 0 0 #0000, 0 1px 2px 0 rgb(0 0 0 / 0.05);
82
+ }
83
+
84
+ .rui-number-input__stepper {
85
+ display: flex;
86
+ flex-direction: column;
87
+ gap: calc(0.25rem * var(--rui-number-input-scale, 1));
88
+ }
89
+
90
+ .rui-number-input__step-button.rui-button {
91
+ display: grid;
92
+ place-items: center;
93
+ padding: 0;
94
+ min-width: calc(1.75rem * var(--rui-number-input-scale, 1));
95
+ width: calc(1.75rem * var(--rui-number-input-scale, 1));
96
+ height: calc(1.75rem * var(--rui-number-input-scale, 1));
97
+ border-radius: calc(0.75rem * var(--rui-number-input-scale, 1));
98
+ border-width: 1px;
99
+ border-color: rgb(226 232 240 / 1);
100
+ background-color: rgb(255 255 255 / 1);
101
+ font-size: calc(0.75rem * var(--rui-number-input-scale, 1));
102
+ line-height: calc(1rem * var(--rui-number-input-scale, 1));
103
+ font-weight: 600;
104
+ color: rgb(51 65 85 / 1);
105
+ box-shadow: 0 0 #0000, 0 0 #0000, 0 1px 2px 0 rgb(0 0 0 / 0.05);
106
+ transition-property: color, background-color, border-color, text-decoration-color, fill, stroke,
107
+ opacity, box-shadow, transform, filter, backdrop-filter;
108
+ transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
109
+ transition-duration: 150ms;
110
+ }
111
+
112
+ .rui-number-input__step-button.rui-button:not(:disabled):hover {
113
+ transform: translate(0, -1px);
114
+ box-shadow: 0 0 #0000, 0 0 #0000, 0 4px 6px -1px rgb(0 0 0 / 0.1),
115
+ 0 2px 4px -2px rgb(0 0 0 / 0.1);
116
+ }
117
+
118
+ .rui-number-input__step-button.rui-button:disabled {
119
+ opacity: 0.5;
120
+ }
121
+
122
+ .rui-number-input__step-button.rui-button:is([data-theme="dark"] *) {
123
+ border-color: rgb(63 63 70 / 1);
124
+ background-color: rgb(24 24 27 / 1);
125
+ color: rgb(244 244 245 / 1);
126
+ }
127
+
128
+ .rui-number-input__input {
129
+ flex: 0 0 auto;
130
+ min-width: 0;
131
+ width: calc(var(--rui-number-input-value-ch, 1) * 1ch);
132
+ border-style: none;
133
+ background-color: transparent;
134
+ font-size: calc(1.5rem * var(--rui-number-input-scale, 1));
135
+ line-height: calc(2rem * var(--rui-number-input-scale, 1));
136
+ font-weight: 600;
137
+ font-variant-numeric: tabular-nums;
138
+ color: rgb(15 23 42 / 1);
139
+ appearance: textfield;
140
+ -webkit-appearance: textfield;
141
+ -moz-appearance: textfield;
142
+ }
143
+
144
+ .rui-number-input__input::placeholder {
145
+ color: rgb(148 163 184 / 1);
146
+ }
147
+
148
+ .rui-number-input__input:focus {
149
+ outline: 2px solid transparent;
150
+ outline-offset: 2px;
151
+ }
152
+
153
+ .rui-number-input__input:is([data-theme="dark"] *) {
154
+ color: rgb(244 244 245 / 1);
155
+ }
156
+
157
+ .rui-number-input__input:is([data-theme="dark"] *)::placeholder {
158
+ color: rgb(113 113 122 / 1);
159
+ }
160
+
161
+ .rui-number-input__input::-webkit-inner-spin-button,
162
+ .rui-number-input__input::-webkit-outer-spin-button {
163
+ -webkit-appearance: none;
164
+ appearance: none;
165
+ }
166
+
167
+ .rui-number-input__suffix {
168
+ font-size: calc(0.875rem * var(--rui-number-input-scale, 1));
169
+ line-height: calc(1.25rem * var(--rui-number-input-scale, 1));
170
+ font-weight: 600;
171
+ text-transform: uppercase;
172
+ letter-spacing: 0.025em;
173
+ color: rgb(100 116 139 / 1);
174
+ }
175
+
176
+ .rui-number-input__suffix:is([data-theme="dark"] *) {
177
+ color: rgb(212 212 216 / 1);
178
+ }
179
+
180
+ .rui-number-input__helper {
181
+ align-self: stretch;
182
+ width: 100%;
183
+ max-width: 100%;
184
+ font-size: calc(0.75rem * var(--rui-number-input-scale, 1));
185
+ line-height: calc(1rem * var(--rui-number-input-scale, 1));
186
+ }
187
+
188
+ .rui-number-input__helper--description {
189
+ color: rgb(100 116 139 / 1);
190
+ }
191
+
192
+ .rui-number-input__helper--description:is([data-theme="dark"] *) {
193
+ color: rgb(161 161 170 / 1);
194
+ }
195
+
196
+ .rui-number-input__helper--error {
197
+ font-weight: 500;
198
+ color: rgb(244 63 94 / 1);
199
+ }
200
+
201
+ .rui-number-input__helper--error:is([data-theme="dark"] *) {
202
+ color: rgb(251 113 133 / 1);
203
+ }
@@ -0,0 +1,37 @@
1
+ .rui-output-chip {
2
+ display: inline-flex;
3
+ align-items: center;
4
+ justify-content: center;
5
+ gap: 0.5rem;
6
+ border-radius: 9999px;
7
+ padding: 0.25rem 0.75rem;
8
+ text-align: center;
9
+ font-size: 0.75rem;
10
+ line-height: 1rem;
11
+ font-weight: 600;
12
+ text-transform: uppercase;
13
+ letter-spacing: 0.25em;
14
+ color: var(--rui-output-chip-text, rgb(255 255 255 / 1));
15
+ background-color: var(--rui-output-chip-bg, rgb(15 23 42 / 1));
16
+ box-shadow: 0 0 0 0px #fff, 0 0 0 calc(1px + 0px) rgb(59 130 246 / 0.5), 0 0 #0000;
17
+ }
18
+
19
+ .rui-output-chip[data-tone="success"] {
20
+ --rui-output-chip-bg: rgb(16 185 129 / 1);
21
+ }
22
+
23
+ .rui-output-chip[data-tone="warning"] {
24
+ --rui-output-chip-bg: rgb(245 158 11 / 1);
25
+ }
26
+
27
+ .rui-output-chip[data-tone="danger"] {
28
+ --rui-output-chip-bg: rgb(244 63 94 / 1);
29
+ }
30
+
31
+ .rui-output-chip__label {
32
+ opacity: 0.7;
33
+ }
34
+
35
+ .rui-output-chip__value {
36
+ min-width: 0;
37
+ }
@@ -0,0 +1,81 @@
1
+ .rui-popover {
2
+ position: absolute;
3
+ top: 100%;
4
+ left: 0;
5
+ right: 0;
6
+ z-index: 999;
7
+ margin-top: -1px;
8
+ border: 1px solid rgb(203 213 225 / 1);
9
+ border-top-left-radius: 0;
10
+ border-top-right-radius: 0;
11
+ border-bottom-left-radius: 1rem;
12
+ border-bottom-right-radius: 1rem;
13
+ background-color: rgb(255 255 255 / 0.95);
14
+ box-shadow: 0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1);
15
+ padding-top: 0.25rem;
16
+ padding-bottom: 0.25rem;
17
+ backdrop-filter: blur(8px);
18
+ }
19
+
20
+ [data-theme="dark"] .rui-popover {
21
+ border-color: rgb(82 82 91 / 1);
22
+ background-color: rgb(24 24 27 / 0.95);
23
+ }
24
+
25
+ .rui-popover__inner {
26
+ position: relative;
27
+ }
28
+
29
+ .rui-popover__scrollbar {
30
+ pointer-events: none;
31
+ position: absolute;
32
+ top: 6px;
33
+ bottom: 6px;
34
+ right: 2px;
35
+ display: flex;
36
+ width: 0.75rem;
37
+ justify-content: center;
38
+ }
39
+
40
+ .rui-popover__scrollbar-track {
41
+ pointer-events: auto;
42
+ position: relative;
43
+ height: 100%;
44
+ width: 0.25rem;
45
+ border-radius: 9999px;
46
+ background-color: rgb(15 23 42 / 0.05);
47
+ box-shadow: inset 0 2px 4px 0 rgb(0 0 0 / 0.05);
48
+ }
49
+
50
+ [data-theme="dark"] .rui-popover__scrollbar-track {
51
+ background-color: rgb(255 255 255 / 0.1);
52
+ }
53
+
54
+ .rui-popover__scrollbar-thumb {
55
+ pointer-events: auto;
56
+ position: absolute;
57
+ left: 50%;
58
+ width: 0.375rem;
59
+ border-radius: 9999px;
60
+ transform: translateX(-50%);
61
+ background-color: rgb(148 163 184 / 0.8);
62
+ box-shadow: 0 1px 2px 0 rgb(0 0 0 / 0.05);
63
+ transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
64
+ transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
65
+ transition-duration: 150ms;
66
+ }
67
+
68
+ [data-theme="dark"] .rui-popover__scrollbar-thumb {
69
+ background-color: rgb(228 228 231 / 0.7);
70
+ }
71
+
72
+ .rui-popover--portal {
73
+ position: fixed;
74
+ right: auto;
75
+ bottom: auto;
76
+ }
77
+
78
+ .rui-popover--portal {
79
+ left: auto;
80
+ top: auto;
81
+ }
@@ -0,0 +1,95 @@
1
+ .rui-progress-meter {
2
+ display: block;
3
+ }
4
+
5
+ .rui-progress-meter > :not([hidden]) ~ :not([hidden]) {
6
+ margin-top: 0.375rem;
7
+ margin-bottom: 0px;
8
+ }
9
+
10
+ .rui-progress-meter__header {
11
+ display: flex;
12
+ align-items: center;
13
+ justify-content: space-between;
14
+ gap: 0.75rem;
15
+ }
16
+
17
+ .rui-progress-meter__label {
18
+ margin: 0;
19
+ font-size: 0.75rem;
20
+ line-height: 1rem;
21
+ font-weight: 600;
22
+ text-transform: uppercase;
23
+ letter-spacing: 0.24em;
24
+ color: rgb(100 116 139 / 1);
25
+ }
26
+
27
+ .rui-progress-meter__label:is([data-theme="dark"] *) {
28
+ color: rgb(161 161 170 / 1);
29
+ }
30
+
31
+ .rui-progress-meter__value {
32
+ font-size: 0.75rem;
33
+ line-height: 1rem;
34
+ font-weight: 600;
35
+ color: rgb(71 85 105 / 1);
36
+ }
37
+
38
+ .rui-progress-meter__value:is([data-theme="dark"] *) {
39
+ color: rgb(212 212 216 / 1);
40
+ }
41
+
42
+ .rui-progress-meter__description {
43
+ font-size: 11px;
44
+ color: rgb(100 116 139 / 1);
45
+ }
46
+
47
+ .rui-progress-meter__description:is([data-theme="dark"] *) {
48
+ color: rgb(161 161 170 / 1);
49
+ }
50
+
51
+ .rui-progress-meter__track {
52
+ position: relative;
53
+ height: 0.75rem;
54
+ width: 100%;
55
+ overflow: hidden;
56
+ border-radius: 9999px;
57
+ border-width: 1px;
58
+ border-color: rgb(226 232 240 / 1);
59
+ background-color: rgb(255 255 255 / 1);
60
+ box-shadow: inset 0 2px 4px 0 rgb(0 0 0 / 0.05), 0 0 #0000,
61
+ 0 0 0 calc(1px + 0px) rgb(241 245 249 / 0.8);
62
+ }
63
+
64
+ .rui-progress-meter__track:is([data-theme="dark"] *) {
65
+ border-color: rgb(63 63 70 / 1);
66
+ background-color: rgb(24 24 27 / 0.7);
67
+ box-shadow: inset 0 2px 4px 0 rgb(0 0 0 / 0.05), 0 0 #0000,
68
+ 0 0 0 calc(1px + 0px) rgb(39 39 42 / 0.7);
69
+ }
70
+
71
+ .rui-progress-meter__native {
72
+ position: absolute;
73
+ inset: 0px;
74
+ height: 100%;
75
+ width: 100%;
76
+ appearance: none;
77
+ -webkit-appearance: none;
78
+ -moz-appearance: none;
79
+ }
80
+
81
+ .rui-progress-meter__fill {
82
+ position: absolute;
83
+ top: 0px;
84
+ bottom: 0px;
85
+ left: 0px;
86
+ border-radius: 9999px;
87
+ box-shadow: 0 0 0 1px rgba(15, 23, 42, 0.2);
88
+ transition-property: width;
89
+ transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
90
+ transition-duration: 150ms;
91
+ }
92
+
93
+ .rui-progress-meter__fill--gradient {
94
+ background-image: linear-gradient(to right, #0f172a, #334155, #0f172a);
95
+ }