@mineui/utils 0.0.2 → 0.0.4

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,367 @@
1
+ // @mineui/p3 (TYPOGRAPHY, COLORS, EFFECTS)
2
+ //
3
+ // Made with ❤️ by Maysara.
4
+
5
+
6
+
7
+ // ----------------------------------------------------------------------------
8
+ // PACK
9
+ // ----------------------------------------------------------------------------
10
+ @use '../../../node_modules/@mineui/tokens' as *;
11
+
12
+
13
+ // ----------------------------------------------------------------------------
14
+ // 25. TYPOGRAPHY - FONT FAMILY
15
+ // ----------------------------------------------------------------------------
16
+ .font-sans { font-family: $font-sans !important; }
17
+ .font-serif { font-family: $font-serif !important; }
18
+ .font-mono { font-family: $font-mono !important; }
19
+
20
+ // ----------------------------------------------------------------------------
21
+ // 26. FONT SIZE
22
+ // ----------------------------------------------------------------------------
23
+ .text-xs { font-size: $fs-xs !important; }
24
+ .text-sm { font-size: $fs-sm !important; }
25
+ .text-base { font-size: $fs-base !important; }
26
+ .text-md { font-size: $fs-md !important; }
27
+ .text-lg { font-size: $fs-lg !important; }
28
+ .text-xl { font-size: $fs-xl !important; }
29
+ .text-2xl { font-size: $fs-2xl !important; }
30
+ .text-3xl { font-size: $fs-3xl !important; }
31
+ .text-4xl { font-size: $fs-4xl !important; }
32
+ .text-5xl { font-size: $fs-5xl !important; }
33
+ .text-6xl { font-size: $fs-6xl !important; }
34
+ .text-7xl { font-size: $fs-7xl !important; }
35
+ .text-8xl { font-size: $fs-8xl !important; }
36
+ .text-9xl { font-size: $fs-9xl !important; }
37
+
38
+ // ----------------------------------------------------------------------------
39
+ // 27. FONT WEIGHT
40
+ // ----------------------------------------------------------------------------
41
+ .font-thin { font-weight: $fw-thin !important; }
42
+ .font-extralight { font-weight: $fw-extralight !important; }
43
+ .font-light { font-weight: $fw-light !important; }
44
+ .font-normal { font-weight: $fw-normal !important; }
45
+ .font-medium { font-weight: $fw-medium !important; }
46
+ .font-semibold { font-weight: $fw-semibold !important; }
47
+ .font-bold { font-weight: $fw-bold !important; }
48
+ .font-extrabold { font-weight: $fw-extrabold !important; }
49
+ .font-black { font-weight: $fw-black !important; }
50
+
51
+ // ----------------------------------------------------------------------------
52
+ // 28. FONT STYLE
53
+ // ----------------------------------------------------------------------------
54
+ .italic { font-style: italic !important; }
55
+ .not-italic { font-style: normal !important; }
56
+
57
+ // ----------------------------------------------------------------------------
58
+ // 29. LINE HEIGHT
59
+ // ----------------------------------------------------------------------------
60
+ .leading-none { line-height: $lh-none !important; }
61
+ .leading-tight { line-height: $lh-tight !important; }
62
+ .leading-snug { line-height: $lh-snug !important; }
63
+ .leading-normal { line-height: $lh-normal !important; }
64
+ .leading-relaxed { line-height: $lh-relaxed !important; }
65
+ .leading-loose { line-height: $lh-loose !important; }
66
+
67
+ // Numeric
68
+ .leading-3 { line-height: 0.75rem !important; }
69
+ .leading-4 { line-height: 1rem !important; }
70
+ .leading-5 { line-height: 1.25rem !important; }
71
+ .leading-6 { line-height: 1.5rem !important; }
72
+ .leading-7 { line-height: 1.75rem !important; }
73
+ .leading-8 { line-height: 2rem !important; }
74
+ .leading-9 { line-height: 2.25rem !important; }
75
+ .leading-10 { line-height: 2.5rem !important; }
76
+
77
+ // ----------------------------------------------------------------------------
78
+ // 30. LETTER SPACING
79
+ // ----------------------------------------------------------------------------
80
+ .tracking-tighter { letter-spacing: $ls-tighter !important; }
81
+ .tracking-tight { letter-spacing: $ls-tight !important; }
82
+ .tracking-normal { letter-spacing: $ls-normal !important; }
83
+ .tracking-wide { letter-spacing: $ls-wide !important; }
84
+ .tracking-wider { letter-spacing: $ls-wider !important; }
85
+ .tracking-widest { letter-spacing: $ls-widest !important; }
86
+
87
+ // ----------------------------------------------------------------------------
88
+ // 31. TEXT ALIGNMENT (RTL-Aware)
89
+ // ----------------------------------------------------------------------------
90
+ .text-start { text-align: start !important; }
91
+ .text-end { text-align: end !important; }
92
+ .text-left { text-align: left !important; }
93
+ .text-center { text-align: center !important; }
94
+ .text-right { text-align: right !important; }
95
+ .text-justify { text-align: justify !important; }
96
+
97
+ // ----------------------------------------------------------------------------
98
+ // 32. TEXT COLOR (Semantic)
99
+ // ----------------------------------------------------------------------------
100
+ .text-1 { color: var(--text-1) !important; }
101
+ .text-2 { color: var(--text-2) !important; }
102
+ .text-3 { color: var(--text-3) !important; }
103
+ .text-4 { color: var(--text-4) !important; }
104
+ .text-inverse { color: var(--text-inverse) !important; }
105
+ .text-brand { color: var(--brand-text) !important; }
106
+ .text-success { color: var(--success-text) !important; }
107
+ .text-warning { color: var(--warning-text) !important; }
108
+ .text-error { color: var(--error-text) !important; }
109
+ .text-info { color: var(--info-text) !important; }
110
+ .text-current { color: currentColor !important; }
111
+ .text-transparent { color: transparent !important; }
112
+
113
+ // ----------------------------------------------------------------------------
114
+ // 33. TEXT DECORATION
115
+ // ----------------------------------------------------------------------------
116
+ .underline { text-decoration: underline !important; }
117
+ .overline { text-decoration: overline !important; }
118
+ .line-through { text-decoration: line-through !important; }
119
+ .no-underline { text-decoration: none !important; }
120
+
121
+ // Decoration Style
122
+ .decoration-solid { text-decoration-style: solid !important; }
123
+ .decoration-double { text-decoration-style: double !important; }
124
+ .decoration-dotted { text-decoration-style: dotted !important; }
125
+ .decoration-dashed { text-decoration-style: dashed !important; }
126
+ .decoration-wavy { text-decoration-style: wavy !important; }
127
+
128
+ // Decoration Thickness
129
+ .decoration-auto { text-decoration-thickness: auto !important; }
130
+ .decoration-from-font { text-decoration-thickness: from-font !important; }
131
+ .decoration-0 { text-decoration-thickness: 0 !important; }
132
+ .decoration-1 { text-decoration-thickness: 1px !important; }
133
+ .decoration-2 { text-decoration-thickness: 2px !important; }
134
+ .decoration-4 { text-decoration-thickness: 4px !important; }
135
+ .decoration-8 { text-decoration-thickness: 8px !important; }
136
+
137
+ // Underline Offset
138
+ .underline-offset-auto { text-underline-offset: auto !important; }
139
+ .underline-offset-0 { text-underline-offset: 0 !important; }
140
+ .underline-offset-1 { text-underline-offset: 1px !important; }
141
+ .underline-offset-2 { text-underline-offset: 2px !important; }
142
+ .underline-offset-4 { text-underline-offset: 4px !important; }
143
+ .underline-offset-8 { text-underline-offset: 8px !important; }
144
+
145
+ // ----------------------------------------------------------------------------
146
+ // 34. TEXT TRANSFORM
147
+ // ----------------------------------------------------------------------------
148
+ .uppercase { text-transform: uppercase !important; }
149
+ .lowercase { text-transform: lowercase !important; }
150
+ .capitalize { text-transform: capitalize !important; }
151
+ .normal-case { text-transform: none !important; }
152
+
153
+ // ----------------------------------------------------------------------------
154
+ // 35. TEXT OVERFLOW
155
+ // ----------------------------------------------------------------------------
156
+ .truncate {
157
+ overflow: hidden !important;
158
+ text-overflow: ellipsis !important;
159
+ white-space: nowrap !important;
160
+ }
161
+
162
+ .text-ellipsis { text-overflow: ellipsis !important; }
163
+ .text-clip { text-overflow: clip !important; }
164
+
165
+ // ----------------------------------------------------------------------------
166
+ // 36. TEXT WRAP
167
+ // ----------------------------------------------------------------------------
168
+ .text-wrap { text-wrap: wrap !important; }
169
+ .text-nowrap { text-wrap: nowrap !important; }
170
+ .text-balance { text-wrap: balance !important; }
171
+ .text-pretty { text-wrap: pretty !important; }
172
+
173
+ // ----------------------------------------------------------------------------
174
+ // 37. WHITE SPACE
175
+ // ----------------------------------------------------------------------------
176
+ .whitespace-normal { white-space: normal !important; }
177
+ .whitespace-nowrap { white-space: nowrap !important; }
178
+ .whitespace-pre { white-space: pre !important; }
179
+ .whitespace-pre-line { white-space: pre-line !important; }
180
+ .whitespace-pre-wrap { white-space: pre-wrap !important; }
181
+ .whitespace-break-spaces { white-space: break-spaces !important; }
182
+
183
+ // ----------------------------------------------------------------------------
184
+ // 38. WORD BREAK
185
+ // ----------------------------------------------------------------------------
186
+ .break-normal {
187
+ overflow-wrap: normal !important;
188
+ word-break: normal !important;
189
+ }
190
+
191
+ .break-words { overflow-wrap: break-word !important; }
192
+ .break-all { word-break: break-all !important; }
193
+ .break-keep { word-break: keep-all !important; }
194
+
195
+ // ----------------------------------------------------------------------------
196
+ // 39. HYPHENS
197
+ // ----------------------------------------------------------------------------
198
+ .hyphens-none { hyphens: none !important; }
199
+ .hyphens-manual { hyphens: manual !important; }
200
+ .hyphens-auto { hyphens: auto !important; }
201
+
202
+ // ----------------------------------------------------------------------------
203
+ // 40. CONTENT (::before/::after)
204
+ // ----------------------------------------------------------------------------
205
+ .content-none { content: none !important; }
206
+
207
+ // ----------------------------------------------------------------------------
208
+ // 41. BACKGROUND (Semantic)
209
+ // ----------------------------------------------------------------------------
210
+ .bg-page { background-color: var(--bg-page) !important; }
211
+ .bg-surface { background-color: var(--bg-surface) !important; }
212
+ .bg-raised { background-color: var(--bg-raised) !important; }
213
+ .bg-brand { background-color: var(--brand) !important; }
214
+ .bg-brand-subtle { background-color: var(--brand-subtle) !important; }
215
+ .bg-success { background-color: var(--success) !important; }
216
+ .bg-success-subtle { background-color: var(--success-subtle) !important; }
217
+ .bg-warning { background-color: var(--warning) !important; }
218
+ .bg-warning-subtle { background-color: var(--warning-subtle) !important; }
219
+ .bg-error { background-color: var(--error) !important; }
220
+ .bg-error-subtle { background-color: var(--error-subtle) !important; }
221
+ .bg-info { background-color: var(--info) !important; }
222
+ .bg-info-subtle { background-color: var(--info-subtle) !important; }
223
+ .bg-current { background-color: currentColor !important; }
224
+ .bg-transparent { background-color: transparent !important; }
225
+
226
+ // ----------------------------------------------------------------------------
227
+ // 42. BACKGROUND ATTACHMENT
228
+ // ----------------------------------------------------------------------------
229
+ .bg-fixed { background-attachment: fixed !important; }
230
+ .bg-local { background-attachment: local !important; }
231
+ .bg-scroll { background-attachment: scroll !important; }
232
+
233
+ // ----------------------------------------------------------------------------
234
+ // 43. BACKGROUND POSITION
235
+ // ----------------------------------------------------------------------------
236
+ .bg-bottom { background-position: bottom !important; }
237
+ .bg-center { background-position: center !important; }
238
+ .bg-left { background-position: left !important; }
239
+ .bg-left-bottom { background-position: left bottom !important; }
240
+ .bg-left-top { background-position: left top !important; }
241
+ .bg-right { background-position: right !important; }
242
+ .bg-right-bottom { background-position: right bottom !important; }
243
+ .bg-right-top { background-position: right top !important; }
244
+ .bg-top { background-position: top !important; }
245
+
246
+ // ----------------------------------------------------------------------------
247
+ // 44. BACKGROUND REPEAT
248
+ // ----------------------------------------------------------------------------
249
+ .bg-repeat { background-repeat: repeat !important; }
250
+ .bg-no-repeat { background-repeat: no-repeat !important; }
251
+ .bg-repeat-x { background-repeat: repeat-x !important; }
252
+ .bg-repeat-y { background-repeat: repeat-y !important; }
253
+ .bg-repeat-round { background-repeat: round !important; }
254
+ .bg-repeat-space { background-repeat: space !important; }
255
+
256
+ // ----------------------------------------------------------------------------
257
+ // 45. BACKGROUND SIZE
258
+ // ----------------------------------------------------------------------------
259
+ .bg-auto { background-size: auto !important; }
260
+ .bg-cover { background-size: cover !important; }
261
+ .bg-contain { background-size: contain !important; }
262
+
263
+ // ----------------------------------------------------------------------------
264
+ // 46. BACKGROUND CLIP
265
+ // ----------------------------------------------------------------------------
266
+ .bg-clip-border { background-clip: border-box !important; }
267
+ .bg-clip-padding { background-clip: padding-box !important; }
268
+ .bg-clip-content { background-clip: content-box !important; }
269
+ .bg-clip-text {
270
+ background-clip: text !important;
271
+ -webkit-background-clip: text !important;
272
+ color: transparent !important;
273
+ }
274
+
275
+ // ----------------------------------------------------------------------------
276
+ // 47. BACKGROUND ORIGIN
277
+ // ----------------------------------------------------------------------------
278
+ .bg-origin-border { background-origin: border-box !important; }
279
+ .bg-origin-padding { background-origin: padding-box !important; }
280
+ .bg-origin-content { background-origin: content-box !important; }
281
+
282
+ // ----------------------------------------------------------------------------
283
+ // 48. BORDERS
284
+ // ----------------------------------------------------------------------------
285
+ .border { border-width: $bw-1 !important; border-style: solid !important; border-color: var(--border-1) !important; }
286
+ .border-0 { border-width: 0 !important; }
287
+ .border-2 { border-width: $bw-2 !important; }
288
+ .border-4 { border-width: $bw-4 !important; }
289
+ .border-8 { border-width: $bw-8 !important; }
290
+
291
+ // Individual sides (RTL-aware)
292
+ .border-x { border-inline-width: $bw-1 !important; border-inline-style: solid !important; }
293
+ .border-y { border-block-width: $bw-1 !important; border-block-style: solid !important; }
294
+ .border-s { border-inline-start-width: $bw-1 !important; border-inline-start-style: solid !important; }
295
+ .border-e { border-inline-end-width: $bw-1 !important; border-inline-end-style: solid !important; }
296
+ .border-t { border-block-start-width: $bw-1 !important; border-block-start-style: solid !important; }
297
+ .border-b { border-block-end-width: $bw-1 !important; border-block-end-style: solid !important; }
298
+
299
+ // Border Color (Semantic)
300
+ .border-1 { border-color: var(--border-1) !important; }
301
+ .border-2 { border-color: var(--border-2) !important; }
302
+ .border-3 { border-color: var(--border-3) !important; }
303
+ .border-brand { border-color: var(--brand) !important; }
304
+ .border-success { border-color: var(--success) !important; }
305
+ .border-warning { border-color: var(--warning) !important; }
306
+ .border-error { border-color: var(--error) !important; }
307
+ .border-current { border-color: currentColor !important; }
308
+ .border-transparent { border-color: transparent !important; }
309
+
310
+ // Border Style
311
+ .border-solid { border-style: solid !important; }
312
+ .border-dashed { border-style: dashed !important; }
313
+ .border-dotted { border-style: dotted !important; }
314
+ .border-double { border-style: double !important; }
315
+ .border-hidden { border-style: hidden !important; }
316
+ .border-none { border-style: none !important; }
317
+
318
+ // ----------------------------------------------------------------------------
319
+ // 49. BORDER RADIUS
320
+ // ----------------------------------------------------------------------------
321
+ .rounded-none { border-radius: $br-none !important; }
322
+ .rounded-sm { border-radius: $br-sm !important; }
323
+ .rounded { border-radius: $br-base !important; }
324
+ .rounded-md { border-radius: $br-md !important; }
325
+ .rounded-lg { border-radius: $br-lg !important; }
326
+ .rounded-xl { border-radius: $br-xl !important; }
327
+ .rounded-2xl { border-radius: $br-2xl !important; }
328
+ .rounded-3xl { border-radius: $br-3xl !important; }
329
+ .rounded-full { border-radius: $br-full !important; }
330
+
331
+ // Individual corners (Logical)
332
+ .rounded-s { border-start-start-radius: $br-base !important; border-end-start-radius: $br-base !important; }
333
+ .rounded-e { border-start-end-radius: $br-base !important; border-end-end-radius: $br-base !important; }
334
+ .rounded-t { border-start-start-radius: $br-base !important; border-start-end-radius: $br-base !important; }
335
+ .rounded-b { border-end-start-radius: $br-base !important; border-end-end-radius: $br-base !important; }
336
+
337
+ .rounded-ss { border-start-start-radius: $br-base !important; }
338
+ .rounded-se { border-start-end-radius: $br-base !important; }
339
+ .rounded-ee { border-end-end-radius: $br-base !important; }
340
+ .rounded-es { border-end-start-radius: $br-base !important; }
341
+
342
+ // ----------------------------------------------------------------------------
343
+ // 50. OUTLINE
344
+ // ----------------------------------------------------------------------------
345
+ .outline-none { outline: none !important; }
346
+ .outline { outline-style: solid !important; outline-width: 2px !important; }
347
+ .outline-0 { outline-width: 0 !important; }
348
+ .outline-1 { outline-width: 1px !important; }
349
+ .outline-2 { outline-width: 2px !important; }
350
+ .outline-4 { outline-width: 4px !important; }
351
+
352
+ // Outline Style
353
+ .outline-solid { outline-style: solid !important; }
354
+ .outline-dashed { outline-style: dashed !important; }
355
+ .outline-dotted { outline-style: dotted !important; }
356
+ .outline-double { outline-style: double !important; }
357
+
358
+ // Outline Color
359
+ .outline-brand { outline-color: var(--brand) !important; }
360
+ .outline-current { outline-color: currentColor !important; }
361
+ .outline-transparent { outline-color: transparent !important; }
362
+
363
+ // Outline Offset
364
+ .outline-offset-0 { outline-offset: 0 !important; }
365
+ .outline-offset-1 { outline-offset: 1px !important; }
366
+ .outline-offset-2 { outline-offset: 2px !important; }
367
+ .outline-offset-4 { outline-offset: 4px !important; }