@bagelink/vue 0.0.819 → 0.0.821
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/dist/components/Carousel.vue.d.ts.map +1 -1
- package/dist/components/Pill.vue.d.ts.map +1 -1
- package/dist/components/form/inputs/FileUpload.vue.d.ts.map +1 -1
- package/dist/index.cjs +98 -48
- package/dist/index.mjs +98 -48
- package/dist/style.css +77 -87
- package/dist/utils/index.d.ts +2 -2
- package/dist/utils/index.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/components/Carousel.vue +41 -48
- package/src/components/Pill.vue +1 -1
- package/src/components/form/inputs/FileUpload.vue +24 -2
- package/src/utils/index.ts +55 -31
package/dist/style.css
CHANGED
|
@@ -350,7 +350,7 @@ display: block;
|
|
|
350
350
|
padding: 0;
|
|
351
351
|
}
|
|
352
352
|
|
|
353
|
-
.blocker[data-v-
|
|
353
|
+
.blocker[data-v-e588f5a7] {
|
|
354
354
|
position: fixed;
|
|
355
355
|
top: 0;
|
|
356
356
|
left: 0;
|
|
@@ -358,7 +358,7 @@ display: block;
|
|
|
358
358
|
height: 100%;
|
|
359
359
|
z-index: 100;
|
|
360
360
|
}
|
|
361
|
-
.bgl-slider[data-v-
|
|
361
|
+
.bgl-slider[data-v-e588f5a7] {
|
|
362
362
|
display: grid;
|
|
363
363
|
position: relative;
|
|
364
364
|
/* scroll-behavior: smooth; */
|
|
@@ -367,66 +367,44 @@ display: block;
|
|
|
367
367
|
/* scroll-snap-type: x mandatory; */
|
|
368
368
|
overflow-x: hidden;
|
|
369
369
|
}
|
|
370
|
-
.autoHeight[data-v-
|
|
370
|
+
.autoHeight[data-v-e588f5a7] {
|
|
371
371
|
transition: height ease 0.7s;
|
|
372
372
|
}
|
|
373
|
-
.bgl-slider.allowScroll[data-v-
|
|
373
|
+
.bgl-slider.allowScroll[data-v-e588f5a7] {
|
|
374
374
|
overflow-x: scroll;
|
|
375
375
|
}
|
|
376
|
-
.bgl-slider
|
|
377
|
-
grid-auto-columns:
|
|
376
|
+
.bgl-slider[data-v-e588f5a7] {
|
|
377
|
+
grid-auto-columns: calc(100% / var(--item-count) - calc(var(--item-count) - 1) * 1%);
|
|
378
378
|
gap: 1%;
|
|
379
379
|
}
|
|
380
|
-
.bgl-slider.
|
|
381
|
-
grid-auto-columns:
|
|
382
|
-
gap: 1%;
|
|
383
|
-
}
|
|
384
|
-
.bgl-slider.slides-4[data-v-619a1cb2] {
|
|
385
|
-
grid-auto-columns: 24.3%;
|
|
386
|
-
gap: 1%;
|
|
387
|
-
}
|
|
388
|
-
.bgl-slider.slides-3[data-v-619a1cb2] {
|
|
389
|
-
grid-auto-columns: 33%;
|
|
390
|
-
gap: 1%;
|
|
380
|
+
.bgl-slider.odd[data-v-e588f5a7] {
|
|
381
|
+
grid-auto-columns: calc(100% / var(--item-count) - calc(var(--item-count) - 2) * 1%);
|
|
391
382
|
}
|
|
392
|
-
.bgl-slider.slides-
|
|
393
|
-
grid-auto-columns: 50%;
|
|
394
|
-
gap: 1%;
|
|
395
|
-
}
|
|
396
|
-
.bgl-slider.slides-1[data-v-619a1cb2] {
|
|
383
|
+
.bgl-slider.slides-1[data-v-e588f5a7] {
|
|
397
384
|
grid-auto-columns: 100%;
|
|
385
|
+
gap: 0;
|
|
398
386
|
}
|
|
399
|
-
.bgl-slider[data-v-
|
|
387
|
+
.bgl-slider[data-v-e588f5a7]::-webkit-scrollbar {
|
|
400
388
|
display: none;
|
|
401
389
|
}
|
|
402
|
-
.bgl-slider[data-v-
|
|
390
|
+
.bgl-slider[data-v-e588f5a7] * {
|
|
403
391
|
scroll-snap-align: start;
|
|
404
392
|
}
|
|
405
|
-
.dragging.bgl-slider[data-v-
|
|
393
|
+
.dragging.bgl-slider[data-v-e588f5a7] {
|
|
406
394
|
cursor: grabbing;
|
|
407
395
|
cursor: -webkit-grabbing;
|
|
408
396
|
scroll-snap-type: unset;
|
|
409
397
|
}
|
|
410
|
-
.clicking.bgl-slider[data-v-
|
|
398
|
+
.clicking.bgl-slider[data-v-e588f5a7] {
|
|
411
399
|
scroll-behavior: unset;
|
|
412
400
|
}
|
|
413
|
-
.dragging.bgl-slider[data-v-
|
|
401
|
+
.dragging.bgl-slider[data-v-e588f5a7] * {
|
|
414
402
|
scroll-snap-align: unset;
|
|
415
403
|
user-select: none;
|
|
416
404
|
}
|
|
417
|
-
@media screen and (max-width: 1280px) {
|
|
418
|
-
.bgl-slider.slides-4[data-v-619a1cb2] {
|
|
419
|
-
grid-auto-columns: 33%;
|
|
420
|
-
}
|
|
421
|
-
}
|
|
422
|
-
@media screen and (max-width: 991px) {
|
|
423
|
-
.bgl-slider.slides-4[data-v-619a1cb2] {
|
|
424
|
-
grid-auto-columns: 50%;
|
|
425
|
-
}
|
|
426
|
-
}
|
|
427
405
|
@media screen and (max-width: 600px) {
|
|
428
|
-
.bgl-slider.slides-
|
|
429
|
-
|
|
406
|
+
.bgl-slider.slides-1[data-v-e588f5a7] * {
|
|
407
|
+
margin-inline-start: 1%;
|
|
430
408
|
}
|
|
431
409
|
}
|
|
432
410
|
|
|
@@ -728,7 +706,7 @@ data[data-v-6c27f163] {
|
|
|
728
706
|
}
|
|
729
707
|
}
|
|
730
708
|
|
|
731
|
-
.fileUploadWrap[data-v-
|
|
709
|
+
.fileUploadWrap[data-v-bfb0bd63] {
|
|
732
710
|
outline: 1px solid var(--border-color);
|
|
733
711
|
border-radius: var(--input-border-radius);
|
|
734
712
|
text-align: center;
|
|
@@ -740,7 +718,7 @@ data[data-v-6c27f163] {
|
|
|
740
718
|
background: var(--input-bg);
|
|
741
719
|
height: 215px;
|
|
742
720
|
}
|
|
743
|
-
.bagel-input .fileUploadWrap.fileDropZone[data-v-
|
|
721
|
+
.bagel-input .fileUploadWrap.fileDropZone[data-v-bfb0bd63] {
|
|
744
722
|
background: var(--input-bg);
|
|
745
723
|
display: flex;
|
|
746
724
|
align-items: center;
|
|
@@ -748,14 +726,14 @@ data[data-v-6c27f163] {
|
|
|
748
726
|
color: var(--bgl-gray);
|
|
749
727
|
flex-direction: column;
|
|
750
728
|
}
|
|
751
|
-
.fileUploadWrap.dragover[data-v-
|
|
752
|
-
.fileUploadWrap[data-v-
|
|
729
|
+
.fileUploadWrap.dragover[data-v-bfb0bd63],
|
|
730
|
+
.fileUploadWrap[data-v-bfb0bd63]:hover {
|
|
753
731
|
box-shadow: inset 0 0 10px #00000012;
|
|
754
732
|
}
|
|
755
|
-
.fileUploadWrap[style*="height: auto;"][data-v-
|
|
733
|
+
.fileUploadWrap[style*="height: auto;"][data-v-bfb0bd63] {
|
|
756
734
|
min-height: 215px;
|
|
757
735
|
}
|
|
758
|
-
.multi-image-item-preview[data-v-
|
|
736
|
+
.multi-image-item-preview[data-v-bfb0bd63] {
|
|
759
737
|
border: 1px solid var(--border-color) !important;
|
|
760
738
|
border-radius: var(--input-border-radius);
|
|
761
739
|
margin: 0.5rem !important;
|
|
@@ -769,12 +747,12 @@ data[data-v-6c27f163] {
|
|
|
769
747
|
gap: 1rem;
|
|
770
748
|
align-items: center;
|
|
771
749
|
}
|
|
772
|
-
.multi-image-item-preview p[data-v-
|
|
750
|
+
.multi-image-item-preview p[data-v-bfb0bd63] {
|
|
773
751
|
overflow: hidden;
|
|
774
752
|
text-overflow: ellipsis;
|
|
775
753
|
white-space: nowrap;
|
|
776
754
|
}
|
|
777
|
-
.multi-preview[data-v-
|
|
755
|
+
.multi-preview[data-v-bfb0bd63]{
|
|
778
756
|
width: 40px;
|
|
779
757
|
height: 40px;
|
|
780
758
|
border-radius: var(--input-border-radius);
|
|
@@ -785,17 +763,17 @@ data[data-v-6c27f163] {
|
|
|
785
763
|
align-items: center;
|
|
786
764
|
display: flex;
|
|
787
765
|
}
|
|
788
|
-
.bgl-single-preview[data-v-
|
|
766
|
+
.bgl-single-preview[data-v-bfb0bd63]{
|
|
789
767
|
height: 100%;
|
|
790
768
|
position: relative;
|
|
791
769
|
}
|
|
792
|
-
.bgl-single-preview + .fileUploadPlaceHolder[data-v-
|
|
770
|
+
.bgl-single-preview + .fileUploadPlaceHolder[data-v-bfb0bd63]{
|
|
793
771
|
position: absolute;
|
|
794
772
|
inset: 0;
|
|
795
773
|
margin: auto;
|
|
796
774
|
top: calc(50% - 2rem);
|
|
797
775
|
}
|
|
798
|
-
.single-image-item-preview[data-v-
|
|
776
|
+
.single-image-item-preview[data-v-bfb0bd63] {
|
|
799
777
|
height: 100%;
|
|
800
778
|
min-height: 100%;
|
|
801
779
|
position: relative;
|
|
@@ -803,13 +781,13 @@ data[data-v-6c27f163] {
|
|
|
803
781
|
align-items: center;
|
|
804
782
|
justify-content: center;
|
|
805
783
|
}
|
|
806
|
-
.fileUploadWrap[style*="height: auto"] .single-image-item-preview[data-v-
|
|
784
|
+
.fileUploadWrap[style*="height: auto"] .single-image-item-preview[data-v-bfb0bd63] {
|
|
807
785
|
min-height: 215px;
|
|
808
786
|
}
|
|
809
|
-
.fileUploadWrap[style*="height: auto"] .single-preview[data-v-
|
|
787
|
+
.fileUploadWrap[style*="height: auto"] .single-preview[data-v-bfb0bd63] {
|
|
810
788
|
margin: 0rem !important;
|
|
811
789
|
}
|
|
812
|
-
.single-preview[data-v-
|
|
790
|
+
.single-preview[data-v-bfb0bd63]{
|
|
813
791
|
border-radius: var(--input-border-radius);
|
|
814
792
|
margin: 1rem;
|
|
815
793
|
padding: 0px;
|
|
@@ -817,19 +795,31 @@ data[data-v-6c27f163] {
|
|
|
817
795
|
height: calc(100% - 2rem);
|
|
818
796
|
object-fit: cover;
|
|
819
797
|
background: var(--bgl-gray-light);
|
|
820
|
-
box-shadow: 0 0 10px #00000012;
|
|
821
798
|
}
|
|
822
|
-
.
|
|
799
|
+
.single-image-item-preview[data-v-bfb0bd63]:hover::after{
|
|
800
|
+
content: "zoom_in";
|
|
801
|
+
font-size: 32px;
|
|
802
|
+
font-family: "Material Symbols Outlined", serif;
|
|
803
|
+
position: absolute;
|
|
804
|
+
border-radius: 100%;
|
|
805
|
+
color: var(--bgl-white);
|
|
806
|
+
z-index: 9;
|
|
807
|
+
pointer-events: none;
|
|
808
|
+
}
|
|
809
|
+
.single-image-item-preview:hover img[data-v-bfb0bd63]{
|
|
810
|
+
filter: brightness(70%);
|
|
811
|
+
}
|
|
812
|
+
.bgl_fill-image.single-image-item-preview[data-v-bfb0bd63] {
|
|
823
813
|
height: 100%;
|
|
824
814
|
}
|
|
825
|
-
.bgl_fill-image.single-image-item-preview .single-preview[data-v-
|
|
815
|
+
.bgl_fill-image.single-image-item-preview .single-preview[data-v-bfb0bd63]{
|
|
826
816
|
border-radius: unset;
|
|
827
817
|
object-fit: cover;
|
|
828
818
|
box-shadow: unset;
|
|
829
819
|
width: 100%;
|
|
830
820
|
height: auto;
|
|
831
821
|
}
|
|
832
|
-
.single-image-item-preview .pie[data-v-
|
|
822
|
+
.single-image-item-preview .pie[data-v-bfb0bd63] {
|
|
833
823
|
transform-origin: top;
|
|
834
824
|
transform: scale(1.4);
|
|
835
825
|
position: absolute;
|
|
@@ -843,31 +833,31 @@ data[data-v-6c27f163] {
|
|
|
843
833
|
border: none !important;
|
|
844
834
|
padding: 0 !important;
|
|
845
835
|
}
|
|
846
|
-
.bgl_oval-upload[data-v-
|
|
836
|
+
.bgl_oval-upload[data-v-bfb0bd63] {
|
|
847
837
|
border-radius: 100% !important;
|
|
848
838
|
overflow: hidden;
|
|
849
839
|
}
|
|
850
|
-
.bgl_oval-upload p[data-v-
|
|
840
|
+
.bgl_oval-upload p[data-v-bfb0bd63] {
|
|
851
841
|
padding: 0.75rem !important;
|
|
852
842
|
font-size: 12px
|
|
853
843
|
}
|
|
854
|
-
.bgl_oval-upload .fileUploadPlaceHolder[data-v-
|
|
844
|
+
.bgl_oval-upload .fileUploadPlaceHolder[data-v-bfb0bd63]{
|
|
855
845
|
top: 0;
|
|
856
846
|
}
|
|
857
|
-
.bgl_oval-upload .pie[data-v-
|
|
847
|
+
.bgl_oval-upload .pie[data-v-bfb0bd63] {
|
|
858
848
|
transform: scale(1);
|
|
859
849
|
}
|
|
860
|
-
.bgl_oval-upload span.bgl_icon-font.color-primary[data-v-
|
|
850
|
+
.bgl_oval-upload span.bgl_icon-font.color-primary[data-v-bfb0bd63] {
|
|
861
851
|
transform: scale(0.4) !important;
|
|
862
852
|
}
|
|
863
|
-
.bgl_oval-upload .single-image-item-preview[data-v-
|
|
853
|
+
.bgl_oval-upload .single-image-item-preview[data-v-bfb0bd63]{
|
|
864
854
|
height: 100%;
|
|
865
855
|
}
|
|
866
|
-
.bgl_oval-upload .single-preview[data-v-
|
|
856
|
+
.bgl_oval-upload .single-preview[data-v-bfb0bd63] {
|
|
867
857
|
margin: 0;
|
|
868
858
|
height: 100% !important;
|
|
869
859
|
}
|
|
870
|
-
.pie[data-v-
|
|
860
|
+
.pie[data-v-bfb0bd63] {
|
|
871
861
|
width: 30px;
|
|
872
862
|
height: 30px;
|
|
873
863
|
position: relative;
|
|
@@ -875,7 +865,7 @@ data[data-v-6c27f163] {
|
|
|
875
865
|
align-items: center;
|
|
876
866
|
justify-content: center;
|
|
877
867
|
}
|
|
878
|
-
.pie[data-v-
|
|
868
|
+
.pie[data-v-bfb0bd63]:before {
|
|
879
869
|
content: '';
|
|
880
870
|
position: absolute;
|
|
881
871
|
border-radius: 50%;
|
|
@@ -893,26 +883,26 @@ data[data-v-6c27f163] {
|
|
|
893
883
|
#000 calc(100% - var(--b))
|
|
894
884
|
);
|
|
895
885
|
}
|
|
896
|
-
.pie .success[data-v-
|
|
886
|
+
.pie .success[data-v-bfb0bd63] {
|
|
897
887
|
transform: scale(0);
|
|
898
888
|
opacity: 0;
|
|
899
889
|
transition: all 0.3s ease-in-out;
|
|
900
890
|
}
|
|
901
|
-
.pie .progress[data-v-
|
|
891
|
+
.pie .progress[data-v-bfb0bd63] {
|
|
902
892
|
position: absolute;
|
|
903
893
|
font-size: 10px;
|
|
904
894
|
}
|
|
905
|
-
.pie.complete .progress[data-v-
|
|
895
|
+
.pie.complete .progress[data-v-bfb0bd63] {
|
|
906
896
|
display: none;
|
|
907
897
|
}
|
|
908
|
-
.pie.complete .success[data-v-
|
|
898
|
+
.pie.complete .success[data-v-bfb0bd63] {
|
|
909
899
|
transform: scale(1.3);
|
|
910
900
|
opacity: 1;
|
|
911
901
|
}
|
|
912
|
-
.pie.complete[data-v-
|
|
902
|
+
.pie.complete[data-v-bfb0bd63]:before {
|
|
913
903
|
background: conic-gradient(var(--bgl-green) calc(var(--p) * 1%), #0000 0);
|
|
914
904
|
}
|
|
915
|
-
.pie.complete[data-v-
|
|
905
|
+
.pie.complete[data-v-bfb0bd63] {
|
|
916
906
|
color: var(--bgl-green);
|
|
917
907
|
}
|
|
918
908
|
|
|
@@ -3160,25 +3150,25 @@ svg.leaflet-image-layer.leaflet-interactive path {
|
|
|
3160
3150
|
}
|
|
3161
3151
|
}
|
|
3162
3152
|
|
|
3163
|
-
.bgl_pill-btn[data-v-
|
|
3153
|
+
.bgl_pill-btn[data-v-40a0a2e2]{
|
|
3164
3154
|
color: var(--pill-btn-color);
|
|
3165
3155
|
background: var(--pill-btn-bg);
|
|
3166
3156
|
width: calc(var(--pill-height) / 1.25)!important;
|
|
3167
3157
|
height: calc(var(--pill-height) / 1.25)!important;
|
|
3168
3158
|
}
|
|
3169
|
-
.loading[data-v-
|
|
3159
|
+
.loading[data-v-40a0a2e2] {
|
|
3170
3160
|
border: 1px solid var(--bgl-light-text);
|
|
3171
3161
|
border-bottom: 2px solid var(--bgl-light-text);
|
|
3172
|
-
animation: spin-
|
|
3162
|
+
animation: spin-40a0a2e2 1s linear infinite;
|
|
3173
3163
|
border-radius: 100px;
|
|
3174
3164
|
width: 1rem;
|
|
3175
3165
|
height: 1rem;
|
|
3176
3166
|
margin: auto;
|
|
3177
3167
|
}
|
|
3178
|
-
.bgl_flatPill .loading[data-v-
|
|
3168
|
+
.bgl_flatPill .loading[data-v-40a0a2e2] {
|
|
3179
3169
|
border-bottom: 2px solid var(--bgl-text-color);
|
|
3180
3170
|
}
|
|
3181
|
-
@keyframes spin-
|
|
3171
|
+
@keyframes spin-40a0a2e2 {
|
|
3182
3172
|
0% {
|
|
3183
3173
|
transform: rotate(0deg);
|
|
3184
3174
|
}
|
|
@@ -3186,11 +3176,11 @@ svg.leaflet-image-layer.leaflet-interactive path {
|
|
|
3186
3176
|
transform: rotate(360deg);
|
|
3187
3177
|
}
|
|
3188
3178
|
}
|
|
3189
|
-
.bgl_pill[data-v-
|
|
3179
|
+
.bgl_pill[data-v-40a0a2e2] {
|
|
3190
3180
|
padding-inline: 0.25rem;
|
|
3191
3181
|
transition: var(--bgl-transition);
|
|
3192
|
-
background-color: var(--
|
|
3193
|
-
color: var(--
|
|
3182
|
+
background-color: var(--64b28dae);
|
|
3183
|
+
color: var(--e70b1a78);
|
|
3194
3184
|
display: inline-block;
|
|
3195
3185
|
margin-inline-end: 0.25rem;
|
|
3196
3186
|
border-radius: var(--pill-border-radius);
|
|
@@ -3198,26 +3188,26 @@ svg.leaflet-image-layer.leaflet-interactive path {
|
|
|
3198
3188
|
vertical-align: middle;
|
|
3199
3189
|
margin-bottom: 0.25rem;
|
|
3200
3190
|
}
|
|
3201
|
-
.bgl_pill[disabled="true"][data-v-
|
|
3191
|
+
.bgl_pill[disabled="true"][data-v-40a0a2e2] {
|
|
3202
3192
|
opacity: 0.5;
|
|
3203
3193
|
cursor: not-allowed;
|
|
3204
3194
|
}
|
|
3205
|
-
.bgl_pill-flex[data-v-
|
|
3195
|
+
.bgl_pill-flex[data-v-40a0a2e2] {
|
|
3206
3196
|
display: flex;
|
|
3207
3197
|
align-items: center;
|
|
3208
3198
|
gap: 0.25rem;
|
|
3209
3199
|
justify-content: center;
|
|
3210
3200
|
height: 100%;
|
|
3211
3201
|
}
|
|
3212
|
-
.bgl_pill.bgl_flatPill[data-v-
|
|
3202
|
+
.bgl_pill.bgl_flatPill[data-v-40a0a2e2] {
|
|
3213
3203
|
background: transparent;
|
|
3214
3204
|
}
|
|
3215
|
-
.bgl_pill.round[data-v-
|
|
3205
|
+
.bgl_pill.round[data-v-40a0a2e2] {
|
|
3216
3206
|
border-radius: 1000px;
|
|
3217
3207
|
}
|
|
3218
|
-
.bgl_pill-border[data-v-
|
|
3219
|
-
outline: 1px solid var(--
|
|
3220
|
-
color: var(--
|
|
3208
|
+
.bgl_pill-border[data-v-40a0a2e2] {
|
|
3209
|
+
outline: 1px solid var(--64b28dae);
|
|
3210
|
+
color: var(--64b28dae);
|
|
3221
3211
|
background: transparent;
|
|
3222
3212
|
}
|
|
3223
3213
|
|
package/dist/utils/index.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { Attributes, BglFormSchemaT } from '..';
|
|
2
|
-
export declare function debounce<T extends (...args:
|
|
2
|
+
export declare function debounce<T extends (...args: Parameters<T>) => ReturnType<T>>(callback: T, wait: number, immediate?: boolean): (...args: Parameters<T>) => void;
|
|
3
3
|
export declare function keyToLabel(key?: string): string | undefined;
|
|
4
4
|
export declare function copyText(text: string, cb?: (msg: string) => void): Promise<void>;
|
|
5
5
|
export declare function initials(...strArr: string[]): string;
|
|
@@ -17,6 +17,6 @@ export * as bagelFormUtils from './BagelFormUtils';
|
|
|
17
17
|
export { useLang } from './lang';
|
|
18
18
|
export { formatString } from './strings';
|
|
19
19
|
export declare function getFallbackSchema<T>(data?: any[], showFields?: string[]): BglFormSchemaT<T>;
|
|
20
|
-
export declare
|
|
20
|
+
export declare function sleep(ms?: number): Promise<unknown>;
|
|
21
21
|
export declare function appendScript(src: string): Promise<void>;
|
|
22
22
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAE/D,wBAAgB,QAAQ,CAAC,CAAC,SAAS,CAAC,GAAG,IAAI,EAAE,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAE/D,wBAAgB,QAAQ,CAAC,CAAC,SAAS,CAAC,GAAG,IAAI,EAAE,UAAU,CAAC,CAAC,CAAC,KAAK,UAAU,CAAC,CAAC,CAAC,EAC3E,QAAQ,EAAE,CAAC,EACX,IAAI,EAAE,MAAM,EACZ,SAAS,CAAC,EAAE,OAAO,GACjB,CAAC,GAAG,IAAI,EAAE,UAAU,CAAC,CAAC,CAAC,KAAK,IAAI,CAelC;AAED,wBAAgB,UAAU,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAQ3D;AAED,wBAAsB,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,iBAGtE;AAED,wBAAgB,QAAQ,CAAC,GAAG,MAAM,EAAE,MAAM,EAAE,UAG3C;AAED,wBAAgB,SAAS,CAAC,KAAK,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,IAAI,QAIrE;AAED,wBAAgB,QAAQ,CAAC,QAAQ,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC,EAAE,GAAG,EAAE,GAAG,OAAO,EAAE,GAAG,EAAE,UAOpE;AAED,wBAAgB,SAAS,CAAC,CAAC,GAAG;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;CAAE,EACnD,KAAK,CAAC,EAAE,UAAU,EAClB,QAAQ,CAAC,EAAE,GAAG,EACd,GAAG,CAAC,EAAE,CAAC,OAaP;AAED,wBAAgB,KAAK,CAAC,KAAK,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,OAO9C;AAED,wBAAgB,SAAS,CAAC,QAAQ,CAAC,EAAE;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;CAAE,EAAE,OAAO,CAAC,EAAE,MAAM,OAG5E;AAED,eAAO,MAAM,MAAM,eAAgB,GAAG,YAA0C,CAAA;AAEhF,OAAO,KAAK,cAAc,MAAM,kBAAkB,CAAA;AAElD,OAAO,EAAE,OAAO,EAAE,MAAM,QAAQ,CAAA;AAEhC,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAA;AAExC,wBAAgB,iBAAiB,CAAC,CAAC,EAClC,IAAI,CAAC,EAAE,GAAG,EAAE,EACZ,UAAU,CAAC,EAAE,MAAM,EAAE,GACnB,cAAc,CAAC,CAAC,CAAC,CAWnB;AAED,wBAAgB,KAAK,CAAC,EAAE,GAAE,MAAY,oBAErC;AAED,wBAAgB,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAcvD"}
|
package/package.json
CHANGED
|
@@ -25,6 +25,7 @@ const props = defineProps({
|
|
|
25
25
|
})
|
|
26
26
|
const emit = defineEmits(['update:index'])
|
|
27
27
|
const bglSlider = $ref<HTMLElement>()
|
|
28
|
+
let itemCount = $ref(props.items)
|
|
28
29
|
let activeSlideIndex = $ref(0)
|
|
29
30
|
let isDragging = $ref(false)
|
|
30
31
|
let startX = $ref(0)
|
|
@@ -55,6 +56,7 @@ function evalHeight() {
|
|
|
55
56
|
|
|
56
57
|
function scrollEase(target: number, duration: number = 500) {
|
|
57
58
|
if (!bglSlider) return
|
|
59
|
+
if (isPressed) return
|
|
58
60
|
const start = bglSlider.scrollLeft
|
|
59
61
|
const change = target - start
|
|
60
62
|
const startTime = performance.now()
|
|
@@ -103,23 +105,29 @@ watch(
|
|
|
103
105
|
emit('update:index', activeSlideIndex) }
|
|
104
106
|
)
|
|
105
107
|
|
|
106
|
-
function
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
108
|
+
function goToSlideScrollEnd() {
|
|
109
|
+
if (!bglSlider) return
|
|
110
|
+
const isDragForward = startX > bglSlider.offsetLeft
|
|
111
|
+
if (itemCount === 1) {
|
|
112
|
+
if (isDragForward) activeSlideIndex = Math.ceil(bglSlider.scrollLeft / bglSlider.offsetWidth)
|
|
113
|
+
else activeSlideIndex = Math.floor(bglSlider.scrollLeft / bglSlider.offsetWidth)
|
|
114
|
+
} else {
|
|
115
|
+
activeSlideIndex = Math.round(bglSlider.scrollLeft / bglSlider.offsetWidth)
|
|
116
|
+
}
|
|
117
|
+
startX = 0
|
|
118
|
+
const nextSlide = Math.round(bglSlider.scrollLeft / bglSlider.offsetWidth)
|
|
110
119
|
goToSlide(nextSlide)
|
|
111
120
|
}
|
|
112
121
|
|
|
122
|
+
let timeout: any = null
|
|
123
|
+
|
|
124
|
+
function scrollEnd() {
|
|
125
|
+
if (timeout) clearTimeout(timeout)
|
|
126
|
+
timeout = setTimeout(goToSlideScrollEnd, 400)
|
|
127
|
+
}
|
|
128
|
+
|
|
113
129
|
function stopDragging(e: MouseEvent) {
|
|
114
130
|
isPressed = false
|
|
115
|
-
const slider = bglSlider
|
|
116
|
-
if (!slider) return
|
|
117
|
-
const isDragForward = startX > e.pageX + slider.offsetLeft
|
|
118
|
-
if (isDragForward)
|
|
119
|
-
activeSlideIndex = Math.ceil(slider.scrollLeft / slider.offsetWidth)
|
|
120
|
-
else activeSlideIndex = Math.floor(slider.scrollLeft / slider.offsetWidth)
|
|
121
|
-
if (props.items === 1) goToSlide(activeSlideIndex)
|
|
122
|
-
startX = 0
|
|
123
131
|
document.removeEventListener('mousemove', move)
|
|
124
132
|
document.removeEventListener('mouseup', stopDragging)
|
|
125
133
|
document.removeEventListener('dragend', stopDragging)
|
|
@@ -143,7 +151,7 @@ function startDragging(e: MouseEvent) {
|
|
|
143
151
|
isPressed = true
|
|
144
152
|
document.addEventListener('mousemove', move)
|
|
145
153
|
document.addEventListener('mouseup', stopDragging)
|
|
146
|
-
document.addEventListener('dragend', stopDragging)
|
|
154
|
+
// document.addEventListener('dragend', stopDragging)
|
|
147
155
|
}
|
|
148
156
|
|
|
149
157
|
function next() {
|
|
@@ -163,12 +171,18 @@ function prev() {
|
|
|
163
171
|
|
|
164
172
|
function evalWidth() {
|
|
165
173
|
if (!bglSlider) return
|
|
174
|
+
if (window.innerWidth < 600) itemCount = 1
|
|
175
|
+
else if (window.innerWidth < 991) itemCount = Math.min(props.items, 2)
|
|
176
|
+
else if (window.innerWidth < 1280) itemCount = Math.min(props.items, 3)
|
|
177
|
+
else itemCount = props.items
|
|
178
|
+
console.log(itemCount, window.innerWidth)
|
|
166
179
|
goToSlide(activeSlideIndex)
|
|
167
180
|
}
|
|
168
181
|
|
|
169
182
|
onMounted(() => {
|
|
170
183
|
window.addEventListener('resize', evalWidth)
|
|
171
184
|
evalHeight()
|
|
185
|
+
evalWidth()
|
|
172
186
|
disableDrag()
|
|
173
187
|
})
|
|
174
188
|
|
|
@@ -182,10 +196,15 @@ onUnmounted(() => { window.removeEventListener('resize', evalWidth) })
|
|
|
182
196
|
:class="{
|
|
183
197
|
dragging: isDragging,
|
|
184
198
|
clicking: isPressed,
|
|
185
|
-
[`slides-${items}`]: true,
|
|
186
199
|
allowScroll,
|
|
200
|
+
odd: itemCount % 2 !== 0,
|
|
201
|
+
[`slides-${itemCount}`]: itemCount === 1,
|
|
187
202
|
}"
|
|
188
203
|
class="bgl-slider"
|
|
204
|
+
:style="{
|
|
205
|
+
'--item-count': itemCount,
|
|
206
|
+
}"
|
|
207
|
+
@scroll.active="scrollEnd"
|
|
189
208
|
@mousedown="startDragging"
|
|
190
209
|
>
|
|
191
210
|
<div v-if="isDragging" class="blocker" />
|
|
@@ -230,33 +249,18 @@ onUnmounted(() => { window.removeEventListener('resize', evalWidth) })
|
|
|
230
249
|
overflow-x: scroll;
|
|
231
250
|
}
|
|
232
251
|
|
|
233
|
-
.bgl-slider
|
|
234
|
-
grid-auto-columns:
|
|
235
|
-
gap: 1%;
|
|
236
|
-
}
|
|
237
|
-
|
|
238
|
-
.bgl-slider.slides-5 {
|
|
239
|
-
grid-auto-columns: 19.3%;
|
|
240
|
-
gap: 1%;
|
|
241
|
-
}
|
|
242
|
-
|
|
243
|
-
.bgl-slider.slides-4 {
|
|
244
|
-
grid-auto-columns: 24.3%;
|
|
245
|
-
gap: 1%;
|
|
246
|
-
}
|
|
247
|
-
|
|
248
|
-
.bgl-slider.slides-3 {
|
|
249
|
-
grid-auto-columns: 33%;
|
|
252
|
+
.bgl-slider {
|
|
253
|
+
grid-auto-columns: calc(100% / var(--item-count) - calc(var(--item-count) - 1) * 1%);
|
|
250
254
|
gap: 1%;
|
|
251
255
|
}
|
|
252
256
|
|
|
253
|
-
.bgl-slider.
|
|
254
|
-
grid-auto-columns:
|
|
255
|
-
gap: 1%;
|
|
257
|
+
.bgl-slider.odd {
|
|
258
|
+
grid-auto-columns: calc(100% / var(--item-count) - calc(var(--item-count) - 2) * 1%);
|
|
256
259
|
}
|
|
257
260
|
|
|
258
261
|
.bgl-slider.slides-1 {
|
|
259
262
|
grid-auto-columns: 100%;
|
|
263
|
+
gap: 0;
|
|
260
264
|
}
|
|
261
265
|
|
|
262
266
|
.bgl-slider::-webkit-scrollbar {
|
|
@@ -282,21 +286,10 @@ onUnmounted(() => { window.removeEventListener('resize', evalWidth) })
|
|
|
282
286
|
user-select: none;
|
|
283
287
|
}
|
|
284
288
|
|
|
285
|
-
@media screen and (max-width: 1280px) {
|
|
286
|
-
.bgl-slider.slides-4 {
|
|
287
|
-
grid-auto-columns: 33%;
|
|
288
|
-
}
|
|
289
|
-
}
|
|
290
|
-
|
|
291
|
-
@media screen and (max-width: 991px) {
|
|
292
|
-
.bgl-slider.slides-4 {
|
|
293
|
-
grid-auto-columns: 50%;
|
|
294
|
-
}
|
|
295
|
-
}
|
|
296
|
-
|
|
297
289
|
@media screen and (max-width: 600px) {
|
|
298
|
-
.bgl-slider.slides-
|
|
299
|
-
|
|
290
|
+
.bgl-slider.slides-1 * {
|
|
291
|
+
margin-inline-start: 1%;
|
|
300
292
|
}
|
|
293
|
+
|
|
301
294
|
}
|
|
302
295
|
</style>
|
package/src/components/Pill.vue
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
<script setup lang="ts">
|
|
2
|
-
import type { MaterialIcons, ThemeType } from '@bagelink/vue'
|
|
3
2
|
import { Btn, MaterialIcon } from '@bagelink/vue'
|
|
4
3
|
import { useSlots } from 'vue'
|
|
4
|
+
import type { MaterialIcons, ThemeType } from '@bagelink/vue'
|
|
5
5
|
|
|
6
6
|
interface BtnProp {
|
|
7
7
|
icon: MaterialIcons
|
|
@@ -270,7 +270,16 @@ function drop(e: DragEvent) {
|
|
|
270
270
|
class="single-image-item-preview"
|
|
271
271
|
:class="{ 'bgl_fill-image': fill }"
|
|
272
272
|
>
|
|
273
|
-
<
|
|
273
|
+
<div v-if="isImage(file.extension || file.url)" class="h-100">
|
|
274
|
+
<img v-lightbox class="single-preview" :src="file.url" alt="">
|
|
275
|
+
<div class="position-start m-05 gap-025 flex">
|
|
276
|
+
<Btn v-tooltip="'Delete'" color="gray" thin icon="delete" @click.stop="removeFile(file)" />
|
|
277
|
+
<Btn
|
|
278
|
+
v-tooltip="'Replace'" color="gray" thin icon="autorenew"
|
|
279
|
+
@click="browse"
|
|
280
|
+
/>
|
|
281
|
+
</div>
|
|
282
|
+
</div>
|
|
274
283
|
<Icon v-else :size="4" weight="2" icon="draft" class="color-primary w-100" />
|
|
275
284
|
</div>
|
|
276
285
|
|
|
@@ -407,8 +416,21 @@ function drop(e: DragEvent) {
|
|
|
407
416
|
height: calc(100% - 2rem);
|
|
408
417
|
object-fit: cover;
|
|
409
418
|
background: var(--bgl-gray-light);
|
|
410
|
-
box-shadow: 0 0 10px #00000012;
|
|
411
419
|
}
|
|
420
|
+
.single-image-item-preview:hover::after{
|
|
421
|
+
content: "zoom_in";
|
|
422
|
+
font-size: 32px;
|
|
423
|
+
font-family: "Material Symbols Outlined", serif;
|
|
424
|
+
position: absolute;
|
|
425
|
+
border-radius: 100%;
|
|
426
|
+
color: var(--bgl-white);
|
|
427
|
+
z-index: 9;
|
|
428
|
+
pointer-events: none;
|
|
429
|
+
}
|
|
430
|
+
.single-image-item-preview:hover img{
|
|
431
|
+
filter: brightness(70%);
|
|
432
|
+
}
|
|
433
|
+
|
|
412
434
|
.bgl_fill-image.single-image-item-preview {
|
|
413
435
|
height: 100%;
|
|
414
436
|
}
|