@wizishop/img-manager 0.2.81 → 0.2.86

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.
Files changed (41) hide show
  1. package/assets/i18n/en.json +1 -1
  2. package/assets/i18n/fr.json +1 -1
  3. package/bundles/wizishop-img-manager.umd.js +276 -30
  4. package/bundles/wizishop-img-manager.umd.js.map +1 -1
  5. package/bundles/wizishop-img-manager.umd.min.js +2 -2
  6. package/bundles/wizishop-img-manager.umd.min.js.map +1 -1
  7. package/esm2015/lib/components/img-tabs/img-tabs.component.js +40 -9
  8. package/esm2015/lib/components/shared/select/call-to-action.model.js +1 -0
  9. package/esm2015/lib/components/shared/select/select-items.dto.js +1 -0
  10. package/esm2015/lib/components/shared/select/select.component.js +133 -0
  11. package/esm2015/lib/directives/zindex-toggle.directive.js +49 -0
  12. package/esm2015/lib/pipes/select/select-filters.pipe.js +17 -0
  13. package/esm2015/lib/services/img-manager.service.js +11 -1
  14. package/esm2015/lib/wz-img-manager.module.js +11 -3
  15. package/esm2015/wizishop-img-manager.js +20 -17
  16. package/esm5/lib/components/img-tabs/img-tabs.component.js +40 -9
  17. package/esm5/lib/components/shared/select/call-to-action.model.js +1 -0
  18. package/esm5/lib/components/shared/select/select-items.dto.js +1 -0
  19. package/esm5/lib/components/shared/select/select.component.js +136 -0
  20. package/esm5/lib/directives/zindex-toggle.directive.js +54 -0
  21. package/esm5/lib/pipes/select/select-filters.pipe.js +20 -0
  22. package/esm5/lib/services/img-manager.service.js +11 -1
  23. package/esm5/lib/wz-img-manager.module.js +11 -3
  24. package/esm5/wizishop-img-manager.js +20 -17
  25. package/fesm2015/wizishop-img-manager.js +245 -11
  26. package/fesm2015/wizishop-img-manager.js.map +1 -1
  27. package/fesm5/wizishop-img-manager.js +256 -11
  28. package/fesm5/wizishop-img-manager.js.map +1 -1
  29. package/lib/components/img-tabs/img-tabs.component.d.ts +8 -4
  30. package/lib/components/shared/select/call-to-action.model.d.ts +6 -0
  31. package/lib/components/shared/select/select-items.dto.d.ts +8 -0
  32. package/lib/components/shared/select/select.component.d.ts +38 -0
  33. package/lib/directives/zindex-toggle.directive.d.ts +13 -0
  34. package/lib/pipes/select/select-filters.pipe.d.ts +5 -0
  35. package/lib/services/img-manager.service.d.ts +2 -1
  36. package/package.json +2 -1
  37. package/wizishop-img-manager-0.2.86.tgz +0 -0
  38. package/wizishop-img-manager.d.ts +19 -16
  39. package/wizishop-img-manager.metadata.json +1 -1
  40. package/wz-img-manager.scss +1927 -1489
  41. package/wizishop-img-manager-0.2.81.tgz +0 -0
@@ -1 +1 @@
1
- {"ImgManager.CanvaBtn.bigSquare":"Big","ImgManager.CanvaBtn.createImg":"Create an image with","ImgManager.CanvaBtn.createImg.title":"Create an image with Canva","ImgManager.CanvaBtn.errorRenameCanvaImg":"Error: the title of the image from Canva could not be retrieved.","ImgManager.CanvaBtn.errorUploadCanvaImg":"Error: the image from Canva could not be uploaded.","ImgManager.CanvaBtn.info":"Select a format","ImgManager.CanvaBtn.mediumSquare":"Medium","ImgManager.CanvaBtn.publish":"Import","ImgManager.CanvaBtn.recommanded":"Recommended","ImgManager.CanvaBtn.smallSquare":"Small","ImgManager.CanvaBtn.successImport":"Your image has been imported.","ImgManager.CanvaBtn.uploadingImg":"Image loading.","ImgManager.ImgCard.confirmDeleteImg":"Are you sure you want to delete this image?","ImgManager.ImgCard.del":"Delete","ImgManager.ImgCard.download":"Download","ImgManager.ImgCard.edit":"Edit","ImgManager.ImgCard.select":"Select","ImgManager.ImgCard.validImgSmall":"Select","ImgManager.ImgEditor.config.AntiSchedule":"Anti-clockwise","ImgManager.ImgEditor.config.dezoom":"Zoom less","ImgManager.ImgEditor.config.flipHoriz":"Turn horizontally","ImgManager.ImgEditor.config.flipVert":"Vertical Reversal","ImgManager.ImgEditor.config.free":"Free size","ImgManager.ImgEditor.config.landscape":"Landscape","ImgManager.ImgEditor.config.origin":"Original format","ImgManager.ImgEditor.config.Portrait":"Portrait","ImgManager.ImgEditor.config.schedule":"Clockwise","ImgManager.ImgEditor.config.square":"Square","ImgManager.ImgEditor.config.zoom":"Zoom more","ImgManager.ImgEditor.copytoClipBoard":"Copied!","ImgManager.ImgEditor.crop":"Crop","ImgManager.ImgEditor.display":"Zoom","ImgManager.ImgEditor.msgFailLoad":"Error: please start again.","ImgManager.ImgEditor.msgFailSave":"Error: The image could not be saved.<br/>Please try again.","ImgManager.ImgEditor.nameEx":"Ex: Black T-shirt","ImgManager.ImgEditor.NameInfo":"The name of the image is used to define the alt attribute.","ImgManager.ImgEditor.restart":"Refresh","ImgManager.ImgEditor.rotation":"Rotate","ImgManager.ImgEditor.saveBtn":"Save and close","ImgManager.ImgEditor.Valid":"Confirm","ImgManager.ImgEditor.ValidtToolTip":"Click here to crop the image","ImgManager.ImgLib.cancel":"Cancel","ImgManager.ImgLib.confirm":"Confirm","ImgManager.ImgLib.confirmSupQuestion":"{{nbImage}} image to delete: Are you sure?","ImgManager.ImgLib.confirmSupQuestions":"{{nbImage}} images to delete: Are you sure?","ImgManager.ImgLib.delMlt":"Delete","ImgManager.ImgLib.errorGetAllImg":"Error: Your images could not be recovered.","ImgManager.ImgLib.errorGetCanvaImg":"Error: the image from Canva could not be retrieved.","ImgManager.ImgLib.errorGetTotalImg":"Error: The total number of images has not been recovered.","ImgManager.ImgLib.imgNameSaved":"Image name saved.","ImgManager.ImgLib.lastImgs":"Your last images","ImgManager.ImgLib.nbImg":"Number of images","ImgManager.ImgLib.noImgFound":"No images found.<br/>Display free images.","ImgManager.ImgLib.savingImgName":"Backup in progress...","ImgManager.ImgLib.select":"Select","ImgManager.ImgList.download":"Download","ImgManager.ImgList.edit":"Edit","ImgManager.ImgList.errorAlreadyUsed":"This image can not be deleted as it is being used.","ImgManager.ImgList.errorRemoveImg":"Error: Some images could not be deleted.","ImgManager.ImgList.errorRenameImg":"Error: Some images could not be renamed.","ImgManager.ImgList.remove":"Delete","ImgManager.ImgList.titleImgName":"Image name","ImgManager.ImgList.titleResolution":"Resolution","ImgManager.ImgSelection.deleteImg":"Delete","ImgManager.ImgSelection.tooltips":"Click to change the order of the images","ImgManager.ImgSelection.unselect":"Drag the image here to remove it from the selection","ImgManager.ImgUpload.dropImg":"Drag and drop your image here","ImgManager.ImgUpload.errorNotImg":"Error: Only images can be imported.","ImgManager.ImgUpload.errorUploadingImg":"Error: An image could not be imported.","ImgManager.ImgUpload.loading":"Loading...","ImgManager.ImgUpload.or":"or","ImgManager.ImgUpload.selectImg":"Select the images to be imported","ImgManager.PexelLib.errorRetrievePhotos":"Error: The Pexel images have not been recovered.","ImgManager.PexelLib.errorUploadPhoto":"Error: the image could not be imported","ImgManager.PexelLib.import":"Import","ImgManager.PexelLib.importation":"Import","ImgManager.PexelLib.landscape":"Landscape","ImgManager.PexelLib.nbImgFound":"Number if images found","ImgManager.PexelLib.noResult":"No image found.","ImgManager.PexelLib.original":"Original.","ImgManager.PexelLib.portrait":"Portrait","ImgManager.PexelLib.successImport":"Image imported","ImgManager.PexelLib.untitled":"No title","ImgManager.PexelLib.uploadingImg":"Loading the current image.","ImgManager.SearchBar.placeholder":"Name of the image to search","ImgManager.snackBar.action":"View image","ImgManager.Tabs.addImg":"Add an image","ImgManager.Tabs.Editor":"Image editor","ImgManager.Tabs.freeImgLib":"Free image library","ImgManager.Tabs.imgLib":"Your images","ImgManager.UploadList.imgSuccessImport":"Images successfully imported","ImgManager.UploadList.imgSuccessImportOne":"imported image optimized for SEO","ImgManager.UploadList.properties.imgName":"Image name","ImgManager.UploadList.properties.imgSize":"Size of original image","ImgManager.UploadList.properties.imgURL":"Image URL","ImgManager.UploadList.properties.imgWeight":"Size of original file","ImgManager.UploadList.seo.cdn":"Addition in the CDN.","ImgManager.UploadList.seo.cdnTooltips":"The images you add to your website are sent directly to our CDN (Content Delivery Network). This allows the visuals to be loaded from the servers closest to the user.","ImgManager.UploadList.seo.lazyloading":"Automatic lazyloading.","ImgManager.UploadList.seo.lazyloadingTooltips":"With lazyloading, the content is loaded as the user scrolls down the page. This allows to load only the visible content.","ImgManager.UploadList.seo.rezise":"Resizing and compression.","ImgManager.UploadList.seo.reziseTooltips":"When importing your image on WiziShop, more than 22 formats are created to adapt to different screen sizes. This optimization allows us to send a different size of visual and compressed according to the support of the Internet user.","ImgManager.UploadList.seo.title":"SEO Optimizations","ImgManager.UploadList.seo.webp":"Webp generation","ImgManager.UploadList.seo.webpTooltips":"As soon as you add an image to your site, it will be accessible in the standard format, but it will also be automatically converted to the WebP format for Google. This format allows you to compress, as much as possible, the images present on your store to load them very quickly.","ImgManager.webElement.infoBulle":"The image manager allows you to <strong>download</strong> images, <strong> select them </strong> and apply some <strong>effects</strong> (crop, rotations...).<br/><br/>We recommend using <strong>several photos</strong> of the product (3 or 4) in various positions or environments.","ImgManager.webElement.OpenBtn":"Add photos","ImgManager.webElement.photosTitle":"Photos","no":"no","PaginationComponent.on":"{{low}}-{{high}} on {{total}}","PaginationComponent.page":"Go to page","yes":"yes"}
1
+ {"ImgManager.CanvaBtn.bigSquare":"Big","ImgManager.CanvaBtn.createImg":"Create an image with","ImgManager.CanvaBtn.createImg.title":"Create an image with Canva","ImgManager.CanvaBtn.errorRenameCanvaImg":"Error: the title of the image from Canva could not be retrieved.","ImgManager.CanvaBtn.errorUploadCanvaImg":"Error: the image from Canva could not be uploaded.","ImgManager.CanvaBtn.info":"Select a format","ImgManager.CanvaBtn.mediumSquare":"Medium","ImgManager.CanvaBtn.publish":"Import","ImgManager.CanvaBtn.recommanded":"Recommended","ImgManager.CanvaBtn.smallSquare":"Small","ImgManager.CanvaBtn.successImport":"Your image has been imported.","ImgManager.CanvaBtn.uploadingImg":"Image loading.","ImgManager.ImgCard.confirmDeleteImg":"Are you sure you want to delete this image?","ImgManager.ImgCard.del":"Delete","ImgManager.ImgCard.download":"Download","ImgManager.ImgCard.edit":"Edit","ImgManager.ImgCard.select":"Select","ImgManager.ImgCard.validImgSmall":"Select","ImgManager.ImgEditor.config.AntiSchedule":"Anti-clockwise","ImgManager.ImgEditor.config.dezoom":"Zoom less","ImgManager.ImgEditor.config.flipHoriz":"Turn horizontally","ImgManager.ImgEditor.config.flipVert":"Vertical Reversal","ImgManager.ImgEditor.config.free":"Free size","ImgManager.ImgEditor.config.landscape":"Landscape","ImgManager.ImgEditor.config.origin":"Original format","ImgManager.ImgEditor.config.Portrait":"Portrait","ImgManager.ImgEditor.config.schedule":"Clockwise","ImgManager.ImgEditor.config.square":"Square","ImgManager.ImgEditor.config.zoom":"Zoom more","ImgManager.ImgEditor.copytoClipBoard":"Copied!","ImgManager.ImgEditor.crop":"Crop","ImgManager.ImgEditor.display":"Zoom","ImgManager.ImgEditor.msgFailLoad":"Error: please start again.","ImgManager.ImgEditor.msgFailSave":"Error: The image could not be saved.<br/>Please try again.","ImgManager.ImgEditor.nameEx":"Ex: Black T-shirt","ImgManager.ImgEditor.NameInfo":"The name of the image is used to define the alt attribute.","ImgManager.ImgEditor.restart":"Refresh","ImgManager.ImgEditor.rotation":"Rotate","ImgManager.ImgEditor.saveBtn":"Save and close","ImgManager.ImgEditor.Valid":"Confirm","ImgManager.ImgEditor.ValidtToolTip":"Click here to crop the image","ImgManager.ImgLib.cancel":"Cancel","ImgManager.ImgLib.confirm":"Confirm","ImgManager.ImgLib.confirmSupQuestion":"{{nbImage}} image to delete: Are you sure?","ImgManager.ImgLib.confirmSupQuestions":"{{nbImage}} images to delete: Are you sure?","ImgManager.ImgLib.delMlt":"Delete","ImgManager.ImgLib.errorGetAllImg":"Error: Your images could not be recovered.","ImgManager.ImgLib.errorGetCanvaImg":"Error: the image from Canva could not be retrieved.","ImgManager.ImgLib.errorGetTotalImg":"Error: The total number of images has not been recovered.","ImgManager.ImgLib.imgNameSaved":"Image name saved.","ImgManager.ImgLib.lastImgs":"Your last images","ImgManager.ImgLib.nbImg":"Number of images","ImgManager.ImgLib.noImgFound":"No images found.<br/>Display free images.","ImgManager.ImgLib.savingImgName":"Backup in progress...","ImgManager.ImgLib.select":"Select","ImgManager.ImgList.download":"Download","ImgManager.ImgList.edit":"Edit","ImgManager.ImgList.errorAlreadyUsed":"This image can not be deleted as it is being used.","ImgManager.ImgList.errorRemoveImg":"Error: Some images could not be deleted.","ImgManager.ImgList.errorRenameImg":"Error: Some images could not be renamed.","ImgManager.ImgList.remove":"Delete","ImgManager.ImgList.titleImgName":"Image name","ImgManager.ImgList.titleResolution":"Resolution","ImgManager.ImgSelection.deleteImg":"Delete","ImgManager.ImgSelection.tooltips":"Click to change the order of the images","ImgManager.ImgSelection.unselect":"Drag the image here to remove it from the selection","ImgManager.ImgUpload.dropImg":"Drag and drop your image here","ImgManager.ImgUpload.errorNotImg":"Error: Only images can be imported.","ImgManager.ImgUpload.errorUploadingImg":"Error: An image could not be imported.","ImgManager.ImgUpload.loading":"Loading...","ImgManager.ImgUpload.or":"or","ImgManager.ImgUpload.selectImg":"Select the images to be imported","ImgManager.PexelLib.errorRetrievePhotos":"Error: The Pexel images have not been recovered.","ImgManager.PexelLib.errorUploadPhoto":"Error: the image could not be imported","ImgManager.PexelLib.import":"Import","ImgManager.PexelLib.importation":"Import","ImgManager.PexelLib.landscape":"Landscape","ImgManager.PexelLib.nbImgFound":"Number if images found","ImgManager.PexelLib.noResult":"No image found.","ImgManager.PexelLib.original":"Original.","ImgManager.PexelLib.portrait":"Portrait","ImgManager.PexelLib.successImport":"Your image has been successfully imported!","ImgManager.PexelLib.untitled":"No title","ImgManager.PexelLib.uploadingImg":"Loading the current image.","ImgManager.SearchBar.placeholder":"Name of the image to search","ImgManager.snackBar.action":"View image","ImgManager.Tabs.addImg":"Add an image","ImgManager.Tabs.Editor":"Image editor","ImgManager.Tabs.freeImgLib":"Free image library","ImgManager.Tabs.imgLib":"Your images","ImgManager.UploadList.imgSuccessImport":"images successfully imported and optimized for SEO","ImgManager.UploadList.imgSuccessImportOne":"imported image optimized for SEO","ImgManager.UploadList.properties.imgName":"Image name","ImgManager.UploadList.properties.imgSize":"Size of original image","ImgManager.UploadList.properties.imgURL":"Image URL","ImgManager.UploadList.properties.imgWeight":"Size of original file","ImgManager.UploadList.seo.cdn":"Addition in the CDN.","ImgManager.UploadList.seo.cdnTooltips":"The images you add to your website are sent directly to our CDN (Content Delivery Network). This allows the visuals to be loaded from the servers closest to the user.","ImgManager.UploadList.seo.lazyloading":"Automatic lazyloading.","ImgManager.UploadList.seo.lazyloadingTooltips":"With lazyloading, the content is loaded as the user scrolls down the page. This allows to load only the visible content.","ImgManager.UploadList.seo.rezise":"Resizing and compression.","ImgManager.UploadList.seo.reziseTooltips":"When importing your image on WiziShop, more than 22 formats are created to adapt to different screen sizes. This optimization allows us to send a different size of visual and compressed according to the support of the Internet user.","ImgManager.UploadList.seo.title":"SEO Optimizations","ImgManager.UploadList.seo.webp":"Webp generation","ImgManager.UploadList.seo.webpTooltips":"As soon as you add an image to your site, it will be accessible in the standard format, but it will also be automatically converted to the WebP format for Google. This format allows you to compress, as much as possible, the images present on your store to load them very quickly.","ImgManager.webElement.infoBulle":"The image manager allows you to <strong>download</strong> images, <strong> select them </strong> and apply some <strong>effects</strong> (crop, rotations...).<br/><br/>We recommend using <strong>several photos</strong> of the product (3 or 4) in various positions or environments.","ImgManager.webElement.OpenBtn":"Add photos","ImgManager.webElement.photosTitle":"Photos","no":"no","PaginationComponent.on":"{{low}}-{{high}} on {{total}}","PaginationComponent.page":"Go to page","wac.datatable.noresult":"There are no results for this search","yes":"yes"}
@@ -1 +1 @@
1
- {"ImgManager.CanvaBtn.bigSquare":"Grand","ImgManager.CanvaBtn.createImg":"Créer une image avec","ImgManager.CanvaBtn.createImg.title":"Créer une image avec Canva","ImgManager.CanvaBtn.errorRenameCanvaImg":"Erreur : le titre de l'image provenant de Canva n'a pas pu être récupéré.","ImgManager.CanvaBtn.errorUploadCanvaImg":"Erreur : l'image provenant de Canva n'a pas pu être téléchargée.","ImgManager.CanvaBtn.info":"Sélectionner un format","ImgManager.CanvaBtn.mediumSquare":"Moyen","ImgManager.CanvaBtn.publish":"Importer","ImgManager.CanvaBtn.recommanded":"Recommandé","ImgManager.CanvaBtn.smallSquare":"Petit","ImgManager.CanvaBtn.successImport":"Votre image a bien été importée.","ImgManager.CanvaBtn.uploadingImg":"Chargement de l'image en cours.","ImgManager.ImgCard.confirmDeleteImg":"Êtes vous sûrs de supprimer cette image ?","ImgManager.ImgCard.del":"Supprimer","ImgManager.ImgCard.download":"Télécharger","ImgManager.ImgCard.edit":"Éditer","ImgManager.ImgCard.select":"Sélectionner","ImgManager.ImgCard.validImgSmall":"Sélectionner","ImgManager.ImgEditor.config.AntiSchedule":"Sens anti-horaire","ImgManager.ImgEditor.config.dezoom":"Zoomer moins","ImgManager.ImgEditor.config.flipHoriz":"Retournement Horizontal","ImgManager.ImgEditor.config.flipVert":"Retournement Vertical","ImgManager.ImgEditor.config.free":"Format libre","ImgManager.ImgEditor.config.landscape":"Paysage","ImgManager.ImgEditor.config.origin":"Format d'origine","ImgManager.ImgEditor.config.Portrait":"Portrait","ImgManager.ImgEditor.config.schedule":"Sens horaire","ImgManager.ImgEditor.config.square":"Carré","ImgManager.ImgEditor.config.zoom":"Zoomer plus","ImgManager.ImgEditor.copytoClipBoard":"Copié !","ImgManager.ImgEditor.crop":"Recadrer","ImgManager.ImgEditor.display":"Affichage","ImgManager.ImgEditor.msgFailLoad":"Erreur : Veuillez recommencer.","ImgManager.ImgEditor.msgFailSave":"Erreur : L'image n'a pu être sauvegardée.<br/>Veuillez recommencer.","ImgManager.ImgEditor.nameEx":"Par ex: T-shirt noir","ImgManager.ImgEditor.NameInfo":"Le nom de l'image est utilisé pour définir l'attribut alt.","ImgManager.ImgEditor.restart":"Réinitialiser","ImgManager.ImgEditor.rotation":"Rotation","ImgManager.ImgEditor.saveBtn":"Enregistrer et Fermer","ImgManager.ImgEditor.Valid":"Valider","ImgManager.ImgEditor.ValidtToolTip":"Cliquez ici pour rogner l'image","ImgManager.ImgLib.cancel":"Annuler","ImgManager.ImgLib.confirm":"Confirmer","ImgManager.ImgLib.confirmSupQuestion":"{{nbImage}} image à supprimer : Confirmez-vous ce choix ?","ImgManager.ImgLib.confirmSupQuestions":"{{nbImage}} images à supprimer : Confirmez-vous ce choix ?","ImgManager.ImgLib.delMlt":"Supprimer","ImgManager.ImgLib.errorGetAllImg":"Erreur : Vos images n'ont pas pu être récupérées.","ImgManager.ImgLib.errorGetCanvaImg":"Erreur : Votre image Canva n'a pas pu être récupérée.","ImgManager.ImgLib.errorGetTotalImg":"Erreur : Le nombre total d'images n'a pas été récupéré.","ImgManager.ImgLib.imgNameSaved":"Nom de l'image sauvegardé.","ImgManager.ImgLib.lastImgs":"Vos dernières images","ImgManager.ImgLib.nbImg":"Nombre d'images","ImgManager.ImgLib.noImgFound":"Aucune image trouvée.<br/>Affichage d'images gratuites.","ImgManager.ImgLib.savingImgName":"Sauvegarde en cours...","ImgManager.ImgLib.select":"Sélectionner","ImgManager.ImgList.download":"Télécharger","ImgManager.ImgList.edit":"Éditer","ImgManager.ImgList.errorAlreadyUsed":"Cette image ne peut pas être supprimée, car elle est déjà utilisée.","ImgManager.ImgList.errorRemoveImg":"Erreur : Certaines images n'ont pas pu être supprimées.","ImgManager.ImgList.errorRenameImg":"Erreur : Certaines images n'ont pas pu être renomées.","ImgManager.ImgList.remove":"Supprimer","ImgManager.ImgList.titleImgName":"Nom de l'image","ImgManager.ImgList.titleResolution":"Résolution","ImgManager.ImgSelection.deleteImg":"Retirer","ImgManager.ImgSelection.tooltips":"Cliquez pour changer l'ordre de l'image","ImgManager.ImgSelection.unselect":"Glissez l'image ici pour la retirer de la sélection","ImgManager.ImgUpload.dropImg":"Glisser-déposer votre image ici","ImgManager.ImgUpload.errorNotImg":"Erreur : Seul les images peuvent être importées.","ImgManager.ImgUpload.errorUploadingImg":"Erreur : Une image n'a pas pu être importée.","ImgManager.ImgUpload.loading":"Chargement en cours.","ImgManager.ImgUpload.or":"ou","ImgManager.ImgUpload.selectImg":"Choisir les images à importer","ImgManager.PexelLib.errorRetrievePhotos":"Erreur : Les images Pexel n'ont pas été récupérées.","ImgManager.PexelLib.errorUploadPhoto":"Erreur : L'image n'a pas pu être importée.","ImgManager.PexelLib.import":"Importer","ImgManager.PexelLib.importation":"Importation","ImgManager.PexelLib.landscape":"Paysage","ImgManager.PexelLib.nbImgFound":"Nombre d'images gratuites trouvées","ImgManager.PexelLib.noResult":"Aucune image trouvée.","ImgManager.PexelLib.original":"Original","ImgManager.PexelLib.portrait":"Portrait","ImgManager.PexelLib.successImport":"Votre image a été importée avec succès !","ImgManager.PexelLib.untitled":"Sans titre","ImgManager.PexelLib.uploadingImg":"Chargement de l'image en cours.","ImgManager.SearchBar.placeholder":"Nom de l'image à rechercher","ImgManager.snackBar.action":"Voir l'image","ImgManager.Tabs.addImg":"Ajouter une image","ImgManager.Tabs.Editor":"Editeur d'image","ImgManager.Tabs.freeImgLib":"Bibliothèque d’images gratuites","ImgManager.Tabs.imgLib":"Vos images","ImgManager.UploadList.imgSuccessImport":"images importées et optimisées pour le SEO","ImgManager.UploadList.imgSuccessImportOne":"image importée et optimisée pour le SEO","ImgManager.UploadList.properties.imgName":"Nom de l'image","ImgManager.UploadList.properties.imgSize":"Taille de l'image originale","ImgManager.UploadList.properties.imgURL":"Url de l'image","ImgManager.UploadList.properties.imgWeight":"Taille du fichier original","ImgManager.UploadList.seo.cdn":"Ajout dans le CDN.","ImgManager.UploadList.seo.cdnTooltips":"Les images que vous ajoutez sur votre site marchand sont envoyées directement vers notre CDN (Content Delivery Network). Cela permet de charger les visuels depuis les serveurs les plus proches de l'utilisateur.","ImgManager.UploadList.seo.lazyloading":"Lazyloading automatique.","ImgManager.UploadList.seo.lazyloadingTooltips":"Avec le lazyloading, le contenu se charge au fur et à mesure que l’internaute descend (scroll) dans la page. Ceci permet de charger uniquement le contenu visible.","ImgManager.UploadList.seo.rezise":"Redimensionnement et compression.","ImgManager.UploadList.seo.reziseTooltips":"Lors de l’import de votre image sur WiziShop, ce sont plus de 22 formats qui sont créés pour s’adapter aux différentes tailles d’écran. Cette optimisation nous permet d’envoyer une taille de visuel différente et compressée selon le support de l’internaute.","ImgManager.UploadList.seo.title":"Optimisations SEO","ImgManager.UploadList.seo.webp":"Génération des Webp.","ImgManager.UploadList.seo.webpTooltips":"Dès lors que vous ajoutez une image sur votre site, elle va être accessible au format standard, mais aussi se convertir automatiquement au format WebP pour Google. Ce format permet de compresser, au maximum, les images présentes sur votre boutique pour les charger très rapidement.","ImgManager.webElement.infoBulle":"Le gestionnaire d'image vous permet de <strong>télécharger</strong> des images, les <strong>sélectionner </strong>et appliquer certains <strong>effets</strong>(recadrage, rotations...).\n<br/><br/>\nIl est conseillé d'avoir <strong>plusieurs photos</strong> du produit (3 ou 4) dans divers positions ou situations.","ImgManager.webElement.OpenBtn":"Ajouter des photos","ImgManager.webElement.photosTitle":"Photos","no":"non","PaginationComponent.on":"{{low}}-{{high}} sur {{total}}","PaginationComponent.page":"Aller à la page","yes":"oui"}
1
+ {"ImgManager.CanvaBtn.bigSquare":"Grand","ImgManager.CanvaBtn.createImg":"Créer une image avec","ImgManager.CanvaBtn.createImg.title":"Créer une image avec Canva","ImgManager.CanvaBtn.errorRenameCanvaImg":"Erreur : le titre de l'image provenant de Canva n'a pas pu être récupéré.","ImgManager.CanvaBtn.errorUploadCanvaImg":"Erreur : l'image provenant de Canva n'a pas pu être téléchargée.","ImgManager.CanvaBtn.info":"Sélectionner un format","ImgManager.CanvaBtn.mediumSquare":"Moyen","ImgManager.CanvaBtn.publish":"Importer","ImgManager.CanvaBtn.recommanded":"Recommandé","ImgManager.CanvaBtn.smallSquare":"Petit","ImgManager.CanvaBtn.successImport":"Votre image a bien été importée.","ImgManager.CanvaBtn.uploadingImg":"Chargement de l'image en cours.","ImgManager.ImgCard.confirmDeleteImg":"Êtes-vous sûr de supprimer cette image ?","ImgManager.ImgCard.del":"Supprimer","ImgManager.ImgCard.download":"Télécharger","ImgManager.ImgCard.edit":"Éditer","ImgManager.ImgCard.select":"Sélectionner","ImgManager.ImgCard.validImgSmall":"Sélectionner","ImgManager.ImgEditor.config.AntiSchedule":"Sens anti-horaire","ImgManager.ImgEditor.config.dezoom":"Zoomer moins","ImgManager.ImgEditor.config.flipHoriz":"Retournement Horizontal","ImgManager.ImgEditor.config.flipVert":"Retournement Vertical","ImgManager.ImgEditor.config.free":"Format libre","ImgManager.ImgEditor.config.landscape":"Paysage","ImgManager.ImgEditor.config.origin":"Format d'origine","ImgManager.ImgEditor.config.Portrait":"Portrait","ImgManager.ImgEditor.config.schedule":"Sens horaire","ImgManager.ImgEditor.config.square":"Carré","ImgManager.ImgEditor.config.zoom":"Zoomer plus","ImgManager.ImgEditor.copytoClipBoard":"Copié !","ImgManager.ImgEditor.crop":"Recadrer","ImgManager.ImgEditor.display":"Affichage","ImgManager.ImgEditor.msgFailLoad":"Erreur : Veuillez recommencer.","ImgManager.ImgEditor.msgFailSave":"Erreur : L'image n'a pu être sauvegardée.<br/>Veuillez recommencer.","ImgManager.ImgEditor.nameEx":"Par ex: T-shirt noir","ImgManager.ImgEditor.NameInfo":"Le nom de l'image est utilisé pour définir l'attribut alt.","ImgManager.ImgEditor.restart":"Réinitialiser","ImgManager.ImgEditor.rotation":"Rotation","ImgManager.ImgEditor.saveBtn":"Enregistrer et Fermer","ImgManager.ImgEditor.Valid":"Valider","ImgManager.ImgEditor.ValidtToolTip":"Cliquez ici pour rogner l'image","ImgManager.ImgLib.cancel":"Annuler","ImgManager.ImgLib.confirm":"Confirmer","ImgManager.ImgLib.confirmSupQuestion":"{{nbImage}} image à supprimer : Confirmez-vous ce choix ?","ImgManager.ImgLib.confirmSupQuestions":"{{nbImage}} images à supprimer : Confirmez-vous ce choix ?","ImgManager.ImgLib.delMlt":"Supprimer","ImgManager.ImgLib.errorGetAllImg":"Erreur : Vos images n'ont pas pu être récupérées.","ImgManager.ImgLib.errorGetCanvaImg":"Erreur : Votre image Canva n'a pas pu être récupérée.","ImgManager.ImgLib.errorGetTotalImg":"Erreur : Le nombre total d'images n'a pas été récupéré.","ImgManager.ImgLib.imgNameSaved":"Nom de l'image sauvegardé.","ImgManager.ImgLib.lastImgs":"Vos dernières images","ImgManager.ImgLib.nbImg":"Nombre d'images","ImgManager.ImgLib.noImgFound":"Aucune image trouvée.<br/>Affichage d'images gratuites.","ImgManager.ImgLib.savingImgName":"Sauvegarde en cours...","ImgManager.ImgLib.select":"Sélectionner","ImgManager.ImgList.download":"Télécharger","ImgManager.ImgList.edit":"Éditer","ImgManager.ImgList.errorAlreadyUsed":"Cette image ne peut pas être supprimée, car elle est déjà utilisée.","ImgManager.ImgList.errorRemoveImg":"Erreur : Certaines images n'ont pas pu être supprimées.","ImgManager.ImgList.errorRenameImg":"Erreur : Certaines images n'ont pas pu être renomées.","ImgManager.ImgList.remove":"Supprimer","ImgManager.ImgList.titleImgName":"Nom de l'image","ImgManager.ImgList.titleResolution":"Résolution","ImgManager.ImgSelection.deleteImg":"Retirer","ImgManager.ImgSelection.tooltips":"Cliquez pour changer l'ordre de l'image","ImgManager.ImgSelection.unselect":"Glissez l'image ici pour la retirer de la sélection","ImgManager.ImgUpload.dropImg":"Glisser-déposer votre image ici","ImgManager.ImgUpload.errorNotImg":"Erreur : Seul les images peuvent être importées.","ImgManager.ImgUpload.errorUploadingImg":"Erreur : Une image n'a pas pu être importée.","ImgManager.ImgUpload.loading":"Chargement en cours.","ImgManager.ImgUpload.or":"ou","ImgManager.ImgUpload.selectImg":"Choisir les images à importer","ImgManager.PexelLib.errorRetrievePhotos":"Erreur : Les images Pexel n'ont pas été récupérées.","ImgManager.PexelLib.errorUploadPhoto":"Erreur : L'image n'a pas pu être importée.","ImgManager.PexelLib.import":"Importer","ImgManager.PexelLib.importation":"Importation","ImgManager.PexelLib.landscape":"Paysage","ImgManager.PexelLib.nbImgFound":"Nombre d'images gratuites trouvées","ImgManager.PexelLib.noResult":"Aucune image trouvée.","ImgManager.PexelLib.original":"Original","ImgManager.PexelLib.portrait":"Portrait","ImgManager.PexelLib.successImport":"Votre image a été importée avec succès !","ImgManager.PexelLib.untitled":"Sans titre","ImgManager.PexelLib.uploadingImg":"Chargement de l'image en cours.","ImgManager.SearchBar.placeholder":"Nom de l'image à rechercher","ImgManager.snackBar.action":"Voir l'image","ImgManager.Tabs.addImg":"Ajouter une image","ImgManager.Tabs.Editor":"Editeur d'image","ImgManager.Tabs.freeImgLib":"Bibliothèque d’images gratuites","ImgManager.Tabs.imgLib":"Vos images","ImgManager.UploadList.imgSuccessImport":"images importées et optimisées pour le SEO","ImgManager.UploadList.imgSuccessImportOne":"image importée et optimisée pour le SEO","ImgManager.UploadList.properties.imgName":"Nom de l'image","ImgManager.UploadList.properties.imgSize":"Taille de l'image originale","ImgManager.UploadList.properties.imgURL":"Url de l'image","ImgManager.UploadList.properties.imgWeight":"Taille du fichier original","ImgManager.UploadList.seo.cdn":"Ajout dans le CDN.","ImgManager.UploadList.seo.cdnTooltips":"Les images que vous ajoutez sur votre site marchand sont envoyées directement vers notre CDN (Content Delivery Network). Cela permet de charger les visuels depuis les serveurs les plus proches de l'utilisateur.","ImgManager.UploadList.seo.lazyloading":"Lazyloading automatique.","ImgManager.UploadList.seo.lazyloadingTooltips":"Avec le lazyloading, le contenu se charge au fur et à mesure que l’internaute descend (scroll) dans la page. Ceci permet de charger uniquement le contenu visible.","ImgManager.UploadList.seo.rezise":"Redimensionnement et compression.","ImgManager.UploadList.seo.reziseTooltips":"Lors de l’import de votre image sur WiziShop, ce sont plus de 22 formats qui sont créés pour s’adapter aux différentes tailles d’écran. Cette optimisation nous permet d’envoyer une taille de visuel différente et compressée selon le support de l’internaute.","ImgManager.UploadList.seo.title":"Optimisations SEO","ImgManager.UploadList.seo.webp":"Génération des Webp.","ImgManager.UploadList.seo.webpTooltips":"Dès lors que vous ajoutez une image sur votre site, elle va être accessible au format standard, mais aussi se convertir automatiquement au format WebP pour Google. Ce format permet de compresser, au maximum, les images présentes sur votre boutique pour les charger très rapidement.","ImgManager.webElement.infoBulle":"Le gestionnaire d'image vous permet de <strong>télécharger</strong> des images, les <strong>sélectionner </strong>et appliquer certains <strong>effets</strong>(recadrage, rotations...).\n<br/><br/>\nIl est conseillé d'avoir <strong>plusieurs photos</strong> du produit (3 ou 4) dans divers positions ou situations.","ImgManager.webElement.OpenBtn":"Ajouter des photos","ImgManager.webElement.photosTitle":"Photos","no":"non","PaginationComponent.on":"{{low}}-{{high}} sur {{total}}","PaginationComponent.page":"Aller à la page","wac.datatable.noresult":"Il n'y a aucun résultat pour cette recherche","yes":"oui"}
@@ -1,8 +1,8 @@
1
1
  (function (global, factory) {
2
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@angular/core'), require('rxjs'), require('@angular/common/http'), require('@angular/animations'), require('@ngx-translate/core'), require('@wizishop/ng-wizi-bulma'), require('rxjs/operators'), require('@angular/common'), require('@angular/forms'), require('ngx-scrollbar'), require('ngx-scrollbar/reached-event'), require('ngx-image-cropper'), require('@angular/cdk/table'), require('@angular/cdk/drag-drop'), require('uuid')) :
3
- typeof define === 'function' && define.amd ? define('@wizishop/img-manager', ['exports', '@angular/core', 'rxjs', '@angular/common/http', '@angular/animations', '@ngx-translate/core', '@wizishop/ng-wizi-bulma', 'rxjs/operators', '@angular/common', '@angular/forms', 'ngx-scrollbar', 'ngx-scrollbar/reached-event', 'ngx-image-cropper', '@angular/cdk/table', '@angular/cdk/drag-drop', 'uuid'], factory) :
4
- (global = global || self, factory((global.wizishop = global.wizishop || {}, global.wizishop['img-manager'] = {}), global['^9']['0']['3'], global['~6']['5']['4'], global.ng.common.http, global['~9']['0']['3'], global['^13']['0']['0'], global['^9']['1']['4'], global.rxjs.operators, global['^9']['0']['3'], global['~9']['0']['3'], global['^7']['2']['3'], global.reachedEvent, global['^3']['1']['9'], global.ng.cdk.table, global.ng.cdk['drag-drop'], global.uuid));
5
- }(this, (function (exports, core, rxjs, http, animations, core$1, ngWiziBulma, operators, common, forms, ngxScrollbar, reachedEvent, ngxImageCropper, table, dragDrop, uuid) { 'use strict';
2
+ typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@angular/core'), require('rxjs'), require('@angular/common/http'), require('@angular/animations'), require('@ngx-translate/core'), require('@wizishop/ng-wizi-bulma'), require('rxjs/operators'), require('@angular/router'), require('@angular/common'), require('@angular/forms'), require('ngx-scrollbar'), require('ngx-scrollbar/reached-event'), require('ngx-image-cropper'), require('@angular/cdk/table'), require('@angular/cdk/drag-drop'), require('uuid'), require('ngx-perfect-scrollbar')) :
3
+ typeof define === 'function' && define.amd ? define('@wizishop/img-manager', ['exports', '@angular/core', 'rxjs', '@angular/common/http', '@angular/animations', '@ngx-translate/core', '@wizishop/ng-wizi-bulma', 'rxjs/operators', '@angular/router', '@angular/common', '@angular/forms', 'ngx-scrollbar', 'ngx-scrollbar/reached-event', 'ngx-image-cropper', '@angular/cdk/table', '@angular/cdk/drag-drop', 'uuid', 'ngx-perfect-scrollbar'], factory) :
4
+ (global = global || self, factory((global.wizishop = global.wizishop || {}, global.wizishop['img-manager'] = {}), global['^9']['0']['3'], global['~6']['5']['4'], global.ng.common.http, global['~9']['0']['3'], global['^13']['0']['0'], global['^9']['1']['4'], global.rxjs.operators, global.ng.router, global['^9']['0']['3'], global['~9']['0']['3'], global['^7']['2']['3'], global.reachedEvent, global['^3']['1']['9'], global.ng.cdk.table, global.ng.cdk['drag-drop'], global.uuid, global['^10']['1']['1']));
5
+ }(this, (function (exports, core, rxjs, http, animations, core$1, ngWiziBulma, operators, router, common, forms, ngxScrollbar, reachedEvent, ngxImageCropper, table, dragDrop, uuid, ngxPerfectScrollbar) { 'use strict';
6
6
 
7
7
  /*! *****************************************************************************
8
8
  Copyright (c) Microsoft Corporation. All rights reserved.
@@ -375,6 +375,14 @@
375
375
  displayBtn: true,
376
376
  pageficheProduct: true
377
377
  };
378
+ this.angularFicheProductConfig = {
379
+ stateDisplayed: 'closed',
380
+ multipleImgMode: true,
381
+ showImgManagerModule: true,
382
+ showSelection: true,
383
+ displayBtn: false,
384
+ pageficheProduct: true
385
+ };
378
386
  this.wiziblockConfig = {
379
387
  stateDisplayed: 'closed',
380
388
  multipleImgMode: false,
@@ -464,6 +472,8 @@
464
472
  return this.pageFicheProductConfig;
465
473
  case "simple-with-button":
466
474
  return this.simpleWithButtonOpenerConfig;
475
+ case 'angular-fiche-product':
476
+ return this.angularFicheProductConfig;
467
477
  default:
468
478
  return;
469
479
  }
@@ -1296,16 +1306,42 @@
1296
1306
  }());
1297
1307
 
1298
1308
  var ImgTabsComponent = /** @class */ (function () {
1299
- function ImgTabsComponent(imgEventEditService, alertService) {
1309
+ function ImgTabsComponent(imgEventEditService, alertService, route) {
1300
1310
  this.imgEventEditService = imgEventEditService;
1301
1311
  this.alertService = alertService;
1312
+ this.route = route;
1302
1313
  this.multipleImgMode = false;
1303
1314
  this.listDisplayed = false;
1304
1315
  this.imgManagerClosed = new core.EventEmitter();
1305
1316
  this.currentTab = new core.EventEmitter();
1306
1317
  this.switchDisplayWindow = new core.EventEmitter();
1307
- this.tabActive = 'images-view';
1308
- this.tabs = ['img-upload', 'images-view', 'pexels-lib', 'img-edition'];
1318
+ this.tabs = [
1319
+ {
1320
+ name: 'ImgManager.Tabs.addImg',
1321
+ value: 'img-upload',
1322
+ id: 0
1323
+ },
1324
+ {
1325
+ name: 'ImgManager.Tabs.imgLib',
1326
+ value: 'images-view',
1327
+ selected: true,
1328
+ id: 1
1329
+ },
1330
+ {
1331
+ name: 'ImgManager.Tabs.freeImgLib',
1332
+ value: 'pexels-lib',
1333
+ id: 2
1334
+ },
1335
+ {
1336
+ name: 'ImgManager.Tabs.Editor',
1337
+ value: 'img-edition',
1338
+ hide: true,
1339
+ id: 3
1340
+ }
1341
+ ];
1342
+ this.tabActive = this.tabs[1];
1343
+ /* tabActive = 'images-view';
1344
+ tabs: string[] = ['img-upload', 'images-view', 'pexels-lib', 'img-edition']; */
1309
1345
  this.editTab = false;
1310
1346
  this.imgUpload = false;
1311
1347
  this.snackBarNewVersionConfig = {
@@ -1322,10 +1358,10 @@
1322
1358
  _this.currentTab.emit(_this.tabs[3]);
1323
1359
  });
1324
1360
  };
1325
- ImgTabsComponent.prototype.toggleTabs = function (value) {
1361
+ ImgTabsComponent.prototype.toggleTabs = function (item) {
1326
1362
  this.imgUpload = false;
1327
1363
  this.editTab = false;
1328
- this.tabActive = value;
1364
+ this.tabActive = item;
1329
1365
  };
1330
1366
  ImgTabsComponent.prototype.onImgUploaded = function (img) {
1331
1367
  this.imgUpload = true;
@@ -1345,12 +1381,15 @@
1345
1381
  ImgTabsComponent.prototype.switchDisplayWindowImgView = function () {
1346
1382
  this.switchDisplayWindow.emit(true);
1347
1383
  };
1384
+ ImgTabsComponent.prototype.switchRouterLink = function (event) {
1385
+ };
1348
1386
  ImgTabsComponent.prototype.onImgManagerClosed = function () {
1349
1387
  this.imgManagerClosed.emit();
1350
1388
  };
1351
1389
  ImgTabsComponent.ctorParameters = function () { return [
1352
1390
  { type: ImgEventService },
1353
- { type: AlertService }
1391
+ { type: AlertService },
1392
+ { type: router.Router }
1354
1393
  ]; };
1355
1394
  __decorate([
1356
1395
  core.Input(),
@@ -1383,10 +1422,11 @@
1383
1422
  ImgTabsComponent = __decorate([
1384
1423
  core.Component({
1385
1424
  selector: 'img-tabs',
1386
- template: "<div\n class=\"img-tabs\" [ngClass]=\"{'small': stateDisplayed === 'small'}\">\n <div class=\"wrapper-tabs\">\n <div\n class=\"tabs\"\n [ngClass]=\"\n {\n 'tabs--notWindow': stateDisplayed !== 'window',\n 'tabs--notDisplayed': stateDisplayed === 'window' && tabActive === tabs[3]\n }\">\n\n <ul>\n <li class=\"is-active\" [ngClass]=\"{'is-active': tabActive === tabs[0]}\" (click)=\"toggleTabs(tabs[0])\"><a>{{ 'ImgManager.Tabs.addImg' | translate }}</a></li>\n <li [ngClass]=\"{'is-active': tabActive === tabs[1]}\" (click)=\"toggleTabs(tabs[1])\"><a>{{ 'ImgManager.Tabs.imgLib' | translate }}</a></li>\n <li [ngClass]=\"{'is-active': tabActive === tabs[2]}\" (click)=\"toggleTabs(tabs[2])\"><a>{{ 'ImgManager.Tabs.freeImgLib' | translate }}</a></li>\n <li [ngClass]=\"{'is-active': tabActive === tabs[3]}\" *ngIf=\"editTab\"><a>{{ 'ImgManager.Tabs.Editor' | translate }}</a></li>\n </ul>\n <div\n class=\"img-tabs__canva\"\n [ngClass]=\"{'img-tabs__canva--window': stateDisplayed === 'window'}\">\n <canva-btn\n (showImgUploaded)=\"onShowImgUploaded()\"\n [stateDisplayed]=\"stateDisplayed\">\n </canva-btn>\n </div>\n </div>\n </div>\n\n <!-- Upload section -->\n <div\n class=\"columns img-tabs__tabsFirst\"\n [ngClass]=\"{\n 'img-tabs__tabsFirst--small': stateDisplayed === 'small',\n 'img-tabs__tabsFirst--window': stateDisplayed === 'window'\n }\"\n *ngIf=\"tabActive === tabs[0]\">\n <div class=\"column img-tabs__tabsFirst__upload\">\n <img-upload\n [stateDisplayed]=\"stateDisplayed\"\n (imgUploaded)=\"onImgUploaded($event)\"\n ></img-upload>\n </div>\n <div class=\"column img-tabs__tabsFirst__list\" [ngClass]=\"{\n 'img-tabs__tabsFirst__list--upload': imgUpload\n }\">\n <images-view\n *ngIf=\"!imgUpload\"\n [stateDisplayed]=\"stateDisplayed\"\n [listDisplayed]=\"false\"\n [multipleImgMode]=\"multipleImgMode\"\n [tabDisplayed]=\"tabActive\"\n [maxLengthCardShow]=\"stateDisplayed === 'small' ? 16 : 8\"\n (switchDisplayWindow)=\"switchDisplayWindowImgView()\"\n [fullSize]=\"false\">\n </images-view>\n\n\n <div [hidden]=\"!imgUpload\">\n <upload-list\n #imgUploadedImg\n [stateDisplayed]=\"stateDisplayed\"\n [tabDisplayed]=\"tabActive\"\n [multipleImgMode]=\"multipleImgMode\"\n >\n </upload-list>\n </div>\n </div>\n </div>\n\n <!-- Images section -->\n <div class=\"columns img-tabs__tabsSecond\" *ngIf=\"tabActive === tabs[1]\">\n <div class=\"column\">\n\n <images-view\n [stateDisplayed]=\"stateDisplayed\"\n [listDisplayed]=\"listDisplayed\"\n [multipleImgMode]=\"multipleImgMode\"\n [tabDisplayed]=\"tabActive\"\n (switchDisplayWindow)=\"switchDisplayWindowImgView()\"\n [fullSize]=\"true\">\n </images-view>\n\n </div>\n </div>\n\n <!-- Pexel img section -->\n <div class=\"columns img-tabs__tabsThird\" *ngIf=\"tabActive === tabs[2]\">\n <div class=\"column\">\n <pexels-lib\n [stateDisplayed]=\"stateDisplayed\"\n (showImgUploaded)=\"onShowImgUploaded()\">\n </pexels-lib>\n </div>\n </div>\n\n <!--Edition section -->\n <div class=\"columns img-tabs__tabsEdit\" *ngIf=\"tabActive === tabs[3]\">\n <div class=\"column\">\n <img-editor\n [stateDisplayed]=\"stateDisplayed\"\n [imgToEdit]=\"imgToEdit\"\n (editClosed)=\"onEditClosed($event)\">\n </img-editor>\n </div>\n </div>\n\n</div>\n"
1425
+ template: "<div\n class=\"img-tabs\" [ngClass]=\"{'small': stateDisplayed === 'small'}\">\n <div class=\"wrapper-tabs\">\n <div\n class=\"tabs\"\n [ngClass]=\"\n {\n 'tabs--notWindow': stateDisplayed !== 'window',\n 'tabs--notDisplayed': stateDisplayed === 'window' && tabActive.value === tabs[3].value\n }\">\n\n <ul>\n <li class=\"is-active\" [ngClass]=\"{'is-active': tabActive.value === tabs[0].value}\" (click)=\"toggleTabs(tabs[0])\"><a>{{ tabs[0].name | translate }}</a></li>\n <li [ngClass]=\"{'is-active': tabActive.value === tabs[1].value}\" (click)=\"toggleTabs(tabs[1])\"><a>{{ tabs[1].name | translate }}</a></li>\n <li [ngClass]=\"{'is-active': tabActive.value === tabs[2].value}\" (click)=\"toggleTabs(tabs[2])\"><a>{{ tabs[2].name | translate }}</a></li>\n <li [ngClass]=\"{'is-active': tabActive.value === tabs[3].value}\" *ngIf=\"editTab\"><a>{{ tabs[3].name | translate }}</a></li>\n </ul>\n <div\n class=\"img-tabs__canva\"\n [ngClass]=\"{'img-tabs__canva--window': stateDisplayed === 'window'}\">\n <canva-btn\n (showImgUploaded)=\"onShowImgUploaded()\"\n [stateDisplayed]=\"stateDisplayed\">\n </canva-btn>\n </div>\n </div>\n <div class=\"select-mobile-page\">\n <wac-select\n [(ngModel)]=\"tabActive\"\n name=\"tabs\"\n [items]=\"tabs\"\n ></wac-select>\n </div>\n </div>\n\n <!-- Upload section -->\n <div\n class=\"columns img-tabs__tabsFirst\"\n [ngClass]=\"{\n 'img-tabs__tabsFirst--small': stateDisplayed === 'small',\n 'img-tabs__tabsFirst--window': stateDisplayed === 'window'\n }\"\n *ngIf=\"tabActive.value === tabs[0].value\">\n <div class=\"column img-tabs__tabsFirst__upload\">\n <img-upload\n [stateDisplayed]=\"stateDisplayed\"\n (imgUploaded)=\"onImgUploaded($event)\"\n ></img-upload>\n </div>\n <div class=\"column img-tabs__tabsFirst__list\" [ngClass]=\"{\n 'img-tabs__tabsFirst__list--upload': imgUpload\n }\">\n <images-view\n *ngIf=\"!imgUpload\"\n [stateDisplayed]=\"stateDisplayed\"\n [listDisplayed]=\"false\"\n [multipleImgMode]=\"multipleImgMode\"\n [tabDisplayed]=\"tabActive.value\"\n [maxLengthCardShow]=\"stateDisplayed === 'small' ? 16 : 8\"\n (switchDisplayWindow)=\"switchDisplayWindowImgView()\"\n [fullSize]=\"false\">\n </images-view>\n\n\n <div [hidden]=\"!imgUpload\">\n <upload-list\n #imgUploadedImg\n [stateDisplayed]=\"stateDisplayed\"\n [tabDisplayed]=\"tabActive.value\"\n [multipleImgMode]=\"multipleImgMode\"\n >\n </upload-list>\n </div>\n </div>\n </div>\n\n <!-- Images section -->\n <div class=\"columns img-tabs__tabsSecond\" *ngIf=\"tabActive.value === tabs[1].value\">\n <div class=\"column\">\n\n <images-view\n [stateDisplayed]=\"stateDisplayed\"\n [listDisplayed]=\"listDisplayed\"\n [multipleImgMode]=\"multipleImgMode\"\n [tabDisplayed]=\"tabActive.value\"\n (switchDisplayWindow)=\"switchDisplayWindowImgView()\"\n [fullSize]=\"true\">\n </images-view>\n\n </div>\n </div>\n\n <!-- Pexel img section -->\n <div class=\"columns img-tabs__tabsThird\" *ngIf=\"tabActive.value === tabs[2].value\">\n <div class=\"column\">\n <pexels-lib\n [stateDisplayed]=\"stateDisplayed\"\n (showImgUploaded)=\"onShowImgUploaded()\">\n </pexels-lib>\n </div>\n </div>\n\n <!--Edition section -->\n <div class=\"columns img-tabs__tabsEdit\" *ngIf=\"tabActive.value === tabs[3].value\">\n <div class=\"column\">\n <img-editor\n [stateDisplayed]=\"stateDisplayed\"\n [imgToEdit]=\"imgToEdit\"\n (editClosed)=\"onEditClosed($event)\">\n </img-editor>\n </div>\n </div>\n\n</div>\n"
1387
1426
  }),
1388
1427
  __metadata("design:paramtypes", [ImgEventService,
1389
- AlertService])
1428
+ AlertService,
1429
+ router.Router])
1390
1430
  ], ImgTabsComponent);
1391
1431
  return ImgTabsComponent;
1392
1432
  }());
@@ -4579,6 +4619,205 @@
4579
4619
  return LargeNumberOfPagePipe;
4580
4620
  }());
4581
4621
 
4622
+ var SelectComponent = /** @class */ (function () {
4623
+ function SelectComponent(translateService) {
4624
+ this.translateService = translateService;
4625
+ this.search = false;
4626
+ this.type = 'default';
4627
+ this.maxWidth = '100%';
4628
+ this.disabled = false;
4629
+ this.selectValue = new core.EventEmitter();
4630
+ this.clickOnCallToAction = new core.EventEmitter();
4631
+ this.openCategories = false;
4632
+ this.searchValue = '';
4633
+ this.indexItemSelected = -1;
4634
+ // ControlValueAccessor methods
4635
+ this.onChange = function () { };
4636
+ this.onTouch = function () { };
4637
+ }
4638
+ SelectComponent_1 = SelectComponent;
4639
+ SelectComponent.prototype.ngOnInit = function () {
4640
+ this.indexItemSelected = this.items.findIndex(function (item) { return item.selected; });
4641
+ };
4642
+ SelectComponent.prototype.onClose = function () {
4643
+ this.openCategories = false;
4644
+ };
4645
+ SelectComponent.prototype.customTB = function (item, index) {
4646
+ return item.id + "-" + index;
4647
+ };
4648
+ SelectComponent.prototype.onSelectItem = function (id) {
4649
+ this.unselectAll();
4650
+ this.setIndexItemSelected(id);
4651
+ var itemSelected = this.getItemSelected();
4652
+ itemSelected.selected = true;
4653
+ this.selectValue.emit(this.indexItemSelected);
4654
+ this.onChange(itemSelected);
4655
+ };
4656
+ SelectComponent.prototype.onClickCallToAction = function () {
4657
+ this.onClose();
4658
+ this.clickOnCallToAction.emit(this.callToAction.value);
4659
+ };
4660
+ SelectComponent.prototype.getItemSelected = function () {
4661
+ return this.items[this.indexItemSelected];
4662
+ };
4663
+ SelectComponent.prototype.showCategories = function () {
4664
+ var _this = this;
4665
+ this.openCategories = true;
4666
+ setTimeout(function () {
4667
+ _this.searchElement.nativeElement.focus();
4668
+ }, 0);
4669
+ };
4670
+ SelectComponent.prototype.unselectAll = function () {
4671
+ this.items.forEach(function (item) { return item.selected = false; });
4672
+ };
4673
+ SelectComponent.prototype.setIndexItemSelected = function (id) {
4674
+ this.indexItemSelected = this.items.findIndex(function (item) { return item.id === id; });
4675
+ };
4676
+ SelectComponent.prototype.writeValue = function (selectItem) {
4677
+ if (!selectItem) {
4678
+ return;
4679
+ }
4680
+ this.unselectAll();
4681
+ selectItem.selected = true;
4682
+ this.setIndexItemSelected(selectItem.id);
4683
+ };
4684
+ SelectComponent.prototype.registerOnChange = function (fn) {
4685
+ this.onChange = fn;
4686
+ };
4687
+ SelectComponent.prototype.registerOnTouched = function (fn) {
4688
+ this.onTouch = fn;
4689
+ };
4690
+ var SelectComponent_1;
4691
+ SelectComponent.ctorParameters = function () { return [
4692
+ { type: core$1.TranslateService }
4693
+ ]; };
4694
+ __decorate([
4695
+ core.Input(),
4696
+ __metadata("design:type", Array)
4697
+ ], SelectComponent.prototype, "items", void 0);
4698
+ __decorate([
4699
+ core.Input(),
4700
+ __metadata("design:type", String)
4701
+ ], SelectComponent.prototype, "placeholder", void 0);
4702
+ __decorate([
4703
+ core.Input(),
4704
+ __metadata("design:type", String)
4705
+ ], SelectComponent.prototype, "label", void 0);
4706
+ __decorate([
4707
+ core.Input(),
4708
+ __metadata("design:type", String)
4709
+ ], SelectComponent.prototype, "maxWidthItems", void 0);
4710
+ __decorate([
4711
+ core.Input(),
4712
+ __metadata("design:type", Object)
4713
+ ], SelectComponent.prototype, "search", void 0);
4714
+ __decorate([
4715
+ core.Input(),
4716
+ __metadata("design:type", Object)
4717
+ ], SelectComponent.prototype, "type", void 0);
4718
+ __decorate([
4719
+ core.Input(),
4720
+ __metadata("design:type", Object)
4721
+ ], SelectComponent.prototype, "callToAction", void 0);
4722
+ __decorate([
4723
+ core.Input(),
4724
+ __metadata("design:type", Object)
4725
+ ], SelectComponent.prototype, "maxWidth", void 0);
4726
+ __decorate([
4727
+ core.Input(),
4728
+ __metadata("design:type", Object)
4729
+ ], SelectComponent.prototype, "disabled", void 0);
4730
+ __decorate([
4731
+ core.Output(),
4732
+ __metadata("design:type", Object)
4733
+ ], SelectComponent.prototype, "selectValue", void 0);
4734
+ __decorate([
4735
+ core.Output(),
4736
+ __metadata("design:type", Object)
4737
+ ], SelectComponent.prototype, "clickOnCallToAction", void 0);
4738
+ __decorate([
4739
+ core.ViewChild('search'),
4740
+ __metadata("design:type", core.ElementRef)
4741
+ ], SelectComponent.prototype, "searchElement", void 0);
4742
+ SelectComponent = SelectComponent_1 = __decorate([
4743
+ core.Component({
4744
+ selector: 'wac-select',
4745
+ template: "<p *ngIf=\"label\" [innerHTML]=\"label\" class=\"wac-select__label\"></p>\n\n<div class=\"wac-select\" wzAutoHide (clickOutside)=\"onClose()\" [ngStyle]=\"{ 'max-width': maxWidth }\" [zIndexToggle]=\"openCategories\">\n\n <div class=\"wac-select__current\" [ngClass]=\"{ 'select-disabled' : disabled }\" (click)=\"!disabled && openCategories = !openCategories\" *ngIf=\"!search\">\n <span *ngIf=\"indexItemSelected !== -1\" class=\"icon\" [innerHTML]=\"items[indexItemSelected].icon\"></span>\n <span [innerHTML]=\"(indexItemSelected !== -1 ? items[indexItemSelected].name : placeholder) | translate\"></span><span><i class=\"fas fa-chevron-down\"></i></span>\n </div>\n\n <div class=\"wac-select__current wac-select__current--withSearch\" [ngClass]=\"{ 'select-disabled' : disabled, 'open-search': openCategories }\" *ngIf=\"search\">\n <div class=\"wac-select__current__search\" *ngIf=\"openCategories && !disabled\">\n <i class=\"far fa-search\"></i>\n <input #search type=\"text\" [(ngModel)]=\"searchValue\" />\n </div>\n <span (click)=\"openCategories = !openCategories;\" *ngIf=\"items[indexItemSelected]?.icon && !openCategories\" class=\"icon\" [innerHTML]=\"items[indexItemSelected].icon\"></span>\n <span (click)=\"showCategories()\" [innerHTML]=\"items[indexItemSelected]?.name ? items[indexItemSelected].name : placeholder\"></span>\n <span (click)=\"openCategories = !openCategories;\"><i class=\"fas fa-chevron-down\"></i></span>\n </div>\n\n <div class=\"wac-select__content\" *ngIf=\"!disabled\" [ngClass]=\"{ hidden: !openCategories, open: type === 'open' }\" [ngStyle]=\"{ 'max-width': maxWidthItems }\">\n <div [perfectScrollbar]=\"{ suppressScrollX: true }\" *ngIf=\"items.length\">\n\n <div *ngIf=\"callToAction\" class=\"wac-select__content__cta\">\n <div (click)=\"onClickCallToAction()\">\n <i *ngIf=\"callToAction.icon\" [classList]=\"callToAction.icon\"></i><strong *ngIf=\"callToAction.boldText\">{{ callToAction.boldText }}</strong\n ><span>{{ callToAction?.name }}</span>\n </div>\n </div>\n\n <div\n *ngFor=\"let item of items | selectFilters: searchValue; let index = index;\"\n (click)=\"onClose()\"\n class=\"wac-select__content__item\"\n >\n <div *ngIf=\"!item.hide\" [ngClass]=\"{ selected: item.selected }\" (click)=\"onSelectItem(item.id)\">\n <span class=\"icon\" [innerHTML]=\"item.icon\" *ngIf=\"item.icon\"></span>{{ item.name | translate }}\n </div>\n </div>\n\n </div>\n\n <div *ngIf=\"!(items | selectFilters: searchValue)?.length\" class=\"wac-select__content__empty\">\n <span>{{'wac.datatable.noresult' | translate}}</span>\n </div>\n\n </div>\n</div>",
4746
+ providers: [{ provide: forms.NG_VALUE_ACCESSOR, useExisting: SelectComponent_1, multi: true }]
4747
+ }),
4748
+ __metadata("design:paramtypes", [core$1.TranslateService])
4749
+ ], SelectComponent);
4750
+ return SelectComponent;
4751
+ }());
4752
+
4753
+ var SelectFiltersPipe = /** @class */ (function () {
4754
+ function SelectFiltersPipe() {
4755
+ }
4756
+ SelectFiltersPipe.prototype.transform = function (items, filterName) {
4757
+ return items.filter(function (item) {
4758
+ var regexp = new RegExp(filterName, 'i');
4759
+ return regexp.test(item.name);
4760
+ });
4761
+ };
4762
+ SelectFiltersPipe = __decorate([
4763
+ core.Pipe({
4764
+ name: 'selectFilters'
4765
+ })
4766
+ ], SelectFiltersPipe);
4767
+ return SelectFiltersPipe;
4768
+ }());
4769
+
4770
+ var ZindexToggleDirective = /** @class */ (function () {
4771
+ function ZindexToggleDirective(currentElement, renderer) {
4772
+ this.currentElement = currentElement;
4773
+ this.renderer = renderer;
4774
+ this.isActived = false;
4775
+ }
4776
+ Object.defineProperty(ZindexToggleDirective.prototype, "isActive", {
4777
+ get: function () {
4778
+ return this.isActived;
4779
+ },
4780
+ set: function (value) {
4781
+ this.isActived = value;
4782
+ this.switchToggle();
4783
+ },
4784
+ enumerable: true,
4785
+ configurable: true
4786
+ });
4787
+ ZindexToggleDirective.prototype.ngOnInit = function () {
4788
+ };
4789
+ ZindexToggleDirective.prototype.switchToggle = function () {
4790
+ if (this.isActived) {
4791
+ this.renderer.addClass(this.currentElement.nativeElement.parentElement.parentNode, 'zindexToggle');
4792
+ }
4793
+ else {
4794
+ this.renderer.removeClass(this.currentElement.nativeElement.parentElement.parentNode, 'zindexToggle');
4795
+ }
4796
+ };
4797
+ ZindexToggleDirective.prototype.ngOnDestroy = function () {
4798
+ };
4799
+ ZindexToggleDirective.ctorParameters = function () { return [
4800
+ { type: core.ElementRef },
4801
+ { type: core.Renderer2 }
4802
+ ]; };
4803
+ __decorate([
4804
+ core.Output(),
4805
+ __metadata("design:type", core.EventEmitter)
4806
+ ], ZindexToggleDirective.prototype, "onEventChange", void 0);
4807
+ __decorate([
4808
+ core.Input('zIndexToggle'),
4809
+ __metadata("design:type", Boolean),
4810
+ __metadata("design:paramtypes", [Boolean])
4811
+ ], ZindexToggleDirective.prototype, "isActive", null);
4812
+ ZindexToggleDirective = __decorate([
4813
+ core.Directive({
4814
+ selector: '[zIndexToggle]'
4815
+ }),
4816
+ __metadata("design:paramtypes", [core.ElementRef, core.Renderer2])
4817
+ ], ZindexToggleDirective);
4818
+ return ZindexToggleDirective;
4819
+ }());
4820
+
4582
4821
  ;
4583
4822
  var components = [
4584
4823
  WzImgManagerComponent,
@@ -4603,6 +4842,7 @@
4603
4842
  CheckboxComponent,
4604
4843
  AlertComponent,
4605
4844
  PageSelectorComponent,
4845
+ SelectComponent
4606
4846
  ];
4607
4847
  var directives = [
4608
4848
  DragDropDirective,
@@ -4615,6 +4855,7 @@
4615
4855
  TableRow,
4616
4856
  AbstractDebounceDirective,
4617
4857
  DebounceKeyupDirective,
4858
+ ZindexToggleDirective
4618
4859
  ];
4619
4860
  var pipes = [
4620
4861
  PagniationArrayTotalPages,
@@ -4622,7 +4863,8 @@
4622
4863
  PagniationText,
4623
4864
  ImageSrcPipe,
4624
4865
  NumberToArray,
4625
- LargeNumberOfPagePipe
4866
+ LargeNumberOfPagePipe,
4867
+ SelectFiltersPipe
4626
4868
  ];
4627
4869
  var WzImgManagerModule = /** @class */ (function () {
4628
4870
  function WzImgManagerModule() {
@@ -4640,7 +4882,8 @@
4640
4882
  ngxImageCropper.ImageCropperModule,
4641
4883
  table.CdkTableModule,
4642
4884
  dragDrop.DragDropModule,
4643
- core$1.TranslateModule
4885
+ core$1.TranslateModule,
4886
+ ngxPerfectScrollbar.PerfectScrollbarModule
4644
4887
  ],
4645
4888
  providers: [],
4646
4889
  exports: [
@@ -4698,22 +4941,25 @@
4698
4941
  exports.ɵbe = CheckboxComponent;
4699
4942
  exports.ɵbf = AlertComponent;
4700
4943
  exports.ɵbg = PageSelectorComponent;
4701
- exports.ɵbh = DragDropDirective;
4702
- exports.ɵbi = LoadingDirective;
4703
- exports.ɵbj = AutoHideDirective;
4704
- exports.ɵbk = CopyClipboardDirective;
4705
- exports.ɵbl = TableColumn;
4706
- exports.ɵbm = CheckBoxRow;
4707
- exports.ɵbn = TableColumnHeader;
4708
- exports.ɵbo = TableRow;
4709
- exports.ɵbp = AbstractDebounceDirective;
4710
- exports.ɵbq = DebounceKeyupDirective;
4711
- exports.ɵbr = PagniationArrayTotalPages;
4712
- exports.ɵbs = PagniationIsLastPage;
4713
- exports.ɵbt = PagniationText;
4714
- exports.ɵbu = ImageSrcPipe;
4715
- exports.ɵbv = NumberToArray;
4716
- exports.ɵbw = LargeNumberOfPagePipe;
4944
+ exports.ɵbh = SelectComponent;
4945
+ exports.ɵbi = DragDropDirective;
4946
+ exports.ɵbj = LoadingDirective;
4947
+ exports.ɵbk = AutoHideDirective;
4948
+ exports.ɵbl = CopyClipboardDirective;
4949
+ exports.ɵbm = TableColumn;
4950
+ exports.ɵbn = CheckBoxRow;
4951
+ exports.ɵbo = TableColumnHeader;
4952
+ exports.ɵbp = TableRow;
4953
+ exports.ɵbq = AbstractDebounceDirective;
4954
+ exports.ɵbr = DebounceKeyupDirective;
4955
+ exports.ɵbs = ZindexToggleDirective;
4956
+ exports.ɵbt = PagniationArrayTotalPages;
4957
+ exports.ɵbu = PagniationIsLastPage;
4958
+ exports.ɵbv = PagniationText;
4959
+ exports.ɵbw = ImageSrcPipe;
4960
+ exports.ɵbx = NumberToArray;
4961
+ exports.ɵby = LargeNumberOfPagePipe;
4962
+ exports.ɵbz = SelectFiltersPipe;
4717
4963
  exports.ɵc = UserSettingsService;
4718
4964
  exports.ɵd = ImgEventService;
4719
4965
  exports.ɵe = DomService;