@akinon/pz-virtual-try-on 1.119.0-rc.3 → 2.0.0-beta.13

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.
@@ -122,23 +122,6 @@ export function VirtualTryOnUploadModal({
122
122
  const localHookData = product ? useVirtualTryOn(product) : null;
123
123
  const activeHookData = hookData || localHookData;
124
124
 
125
-
126
- const getImageSrc = (
127
- settingsImage: string | undefined,
128
- defaultImage: string | { src: string }
129
- ): string => {
130
- if (settingsImage) return settingsImage;
131
- return typeof defaultImage === 'string' ? defaultImage : defaultImage.src;
132
- };
133
-
134
- const getText = (
135
- settingsText: string | undefined,
136
- localizationKey: string
137
- ): string => {
138
- if (settingsText) return settingsText;
139
- return t(localizationKey);
140
- };
141
-
142
125
  const {
143
126
  uploadedImage,
144
127
  originalImage,
@@ -168,19 +151,12 @@ export function VirtualTryOnUploadModal({
168
151
  imageRef,
169
152
  handleCropComplete = () => {},
170
153
  toggleCropMode = () => {},
171
- confirmCrop = () => {},
172
- closeCrop = () => {}
154
+ confirmCrop = () => {}
173
155
  } = cropperHook || {};
174
156
 
175
157
  const [shouldProcessAfterCrop, setShouldProcessAfterCrop] = useState(false);
176
158
  const [isDragging, setIsDragging] = useState(false);
177
159
 
178
- useEffect(() => {
179
- if (error && closeCrop) {
180
- closeCrop();
181
- }
182
- }, [error, closeCrop]);
183
-
184
160
  useEffect(() => {
185
161
  if (shouldProcessAfterCrop && uploadedImage && !isCropLoading) {
186
162
  setShouldProcessAfterCrop(false);
@@ -441,8 +417,8 @@ export function VirtualTryOnUploadModal({
441
417
  )}
442
418
  >
443
419
  {uploadedImage
444
- ? getText(settings?.customStyles?.uploadModalTexts?.editPhotoTitle, 'product.virtual_try_on.edit_photo')
445
- : getText(settings?.customStyles?.uploadModalTexts?.title, 'product.virtual_try_on.title')}
420
+ ? t('product.virtual_try_on.edit_photo')
421
+ : t('product.virtual_try_on.title')}
446
422
  </h3>
447
423
  <button
448
424
  type="button"
@@ -515,7 +491,7 @@ export function VirtualTryOnUploadModal({
515
491
  )
516
492
  )}
517
493
  >
518
- {getText(settings?.customStyles?.uploadModalTexts?.uploadPrompt, 'product.virtual_try_on.upload_prompt')}
494
+ {t('product.virtual_try_on.upload_prompt')}
519
495
  </p>
520
496
  <p
521
497
  className={twMerge(
@@ -532,7 +508,7 @@ export function VirtualTryOnUploadModal({
532
508
  )
533
509
  )}
534
510
  >
535
- {getText(settings?.customStyles?.uploadRequirements, 'product.virtual_try_on.upload_requirements')}
511
+ {t('product.virtual_try_on.upload_requirements')}
536
512
  </p>
537
513
  </div>
538
514
  <input
@@ -559,7 +535,8 @@ export function VirtualTryOnUploadModal({
559
535
  settings?.customStyles?.rulesInfoText
560
536
  )}
561
537
  >
562
- {getText(settings?.customStyles?.uploadModalTexts?.uploadInfo, 'product.virtual_try_on.upload_info')}
538
+ {t('product.virtual_try_on.upload_info') ||
539
+ 'Uygulamaya uygun fotoğraf yüklemeniz çok önemlidir.'}
563
540
  </p>
564
541
  </div>
565
542
 
@@ -583,7 +560,11 @@ export function VirtualTryOnUploadModal({
583
560
  )}
584
561
  >
585
562
  <img
586
- src={getImageSrc(settings?.customStyles?.uploadModalImages?.ruleGoodExample, rule1Image)}
563
+ src={
564
+ typeof rule1Image === 'string'
565
+ ? rule1Image
566
+ : rule1Image.src
567
+ }
587
568
  alt="Example"
588
569
  className={twMerge(
589
570
  'w-full h-full',
@@ -599,10 +580,10 @@ export function VirtualTryOnUploadModal({
599
580
  )}
600
581
  >
601
582
  {[
602
- { img: getImageSrc(settings?.customStyles?.uploadModalImages?.ruleBadExample1, rule2Image), num: 2 },
603
- { img: getImageSrc(settings?.customStyles?.uploadModalImages?.ruleBadExample2, rule3Image), num: 3 },
604
- { img: getImageSrc(settings?.customStyles?.uploadModalImages?.ruleBadExample3, rule4Image), num: 4 },
605
- { img: getImageSrc(settings?.customStyles?.uploadModalImages?.ruleBadExample4, rule5Image), num: 5 }
583
+ { img: rule2Image, num: 2 },
584
+ { img: rule3Image, num: 3 },
585
+ { img: rule4Image, num: 4 },
586
+ { img: rule5Image, num: 5 }
606
587
  ].map(({ img, num }) => (
607
588
  <div
608
589
  key={num}
@@ -613,7 +594,7 @@ export function VirtualTryOnUploadModal({
613
594
  )}
614
595
  >
615
596
  <img
616
- src={img}
597
+ src={typeof img === 'string' ? img : img.src}
617
598
  alt={`Bad example ${num}`}
618
599
  className={twMerge(
619
600
  'w-full h-full',
@@ -656,7 +637,7 @@ export function VirtualTryOnUploadModal({
656
637
  settings?.customStyles?.rulesListItemText
657
638
  }
658
639
  >
659
- {getText(settings?.customStyles?.uploadModalTexts?.rule1, 'product.virtual_try_on.rule_1')}
640
+ {t('product.virtual_try_on.rule_1')}
660
641
  </span>
661
642
  </li>
662
643
  <li
@@ -678,7 +659,7 @@ export function VirtualTryOnUploadModal({
678
659
  settings?.customStyles?.rulesListItemText
679
660
  }
680
661
  >
681
- {getText(settings?.customStyles?.uploadModalTexts?.rule2, 'product.virtual_try_on.rule_2')}
662
+ {t('product.virtual_try_on.rule_2')}
682
663
  </span>
683
664
  </li>
684
665
  <li
@@ -700,7 +681,7 @@ export function VirtualTryOnUploadModal({
700
681
  settings?.customStyles?.rulesListItemText
701
682
  }
702
683
  >
703
- {getText(settings?.customStyles?.uploadModalTexts?.rule3, 'product.virtual_try_on.rule_3')}
684
+ {t('product.virtual_try_on.rule_3')}
704
685
  </span>
705
686
  </li>
706
687
  <li
@@ -722,7 +703,7 @@ export function VirtualTryOnUploadModal({
722
703
  settings?.customStyles?.rulesListItemText
723
704
  }
724
705
  >
725
- {getText(settings?.customStyles?.uploadModalTexts?.rule4, 'product.virtual_try_on.rule_4')}
706
+ {t('product.virtual_try_on.rule_4')}
726
707
  </span>
727
708
  </li>
728
709
  <li
@@ -744,7 +725,7 @@ export function VirtualTryOnUploadModal({
744
725
  settings?.customStyles?.rulesListItemText
745
726
  }
746
727
  >
747
- {getText(settings?.customStyles?.uploadModalTexts?.rule5, 'product.virtual_try_on.rule_5')}
728
+ {t('product.virtual_try_on.rule_5')}
748
729
  </span>
749
730
  </li>
750
731
  <li
@@ -766,7 +747,7 @@ export function VirtualTryOnUploadModal({
766
747
  settings?.customStyles?.rulesListItemText
767
748
  }
768
749
  >
769
- {getText(settings?.customStyles?.uploadModalTexts?.rule6, 'product.virtual_try_on.rule_6')}
750
+ {t('product.virtual_try_on.rule_6')}
770
751
  </span>
771
752
  </li>
772
753
  </ul>
@@ -792,7 +773,11 @@ export function VirtualTryOnUploadModal({
792
773
  )}
793
774
  >
794
775
  <img
795
- src={getImageSrc(settings?.customStyles?.uploadModalImages?.ruleGoodExample, rule1Image)}
776
+ src={
777
+ typeof rule1Image === 'string'
778
+ ? rule1Image
779
+ : rule1Image.src
780
+ }
796
781
  alt="Example"
797
782
  className={twMerge(
798
783
  'relative w-full',
@@ -811,10 +796,10 @@ export function VirtualTryOnUploadModal({
811
796
  )}
812
797
  >
813
798
  {[
814
- { img: getImageSrc(settings?.customStyles?.uploadModalImages?.ruleBadExample1, rule2Image), num: 2 },
815
- { img: getImageSrc(settings?.customStyles?.uploadModalImages?.ruleBadExample2, rule3Image), num: 3 },
816
- { img: getImageSrc(settings?.customStyles?.uploadModalImages?.ruleBadExample3, rule4Image), num: 4 },
817
- { img: getImageSrc(settings?.customStyles?.uploadModalImages?.ruleBadExample4, rule5Image), num: 5 }
799
+ { img: rule2Image, num: 2 },
800
+ { img: rule3Image, num: 3 },
801
+ { img: rule4Image, num: 4 },
802
+ { img: rule5Image, num: 5 }
818
803
  ].map(({ img, num }) => (
819
804
  <div
820
805
  key={num}
@@ -825,7 +810,9 @@ export function VirtualTryOnUploadModal({
825
810
  )}
826
811
  >
827
812
  <img
828
- src={img}
813
+ src={
814
+ typeof img === 'string' ? img : img.src
815
+ }
829
816
  alt={`Bad example ${num}`}
830
817
  className={twMerge(
831
818
  'w-full h-full',
@@ -850,7 +837,7 @@ export function VirtualTryOnUploadModal({
850
837
  settings?.customStyles?.rulesInfoTextDesktop
851
838
  )}
852
839
  >
853
- {getText(settings?.customStyles?.uploadModalTexts?.uploadInfo, 'product.virtual_try_on.upload_info')}
840
+ {t('product.virtual_try_on.upload_info')}
854
841
  </p>
855
842
  <ul
856
843
  className={twMerge(
@@ -878,7 +865,7 @@ export function VirtualTryOnUploadModal({
878
865
  settings?.customStyles?.rulesListItemText
879
866
  }
880
867
  >
881
- {getText(settings?.customStyles?.uploadModalTexts?.rule1, 'product.virtual_try_on.rule_1')}
868
+ {t('product.virtual_try_on.rule_1')}
882
869
  </span>
883
870
  </li>
884
871
  <li
@@ -901,7 +888,7 @@ export function VirtualTryOnUploadModal({
901
888
  settings?.customStyles?.rulesListItemText
902
889
  }
903
890
  >
904
- {getText(settings?.customStyles?.uploadModalTexts?.rule2, 'product.virtual_try_on.rule_2')}
891
+ {t('product.virtual_try_on.rule_2')}
905
892
  </span>
906
893
  </li>
907
894
  <li
@@ -924,7 +911,7 @@ export function VirtualTryOnUploadModal({
924
911
  settings?.customStyles?.rulesListItemText
925
912
  }
926
913
  >
927
- {getText(settings?.customStyles?.uploadModalTexts?.rule3, 'product.virtual_try_on.rule_3')}
914
+ {t('product.virtual_try_on.rule_3')}
928
915
  </span>
929
916
  </li>
930
917
  <li
@@ -947,7 +934,7 @@ export function VirtualTryOnUploadModal({
947
934
  settings?.customStyles?.rulesListItemText
948
935
  }
949
936
  >
950
- {getText(settings?.customStyles?.uploadModalTexts?.rule4, 'product.virtual_try_on.rule_4')}
937
+ {t('product.virtual_try_on.rule_4')}
951
938
  </span>
952
939
  </li>
953
940
  <li
@@ -970,7 +957,7 @@ export function VirtualTryOnUploadModal({
970
957
  settings?.customStyles?.rulesListItemText
971
958
  }
972
959
  >
973
- {getText(settings?.customStyles?.uploadModalTexts?.rule5, 'product.virtual_try_on.rule_5')}
960
+ {t('product.virtual_try_on.rule_5')}
974
961
  </span>
975
962
  </li>
976
963
  <li
@@ -993,7 +980,7 @@ export function VirtualTryOnUploadModal({
993
980
  settings?.customStyles?.rulesListItemText
994
981
  }
995
982
  >
996
- {getText(settings?.customStyles?.uploadModalTexts?.rule6, 'product.virtual_try_on.rule_6')}
983
+ {t('product.virtual_try_on.rule_6')}
997
984
  </span>
998
985
  </li>
999
986
  </ul>
@@ -1024,17 +1011,14 @@ export function VirtualTryOnUploadModal({
1024
1011
  minWidth={100}
1025
1012
  minHeight={100}
1026
1013
  keepSelection={true}
1027
- className={twMerge(
1028
- 'w-full',
1029
- error && 'pointer-events-none'
1030
- )}
1014
+ className="w-full"
1031
1015
  >
1032
1016
  <img
1033
1017
  ref={imageRef}
1034
1018
  src={uploadedImage || ''}
1035
1019
  alt="Uploaded image"
1036
1020
  className={twMerge(
1037
- 'rounded-[4px] w-auto pointer-events-none select-none',
1021
+ 'rounded-[4px] w-auto',
1038
1022
  settings?.customStyles?.cropImage
1039
1023
  )}
1040
1024
  />
@@ -1182,8 +1166,6 @@ export function VirtualTryOnUploadModal({
1182
1166
  completedCrop.height > 10
1183
1167
  ) {
1184
1168
  await confirmCrop();
1185
- // Reset crop selection after confirm
1186
- setCrop(undefined);
1187
1169
  setShouldProcessAfterCrop(true);
1188
1170
  } else {
1189
1171
  processTryOn();