juxscript 1.1.106 → 1.1.108
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/stack/BaseStack.d.ts +24 -46
- package/lib/components/stack/BaseStack.d.ts.map +1 -1
- package/lib/components/stack/BaseStack.js +93 -48
- package/lib/components/stack/BaseStack.ts +124 -49
- package/lib/styles/stack.css +193 -75
- package/package.json +1 -1
package/dom-structure-map.json
CHANGED
|
@@ -73,65 +73,43 @@ export declare abstract class BaseStack extends BaseComponent<StackState> {
|
|
|
73
73
|
fade(startOpacity?: number, step?: number): this;
|
|
74
74
|
blur(startBlur?: number, step?: number): this;
|
|
75
75
|
stagger(baseDelay?: number): this;
|
|
76
|
-
/**
|
|
77
|
-
* Fade in animation
|
|
78
|
-
*/
|
|
79
76
|
fadeIn(): this;
|
|
80
|
-
/**
|
|
81
|
-
* Fade out animation
|
|
82
|
-
*/
|
|
83
|
-
fadeOut(): this;
|
|
84
|
-
/**
|
|
85
|
-
* Slide in from direction
|
|
86
|
-
*/
|
|
87
77
|
slideIn(direction?: 'up' | 'down' | 'left' | 'right'): this;
|
|
88
|
-
/**
|
|
89
|
-
* Scale in animation (subtle)
|
|
90
|
-
*/
|
|
91
78
|
scaleIn(): this;
|
|
92
|
-
/**
|
|
93
|
-
* Zoom in animation (dramatic)
|
|
94
|
-
*/
|
|
95
79
|
zoomIn(): this;
|
|
96
|
-
/**
|
|
97
|
-
* Rotate in animation
|
|
98
|
-
*/
|
|
99
80
|
rotateIn(): this;
|
|
100
|
-
/**
|
|
101
|
-
* Flip in along axis
|
|
102
|
-
*/
|
|
103
81
|
flipIn(axis?: 'x' | 'y'): this;
|
|
104
|
-
/**
|
|
105
|
-
* Bounce in animation
|
|
106
|
-
*/
|
|
107
82
|
bounceIn(): this;
|
|
108
|
-
/**
|
|
109
|
-
* Elastic spring animation
|
|
110
|
-
*/
|
|
111
83
|
elasticIn(): this;
|
|
112
|
-
/**
|
|
113
|
-
* Blur in animation
|
|
114
|
-
*/
|
|
115
84
|
blurIn(): this;
|
|
116
|
-
/**
|
|
117
|
-
* Glow pulse animation (continuous)
|
|
118
|
-
*/
|
|
119
85
|
glow(): this;
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
86
|
+
fadeInItems(): this;
|
|
87
|
+
slideInItems(direction?: 'up' | 'down' | 'left' | 'right'): this;
|
|
88
|
+
scaleInItems(): this;
|
|
89
|
+
zoomInItems(): this;
|
|
90
|
+
rotateInItems(): this;
|
|
91
|
+
flipInItems(axis?: 'x' | 'y'): this;
|
|
92
|
+
bounceInItems(): this;
|
|
93
|
+
elasticInItems(): this;
|
|
94
|
+
blurInItems(): this;
|
|
95
|
+
glowItems(): this;
|
|
96
|
+
instant(): this;
|
|
97
|
+
fast(): this;
|
|
98
|
+
normal(): this;
|
|
99
|
+
slow(): this;
|
|
100
|
+
slower(): this;
|
|
101
|
+
linear(): this;
|
|
102
|
+
ease(): this;
|
|
103
|
+
easeIn(): this;
|
|
104
|
+
easeOut(): this;
|
|
105
|
+
easeInOut(): this;
|
|
106
|
+
bounceTiming(): this;
|
|
107
|
+
elasticTiming(): this;
|
|
108
|
+
delay(ms: 100 | 200 | 300 | 500 | 1000): this;
|
|
123
109
|
staggered(): this;
|
|
124
|
-
/**
|
|
125
|
-
* Make children interactive (hover effects)
|
|
126
|
-
*/
|
|
127
110
|
interactive(): this;
|
|
128
|
-
/**
|
|
129
|
-
* Enable smooth transitions
|
|
130
|
-
*/
|
|
131
111
|
smooth(): this;
|
|
132
|
-
|
|
133
|
-
* Combine animation with stagger
|
|
134
|
-
*/
|
|
112
|
+
smoothItems(): this;
|
|
135
113
|
animateStagger(animation?: 'fade' | 'slide' | 'scale' | 'bounce', direction?: 'up' | 'down' | 'left' | 'right'): this;
|
|
136
114
|
protected buildClasses(): string;
|
|
137
115
|
protected renderChild(child: any, index: number): HTMLElement;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BaseStack.d.ts","sourceRoot":"","sources":["BaseStack.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"BaseStack.d.ts","sourceRoot":"","sources":["BaseStack.ts"],"names":[],"mappings":"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"}
|
|
@@ -160,93 +160,138 @@ export class BaseStack extends BaseComponent {
|
|
|
160
160
|
/* ═════════════════════════════════════════════════════════════════
|
|
161
161
|
* ANIMATION API (Fluent)
|
|
162
162
|
* ═════════════════════════════════════════════════════════════════ */
|
|
163
|
-
|
|
164
|
-
*
|
|
165
|
-
*/
|
|
163
|
+
/* ─────────────────────────────────────────────────────────────────
|
|
164
|
+
* Stack-Level Animations (Animate the container)
|
|
165
|
+
* ───────────────────────────────────────────────────────────────── */
|
|
166
166
|
fadeIn() {
|
|
167
167
|
return this.addClass('jux-stack-fade-in');
|
|
168
168
|
}
|
|
169
|
-
/**
|
|
170
|
-
* Fade out animation
|
|
171
|
-
*/
|
|
172
|
-
fadeOut() {
|
|
173
|
-
return this.addClass('jux-stack-fade-out');
|
|
174
|
-
}
|
|
175
|
-
/**
|
|
176
|
-
* Slide in from direction
|
|
177
|
-
*/
|
|
178
169
|
slideIn(direction = 'up') {
|
|
179
170
|
return this.addClass(`jux-stack-slide-${direction}`);
|
|
180
171
|
}
|
|
181
|
-
/**
|
|
182
|
-
* Scale in animation (subtle)
|
|
183
|
-
*/
|
|
184
172
|
scaleIn() {
|
|
185
173
|
return this.addClass('jux-stack-scale-in');
|
|
186
174
|
}
|
|
187
|
-
/**
|
|
188
|
-
* Zoom in animation (dramatic)
|
|
189
|
-
*/
|
|
190
175
|
zoomIn() {
|
|
191
176
|
return this.addClass('jux-stack-zoom-in');
|
|
192
177
|
}
|
|
193
|
-
/**
|
|
194
|
-
* Rotate in animation
|
|
195
|
-
*/
|
|
196
178
|
rotateIn() {
|
|
197
179
|
return this.addClass('jux-stack-rotate-in');
|
|
198
180
|
}
|
|
199
|
-
/**
|
|
200
|
-
* Flip in along axis
|
|
201
|
-
*/
|
|
202
181
|
flipIn(axis = 'x') {
|
|
203
182
|
return this.addClass(`jux-stack-flip-${axis}`);
|
|
204
183
|
}
|
|
205
|
-
/**
|
|
206
|
-
* Bounce in animation
|
|
207
|
-
*/
|
|
208
184
|
bounceIn() {
|
|
209
185
|
return this.addClass('jux-stack-bounce-in');
|
|
210
186
|
}
|
|
211
|
-
/**
|
|
212
|
-
* Elastic spring animation
|
|
213
|
-
*/
|
|
214
187
|
elasticIn() {
|
|
215
188
|
return this.addClass('jux-stack-elastic-in');
|
|
216
189
|
}
|
|
217
|
-
/**
|
|
218
|
-
* Blur in animation
|
|
219
|
-
*/
|
|
220
190
|
blurIn() {
|
|
221
191
|
return this.addClass('jux-stack-blur-in');
|
|
222
192
|
}
|
|
223
|
-
/**
|
|
224
|
-
* Glow pulse animation (continuous)
|
|
225
|
-
*/
|
|
226
193
|
glow() {
|
|
227
194
|
return this.addClass('jux-stack-glow');
|
|
228
195
|
}
|
|
229
|
-
|
|
230
|
-
*
|
|
231
|
-
*/
|
|
196
|
+
/* ─────────────────────────────────────────────────────────────────
|
|
197
|
+
* Item-Level Animations (Animate the children)
|
|
198
|
+
* ───────────────────────────────────────────────────────────────── */
|
|
199
|
+
fadeInItems() {
|
|
200
|
+
return this.addClass('jux-stack-fade-in-items');
|
|
201
|
+
}
|
|
202
|
+
slideInItems(direction = 'up') {
|
|
203
|
+
return this.addClass(`jux-stack-slide-${direction}-items`);
|
|
204
|
+
}
|
|
205
|
+
scaleInItems() {
|
|
206
|
+
return this.addClass('jux-stack-scale-in-items');
|
|
207
|
+
}
|
|
208
|
+
zoomInItems() {
|
|
209
|
+
return this.addClass('jux-stack-zoom-in-items');
|
|
210
|
+
}
|
|
211
|
+
rotateInItems() {
|
|
212
|
+
return this.addClass('jux-stack-rotate-in-items');
|
|
213
|
+
}
|
|
214
|
+
flipInItems(axis = 'x') {
|
|
215
|
+
return this.addClass(`jux-stack-flip-${axis}-items`);
|
|
216
|
+
}
|
|
217
|
+
bounceInItems() {
|
|
218
|
+
return this.addClass('jux-stack-bounce-in-items');
|
|
219
|
+
}
|
|
220
|
+
elasticInItems() {
|
|
221
|
+
return this.addClass('jux-stack-elastic-in-items');
|
|
222
|
+
}
|
|
223
|
+
blurInItems() {
|
|
224
|
+
return this.addClass('jux-stack-blur-in-items');
|
|
225
|
+
}
|
|
226
|
+
glowItems() {
|
|
227
|
+
return this.addClass('jux-stack-glow-items');
|
|
228
|
+
}
|
|
229
|
+
/* ─────────────────────────────────────────────────────────────────
|
|
230
|
+
* Speed Modifiers (Control animation duration)
|
|
231
|
+
* ───────────────────────────────────────────────────────────────── */
|
|
232
|
+
instant() {
|
|
233
|
+
return this.addClass('jux-stack-instant');
|
|
234
|
+
}
|
|
235
|
+
fast() {
|
|
236
|
+
return this.addClass('jux-stack-fast');
|
|
237
|
+
}
|
|
238
|
+
normal() {
|
|
239
|
+
return this.addClass('jux-stack-normal');
|
|
240
|
+
}
|
|
241
|
+
slow() {
|
|
242
|
+
return this.addClass('jux-stack-slow');
|
|
243
|
+
}
|
|
244
|
+
slower() {
|
|
245
|
+
return this.addClass('jux-stack-slower');
|
|
246
|
+
}
|
|
247
|
+
/* ─────────────────────────────────────────────────────────────────
|
|
248
|
+
* Timing Functions (Control animation easing)
|
|
249
|
+
* ───────────────────────────────────────────────────────────────── */
|
|
250
|
+
linear() {
|
|
251
|
+
return this.addClass('jux-stack-linear');
|
|
252
|
+
}
|
|
253
|
+
ease() {
|
|
254
|
+
return this.addClass('jux-stack-ease');
|
|
255
|
+
}
|
|
256
|
+
easeIn() {
|
|
257
|
+
return this.addClass('jux-stack-ease-in');
|
|
258
|
+
}
|
|
259
|
+
easeOut() {
|
|
260
|
+
return this.addClass('jux-stack-ease-out');
|
|
261
|
+
}
|
|
262
|
+
easeInOut() {
|
|
263
|
+
return this.addClass('jux-stack-ease-in-out');
|
|
264
|
+
}
|
|
265
|
+
bounceTiming() {
|
|
266
|
+
return this.addClass('jux-stack-bounce-timing');
|
|
267
|
+
}
|
|
268
|
+
elasticTiming() {
|
|
269
|
+
return this.addClass('jux-stack-elastic-timing');
|
|
270
|
+
}
|
|
271
|
+
/* ─────────────────────────────────────────────────────────────────
|
|
272
|
+
* Delay Control
|
|
273
|
+
* ───────────────────────────────────────────────────────────────── */
|
|
274
|
+
delay(ms) {
|
|
275
|
+
return this.addClass(`jux-stack-delay-${ms}`);
|
|
276
|
+
}
|
|
277
|
+
/* ─────────────────────────────────────────────────────────────────
|
|
278
|
+
* Stagger & Interactive
|
|
279
|
+
* ───────────────────────────────────────────────────────────────── */
|
|
232
280
|
staggered() {
|
|
233
281
|
return this.addClass('jux-stack-stagger');
|
|
234
282
|
}
|
|
235
|
-
/**
|
|
236
|
-
* Make children interactive (hover effects)
|
|
237
|
-
*/
|
|
238
283
|
interactive() {
|
|
239
284
|
return this.addClass('jux-stack-interactive');
|
|
240
285
|
}
|
|
241
|
-
/**
|
|
242
|
-
* Enable smooth transitions
|
|
243
|
-
*/
|
|
244
286
|
smooth() {
|
|
245
287
|
return this.addClass('jux-stack-smooth');
|
|
246
288
|
}
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
289
|
+
smoothItems() {
|
|
290
|
+
return this.addClass('jux-stack-smooth-items');
|
|
291
|
+
}
|
|
292
|
+
/* ─────────────────────────────────────────────────────────────────
|
|
293
|
+
* Convenience Combos
|
|
294
|
+
* ───────────────────────────────────────────────────────────────── */
|
|
250
295
|
animateStagger(animation = 'fade', direction) {
|
|
251
296
|
if (animation === 'slide' && direction) {
|
|
252
297
|
this.slideIn(direction);
|
|
@@ -210,107 +210,182 @@ export abstract class BaseStack extends BaseComponent<StackState> {
|
|
|
210
210
|
* ANIMATION API (Fluent)
|
|
211
211
|
* ═════════════════════════════════════════════════════════════════ */
|
|
212
212
|
|
|
213
|
-
|
|
214
|
-
*
|
|
215
|
-
*/
|
|
213
|
+
/* ─────────────────────────────────────────────────────────────────
|
|
214
|
+
* Stack-Level Animations (Animate the container)
|
|
215
|
+
* ───────────────────────────────────────────────────────────────── */
|
|
216
|
+
|
|
216
217
|
fadeIn(): this {
|
|
217
218
|
return this.addClass('jux-stack-fade-in');
|
|
218
219
|
}
|
|
219
220
|
|
|
220
|
-
/**
|
|
221
|
-
* Fade out animation
|
|
222
|
-
*/
|
|
223
|
-
fadeOut(): this {
|
|
224
|
-
return this.addClass('jux-stack-fade-out');
|
|
225
|
-
}
|
|
226
|
-
|
|
227
|
-
/**
|
|
228
|
-
* Slide in from direction
|
|
229
|
-
*/
|
|
230
221
|
slideIn(direction: 'up' | 'down' | 'left' | 'right' = 'up'): this {
|
|
231
222
|
return this.addClass(`jux-stack-slide-${direction}`);
|
|
232
223
|
}
|
|
233
224
|
|
|
234
|
-
/**
|
|
235
|
-
* Scale in animation (subtle)
|
|
236
|
-
*/
|
|
237
225
|
scaleIn(): this {
|
|
238
226
|
return this.addClass('jux-stack-scale-in');
|
|
239
227
|
}
|
|
240
228
|
|
|
241
|
-
/**
|
|
242
|
-
* Zoom in animation (dramatic)
|
|
243
|
-
*/
|
|
244
229
|
zoomIn(): this {
|
|
245
230
|
return this.addClass('jux-stack-zoom-in');
|
|
246
231
|
}
|
|
247
232
|
|
|
248
|
-
/**
|
|
249
|
-
* Rotate in animation
|
|
250
|
-
*/
|
|
251
233
|
rotateIn(): this {
|
|
252
234
|
return this.addClass('jux-stack-rotate-in');
|
|
253
235
|
}
|
|
254
236
|
|
|
255
|
-
/**
|
|
256
|
-
* Flip in along axis
|
|
257
|
-
*/
|
|
258
237
|
flipIn(axis: 'x' | 'y' = 'x'): this {
|
|
259
238
|
return this.addClass(`jux-stack-flip-${axis}`);
|
|
260
239
|
}
|
|
261
240
|
|
|
262
|
-
/**
|
|
263
|
-
* Bounce in animation
|
|
264
|
-
*/
|
|
265
241
|
bounceIn(): this {
|
|
266
242
|
return this.addClass('jux-stack-bounce-in');
|
|
267
243
|
}
|
|
268
244
|
|
|
269
|
-
/**
|
|
270
|
-
* Elastic spring animation
|
|
271
|
-
*/
|
|
272
245
|
elasticIn(): this {
|
|
273
246
|
return this.addClass('jux-stack-elastic-in');
|
|
274
247
|
}
|
|
275
248
|
|
|
276
|
-
/**
|
|
277
|
-
* Blur in animation
|
|
278
|
-
*/
|
|
279
249
|
blurIn(): this {
|
|
280
250
|
return this.addClass('jux-stack-blur-in');
|
|
281
251
|
}
|
|
282
252
|
|
|
283
|
-
/**
|
|
284
|
-
* Glow pulse animation (continuous)
|
|
285
|
-
*/
|
|
286
253
|
glow(): this {
|
|
287
254
|
return this.addClass('jux-stack-glow');
|
|
288
255
|
}
|
|
289
256
|
|
|
290
|
-
|
|
291
|
-
*
|
|
292
|
-
*/
|
|
257
|
+
/* ─────────────────────────────────────────────────────────────────
|
|
258
|
+
* Item-Level Animations (Animate the children)
|
|
259
|
+
* ───────────────────────────────────────────────────────────────── */
|
|
260
|
+
|
|
261
|
+
fadeInItems(): this {
|
|
262
|
+
return this.addClass('jux-stack-fade-in-items');
|
|
263
|
+
}
|
|
264
|
+
|
|
265
|
+
slideInItems(direction: 'up' | 'down' | 'left' | 'right' = 'up'): this {
|
|
266
|
+
return this.addClass(`jux-stack-slide-${direction}-items`);
|
|
267
|
+
}
|
|
268
|
+
|
|
269
|
+
scaleInItems(): this {
|
|
270
|
+
return this.addClass('jux-stack-scale-in-items');
|
|
271
|
+
}
|
|
272
|
+
|
|
273
|
+
zoomInItems(): this {
|
|
274
|
+
return this.addClass('jux-stack-zoom-in-items');
|
|
275
|
+
}
|
|
276
|
+
|
|
277
|
+
rotateInItems(): this {
|
|
278
|
+
return this.addClass('jux-stack-rotate-in-items');
|
|
279
|
+
}
|
|
280
|
+
|
|
281
|
+
flipInItems(axis: 'x' | 'y' = 'x'): this {
|
|
282
|
+
return this.addClass(`jux-stack-flip-${axis}-items`);
|
|
283
|
+
}
|
|
284
|
+
|
|
285
|
+
bounceInItems(): this {
|
|
286
|
+
return this.addClass('jux-stack-bounce-in-items');
|
|
287
|
+
}
|
|
288
|
+
|
|
289
|
+
elasticInItems(): this {
|
|
290
|
+
return this.addClass('jux-stack-elastic-in-items');
|
|
291
|
+
}
|
|
292
|
+
|
|
293
|
+
blurInItems(): this {
|
|
294
|
+
return this.addClass('jux-stack-blur-in-items');
|
|
295
|
+
}
|
|
296
|
+
|
|
297
|
+
glowItems(): this {
|
|
298
|
+
return this.addClass('jux-stack-glow-items');
|
|
299
|
+
}
|
|
300
|
+
|
|
301
|
+
/* ─────────────────────────────────────────────────────────────────
|
|
302
|
+
* Speed Modifiers (Control animation duration)
|
|
303
|
+
* ───────────────────────────────────────────────────────────────── */
|
|
304
|
+
|
|
305
|
+
instant(): this {
|
|
306
|
+
return this.addClass('jux-stack-instant');
|
|
307
|
+
}
|
|
308
|
+
|
|
309
|
+
fast(): this {
|
|
310
|
+
return this.addClass('jux-stack-fast');
|
|
311
|
+
}
|
|
312
|
+
|
|
313
|
+
normal(): this {
|
|
314
|
+
return this.addClass('jux-stack-normal');
|
|
315
|
+
}
|
|
316
|
+
|
|
317
|
+
slow(): this {
|
|
318
|
+
return this.addClass('jux-stack-slow');
|
|
319
|
+
}
|
|
320
|
+
|
|
321
|
+
slower(): this {
|
|
322
|
+
return this.addClass('jux-stack-slower');
|
|
323
|
+
}
|
|
324
|
+
|
|
325
|
+
/* ─────────────────────────────────────────────────────────────────
|
|
326
|
+
* Timing Functions (Control animation easing)
|
|
327
|
+
* ───────────────────────────────────────────────────────────────── */
|
|
328
|
+
|
|
329
|
+
linear(): this {
|
|
330
|
+
return this.addClass('jux-stack-linear');
|
|
331
|
+
}
|
|
332
|
+
|
|
333
|
+
ease(): this {
|
|
334
|
+
return this.addClass('jux-stack-ease');
|
|
335
|
+
}
|
|
336
|
+
|
|
337
|
+
easeIn(): this {
|
|
338
|
+
return this.addClass('jux-stack-ease-in');
|
|
339
|
+
}
|
|
340
|
+
|
|
341
|
+
easeOut(): this {
|
|
342
|
+
return this.addClass('jux-stack-ease-out');
|
|
343
|
+
}
|
|
344
|
+
|
|
345
|
+
easeInOut(): this {
|
|
346
|
+
return this.addClass('jux-stack-ease-in-out');
|
|
347
|
+
}
|
|
348
|
+
|
|
349
|
+
bounceTiming(): this {
|
|
350
|
+
return this.addClass('jux-stack-bounce-timing');
|
|
351
|
+
}
|
|
352
|
+
|
|
353
|
+
elasticTiming(): this {
|
|
354
|
+
return this.addClass('jux-stack-elastic-timing');
|
|
355
|
+
}
|
|
356
|
+
|
|
357
|
+
/* ─────────────────────────────────────────────────────────────────
|
|
358
|
+
* Delay Control
|
|
359
|
+
* ───────────────────────────────────────────────────────────────── */
|
|
360
|
+
|
|
361
|
+
delay(ms: 100 | 200 | 300 | 500 | 1000): this {
|
|
362
|
+
return this.addClass(`jux-stack-delay-${ms}`);
|
|
363
|
+
}
|
|
364
|
+
|
|
365
|
+
/* ─────────────────────────────────────────────────────────────────
|
|
366
|
+
* Stagger & Interactive
|
|
367
|
+
* ───────────────────────────────────────────────────────────────── */
|
|
368
|
+
|
|
293
369
|
staggered(): this {
|
|
294
370
|
return this.addClass('jux-stack-stagger');
|
|
295
371
|
}
|
|
296
372
|
|
|
297
|
-
/**
|
|
298
|
-
* Make children interactive (hover effects)
|
|
299
|
-
*/
|
|
300
373
|
interactive(): this {
|
|
301
374
|
return this.addClass('jux-stack-interactive');
|
|
302
375
|
}
|
|
303
376
|
|
|
304
|
-
/**
|
|
305
|
-
* Enable smooth transitions
|
|
306
|
-
*/
|
|
307
377
|
smooth(): this {
|
|
308
378
|
return this.addClass('jux-stack-smooth');
|
|
309
379
|
}
|
|
310
380
|
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
|
|
381
|
+
smoothItems(): this {
|
|
382
|
+
return this.addClass('jux-stack-smooth-items');
|
|
383
|
+
}
|
|
384
|
+
|
|
385
|
+
/* ─────────────────────────────────────────────────────────────────
|
|
386
|
+
* Convenience Combos
|
|
387
|
+
* ───────────────────────────────────────────────────────────────── */
|
|
388
|
+
|
|
314
389
|
animateStagger(animation: 'fade' | 'slide' | 'scale' | 'bounce' = 'fade', direction?: 'up' | 'down' | 'left' | 'right'): this {
|
|
315
390
|
if (animation === 'slide' && direction) {
|
|
316
391
|
this.slideIn(direction);
|
package/lib/styles/stack.css
CHANGED
|
@@ -136,26 +136,15 @@
|
|
|
136
136
|
* ANIMATION & TRANSITION CLASSES
|
|
137
137
|
* ═══════════════════════════════════════════════════════════════════ */
|
|
138
138
|
|
|
139
|
-
/*
|
|
139
|
+
/* ═════════════════════════════════════════════════════════════════
|
|
140
|
+
* KEYFRAME DEFINITIONS (Shared)
|
|
141
|
+
* ═════════════════════════════════════════════════════════════════ */
|
|
142
|
+
|
|
140
143
|
@keyframes jux-fade-in {
|
|
141
144
|
from { opacity: 0; }
|
|
142
145
|
to { opacity: 1; }
|
|
143
146
|
}
|
|
144
147
|
|
|
145
|
-
@keyframes jux-fade-out {
|
|
146
|
-
from { opacity: 1; }
|
|
147
|
-
to { opacity: 0; }
|
|
148
|
-
}
|
|
149
|
-
|
|
150
|
-
.jux-stack-fade-in > * {
|
|
151
|
-
animation: jux-fade-in 0.3s ease-out;
|
|
152
|
-
}
|
|
153
|
-
|
|
154
|
-
.jux-stack-fade-out > * {
|
|
155
|
-
animation: jux-fade-out 0.3s ease-out;
|
|
156
|
-
}
|
|
157
|
-
|
|
158
|
-
/* Slide Animations */
|
|
159
148
|
@keyframes jux-slide-in-up {
|
|
160
149
|
from { transform: translateY(20px); opacity: 0; }
|
|
161
150
|
to { transform: translateY(0); opacity: 1; }
|
|
@@ -176,23 +165,6 @@
|
|
|
176
165
|
to { transform: translateX(0); opacity: 1; }
|
|
177
166
|
}
|
|
178
167
|
|
|
179
|
-
.jux-stack-slide-up > * {
|
|
180
|
-
animation: jux-slide-in-up 0.4s ease-out;
|
|
181
|
-
}
|
|
182
|
-
|
|
183
|
-
.jux-stack-slide-down > * {
|
|
184
|
-
animation: jux-slide-in-down 0.4s ease-out;
|
|
185
|
-
}
|
|
186
|
-
|
|
187
|
-
.jux-stack-slide-left > * {
|
|
188
|
-
animation: jux-slide-in-left 0.4s ease-out;
|
|
189
|
-
}
|
|
190
|
-
|
|
191
|
-
.jux-stack-slide-right > * {
|
|
192
|
-
animation: jux-slide-in-right 0.4s ease-out;
|
|
193
|
-
}
|
|
194
|
-
|
|
195
|
-
/* Scale Animations */
|
|
196
168
|
@keyframes jux-scale-in {
|
|
197
169
|
from { transform: scale(0.8); opacity: 0; }
|
|
198
170
|
to { transform: scale(1); opacity: 1; }
|
|
@@ -203,15 +175,6 @@
|
|
|
203
175
|
to { transform: scale(1); opacity: 1; }
|
|
204
176
|
}
|
|
205
177
|
|
|
206
|
-
.jux-stack-scale-in > * {
|
|
207
|
-
animation: jux-scale-in 0.3s cubic-bezier(0.34, 1.56, 0.64, 1);
|
|
208
|
-
}
|
|
209
|
-
|
|
210
|
-
.jux-stack-zoom-in > * {
|
|
211
|
-
animation: jux-zoom-in 0.4s cubic-bezier(0.34, 1.56, 0.64, 1);
|
|
212
|
-
}
|
|
213
|
-
|
|
214
|
-
/* Rotate Animations */
|
|
215
178
|
@keyframes jux-rotate-in {
|
|
216
179
|
from { transform: rotate(-10deg); opacity: 0; }
|
|
217
180
|
to { transform: rotate(0); opacity: 1; }
|
|
@@ -227,19 +190,6 @@
|
|
|
227
190
|
to { transform: perspective(400px) rotateY(0); opacity: 1; }
|
|
228
191
|
}
|
|
229
192
|
|
|
230
|
-
.jux-stack-rotate-in > * {
|
|
231
|
-
animation: jux-rotate-in 0.5s ease-out;
|
|
232
|
-
}
|
|
233
|
-
|
|
234
|
-
.jux-stack-flip-x > * {
|
|
235
|
-
animation: jux-flip-in-x 0.6s ease-out;
|
|
236
|
-
}
|
|
237
|
-
|
|
238
|
-
.jux-stack-flip-y > * {
|
|
239
|
-
animation: jux-flip-in-y 0.6s ease-out;
|
|
240
|
-
}
|
|
241
|
-
|
|
242
|
-
/* Bounce Animation */
|
|
243
193
|
@keyframes jux-bounce-in {
|
|
244
194
|
0% { transform: scale(0); opacity: 0; }
|
|
245
195
|
50% { transform: scale(1.1); }
|
|
@@ -247,11 +197,6 @@
|
|
|
247
197
|
100% { transform: scale(1); opacity: 1; }
|
|
248
198
|
}
|
|
249
199
|
|
|
250
|
-
.jux-stack-bounce-in > * {
|
|
251
|
-
animation: jux-bounce-in 0.6s cubic-bezier(0.68, -0.55, 0.265, 1.55);
|
|
252
|
-
}
|
|
253
|
-
|
|
254
|
-
/* Elastic Animation */
|
|
255
200
|
@keyframes jux-elastic-in {
|
|
256
201
|
0% { transform: scale(0); }
|
|
257
202
|
55% { transform: scale(1.2); }
|
|
@@ -260,31 +205,195 @@
|
|
|
260
205
|
100% { transform: scale(1); }
|
|
261
206
|
}
|
|
262
207
|
|
|
263
|
-
.jux-stack-elastic-in > * {
|
|
264
|
-
animation: jux-elastic-in 0.8s ease-out;
|
|
265
|
-
}
|
|
266
|
-
|
|
267
|
-
/* Blur Animation */
|
|
268
208
|
@keyframes jux-blur-in {
|
|
269
209
|
from { filter: blur(10px); opacity: 0; }
|
|
270
210
|
to { filter: blur(0); opacity: 1; }
|
|
271
211
|
}
|
|
272
212
|
|
|
273
|
-
.jux-stack-blur-in > * {
|
|
274
|
-
animation: jux-blur-in 0.5s ease-out;
|
|
275
|
-
}
|
|
276
|
-
|
|
277
|
-
/* Glow Animation */
|
|
278
213
|
@keyframes jux-glow-pulse {
|
|
279
214
|
0%, 100% { box-shadow: 0 0 5px rgba(59, 130, 246, 0.5); }
|
|
280
215
|
50% { box-shadow: 0 0 20px rgba(59, 130, 246, 0.8); }
|
|
281
216
|
}
|
|
282
217
|
|
|
283
|
-
|
|
218
|
+
/* ═════════════════════════════════════════════════════════════════
|
|
219
|
+
* SPEED MODIFIERS (Global)
|
|
220
|
+
* ═════════════════════════════════════════════════════════════════ */
|
|
221
|
+
|
|
222
|
+
/* Apply to stack or items */
|
|
223
|
+
.jux-stack-instant,
|
|
224
|
+
.jux-stack-instant > * { animation-duration: 0.15s !important; }
|
|
225
|
+
|
|
226
|
+
.jux-stack-fast,
|
|
227
|
+
.jux-stack-fast > * { animation-duration: 0.3s !important; }
|
|
228
|
+
|
|
229
|
+
.jux-stack-normal,
|
|
230
|
+
.jux-stack-normal > * { animation-duration: 0.5s !important; }
|
|
231
|
+
|
|
232
|
+
.jux-stack-slow,
|
|
233
|
+
.jux-stack-slow > * { animation-duration: 0.8s !important; }
|
|
234
|
+
|
|
235
|
+
.jux-stack-slower,
|
|
236
|
+
.jux-stack-slower > * { animation-duration: 1.2s !important; }
|
|
237
|
+
|
|
238
|
+
/* ═════════════════════════════════════════════════════════════════
|
|
239
|
+
* TIMING FUNCTIONS
|
|
240
|
+
* ═════════════════════════════════════════════════════════════════ */
|
|
241
|
+
|
|
242
|
+
.jux-stack-linear,
|
|
243
|
+
.jux-stack-linear > * { animation-timing-function: linear !important; }
|
|
244
|
+
|
|
245
|
+
.jux-stack-ease,
|
|
246
|
+
.jux-stack-ease > * { animation-timing-function: ease !important; }
|
|
247
|
+
|
|
248
|
+
.jux-stack-ease-in,
|
|
249
|
+
.jux-stack-ease-in > * { animation-timing-function: ease-in !important; }
|
|
250
|
+
|
|
251
|
+
.jux-stack-ease-out,
|
|
252
|
+
.jux-stack-ease-out > * { animation-timing-function: ease-out !important; }
|
|
253
|
+
|
|
254
|
+
.jux-stack-ease-in-out,
|
|
255
|
+
.jux-stack-ease-in-out > * { animation-timing-function: ease-in-out !important; }
|
|
256
|
+
|
|
257
|
+
.jux-stack-bounce-timing,
|
|
258
|
+
.jux-stack-bounce-timing > * { animation-timing-function: cubic-bezier(0.68, -0.55, 0.265, 1.55) !important; }
|
|
259
|
+
|
|
260
|
+
.jux-stack-elastic-timing,
|
|
261
|
+
.jux-stack-elastic-timing > * { animation-timing-function: cubic-bezier(0.34, 1.56, 0.64, 1) !important; }
|
|
262
|
+
|
|
263
|
+
/* ═════════════════════════════════════════════════════════════════
|
|
264
|
+
* DELAY MODIFIERS
|
|
265
|
+
* ═════════════════════════════════════════════════════════════════ */
|
|
266
|
+
|
|
267
|
+
.jux-stack-delay-100 { animation-delay: 100ms !important; }
|
|
268
|
+
.jux-stack-delay-200 { animation-delay: 200ms !important; }
|
|
269
|
+
.jux-stack-delay-300 { animation-delay: 300ms !important; }
|
|
270
|
+
.jux-stack-delay-500 { animation-delay: 500ms !important; }
|
|
271
|
+
.jux-stack-delay-1000 { animation-delay: 1000ms !important; }
|
|
272
|
+
|
|
273
|
+
/* ═════════════════════════════════════════════════════════════════
|
|
274
|
+
* STACK-LEVEL ANIMATIONS (Apply to container itself)
|
|
275
|
+
* ═════════════════════════════════════════════════════════════════ */
|
|
276
|
+
|
|
277
|
+
.jux-stack-fade-in {
|
|
278
|
+
animation: jux-fade-in 0.3s ease-out;
|
|
279
|
+
}
|
|
280
|
+
|
|
281
|
+
.jux-stack-slide-up {
|
|
282
|
+
animation: jux-slide-in-up 0.4s ease-out;
|
|
283
|
+
}
|
|
284
|
+
|
|
285
|
+
.jux-stack-slide-down {
|
|
286
|
+
animation: jux-slide-in-down 0.4s ease-out;
|
|
287
|
+
}
|
|
288
|
+
|
|
289
|
+
.jux-stack-slide-left {
|
|
290
|
+
animation: jux-slide-in-left 0.4s ease-out;
|
|
291
|
+
}
|
|
292
|
+
|
|
293
|
+
.jux-stack-slide-right {
|
|
294
|
+
animation: jux-slide-in-right 0.4s ease-out;
|
|
295
|
+
}
|
|
296
|
+
|
|
297
|
+
.jux-stack-scale-in {
|
|
298
|
+
animation: jux-scale-in 0.3s cubic-bezier(0.34, 1.56, 0.64, 1);
|
|
299
|
+
}
|
|
300
|
+
|
|
301
|
+
.jux-stack-zoom-in {
|
|
302
|
+
animation: jux-zoom-in 0.4s cubic-bezier(0.34, 1.56, 0.64, 1);
|
|
303
|
+
}
|
|
304
|
+
|
|
305
|
+
.jux-stack-rotate-in {
|
|
306
|
+
animation: jux-rotate-in 0.5s ease-out;
|
|
307
|
+
}
|
|
308
|
+
|
|
309
|
+
.jux-stack-flip-x {
|
|
310
|
+
animation: jux-flip-in-x 0.6s ease-out;
|
|
311
|
+
}
|
|
312
|
+
|
|
313
|
+
.jux-stack-flip-y {
|
|
314
|
+
animation: jux-flip-in-y 0.6s ease-out;
|
|
315
|
+
}
|
|
316
|
+
|
|
317
|
+
.jux-stack-bounce-in {
|
|
318
|
+
animation: jux-bounce-in 0.6s cubic-bezier(0.68, -0.55, 0.265, 1.55);
|
|
319
|
+
}
|
|
320
|
+
|
|
321
|
+
.jux-stack-elastic-in {
|
|
322
|
+
animation: jux-elastic-in 0.8s ease-out;
|
|
323
|
+
}
|
|
324
|
+
|
|
325
|
+
.jux-stack-blur-in {
|
|
326
|
+
animation: jux-blur-in 0.5s ease-out;
|
|
327
|
+
}
|
|
328
|
+
|
|
329
|
+
.jux-stack-glow {
|
|
330
|
+
animation: jux-glow-pulse 2s ease-in-out infinite;
|
|
331
|
+
}
|
|
332
|
+
|
|
333
|
+
/* ═════════════════════════════════════════════════════════════════
|
|
334
|
+
* ITEM-LEVEL ANIMATIONS (Apply to direct children only)
|
|
335
|
+
* ═════════════════════════════════════════════════════════════════ */
|
|
336
|
+
|
|
337
|
+
.jux-stack-fade-in-items > * {
|
|
338
|
+
animation: jux-fade-in 0.3s ease-out;
|
|
339
|
+
}
|
|
340
|
+
|
|
341
|
+
.jux-stack-slide-up-items > * {
|
|
342
|
+
animation: jux-slide-in-up 0.4s ease-out;
|
|
343
|
+
}
|
|
344
|
+
|
|
345
|
+
.jux-stack-slide-down-items > * {
|
|
346
|
+
animation: jux-slide-in-down 0.4s ease-out;
|
|
347
|
+
}
|
|
348
|
+
|
|
349
|
+
.jux-stack-slide-left-items > * {
|
|
350
|
+
animation: jux-slide-in-left 0.4s ease-out;
|
|
351
|
+
}
|
|
352
|
+
|
|
353
|
+
.jux-stack-slide-right-items > * {
|
|
354
|
+
animation: jux-slide-in-right 0.4s ease-out;
|
|
355
|
+
}
|
|
356
|
+
|
|
357
|
+
.jux-stack-scale-in-items > * {
|
|
358
|
+
animation: jux-scale-in 0.3s cubic-bezier(0.34, 1.56, 0.64, 1);
|
|
359
|
+
}
|
|
360
|
+
|
|
361
|
+
.jux-stack-zoom-in-items > * {
|
|
362
|
+
animation: jux-zoom-in 0.4s cubic-bezier(0.34, 1.56, 0.64, 1);
|
|
363
|
+
}
|
|
364
|
+
|
|
365
|
+
.jux-stack-rotate-in-items > * {
|
|
366
|
+
animation: jux-rotate-in 0.5s ease-out;
|
|
367
|
+
}
|
|
368
|
+
|
|
369
|
+
.jux-stack-flip-x-items > * {
|
|
370
|
+
animation: jux-flip-in-x 0.6s ease-out;
|
|
371
|
+
}
|
|
372
|
+
|
|
373
|
+
.jux-stack-flip-y-items > * {
|
|
374
|
+
animation: jux-flip-in-y 0.6s ease-out;
|
|
375
|
+
}
|
|
376
|
+
|
|
377
|
+
.jux-stack-bounce-in-items > * {
|
|
378
|
+
animation: jux-bounce-in 0.6s cubic-bezier(0.68, -0.55, 0.265, 1.55);
|
|
379
|
+
}
|
|
380
|
+
|
|
381
|
+
.jux-stack-elastic-in-items > * {
|
|
382
|
+
animation: jux-elastic-in 0.8s ease-out;
|
|
383
|
+
}
|
|
384
|
+
|
|
385
|
+
.jux-stack-blur-in-items > * {
|
|
386
|
+
animation: jux-blur-in 0.5s ease-out;
|
|
387
|
+
}
|
|
388
|
+
|
|
389
|
+
.jux-stack-glow-items > * {
|
|
284
390
|
animation: jux-glow-pulse 2s ease-in-out infinite;
|
|
285
391
|
}
|
|
286
392
|
|
|
287
|
-
/*
|
|
393
|
+
/* ═════════════════════════════════════════════════════════════════
|
|
394
|
+
* STAGGER DELAYS (Only for item-level animations)
|
|
395
|
+
* ═════════════════════════════════════════════════════════════════ */
|
|
396
|
+
|
|
288
397
|
.jux-stack-stagger > *:nth-child(1) { animation-delay: 0ms; }
|
|
289
398
|
.jux-stack-stagger > *:nth-child(2) { animation-delay: 100ms; }
|
|
290
399
|
.jux-stack-stagger > *:nth-child(3) { animation-delay: 200ms; }
|
|
@@ -296,7 +405,10 @@
|
|
|
296
405
|
.jux-stack-stagger > *:nth-child(9) { animation-delay: 800ms; }
|
|
297
406
|
.jux-stack-stagger > *:nth-child(10) { animation-delay: 900ms; }
|
|
298
407
|
|
|
299
|
-
/*
|
|
408
|
+
/* ═════════════════════════════════════════════════════════════════
|
|
409
|
+
* INTERACTIVE EFFECTS (Hover, Focus)
|
|
410
|
+
* ═════════════════════════════════════════════════════════════════ */
|
|
411
|
+
|
|
300
412
|
.jux-stack-interactive > * {
|
|
301
413
|
transition: transform 0.3s ease, box-shadow 0.3s ease;
|
|
302
414
|
cursor: pointer;
|
|
@@ -307,8 +419,14 @@
|
|
|
307
419
|
box-shadow: 0 10px 25px rgba(0, 0, 0, 0.15);
|
|
308
420
|
}
|
|
309
421
|
|
|
310
|
-
/*
|
|
311
|
-
|
|
312
|
-
|
|
422
|
+
/* ═════════════════════════════════════════════════════════════════
|
|
423
|
+
* UTILITY CLASSES
|
|
424
|
+
* ═════════════════════════════════════════════════════════════════ */
|
|
425
|
+
|
|
426
|
+
.jux-stack-smooth {
|
|
427
|
+
transition: all 0.3s ease;
|
|
428
|
+
}
|
|
429
|
+
|
|
430
|
+
.jux-stack-smooth-items > * {
|
|
313
431
|
transition: all 0.3s ease;
|
|
314
432
|
}
|