@birdycom/omniacss 0.0.0-stage → 0.11.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 (106) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +43 -2
  3. package/dist/oc-colors.css +4429 -0
  4. package/dist/oc-theme.css +69 -0
  5. package/dist/omnia.css +465435 -0
  6. package/dist/omnia.min.css +2 -0
  7. package/dist/omnia.starter.css +13459 -0
  8. package/dist/omnia.starter.min.css +1 -0
  9. package/dist/tokens/omnia.dtcg.json +1496 -0
  10. package/dist/tokens/omnia.tokens.json +580 -0
  11. package/dist/tokens/omnia_tokens.py +189 -0
  12. package/package.json +61 -4
  13. package/scss/base/_reset.scss +88 -0
  14. package/scss/config/omniacss.config.scss +114 -0
  15. package/scss/config/omniacss.fonts.scss +34 -0
  16. package/scss/functions/_functions.scss +407 -0
  17. package/scss/json/html-colors.json +1998 -0
  18. package/scss/json/omnia-colors.json +500 -0
  19. package/scss/json/ral-colors.json +3430 -0
  20. package/scss/layout/_media_query.scss +18 -0
  21. package/scss/omnia_colors.scss +7 -0
  22. package/scss/omnia_main.scss +143 -0
  23. package/scss/profiles/omnia_main.hsl.scss +12 -0
  24. package/scss/profiles/omnia_main.oklab.scss +12 -0
  25. package/scss/profiles/omnia_main.oklch.scss +12 -0
  26. package/scss/utilities/_accessibility.scss +42 -0
  27. package/scss/utilities/_alignment.scss +861 -0
  28. package/scss/utilities/_anchor_positioning.scss +65 -0
  29. package/scss/utilities/_animation_properties.scss +143 -0
  30. package/scss/utilities/_aspect.scss +73 -0
  31. package/scss/utilities/_backgrounds.scss +49 -0
  32. package/scss/utilities/_borders_extended.scss +97 -0
  33. package/scss/utilities/_borders_outlines.scss +161 -0
  34. package/scss/utilities/_clamp.scss +111 -0
  35. package/scss/utilities/_colors_html.scss +341 -0
  36. package/scss/utilities/_colors_mix.scss +84 -0
  37. package/scss/utilities/_colors_omnia.scss +315 -0
  38. package/scss/utilities/_colors_ral.scss +151 -0
  39. package/scss/utilities/_colors_tokens.scss +87 -0
  40. package/scss/utilities/_container.scss +58 -0
  41. package/scss/utilities/_containment.scss +82 -0
  42. package/scss/utilities/_corner_shape.scss +30 -0
  43. package/scss/utilities/_css_functions.scss +34 -0
  44. package/scss/utilities/_dark_mode.scss +117 -0
  45. package/scss/utilities/_display.scss +58 -0
  46. package/scss/utilities/_drop_shadow_colors.scss +26 -0
  47. package/scss/utilities/_effects.scss +50 -0
  48. package/scss/utilities/_effects_advanced.scss +102 -0
  49. package/scss/utilities/_experimental_css.scss +149 -0
  50. package/scss/utilities/_filters.scss +89 -0
  51. package/scss/utilities/_flexbox.scss +318 -0
  52. package/scss/utilities/_font_variants.scss +139 -0
  53. package/scss/utilities/_fonts.scss +276 -0
  54. package/scss/utilities/_gap.scss +104 -0
  55. package/scss/utilities/_gradient_stops.scss +48 -0
  56. package/scss/utilities/_gradients.scss +99 -0
  57. package/scss/utilities/_grid.scss +673 -0
  58. package/scss/utilities/_index.scss +22 -0
  59. package/scss/utilities/_interactivity.scss +198 -0
  60. package/scss/utilities/_layering.scss +24 -0
  61. package/scss/utilities/_layout_extras.scss +171 -0
  62. package/scss/utilities/_layout_flow.scss +210 -0
  63. package/scss/utilities/_mask_extras.scss +62 -0
  64. package/scss/utilities/_motion_transforms.scss +167 -0
  65. package/scss/utilities/_overflow.scss +41 -0
  66. package/scss/utilities/_position.scss +49 -0
  67. package/scss/utilities/_responsive.scss +272 -0
  68. package/scss/utilities/_scroll_animations.scss +80 -0
  69. package/scss/utilities/_scroll_spacing.scss +33 -0
  70. package/scss/utilities/_scrollbar.scss +49 -0
  71. package/scss/utilities/_shadow_tokens.scss +21 -0
  72. package/scss/utilities/_shapes.scss +72 -0
  73. package/scss/utilities/_sizing.scss +458 -0
  74. package/scss/utilities/_sizing_logical.scss +99 -0
  75. package/scss/utilities/_space_divide.scss +85 -0
  76. package/scss/utilities/_spacing_margin.scss +199 -0
  77. package/scss/utilities/_spacing_padding.scss +195 -0
  78. package/scss/utilities/_starting_style.scss +53 -0
  79. package/scss/utilities/_state_variants.scss +196 -0
  80. package/scss/utilities/_svg.scss +100 -0
  81. package/scss/utilities/_table.scss +46 -0
  82. package/scss/utilities/_table_advanced.scss +19 -0
  83. package/scss/utilities/_text.scss +1331 -0
  84. package/scss/utilities/_transforms_3d.scss +76 -0
  85. package/scss/utilities/_typography_advanced.scss +124 -0
  86. package/scss/utilities/_typography_modern.scss +83 -0
  87. package/scss/utilities/_view_transitions.scss +64 -0
  88. package/scss/utilities/_writing_modes.scss +72 -0
  89. package/scss/variables/_color_tone.scss +39 -0
  90. package/scss/variables/_hulp.scss +108 -0
  91. package/scss/variables/_mixins.scss +40 -0
  92. package/scss/variables/_modifiers.scss +32 -0
  93. package/scss/variables/_variables.scss +302 -0
  94. package/scss/variables/_variables_colors_html.scss +2019 -0
  95. package/scss/variables/_variables_colors_omnia.scss +465 -0
  96. package/scss/variables/_variables_colors_ral.scss +3472 -0
  97. package/scss/variables/_variables_effects.scss +109 -0
  98. package/scss/variables/_variables_flex_grid.scss +427 -0
  99. package/scss/variables/_variables_layout.scss +591 -0
  100. package/scss/variables/_variables_typography.scss +550 -0
  101. package/src/engine.mjs +258 -0
  102. package/src/postcss.mjs +43 -0
  103. package/src/starter-classes.mjs +124 -0
  104. package/src/tokens.mjs +377 -0
  105. package/src/variants.mjs +278 -0
  106. package/tokens/semantic.json +80 -0
@@ -0,0 +1,1331 @@
1
+ // SCSS Document
2
+ // File: src/utilities/_text.scss
3
+ // Description: CSS Text properties
4
+ // Copyright: 2021-2022 Birdycom
5
+ // Autor: Serge Cools
6
+ // Version: 0.2.0
7
+ // Framework: OmniaCSS
8
+ // Properties: text
9
+ // Values: Decoration
10
+
11
+ @use "sass:string";
12
+ @use "sass:color";
13
+ @use "sass:math";
14
+ @use "../utilities/" as *;
15
+
16
+ /* The text decoration line properties */
17
+
18
+ ///
19
+ /// The Text Decoration Property
20
+ /// @group TextdecorationLine
21
+ ///
22
+
23
+ ///
24
+ /// The text-decoration-line property sets the Text decoration.
25
+ /// @group TextdecorationLine
26
+ /// @name textdecorationline
27
+ /// @link src/scss/utilities/_variables_text.scss
28
+ /// @since 1.0.0
29
+ /// @author Serge Cools
30
+ ///
31
+ /// Applies to: all elements
32
+ ///
33
+ /// @require {variable} $textdecorationline
34
+ /// @require {variable} $colorsomnia
35
+ /// @require {variable} $pseudoclasses
36
+ /// @example scss - text decoration line class
37
+ /// @each $textdecorationline-prop, $textdecorationline-value in $textdecorationline {
38
+ /// @each $pseudoclasses-prop, $pseudoclasses-value in $pseudoclasses {
39
+ /// #{".#{$pseudoclasses-value}" + "#{$textdecorationline-prop}"+ "#{$pseudoclasses-prop}"}{
40
+ /// text-decoration-line: $textdecorationline-value ;
41
+ /// }
42
+ /// }
43
+ /// }
44
+ /// @example html - use text decoration line class
45
+ /// <div class="underline">
46
+ /// <p>this line have text decoration line </p>
47
+ /// </div>
48
+ /// <div class="hover:underline">
49
+ /// <p>this line have text decoration line </p>
50
+ /// </div>
51
+ @each $textdecorationline-prop, $textdecorationline-value in $textdecorationline {
52
+
53
+ @each $pseudoclasses-prop, $pseudoclasses-value in $pseudoclasses { // make the pseudo classes
54
+
55
+ #{".#{$pseudoclasses-value}" + "#{$textdecorationline-prop}"+ "#{$pseudoclasses-prop}"}{
56
+
57
+ text-decoration-line: $textdecorationline-value ;
58
+
59
+ }
60
+ }
61
+ }
62
+
63
+
64
+ /* The Omnia text decoration Colors properties */
65
+
66
+ ///
67
+ /// The text-decoration-line property sets the Text decoration with the omnia colors.
68
+ /// @group TextdecorationOmniaColor
69
+ /// @name textdecorationomniacolor
70
+ /// @link src/scss/utilities/_variables_text.scss
71
+ /// @since 1.0.0
72
+ /// @author Serge Cools
73
+ ///
74
+ /// Applies to: all elements
75
+ ///
76
+ /// @require {variable} $colorsomnia
77
+ /// @require {variable} $opacitycolor
78
+ /// @require {variable} $pseudoclasses
79
+ /// @require str-replace
80
+ /// @example scss - text decoration color class
81
+ /// @each $colorsomnia-prop, $colorsomnia-value in $omnia-colors { // first list 'omniacolors'
82
+ /// @each $maincolorsomnia-prop, $maincolorsomnia-value in $colorsomnia-value { // first list 'omniacolors'
83
+ /// @each $colorname-prop, $colorname-value in $maincolorsomnia-value { // second list 'colors name'
84
+ /// @each $pseudoclasses-prop, $pseudoclasses-value in $pseudoclasses { // make the pseudo classes
85
+ /// @each $opacitycolor-prop, $opacitycolor-value in $opacitycolor { // set the opacity off the colors
86
+ /// #{".#{$pseudoclasses-value}" + "decoration-" + to-lower-case("#{$colorname-prop}") + if($opacitycolor-value <= 90, "#{$opacitycolor-prop}#{$pseudoclasses-prop}","#{$pseudoclasses-prop}")}{
87
+ /// @each $coloromnia-prop, $coloromnia-value in $colorname-value {
88
+ /// @if $coloromnia-prop == 'hsl' {
89
+ /// $h:(); $s:(); $l:();
90
+ /// @each $color-prop, $color-value in $coloromnia-value {
91
+ /// @if $color-prop == 'h' { $h: #{$color-value}; }
92
+ /// @if $color-prop == 's' { $s: #{$color-value}+'%'; }
93
+ /// @if $color-prop == 'l' { $l: #{$color-value}+'%'; }
94
+ /// }
95
+ /// @if $opacitycolor-value <= 90 {
96
+ /// text-decoration-color: #{'hsl('+ $h + ', ' + $s + ', ' + $l + ', #{$opacitycolor-value}% )' };
97
+ /// } @else {
98
+ /// text-decoration-color: #{'hsl('+ $h + ', ' + $s + ', ' + $l + ' )' };
99
+ /// }
100
+ /// }
101
+ /// }
102
+ /// }
103
+ /// }
104
+ /// }
105
+ /// }
106
+ /// }
107
+ /// };
108
+ /// @example html - use text decoration line class
109
+ /// <div class="underline decoration-orange-50">
110
+ /// <p>this line have text decoration line </p>
111
+ /// </div>
112
+ /// <div class="hover:decoration-red-90 hover:underline">
113
+ /// <p>this line have text decoration line </p>
114
+ /// </div>
115
+ @each $colorsomnia-prop, $colorsomnia-value in $omnia-colors { // first list 'omniacolors'
116
+
117
+ @each $maincolorsomnia-prop, $maincolorsomnia-value in $colorsomnia-value { // first list 'omniacolors'
118
+
119
+ @each $colorname-prop, $colorname-value in $maincolorsomnia-value { // second list 'colors name'
120
+
121
+ @each $pseudoclasses-prop, $pseudoclasses-value in $pseudoclasses { // make the pseudo classes
122
+
123
+ @each $opacitycolor-prop, $opacitycolor-value in $opacitycolor { // set the opacity off the colors
124
+
125
+ $opacity-suffix: "#{$pseudoclasses-prop}";
126
+ @if $opacitycolor-value <= 95 {
127
+ $opacity-suffix: "#{$opacitycolor-prop}#{$pseudoclasses-prop}";
128
+ }
129
+
130
+ #{".#{$pseudoclasses-value}" + "decoration-" + string.to-lower-case("#{$colorname-prop}") + $opacity-suffix}{
131
+
132
+ @each $coloromnia-prop, $coloromnia-value in $colorname-value {
133
+
134
+ @if $coloromnia-prop == $DEFAULT-COLOR-TYPE-VALUE or (($DEFAULT-COLOR-TYPE-VALUE == 'oklch' or $DEFAULT-COLOR-TYPE-VALUE == 'oklab') and $coloromnia-prop == 'hex') {
135
+
136
+ @if $DEFAULT-COLOR-TYPE-VALUE == 'hex' or $DEFAULT-COLOR-TYPE-VALUE == 'websafe' {
137
+
138
+ @if $opacitycolor-value <= 95 {
139
+
140
+ text-decoration-color: $coloromnia-value+#{$opacitycolor-value};
141
+
142
+ } @else {
143
+
144
+ text-decoration-color: $coloromnia-value;
145
+ }
146
+ }
147
+
148
+ @if $DEFAULT-COLOR-TYPE-VALUE == 'hsl' {
149
+
150
+ $h:(); $s:(); $l:();
151
+
152
+ @each $color-prop, $color-value in $coloromnia-value {
153
+
154
+ @if $color-prop == 'h' { $h: #{$color-value}; }
155
+ @if $color-prop == 's' { $s: #{$color-value}+'%'; }
156
+ @if $color-prop == 'l' { $l: #{$color-value}+'%'; }
157
+
158
+ }
159
+
160
+ @if $opacitycolor-value <= 95 {
161
+
162
+ text-decoration-color: #{'hsl('+ $h + ', ' + $s + ', ' + $l + ', #{$opacitycolor-value}% )' };
163
+
164
+ } @else {
165
+
166
+ text-decoration-color: #{'hsl('+ $h + ', ' + $s + ', ' + $l + ' )' };
167
+ }
168
+ }
169
+
170
+ @if $DEFAULT-COLOR-TYPE-VALUE == 'rgb' {
171
+
172
+ $r:(); $g:(); $b:();
173
+
174
+ @each $color-prop, $color-value in $coloromnia-value {
175
+
176
+ @if $color-prop == 'r' { $r: #{$color-value}; }
177
+ @if $color-prop == 'g' { $g: #{$color-value}; }
178
+ @if $color-prop == 'b' { $b: #{$color-value}; }
179
+
180
+ }
181
+
182
+ @if $opacitycolor-value <= 95 {
183
+
184
+ text-decoration-color: #{'rgb('+ $r $g $b + ' / #{$opacitycolor-value}% )' };
185
+
186
+ } @else {
187
+
188
+ text-decoration-color: #{'rgb('+ $r $g $b + ' )' };
189
+ }
190
+ }
191
+
192
+ @if $DEFAULT-COLOR-TYPE-VALUE == 'oklch' {
193
+ $oklch-color: color.to-space($coloromnia-value, oklch);
194
+
195
+ @if $opacitycolor-value <= 95 {
196
+ text-decoration-color: color.change($oklch-color, $alpha: math.div($opacitycolor-value, 100));
197
+ } @else {
198
+ text-decoration-color: $oklch-color;
199
+ }
200
+ }
201
+
202
+ @if $DEFAULT-COLOR-TYPE-VALUE == 'oklab' {
203
+ $oklab-color: color.to-space($coloromnia-value, oklab);
204
+
205
+ @if $opacitycolor-value <= 95 {
206
+ text-decoration-color: color.change($oklab-color, $alpha: math.div($opacitycolor-value, 100));
207
+ } @else {
208
+ text-decoration-color: $oklab-color;
209
+ }
210
+ }
211
+ }
212
+ }
213
+ }
214
+ }
215
+ }
216
+ }
217
+ }
218
+ };
219
+ /* End Omnia text decoration Colors properties */
220
+
221
+ /* The Html text decoration Colors properties */
222
+
223
+ ///
224
+ /// The text-decoration-line property sets the Text decoration with the html colors.
225
+ /// @group TextdecorationHtmlColor
226
+ /// @name textdecorationhtmlcolor
227
+ /// @link src/scss/utilities/_variables_text.scss
228
+ /// @since 1.0.0
229
+ /// @author Serge Cools
230
+ ///
231
+ /// Applies to: all elements
232
+ ///
233
+ /// @require {variable} $colorshtml
234
+ /// @require {variable} $opacitycolor
235
+ /// @require {variable} $pseudoclasses
236
+ /// @require str-replace
237
+ /// @example scss - text decoration color class
238
+ /// @each $colorshtml-prop, $colorshtml-value in $html-colors { // first list 'htmlcolors'
239
+ /// @each $maincolorshtml-prop, $maincolorshtml-value in $colorshtml-value { // first list 'htmlcolors'
240
+ /// @each $colorname-prop, $colorname-value in $maincolorshtml-value { // second list 'colors name'
241
+ /// @each $pseudoclasses-prop, $pseudoclasses-value in $pseudoclasses { // make the pseudo classes
242
+ /// @each $opacitycolor-prop, $opacitycolor-value in $opacitycolor { // set the opacity off the colors
243
+ /// #{".#{$pseudoclasses-value}" + "decoration-" + to-lower-case("#{$colorname-prop}") + if($opacitycolor-value <= 90, "#{$opacitycolor-prop}#{$pseudoclasses-prop}","#{$pseudoclasses-prop}")}{
244
+ /// @each $colorhtml-prop, $colorhtml-value in $colorname-value {
245
+ /// @if $colorhtml-prop == 'hsl' {
246
+ /// $h:(); $s:(); $l:();
247
+ /// @each $color-prop, $color-value in $colorhtml-value {
248
+ /// @if $color-prop == 'h' { $h: #{$color-value}; }
249
+ /// @if $color-prop == 's' { $s: #{$color-value}+'%'; }
250
+ /// @if $color-prop == 'l' { $l: #{$color-value}+'%'; }
251
+ /// }
252
+ /// @if $opacitycolor-value <= 90 {
253
+ /// text-decoration-color: #{'hsl('+ $h + ', ' + $s + ', ' + $l + ', #{$opacitycolor-value}% )' };
254
+ /// } @else {
255
+ /// text-decoration-color: #{'hsl('+ $h + ', ' + $s + ', ' + $l + ' )' };
256
+ /// }
257
+ /// }
258
+ /// }
259
+ /// }
260
+ /// }
261
+ /// }
262
+ /// }
263
+ /// }
264
+ /// };
265
+ /// @example html - use text decoration line class
266
+ /// <div class="underline decoration-orange">
267
+ /// <p>this line have text decoration line </p>
268
+ /// </div>
269
+ /// <div class="hover:decoration-red hover:underline">
270
+ /// <p>this line have text decoration line </p>
271
+ /// </div>
272
+ @each $colorshtml-prop, $colorshtml-value in $html-colors { // first list 'htmlcolors'
273
+
274
+ @each $maincolorshtml-prop, $maincolorshtml-value in $colorshtml-value { // first list 'htmlcolors'
275
+
276
+ @each $colorname-prop, $colorname-value in $maincolorshtml-value { // second list 'colors name'
277
+
278
+ @each $pseudoclasses-prop, $pseudoclasses-value in $pseudoclasses { // make the pseudo classes
279
+
280
+ @each $opacitycolor-prop, $opacitycolor-value in $opacitycolor { // set the opacity off the colors
281
+
282
+ $opacity-suffix: "#{$pseudoclasses-prop}";
283
+ @if $opacitycolor-value <= 95 {
284
+ $opacity-suffix: "#{$opacitycolor-prop}#{$pseudoclasses-prop}";
285
+ }
286
+
287
+ #{".#{$pseudoclasses-value}" + "decoration-" + string.to-lower-case("#{$colorname-prop}") + $opacity-suffix}{
288
+
289
+ @each $colorhtml-prop, $colorhtml-value in $colorname-value {
290
+
291
+ @if $colorhtml-prop == $DEFAULT-COLOR-TYPE-VALUE or (($DEFAULT-COLOR-TYPE-VALUE == 'oklch' or $DEFAULT-COLOR-TYPE-VALUE == 'oklab') and $colorhtml-prop == 'hex') {
292
+
293
+ @if $DEFAULT-COLOR-TYPE-VALUE == 'hex' or $DEFAULT-COLOR-TYPE-VALUE == 'websafe' {
294
+
295
+ @if $opacitycolor-value <= 95 {
296
+
297
+ text-decoration-color: $colorhtml-value+#{$opacitycolor-value};
298
+
299
+ } @else {
300
+
301
+ text-decoration-color: $colorhtml-value;
302
+ }
303
+ }
304
+
305
+ @if $DEFAULT-COLOR-TYPE-VALUE == 'hsl' {
306
+
307
+ $h:(); $s:(); $l:();
308
+
309
+ @each $color-prop, $color-value in $colorhtml-value {
310
+
311
+ @if $color-prop == 'h' { $h: #{$color-value}; }
312
+ @if $color-prop == 's' { $s: #{$color-value}+'%'; }
313
+ @if $color-prop == 'l' { $l: #{$color-value}+'%'; }
314
+
315
+ }
316
+
317
+ @if $opacitycolor-value <= 95 {
318
+
319
+ text-decoration-color: #{'hsl('+ $h + ', ' + $s + ', ' + $l + ', #{$opacitycolor-value}% )' };
320
+
321
+ } @else {
322
+
323
+ text-decoration-color: #{'hsl('+ $h + ', ' + $s + ', ' + $l + ' )' };
324
+ }
325
+ }
326
+
327
+ @if $DEFAULT-COLOR-TYPE-VALUE == 'rgb' {
328
+
329
+ $r:(); $g:(); $b:();
330
+
331
+ @each $color-prop, $color-value in $colorhtml-value {
332
+
333
+ @if $color-prop == 'r' { $r: #{$color-value}; }
334
+ @if $color-prop == 'g' { $g: #{$color-value}; }
335
+ @if $color-prop == 'b' { $b: #{$color-value}; }
336
+
337
+ }
338
+
339
+ @if $opacitycolor-value <= 95 {
340
+
341
+ text-decoration-color: #{'rgb('+ $r $g $b + ' / #{$opacitycolor-value}% )' };
342
+
343
+ } @else {
344
+
345
+ text-decoration-color: #{'rgb('+ $r $g $b + ' )' };
346
+ }
347
+ }
348
+
349
+ @if $DEFAULT-COLOR-TYPE-VALUE == 'oklch' {
350
+ $oklch-color: color.to-space($colorhtml-value, oklch);
351
+
352
+ @if $opacitycolor-value <= 95 {
353
+ text-decoration-color: color.change($oklch-color, $alpha: math.div($opacitycolor-value, 100));
354
+ } @else {
355
+ text-decoration-color: $oklch-color;
356
+ }
357
+ }
358
+
359
+ @if $DEFAULT-COLOR-TYPE-VALUE == 'oklab' {
360
+ $oklab-color: color.to-space($colorhtml-value, oklab);
361
+
362
+ @if $opacitycolor-value <= 95 {
363
+ text-decoration-color: color.change($oklab-color, $alpha: math.div($opacitycolor-value, 100));
364
+ } @else {
365
+ text-decoration-color: $oklab-color;
366
+ }
367
+ }
368
+ }
369
+ }
370
+ }
371
+ }
372
+ }
373
+ }
374
+ }
375
+ };
376
+ /* End html text decoration Colors properties */
377
+
378
+ /* The Letter Spacing properties */
379
+ ///
380
+ /// The letterspacing property sets.
381
+ /// @group letterspacing
382
+ /// @name letterspacing
383
+ /// @link src/scss/utilities/_variables_text.scss
384
+ /// @since 1.0.0
385
+ /// @author Serge Cools
386
+ ///
387
+ /// Applies to: all elements
388
+ ///
389
+ /// @require {variable} $letterspacing
390
+ /// @example scss - letterspacing class
391
+ /// @each $letterspacing-prop, $letterspacing-value in $letterspacing {
392
+ /// #{".#{$letterspacing-prop}"}{
393
+ /// letter-spacing: $letterspacing-value ;
394
+ /// }
395
+ /// }
396
+ /// @example html - use Letter Spacing class
397
+ /// <div>
398
+ /// <p class="letterspacing-2">this line have text decoration line </p>
399
+ /// </div>
400
+ /// <div>
401
+ /// <p class="letterspacing-normal">this line have text decoration line </p>
402
+ /// </div>
403
+ /// <div>
404
+ /// <p class="letterspacing-9">this line have text decoration line </p>
405
+ /// </div> ///
406
+ @each $letterspacing-prop, $letterspacing-value in $letterspacing {
407
+
408
+ #{".#{$letterspacing-prop}"}{
409
+
410
+ letter-spacing: $letterspacing-value ;
411
+
412
+ }
413
+ }
414
+ /* End Letter Spacing properties */
415
+
416
+ /* The Line Height properties */
417
+ ///
418
+ /// The lineheight property sets.
419
+ /// @group lineheight
420
+ /// @name lineheight
421
+ /// @link src/scss/utilities/_variables_text.scss
422
+ /// @since 1.0.0
423
+ /// @author Serge Cools
424
+ ///
425
+ /// Applies to: all elements
426
+ ///
427
+ /// @require {variable} $lineheight
428
+ /// @example scss - lineheight class
429
+ /// @each $lineheight-prop, $lineheight-value in $lineheight {
430
+ /// #{".#{$lineheight-prop}"}{
431
+ /// line-height: $lineheight-value ;
432
+ /// }
433
+ /// }
434
+ /// @example html - use Line height class
435
+ /// <p>sample of the line-height with 2rem between the lines = lineheight-2 </p>
436
+ /// <div class="lineheight-2">
437
+ /// <p>this line have text decoration line </p>
438
+ /// <p>this line have text decoration line </p>
439
+ /// <p>this line have text decoration line </p>
440
+ /// </div>
441
+ /// <p>sample of the line-height with 0.875rem between the lines = lineheight-0.8</p>
442
+ /// <div class="lineheight-0.8">
443
+ /// <p>this line have text decoration line </p>
444
+ /// <p>this line have text decoration line </p>
445
+ /// <p>this line have text decoration line </p>
446
+ /// </div>
447
+ @each $lineheight-prop, $lineheight-value in $lineheight {
448
+
449
+ #{".#{$lineheight-prop}"}{
450
+
451
+ line-height: $lineheight-value ;
452
+
453
+ }
454
+ }
455
+ /* End Line Height properties */
456
+
457
+ /* The Line Break properties */
458
+ ///
459
+ /// The linebreak property sets.
460
+ /// @group linebreak
461
+ /// @name linebreak
462
+ /// @link src/scss/utilities/_variables_text.scss
463
+ /// @since 1.0.0
464
+ /// @author Serge Cools
465
+ ///
466
+ /// Applies to: all elements
467
+ ///
468
+ /// @require {variable} $linebreak
469
+ /// @example scss - linebreak class
470
+ /// @each $linebreak-prop, $linebreak-value in $linebreak {
471
+ /// #{".#{$linebreak-prop}"}{
472
+ /// line-break: $linebreak-value ;
473
+ /// }
474
+ /// }
475
+ /// @example html - use Line Break class
476
+ /// <div lang="ja">
477
+ /// <p class="wrapbox-1 linebreak-auto">
478
+ /// auto:<br />そこは湖のほとりで木々が輝いていた。<br />その景色に、美しいなぁと思わずつぶやいた。
479
+ /// </p>
480
+ /// <p class="wrapbox-1 linebreak-loose">
481
+ /// loose:<br />そこは湖のほとりで木々が輝いていた。<br />その景色に、美しいなぁと思わずつぶやいた。
482
+ /// </p>
483
+ /// <p class="wrapbox-1 linebreak-normal">
484
+ /// normal:<br />そこは湖のほとりで木々が輝いていた。<br />その景色に、美しいなぁと思わずつぶやいた。
485
+ /// </p>
486
+ /// <p class="wrapbox-1 linebreak-strict">
487
+ /// strict:<br />そこは湖のほとりで木々が輝いていた。<br />その景色に、美しいなぁと思わずつぶやいた。
488
+ /// </p>
489
+ /// <p class="wrapbox-1 linebreak-anywhere">
490
+ /// anywhere:<br />そこは湖のほとりで木々が輝いていた。<br />その景色に、美しいなぁと思わずつぶやいた。
491
+ /// </p>
492
+ /// </div>
493
+ @each $linebreak-prop, $linebreak-value in $linebreak {
494
+
495
+ #{".#{$linebreak-prop}"}{
496
+
497
+ line-break: $linebreak-value ;
498
+
499
+ }
500
+ }
501
+ /* End Line Break properties */
502
+
503
+ /* The Line Style Type properties */
504
+ ///
505
+ /// The liststyletype property sets.
506
+ /// @group liststyletype
507
+ /// @name liststyletype
508
+ /// @link src/scss/utilities/_variables_text.scss
509
+ /// @since 1.0.0
510
+ /// @author Serge Cools
511
+ ///
512
+ /// Applies to: all elements
513
+ ///
514
+ /// @require {variable} $liststyletype
515
+ /// @example scss - liststyletype class
516
+ /// @each $liststyletype-prop, $liststyletype-value in $liststyletype {
517
+ /// #{".#{$liststyletype-prop}"}{
518
+ /// list-style-type: $liststyletype-value ;
519
+ /// }
520
+ /// }
521
+ /// @example html - use List Style Typeine class
522
+ /// <div>
523
+ /// <ul class="wrapbox-2 list-none">
524
+ /// List 1 - list Style: none
525
+ /// <li>List Item 1-1</li>
526
+ /// <li>List Item 1-2</li>
527
+ /// <li>List Item 1-3</li>
528
+ /// <li>List Item 1-4</li>
529
+ /// </ul>
530
+ /// <ul class="wrapbox-2 list-circle">
531
+ /// List 2 - list Style: circle
532
+ /// <li>List Item 2-1</li>
533
+ /// <li>List Item 2-2</li>
534
+ /// <li>List Item 2-3</li>
535
+ /// <li>List Item 2-4</li>
536
+ /// </ul>
537
+ /// <ul class="wrapbox-2 list-disc">
538
+ /// List 3 - list Style: disc
539
+ /// <li>List Item 3-1</li>
540
+ /// <li>List Item 3-2</li>
541
+ /// <li>List Item 3-3</li>
542
+ /// <li>List Item 3-4</li>
543
+ /// </ul>
544
+ /// <ul class="wrapbox-2 list-square">
545
+ /// List 4 - list Style: square
546
+ /// <li>List Item 4-1</li>
547
+ /// <li>List Item 4-2</li>
548
+ /// <li>List Item 4-3</li>
549
+ /// <li>List Item 4-4</li>
550
+ /// </ul>
551
+ /// <ul class="wrapbox-2 list-decimal">
552
+ /// List 5 - list Style: decimal
553
+ /// <li>List Item 5-1</li>
554
+ /// <li>List Item 5-2</li>
555
+ /// <li>List Item 5-3</li>
556
+ /// <li>List Item 5-4</li>
557
+ /// </ul>
558
+ /// <ul class="wrapbox-2 list-decimal-zero">
559
+ /// List 6 - list Style: decimal-leading-zero
560
+ /// <li>List Item 6-1</li>
561
+ /// <li>List Item 6-2</li>
562
+ /// <li>List Item 6-3</li>
563
+ /// <li>List Item 7-4</li>
564
+ /// </ul>
565
+ /// <ul class="wrapbox-2 list-l-alpha">
566
+ /// List 7 - list Style: lower-alpha
567
+ /// <li>List Item 7-1</li>
568
+ /// <li>List Item 7-2</li>
569
+ /// <li>List Item 7-3</li>
570
+ /// <li>List Item 7-4</li>
571
+ /// </ul>
572
+ /// <ul class="wrapbox-2 list-l-greek">
573
+ /// List 8 - list Style: lower-greek
574
+ /// <li>List Item 8-1</li>
575
+ /// <li>List Item 8-2</li>
576
+ /// <li>List Item 8-3</li>
577
+ /// <li>List Item 8-4</li>
578
+ /// </ul>
579
+ /// <ul class="wrapbox-2 list-l-latin">
580
+ /// List 9 - list Style: lower-latin
581
+ /// <li>List Item 9-1</li>
582
+ /// <li>List Item 9-2</li>
583
+ /// <li>List Item 9-3</li>
584
+ /// <li>List Item 9-4</li>
585
+ /// </ul>
586
+ /// <ul class="wrapbox-2 list-l-roman">
587
+ /// List 10 - list Style: lower-roman
588
+ /// <li>List Item 10-1</li>
589
+ /// <li>List Item 10-2</li>
590
+ /// <li>List Item 10-3</li>
591
+ /// <li>List Item 10-4</li>
592
+ /// </ul>
593
+ /// <ul class="wrapbox-2 list-u-alpha">
594
+ /// List 7 - list Style: upper-alpha
595
+ /// <li>List Item 7-1</li>
596
+ /// <li>List Item 7-2</li>
597
+ /// <li>List Item 7-3</li>
598
+ /// <li>List Item 7-4</li>
599
+ /// </ul>
600
+ /// <ul class="wrapbox-2 list-u-greek">
601
+ /// List 8 - list Style: upper-greek
602
+ /// <li>List Item 8-1</li>
603
+ /// <li>List Item 8-2</li>
604
+ /// <li>List Item 8-3</li>
605
+ /// <li>List Item 8-4</li>
606
+ /// </ul>
607
+ /// <ul class="wrapbox-2 list-u-latin">
608
+ /// List 9 - list Style: upper-latin
609
+ /// <li>List Item 9-1</li>
610
+ /// <li>List Item 9-2</li>
611
+ /// <li>List Item 9-3</li>
612
+ /// <li>List Item 9-4</li>
613
+ /// </ul>
614
+ /// <ul class="wrapbox-2 list-u-roman">
615
+ /// List 10 - list Style: upper-roman
616
+ /// <li>List Item 10-1</li>
617
+ /// <li>List Item 10-2</li>
618
+ /// <li>List Item 10-3</li>
619
+ /// <li>List Item 10-4</li>
620
+ /// </ul>
621
+ /// </div>
622
+ @each $liststyletype-prop, $liststyletype-value in $liststyletype {
623
+
624
+ #{".#{$liststyletype-prop}"}{
625
+
626
+ list-style-type: $liststyletype-value ;
627
+
628
+ }
629
+ }
630
+ /* End Line Style Type properties */
631
+
632
+ /* The Line Style Position properties */
633
+ ///
634
+ /// The liststyleposition property sets.
635
+ /// @group liststyleposition
636
+ /// @name liststyleposition
637
+ /// @link src/scss/utilities/_variables_text.scss
638
+ /// @since 1.0.0
639
+ /// @author Serge Cools
640
+ ///
641
+ /// Applies to: all elements
642
+ ///
643
+ /// @require {variable} $liststyleposition
644
+ /// @example scss - liststyleposition class
645
+ /// @each $liststyleposition-prop, $liststyleposition-value in $liststyleposition {
646
+ /// #{".#{$liststyleposition-prop}"}{
647
+ /// list-style-position: $liststyleposition-value ;
648
+ /// }
649
+ /// }
650
+ /// @example html - use List Style Position class
651
+ /// <ul class="list-inside list-decimal">
652
+ /// List 1
653
+ /// <li>List Item 1-1</li>
654
+ /// <li>List Item 1-2</li>
655
+ /// <li>List Item 1-3</li>
656
+ /// <li>List Item 1-4</li>
657
+ /// </ul>
658
+ /// <ul class="list-outside list-l-roman">
659
+ /// List 2
660
+ /// <li>List Item 2-1</li>
661
+ /// <li>List Item 2-2</li>
662
+ /// <li>List Item 2-3</li>
663
+ /// <li>List Item 2-4</li>
664
+ /// </ul>
665
+ @each $liststyleposition-prop, $liststyleposition-value in $liststyleposition {
666
+
667
+ #{".#{$liststyleposition-prop}"}{
668
+
669
+ list-style-position: $liststyleposition-value ;
670
+
671
+ }
672
+ }
673
+ /* End Line Style Position properties */
674
+
675
+ /* The text align and text align last properties */
676
+
677
+ ///
678
+ /// The text-align-last property sets the Text align.
679
+ /// @group Textalign
680
+ /// @name textalign
681
+ /// @link src/scss/utilities/_variables_typography.scss
682
+ /// @since 1.0.0
683
+ /// @author Serge Cools
684
+ ///
685
+ /// Applies to: all elements
686
+ ///
687
+ /// @require {variable} $textalign
688
+ /// @require {variable} $pseudoclasses
689
+ /// @example scss - text align class
690
+ /// @each $textalign-prop, $textalign-value in $textalign {
691
+ /// @each $pseudoclasses-prop, $pseudoclasses-value in $pseudoclasses {
692
+ /// #{".#{$pseudoclasses-value}" + "text-#{$textalign-prop}"+ "#{$pseudoclasses-prop}"}{
693
+ /// text-align: $textalign-value ;
694
+ /// }
695
+ /// @if $textalign-prop != 'justify-all' {
696
+ /// #{".#{$pseudoclasses-value}" + "textlast-#{$textalign-prop}"+ "#{$pseudoclasses-prop}"}{
697
+ /// text-align: $textalign-value ;
698
+ /// }
699
+ /// }
700
+ /// }
701
+ /// }
702
+ /// @example html - use text align line class
703
+ /// <div>
704
+ /// <p class="pb-0.5">Text align left and when hover text align right</p>
705
+ /// <p class="text-left hover:text-right pb-2">So I started to walk into the water. I won't lie to you boys, I was terrified. But I pressed on, and as I made my way past the breakers a strange calm came over me. I don't know if it was divine intervention or the kinship of all living things but I tell you Jerry at that moment, I was a marine biologist.</p>
706
+ /// </div>
707
+ /// <div>
708
+ /// <p class="pb-0.5">Text align center</p>
709
+ /// <p class="text-center pb-2">So I started to walk into the water. I won't lie to you boys, I was terrified. But I pressed on, and as I made my way past the breakers a strange calm came over me. I don't know if it was divine intervention or the kinship of all living things but I tell you Jerry at that moment, I was a marine biologist.</p>
710
+ /// </div>
711
+ /// <div>
712
+ /// <p class="pb-0.5">Text align justify</p>
713
+ /// <p class="text-justify pb-2">So I started to walk into the water. I won't lie to you boys, I was terrified. But I pressed on, and as I made my way past the breakers a strange calm came over me. I don't know if it was divine intervention or the kinship of all living things but I tell you Jerry at that moment, I was a marine biologist.</p>
714
+ /// </div>
715
+ /// <div>
716
+ /// <p class="pb-0.5">Text align justify and Textlast align-start</p>
717
+ /// <p class="text-justify textlast-right pb-2">So I started to walk into the water. I won't lie to you boys, I was terrified. But I pressed on, and as I made my way past the breakers a strange calm came over me. I don't know if it was divine intervention or the kinship of all living things but I tell you Jerry at that moment, I was a marine biologist.</p>
718
+ /// </div>
719
+ @each $textalign-prop, $textalign-value in $textalign {
720
+
721
+ @each $pseudoclasses-prop, $pseudoclasses-value in $pseudoclasses { // make the pseudo classes
722
+
723
+ #{".#{$pseudoclasses-value}" + "text-#{$textalign-prop}"+ "#{$pseudoclasses-prop}"}{
724
+
725
+ text-align: $textalign-value ;
726
+
727
+ }
728
+
729
+ @if $textalign-prop != 'justify-all' {
730
+ #{".#{$pseudoclasses-value}" + "textlast-#{$textalign-prop}"+ "#{$pseudoclasses-prop}"}{
731
+
732
+ text-align-last: $textalign-value ;
733
+
734
+ }
735
+ }
736
+ }
737
+ }
738
+ /* End The text align and text align last properties */
739
+
740
+ /* The text decoration style properties */
741
+
742
+ ///
743
+ /// The text decoration style property.
744
+ /// @group textdecorationstyle
745
+ /// @name textdecorationstyle
746
+ /// @link src/scss/utilities/_variables_typography.scss
747
+ /// @since 1.0.0
748
+ /// @author Serge Cools
749
+ ///
750
+ /// Applies to: all elements
751
+ ///
752
+ /// @require {variable} $textdecorationstyle
753
+ /// @require {variable} $pseudoclasses
754
+ /// @example scss - text decoration style class
755
+ /// @each $textdecorationstyle-prop, $textdecorationstyle-value in $textdecorationstyle {
756
+ /// @each $pseudoclasses-prop, $pseudoclasses-value in $pseudoclasses {
757
+ /// #{".#{$pseudoclasses-value}" + "text-#{$textdecorationstyle-prop}"+ "#{$pseudoclasses-prop}"}{
758
+ /// text-decoration-style: $textdecorationstyle-value;
759
+ /// }
760
+ /// }
761
+ /// }
762
+ /// @example html - use text decoration style class
763
+ /// <div class="underline underline-offset-5 font-1.7 decoration-red-90 decoration-solid decoration-font">
764
+ /// <p>this line have text decoration line </p>
765
+ /// </div>
766
+ /// <div class="underline decoration-5 hover:decoration-wavy hover:decoration-2 decoration-double ">
767
+ /// <p>this line have text decoration style </p>
768
+ /// </div>
769
+ @each $textdecorationstyle-prop, $textdecorationstyle-value in $textdecorationstyle {
770
+
771
+ @each $pseudoclasses-prop, $pseudoclasses-value in $pseudoclasses { // make the pseudo classes
772
+
773
+ #{".#{$pseudoclasses-value}" + "#{$textdecorationstyle-prop}"+ "#{$pseudoclasses-prop}"}{
774
+
775
+ text-decoration-style: $textdecorationstyle-value;
776
+ }
777
+ }
778
+ }
779
+ /* End The text decoration style properties */
780
+
781
+ /* The text decoration thickness properties */
782
+
783
+ ///
784
+ /// The text decoration thickness property.
785
+ /// @group textdecorationthickness
786
+ /// @name textdecorationthickness
787
+ /// @link src/scss/utilities/_variables_typography.scss
788
+ /// @since 1.0.0
789
+ /// @author Serge Cools
790
+ ///
791
+ /// Applies to: all elements
792
+ ///
793
+ /// @require {variable} $textdecorationthickness
794
+ /// @require {variable} $pseudoclasses
795
+ /// @example scss - text decoration style class
796
+ /// @each $textdecorationthickness-prop, $textdecorationthickness-value in $textdecorationthickness {
797
+ /// @each $pseudoclasses-prop, $pseudoclasses-value in $pseudoclasses {
798
+ /// #{".#{$pseudoclasses-value}" + "text-#{$textdecorationthickness-prop}"+ "#{$pseudoclasses-prop}"}{
799
+ /// text-decoration-style: $textdecorationthickness-value;
800
+ /// }
801
+ /// }
802
+ /// }
803
+ /// @example html - use text decoration thickness class
804
+ /// <div class="underline underline-offset-9 font-1.7 decoration-red-90 decoration-solid">
805
+ /// <p>this line have text decoration line </p>
806
+ /// </div>
807
+ /// <div class="underline decoration-5 hover:decoration-2 ">
808
+ /// <p>this line have text decoration thickness </p>
809
+ /// </div>
810
+ @each $textdecorationthickness-prop, $textdecorationthickness-value in $textdecorationthickness {
811
+
812
+ @each $pseudoclasses-prop, $pseudoclasses-value in $pseudoclasses { // make the pseudo classes
813
+
814
+ #{".#{$pseudoclasses-value}" + "#{$textdecorationthickness-prop}"+ "#{$pseudoclasses-prop}"}{
815
+
816
+ text-decoration-thickness: $textdecorationthickness-value;
817
+ }
818
+ }
819
+ }
820
+ /* End The text decoration thickness properties */
821
+
822
+ /* The text transform properties */
823
+
824
+ ///
825
+ /// The text tranform property.
826
+ /// @group texttransform
827
+ /// @name texttransform
828
+ /// @link src/scss/utilities/_variables_typography.scss
829
+ /// @since 1.0.0
830
+ /// @author Serge Cools
831
+ ///
832
+ /// Applies to: all elements
833
+ ///
834
+ /// @require {variable} $texttransform
835
+ /// @require {variable} $pseudoclasses
836
+ /// @example scss - text decoration style class
837
+ /// @each $texttransform-prop, $texttransform-value in $texttransform {
838
+ /// @each $pseudoclasses-prop, $pseudoclasses-value in $pseudoclasses {
839
+ /// #{".#{$pseudoclasses-value}" + "text-#{$texttransform-prop}"+ "#{$pseudoclasses-prop}"}{
840
+ /// text-transform: $texttransform-value;
841
+ /// }
842
+ /// }
843
+ /// }
844
+ /// @example html - use text transform class
845
+ /// <div class="pb-1.5">Example using "none"
846
+ /// <p class="flex flex-row justify-between">
847
+ /// Initial String
848
+ /// <strong>Lorem ipsum dolor sit amet, consectetur adipisicing elit…</strong>
849
+ /// </p>
850
+ /// <p class="flex flex-row justify-between">
851
+ /// text-transform: none
852
+ /// <strong><span class="normalcase">Lorem ipsum dolor sit amet, consectetur adipisicing elit…</span></strong>
853
+ /// </p>
854
+ /// </div>
855
+ /// <div class="pb-1.5">Example using "capitalize" (general)
856
+ /// <p class="flex flex-row justify-between">
857
+ /// Initial String
858
+ /// <strong>Lorem ipsum dolor sit amet, consectetur adipisicing elit…</strong>
859
+ /// </p>
860
+ /// <p class="flex flex-row justify-between">
861
+ /// text-transform: capitalize
862
+ /// <strong><span class="capitalize">Lorem ipsum dolor sit amet, consectetur adipisicing elit…</span></strong>
863
+ /// </p>
864
+ /// </div>
865
+ /// <div class="pb-1.5">Example using "capitalize" (punctuation)
866
+ /// <p class="flex flex-row justify-between">
867
+ /// Initial String
868
+ /// <strong>(this) "is" [a] –short– -test- «for» *the* _css_ ¿capitalize??¡transform!</strong>
869
+ /// </p>
870
+ /// <p class="flex flex-row justify-between">
871
+ /// text-transform: capitalize
872
+ /// <strong><span class="capitalize">(this) "is" [a] –short– -test- «for» *the* _css_ ¿capitalize??¡transform!</span></strong>
873
+ /// </p>
874
+ /// </div>
875
+ /// <div class="pb-1.5">Example using "capitalize" (Symbols)
876
+ /// <p class="flex flex-row justify-between">
877
+ /// Initial String
878
+ /// <strong>ⓐⓑⓒ (ⓓⓔⓕ) —ⓖⓗⓘ— ⓙkl</strong>
879
+ /// </p>
880
+ /// <p class="flex flex-row justify-between">
881
+ /// text-transform: capitalize
882
+ /// <strong><span class="capitalize">ⓐⓑⓒ (ⓓⓔⓕ) —ⓖⓗⓘ— ⓙkl</span></strong>
883
+ /// </p>
884
+ /// </div>
885
+ /// <div class="pb-1.5">Example using "capitalize" (Dutch ij digraph)
886
+ /// <p class="flex flex-row justify-between">
887
+ /// Initial String
888
+ /// <strong>The Dutch word: "ijsland" starts with a digraph.</strong>
889
+ /// </p>
890
+ /// <p class="flex flex-row justify-between">
891
+ /// text-transform: capitalize
892
+ /// <strong><span class="capitalize">The Dutch word: "ijsland" starts with a digraph.</span></strong>
893
+ /// </p>
894
+ /// </div>
895
+ /// <div class="pb-1.5">Example using "uppercase" (general)
896
+ /// <p class="flex flex-row justify-between">
897
+ /// Initial String
898
+ /// <strong>Lorem ipsum dolor sit amet, consectetur adipisicing elit…</strong>
899
+ /// </p>
900
+ /// <p class="flex flex-row justify-between">
901
+ /// text-transform: uppercase
902
+ /// <strong><span class="uppercase">Lorem ipsum dolor sit amet, consectetur adipisicing elit…</span></strong>
903
+ /// </p>
904
+ /// </div>
905
+ /// <div class="pb-1.5">Example using "full-width" (general)
906
+ /// <p class="flex flex-row justify-between">
907
+ /// Initial String
908
+ /// <strong>0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ!"#$%&()*+,-./:;<=>?@{|}~</strong>
909
+ /// </p>
910
+ /// <p class="flex flex-row justify-between">
911
+ /// text-transform: full-width
912
+ /// <strong><span class="fullwidth">0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ!"#$%&()*+,-./:;<=>?@{|}~</span></strong>
913
+ /// </p>
914
+ /// </div>
915
+ /// <div class="pb-1.5">Example using "full-size-kana"
916
+ /// <p class="flex flex-row justify-between">
917
+ /// Initial String
918
+ /// <strong>ァィゥェ ォヵㇰヶ ㇱㇲッㇳ ㇴㇵㇶㇷ ㇸㇹㇺャ ュョㇻㇼ ㇽㇾㇿヮ</strong>
919
+ /// </p>
920
+ /// <p class="flex flex-row justify-between">
921
+ /// text-transform: full-size-kana
922
+ /// <strong><span class="kana">ァィゥェ ォヵㇰヶ ㇱㇲッㇳ ㇴㇵㇶㇷ ㇸㇹㇺャ ュョㇻㇼ ㇽㇾㇿヮ</span></strong>
923
+ /// </p>
924
+ /// </div>
925
+ @each $texttransform-prop, $texttransform-value in $texttransform {
926
+
927
+ @each $pseudoclasses-prop, $pseudoclasses-value in $pseudoclasses { // make the pseudo classes
928
+
929
+ #{".#{$pseudoclasses-value}" + "#{$texttransform-prop}"+ "#{$pseudoclasses-prop}"}{
930
+
931
+ text-transform: $texttransform-value;
932
+ }
933
+ }
934
+ }
935
+ /* End The text transform properties */
936
+
937
+ /* The underline offset properties */
938
+
939
+ ///
940
+ /// The underline offset property sets the Text align.
941
+ /// @group textUnderlineOffset
942
+ /// @name textunderlineoffset
943
+ /// @link src/scss/utilities/_variables_typography.scss
944
+ /// @since 1.0.0
945
+ /// @author Serge Cools
946
+ ///
947
+ /// Applies to: all elements
948
+ ///
949
+ /// @require {variable} $underlineoffset
950
+ /// @require {variable} $pseudoclasses
951
+ /// @example scss - text align class
952
+ /// @each $underlineoffset-prop, $underlineoffset-value in $underlineoffset {
953
+ /// @each $pseudoclasses-prop, $pseudoclasses-value in $pseudoclasses {
954
+ /// #{".#{$pseudoclasses-value}" + "text-#{$underlineoffset-prop}"+ "#{$pseudoclasses-prop}"}{
955
+ /// text-underline-offset: $underlineoffset-value ;
956
+ /// }
957
+ /// }
958
+ /// }
959
+ /// @example html - use underline offset class
960
+ /// <div class="underline underline-offset-9 font-1.7 decoration-red-90">
961
+ /// <p>this line have text decoration line </p>
962
+ /// </div>
963
+ /// <div class="hover:underline font-1.7">
964
+ /// <p>this line have text decoration line </p>
965
+ /// </div>
966
+ @each $underlineoffset-prop, $underlineoffset-value in $underlineoffset {
967
+
968
+ @each $pseudoclasses-prop, $pseudoclasses-value in $pseudoclasses { // make the pseudo classes
969
+
970
+ #{".#{$pseudoclasses-value}" + "#{$underlineoffset-prop}"+ "#{$pseudoclasses-prop}"}{
971
+
972
+ text-underline-offset: $underlineoffset-value ;
973
+
974
+ }
975
+ }
976
+ }
977
+ /* End The underline offset properties */
978
+
979
+ /* The underline position properties */
980
+
981
+ ///
982
+ /// The underline position property sets the Text align.
983
+ /// @group textunderlineoposition
984
+ /// @name textunderlineoposition
985
+ /// @link src/scss/utilities/_variables_typography.scss
986
+ /// @since 1.0.0
987
+ /// @author Serge Cools
988
+ ///
989
+ /// Applies to: all elements
990
+ ///
991
+ /// @require {variable} $textunderlineoposition
992
+ /// @require {variable} $pseudoclasses
993
+ /// @example scss - text align class
994
+ /// @each $textunderlineoposition-prop, $textunderlineoposition-value in $textunderlineoposition {
995
+ /// @each $pseudoclasses-prop, $pseudoclasses-value in $pseudoclasses {
996
+ /// #{".#{$pseudoclasses-value}" + "text-#{$textunderlineoposition-prop}"+ "#{$pseudoclasses-prop}"}{
997
+ /// text-underline-position: $textunderlineoposition-value ;
998
+ /// }
999
+ /// }
1000
+ /// }
1001
+ /// @example html - use underline position class
1002
+ /// <div class="pb-1.5">In this example we set both the paragraphs to have a thick underline. In the horizontal text we use text-underline-position: under; to put the underline below all the descenders.
1003
+ /// <p class="font-1.5 capitalize underline decoration-1">
1004
+ /// Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nullam consectetur ac
1005
+ /// turpis vel laoreet. Nullam volutpat pharetra lorem, sit amet feugiat tortor
1006
+ /// volutpat quis. Nam eget sodales quam. Aliquam accumsan tellus ac erat posuere.
1007
+ /// </p>
1008
+ /// </div>
1009
+ /// <div class="pb-1.5">In the text with a vertical writing-mode set, we can then use values of left or right to make the underline appear on the left or right of the text as required.
1010
+ /// <p class="font-1.5 capitalize underline decoration-1 underline-left" style="writing-mode: vertical-rl;">
1011
+ /// Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nullam consectetur ac
1012
+ /// turpis vel laoreet. Nullam volutpat pharetra lorem, sit amet feugiat tortor
1013
+ /// volutpat quis. Nam eget sodales quam. Aliquam accumsan tellus ac erat posuere.
1014
+ /// </p>
1015
+ /// </div>
1016
+ @each $textunderlineoposition-prop, $textunderlineoposition-value in $textunderlineoposition {
1017
+
1018
+ @each $pseudoclasses-prop, $pseudoclasses-value in $pseudoclasses { // make the pseudo classes
1019
+
1020
+ #{".#{$pseudoclasses-value}" + "#{$textunderlineoposition-prop}"+ "#{$pseudoclasses-prop}"}{
1021
+
1022
+ text-underline-position: $textunderlineoposition-value ;
1023
+
1024
+ }
1025
+ }
1026
+ }
1027
+ /* End The underline position properties */
1028
+
1029
+ /* The vertical align properties */
1030
+
1031
+ ///
1032
+ /// The vertical align property sets the Text align.
1033
+ /// @group textverticalalign
1034
+ /// @name textverticalalign
1035
+ /// @link src/scss/utilities/_variables_typography.scss
1036
+ /// @since 1.0.0
1037
+ /// @author Serge Cools
1038
+ ///
1039
+ /// Applies to: all elements
1040
+ ///
1041
+ /// @require {variable} $textverticalalign
1042
+ /// @require {variable} $percent
1043
+ /// @require {variable} $pseudoclasses
1044
+ /// @example scss - text vertical align class
1045
+ /// @each $textverticalalign-prop, $textverticalalign-value in $textverticalalign {
1046
+ /// @each $pseudoclasses-prop, $pseudoclasses-value in $pseudoclasses {
1047
+ /// #{".#{$pseudoclasses-value}" + "text-#{$textverticalalign-prop}"+ "#{$pseudoclasses-prop}"}{
1048
+ /// vertical-align: $textverticalalign-value ;
1049
+ /// }
1050
+ /// }
1051
+ /// }
1052
+ /// @example html - use vertical align class
1053
+ /// <div class="pb-1.5">Vertical alignment in a line box
1054
+ /// <p class="pr-0.5 pl-0.5 underoverline ml-auto mr-auto font-1.5 ">
1055
+ /// top: <img class="vertical-top mr-1" src="../image/star.png" alt="star"/>
1056
+ /// middle: <img class="vertical-middle mr-1" src="../image/star.png" alt="star"/>
1057
+ /// bottom: <img class="vertical-bottom mr-1" src="../image/star.png" alt="star"/>
1058
+ /// super: <img class="vertical-super mr-1" src="../image/star.png" alt="star"/>
1059
+ /// sub: <img class="vertical-sub mr-1" src="../image/star.png" alt="star"/>
1060
+ /// </p>
1061
+ /// <p class="pr-0.5 pl-0.5 underoverline ml-auto mr-auto font-1.5 ">
1062
+ /// text-top: <img class="vertical-texttop mr-1" src="../image/star.png" alt="star"/>
1063
+ /// text-bottom: <img class="vertical-textbottom mr-1" src="../image/star.png" alt="star"/>
1064
+ /// 20%: <img class="vertical-20 mr-1" src="../image/star.png" alt="star"/>
1065
+ /// -100%: <img class="vertical-n100 mr-1" src="../image/star.png" alt="star"/>
1066
+ /// </p>
1067
+ /// </div>
1068
+ @each $textverticalalign-prop, $textverticalalign-value in $textverticalalign {
1069
+
1070
+ @each $pseudoclasses-prop, $pseudoclasses-value in $pseudoclasses { // make the pseudo classes
1071
+
1072
+ #{".#{$pseudoclasses-value}" + "#{$textverticalalign-prop}"+ "#{$pseudoclasses-prop}"}{
1073
+
1074
+ vertical-align: $textverticalalign-value ;
1075
+
1076
+ }
1077
+ }
1078
+ }
1079
+ @each $pseudoclasses-prop, $pseudoclasses-value in $pseudoclasses { // make the pseudo classes
1080
+
1081
+ @each $percent-prop, $percent-value in $percent { // set the opacity off the colors
1082
+
1083
+ #{".#{$pseudoclasses-value}" + "vertical" + "#{$percent-prop}" + "#{$pseudoclasses-prop}"}{
1084
+
1085
+ vertical-align: $percent-value ;
1086
+
1087
+ }
1088
+ }
1089
+ }
1090
+ /* End The vertical align properties */
1091
+
1092
+ /* The white-space properties */
1093
+
1094
+ ///
1095
+ /// The white-space property sets the Text align.
1096
+ /// @group textwhitespace
1097
+ /// @name textwhitespace
1098
+ /// @link src/scss/utilities/_variables_typography.scss
1099
+ /// @since 1.0.0
1100
+ /// @author Serge Cools
1101
+ ///
1102
+ /// Applies to: all elements
1103
+ ///
1104
+ /// @require {variable} $textwhitespace
1105
+ /// @require {variable} $pseudoclasses
1106
+ /// @example scss - white-space class
1107
+ /// @each $textwhitespace-prop, $textwhitespace-value in $textwhitespace {
1108
+ /// @each $pseudoclasses-prop, $pseudoclasses-value in $pseudoclasses {
1109
+ /// #{".#{$pseudoclasses-value}" + "#{$textwhitespace-prop}"+ "#{$pseudoclasses-prop}"}{
1110
+ /// white-space: $textwhitespace-value ;
1111
+ /// }
1112
+ /// }
1113
+ /// }
1114
+ /// @example html - use white-space class
1115
+ /// <div class="pb-1.5 w-15 h-20">white-space: nowrap
1116
+ /// <p class="whitespace-nowrap">
1117
+ /// Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor
1118
+ /// incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis
1119
+ /// nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.
1120
+ /// Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore
1121
+ /// eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt
1122
+ /// in culpa qui officia deserunt mollit anim id est laborum.
1123
+ /// </p>
1124
+ /// </div>
1125
+ /// <div class="pb-1.5 w-15 h-20">white-space: pre-wrap
1126
+ /// <p class="whitespace-prewrap">
1127
+ /// Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor
1128
+ /// incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis
1129
+ /// nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.
1130
+ /// Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore
1131
+ /// eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt
1132
+ /// in culpa qui officia deserunt mollit anim id est laborum.
1133
+ /// </p>
1134
+ /// </div>///
1135
+ @each $textwhitespace-prop, $textwhitespace-value in $textwhitespace {
1136
+
1137
+ @each $pseudoclasses-prop, $pseudoclasses-value in $pseudoclasses { // make the pseudo classes
1138
+
1139
+ #{".#{$pseudoclasses-value}" + "#{$textwhitespace-prop}"+ "#{$pseudoclasses-prop}"}{
1140
+
1141
+ white-space: $textwhitespace-value ;
1142
+
1143
+ }
1144
+ }
1145
+ }
1146
+ /* End The white-space properties */
1147
+
1148
+ /* The Word-break properties */
1149
+
1150
+ ///
1151
+ /// The Word-break property sets the Text align.
1152
+ /// @group wordbreak
1153
+ /// @name wordbreak
1154
+ /// @link src/scss/utilities/_variables_typography.scss
1155
+ /// @since 1.0.0
1156
+ /// @author Serge Cools
1157
+ ///
1158
+ /// Applies to: all elements
1159
+ ///
1160
+ /// @require {variable} $wordbreak
1161
+ /// @require {variable} $pseudoclasses
1162
+ /// @example scss - word break class
1163
+ /// @each $wordbreak-prop, $wordbreak-value in $wordbreak {
1164
+ /// @each $pseudoclasses-prop, $pseudoclasses-value in $pseudoclasses {
1165
+ /// #{".#{$pseudoclasses-value}" + "#{$wordbreak-prop}"+ "#{$pseudoclasses-prop}"}{
1166
+ /// word-break: $wordbreak-value ;
1167
+ /// }
1168
+ /// }
1169
+ /// }
1170
+ /// @example html - use Word-break class
1171
+ /// <div class="pb-1.5 w-perc-3/5">
1172
+ /// <p>1. <code>word-break: normal</code></p>
1173
+ /// <p class="break-normal narrow">
1174
+ /// This is a long and Honorificabilitudinitatibus califragilisticexpialidocious
1175
+ /// Taumatawhakatangihangakoauauotamateaturipukakapikimaungahoronukupokaiwhenuakitanatahu
1176
+ /// グレートブリテンおよび北アイルランド連合王国という言葉は本当に長い言葉
1177
+ /// </p>
1178
+ /// <p>2. <code>word-break: break-all</code></p>
1179
+ /// <p class="break-break narrow">
1180
+ /// This is a long and Honorificabilitudinitatibus califragilisticexpialidocious
1181
+ /// Taumatawhakatangihangakoauauotamateaturipukakapikimaungahoronukupokaiwhenuakitanatahu
1182
+ /// グレートブリテンおよび北アイルランド連合王国という言葉は本当に長い言葉
1183
+ /// </p>
1184
+ /// <p>3. <code>word-break: keep-all</code></p>
1185
+ /// <p class="break-keep narrow">
1186
+ /// This is a long and Honorificabilitudinitatibus califragilisticexpialidocious
1187
+ /// Taumatawhakatangihangakoauauotamateaturipukakapikimaungahoronukupokaiwhenuakitanatahu
1188
+ /// グレートブリテンおよび北アイルランド連合王国という言葉は本当に長い言葉
1189
+ /// </p>
1190
+ /// <p>4. <code>word-break: break-word</code></p>
1191
+ /// <p class="break-word narrow">
1192
+ /// This is a long and Honorificabilitudinitatibus califragilisticexpialidocious
1193
+ /// Taumatawhakatangihangakoauauotamateaturipukakapikimaungahoronukupokaiwhenuakitanatahu
1194
+ /// グレートブリテンおよび北アイルランド連合王国という言葉は本当に長い言葉
1195
+ /// </p>
1196
+ /// </div>
1197
+ @each $wordbreak-prop, $wordbreak-value in $wordbreak {
1198
+
1199
+ @each $pseudoclasses-prop, $pseudoclasses-value in $pseudoclasses { // make the pseudo classes
1200
+
1201
+ #{".#{$pseudoclasses-value}" + "#{$wordbreak-prop}"+ "#{$pseudoclasses-prop}"}{
1202
+
1203
+ word-break: $wordbreak-value ;
1204
+
1205
+ }
1206
+ }
1207
+ }
1208
+ /* End The Word-break properties */
1209
+
1210
+ /* The word Spacing properties */
1211
+ ///
1212
+ /// The wordspacing property sets.
1213
+ /// @group wordspacing
1214
+ /// @name wordspacing
1215
+ /// @link src/scss/utilities/_variables_text.scss
1216
+ /// @since 1.0.0
1217
+ /// @author Serge Cools
1218
+ ///
1219
+ /// Applies to: all elements
1220
+ ///
1221
+ /// @require {variable} $wordspacing
1222
+ /// @example scss - wordspacing class
1223
+ /// @each $wordspacing-prop, $wordspacing-value in $wordspacing {
1224
+ /// #{".#{$wordspacing-prop}"}{
1225
+ /// word-spacing: $wordspacing-value ;
1226
+ /// }
1227
+ /// }
1228
+ /// @example html - use word Spacing class
1229
+ /// <div class="pb-1.5 w-perc-3/5 ">
1230
+ /// <p>1. <code>word-spacing: wordspacing-normal / 0em (0px)</code></p>
1231
+ /// <p class="wordspacing-normal narrow mb-1">this line have text decoration line </p>
1232
+ ///
1233
+ /// <p>2. <code>word-spacing: wordspacing-2 / 0.2em (3.2px)</code></p>
1234
+ /// <p class="wordspacing-2 narrow mb-1">this line have text decoration line </p>
1235
+ ///
1236
+ /// <p>3. <code>word-spacing: wordspacing-5 / 2em (32px)</code></p>
1237
+ /// <p class="wordspacing-5 narrow">this line have text decoration line </p>
1238
+ /// </div>
1239
+ @each $wordspacing-prop, $wordspacing-value in $wordspacing {
1240
+
1241
+ #{".#{$wordspacing-prop}"}{
1242
+
1243
+ word-spacing: $wordspacing-value ;
1244
+
1245
+ }
1246
+ }
1247
+ /* End word Spacing properties */
1248
+
1249
+ /* The Writing mode properties */
1250
+ ///
1251
+ /// The writingmode property sets.
1252
+ /// @group writingmode
1253
+ /// @name writingmode
1254
+ /// @link src/scss/utilities/_variables_text.scss
1255
+ /// @since 1.0.0
1256
+ /// @author Serge Cools
1257
+ ///
1258
+ /// Applies to: all elements
1259
+ ///
1260
+ /// @require {variable} $writingmode
1261
+ /// @example scss - Writing mode class
1262
+ /// @each $writingmode-prop, $writingmode-value in $writingmode {
1263
+ /// #{".#{$writingmode-prop}"}{
1264
+ /// writing-mode: $writingmode-value ;
1265
+ /// }
1266
+ /// }
1267
+ /// @example html - use Writing modeg class
1268
+ /// <h4 id="result">Result</h4>
1269
+ /// <p>This image shows what the output should look like, in case your browser's support for <code>writing-mode</code> is incomplete:</p>
1270
+ /// <p>
1271
+ /// <img src="../image/screenshot_2020-02-05_21-04-30.png" alt="A 6 rows by 5 columns table showing the various directional flow of text and number adjusted using the vertical-lr or rl, horizontal-lr or rl, sideways-lr or rl horizontal-tb CSS properties. The flow is applied to different languages" width="493" height="508" loading="lazy">
1272
+ /// </p>
1273
+ /// <table>
1274
+ /// <tr>
1275
+ /// <th>Value</th>
1276
+ /// <th>Vertical script</th>
1277
+ /// <th>Horizontal (LTR) script</th>
1278
+ /// <th>Horizontal (RTL) script</th>
1279
+ /// <th>Mixed script</th>
1280
+ /// </tr>
1281
+ /// <tr>
1282
+ /// <td>horizontal-tb</td>
1283
+ /// <td class="writingmode-tb"><span>我家没有电脑。</span></td>
1284
+ /// <td class="writingmode-tb"><span>Example text</span></td>
1285
+ /// <td class="writingmode-tb"><span>מלל ארוך לדוגמא</span></td>
1286
+ /// <td class="writingmode-tb"><span>1994年に至っては</span></td>
1287
+ /// </tr>
1288
+ /// <tr>
1289
+ /// <td>vertical-lr</td>
1290
+ /// <td class="writingmode-lr"><span>我家没有电脑。</span></td>
1291
+ /// <td class="writingmode-lr"><span>Example text</span></td>
1292
+ /// <td class="writingmode-lr"><span>מלל ארוך לדוגמא</span></td>
1293
+ /// <td class="writingmode-lr"><span>1994年に至っては</span></td>
1294
+ /// </tr>
1295
+ /// <tr>
1296
+ /// <td>vertical-rl</td>
1297
+ /// <td class="writingmode-rl"><span>我家没有电脑。</span></td>
1298
+ /// <td class="writingmode-rl"><span>Example text</span></td>
1299
+ /// <td class="writingmode-rl"><span>מלל ארוך לדוגמא</span></td>
1300
+ /// <td class="writingmode-rl"><span>1994年に至っては</span></td>
1301
+ /// </tr>
1302
+ /// <tr>
1303
+ /// <td>sideways-lr</td>
1304
+ /// <td class="writingmode-sidelr"><span>我家没有电脑。</span></td>
1305
+ /// <td class="writingmode-sidelr"><span>Example text</span></td>
1306
+ /// <td class="writingmode-sidelr"><span>מלל ארוך לדוגמא</span></td>
1307
+ /// <td class="writingmode-sidelr"><span>1994年に至っては</span></td>
1308
+ /// </tr>
1309
+ /// <tr>
1310
+ /// <td>sideways-rl</td>
1311
+ /// <td class="example Text5"><span>我家没有电脑。</span></td>
1312
+ /// <td class="example Text5"><span>Example text</span></td>
1313
+ /// <td class="example Text5"><span>מלל ארוך לדוגמא</span></td>
1314
+ /// <td class="example Text5"><span>1994年に至っては</span></td>
1315
+ /// </tr>
1316
+ /// </table>
1317
+ @each $writingmode-prop, $writingmode-value in $writingmode {
1318
+
1319
+ #{".#{$writingmode-prop}"}{
1320
+
1321
+ writing-mode: $writingmode-value ;
1322
+
1323
+ }
1324
+ }
1325
+ /* End Writing mode properties */
1326
+
1327
+ /* Modern Text Wrap */
1328
+ .text-balance { text-wrap: balance; }
1329
+ .text-pretty { text-wrap: pretty; }
1330
+ .text-wrap { text-wrap: wrap; }
1331
+ .text-nowrap { text-wrap: nowrap; }