@inc2734/unitone-css 0.94.2 → 0.95.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 (163) hide show
  1. package/dist/app.css +1 -1
  2. package/dist/app.js +1 -1
  3. package/dist/behaviors/dividers.js +1 -0
  4. package/dist/behaviors/index.js +1 -0
  5. package/dist/behaviors/stairs.js +1 -0
  6. package/dist/compatibility/fluid-typography.js +1 -0
  7. package/dist/compatibility/index.js +1 -0
  8. package/dist/layout-primitives/both-sides/react.js +1 -0
  9. package/dist/layout-primitives/center/react.js +1 -0
  10. package/dist/layout-primitives/cluster/react.js +1 -0
  11. package/dist/layout-primitives/container/react.js +1 -0
  12. package/dist/layout-primitives/cover/react.js +1 -0
  13. package/dist/layout-primitives/decorator/react.js +1 -0
  14. package/dist/layout-primitives/float/react.js +1 -0
  15. package/dist/layout-primitives/frame/react.js +1 -0
  16. package/dist/layout-primitives/gutters/react.js +1 -0
  17. package/dist/layout-primitives/index.js +1 -0
  18. package/dist/layout-primitives/layers/react.js +1 -0
  19. package/dist/layout-primitives/marquee/behavior.js +1 -0
  20. package/dist/layout-primitives/marquee/react.js +1 -0
  21. package/dist/layout-primitives/masonry/react.js +1 -0
  22. package/dist/layout-primitives/reel/react.js +1 -0
  23. package/dist/layout-primitives/responsive-grid/react.js +1 -0
  24. package/dist/layout-primitives/stack/react.js +1 -0
  25. package/dist/layout-primitives/switcher/react.js +1 -0
  26. package/dist/layout-primitives/text/react.js +1 -0
  27. package/dist/layout-primitives/texture/react.js +1 -0
  28. package/dist/layout-primitives/vertical-writing/behavior.js +1 -0
  29. package/dist/layout-primitives/vertical-writing/react.js +1 -0
  30. package/dist/layout-primitives/with-sidebar/react.js +1 -0
  31. package/dist/library.js +1 -1
  32. package/package.json +24 -19
  33. package/src/app.js +3 -123
  34. package/src/app.scss +4 -4
  35. package/src/behaviors/_index.scss +43 -0
  36. package/src/{helper → behaviors}/_typography.scss +1 -1
  37. package/src/behaviors/dividers.js +8 -0
  38. package/src/behaviors/index.js +2 -0
  39. package/src/behaviors/stairs.js +8 -0
  40. package/src/compatibility/fluid-typography.js +18 -0
  41. package/src/compatibility/index.js +1 -0
  42. package/src/foundation/_foundation-core.scss +107 -0
  43. package/src/foundation/_foundation.scss +2 -106
  44. package/src/foundation/_index.scss +1 -0
  45. package/src/helper/_helper.scss +2 -42
  46. package/src/layout-primitives/_index.scss +1 -0
  47. package/src/layout-primitives/_layout-primitives-core.scss +41 -0
  48. package/src/layout-primitives/_layout-primitives.scss +2 -42
  49. package/src/layout-primitives/both-sides/_both-sides-core.scss +31 -0
  50. package/src/layout-primitives/both-sides/_both-sides.scss +2 -30
  51. package/src/layout-primitives/both-sides/_index.scss +1 -0
  52. package/src/layout-primitives/both-sides/react.jsx +1 -0
  53. package/src/layout-primitives/center/_center-core.scss +22 -0
  54. package/src/layout-primitives/center/_center.scss +2 -21
  55. package/src/layout-primitives/center/_index.scss +1 -0
  56. package/src/layout-primitives/center/react.jsx +1 -0
  57. package/src/layout-primitives/cluster/_cluster-core.scss +126 -0
  58. package/src/layout-primitives/cluster/_cluster.scss +2 -125
  59. package/src/layout-primitives/cluster/_index.scss +1 -0
  60. package/src/layout-primitives/cluster/react.jsx +3 -0
  61. package/src/layout-primitives/container/_container-core.scss +18 -0
  62. package/src/layout-primitives/container/_container.scss +2 -17
  63. package/src/layout-primitives/container/_index.scss +1 -0
  64. package/src/layout-primitives/container/react.jsx +1 -0
  65. package/src/layout-primitives/cover/_cover-core.scss +80 -0
  66. package/src/layout-primitives/cover/_cover.scss +2 -79
  67. package/src/layout-primitives/cover/_index.scss +1 -0
  68. package/src/layout-primitives/cover/react.jsx +1 -0
  69. package/src/layout-primitives/decorator/_decorator-core.scss +104 -0
  70. package/src/layout-primitives/decorator/_decorator.scss +2 -103
  71. package/src/layout-primitives/decorator/_index.scss +1 -0
  72. package/src/layout-primitives/decorator/react.jsx +1 -0
  73. package/src/layout-primitives/float/_float-core.scss +29 -0
  74. package/src/layout-primitives/float/_float.scss +2 -28
  75. package/src/layout-primitives/float/_index.scss +1 -0
  76. package/src/layout-primitives/float/react.jsx +1 -0
  77. package/src/layout-primitives/frame/_frame-core.scss +36 -0
  78. package/src/layout-primitives/frame/_frame.scss +2 -35
  79. package/src/layout-primitives/frame/_index.scss +1 -0
  80. package/src/layout-primitives/frame/react.jsx +1 -0
  81. package/src/layout-primitives/gutters/_gutters-core.scss +12 -0
  82. package/src/layout-primitives/gutters/_gutters.scss +2 -11
  83. package/src/layout-primitives/gutters/_index.scss +1 -0
  84. package/src/layout-primitives/gutters/react.jsx +1 -0
  85. package/src/layout-primitives/index.js +2 -20
  86. package/src/layout-primitives/layers/_index.scss +1 -0
  87. package/src/layout-primitives/layers/_layers-core.scss +139 -0
  88. package/src/layout-primitives/layers/_layers.scss +2 -138
  89. package/src/layout-primitives/layers/react.jsx +1 -0
  90. package/src/layout-primitives/marquee/_index.scss +1 -0
  91. package/src/layout-primitives/marquee/_marquee-core.scss +73 -0
  92. package/src/layout-primitives/marquee/_marquee.scss +2 -72
  93. package/src/layout-primitives/marquee/behavior.js +8 -0
  94. package/src/layout-primitives/marquee/react.jsx +3 -0
  95. package/src/layout-primitives/masonry/_index.scss +1 -0
  96. package/src/layout-primitives/masonry/_masonry-core.scss +26 -0
  97. package/src/layout-primitives/masonry/_masonry.scss +2 -25
  98. package/src/layout-primitives/masonry/react.jsx +1 -0
  99. package/src/layout-primitives/reel/_index.scss +1 -0
  100. package/src/layout-primitives/reel/_reel-core.scss +55 -0
  101. package/src/layout-primitives/reel/_reel.scss +2 -54
  102. package/src/layout-primitives/reel/react.jsx +1 -0
  103. package/src/layout-primitives/responsive-grid/_index.scss +1 -0
  104. package/src/layout-primitives/responsive-grid/_responsive-grid-core.scss +249 -0
  105. package/src/layout-primitives/responsive-grid/_responsive-grid.scss +2 -248
  106. package/src/layout-primitives/responsive-grid/react.jsx +4 -0
  107. package/src/layout-primitives/stack/_index.scss +1 -0
  108. package/src/layout-primitives/stack/_stack-core.scss +201 -0
  109. package/src/layout-primitives/stack/_stack.scss +2 -200
  110. package/src/layout-primitives/stack/react.jsx +3 -0
  111. package/src/layout-primitives/switcher/_index.scss +1 -0
  112. package/src/layout-primitives/switcher/_switcher-core.scss +70 -0
  113. package/src/layout-primitives/switcher/_switcher.scss +2 -69
  114. package/src/layout-primitives/switcher/react.jsx +3 -0
  115. package/src/layout-primitives/text/_index.scss +1 -0
  116. package/src/layout-primitives/text/_text-core.scss +169 -0
  117. package/src/layout-primitives/text/_text.scss +2 -168
  118. package/src/layout-primitives/text/react.jsx +1 -0
  119. package/src/layout-primitives/texture/_index.scss +1 -0
  120. package/src/layout-primitives/texture/_texture-core.scss +235 -0
  121. package/src/layout-primitives/texture/_texture.scss +2 -234
  122. package/src/layout-primitives/texture/react.jsx +1 -0
  123. package/src/layout-primitives/vertical-writing/_index.scss +1 -0
  124. package/src/layout-primitives/vertical-writing/_vertical-writing-core.scss +118 -0
  125. package/src/layout-primitives/vertical-writing/_vertical-writing.scss +2 -117
  126. package/src/layout-primitives/vertical-writing/behavior.js +8 -0
  127. package/src/layout-primitives/vertical-writing/react.jsx +3 -0
  128. package/src/layout-primitives/with-sidebar/_index.scss +1 -0
  129. package/src/layout-primitives/with-sidebar/_with-sidebar-core.scss +337 -0
  130. package/src/layout-primitives/with-sidebar/_with-sidebar.scss +2 -336
  131. package/src/layout-primitives/with-sidebar/react.jsx +3 -0
  132. package/src/library.js +807 -321
  133. package/src/register-layout-initializer.js +132 -0
  134. package/src/settings/_html.scss +1 -1
  135. package/src/settings/_index.scss +1 -0
  136. package/src/settings/_root.scss +1 -1
  137. package/src/settings/_settings-core.scss +3 -0
  138. package/src/settings/_settings.scss +3 -3
  139. package/src/variables/_index.scss +1 -0
  140. package/src/variables/_variables-core.scss +78 -0
  141. package/src/variables/_variables.scss +2 -77
  142. package/dist/index.js +0 -1
  143. package/src/index.js +0 -1
  144. /package/src/{helper → behaviors}/_align-content.scss +0 -0
  145. /package/src/{helper → behaviors}/_align-items.scss +0 -0
  146. /package/src/{helper → behaviors}/_align-self.scss +0 -0
  147. /package/src/{helper → behaviors}/_align.scss +0 -0
  148. /package/src/{helper → behaviors}/_auto-phrase.scss +0 -0
  149. /package/src/{helper → behaviors}/_auto-repeat.scss +0 -0
  150. /package/src/{helper → behaviors}/_background-clip.scss +0 -0
  151. /package/src/{helper → behaviors}/_gap.scss +0 -0
  152. /package/src/{helper → behaviors}/_gutters.scss +0 -0
  153. /package/src/{helper → behaviors}/_justify-content.scss +0 -0
  154. /package/src/{helper → behaviors}/_justify-items.scss +0 -0
  155. /package/src/{helper → behaviors}/_justify-self.scss +0 -0
  156. /package/src/{helper → behaviors}/_link-decoration.scss +0 -0
  157. /package/src/{helper → behaviors}/_mix-blend-mode.scss +0 -0
  158. /package/src/{helper → behaviors}/_negative-gap.scss +0 -0
  159. /package/src/{helper → behaviors}/_overflow.scss +0 -0
  160. /package/src/{helper → behaviors}/_padding.scss +0 -0
  161. /package/src/{helper → behaviors}/_position.scss +0 -0
  162. /package/src/{helper → behaviors}/_stairs.scss +0 -0
  163. /package/src/{helper → behaviors}/_text-orientation.scss +0 -0
@@ -0,0 +1,169 @@
1
+ @mixin abstract-text() {
2
+ --unitone--gutters: 0px;
3
+ --unitone--max-width: var(--unitone--measure);
4
+
5
+ box-sizing: content-box;
6
+ padding-right: var(--unitone--gutters);
7
+ padding-left: var(--unitone--gutters);
8
+ max-width: none;
9
+
10
+ &[data-unitone-layout*="-gap\:"] {
11
+ --unitone--gap: inherit !important;
12
+ }
13
+
14
+ @for $i from -2 through 7 {
15
+ &[data-unitone-layout~="-gap\:#{ $i }"] {
16
+ --unitone--column-gap: var(--unitone--s#{ $i }) !important;
17
+ }
18
+
19
+ &[data-unitone-layout~="-gap\:#{ $i }"] > * {
20
+ --unitone--text-gap: var(--unitone--s#{ $i }) !important;
21
+ }
22
+ }
23
+
24
+ @for $i from 1 through 7 {
25
+ &[data-unitone-layout~="-gap\:#{ $i }s"] {
26
+ --unitone--column-gap: var(--unitone--s#{ $i }s) !important;
27
+ }
28
+
29
+ &[data-unitone-layout~="-gap\:#{ $i }s"] > * {
30
+ --unitone--text-gap: var(--unitone--s#{ $i }s) !important;
31
+ }
32
+ }
33
+
34
+ @for $i from 2 through 7 {
35
+ &[data-unitone-layout~="-gap\:#{ $i }m"] {
36
+ --unitone--column-gap: var(--unitone--s#{ $i }m) !important;
37
+ }
38
+
39
+ &[data-unitone-layout~="-gap\:#{ $i }m"] > * {
40
+ --unitone--text-gap: var(--unitone--s#{ $i }m) !important;
41
+ }
42
+ }
43
+
44
+ @at-root {
45
+ :where(& > *) {
46
+ margin-right: auto;
47
+ margin-left: auto;
48
+ max-width: min(100%, var(--unitone--max-width));
49
+ }
50
+ }
51
+
52
+ > * {
53
+ --unitone--text-gap-scale: 1;
54
+ --unitone--text-gap: var(--unitone--global--text-gap);
55
+ --unitone--text-gap-increment: 0px;
56
+ }
57
+
58
+ > h1 {
59
+ --unitone--font-size: 4;
60
+ }
61
+
62
+ > h2 {
63
+ --unitone--font-size: 3;
64
+ }
65
+
66
+ > h3 {
67
+ --unitone--font-size: 2;
68
+ }
69
+
70
+ > h4 {
71
+ --unitone--font-size: 1;
72
+ }
73
+
74
+ > h5 {
75
+ --unitone--font-size: 0;
76
+ }
77
+
78
+ > h6 {
79
+ --unitone--font-size: 0;
80
+ }
81
+
82
+ :where(h1, h2, h3, h4, h5, h6) {
83
+ text-wrap: pretty;
84
+ }
85
+
86
+ &:lang(ja) {
87
+ font-feature-settings: "palt" 0;
88
+ font-kerning: none;
89
+
90
+ > :where(h1, h2, h3, h4, h5) {
91
+ font-feature-settings: "palt" 1;
92
+ font-kerning: normal;
93
+ }
94
+ }
95
+
96
+ &:where([data-unitone-layout~="-align\:start"]),
97
+ &:where([data-unitone-layout~="-align\:center"]),
98
+ &:where([data-unitone-layout~="-align\:end"]) {
99
+ max-width: var(--unitone--max-width);
100
+ }
101
+ }
102
+
103
+ @mixin abstract-text--gap() {
104
+ > * {
105
+ --unitone--margin-block: calc(var(--unitone--text-gap-scale) * var(--unitone--text-gap) + var(--unitone--text-gap-increment));
106
+
107
+ margin-right: auto;
108
+ margin-left: auto;
109
+ }
110
+
111
+ // We want to put a larger space than usual before and after paragraphs with large font sizes.
112
+ > * + :where(:not(:is(:last-child, h2, h3, h4, h5, h6))) {
113
+ margin-block-end: var(--unitone--margin-block);
114
+ }
115
+
116
+ > * + * {
117
+ margin-block-start: var(--unitone--margin-block);
118
+ }
119
+
120
+ > :where(h2, h3, h4, h5, h6) {
121
+ --unitone--text-gap-scale: 1.5;
122
+
123
+ & + :where(h2, h3, h4, h5, h6) {
124
+ --unitone--text-gap-scale: 1;
125
+ }
126
+ }
127
+
128
+ > h5 + * {
129
+ --unitone--text-gap-scale: .5;
130
+ }
131
+
132
+ > h6 + * {
133
+ --unitone--text-gap-scale: .5;
134
+ }
135
+ }
136
+
137
+ @mixin abstract-text--column() {
138
+ --unitone--column-gap: var(--unitone--text-gap);
139
+ --unitone--column-width: var(--unitone--measure);
140
+ --unitone--max-width: 100%;
141
+
142
+ margin-right: auto;
143
+ margin-left: auto;
144
+ column-width: var(--unitone--column-width);
145
+ column-gap: calc(var(--unitone--column-gap) + (1em * var(--unitone--half-leading)));
146
+ max-width: var(--unitone--max-width);
147
+
148
+ > * {
149
+ max-width: none;
150
+ }
151
+ }
152
+
153
+ @mixin text() {
154
+ [data-unitone-layout~="text"] {
155
+ @include abstract-text();
156
+ }
157
+
158
+ [data-unitone-layout~="text"]:where([data-unitone-layout~="-gap"]) {
159
+ @include abstract-text--gap();
160
+ }
161
+
162
+ [data-unitone-layout~="text"]:where([data-unitone-layout~="-column"]) {
163
+ @include abstract-text--column();
164
+ }
165
+
166
+ :where([data-unitone-layout~="text"][data-unitone-layout~="-center"]) > * {
167
+ width: fit-content;
168
+ }
169
+ }
@@ -1,169 +1,3 @@
1
- @mixin abstract-text() {
2
- --unitone--gutters: 0px;
3
- --unitone--max-width: var(--unitone--measure);
1
+ @forward './text-core';
4
2
 
5
- box-sizing: content-box;
6
- padding-right: var(--unitone--gutters);
7
- padding-left: var(--unitone--gutters);
8
- max-width: none;
9
-
10
- &[data-unitone-layout*="-gap\:"] {
11
- --unitone--gap: inherit !important;
12
- }
13
-
14
- @for $i from -2 through 7 {
15
- &[data-unitone-layout~="-gap\:#{ $i }"] {
16
- --unitone--column-gap: var(--unitone--s#{ $i }) !important;
17
- }
18
-
19
- &[data-unitone-layout~="-gap\:#{ $i }"] > * {
20
- --unitone--text-gap: var(--unitone--s#{ $i }) !important;
21
- }
22
- }
23
-
24
- @for $i from 1 through 7 {
25
- &[data-unitone-layout~="-gap\:#{ $i }s"] {
26
- --unitone--column-gap: var(--unitone--s#{ $i }s) !important;
27
- }
28
-
29
- &[data-unitone-layout~="-gap\:#{ $i }s"] > * {
30
- --unitone--text-gap: var(--unitone--s#{ $i }s) !important;
31
- }
32
- }
33
-
34
- @for $i from 2 through 7 {
35
- &[data-unitone-layout~="-gap\:#{ $i }m"] {
36
- --unitone--column-gap: var(--unitone--s#{ $i }m) !important;
37
- }
38
-
39
- &[data-unitone-layout~="-gap\:#{ $i }m"] > * {
40
- --unitone--text-gap: var(--unitone--s#{ $i }m) !important;
41
- }
42
- }
43
-
44
- @at-root {
45
- :where(& > *) {
46
- margin-right: auto;
47
- margin-left: auto;
48
- max-width: min(100%, var(--unitone--max-width));
49
- }
50
- }
51
-
52
- > * {
53
- --unitone--text-gap-scale: 1;
54
- --unitone--text-gap: var(--unitone--global--text-gap);
55
- --unitone--text-gap-increment: 0px;
56
- }
57
-
58
- > h1 {
59
- --unitone--font-size: 4;
60
- }
61
-
62
- > h2 {
63
- --unitone--font-size: 3;
64
- }
65
-
66
- > h3 {
67
- --unitone--font-size: 2;
68
- }
69
-
70
- > h4 {
71
- --unitone--font-size: 1;
72
- }
73
-
74
- > h5 {
75
- --unitone--font-size: 0;
76
- }
77
-
78
- > h6 {
79
- --unitone--font-size: 0;
80
- }
81
-
82
- :where(h1, h2, h3, h4, h5, h6) {
83
- text-wrap: pretty;
84
- }
85
-
86
- &:lang(ja) {
87
- font-feature-settings: "palt" 0;
88
- font-kerning: none;
89
-
90
- > :where(h1, h2, h3, h4, h5) {
91
- font-feature-settings: "palt" 1;
92
- font-kerning: normal;
93
- }
94
- }
95
-
96
- &:where([data-unitone-layout~="-align\:start"]),
97
- &:where([data-unitone-layout~="-align\:center"]),
98
- &:where([data-unitone-layout~="-align\:end"]) {
99
- max-width: var(--unitone--max-width);
100
- }
101
- }
102
-
103
- @mixin abstract-text--gap() {
104
- > * {
105
- --unitone--margin-block: calc(var(--unitone--text-gap-scale) * var(--unitone--text-gap) + var(--unitone--text-gap-increment));
106
-
107
- margin-right: auto;
108
- margin-left: auto;
109
- }
110
-
111
- // We want to put a larger space than usual before and after paragraphs with large font sizes.
112
- > * + :where(:not(:is(:last-child, h2, h3, h4, h5, h6))) {
113
- margin-block-end: var(--unitone--margin-block);
114
- }
115
-
116
- > * + * {
117
- margin-block-start: var(--unitone--margin-block);
118
- }
119
-
120
- > :where(h2, h3, h4, h5, h6) {
121
- --unitone--text-gap-scale: 1.5;
122
-
123
- & + :where(h2, h3, h4, h5, h6) {
124
- --unitone--text-gap-scale: 1;
125
- }
126
- }
127
-
128
- > h5 + * {
129
- --unitone--text-gap-scale: .5;
130
- }
131
-
132
- > h6 + * {
133
- --unitone--text-gap-scale: .5;
134
- }
135
- }
136
-
137
- @mixin abstract-text--column() {
138
- --unitone--column-gap: var(--unitone--text-gap);
139
- --unitone--column-width: var(--unitone--measure);
140
- --unitone--max-width: 100%;
141
-
142
- margin-right: auto;
143
- margin-left: auto;
144
- column-width: var(--unitone--column-width);
145
- column-gap: calc(var(--unitone--column-gap) + (1em * var(--unitone--half-leading)));
146
- max-width: var(--unitone--max-width);
147
-
148
- > * {
149
- max-width: none;
150
- }
151
- }
152
-
153
- @mixin text() {
154
- [data-unitone-layout~="text"] {
155
- @include abstract-text();
156
- }
157
-
158
- [data-unitone-layout~="text"]:where([data-unitone-layout~="-gap"]) {
159
- @include abstract-text--gap();
160
- }
161
-
162
- [data-unitone-layout~="text"]:where([data-unitone-layout~="-column"]) {
163
- @include abstract-text--column();
164
- }
165
-
166
- :where([data-unitone-layout~="text"][data-unitone-layout~="-center"]) > * {
167
- width: fit-content;
168
- }
169
- }
3
+ @warn "Deprecated Sass entry '@inc2734/unitone-css/src/layout-primitives/text/text' will be removed in a future release. Use '@inc2734/unitone-css/src/layout-primitives/text' instead.";
@@ -0,0 +1 @@
1
+ export { Text } from './index';
@@ -0,0 +1 @@
1
+ @forward './texture-core';
@@ -0,0 +1,235 @@
1
+ @mixin abstract-texture() {
2
+ --unitone--texture-color: var(--unitone--color--light-gray);
3
+ --unitone--texture-gap: 50px;
4
+ --unitone--texture-size: 1px;
5
+ --unitone--texture-top: 0px;
6
+ --unitone--texture-right: 0px;
7
+ --unitone--texture-bottom: 0px;
8
+ --unitone--texture-left: 0px;
9
+ --unitone--texture-border-radius: 0px;
10
+ --unitone--texture-border-top-left-radius: var(--unitone--texture-border-radius);
11
+ --unitone--texture-border-top-right-radius: var(--unitone--texture-border-radius);
12
+ --unitone--texture-border-bottom-left-radius: var(--unitone--texture-border-radius);
13
+ --unitone--texture-border-bottom-right-radius: var(--unitone--texture-border-radius);
14
+
15
+ position: relative;
16
+
17
+ @at-root {
18
+ :where(#{ & } > *) {
19
+ --unitone--position: relative;
20
+
21
+ position: var(--unitone--position);
22
+ }
23
+ }
24
+
25
+ &::before {
26
+ content: '';
27
+ position: absolute;
28
+ inset:
29
+ var(--unitone--texture-top)
30
+ var(--unitone--texture-right)
31
+ var(--unitone--texture-bottom)
32
+ var(--unitone--texture-left);
33
+ background-position: center;
34
+ border-radius:
35
+ var(--unitone--texture-border-top-left-radius)
36
+ var(--unitone--texture-border-top-right-radius)
37
+ var(--unitone--texture-border-bottom-right-radius)
38
+ var(--unitone--texture-border-bottom-left-radius);
39
+ }
40
+
41
+
42
+ &[data-unitone-layout~="-texture\:dots"]::before {
43
+ background-image:
44
+ radial-gradient(
45
+ var(--unitone--texture-color) var(--unitone--texture-size),
46
+ transparent var(--unitone--texture-size)
47
+ );
48
+ background-size:
49
+ max(var(--unitone--texture-gap), var(--unitone--texture-size) * 2)
50
+ max(var(--unitone--texture-gap), var(--unitone--texture-size) * 2);
51
+ }
52
+
53
+ &[data-unitone-layout~="-texture\:offset-dots"]::before {
54
+ background-image:
55
+ radial-gradient(
56
+ var(--unitone--texture-color) var(--unitone--texture-size),
57
+ transparent var(--unitone--texture-size)
58
+ ),
59
+ radial-gradient(
60
+ var(--unitone--texture-color) var(--unitone--texture-size),
61
+ transparent var(--unitone--texture-size)
62
+ );
63
+ background-position:
64
+ 0
65
+ 0,
66
+ max(var(--unitone--texture-gap) / 2, var(--unitone--texture-size) * 3 / 2)
67
+ max(var(--unitone--texture-gap) / 2, var(--unitone--texture-size) * 3 / 2);
68
+ background-size:
69
+ max(var(--unitone--texture-gap), var(--unitone--texture-size) * 3)
70
+ max(var(--unitone--texture-gap), var(--unitone--texture-size) * 3);
71
+ }
72
+
73
+ &[data-unitone-layout~="-texture\:grid"]::before {
74
+ background-image:
75
+ linear-gradient(
76
+ var(--unitone--texture-color) var(--unitone--texture-size),
77
+ transparent var(--unitone--texture-size)
78
+ ),
79
+ linear-gradient(
80
+ to right,
81
+ var(--unitone--texture-color) var(--unitone--texture-size),
82
+ transparent var(--unitone--texture-size)
83
+ );
84
+ background-size:
85
+ max(var(--unitone--texture-gap), var(--unitone--texture-size) * 2)
86
+ max(var(--unitone--texture-gap), var(--unitone--texture-size) * 2);
87
+ }
88
+
89
+ &[data-unitone-layout~="-texture\:horizontal-stripe"]::before {
90
+ background-image:
91
+ linear-gradient(
92
+ var(--unitone--texture-color) var(--unitone--texture-size),
93
+ transparent var(--unitone--texture-size)
94
+ );
95
+ background-size:
96
+ max(var(--unitone--texture-gap), var(--unitone--texture-size) * 2)
97
+ max(var(--unitone--texture-gap), var(--unitone--texture-size) * 2);
98
+ }
99
+
100
+ &[data-unitone-layout~="-texture\:vertical-stripe"]::before {
101
+ background-image:
102
+ linear-gradient(
103
+ to right,
104
+ var(--unitone--texture-color) var(--unitone--texture-size),
105
+ transparent var(--unitone--texture-size)
106
+ );
107
+ background-size:
108
+ max(var(--unitone--texture-gap), var(--unitone--texture-size) * 2)
109
+ max(var(--unitone--texture-gap), var(--unitone--texture-size) * 2);
110
+ }
111
+
112
+ &[data-unitone-layout~="-texture\:checker-pattern"]::before {
113
+ background-image:
114
+ repeating-linear-gradient(
115
+ 45deg,
116
+ var(--unitone--texture-color) 25%,
117
+ transparent 25%,
118
+ transparent 75%,
119
+ var(--unitone--texture-color) 75%,
120
+ var(--unitone--texture-color)
121
+ ),
122
+ repeating-linear-gradient(
123
+ 45deg,
124
+ var(--unitone--texture-color) 25%,
125
+ transparent 25%,
126
+ transparent 75%,
127
+ var(--unitone--texture-color) 75%,
128
+ var(--unitone--texture-color)
129
+ );
130
+ background-position:
131
+ 0
132
+ 0,
133
+ var(--unitone--texture-gap)
134
+ var(--unitone--texture-gap);
135
+ background-size:
136
+ calc(var(--unitone--texture-gap) * 2)
137
+ calc(var(--unitone--texture-gap) * 2);
138
+ }
139
+
140
+ &[data-unitone-layout~="-texture\:graph-paper"]::before {
141
+ background-image:
142
+ linear-gradient(
143
+ var(--unitone--texture-color) calc(var(--unitone--texture-size) * .8),
144
+ transparent calc(var(--unitone--texture-size) * .8)
145
+ ),
146
+ linear-gradient(
147
+ 90deg,
148
+ var(--unitone--texture-color) calc(var(--unitone--texture-size) * .8),
149
+ transparent calc(var(--unitone--texture-size) * .8)
150
+ ),
151
+ linear-gradient(
152
+ var(--unitone--texture-color) calc(var(--unitone--texture-size) * .5),
153
+ transparent calc(var(--unitone--texture-size) * .5)
154
+ ),
155
+ linear-gradient(
156
+ 90deg,
157
+ var(--unitone--texture-color) calc(var(--unitone--texture-size) * .5),
158
+ transparent calc(var(--unitone--texture-size) * .5)
159
+ );
160
+ background-position:
161
+ calc(var(--unitone--texture-size) * -.8) calc(var(--unitone--texture-size) * -.8),
162
+ calc(var(--unitone--texture-size) * -.8) calc(var(--unitone--texture-size) * -.8),
163
+ calc(var(--unitone--texture-size) * -.5) calc(var(--unitone--texture-size) * -.5),
164
+ calc(var(--unitone--texture-size) * -.5) calc(var(--unitone--texture-size) * -.5);
165
+ background-size:
166
+ max(var(--unitone--texture-gap) * 3, var(--unitone--texture-size) * 30)
167
+ calc(max(var(--unitone--texture-gap) * 3, var(--unitone--texture-size) * 30) * 2),
168
+ calc(max(var(--unitone--texture-gap) * 3, var(--unitone--texture-size) * 30) * 2)
169
+ max(var(--unitone--texture-gap) * 3, var(--unitone--texture-size) * 30),
170
+ calc(max(var(--unitone--texture-gap) * 3, var(--unitone--texture-size) * 30) / 5)
171
+ calc(max(var(--unitone--texture-gap) * 3, var(--unitone--texture-size) * 30) / 5),
172
+ calc(max(var(--unitone--texture-gap) * 3, var(--unitone--texture-size) * 30) / 5)
173
+ calc(max(var(--unitone--texture-gap) * 3, var(--unitone--texture-size) * 30) / 5);
174
+ }
175
+
176
+ &[data-unitone-layout~="-texture\:slash"]::before {
177
+ background-image:
178
+ repeating-linear-gradient(
179
+ 135deg,
180
+ var(--unitone--texture-color) 0,
181
+ var(--unitone--texture-color) var(--unitone--texture-size),
182
+ transparent 0,
183
+ transparent 50%
184
+ );
185
+ background-size:
186
+ max(var(--unitone--texture-gap), var(--unitone--texture-size) * 1.5 + 2px)
187
+ max(var(--unitone--texture-gap), var(--unitone--texture-size) * 1.5 + 2px);
188
+ }
189
+
190
+ &[data-unitone-layout~="-texture\:backslash"]::before {
191
+ background-image:
192
+ repeating-linear-gradient(
193
+ 45deg,
194
+ var(--unitone--texture-color) 0,
195
+ var(--unitone--texture-color) var(--unitone--texture-size),
196
+ transparent 0,
197
+ transparent 50%
198
+ );
199
+ background-size:
200
+ max(var(--unitone--texture-gap), var(--unitone--texture-size) * 1.5 + 2px)
201
+ max(var(--unitone--texture-gap), var(--unitone--texture-size) * 1.5 + 2px);
202
+ }
203
+
204
+ &[data-unitone-layout~="-texture\:wave"]::before {
205
+ background-color: var(--unitone--texture-color);
206
+ border-radius: 0;
207
+ mask-image:
208
+ url('data:image/svg+xml,<svg viewBox="0 0 200 20" xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="none"><path d="M200 0C173.236 0 146.472 2.68557 119.611 8.05762C79.8049 16.0189 39.9025 19.999 0 19.999V0H200Z"/></svg>'),
209
+ url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100" preserveAspectRatio="none"><rect x="0" y="0" height="100" width="100"/></svg>'),
210
+ url('data:image/svg+xml,<svg viewBox="0 0 200 20" xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="none"><path d="M200 19.999H0C26.7642 19.999 53.5284 17.3134 80.3887 11.9414C120.195 3.98014 160.098 2.69917e-07 200 0V19.999Z"/></svg>');
211
+ mask-composite: exclude, subtract;
212
+ mask-position:
213
+ 0 0,
214
+ 0 0,
215
+ 0 100%;
216
+ mask-size:
217
+ 100% max(40px + var(--unitone--texture-size)),
218
+ 100% 100%,
219
+ 100% max(40px + var(--unitone--texture-size));
220
+ mask-repeat:
221
+ repeat-x,
222
+ repeat,
223
+ repeat-x;
224
+ }
225
+
226
+ &[data-unitone-layout~="-texture\:solid-color"]::before {
227
+ background-color: var(--unitone--texture-color);
228
+ }
229
+ }
230
+
231
+ @mixin texture() {
232
+ [data-unitone-layout~="texture"] {
233
+ @include abstract-texture();
234
+ }
235
+ }