@inc2734/unitone-css 0.94.3 → 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 -110
  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 +653 -219
  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,249 @@
1
+ @mixin abstract-responsive-grid() {
2
+ --unitone--auto-repeat: auto-fit;
3
+ --unitone--column-min-width: 240px;
4
+ --unitone--gap: var(--unitone--global--gap);
5
+ --unitone--column-gap: var(--unitone--gap);
6
+ --unitone--row-gap: var(--unitone--gap);
7
+
8
+ display: grid;
9
+ column-gap: var(--unitone--column-gap);
10
+ row-gap: var(--unitone--row-gap);
11
+ grid-template-columns: repeat(var(--unitone--auto-repeat), minmax(min(var(--unitone--column-min-width), 100%), 1fr));
12
+ list-style: none;
13
+
14
+ > * {
15
+ margin: 0;
16
+ min-width: 0;
17
+ }
18
+
19
+ &:where([data-unitone-layout*="-divider\:"]) {
20
+ --unitone--divider-width: 1px;
21
+ --unitone--divider-style: solid;
22
+ --unitone--divider-color: var(--unitone--color--gray);
23
+
24
+ visibility: hidden;
25
+
26
+ &[data-unitone-layout~="divider:initialized"] {
27
+ visibility: visible;
28
+ }
29
+
30
+ > * {
31
+ position: relative;
32
+ }
33
+
34
+ > ::before {
35
+ content: '';
36
+ position: absolute;
37
+ inset: 0;
38
+ user-select: none;
39
+ pointer-events: none;
40
+ border-width: 0;
41
+ border-style: var(--unitone--divider-style);
42
+ border-color: var(--unitone--divider-color);
43
+ }
44
+ }
45
+
46
+ &[data-unitone-layout~="-divider\:stripe"] {
47
+ row-gap: 0;
48
+
49
+ > * {
50
+ padding: calc(var(--unitone--row-gap) + var(--unitone--divider-width)) 0;
51
+
52
+ &::before {
53
+ left: calc(var(--unitone--column-gap) * -1);
54
+ border-width: var(--unitone--divider-width) 0;
55
+ }
56
+ }
57
+
58
+ > [data-unitone-layout~="-bol"]::before {
59
+ left: 0;
60
+ }
61
+
62
+ > [data-unitone-layout~="-linewrap"] {
63
+ padding-top: var(--unitone--row-gap);
64
+
65
+ &::before {
66
+ border-top-width: 0;
67
+ }
68
+ }
69
+ }
70
+
71
+ &[data-unitone-layout~="-divider\:underline"] {
72
+ row-gap: 0;
73
+
74
+ > * {
75
+ padding: 0 0 calc(var(--unitone--row-gap) + var(--unitone--divider-width));
76
+
77
+ &::before {
78
+ left: calc(var(--unitone--column-gap) * -1);
79
+ border-width: 0 0 var(--unitone--divider-width);
80
+ }
81
+ }
82
+
83
+ > [data-unitone-layout~="-bol"]::before {
84
+ left: 0;
85
+ }
86
+
87
+ > [data-unitone-layout~="-linewrap"] {
88
+ padding-top: var(--unitone--row-gap);
89
+ }
90
+ }
91
+
92
+ &[data-unitone-layout~="-divider\:stripe-vertical"] {
93
+ // For vertical layout.
94
+ &[data-unitone-layout~="-stack"] {
95
+ row-gap: 0;
96
+
97
+ > * {
98
+ padding: calc(var(--unitone--row-gap) + var(--unitone--divider-width)) 0;
99
+
100
+ &::before {
101
+ border-width: var(--unitone--divider-width) 0;
102
+ }
103
+ }
104
+
105
+ > [data-unitone-layout~="-linewrap"] {
106
+ padding-top: var(--unitone--row-gap);
107
+
108
+ &::before {
109
+ border-top-width: 0;
110
+ }
111
+ }
112
+ }
113
+
114
+ // For horizontal layout.
115
+ &:not([data-unitone-layout~="-stack"]) {
116
+ column-gap: 0;
117
+
118
+ > * {
119
+ padding: 0 calc(var(--unitone--column-gap) + var(--unitone--divider-width));
120
+
121
+ &::before {
122
+ border-width: 0 var(--unitone--divider-width);
123
+ }
124
+ }
125
+
126
+ > :not([data-unitone-layout~="-bol"]) {
127
+ &::before {
128
+ border-left: 0;
129
+ }
130
+ }
131
+ }
132
+ }
133
+
134
+ &[data-unitone-layout~="-divider\:divide-vertical"] {
135
+ // For vertical layout.
136
+ &[data-unitone-layout~="-stack"] {
137
+ row-gap: 0;
138
+
139
+ // Without this, -stack will be added but there will be times when it does not become one column.
140
+ column-gap: calc(var(--unitone--column-gap) * 2 + var(--unitone--divider-width));
141
+
142
+ > :not(:last-child) {
143
+ padding-bottom: var(--unitone--row-gap);
144
+ }
145
+
146
+ > [data-unitone-layout~="-linewrap"] {
147
+ padding-top: calc(var(--unitone--row-gap) + var(--unitone--divider-width));
148
+
149
+ &::before {
150
+ border-top-width: var(--unitone--divider-width);
151
+ }
152
+ }
153
+ }
154
+
155
+ // For horizontal layout.
156
+ &:not([data-unitone-layout~="-stack"]) {
157
+ column-gap: calc(var(--unitone--column-gap) * 2 + var(--unitone--divider-width));
158
+
159
+ > :not([data-unitone-layout~="-bol"]) {
160
+ &::before {
161
+ left: calc(var(--unitone--column-gap) * -1 - var(--unitone--divider-width));
162
+ border-left-width: var(--unitone--divider-width);
163
+ }
164
+ }
165
+ }
166
+ }
167
+
168
+ &[data-unitone-layout~="-divider\:bordered"] {
169
+ gap: 0;
170
+
171
+ > * {
172
+ padding: calc(var(--unitone--column-gap) + var(--unitone--divider-width));
173
+
174
+ &::before {
175
+ border-width: var(--unitone--divider-width);
176
+ }
177
+ }
178
+
179
+ > :not([data-unitone-layout~="-bol"]) {
180
+ padding-left: var(--unitone--column-gap);
181
+
182
+ &::before {
183
+ border-left-width: 0;
184
+ }
185
+ }
186
+
187
+ > [data-unitone-layout~="-linewrap"] {
188
+ padding-top: var(--unitone--column-gap);
189
+
190
+ &::before {
191
+ border-top-width: 0;
192
+ }
193
+ }
194
+
195
+ &[data-unitone-layout~="-stack"] {
196
+ > * {
197
+ padding: calc(var(--unitone--row-gap) + var(--unitone--divider-width));
198
+ }
199
+
200
+ > [data-unitone-layout~="-linewrap"] {
201
+ padding-top: var(--unitone--row-gap);
202
+ }
203
+ }
204
+ }
205
+
206
+ &:where([data-unitone-layout*="-stairs\:"]) {
207
+ align-items: start;
208
+ padding-bottom: calc(var(--unitone--stairs-step-overflow-volume, 0) * 1px);
209
+ visibility: hidden;
210
+
211
+ &[data-unitone-layout~="stairs:initialized"] {
212
+ visibility: visible;
213
+ }
214
+
215
+ > :where([style*="--unitone--stairs-step:"]) {
216
+ position: relative;
217
+ }
218
+
219
+ &:where(:not([data-unitone-layout~="-stairs-up\:right"])) {
220
+ > * {
221
+ top: calc(var(--unitone--stairs-margin) * var(--unitone--stairs-step));
222
+ }
223
+ }
224
+
225
+ &:where([data-unitone-layout~="-stairs-up\:right"]) {
226
+ > * {
227
+ top: calc(var(--unitone--stairs-margin) * (var(--unitone--max-stairs-step) - var(--unitone--stairs-step)));
228
+ }
229
+ }
230
+
231
+ &:where([data-unitone-layout~="-stairs-up\:up-down"]) {
232
+ > * {
233
+ top: calc(var(--unitone--stairs-margin) * var(--unitone--stairs-step));
234
+ }
235
+ }
236
+
237
+ &:where([data-unitone-layout~="-stairs-up\:down-up"]) {
238
+ > * {
239
+ top: calc(var(--unitone--stairs-margin) * (var(--unitone--max-stairs-step) - var(--unitone--stairs-step)));
240
+ }
241
+ }
242
+ }
243
+ }
244
+
245
+ @mixin responsive-grid() {
246
+ [data-unitone-layout~="responsive-grid"] {
247
+ @include abstract-responsive-grid();
248
+ }
249
+ }
@@ -1,249 +1,3 @@
1
- @mixin abstract-responsive-grid() {
2
- --unitone--auto-repeat: auto-fit;
3
- --unitone--column-min-width: 240px;
4
- --unitone--gap: var(--unitone--global--gap);
5
- --unitone--column-gap: var(--unitone--gap);
6
- --unitone--row-gap: var(--unitone--gap);
1
+ @forward './responsive-grid-core';
7
2
 
8
- display: grid;
9
- column-gap: var(--unitone--column-gap);
10
- row-gap: var(--unitone--row-gap);
11
- grid-template-columns: repeat(var(--unitone--auto-repeat), minmax(min(var(--unitone--column-min-width), 100%), 1fr));
12
- list-style: none;
13
-
14
- > * {
15
- margin: 0;
16
- min-width: 0;
17
- }
18
-
19
- &:where([data-unitone-layout*="-divider\:"]) {
20
- --unitone--divider-width: 1px;
21
- --unitone--divider-style: solid;
22
- --unitone--divider-color: var(--unitone--color--gray);
23
-
24
- visibility: hidden;
25
-
26
- &[data-unitone-layout~="divider:initialized"] {
27
- visibility: visible;
28
- }
29
-
30
- > * {
31
- position: relative;
32
- }
33
-
34
- > ::before {
35
- content: '';
36
- position: absolute;
37
- inset: 0;
38
- user-select: none;
39
- pointer-events: none;
40
- border-width: 0;
41
- border-style: var(--unitone--divider-style);
42
- border-color: var(--unitone--divider-color);
43
- }
44
- }
45
-
46
- &[data-unitone-layout~="-divider\:stripe"] {
47
- row-gap: 0;
48
-
49
- > * {
50
- padding: calc(var(--unitone--row-gap) + var(--unitone--divider-width)) 0;
51
-
52
- &::before {
53
- left: calc(var(--unitone--column-gap) * -1);
54
- border-width: var(--unitone--divider-width) 0;
55
- }
56
- }
57
-
58
- > [data-unitone-layout~="-bol"]::before {
59
- left: 0;
60
- }
61
-
62
- > [data-unitone-layout~="-linewrap"] {
63
- padding-top: var(--unitone--row-gap);
64
-
65
- &::before {
66
- border-top-width: 0;
67
- }
68
- }
69
- }
70
-
71
- &[data-unitone-layout~="-divider\:underline"] {
72
- row-gap: 0;
73
-
74
- > * {
75
- padding: 0 0 calc(var(--unitone--row-gap) + var(--unitone--divider-width));
76
-
77
- &::before {
78
- left: calc(var(--unitone--column-gap) * -1);
79
- border-width: 0 0 var(--unitone--divider-width);
80
- }
81
- }
82
-
83
- > [data-unitone-layout~="-bol"]::before {
84
- left: 0;
85
- }
86
-
87
- > [data-unitone-layout~="-linewrap"] {
88
- padding-top: var(--unitone--row-gap);
89
- }
90
- }
91
-
92
- &[data-unitone-layout~="-divider\:stripe-vertical"] {
93
- // For vertical layout.
94
- &[data-unitone-layout~="-stack"] {
95
- row-gap: 0;
96
-
97
- > * {
98
- padding: calc(var(--unitone--row-gap) + var(--unitone--divider-width)) 0;
99
-
100
- &::before {
101
- border-width: var(--unitone--divider-width) 0;
102
- }
103
- }
104
-
105
- > [data-unitone-layout~="-linewrap"] {
106
- padding-top: var(--unitone--row-gap);
107
-
108
- &::before {
109
- border-top-width: 0;
110
- }
111
- }
112
- }
113
-
114
- // For horizontal layout.
115
- &:not([data-unitone-layout~="-stack"]) {
116
- column-gap: 0;
117
-
118
- > * {
119
- padding: 0 calc(var(--unitone--column-gap) + var(--unitone--divider-width));
120
-
121
- &::before {
122
- border-width: 0 var(--unitone--divider-width);
123
- }
124
- }
125
-
126
- > :not([data-unitone-layout~="-bol"]) {
127
- &::before {
128
- border-left: 0;
129
- }
130
- }
131
- }
132
- }
133
-
134
- &[data-unitone-layout~="-divider\:divide-vertical"] {
135
- // For vertical layout.
136
- &[data-unitone-layout~="-stack"] {
137
- row-gap: 0;
138
-
139
- // Without this, -stack will be added but there will be times when it does not become one column.
140
- column-gap: calc(var(--unitone--column-gap) * 2 + var(--unitone--divider-width));
141
-
142
- > :not(:last-child) {
143
- padding-bottom: var(--unitone--row-gap);
144
- }
145
-
146
- > [data-unitone-layout~="-linewrap"] {
147
- padding-top: calc(var(--unitone--row-gap) + var(--unitone--divider-width));
148
-
149
- &::before {
150
- border-top-width: var(--unitone--divider-width);
151
- }
152
- }
153
- }
154
-
155
- // For horizontal layout.
156
- &:not([data-unitone-layout~="-stack"]) {
157
- column-gap: calc(var(--unitone--column-gap) * 2 + var(--unitone--divider-width));
158
-
159
- > :not([data-unitone-layout~="-bol"]) {
160
- &::before {
161
- left: calc(var(--unitone--column-gap) * -1 - var(--unitone--divider-width));
162
- border-left-width: var(--unitone--divider-width);
163
- }
164
- }
165
- }
166
- }
167
-
168
- &[data-unitone-layout~="-divider\:bordered"] {
169
- gap: 0;
170
-
171
- > * {
172
- padding: calc(var(--unitone--column-gap) + var(--unitone--divider-width));
173
-
174
- &::before {
175
- border-width: var(--unitone--divider-width);
176
- }
177
- }
178
-
179
- > :not([data-unitone-layout~="-bol"]) {
180
- padding-left: var(--unitone--column-gap);
181
-
182
- &::before {
183
- border-left-width: 0;
184
- }
185
- }
186
-
187
- > [data-unitone-layout~="-linewrap"] {
188
- padding-top: var(--unitone--column-gap);
189
-
190
- &::before {
191
- border-top-width: 0;
192
- }
193
- }
194
-
195
- &[data-unitone-layout~="-stack"] {
196
- > * {
197
- padding: calc(var(--unitone--row-gap) + var(--unitone--divider-width));
198
- }
199
-
200
- > [data-unitone-layout~="-linewrap"] {
201
- padding-top: var(--unitone--row-gap);
202
- }
203
- }
204
- }
205
-
206
- &:where([data-unitone-layout*="-stairs\:"]) {
207
- align-items: start;
208
- padding-bottom: calc(var(--unitone--stairs-step-overflow-volume, 0) * 1px);
209
- visibility: hidden;
210
-
211
- &[data-unitone-layout~="stairs:initialized"] {
212
- visibility: visible;
213
- }
214
-
215
- > :where([style*="--unitone--stairs-step:"]) {
216
- position: relative;
217
- }
218
-
219
- &:where(:not([data-unitone-layout~="-stairs-up\:right"])) {
220
- > * {
221
- top: calc(var(--unitone--stairs-margin) * var(--unitone--stairs-step));
222
- }
223
- }
224
-
225
- &:where([data-unitone-layout~="-stairs-up\:right"]) {
226
- > * {
227
- top: calc(var(--unitone--stairs-margin) * (var(--unitone--max-stairs-step) - var(--unitone--stairs-step)));
228
- }
229
- }
230
-
231
- &:where([data-unitone-layout~="-stairs-up\:up-down"]) {
232
- > * {
233
- top: calc(var(--unitone--stairs-margin) * var(--unitone--stairs-step));
234
- }
235
- }
236
-
237
- &:where([data-unitone-layout~="-stairs-up\:down-up"]) {
238
- > * {
239
- top: calc(var(--unitone--stairs-margin) * (var(--unitone--max-stairs-step) - var(--unitone--stairs-step)));
240
- }
241
- }
242
- }
243
- }
244
-
245
- @mixin responsive-grid() {
246
- [data-unitone-layout~="responsive-grid"] {
247
- @include abstract-responsive-grid();
248
- }
249
- }
3
+ @warn "Deprecated Sass entry '@inc2734/unitone-css/src/layout-primitives/responsive-grid/responsive-grid' will be removed in a future release. Use '@inc2734/unitone-css/src/layout-primitives/responsive-grid' instead.";
@@ -0,0 +1,4 @@
1
+ import '../../behaviors/dividers';
2
+ import '../../behaviors/stairs';
3
+
4
+ export { ResponsiveGrid } from './index';
@@ -0,0 +1 @@
1
+ @forward './stack-core';
@@ -0,0 +1,201 @@
1
+ @mixin abstract-stack() {
2
+ --unitone--gap: var(--unitone--global--text-gap);
3
+ --unitone--negative-gap: var(--unitone--global--text-gap);
4
+
5
+ display: flex;
6
+ flex-direction: column;
7
+ gap: var(--unitone--gap);
8
+ list-style: none;
9
+
10
+ > * {
11
+ margin-block-start: 0;
12
+ margin-block-end: 0;
13
+ }
14
+
15
+ > li {
16
+ margin-left: 0;
17
+ }
18
+
19
+ &:only-child {
20
+ height: 100%;
21
+ }
22
+
23
+ &[data-unitone-layout~="-revert"] {
24
+ flex-direction: column-reverse;
25
+ }
26
+
27
+ &:where([data-unitone-layout*="-divider\:"]) {
28
+ --unitone--divider-width: 1px;
29
+ --unitone--divider-style: solid;
30
+ --unitone--divider-color: var(--unitone--color--gray);
31
+
32
+ gap: 0;
33
+
34
+ > * {
35
+ position: relative;
36
+ }
37
+
38
+ > ::before {
39
+ content: '';
40
+ position: absolute;
41
+ inset: 0;
42
+ user-select: none;
43
+ pointer-events: none;
44
+ border-width: 0;
45
+ border-style: var(--unitone--divider-style);
46
+ border-color: var(--unitone--divider-color);
47
+ }
48
+ }
49
+
50
+ &[data-unitone-layout~="-divider\:stripe"] {
51
+ > * {
52
+ padding: calc(var(--unitone--gap) + var(--unitone--divider-width)) 0;
53
+
54
+ &::before {
55
+ border-width: var(--unitone--divider-width) 0;
56
+ }
57
+ }
58
+
59
+ &:where(:not([data-unitone-layout~="-revert"])) {
60
+ > :not(:first-child) {
61
+ padding-top: var(--unitone--gap);
62
+
63
+ &::before {
64
+ border-top-width: 0;
65
+ }
66
+ }
67
+ }
68
+
69
+ &:where([data-unitone-layout~="-revert"]) {
70
+ > :not(:last-child) {
71
+ padding-top: var(--unitone--gap);
72
+
73
+ &::before {
74
+ border-top-width: 0;
75
+ }
76
+ }
77
+ }
78
+ }
79
+
80
+ &[data-unitone-layout~="-divider\:underline"] {
81
+ > * {
82
+ padding-top: var(--unitone--gap);
83
+ padding-bottom: calc(var(--unitone--gap) + var(--unitone--divider-width));
84
+
85
+ &::before {
86
+ border-width: 0 0 var(--unitone--divider-width);
87
+ }
88
+ }
89
+
90
+ &:where(:not([data-unitone-layout~="-revert"])) {
91
+ > :first-child {
92
+ padding-top: 0;
93
+ }
94
+ }
95
+
96
+ &:where([data-unitone-layout~="-revert"]) {
97
+ > :last-child {
98
+ padding-top: 0;
99
+ }
100
+ }
101
+ }
102
+
103
+ &[data-unitone-layout~="-divider\:bordered"] {
104
+ > * {
105
+ padding: calc(var(--unitone--gap) + var(--unitone--divider-width));
106
+
107
+ &::before {
108
+ border-width: var(--unitone--divider-width);
109
+ }
110
+ }
111
+
112
+ &:where(:not([data-unitone-layout~="-revert"])) {
113
+ > :not(:first-child) {
114
+ padding-top: var(--unitone--gap);
115
+
116
+ &::before {
117
+ border-top-width: 0;
118
+ }
119
+ }
120
+ }
121
+
122
+ &:where([data-unitone-layout~="-revert"]) {
123
+ > :not(:last-child) {
124
+ padding-top: var(--unitone--gap);
125
+
126
+ &::before {
127
+ border-top-width: 0;
128
+ }
129
+ }
130
+ }
131
+ }
132
+
133
+ &[data-unitone-layout~="-divider\:divide"] {
134
+ > * {
135
+ padding-top: var(--unitone--gap);
136
+ padding-bottom: calc(var(--unitone--gap) + var(--unitone--divider-width));
137
+ }
138
+
139
+ &:where(:not([data-unitone-layout~="-revert"])) {
140
+ > :first-child {
141
+ padding-top: 0;
142
+ }
143
+
144
+ > :last-child {
145
+ padding-bottom: 0;
146
+ }
147
+
148
+ > :not(:last-child) {
149
+ &::before {
150
+ border-width: 0 0 var(--unitone--divider-width);
151
+ }
152
+ }
153
+ }
154
+
155
+ &:where([data-unitone-layout~="-revert"]) {
156
+ > :first-child {
157
+ padding-bottom: 0;
158
+ }
159
+
160
+ > :last-child {
161
+ padding-top: 0;
162
+ }
163
+
164
+ > :not(:first-child) {
165
+ &::before {
166
+ border-width: 0 0 var(--unitone--divider-width);
167
+ }
168
+ }
169
+ }
170
+ }
171
+
172
+ &[data-unitone-layout~="-negative"] {
173
+ gap: 0;
174
+
175
+ &:where(:not([data-unitone-layout~="-revert"])) {
176
+ > :not(:first-child) {
177
+ margin-top: calc(-1 * var(--unitone--negative-gap));
178
+ }
179
+ }
180
+
181
+ &:where([data-unitone-layout~="-revert"]) {
182
+ > :not(:last-child) {
183
+ margin-top: calc(-1 * var(--unitone--negative-gap));
184
+ }
185
+ }
186
+ }
187
+ }
188
+
189
+ @mixin stack() {
190
+ [data-unitone-layout~="stack"] {
191
+ @include abstract-stack();
192
+
193
+ // @todo
194
+ // Specify a component whose width is specified by max-width of the child element, not by itself.
195
+ > [data-unitone-layout~="text"]:where(:not([data-unitone-layout*="align\:"])) {
196
+ margin-right: 0;
197
+ margin-left: 0;
198
+ max-width: none;
199
+ }
200
+ }
201
+ }