juxscript 1.1.107 → 1.1.109
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.
- package/dom-structure-map.json +1 -1
- package/lib/components/base/BaseComponent.d.ts.map +1 -1
- package/lib/components/base/BaseComponent.js +4 -0
- package/lib/components/base/BaseComponent.ts +6 -0
- package/lib/components/base/LayoutExtensions.d.ts +91 -0
- package/lib/components/base/LayoutExtensions.d.ts.map +1 -0
- package/lib/components/base/LayoutExtensions.js +131 -0
- package/lib/components/base/LayoutExtensions.ts +253 -0
- package/lib/components/stack/BaseStack.d.ts +31 -62
- package/lib/components/stack/BaseStack.d.ts.map +1 -1
- package/lib/components/stack/BaseStack.js +117 -147
- package/lib/components/stack/BaseStack.ts +140 -177
- package/lib/styles/{stack.css → animations.css} +74 -235
- package/lib/styles/modifiers.css +103 -0
- package/lib/styles/stacks.css +82 -0
- package/package.json +1 -1
|
@@ -1,143 +1,10 @@
|
|
|
1
1
|
/* ═══════════════════════════════════════════════════════════════════
|
|
2
|
-
*
|
|
3
|
-
*
|
|
4
|
-
|
|
5
|
-
/* Vertical Stack */
|
|
6
|
-
.jux-vstack {
|
|
7
|
-
display: flex;
|
|
8
|
-
flex-direction: column;
|
|
9
|
-
gap: 1rem; /* Default spacing */
|
|
10
|
-
}
|
|
11
|
-
|
|
12
|
-
.jux-vstack-tight {
|
|
13
|
-
gap: 0.5rem; /* 8px */
|
|
14
|
-
}
|
|
15
|
-
|
|
16
|
-
.jux-vstack-loose {
|
|
17
|
-
gap: 1.5rem; /* 24px */
|
|
18
|
-
}
|
|
19
|
-
|
|
20
|
-
.jux-vstack-none {
|
|
21
|
-
gap: 0;
|
|
22
|
-
}
|
|
23
|
-
|
|
24
|
-
/* Horizontal Stack */
|
|
25
|
-
.jux-hstack {
|
|
26
|
-
display: flex;
|
|
27
|
-
flex-direction: row;
|
|
28
|
-
align-items: center;
|
|
29
|
-
gap: 1rem; /* Default spacing */
|
|
30
|
-
}
|
|
31
|
-
|
|
32
|
-
.jux-hstack-tight {
|
|
33
|
-
gap: 0.5rem;
|
|
34
|
-
}
|
|
35
|
-
|
|
36
|
-
.jux-hstack-loose {
|
|
37
|
-
gap: 1.5rem;
|
|
38
|
-
}
|
|
39
|
-
|
|
40
|
-
.jux-hstack-none {
|
|
41
|
-
gap: 0;
|
|
42
|
-
}
|
|
43
|
-
|
|
44
|
-
/* Z-Stack (Layered/Overlapping) */
|
|
45
|
-
.jux-zstack {
|
|
46
|
-
display: grid;
|
|
47
|
-
grid-template-columns: 1fr;
|
|
48
|
-
grid-template-rows: 1fr;
|
|
49
|
-
position: relative;
|
|
50
|
-
}
|
|
51
|
-
|
|
52
|
-
.jux-zstack > * {
|
|
53
|
-
grid-column: 1;
|
|
54
|
-
grid-row: 1;
|
|
55
|
-
}
|
|
56
|
-
|
|
57
|
-
.jux-zstack-tight > * {
|
|
58
|
-
margin: 0.25rem;
|
|
59
|
-
}
|
|
60
|
-
|
|
61
|
-
.jux-zstack-loose > * {
|
|
62
|
-
margin: 0.75rem;
|
|
63
|
-
}
|
|
64
|
-
|
|
65
|
-
.jux-zstack-none > * {
|
|
66
|
-
margin: 0;
|
|
67
|
-
}
|
|
68
|
-
|
|
69
|
-
/* Stack Alignment Options */
|
|
70
|
-
.jux-stack-start {
|
|
71
|
-
align-items: flex-start;
|
|
72
|
-
}
|
|
73
|
-
|
|
74
|
-
.jux-stack-center {
|
|
75
|
-
align-items: center;
|
|
76
|
-
}
|
|
77
|
-
|
|
78
|
-
.jux-stack-end {
|
|
79
|
-
align-items: flex-end;
|
|
80
|
-
}
|
|
81
|
-
|
|
82
|
-
.jux-stack-stretch {
|
|
83
|
-
align-items: stretch;
|
|
84
|
-
}
|
|
85
|
-
|
|
86
|
-
/* Stack Justification Options */
|
|
87
|
-
.jux-stack-justify-start {
|
|
88
|
-
justify-content: flex-start;
|
|
89
|
-
}
|
|
90
|
-
|
|
91
|
-
.jux-stack-justify-center {
|
|
92
|
-
justify-content: center;
|
|
93
|
-
}
|
|
94
|
-
|
|
95
|
-
.jux-stack-justify-end {
|
|
96
|
-
justify-content: flex-end;
|
|
97
|
-
}
|
|
98
|
-
|
|
99
|
-
.jux-stack-justify-between {
|
|
100
|
-
justify-content: space-between;
|
|
101
|
-
}
|
|
102
|
-
|
|
103
|
-
.jux-stack-justify-around {
|
|
104
|
-
justify-content: space-around;
|
|
105
|
-
}
|
|
106
|
-
|
|
107
|
-
.jux-stack-justify-evenly {
|
|
108
|
-
justify-content: space-evenly;
|
|
109
|
-
}
|
|
110
|
-
|
|
111
|
-
/* Responsive Stacks */
|
|
112
|
-
@media (max-width: 768px) {
|
|
113
|
-
.jux-hstack-responsive {
|
|
114
|
-
flex-direction: column;
|
|
115
|
-
}
|
|
116
|
-
}
|
|
117
|
-
|
|
118
|
-
/* Stack with Dividers */
|
|
119
|
-
.jux-vstack-divider > *:not(:last-child) {
|
|
120
|
-
padding-bottom: 1rem;
|
|
121
|
-
border-bottom: 1px solid #e4e4e7;
|
|
122
|
-
margin-bottom: 1rem;
|
|
123
|
-
}
|
|
124
|
-
|
|
125
|
-
.jux-hstack-divider > *:not(:last-child) {
|
|
126
|
-
padding-right: 1rem;
|
|
127
|
-
border-right: 1px solid #e4e4e7;
|
|
128
|
-
margin-right: 1rem;
|
|
129
|
-
}
|
|
130
|
-
|
|
131
|
-
.jux-zstack-divider > * {
|
|
132
|
-
border: 1px solid #e4e4e7;
|
|
133
|
-
}
|
|
134
|
-
|
|
135
|
-
/* ═══════════════════════════════════════════════════════════════════
|
|
136
|
-
* ANIMATION & TRANSITION CLASSES
|
|
2
|
+
* JUX ANIMATION SYSTEM
|
|
3
|
+
* Keyframes, animation classes, speed/timing modifiers
|
|
137
4
|
* ═══════════════════════════════════════════════════════════════════ */
|
|
138
5
|
|
|
139
6
|
/* ═════════════════════════════════════════════════════════════════
|
|
140
|
-
* KEYFRAME DEFINITIONS
|
|
7
|
+
* KEYFRAME DEFINITIONS
|
|
141
8
|
* ═════════════════════════════════════════════════════════════════ */
|
|
142
9
|
|
|
143
10
|
@keyframes jux-fade-in {
|
|
@@ -216,127 +83,99 @@
|
|
|
216
83
|
}
|
|
217
84
|
|
|
218
85
|
/* ═════════════════════════════════════════════════════════════════
|
|
219
|
-
*
|
|
86
|
+
* CONTAINER-LEVEL ANIMATIONS (Apply to element itself)
|
|
220
87
|
* ═════════════════════════════════════════════════════════════════ */
|
|
221
88
|
|
|
222
|
-
.jux-stack-fade-in {
|
|
223
|
-
|
|
224
|
-
}
|
|
225
|
-
|
|
226
|
-
.jux-stack-slide-
|
|
227
|
-
|
|
228
|
-
}
|
|
229
|
-
|
|
230
|
-
.jux-stack-
|
|
231
|
-
|
|
232
|
-
}
|
|
233
|
-
|
|
234
|
-
.jux-stack-
|
|
235
|
-
|
|
236
|
-
}
|
|
89
|
+
.jux-stack-fade-in { animation: jux-fade-in 0.3s ease-out; }
|
|
90
|
+
.jux-stack-slide-up { animation: jux-slide-in-up 0.4s ease-out; }
|
|
91
|
+
.jux-stack-slide-down { animation: jux-slide-in-down 0.4s ease-out; }
|
|
92
|
+
.jux-stack-slide-left { animation: jux-slide-in-left 0.4s ease-out; }
|
|
93
|
+
.jux-stack-slide-right { animation: jux-slide-in-right 0.4s ease-out; }
|
|
94
|
+
.jux-stack-scale-in { animation: jux-scale-in 0.3s cubic-bezier(0.34, 1.56, 0.64, 1); }
|
|
95
|
+
.jux-stack-zoom-in { animation: jux-zoom-in 0.4s cubic-bezier(0.34, 1.56, 0.64, 1); }
|
|
96
|
+
.jux-stack-rotate-in { animation: jux-rotate-in 0.5s ease-out; }
|
|
97
|
+
.jux-stack-flip-x { animation: jux-flip-in-x 0.6s ease-out; }
|
|
98
|
+
.jux-stack-flip-y { animation: jux-flip-in-y 0.6s ease-out; }
|
|
99
|
+
.jux-stack-bounce-in { animation: jux-bounce-in 0.6s cubic-bezier(0.68, -0.55, 0.265, 1.55); }
|
|
100
|
+
.jux-stack-elastic-in { animation: jux-elastic-in 0.8s ease-out; }
|
|
101
|
+
.jux-stack-blur-in { animation: jux-blur-in 0.5s ease-out; }
|
|
102
|
+
.jux-stack-glow { animation: jux-glow-pulse 2s ease-in-out infinite; }
|
|
237
103
|
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
.jux-stack-scale-in {
|
|
243
|
-
animation: jux-scale-in 0.3s cubic-bezier(0.34, 1.56, 0.64, 1);
|
|
244
|
-
}
|
|
245
|
-
|
|
246
|
-
.jux-stack-zoom-in {
|
|
247
|
-
animation: jux-zoom-in 0.4s cubic-bezier(0.34, 1.56, 0.64, 1);
|
|
248
|
-
}
|
|
104
|
+
/* ═════════════════════════════════════════════════════════════════
|
|
105
|
+
* ITEM-LEVEL ANIMATIONS (Apply to direct children)
|
|
106
|
+
* ═════════════════════════════════════════════════════════════════ */
|
|
249
107
|
|
|
250
|
-
.jux-stack-
|
|
251
|
-
|
|
252
|
-
}
|
|
108
|
+
.jux-stack-fade-in-items > * { animation: jux-fade-in 0.3s ease-out; }
|
|
109
|
+
.jux-stack-slide-up-items > * { animation: jux-slide-in-up 0.4s ease-out; }
|
|
110
|
+
.jux-stack-slide-down-items > * { animation: jux-slide-in-down 0.4s ease-out; }
|
|
111
|
+
.jux-stack-slide-left-items > * { animation: jux-slide-in-left 0.4s ease-out; }
|
|
112
|
+
.jux-stack-slide-right-items > * { animation: jux-slide-in-right 0.4s ease-out; }
|
|
113
|
+
.jux-stack-scale-in-items > * { animation: jux-scale-in 0.3s cubic-bezier(0.34, 1.56, 0.64, 1); }
|
|
114
|
+
.jux-stack-zoom-in-items > * { animation: jux-zoom-in 0.4s cubic-bezier(0.34, 1.56, 0.64, 1); }
|
|
115
|
+
.jux-stack-rotate-in-items > * { animation: jux-rotate-in 0.5s ease-out; }
|
|
116
|
+
.jux-stack-flip-x-items > * { animation: jux-flip-in-x 0.6s ease-out; }
|
|
117
|
+
.jux-stack-flip-y-items > * { animation: jux-flip-in-y 0.6s ease-out; }
|
|
118
|
+
.jux-stack-bounce-in-items > * { animation: jux-bounce-in 0.6s cubic-bezier(0.68, -0.55, 0.265, 1.55); }
|
|
119
|
+
.jux-stack-elastic-in-items > * { animation: jux-elastic-in 0.8s ease-out; }
|
|
120
|
+
.jux-stack-blur-in-items > * { animation: jux-blur-in 0.5s ease-out; }
|
|
121
|
+
.jux-stack-glow-items > * { animation: jux-glow-pulse 2s ease-in-out infinite; }
|
|
253
122
|
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
123
|
+
/* ═════════════════════════════════════════════════════════════════
|
|
124
|
+
* SPEED MODIFIERS (Override animation duration)
|
|
125
|
+
* ═════════════════════════════════════════════════════════════════ */
|
|
257
126
|
|
|
258
|
-
.jux-stack-
|
|
259
|
-
|
|
260
|
-
}
|
|
127
|
+
.jux-stack-instant,
|
|
128
|
+
.jux-stack-instant > * { animation-duration: 0.15s !important; }
|
|
261
129
|
|
|
262
|
-
.jux-stack-
|
|
263
|
-
|
|
264
|
-
}
|
|
130
|
+
.jux-stack-fast,
|
|
131
|
+
.jux-stack-fast > * { animation-duration: 0.3s !important; }
|
|
265
132
|
|
|
266
|
-
.jux-stack-
|
|
267
|
-
|
|
268
|
-
}
|
|
133
|
+
.jux-stack-normal,
|
|
134
|
+
.jux-stack-normal > * { animation-duration: 0.5s !important; }
|
|
269
135
|
|
|
270
|
-
.jux-stack-
|
|
271
|
-
|
|
272
|
-
}
|
|
136
|
+
.jux-stack-slow,
|
|
137
|
+
.jux-stack-slow > * { animation-duration: 0.8s !important; }
|
|
273
138
|
|
|
274
|
-
.jux-stack-
|
|
275
|
-
|
|
276
|
-
}
|
|
139
|
+
.jux-stack-slower,
|
|
140
|
+
.jux-stack-slower > * { animation-duration: 1.2s !important; }
|
|
277
141
|
|
|
278
142
|
/* ═════════════════════════════════════════════════════════════════
|
|
279
|
-
*
|
|
143
|
+
* TIMING FUNCTIONS (Override easing)
|
|
280
144
|
* ═════════════════════════════════════════════════════════════════ */
|
|
281
145
|
|
|
282
|
-
.jux-stack-
|
|
283
|
-
|
|
284
|
-
}
|
|
146
|
+
.jux-stack-linear,
|
|
147
|
+
.jux-stack-linear > * { animation-timing-function: linear !important; }
|
|
285
148
|
|
|
286
|
-
.jux-stack-
|
|
287
|
-
|
|
288
|
-
}
|
|
149
|
+
.jux-stack-ease,
|
|
150
|
+
.jux-stack-ease > * { animation-timing-function: ease !important; }
|
|
289
151
|
|
|
290
|
-
.jux-stack-
|
|
291
|
-
|
|
292
|
-
}
|
|
152
|
+
.jux-stack-ease-in,
|
|
153
|
+
.jux-stack-ease-in > * { animation-timing-function: ease-in !important; }
|
|
293
154
|
|
|
294
|
-
.jux-stack-
|
|
295
|
-
|
|
296
|
-
}
|
|
297
|
-
|
|
298
|
-
.jux-stack-slide-right-items > * {
|
|
299
|
-
animation: jux-slide-in-right 0.4s ease-out;
|
|
300
|
-
}
|
|
155
|
+
.jux-stack-ease-out,
|
|
156
|
+
.jux-stack-ease-out > * { animation-timing-function: ease-out !important; }
|
|
301
157
|
|
|
302
|
-
.jux-stack-
|
|
303
|
-
|
|
304
|
-
}
|
|
158
|
+
.jux-stack-ease-in-out,
|
|
159
|
+
.jux-stack-ease-in-out > * { animation-timing-function: ease-in-out !important; }
|
|
305
160
|
|
|
306
|
-
.jux-stack-
|
|
307
|
-
|
|
308
|
-
}
|
|
161
|
+
.jux-stack-bounce-timing,
|
|
162
|
+
.jux-stack-bounce-timing > * { animation-timing-function: cubic-bezier(0.68, -0.55, 0.265, 1.55) !important; }
|
|
309
163
|
|
|
310
|
-
.jux-stack-
|
|
311
|
-
|
|
312
|
-
}
|
|
164
|
+
.jux-stack-elastic-timing,
|
|
165
|
+
.jux-stack-elastic-timing > * { animation-timing-function: cubic-bezier(0.34, 1.56, 0.64, 1) !important; }
|
|
313
166
|
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
.jux-stack-flip-y-items > * {
|
|
319
|
-
animation: jux-flip-in-y 0.6s ease-out;
|
|
320
|
-
}
|
|
321
|
-
|
|
322
|
-
.jux-stack-bounce-in-items > * {
|
|
323
|
-
animation: jux-bounce-in 0.6s cubic-bezier(0.68, -0.55, 0.265, 1.55);
|
|
324
|
-
}
|
|
325
|
-
|
|
326
|
-
.jux-stack-elastic-in-items > * {
|
|
327
|
-
animation: jux-elastic-in 0.8s ease-out;
|
|
328
|
-
}
|
|
329
|
-
|
|
330
|
-
.jux-stack-blur-in-items > * {
|
|
331
|
-
animation: jux-blur-in 0.5s ease-out;
|
|
332
|
-
}
|
|
167
|
+
/* ═════════════════════════════════════════════════════════════════
|
|
168
|
+
* DELAY MODIFIERS (Animation start delay)
|
|
169
|
+
* ═════════════════════════════════════════════════════════════════ */
|
|
333
170
|
|
|
334
|
-
.jux-stack-
|
|
335
|
-
|
|
336
|
-
}
|
|
171
|
+
.jux-stack-delay-100 { animation-delay: 100ms !important; }
|
|
172
|
+
.jux-stack-delay-200 { animation-delay: 200ms !important; }
|
|
173
|
+
.jux-stack-delay-300 { animation-delay: 300ms !important; }
|
|
174
|
+
.jux-stack-delay-500 { animation-delay: 500ms !important; }
|
|
175
|
+
.jux-stack-delay-1000 { animation-delay: 1000ms !important; }
|
|
337
176
|
|
|
338
177
|
/* ═════════════════════════════════════════════════════════════════
|
|
339
|
-
* STAGGER DELAYS (
|
|
178
|
+
* STAGGER DELAYS (Sequential item delays)
|
|
340
179
|
* ═════════════════════════════════════════════════════════════════ */
|
|
341
180
|
|
|
342
181
|
.jux-stack-stagger > *:nth-child(1) { animation-delay: 0ms; }
|
|
@@ -351,7 +190,7 @@
|
|
|
351
190
|
.jux-stack-stagger > *:nth-child(10) { animation-delay: 900ms; }
|
|
352
191
|
|
|
353
192
|
/* ═════════════════════════════════════════════════════════════════
|
|
354
|
-
* INTERACTIVE EFFECTS (Hover
|
|
193
|
+
* INTERACTIVE EFFECTS (Hover/Focus transitions)
|
|
355
194
|
* ═════════════════════════════════════════════════════════════════ */
|
|
356
195
|
|
|
357
196
|
.jux-stack-interactive > * {
|
|
@@ -365,7 +204,7 @@
|
|
|
365
204
|
}
|
|
366
205
|
|
|
367
206
|
/* ═════════════════════════════════════════════════════════════════
|
|
368
|
-
*
|
|
207
|
+
* TRANSITION UTILITIES
|
|
369
208
|
* ═════════════════════════════════════════════════════════════════ */
|
|
370
209
|
|
|
371
210
|
.jux-stack-smooth {
|
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
/* ═══════════════════════════════════════════════════════════════════
|
|
2
|
+
* JUX LAYOUT MODIFIERS
|
|
3
|
+
* Utility classes for precision layout control (used by LayoutExtensions)
|
|
4
|
+
* ═══════════════════════════════════════════════════════════════════ */
|
|
5
|
+
|
|
6
|
+
/* ═════════════════════════════════════════════════════════════════
|
|
7
|
+
* DISPLAY UTILITIES
|
|
8
|
+
* ═════════════════════════════════════════════════════════════════ */
|
|
9
|
+
|
|
10
|
+
.jux-display-block { display: block !important; }
|
|
11
|
+
.jux-display-inline { display: inline !important; }
|
|
12
|
+
.jux-display-inline-block { display: inline-block !important; }
|
|
13
|
+
.jux-display-flex { display: flex !important; }
|
|
14
|
+
.jux-display-grid { display: grid !important; }
|
|
15
|
+
.jux-display-none { display: none !important; }
|
|
16
|
+
|
|
17
|
+
/* ═════════════════════════════════════════════════════════════════
|
|
18
|
+
* POSITION UTILITIES
|
|
19
|
+
* ═════════════════════════════════════════════════════════════════ */
|
|
20
|
+
|
|
21
|
+
.jux-position-static { position: static !important; }
|
|
22
|
+
.jux-position-relative { position: relative !important; }
|
|
23
|
+
.jux-position-absolute { position: absolute !important; }
|
|
24
|
+
.jux-position-fixed { position: fixed !important; }
|
|
25
|
+
.jux-position-sticky { position: sticky !important; }
|
|
26
|
+
|
|
27
|
+
/* ═════════════════════════════════════════════════════════════════
|
|
28
|
+
* OVERFLOW UTILITIES
|
|
29
|
+
* ═════════════════════════════════════════════════════════════════ */
|
|
30
|
+
|
|
31
|
+
.jux-overflow-visible { overflow: visible !important; }
|
|
32
|
+
.jux-overflow-hidden { overflow: hidden !important; }
|
|
33
|
+
.jux-overflow-scroll { overflow: scroll !important; }
|
|
34
|
+
.jux-overflow-auto { overflow: auto !important; }
|
|
35
|
+
|
|
36
|
+
.jux-overflow-x-visible { overflow-x: visible !important; }
|
|
37
|
+
.jux-overflow-x-hidden { overflow-x: hidden !important; }
|
|
38
|
+
.jux-overflow-x-scroll { overflow-x: scroll !important; }
|
|
39
|
+
.jux-overflow-x-auto { overflow-x: auto !important; }
|
|
40
|
+
|
|
41
|
+
.jux-overflow-y-visible { overflow-y: visible !important; }
|
|
42
|
+
.jux-overflow-y-hidden { overflow-y: hidden !important; }
|
|
43
|
+
.jux-overflow-y-scroll { overflow-y: scroll !important; }
|
|
44
|
+
.jux-overflow-y-auto { overflow-y: auto !important; }
|
|
45
|
+
|
|
46
|
+
/* ═════════════════════════════════════════════════════════════════
|
|
47
|
+
* CURSOR UTILITIES
|
|
48
|
+
* ═════════════════════════════════════════════════════════════════ */
|
|
49
|
+
|
|
50
|
+
.jux-cursor-pointer { cursor: pointer !important; }
|
|
51
|
+
.jux-cursor-default { cursor: default !important; }
|
|
52
|
+
.jux-cursor-not-allowed { cursor: not-allowed !important; }
|
|
53
|
+
.jux-cursor-grab { cursor: grab !important; }
|
|
54
|
+
.jux-cursor-grabbing { cursor: grabbing !important; }
|
|
55
|
+
|
|
56
|
+
/* ═════════════════════════════════════════════════════════════════
|
|
57
|
+
* POINTER EVENTS
|
|
58
|
+
* ═════════════════════════════════════════════════════════════════ */
|
|
59
|
+
|
|
60
|
+
.jux-pointer-events-auto { pointer-events: auto !important; }
|
|
61
|
+
.jux-pointer-events-none { pointer-events: none !important; }
|
|
62
|
+
|
|
63
|
+
/* ═════════════════════════════════════════════════════════════════
|
|
64
|
+
* USER SELECT
|
|
65
|
+
* ═════════════════════════════════════════════════════════════════ */
|
|
66
|
+
|
|
67
|
+
.jux-select-auto { user-select: auto !important; }
|
|
68
|
+
.jux-select-none { user-select: none !important; }
|
|
69
|
+
.jux-select-text { user-select: text !important; }
|
|
70
|
+
.jux-select-all { user-select: all !important; }
|
|
71
|
+
|
|
72
|
+
/* ═════════════════════════════════════════════════════════════════
|
|
73
|
+
* TEXT UTILITIES
|
|
74
|
+
* ═════════════════════════════════════════════════════════════════ */
|
|
75
|
+
|
|
76
|
+
.jux-text-left { text-align: left !important; }
|
|
77
|
+
.jux-text-center { text-align: center !important; }
|
|
78
|
+
.jux-text-right { text-align: right !important; }
|
|
79
|
+
.jux-text-justify { text-align: justify !important; }
|
|
80
|
+
|
|
81
|
+
.jux-text-uppercase { text-transform: uppercase !important; }
|
|
82
|
+
.jux-text-lowercase { text-transform: lowercase !important; }
|
|
83
|
+
.jux-text-capitalize { text-transform: capitalize !important; }
|
|
84
|
+
.jux-text-none { text-transform: none !important; }
|
|
85
|
+
|
|
86
|
+
.jux-whitespace-normal { white-space: normal !important; }
|
|
87
|
+
.jux-whitespace-nowrap { white-space: nowrap !important; }
|
|
88
|
+
.jux-whitespace-pre { white-space: pre !important; }
|
|
89
|
+
.jux-whitespace-pre-wrap { white-space: pre-wrap !important; }
|
|
90
|
+
.jux-whitespace-pre-line { white-space: pre-line !important; }
|
|
91
|
+
|
|
92
|
+
.jux-word-wrap-normal { word-wrap: normal !important; }
|
|
93
|
+
.jux-word-wrap-break { word-wrap: break-word !important; }
|
|
94
|
+
|
|
95
|
+
/* ═════════════════════════════════════════════════════════════════
|
|
96
|
+
* BORDER STYLE UTILITIES
|
|
97
|
+
* ═════════════════════════════════════════════════════════════════ */
|
|
98
|
+
|
|
99
|
+
.jux-border-solid { border-style: solid !important; }
|
|
100
|
+
.jux-border-dashed { border-style: dashed !important; }
|
|
101
|
+
.jux-border-dotted { border-style: dotted !important; }
|
|
102
|
+
.jux-border-double { border-style: double !important; }
|
|
103
|
+
.jux-border-none { border-style: none !important; }
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
/* ═══════════════════════════════════════════════════════════════════
|
|
2
|
+
* STACK LAYOUT COMPONENTS
|
|
3
|
+
* Pure layout structure - no animations, no modifiers
|
|
4
|
+
* ═══════════════════════════════════════════════════════════════════ */
|
|
5
|
+
|
|
6
|
+
/* Vertical Stack */
|
|
7
|
+
.jux-vstack {
|
|
8
|
+
display: flex;
|
|
9
|
+
flex-direction: column;
|
|
10
|
+
gap: 1rem;
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
.jux-vstack-tight { gap: 0.5rem; }
|
|
14
|
+
.jux-vstack-loose { gap: 1.5rem; }
|
|
15
|
+
.jux-vstack-none { gap: 0; }
|
|
16
|
+
|
|
17
|
+
/* Horizontal Stack */
|
|
18
|
+
.jux-hstack {
|
|
19
|
+
display: flex;
|
|
20
|
+
flex-direction: row;
|
|
21
|
+
align-items: center;
|
|
22
|
+
gap: 1rem;
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
.jux-hstack-tight { gap: 0.5rem; }
|
|
26
|
+
.jux-hstack-loose { gap: 1.5rem; }
|
|
27
|
+
.jux-hstack-none { gap: 0; }
|
|
28
|
+
|
|
29
|
+
/* Z-Stack (Layered/Overlapping) */
|
|
30
|
+
.jux-zstack {
|
|
31
|
+
display: grid;
|
|
32
|
+
grid-template-columns: 1fr;
|
|
33
|
+
grid-template-rows: 1fr;
|
|
34
|
+
position: relative;
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
.jux-zstack > * {
|
|
38
|
+
grid-column: 1;
|
|
39
|
+
grid-row: 1;
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
.jux-zstack-tight > * { margin: 0.25rem; }
|
|
43
|
+
.jux-zstack-loose > * { margin: 0.75rem; }
|
|
44
|
+
.jux-zstack-none > * { margin: 0; }
|
|
45
|
+
|
|
46
|
+
/* Stack Alignment Options */
|
|
47
|
+
.jux-stack-start { align-items: flex-start; }
|
|
48
|
+
.jux-stack-center { align-items: center; }
|
|
49
|
+
.jux-stack-end { align-items: flex-end; }
|
|
50
|
+
.jux-stack-stretch { align-items: stretch; }
|
|
51
|
+
|
|
52
|
+
/* Stack Justification Options */
|
|
53
|
+
.jux-stack-justify-start { justify-content: flex-start; }
|
|
54
|
+
.jux-stack-justify-center { justify-content: center; }
|
|
55
|
+
.jux-stack-justify-end { justify-content: flex-end; }
|
|
56
|
+
.jux-stack-justify-between { justify-content: space-between; }
|
|
57
|
+
.jux-stack-justify-around { justify-content: space-around; }
|
|
58
|
+
.jux-stack-justify-evenly { justify-content: space-evenly; }
|
|
59
|
+
|
|
60
|
+
/* Responsive Stacks */
|
|
61
|
+
@media (max-width: 768px) {
|
|
62
|
+
.jux-hstack-responsive {
|
|
63
|
+
flex-direction: column;
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
/* Stack with Dividers */
|
|
68
|
+
.jux-vstack-divider > *:not(:last-child) {
|
|
69
|
+
padding-bottom: 1rem;
|
|
70
|
+
border-bottom: 1px solid #e4e4e7;
|
|
71
|
+
margin-bottom: 1rem;
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
.jux-hstack-divider > *:not(:last-child) {
|
|
75
|
+
padding-right: 1rem;
|
|
76
|
+
border-right: 1px solid #e4e4e7;
|
|
77
|
+
margin-right: 1rem;
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
.jux-zstack-divider > * {
|
|
81
|
+
border: 1px solid #e4e4e7;
|
|
82
|
+
}
|