srcdev-nuxt-components 2.1.23 → 2.2.1

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.
@@ -1,8 +1,7 @@
1
1
  <template>
2
- <div class="carousel" ref="carouselDom">
3
- <!-- list item -->
4
- <div class="list" ref="SliderDom">
5
- <div v-for="item in galleryData" class="item" ref="SliderItemsDom">
2
+ <div class="slider-gallery" :class="elementClasses" ref="sliderGalleryWrapper">
3
+ <div class="list" ref="sliderGalleryImagesList">
4
+ <div v-for="(item, index) in galleryData" :key="index" class="item">
6
5
  <img :src="item.src" />
7
6
  <div class="content">
8
7
  <div class="author">{{ item.stylist }}</div>
@@ -15,33 +14,40 @@
15
14
  </div>
16
15
  </div>
17
16
  </div>
18
- <!-- list thumnail -->
19
- <div class="thumbnail" ref="thumbnailBorderDom">
20
- <div v-for="item in galleryData" class="item" ref="thumbnailItemsDom">
17
+
18
+ <div class="thumbnail" ref="sliderGalleryThumbnailsList">
19
+ <div v-for="(item, index) in galleryData" :key="index" class="item">
21
20
  <img :src="item.src" />
22
21
  <div class="content">
23
- <div class="title">Name Slider</div>
24
- <div class="description">Description</div>
22
+ <div class="title" v-show="item.thumbnail?.title !== ''">{{ item.thumbnail?.title }}</div>
23
+ <div class="description" v-show="item.thumbnail?.description !== ''">{{ item.thumbnail?.description }}</div>
25
24
  </div>
26
25
  </div>
27
26
  </div>
28
- <!-- next prev -->
29
27
 
30
28
  <div class="arrows">
31
29
  <button id="prev" ref="prevDom" @click.prevent="doPrevious()"><</button>
32
30
  <button id="next" ref="nextDom" @click.prevent="doNext()">></button>
33
31
  </div>
34
- <!-- time running -->
35
- <div class="time" ref="timeDom"></div>
32
+
33
+ <div class="time"></div>
36
34
  </div>
37
35
  </template>
38
36
 
39
37
  <script setup lang="ts">
40
38
  const props = defineProps({
41
- // galleryData: {
42
- // type: Array as PropType<{ src: string; alt: string }[]>,
43
- // default: () => [],
44
- // },
39
+ autoRun: {
40
+ type: Boolean,
41
+ default: true,
42
+ },
43
+ autoRunInterval: {
44
+ type: Number,
45
+ default: 7000,
46
+ },
47
+ animationDuration: {
48
+ type: Number,
49
+ default: 3000,
50
+ },
45
51
  styleClassPassthrough: {
46
52
  type: Array as PropType<string[]>,
47
53
  default: () => [],
@@ -55,28 +61,21 @@ interface IGalleryData {
55
61
  title?: string;
56
62
  category?: string;
57
63
  description?: string;
64
+ thumbnail?: {
65
+ title: string;
66
+ description: string;
67
+ };
58
68
  }
59
69
 
60
70
  const { elementClasses, resetElementClasses } = useStyleClassPassthrough(props.styleClassPassthrough);
61
71
  const galleryData = defineModel<IGalleryData[]>('galleryData');
62
72
 
63
- //step 1: get DOM
64
- const nextDom = useTemplateRef('nextDom');
65
- const prevDom = useTemplateRef('prevDom');
66
-
67
- const carouselDom = useTemplateRef('carouselDom');
68
- const SliderDom = useTemplateRef('SliderDom');
69
- const thumbnailBorderDom = useTemplateRef('thumbnailBorderDom');
70
- // let thumbnailItemsDom = useTemplateRef('thumbnailItemsDom');
71
- const timeDom = useTemplateRef('timeDom');
72
-
73
- // setup showSlider DOM
74
- const SliderItemsDom = useTemplateRef('SliderItemsDom');
75
- const thumbnailItemsDom = useTemplateRef('thumbnailItemsDom');
73
+ const sliderGalleryWrapper = useTemplateRef('sliderGalleryWrapper');
74
+ const sliderGalleryImagesList = useTemplateRef('sliderGalleryImagesList');
75
+ const sliderGalleryThumbnailsList = useTemplateRef('sliderGalleryThumbnailsList');
76
76
 
77
- // thumbnailBorderDom.value.appendChild(thumbnailItemsDom.value[0]);
78
- const timeRunning = 3000;
79
- const timeAutoNext = 7000;
77
+ // const animationDuration = 3000;
78
+ const autoRunInterval = 7000;
80
79
 
81
80
  const doNext = () => {
82
81
  showSlider('next');
@@ -88,54 +87,72 @@ const doPrevious = () => {
88
87
 
89
88
  let runTimeOut: any;
90
89
  let runNextAuto = setTimeout(() => {
90
+ if (!props.autoRun) return;
91
91
  doNext();
92
- }, timeAutoNext);
92
+ }, autoRunInterval);
93
93
 
94
94
  function showSlider(type: string) {
95
- // Get fresh references to all items by querying the DOM directly
96
- const currentSliderItems = Array.from(SliderDom.value?.children || []);
97
- const currentThumbnailItems = Array.from(thumbnailBorderDom.value?.children || []);
95
+ const currentSliderItems = Array.from(sliderGalleryImagesList.value?.children || []);
96
+ const currentThumbnailItems = Array.from(sliderGalleryThumbnailsList.value?.children || []);
98
97
 
99
98
  if (type === 'next') {
100
- // Move the first item to the end
101
99
  if (currentSliderItems.length) {
102
100
  const firstItem = currentSliderItems[0];
103
- SliderDom.value?.appendChild(firstItem);
101
+ sliderGalleryImagesList.value?.appendChild(firstItem);
104
102
  }
105
103
 
106
104
  if (currentThumbnailItems.length) {
107
105
  const firstThumb = currentThumbnailItems[0];
108
- thumbnailBorderDom.value?.appendChild(firstThumb);
106
+ sliderGalleryThumbnailsList.value?.appendChild(firstThumb);
109
107
  }
110
108
 
111
- carouselDom.value?.classList.add('next');
109
+ sliderGalleryWrapper.value?.classList.add('next');
112
110
  } else {
113
- // Move the last item to the beginning
111
+ // For prev animation:
112
+ // 1. First modify the DOM (prepend the items)
114
113
  if (currentSliderItems.length) {
115
114
  const lastItem = currentSliderItems[currentSliderItems.length - 1];
116
- SliderDom.value?.prepend(lastItem);
115
+ // Set initial state before prepending (if needed)
116
+ lastItem.classList.add('prepend-item');
117
+ sliderGalleryImagesList.value?.prepend(lastItem);
117
118
  }
118
119
 
119
120
  if (currentThumbnailItems.length) {
120
121
  const lastThumb = currentThumbnailItems[currentThumbnailItems.length - 1];
121
- thumbnailBorderDom.value?.prepend(lastThumb);
122
+ // Set initial state before prepending (if needed)
123
+ lastThumb.classList.add('prepend-item');
124
+ sliderGalleryThumbnailsList.value?.prepend(lastThumb);
122
125
  }
123
126
 
124
- carouselDom.value?.classList.add('prev');
127
+ // 2. Force reflow to ensure the DOM changes are applied
128
+ // This is a standard technique to ensure CSS transitions work properly
129
+ // when you need to apply styles immediately after DOM changes
130
+ sliderGalleryWrapper.value?.offsetWidth;
131
+
132
+ // 3. Add the class for animation
133
+ sliderGalleryWrapper.value?.classList.add('prev');
125
134
  }
126
135
 
127
136
  clearTimeout(runTimeOut);
128
137
  runTimeOut = setTimeout(() => {
129
- if (carouselDom.value) {
130
- carouselDom.value.classList.remove('next');
131
- carouselDom.value.classList.remove('prev');
138
+ if (sliderGalleryWrapper.value) {
139
+ sliderGalleryWrapper.value.classList.remove('next');
140
+ sliderGalleryWrapper.value.classList.remove('prev');
141
+
142
+ // Remove any helper classes we added
143
+ const items = sliderGalleryImagesList.value?.querySelectorAll('.prepend-item');
144
+ items?.forEach((item) => item.classList.remove('prepend-item'));
145
+
146
+ const thumbs = sliderGalleryThumbnailsList.value?.querySelectorAll('.prepend-item');
147
+ thumbs?.forEach((thumb) => thumb.classList.remove('prepend-item'));
132
148
  }
133
- }, timeRunning);
149
+ }, props.animationDuration);
134
150
 
135
151
  clearTimeout(runNextAuto);
136
152
  runNextAuto = setTimeout(() => {
153
+ if (!props.autoRun) return;
137
154
  doNext();
138
- }, timeAutoNext);
155
+ }, autoRunInterval);
139
156
  }
140
157
 
141
158
  watch(
@@ -147,150 +164,297 @@ watch(
147
164
  </script>
148
165
 
149
166
  <style lang="css">
150
- /* carousel */
151
- .carousel {
152
- height: 100vh;
167
+ /* slider-gallery */
168
+ .slider-gallery {
169
+ --_animationDuration: v-bind(animationDuration + 'ms');
170
+
171
+ --_thembnailAspectRatio: 150 /220;
172
+
173
+ height: 100svh;
153
174
  /* margin-top: -50px; */
154
175
  width: 100vw;
155
176
  overflow: hidden;
156
177
  position: absolute;
157
178
  inset: 0 0 0 0;
158
- }
159
- .carousel .list .item {
160
- width: 100%;
161
- height: 100%;
162
- position: absolute;
163
- inset: 0 0 0 0;
164
- }
165
- .carousel .list .item img {
166
- width: 100%;
167
- height: 100%;
168
- object-fit: cover;
169
- }
170
- .carousel .list .item .content {
171
- position: absolute;
172
- top: 20%;
173
- width: 1140px;
174
- max-width: 80%;
175
- left: 50%;
176
- transform: translateX(-50%);
177
- padding-right: 30%;
178
- box-sizing: border-box;
179
- color: #fff;
180
- text-shadow: 0 5px 10px #0004;
181
- }
182
- .carousel .list .item .author {
183
- font-weight: bold;
184
- letter-spacing: 10px;
185
- }
186
- .carousel .list .item .title,
187
- .carousel .list .item .topic {
188
- font-size: 5em;
189
- font-weight: bold;
190
- line-height: 1.3em;
191
- }
192
- .carousel .list .item .topic {
193
- color: #f1683a;
194
- }
195
- .carousel .list .item .buttons {
196
- display: grid;
197
- grid-template-columns: repeat(2, 130px);
198
- grid-template-rows: 40px;
199
- gap: 5px;
200
- margin-top: 20px;
201
- }
202
- .carousel .list .item .buttons button {
203
- background-color: #99999975;
204
- border: 1px solid #fff;
205
- color: #fff;
206
- letter-spacing: 3px;
207
- font-weight: 500;
208
- }
209
- /* .carousel .list .item .buttons button:nth-child(2) {
210
- background-color: transparent;
211
- border: 1px solid #fff;
212
- color: #eee;
213
- } */
214
- /* thumbail */
215
- .thumbnail {
216
- position: absolute;
217
- bottom: 50px;
218
- left: 50%;
219
- width: max-content;
220
- z-index: 100;
221
- display: flex;
222
- gap: 20px;
223
- }
224
- .thumbnail .item {
225
- width: 150px;
226
- height: 220px;
227
- flex-shrink: 0;
228
- position: relative;
229
- }
230
- .thumbnail .item img {
231
- width: 100%;
232
- height: 100%;
233
- object-fit: cover;
234
- border-radius: 20px;
235
- }
236
- .thumbnail .item .content {
237
- color: #fff;
238
- position: absolute;
239
- bottom: 10px;
240
- left: 10px;
241
- right: 10px;
242
- }
243
- .thumbnail .item .content .title {
244
- font-weight: 500;
245
- }
246
- .thumbnail .item .content .description {
247
- font-weight: 300;
248
- }
249
- /* arrows */
250
- .arrows {
251
- position: absolute;
252
- top: 80%;
253
- right: 52%;
254
- z-index: 100;
255
- width: 300px;
256
- max-width: 30%;
257
- display: flex;
258
- gap: 10px;
259
- align-items: center;
260
- }
261
- .arrows button {
262
- width: 40px;
263
- height: 40px;
264
- border-radius: 50%;
265
- background-color: #eee4;
266
- border: none;
267
- color: #fff;
268
- font-family: monospace;
269
- font-weight: bold;
270
- transition: 0.5s;
271
- }
272
- .arrows button:hover {
273
- background-color: #fff;
274
- color: #000;
275
- }
276
179
 
277
- /* animation */
278
- .carousel .list .item:nth-child(1) {
279
- z-index: 1;
280
- }
180
+ .list {
181
+ .item {
182
+ width: 100%;
183
+ height: 100%;
184
+ position: absolute;
185
+ inset: 0 0 0 0;
186
+
187
+ &:nth-child(1) {
188
+ z-index: 1;
189
+
190
+ .content {
191
+ .author,
192
+ .title,
193
+ .topic,
194
+ .des,
195
+ .buttons {
196
+ transform: translateY(50px);
197
+ filter: blur(20px);
198
+ opacity: 0;
199
+ animation: showContent 0.5s 1s linear 1 forwards;
200
+ }
201
+
202
+ .title {
203
+ animation-delay: 1.2s !important;
204
+ }
205
+ .topic {
206
+ animation-delay: 1.4s !important;
207
+ }
208
+ .des {
209
+ animation-delay: 1.6s !important;
210
+ }
211
+ .buttons {
212
+ animation-delay: 1.8s !important;
213
+ }
214
+ }
215
+ }
216
+
217
+ img {
218
+ width: 100%;
219
+ height: 100%;
220
+ object-fit: cover;
221
+ }
222
+
223
+ .content {
224
+ position: absolute;
225
+ top: 20%;
226
+ width: 1140px;
227
+ max-width: 80%;
228
+ left: 50%;
229
+ transform: translateX(-50%);
230
+ padding-right: 30%;
231
+ box-sizing: border-box;
232
+ color: #fff;
233
+ text-shadow: 0 5px 10px #0004;
234
+
235
+ .author {
236
+ font-weight: bold;
237
+ letter-spacing: 10px;
238
+ }
239
+
240
+ .title {
241
+ font-size: 5em;
242
+ font-weight: bold;
243
+ line-height: 1.3em;
244
+ }
245
+ .topic {
246
+ font-size: 5em;
247
+ font-weight: bold;
248
+ line-height: 1.3em;
249
+ color: #f1683a;
250
+ }
251
+
252
+ .buttons {
253
+ display: grid;
254
+ grid-template-columns: repeat(2, 130px);
255
+ grid-template-rows: 40px;
256
+ gap: 5px;
257
+ margin-top: 20px;
258
+
259
+ button {
260
+ background-color: #99999975;
261
+ border: 1px solid #fff;
262
+ color: #fff;
263
+ letter-spacing: 3px;
264
+ font-weight: 500;
265
+ }
266
+ }
267
+ }
268
+ }
269
+ }
270
+
271
+ .thumbnail {
272
+ position: absolute;
273
+ bottom: 50px;
274
+ left: 50%;
275
+ width: max-content;
276
+ z-index: 100;
277
+ display: flex;
278
+ gap: 20px;
279
+
280
+ .item {
281
+ width: 150px;
282
+ height: 220px;
283
+ flex-shrink: 0;
284
+ position: relative;
285
+
286
+ border: var(--_thumbnailBorder, 1px solid transparent);
287
+ outline: var(--_thumbnailOutline, 1px solid transparent);
288
+ border-radius: var(--_thumbnailBorderRadius, 20px);
289
+
290
+ img {
291
+ width: 100%;
292
+ height: 100%;
293
+ object-fit: cover;
294
+ border-radius: 20px;
295
+ }
296
+
297
+ .content {
298
+ color: #fff;
299
+ position: absolute;
300
+ bottom: 10px;
301
+ left: 10px;
302
+ right: 10px;
303
+
304
+ .title {
305
+ font-weight: 500;
306
+ }
307
+
308
+ .description {
309
+ font-weight: 300;
310
+ }
311
+ }
312
+ }
313
+ }
314
+
315
+ /* arrows */
316
+ .arrows {
317
+ position: absolute;
318
+ top: 80%;
319
+ right: 52%;
320
+ z-index: 100;
321
+ width: 300px;
322
+ max-width: 30%;
323
+ display: flex;
324
+ gap: 10px;
325
+ align-items: center;
326
+
327
+ button {
328
+ width: 40px;
329
+ height: 40px;
330
+ border-radius: 50%;
331
+ background-color: #eee4;
332
+ border: none;
333
+ color: #fff;
334
+ font-family: monospace;
335
+ font-weight: bold;
336
+ transition: 0.5s;
337
+
338
+ &:hover {
339
+ background-color: #fff;
340
+ color: #000;
341
+ }
342
+ }
343
+ }
344
+
345
+ .time {
346
+ position: absolute;
347
+ z-index: 1000;
348
+ width: 0%;
349
+ height: 3px;
350
+ background-color: #f1683a;
351
+ left: 0;
352
+ top: 0;
353
+ }
354
+
355
+ /* Slider carousel animations */
356
+ &.next {
357
+ .list {
358
+ .item {
359
+ &:nth-child(1) {
360
+ img {
361
+ width: 150px;
362
+ height: 220px;
363
+ position: absolute;
364
+ bottom: 50px;
365
+ left: 50%;
366
+ border-radius: 30px;
367
+ animation: showImage 0.5s linear 1 forwards;
368
+ }
369
+ }
370
+ }
371
+ }
372
+
373
+ .arrows {
374
+ button {
375
+ pointer-events: none;
376
+ }
377
+ }
378
+
379
+ .thumbnail {
380
+ animation: effectNext 0.5s linear 1 forwards;
281
381
 
282
- /* animation text in first item */
283
-
284
- .carousel .list .item:nth-child(1) .content .author,
285
- .carousel .list .item:nth-child(1) .content .title,
286
- .carousel .list .item:nth-child(1) .content .topic,
287
- .carousel .list .item:nth-child(1) .content .des,
288
- .carousel .list .item:nth-child(1) .content .buttons {
289
- transform: translateY(50px);
290
- filter: blur(20px);
291
- opacity: 0;
292
- animation: showContent 0.5s 1s linear 1 forwards;
382
+ .item {
383
+ &:nth-last-child(1) {
384
+ overflow: hidden;
385
+ animation: showThumbnail 0.5s linear 1 forwards;
386
+ }
387
+ }
388
+ }
389
+
390
+ .time {
391
+ animation: runningTime var(--_animationDuration) linear 1 forwards;
392
+ }
393
+ }
394
+
395
+ &.prev {
396
+ .list {
397
+ .item {
398
+ &:nth-child(2) {
399
+ z-index: 2;
400
+
401
+ img {
402
+ animation: outFrame 0.5s linear 1 forwards;
403
+ position: absolute;
404
+ bottom: 0;
405
+ left: 0;
406
+ }
407
+
408
+ .content {
409
+ .author,
410
+ .title,
411
+ .topic,
412
+ .des,
413
+ .buttons {
414
+ animation: contentOut 1.5s linear 1 forwards !important;
415
+ }
416
+ }
417
+ }
418
+ img {
419
+ z-index: 100;
420
+ }
421
+ }
422
+
423
+ .item.prepend-item {
424
+ z-index: 1; /* Ensure it's visible */
425
+ /* Any initial styles needed */
426
+ }
427
+ }
428
+
429
+ .arrows {
430
+ button {
431
+ pointer-events: none;
432
+ }
433
+ }
434
+
435
+ .thumbnail {
436
+ /* Add a transform to the entire thumbnail container */
437
+ animation: effectPrev 0.5s linear 1 forwards;
438
+
439
+ .item {
440
+ &:nth-child(1) {
441
+ overflow: hidden;
442
+ animation: showThumbnailPrev 0.5s linear 1 forwards;
443
+ }
444
+ }
445
+
446
+ .item.prepend-item {
447
+ opacity: 0;
448
+ transform: translateX(-20px);
449
+ /* Initial state for thumbnail animation */
450
+ }
451
+ }
452
+ .time {
453
+ animation: runningTime var(--_animationDuration) linear 1 forwards;
454
+ }
455
+ }
293
456
  }
457
+
294
458
  @keyframes showContent {
295
459
  to {
296
460
  transform: translateY(0px);
@@ -298,28 +462,7 @@ watch(
298
462
  opacity: 1;
299
463
  }
300
464
  }
301
- .carousel .list .item:nth-child(1) .content .title {
302
- animation-delay: 1.2s !important;
303
- }
304
- .carousel .list .item:nth-child(1) .content .topic {
305
- animation-delay: 1.4s !important;
306
- }
307
- .carousel .list .item:nth-child(1) .content .des {
308
- animation-delay: 1.6s !important;
309
- }
310
- .carousel .list .item:nth-child(1) .content .buttons {
311
- animation-delay: 1.8s !important;
312
- }
313
- /* create animation when next click */
314
- .carousel.next .list .item:nth-child(1) img {
315
- width: 150px;
316
- height: 220px;
317
- position: absolute;
318
- bottom: 50px;
319
- left: 50%;
320
- border-radius: 30px;
321
- animation: showImage 0.5s linear 1 forwards;
322
- }
465
+
323
466
  @keyframes showImage {
324
467
  to {
325
468
  bottom: 0;
@@ -330,22 +473,12 @@ watch(
330
473
  }
331
474
  }
332
475
 
333
- .carousel.next .thumbnail .item:nth-last-child(1) {
334
- overflow: hidden;
335
- animation: showThumbnail 0.5s linear 1 forwards;
336
- }
337
- .carousel.prev .list .item img {
338
- z-index: 100;
339
- }
340
476
  @keyframes showThumbnail {
341
477
  from {
342
478
  width: 0;
343
479
  opacity: 0;
344
480
  }
345
481
  }
346
- .carousel.next .thumbnail {
347
- animation: effectNext 0.5s linear 1 forwards;
348
- }
349
482
 
350
483
  @keyframes effectNext {
351
484
  from {
@@ -353,22 +486,6 @@ watch(
353
486
  }
354
487
  }
355
488
 
356
- /* running time */
357
-
358
- .carousel .time {
359
- position: absolute;
360
- z-index: 1000;
361
- width: 0%;
362
- height: 3px;
363
- background-color: #f1683a;
364
- left: 0;
365
- top: 0;
366
- }
367
-
368
- .carousel.next .time,
369
- .carousel.prev .time {
370
- animation: runningTime 3s linear 1 forwards;
371
- }
372
489
  @keyframes runningTime {
373
490
  from {
374
491
  width: 100%;
@@ -378,18 +495,6 @@ watch(
378
495
  }
379
496
  }
380
497
 
381
- /* prev click */
382
-
383
- .carousel.prev .list .item:nth-child(2) {
384
- z-index: 2;
385
- }
386
-
387
- .carousel.prev .list .item:nth-child(2) img {
388
- animation: outFrame 0.5s linear 1 forwards;
389
- position: absolute;
390
- bottom: 0;
391
- left: 0;
392
- }
393
498
  @keyframes outFrame {
394
499
  to {
395
500
  width: 150px;
@@ -400,23 +505,6 @@ watch(
400
505
  }
401
506
  }
402
507
 
403
- .carousel.prev .thumbnail .item:nth-child(1) {
404
- overflow: hidden;
405
- opacity: 0;
406
- animation: showThumbnail 0.5s linear 1 forwards;
407
- }
408
- .carousel.next .arrows button,
409
- .carousel.prev .arrows button {
410
- pointer-events: none;
411
- }
412
- .carousel.prev .list .item:nth-child(2) .content .author,
413
- .carousel.prev .list .item:nth-child(2) .content .title,
414
- .carousel.prev .list .item:nth-child(2) .content .topic,
415
- .carousel.prev .list .item:nth-child(2) .content .des,
416
- .carousel.prev .list .item:nth-child(2) .content .buttons {
417
- animation: contentOut 1.5s linear 1 forwards !important;
418
- }
419
-
420
508
  @keyframes contentOut {
421
509
  to {
422
510
  transform: translateY(-150px);
@@ -424,11 +512,32 @@ watch(
424
512
  opacity: 0;
425
513
  }
426
514
  }
515
+
516
+ @keyframes effectPrev {
517
+ from {
518
+ transform: translateX(-150px);
519
+ }
520
+ to {
521
+ transform: translateX(0);
522
+ }
523
+ }
524
+
525
+ @keyframes showThumbnailPrev {
526
+ from {
527
+ opacity: 0;
528
+ transform: translateX(-20px);
529
+ }
530
+ to {
531
+ opacity: 1;
532
+ transform: translateX(0);
533
+ }
534
+ }
535
+
427
536
  @media screen and (max-width: 678px) {
428
- .carousel .list .item .content {
537
+ .slider-gallery .list .item .content {
429
538
  padding-right: 0;
430
539
  }
431
- .carousel .list .item .content .title {
540
+ .slider-gallery .list .item .content .title {
432
541
  font-size: 30px;
433
542
  }
434
543
  }
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "srcdev-nuxt-components",
3
3
  "type": "module",
4
- "version": "2.1.23",
4
+ "version": "2.2.1",
5
5
  "main": "nuxt.config.ts",
6
6
  "scripts": {
7
7
  "clean": "rm -rf .nuxt && rm -rf .output && rm -rf .playground/.nuxt && rm -rf .playground/.output",