@wizishop/img-manager-webelement 15.2.64-beta → 19.0.0-beta.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -1,24 +1,24 @@
1
- # ImgManagerWebElement
2
-
3
- This library was generated with [Angular CLI](https://github.com/angular/angular-cli) version 9.0.7.
4
-
5
- ## Code scaffolding
6
-
7
- Run `ng generate component component-name --project ImgManagerWebElement` to generate a new component. You can also use `ng generate directive|pipe|service|class|guard|interface|enum|module --project ImgManagerWebElement`.
8
- > Note: Don't forget to add `--project ImgManagerWebElement` or else it will be added to the default project in your `angular.json` file.
9
-
10
- ## Build
11
-
12
- Run `ng build ImgManagerWebElement` to build the project. The build artifacts will be stored in the `dist/` directory.
13
-
14
- ## Publishing
15
-
16
- After building your library with `ng build ImgManagerWebElement`, go to the dist folder `cd dist/img-manager-webelement` and run `npm publish`.
17
-
18
- ## Running unit tests
19
-
20
- Run `ng test ImgManagerWebElement` to execute the unit tests via [Karma](https://karma-runner.github.io).
21
-
22
- ## Further help
23
-
24
- To get more help on the Angular CLI use `ng help` or go check out the [Angular CLI README](https://github.com/angular/angular-cli/blob/master/README.md).
1
+ # ImgManagerWebElement
2
+
3
+ This library was generated with [Angular CLI](https://github.com/angular/angular-cli) version 9.0.7.
4
+
5
+ ## Code scaffolding
6
+
7
+ Run `ng generate component component-name --project ImgManagerWebElement` to generate a new component. You can also use `ng generate directive|pipe|service|class|guard|interface|enum|module --project ImgManagerWebElement`.
8
+ > Note: Don't forget to add `--project ImgManagerWebElement` or else it will be added to the default project in your `angular.json` file.
9
+
10
+ ## Build
11
+
12
+ Run `ng build ImgManagerWebElement` to build the project. The build artifacts will be stored in the `dist/` directory.
13
+
14
+ ## Publishing
15
+
16
+ After building your library with `ng build ImgManagerWebElement`, go to the dist folder `cd dist/img-manager-webelement` and run `npm publish`.
17
+
18
+ ## Running unit tests
19
+
20
+ Run `ng test ImgManagerWebElement` to execute the unit tests via [Karma](https://karma-runner.github.io).
21
+
22
+ ## Further help
23
+
24
+ To get more help on the Angular CLI use `ng help` or go check out the [Angular CLI README](https://github.com/angular/angular-cli/blob/master/README.md).
@@ -149,18 +149,18 @@ class EventService {
149
149
  setEmitter(emitter) {
150
150
  this.emitter = emitter;
151
151
  }
152
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: EventService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
153
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: EventService }); }
152
154
  }
153
- EventService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: EventService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
154
- EventService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: EventService });
155
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: EventService, decorators: [{
155
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: EventService, decorators: [{
156
156
  type: Injectable
157
- }], ctorParameters: function () { return []; } });
157
+ }], ctorParameters: () => [] });
158
158
 
159
159
  class AuthCredentialsService extends StorageByKey {
160
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: AuthCredentialsService, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
161
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: AuthCredentialsService }); }
160
162
  }
161
- AuthCredentialsService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: AuthCredentialsService, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
162
- AuthCredentialsService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: AuthCredentialsService });
163
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: AuthCredentialsService, decorators: [{
163
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: AuthCredentialsService, decorators: [{
164
164
  type: Injectable
165
165
  }] });
166
166
  const provideAuthCredentialsService = () => ({
@@ -394,12 +394,12 @@ class FicheProductService {
394
394
  ngOnDestroy() {
395
395
  this.subscriptions.forEach(subscription => subscription.unsubscribe());
396
396
  }
397
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: FicheProductService, deps: [{ token: i1.HttpClient }, { token: i2.ImgSelectionService }, { token: EventService }, { token: i2.CanvaService }, { token: AuthCredentialsService }], target: i0.ɵɵFactoryTarget.Injectable }); }
398
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: FicheProductService }); }
397
399
  }
398
- FicheProductService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: FicheProductService, deps: [{ token: i1.HttpClient }, { token: i2.ImgSelectionService }, { token: EventService }, { token: i2.CanvaService }, { token: AuthCredentialsService }], target: i0.ɵɵFactoryTarget.Injectable });
399
- FicheProductService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: FicheProductService });
400
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: FicheProductService, decorators: [{
400
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: FicheProductService, decorators: [{
401
401
  type: Injectable
402
- }], ctorParameters: function () { return [{ type: i1.HttpClient }, { type: i2.ImgSelectionService }, { type: EventService }, { type: i2.CanvaService }, { type: AuthCredentialsService }]; } });
402
+ }], ctorParameters: () => [{ type: i1.HttpClient }, { type: i2.ImgSelectionService }, { type: EventService }, { type: i2.CanvaService }, { type: AuthCredentialsService }] });
403
403
 
404
404
  class ImgManagerWebElementComponent {
405
405
  constructor(translateService, canvaService, ficheProductService, authCredentialsService, eventService, imgManagerService, imgSelectionService) {
@@ -506,13 +506,13 @@ class ImgManagerWebElementComponent {
506
506
  ngOnDestroy() {
507
507
  this.subscriptions.forEach(sub => sub.unsubscribe());
508
508
  }
509
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: ImgManagerWebElementComponent, deps: [{ token: i1$1.TranslateService }, { token: i2.CanvaService }, { token: FicheProductService }, { token: AuthCredentialsService }, { token: EventService }, { token: i2.ImgManagerService }, { token: i2.ImgSelectionService }], target: i0.ɵɵFactoryTarget.Component }); }
510
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.20", type: ImgManagerWebElementComponent, isStandalone: false, selector: "img-manager-webelement", ngImport: i0, template: "<div class=\"info-bulle\">\n <p class=\"info-bulle-content\" [innerHTML]=\"'ImgManager.webElement.infoBulle' | translate\"></p>\n\n <ng-container *ngIf=\"imgManagerDisplayConfig.pageficheProduct && isPhotosTab\">\n <h3 class=\"wizicss-sous-titre\">{{'ImgManager.webElement.photosTitle' | translate }}</h3>\n </ng-container>\n\n <ng-container *ngIf=\"!loading && id_shop && imgManagerDisplayConfig\">\n\n <p class=\"img-manager-open\" *ngIf=\"imgManagerDisplayConfig.displayBtn && isPhotosTab\">\n <a (click)=\"open()\">{{'ImgManager.webElement.OpenBtn' | translate }}</a>\n </p>\n\n <div class=\"imgManagerBox\">\n <wz-img-manager\n #wzImgManager\n [stateDisplayed]=\"imgManagerDisplayConfig.stateDisplayed\"\n [multipleImgMode]=\"imgManagerDisplayConfig.multipleImgMode\"\n [showImgManagerModule]=\"imgManagerDisplayConfig.showImgManagerModule && openImgManager\"\n [showSelection]=\"imgManagerDisplayConfig.showSelection\"\n (imgManagerClosed)=\"onImgManagerClosed()\">\n </wz-img-manager>\n </div>\n </ng-container>\n</div>", styles: [""], dependencies: [{ kind: "directive", type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.WzImgManagerComponent, selector: "wz-img-manager", inputs: ["stateDisplayed", "showSelection", "forceToOpenCanva", "multipleImgMode", "showImgManagerModule"], outputs: ["imgManagerClosed", "imgSelectionChange", "imageUploaded"] }, { kind: "pipe", type: i1$1.TranslatePipe, name: "translate" }] }); }
509
511
  }
510
- ImgManagerWebElementComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: ImgManagerWebElementComponent, deps: [{ token: i1$1.TranslateService }, { token: i2.CanvaService }, { token: FicheProductService }, { token: AuthCredentialsService }, { token: EventService }, { token: i2.ImgManagerService }, { token: i2.ImgSelectionService }], target: i0.ɵɵFactoryTarget.Component });
511
- ImgManagerWebElementComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.4", type: ImgManagerWebElementComponent, selector: "img-manager-webelement", ngImport: i0, template: "<div class=\"info-bulle\">\r\n <p class=\"info-bulle-content\" [innerHTML]=\"'ImgManager.webElement.infoBulle' | translate\"></p>\r\n\r\n <ng-container *ngIf=\"imgManagerDisplayConfig.pageficheProduct && isPhotosTab\">\r\n <h3 class=\"wizicss-sous-titre\">{{'ImgManager.webElement.photosTitle' | translate }}</h3>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"!loading && id_shop && imgManagerDisplayConfig\">\r\n\r\n <p class=\"img-manager-open\" *ngIf=\"imgManagerDisplayConfig.displayBtn && isPhotosTab\">\r\n <a (click)=\"open()\">{{'ImgManager.webElement.OpenBtn' | translate }}</a>\r\n </p>\r\n\r\n <div class=\"imgManagerBox\">\r\n <wz-img-manager\r\n #wzImgManager\r\n [stateDisplayed]=\"imgManagerDisplayConfig.stateDisplayed\"\r\n [multipleImgMode]=\"imgManagerDisplayConfig.multipleImgMode\"\r\n [showImgManagerModule]=\"imgManagerDisplayConfig.showImgManagerModule && openImgManager\"\r\n [showSelection]=\"imgManagerDisplayConfig.showSelection\"\r\n (imgManagerClosed)=\"onImgManagerClosed()\">\r\n </wz-img-manager>\r\n </div>\r\n </ng-container>\r\n</div>", styles: [""], dependencies: [{ kind: "directive", type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.WzImgManagerComponent, selector: "wz-img-manager", inputs: ["stateDisplayed", "showSelection", "forceToOpenCanva", "multipleImgMode", "showImgManagerModule"], outputs: ["imgManagerClosed", "imgSelectionChange", "imageUploaded"] }, { kind: "pipe", type: i1$1.TranslatePipe, name: "translate" }] });
512
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: ImgManagerWebElementComponent, decorators: [{
512
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: ImgManagerWebElementComponent, decorators: [{
513
513
  type: Component,
514
- args: [{ selector: 'img-manager-webelement', template: "<div class=\"info-bulle\">\r\n <p class=\"info-bulle-content\" [innerHTML]=\"'ImgManager.webElement.infoBulle' | translate\"></p>\r\n\r\n <ng-container *ngIf=\"imgManagerDisplayConfig.pageficheProduct && isPhotosTab\">\r\n <h3 class=\"wizicss-sous-titre\">{{'ImgManager.webElement.photosTitle' | translate }}</h3>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"!loading && id_shop && imgManagerDisplayConfig\">\r\n\r\n <p class=\"img-manager-open\" *ngIf=\"imgManagerDisplayConfig.displayBtn && isPhotosTab\">\r\n <a (click)=\"open()\">{{'ImgManager.webElement.OpenBtn' | translate }}</a>\r\n </p>\r\n\r\n <div class=\"imgManagerBox\">\r\n <wz-img-manager\r\n #wzImgManager\r\n [stateDisplayed]=\"imgManagerDisplayConfig.stateDisplayed\"\r\n [multipleImgMode]=\"imgManagerDisplayConfig.multipleImgMode\"\r\n [showImgManagerModule]=\"imgManagerDisplayConfig.showImgManagerModule && openImgManager\"\r\n [showSelection]=\"imgManagerDisplayConfig.showSelection\"\r\n (imgManagerClosed)=\"onImgManagerClosed()\">\r\n </wz-img-manager>\r\n </div>\r\n </ng-container>\r\n</div>" }]
515
- }], ctorParameters: function () { return [{ type: i1$1.TranslateService }, { type: i2.CanvaService }, { type: FicheProductService }, { type: AuthCredentialsService }, { type: EventService }, { type: i2.ImgManagerService }, { type: i2.ImgSelectionService }]; } });
514
+ args: [{ standalone: false, selector: 'img-manager-webelement', template: "<div class=\"info-bulle\">\n <p class=\"info-bulle-content\" [innerHTML]=\"'ImgManager.webElement.infoBulle' | translate\"></p>\n\n <ng-container *ngIf=\"imgManagerDisplayConfig.pageficheProduct && isPhotosTab\">\n <h3 class=\"wizicss-sous-titre\">{{'ImgManager.webElement.photosTitle' | translate }}</h3>\n </ng-container>\n\n <ng-container *ngIf=\"!loading && id_shop && imgManagerDisplayConfig\">\n\n <p class=\"img-manager-open\" *ngIf=\"imgManagerDisplayConfig.displayBtn && isPhotosTab\">\n <a (click)=\"open()\">{{'ImgManager.webElement.OpenBtn' | translate }}</a>\n </p>\n\n <div class=\"imgManagerBox\">\n <wz-img-manager\n #wzImgManager\n [stateDisplayed]=\"imgManagerDisplayConfig.stateDisplayed\"\n [multipleImgMode]=\"imgManagerDisplayConfig.multipleImgMode\"\n [showImgManagerModule]=\"imgManagerDisplayConfig.showImgManagerModule && openImgManager\"\n [showSelection]=\"imgManagerDisplayConfig.showSelection\"\n (imgManagerClosed)=\"onImgManagerClosed()\">\n </wz-img-manager>\n </div>\n </ng-container>\n</div>" }]
515
+ }], ctorParameters: () => [{ type: i1$1.TranslateService }, { type: i2.CanvaService }, { type: FicheProductService }, { type: AuthCredentialsService }, { type: EventService }, { type: i2.ImgManagerService }, { type: i2.ImgSelectionService }] });
516
516
 
517
517
  class WebelementImageManagerApiService {
518
518
  constructor(http) {
@@ -526,7 +526,7 @@ class WebelementImageManagerApiService {
526
526
  canva_url: 'https://sdk.canva.com/designbutton/v2/api.js',
527
527
  pexels_token: environment.pexels_token,
528
528
  pexels_route: 'https://api.pexels.com/v1',
529
- shop_category: 'other',
529
+ shop_category: 'other', // The shop category is retrieve later with the setShopCategory methode
530
530
  assets_route: environment.assets_route,
531
531
  };
532
532
  this.IMG_SIZE = {
@@ -592,30 +592,30 @@ class WebelementImageManagerApiService {
592
592
  }
593
593
  })));
594
594
  }
595
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: WebelementImageManagerApiService, deps: [{ token: i1.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable }); }
596
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: WebelementImageManagerApiService }); }
595
597
  }
596
- WebelementImageManagerApiService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: WebelementImageManagerApiService, deps: [{ token: i1.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable });
597
- WebelementImageManagerApiService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: WebelementImageManagerApiService });
598
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: WebelementImageManagerApiService, decorators: [{
598
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: WebelementImageManagerApiService, decorators: [{
599
599
  type: Injectable
600
- }], ctorParameters: function () { return [{ type: i1.HttpClient }]; } });
600
+ }], ctorParameters: () => [{ type: i1.HttpClient }] });
601
601
 
602
602
  class ImgManagerWebElementModule {
603
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: ImgManagerWebElementModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
604
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.20", ngImport: i0, type: ImgManagerWebElementModule, declarations: [ImgManagerWebElementComponent], imports: [CommonModule,
605
+ HttpClientModule, i2.WzImgManagerModule, TranslateModule], exports: [ImgManagerWebElementComponent] }); }
606
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: ImgManagerWebElementModule, providers: [
607
+ FicheProductService,
608
+ EventService,
609
+ provideAuthCredentialsService()
610
+ ], imports: [CommonModule,
611
+ HttpClientModule,
612
+ WzImgManagerModule.withConfig({
613
+ provide: ApiService,
614
+ useClass: WebelementImageManagerApiService,
615
+ }),
616
+ TranslateModule] }); }
603
617
  }
604
- ImgManagerWebElementModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: ImgManagerWebElementModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
605
- ImgManagerWebElementModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.0.4", ngImport: i0, type: ImgManagerWebElementModule, declarations: [ImgManagerWebElementComponent], imports: [CommonModule,
606
- HttpClientModule, i2.WzImgManagerModule, TranslateModule], exports: [ImgManagerWebElementComponent] });
607
- ImgManagerWebElementModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: ImgManagerWebElementModule, providers: [
608
- FicheProductService,
609
- EventService,
610
- provideAuthCredentialsService()
611
- ], imports: [CommonModule,
612
- HttpClientModule,
613
- WzImgManagerModule.withConfig({
614
- provide: ApiService,
615
- useClass: WebelementImageManagerApiService,
616
- }),
617
- TranslateModule] });
618
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: ImgManagerWebElementModule, decorators: [{
618
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: ImgManagerWebElementModule, decorators: [{
619
619
  type: NgModule,
620
620
  args: [{
621
621
  declarations: [ImgManagerWebElementComponent],
@@ -647,4 +647,3 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImpor
647
647
 
648
648
  export { ImgManagerWebElementComponent, ImgManagerWebElementModule };
649
649
  //# sourceMappingURL=wizishop-img-manager-webelement.mjs.map
650
- //# sourceMappingURL=wizishop-img-manager-webelement.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"wizishop-img-manager-webelement.mjs","sources":["../../../../projects/img-manager-webelement/src/lib/environments/environment.ts","../../../../projects/img-manager-webelement/src/lib/services/event.service.ts","../../../../projects/img-manager-webelement/src/lib/services/auth-credentials.service.ts","../../../../projects/img-manager-webelement/src/lib/services/fiche_products.service.ts","../../../../projects/img-manager-webelement/src/lib/img-manager-webelement.component.ts","../../../../projects/img-manager-webelement/src/lib/img-manager-webelement.component.html","../../../../projects/img-manager-webelement/src/lib/services/webelement-image-manager-api.config.ts","../../../../projects/img-manager-webelement/src/lib/img-manager-webelement.module.ts","../../../../projects/img-manager-webelement/src/public-api.ts","../../../../projects/img-manager-webelement/src/wizishop-img-manager-webelement.ts"],"sourcesContent":["export interface Environment {\n isWizishopcom: boolean;\n production: boolean;\n wizi_admin_api: string;\n wizi_api: string;\n CDN_URL: string;\n assets_route: string;\n translations_route: string;\n wiziApiCredentialsKey: string;\n local: any;\n product_sheet_endpoint: string;\n isPhotosTab?: boolean;\n pexels_token: string;\n}\n\n// Use locally for this project\nexport const environmentWiziDevLocal: Environment = {\n isWizishopcom: false,\n production: false,\n wizi_admin_api: \"https://admin.wizilocal.com/\",\n wizi_api: \"https://api.wizilocal.com/v3\",\n CDN_URL: \"http://debugshop.wizilocal.com/_i/\",\n assets_route : \"assets/img-manager/\",\n translations_route : \"./assets/img-manager/i18n/\",\n wiziApiCredentialsKey: 'wizi_api_credentials_key',\n local: {\n shopId: 131,\n token : 'eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJ1c2VyX2lkIjo2LCJ1c2VyX2xvY2FsZSI6ImZyX0ZSIiwiaXNVc2VyQ29ubmVjdGVkRnJvbVZwbiI6ZmFsc2UsImV4cCI6MTY3NDM3NDkxMSwiaWF0IjoxNjcxNzgyOTExfQ.DbdBTaVLzLx5pE2FHTg8K0FcMsOY7yg7hAz7bjBQt4afke2ef_MfhXZx9ajtj6BciOsY5eYRgDp3r747iLc7CSThC6cNgPYZ9oMtN3MbFRYi5bktmPUVfbs2oxfWe9sNDwdpgMtw00d8YIO3ZTFZb3XzXW1hQIS2Ooy5x0GTGRgegIDAJYrVyVs8AC3TG8ZaC8g73iSMFnCrG85TAFbgjJb8ccU0HfB-h1I9LPE2LUzI5QE2vbsd6qo1XU59belW1SPv92Wgcd9IiHwuoeO3C2S2rQGUp-L8qprT6f5IeX-rp3XVmOVhTCNM4Dc0FdPdpL6p2jMVhhhu62fOZtNEXA'\n },\n product_sheet_endpoint: \"/products/ajax\",\n isPhotosTab: true,\n pexels_token: '563492ad6f91700001000001e39215727d8b42c1b08498a9ce1e6b94'\n};\n\nexport const environmentWiziDev: Environment = {\n isWizishopcom: true,\n production: false,\n wizi_admin_api: \"https://admin.wizilocal.com/\",\n wizi_api: \"https://api.wizilocal.com/v3\",\n CDN_URL: \"https://media.wizilocal.com/_i/\",\n assets_route : \"https://js.wizilocal.com/a/libs/img-manager-webelement/assets/img-manager/\",\n translations_route : \"https://js.wizilocal.com/a/libs/img-manager-webelement/assets/img-manager/i18n/\",\n wiziApiCredentialsKey: 'wizi_api_credentials_key',\n local: {\n shopId: null,\n token : null\n },\n product_sheet_endpoint: \"/products/ajax\",\n pexels_token: '563492ad6f91700001000001e39215727d8b42c1b08498a9ce1e6b94'\n};\n\nexport const environmentWizishopProd: Environment = {\n isWizishopcom: true,\n production: true,\n wizi_admin_api: \"https://admin.wizishop.com/\",\n wizi_api: \"https://api.wizishop.com/v3\",\n CDN_URL: \"https://media.cdnws.com/_i/\",\n assets_route : \"https://js.wizishop.com/a/libs/img-manager-webelement/assets/img-manager/\",\n translations_route : \"https://js.wizishop.com/a/libs/img-manager-webelement/assets/img-manager/i18n/\",\n wiziApiCredentialsKey: 'wizi_api_credentials_key',\n local: {\n shopId: null,\n token : null\n },\n product_sheet_endpoint: \"/products/ajax\",\n pexels_token: '563492ad6f91700001000001e39215727d8b42c1b08498a9ce1e6b94'\n};\n\nexport const environmentEvolupProd: Environment = {\n ...environmentWizishopProd,\n pexels_token: 'Q3qRBpJpomRu9AOFc2bOzRPfhIUou2LxZkqYYyKCZm2kGY19DxYdTMpE'\n};\n\nexport const environmentDropiziDev: Environment = {\n isWizishopcom: true,\n production: false,\n wizi_admin_api: \"https://admin.dropilocal.com/\",\n wizi_api: \"https://api.dropilocal.com/v3\",\n CDN_URL: \"https://media.dropilocal.com/_i/\",\n assets_route : \"https://js.dropilocal.fr/a/libs/img-manager-webelement/assets/img-manager/\",\n translations_route : \"https://js.dropilocal.com/a/libs/img-manager-webelement/assets/img-manager/i18n/\",\n wiziApiCredentialsKey: 'wizi_api_credentials_key',\n local: {\n shopId: null,\n token : null\n },\n product_sheet_endpoint: \"/products/ajax\",\n pexels_token: 'QWTAGfv4wb14tTP62xxBE2DDnzdGxsBaTr4NXh1te2qDZ9lVPLDSWx0U'\n};\n\nexport const environmentDropiziProd: Environment = {\n isWizishopcom: true,\n production: true,\n wizi_admin_api: \"https://admin.dropizi.fr/\",\n wizi_api: \"https://api.wizishop.com/v3\",\n CDN_URL: \"https://media.cdnws.com/_i/\",\n assets_route : \"https://js.dropizi.fr/a/libs/img-manager-webelement/assets/img-manager/\",\n translations_route : \"https://js.dropizi.fr/a/libs/img-manager-webelement/assets/img-manager/i18n/\",\n wiziApiCredentialsKey: 'wizi_api_credentials_key',\n local: {\n shopId: null,\n token : null\n },\n product_sheet_endpoint: \"/products/ajax\",\n pexels_token: 'QWTAGfv4wb14tTP62xxBE2DDnzdGxsBaTr4NXh1te2qDZ9lVPLDSWx0U'\n};\n\nfunction getCurrentEnv() {\n const isDev = !!window.location.hostname.match(/local/);\n const isWizi = !!window.location.hostname.match(/wizi/);\n const isEvolup = !!window.location.hostname.match(/evolup/);\n const serverLocal = !!window.location.port;\n\n if (serverLocal) {\n return environmentWiziDevLocal;\n }\n if (isDev) {\n if (isWizi) {\n return environmentWiziDev;\n }\n return environmentDropiziDev;\n }\n\n if (isEvolup) {\n return environmentEvolupProd;\n }\n\n if (isWizi) {\n return environmentWizishopProd;\n }\n\n return environmentDropiziProd;\n}\n\nexport const environment: Environment = Object.assign({}, getCurrentEnv());","import { Injectable } from '@angular/core';\nimport { ImgPictureDTO } from '@wizishop/img-manager';\nimport { fromEvent } from 'rxjs';\nimport { environment } from '../environments/environment';\n\n@Injectable()\nexport class EventService {\n\n // Sometimes, there are multiple img manager that listen at the same time at imgSelected event\n // It use by the listener, to know if the event is for him\n emitter: string;\n\n constructor() { }\n\n sendImgSelectedToPage(file : ImgPictureDTO) {\n const sendedFile = {\n ...file,\n cdn_img_src: ''\n };\n if (sendedFile) {\n sendedFile.cdn_img_src = `${environment.CDN_URL}${file.id_shop}/`;\n }\n\n const value = {\n detail: {\n \"file\": sendedFile,\n \"from\": this.emitter\n }\n };\n const event = new CustomEvent('imgSelected', value);\n const imgManagerModule= document.getElementById('imgManagerModule');\n imgManagerModule?.dispatchEvent(event);\n }\n\n pageAskForImg() {\n return fromEvent<any>(document.getElementById('imgManagerModule') as any, \"openImgManager\");\n }\n\n setEmitter(emitter: string) {\n this.emitter = emitter;\n }\n}","import { Injectable, inject } from '@angular/core';\nimport { StorageByKey } from '@wizishop/ng-web-storages/shared';\nimport { environment } from './../environments/environment';\nimport { LocalStorageService } from '@wizishop/ng-web-storages/local-storage';\n\n@Injectable()\nexport abstract class AuthCredentialsService extends StorageByKey<{data:AuthCredentials}> {\n}\n\nexport const provideAuthCredentialsService = () => ({\n provide: AuthCredentialsService,\n useFactory: () => new StorageByKey<{data: AuthCredentials}>(inject(LocalStorageService), environment.wiziApiCredentialsKey),\n})\n\nexport interface AuthCredentials {\n token: string;\n user_id: number;\n account_id: number;\n shop_id: number;\n};\n","import { Injectable } from '@angular/core';\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\nimport { forkJoin, fromEvent, Observable, Subscription } from \"rxjs\";\nimport { take } from 'rxjs/operators';\nimport { EventService } from './event.service';\nimport { environment } from '../environments/environment';\nimport { AuthCredentialsService } from './auth-credentials.service';\nimport { ImgPictureDTO, ImgSelectionService, CanvaService } from '@wizishop/img-manager';\nimport { WiziBlockMediaDto } from '@wizishop/img-manager/lib/dto/wizi-block-media.dto';\n\ndeclare const Wizi: any;\n\n@Injectable()\nexport class FicheProductService {\n\n productSheetApiRoute: string;\n image_manager_api: string = environment.wizi_api + \"/image-manager/shops/\";\n shopToken: string = this.authCredentialsService.getSync().data.token;\n shopId: number = this.authCredentialsService.getSync().data.shop_id;\n productId: string;\n isPhotosTab: boolean = false; // State of the Photos tabs in fiche product page\n isPreviousTabPhotos: boolean = false;\n isVariantsTab: boolean = false;\n loadProductImgSelection:boolean = false;\n currentProductImgSelection: ImgPictureDTO[];\n isProductCreation: boolean;\n expectedMediaDto:WiziBlockMediaDto = {\n id: '',\n image_url: '',\n image_width: '900',\n image_height: '900',\n }\n\n private subscriptions: Subscription[] = [];\n\n constructor(\n private http: HttpClient,\n private imgSelectionService: ImgSelectionService,\n private eventService: EventService,\n private canvaService: CanvaService,\n private authCredentialsService: AuthCredentialsService\n ) {\n }\n\n setApiConfig() {\n const matches = window.location.pathname.match( /\\/(\\w+)\\/products\\/(\\d+)\\/edit/);\n const lang = matches && matches[1] ? matches[1] : 'fr';\n this.productSheetApiRoute = environment.wizi_admin_api + lang + environment.product_sheet_endpoint;\n this.productId = matches && matches[2] ? matches[2] : \"0\";\n this.isProductCreation = /\\/products\\/create/.test(window.location.pathname);\n }\n\n /**\n * There is only one instance of this img manager.\n * But it is called with different config, by Photos tab and Variation tab, on fiche product page.\n * The method handle the switch config between Photos and Variation tab.\n * Return an observable : true => Photos tab / false => Variation tab.\n * */\n handleTabs():Observable<boolean> {\n return new Observable(observer => {\n\n const switchTabsSub =\n this.switchTabs().subscribe(data => {\n\n if (!data || !data[\"detail\"] || !data[\"detail\"][\"currentTab\"]) {\n return;\n }\n // Retrieve current tab\n const currentTab = data[\"detail\"][\"currentTab\"];\n this.isPreviousTabPhotos = this.isPhotosTab;\n this.isPhotosTab = currentTab === 'photos';\n this.isVariantsTab = currentTab === 'variation';\n\n // The user switch to Photos tab\n if (this.isPhotosTab) {\n this.loadProductImgSelection = true;\n\n if (!this.currentProductImgSelection || !this.currentProductImgSelection.length) {\n this.initProductImgSelection();\n } else {\n this.applyCurrentImgSelection();\n this.loadProductImgSelection = false;\n }\n\n } else if (this.isPreviousTabPhotos) { // The user switch to another tab\n // Save current img selection, in order to not lose the img selection\n this.saveCurrentImgSelection();\n }\n observer.next(this.isPhotosTab);\n });\n this.subscriptions.push(switchTabsSub);\n });\n }\n\n getShopImg(idFile: string): Observable<any> {\n return this.http.get(`${this.image_manager_api}${this.shopId}/images/${idFile}`, this.getOptionsHeadersWithBearer());\n }\n\n initProductImgSelection() {\n\n // Display the loader in img list selection\n this.imgSelectionService.imgSelectedListLoading$.next(true);\n\n // retrieve img selection\n const retrieveImgSelectionSub =\n this.retrieveImgSelection().subscribe(data => {\n\n // No image selected\n if (!data || !data[\"photos\"] || !data[\"photos\"][\"infos\"] || !data[\"photos\"][\"infos\"][\"files\"] || !data[\"photos\"][\"infos\"][\"files\"].length) {\n this.loadProductImgSelection = false;\n\n this.imgSelectionService.imgSelectedListLoading$.next(false);\n return;\n }\n\n const idImgSelectionList: number[] = data[\"photos\"][\"infos\"][\"files\"];\n const obsImg: Observable<any>[] = [];\n\n idImgSelectionList.forEach(idFile =>\n obsImg.push(\n this.getShopImg(idFile.toString()).pipe(take(1))\n ));\n const allImgSub =\n forkJoin(obsImg).subscribe({\n next: (photos: ImgPictureDTO[]) => {\n // The img selection must be saved, otherwise it is lost when the user switch on variation tab\n this.saveCurrentImgSelection(photos);\n this.applyCurrentImgSelection();\n this.loadProductImgSelection = false;\n },\n error: error => {\n // Hide the loader in img list selection\n this.loadProductImgSelection = false;\n\n this.imgSelectionService.imgSelectedListLoading$.next(false);\n }});\n this.subscriptions.push(allImgSub);\n });\n\n this.subscriptions.push(retrieveImgSelectionSub);\n this.canvaService.expectedImgSizesChange(this.expectedMediaDto);\n }\n\n retrieveInfoSelection() {\n const formData = new FormData();\n formData.append('rub', \"main\");\n formData.append('action', \"getInfos\");\n formData.append('prodId', this.productId);\n formData.append('_token', '');\n formData.append('_shid', this.shopId.toString());\n\n return this.http.post(this.productSheetApiRoute, formData, this.getOptionsHeaders());\n }\n\n retrieveImgSelection() {\n const formData = new FormData();\n formData.append('rub', \"main\");\n formData.append('action', \"getAllInfos\");\n formData.append('prodId', this.productId);\n formData.append('_token', '');\n formData.append('_shid', this.shopId.toString());\n\n return this.http.post<any>(this.productSheetApiRoute, formData, this.getOptionsHeaders());\n }\n\n updateImgSelectionOnChange() {\n // listen to the img manager change\n const imgSelectionSub =\n this.imgSelectionService.imgSelection$.subscribe(imgSelectionList => {\n if (!imgSelectionList) {\n return;\n }\n\n // Send the img selection\n if (this.isPhotosTab && !this.loadProductImgSelection) {\n // Retrieve only the img id\n const idImgSelectedList: number[] = [];\n imgSelectionList.forEach(img => {\n idImgSelectedList.push(parseInt(img.id_file));\n });\n\n this.updateProductImgSelection(idImgSelectedList);\n\n // On variation tab, send event with img selected\n } else if (!this.isPhotosTab && imgSelectionList.length) {\n this.eventService.sendImgSelectedToPage(imgSelectionList[0]);\n }\n });\n this.subscriptions.push(imgSelectionSub);\n }\n\n updateProductImgSelection(idsImgList: number[]) {\n if ((!this.productId || this.productId === \"0\") && Wizi._produit.global.PROD_ID) {\n this.productId = Wizi._produit.global.PROD_ID.toString();\n }\n\n Wizi._produit._dataTmp['photos'].infos = {};\n Wizi._produit._dataTmp['photos'].infos.files = idsImgList;\n this.emitImgSelectionChange(idsImgList);\n\n if (this.productId && this.productId !== \"0\") {\n const submitProd1 =\n this.submitProductImg(idsImgList).subscribe();\n this.subscriptions.push(submitProd1);\n return;\n }\n const createProductSub =\n this.createProduct().subscribe(\n (productId:number) => {\n if (!productId) {\n throw \"No product id created. Can not link image(s) to the new product.\";\n }\n Wizi._produit.global.PROD_ID = productId;\n\n this.productId = productId.toString();\n this.submitProductImg(idsImgList).subscribe();\n }\n );\n this.subscriptions.push(createProductSub);\n\n }\n\n submitProductImg(idsImgList: number[]) {\n const data = {\n files : idsImgList,\n couls: []\n };\n\n const formData = new FormData();\n formData.append('rub', \"photos\");\n formData.append('action', \"save\");\n formData.append('newProd', this.isProductCreation ? \"1\" : \"0\");\n formData.append('prodId', this.productId);\n formData.append('_token', this.shopToken);\n formData.append('_shid', this.shopId.toString());\n formData.append('data', JSON.stringify(data));\n\n return this.http.post(this.productSheetApiRoute, formData, this.getOptionsHeaders());\n }\n\n createProduct() {\n const formData = new FormData();\n formData.append('rub', \"main\");\n formData.append('action', \"createProd\");\n formData.append('_token', '');\n formData.append('_shid', this.shopId.toString());\n\n return this.http.post<number>(this.productSheetApiRoute, formData, this.getOptionsHeaders());\n\n }\n\n /* Use to know where the img manager is displayed, and to close it when switching tab */\n switchTabs() {\n return fromEvent<any>(document.getElementById('imgManagerModule') as any, \"switchTab\");\n }\n\n private emitImgSelectionChange(idsImgList: number[]) {\n const value = {\n detail: {\n idsImgList\n }\n };\n\n const event = new CustomEvent('onImgSelectionChange', value);\n const imgManagerModule= document.getElementById('imgManagerModule');\n imgManagerModule?.dispatchEvent(event);\n }\n\n private saveCurrentImgSelection(imgSelection?: ImgPictureDTO[]) {\n this.currentProductImgSelection = imgSelection ? imgSelection : JSON.parse(JSON.stringify(this.imgSelectionService.getImgSelection()));\n }\n\n private applyCurrentImgSelection() {\n this.imgSelectionService.setImgSelection(this.currentProductImgSelection);\n // Hide the loader in img list selection\n this.imgSelectionService.imgSelectedListLoading$.next(false);\n }\n\n private getOptionsHeaders() {\n const header = { headers: new HttpHeaders({\n 'Access-Control-Allow-Origin':'*'\n })\n };\n return header;\n }\n\n private getOptionsHeadersWithBearer() {\n const header = { headers: new HttpHeaders({\n Authorization: 'Bearer ' + this.shopToken\n })\n };\n return header;\n }\n\n ngOnDestroy(): void {\n this.subscriptions.forEach(subscription => subscription.unsubscribe());\n }\n}","import { Component } from '@angular/core';\nimport { TranslateService } from '@ngx-translate/core';\nimport { Subscription } from 'rxjs';\nimport { FicheProductService } from './services/fiche_products.service';\nimport { AuthCredentials, AuthCredentialsService } from './services/auth-credentials.service';\nimport { EventService } from './services/event.service';\nimport { environment } from './environments/environment';\nimport { ImgSelectionService, ImgManagerConfigDto, ImgManagerDisplayConfig, CanvaService, ImgManagerService } from '@wizishop/img-manager';\n\n@Component({\n standalone: false,\n selector: 'img-manager-webelement',\n templateUrl: './img-manager-webelement.component.html',\n styleUrls: ['./img-manager-webelement.component.scss'],\n})\nexport class ImgManagerWebElementComponent {\n // shop config\n id_shop: number = this.authCredentialsService.getSync().data.shop_id;\n token_shop: string = this.authCredentialsService.getSync().data.token;\n\n // img manger config\n openImgManager:boolean = false;\n loading: boolean = true;\n imgExternalConfig: ImgManagerConfigDto;\n imgManagerDisplayConfig: ImgManagerDisplayConfig;\n pageFicheProductConfig = this.imgManagerService.getImgManagerDisplayConfig(\"fiche-product\");\n pageEventConfig = this.imgManagerService.getImgManagerDisplayConfig(\"wizi-block\");\n\n // fiche product config\n isPhotosTab: boolean = !!environment.isPhotosTab;\n\n subscriptions: Subscription[] = [];\n\n constructor(\n private translateService: TranslateService,\n private canvaService: CanvaService,\n private ficheProductService: FicheProductService,\n private authCredentialsService: AuthCredentialsService,\n private eventService: EventService,\n private imgManagerService: ImgManagerService,\n private imgSelectionService: ImgSelectionService\n ){}\n\n ngOnInit() {\n this.loading = true;\n\n this.setCurrentLanguage();\n // Search on which page is display the img manger\n this.setDisplayedPageConfig();\n\n this.loading = false;\n this.initVariables(this.authCredentialsService.getSync().data);\n // Fiche product page\n if (this.imgManagerDisplayConfig.pageficheProduct) {\n this.setFicheProductPage();\n } else {\n this.setPageWithEvents();\n }\n }\n\n initVariables(authCredentials: AuthCredentials | null) {\n if (!authCredentials) {\n\n if (environment.isWizishopcom) {\n return;\n }\n // Run on local Server\n this.imgManagerDisplayConfig = this.pageFicheProductConfig;\n return;\n }\n }\n\n setFicheProductPage() {\n this.ficheProductService.setApiConfig();\n this.handleFicheProductTab(); // Display different img manager config according to the tab\n this.closeImgManagerOnSwitchingTab();\n this.subscribePageAskForImg(); // Use for images in variations tab\n this.ficheProductService.updateImgSelectionOnChange();\n }\n\n setPageWithEvents() {\n this.subscribePageAskForImg();\n\n // Send img selected\n const subImgSelection = this.imgSelectionService.imgSelection$.subscribe(imgSelectionList => {\n if (imgSelectionList && imgSelectionList.length) {\n this.eventService.sendImgSelectedToPage(imgSelectionList[0]);\n }\n });\n this.subscriptions.push(subImgSelection);\n }\n\n subscribePageAskForImg() {\n // Listen to page editor ask for img event\n const subAskForImg = this.eventService.pageAskForImg().subscribe( data => {\n // Retrieve which img manager send the event\n const emitter = data && data[\"detail\"] ? data[\"detail\"][\"from\"] : null;\n this.eventService.setEmitter(emitter);\n\n this.imgSelectionService.setImgSelection([]);\n\n this.open();\n });\n this.subscriptions.push(subAskForImg);\n }\n\n open() {\n this.openImgManager = true;\n }\n\n onImgManagerClosed() {\n // Close img manager\n this.openImgManager = false;\n }\n\n setCurrentLanguage() {\n const matches = window.location.pathname.match( /^\\/(\\w+)\\//);\n this.translateService.use(matches && matches[1] ? matches[1] : 'fr');\n }\n\n setDisplayedPageConfig() {\n const isFicheProductPage = /\\/products\\/(\\d+\\/edit|create)/.test(window.location.pathname);\n this.imgManagerDisplayConfig = isFicheProductPage ? this.pageFicheProductConfig : this.pageEventConfig;\n }\n\n handleFicheProductTab() {\n const tabsSub =\n this.ficheProductService.handleTabs().subscribe(isPhotosTab => {\n this.imgManagerDisplayConfig = isPhotosTab ? this.pageFicheProductConfig : this.pageEventConfig;\n this.isPhotosTab = isPhotosTab;\n });\n this.subscriptions.push(tabsSub);\n }\n\n closeImgManagerOnSwitchingTab() {\n const tabsCloseSub =\n this.ficheProductService.switchTabs().subscribe(data => {\n this.openImgManager = false;\n });\n\n this.subscriptions.push(tabsCloseSub);\n }\n\n ngOnDestroy() {\n this.subscriptions.forEach(sub => sub.unsubscribe());\n }\n}\n","<div class=\"info-bulle\">\n <p class=\"info-bulle-content\" [innerHTML]=\"'ImgManager.webElement.infoBulle' | translate\"></p>\n\n <ng-container *ngIf=\"imgManagerDisplayConfig.pageficheProduct && isPhotosTab\">\n <h3 class=\"wizicss-sous-titre\">{{'ImgManager.webElement.photosTitle' | translate }}</h3>\n </ng-container>\n\n <ng-container *ngIf=\"!loading && id_shop && imgManagerDisplayConfig\">\n\n <p class=\"img-manager-open\" *ngIf=\"imgManagerDisplayConfig.displayBtn && isPhotosTab\">\n <a (click)=\"open()\">{{'ImgManager.webElement.OpenBtn' | translate }}</a>\n </p>\n\n <div class=\"imgManagerBox\">\n <wz-img-manager\n #wzImgManager\n [stateDisplayed]=\"imgManagerDisplayConfig.stateDisplayed\"\n [multipleImgMode]=\"imgManagerDisplayConfig.multipleImgMode\"\n [showImgManagerModule]=\"imgManagerDisplayConfig.showImgManagerModule && openImgManager\"\n [showSelection]=\"imgManagerDisplayConfig.showSelection\"\n (imgManagerClosed)=\"onImgManagerClosed()\">\n </wz-img-manager>\n </div>\n </ng-container>\n</div>","import { HttpClient, HttpHeaders, HttpParams } from \"@angular/common/http\";\nimport { Injectable, inject } from \"@angular/core\";\nimport { Observable, map, tap } from \"rxjs\";\nimport { environment } from '../environments/environment';\nimport { ApiService, ImgPicturesDTO, ImgPictureDTO } from \"@wizishop/img-manager\";\nimport { AuthCredentialsService } from \"./auth-credentials.service\";\n\n@Injectable()\nexport class WebelementImageManagerApiService implements ApiService {\n\n private readonly authCredentialsService = inject(AuthCredentialsService);\n shopId = this.authCredentialsService.getSync().data.shop_id;\n shopToken = this.authCredentialsService.getSync().data.token;\n\n CONFIG = {\n image_manager_route: environment.wizi_api + \"/image-manager/shops/\" + this.shopId,\n canva_token: 'wdByHayF5v57nj2ZSLvu055O',\n canva_url: 'https://sdk.canva.com/designbutton/v2/api.js',\n pexels_token: environment.pexels_token,\n pexels_route: 'https://api.pexels.com/v1',\n shop_category: 'other', // The shop category is retrieve later with the setShopCategory methode\n assets_route: environment.assets_route,\n }\n\n IMG_SIZE = {\n url_raw_image: `${environment.CDN_URL}${this.shopId}/RAW-`,\n url_100_image: `${environment.CDN_URL}${this.shopId}/m100-`,\n url_200_image: `${environment.CDN_URL}${this.shopId}/cs200-`,\n url_400_image: `${environment.CDN_URL}${this.shopId}/cs400-`,\n url_800_image: `${environment.CDN_URL}${this.shopId}/cs800-`\n }\n\n constructor(private http: HttpClient) {\n }\n\n private getOptionsHeaders(params?: HttpParams) {\n const header = { headers: new HttpHeaders({\n Authorization: 'Bearer ' + this.shopToken\n })\n };\n if (params) {\n header['params'] = params\n }\n return header;\n }\n\n getShopCategory(): string {\n return 'other';\n }\n\n changeVideoLink(videoLink: string, id_file: string): Observable<ImgPictureDTO> {\n const encoded = encodeURIComponent(videoLink);\n\n return this.http.put<ImgPictureDTO>(\n `${this.CONFIG.image_manager_route}/images/${id_file}?video_link=${encoded}`,\n null,\n this.getOptionsHeaders()\n );\n }\n\n getShopImgList(params?: HttpParams): Observable<ImgPicturesDTO> {\n return this.http.get<ImgPicturesDTO>(`${this.CONFIG.image_manager_route}/images`, this.getOptionsHeaders(params));\n }\n\n getShopTotalImgList(params?: HttpParams) {\n return this.http.get<{totalRecords: number}>(`${this.CONFIG.image_manager_route}/total/images`, this.getOptionsHeaders(params)).pipe(map(res => res.totalRecords));\n }\n\n getShopImg(idFile: string): Observable<ImgPictureDTO> {\n return this.http.get<ImgPictureDTO>(`${this.CONFIG.image_manager_route}/images/${idFile}`, this.getOptionsHeaders());\n }\n\n uploadFile(formData: FormData) {\n return this.http.post<ImgPictureDTO>(`${this.CONFIG.image_manager_route}/images/template`, formData, this.getOptionsHeaders());\n }\n\n uploadFileByUrl(url: string, fileName?: string) {\n return this.http.post<ImgPictureDTO>(`${this.CONFIG.image_manager_route}/images/template`, { url, fileName }, this.getOptionsHeaders());\n }\n\n replaceImg(imageBase64: string, id_file: string) {\n const body = {\n imageBase64,\n type : \"RAW\"\n }\n return this.http.put<ImgPictureDTO>(`${this.CONFIG.image_manager_route}/images/${id_file}/replace`, body, this.getOptionsHeaders());\n }\n\n changeImgName(fileName: string, id_file: string) {\n return this.http.put<ImgPictureDTO>(`${this.CONFIG.image_manager_route}/images/${id_file}?file_name=${fileName}`, null, this.getOptionsHeaders());\n }\n\n removeImg(id_file: string) {\n return this.http.delete<ImgPictureDTO>(`${this.CONFIG.image_manager_route}/images/${id_file}`, this.getOptionsHeaders());\n }\n\n removeMultipleImg(id_array: string[]) {\n return this.http.post<ImgPictureDTO[]>(`${this.CONFIG.image_manager_route}/images-multiple-delete`, { id_array }, this.getOptionsHeaders());\n }\n\n setShopCategory(shopId: number) {\n return this.http.get<{\n category: string\n }>(`${environment.wizi_api}/shops/${shopId}`, this.getOptionsHeaders()).pipe(\n tap((shop => {\n if (shop && shop['category']) {\n this.CONFIG.shop_category = shop['category'];\n }\n }))\n );\n }\n\n}\n","import { CommonModule } from '@angular/common';\nimport { HttpClientModule } from '@angular/common/http';\nimport { NgModule } from '@angular/core';\nimport { TranslateModule } from '@ngx-translate/core';\nimport { ImgManagerWebElementComponent } from './img-manager-webelement.component';\nimport { provideAuthCredentialsService } from './services/auth-credentials.service';\nimport { EventService } from './services/event.service';\nimport { FicheProductService } from './services/fiche_products.service';\nimport { WebelementImageManagerApiService } from './services/webelement-image-manager-api.config';\nimport { WzImgManagerModule, ApiService } from '@wizishop/img-manager';\n\n@NgModule({\n declarations: [ImgManagerWebElementComponent],\n imports: [\n CommonModule,\n HttpClientModule,\n WzImgManagerModule.withConfig({\n provide: ApiService,\n useClass: WebelementImageManagerApiService,\n }),\n TranslateModule,\n ],\n exports: [ImgManagerWebElementComponent],\n providers: [\n FicheProductService,\n EventService,\n provideAuthCredentialsService()\n ]\n})\nexport class ImgManagerWebElementModule { }\n","/*\n * Public API Surface of img-manager-webelement\n */\nexport * from './lib/img-manager-webelement.component';\nexport * from './lib/img-manager-webelement.module';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i3.EventService","i4.AuthCredentialsService","i1","i3.FicheProductService","i5.EventService"],"mappings":"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"}
package/package.json CHANGED
@@ -1,39 +1,31 @@
1
1
  {
2
2
  "name": "@wizishop/img-manager-webelement",
3
- "version": "15.2.64-beta",
3
+ "version": "19.0.0-beta.1",
4
4
  "peerDependencies": {
5
- "@angular/animations": "~15.0.4",
6
- "@angular/cdk": "^15.0.3",
7
- "@angular/common": "~15.0.4",
8
- "@angular/core": "~15.0.4",
9
- "@angular/forms": "~15.0.4",
10
- "@angular/platform-browser": "~15.0.4",
11
- "@angular/platform-browser-dynamic": "~15.0.4",
12
- "@angular/router": "~15.0.4",
13
- "@ngx-translate/core": "^14.0.0",
14
- "@ngx-translate/http-loader": "^7.0.0",
15
- "@wizishop/img-manager": "15.2.64-beta",
16
- "@wizishop/ng-wizi-bulma": "^15.0.3",
5
+ "@angular/animations": ">=19.0.0",
6
+ "@angular/cdk": ">=19.0.0",
7
+ "@angular/common": ">=19.0.0",
8
+ "@angular/core": ">=19.0.0",
9
+ "@angular/forms": ">=19.0.0",
10
+ "@angular/platform-browser": ">=19.0.0",
11
+ "@angular/platform-browser-dynamic": ">=19.0.0",
12
+ "@angular/router": ">=19.0.0",
13
+ "@ngx-translate/core": "^16.0.0",
14
+ "@ngx-translate/http-loader": "^16.0.0",
15
+ "@wizishop/img-manager": ">=19.0.0-beta.1",
16
+ "@wizishop/ng-wizi-bulma": ">=19.0.0-beta.1",
17
17
  "@wizishop/ng-web-storages": "0.0.2",
18
- "bourbon": "^7.0.0",
19
18
  "bulma": "^0.9.4",
20
19
  "bulma-checkradio": "^2.1.3",
21
20
  "bulma-extensions": "^6.2.7",
22
- "bundle-scss": "^1.4.17",
23
21
  "include-media": "^1.4.10",
24
- "ngx-image-cropper": "^6.3.2",
25
- "ngx-scrollbar": "^10.0.0",
26
- "nodemon": "^2.0.20",
22
+ "ngx-image-cropper": ">=9.0.0",
23
+ "ngx-scrollbar": ">=18.0.0",
27
24
  "rxjs": "^7.8.0",
28
- "sass": "^1.57.1",
29
25
  "sass-flex-mixin": "^1.0.3",
30
- "zone.js": "^0.12.0"
26
+ "zone.js": "^0.15.0"
31
27
  },
32
- "module": "fesm2015/wizishop-img-manager-webelement.mjs",
33
- "es2020": "fesm2020/wizishop-img-manager-webelement.mjs",
34
- "esm2020": "esm2020/wizishop-img-manager-webelement.mjs",
35
- "fesm2020": "fesm2020/wizishop-img-manager-webelement.mjs",
36
- "fesm2015": "fesm2015/wizishop-img-manager-webelement.mjs",
28
+ "module": "fesm2022/wizishop-img-manager-webelement.mjs",
37
29
  "typings": "index.d.ts",
38
30
  "exports": {
39
31
  "./package.json": {
@@ -41,11 +33,7 @@
41
33
  },
42
34
  ".": {
43
35
  "types": "./index.d.ts",
44
- "esm2020": "./esm2020/wizishop-img-manager-webelement.mjs",
45
- "es2020": "./fesm2020/wizishop-img-manager-webelement.mjs",
46
- "es2015": "./fesm2015/wizishop-img-manager-webelement.mjs",
47
- "node": "./fesm2015/wizishop-img-manager-webelement.mjs",
48
- "default": "./fesm2020/wizishop-img-manager-webelement.mjs"
36
+ "default": "./fesm2022/wizishop-img-manager-webelement.mjs"
49
37
  }
50
38
  },
51
39
  "sideEffects": false,
@@ -1,110 +0,0 @@
1
- // Use locally for this project
2
- export const environmentWiziDevLocal = {
3
- isWizishopcom: false,
4
- production: false,
5
- wizi_admin_api: "https://admin.wizilocal.com/",
6
- wizi_api: "https://api.wizilocal.com/v3",
7
- CDN_URL: "http://debugshop.wizilocal.com/_i/",
8
- assets_route: "assets/img-manager/",
9
- translations_route: "./assets/img-manager/i18n/",
10
- wiziApiCredentialsKey: 'wizi_api_credentials_key',
11
- local: {
12
- shopId: 131,
13
- token: 'eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJ1c2VyX2lkIjo2LCJ1c2VyX2xvY2FsZSI6ImZyX0ZSIiwiaXNVc2VyQ29ubmVjdGVkRnJvbVZwbiI6ZmFsc2UsImV4cCI6MTY3NDM3NDkxMSwiaWF0IjoxNjcxNzgyOTExfQ.DbdBTaVLzLx5pE2FHTg8K0FcMsOY7yg7hAz7bjBQt4afke2ef_MfhXZx9ajtj6BciOsY5eYRgDp3r747iLc7CSThC6cNgPYZ9oMtN3MbFRYi5bktmPUVfbs2oxfWe9sNDwdpgMtw00d8YIO3ZTFZb3XzXW1hQIS2Ooy5x0GTGRgegIDAJYrVyVs8AC3TG8ZaC8g73iSMFnCrG85TAFbgjJb8ccU0HfB-h1I9LPE2LUzI5QE2vbsd6qo1XU59belW1SPv92Wgcd9IiHwuoeO3C2S2rQGUp-L8qprT6f5IeX-rp3XVmOVhTCNM4Dc0FdPdpL6p2jMVhhhu62fOZtNEXA'
14
- },
15
- product_sheet_endpoint: "/products/ajax",
16
- isPhotosTab: true,
17
- pexels_token: '563492ad6f91700001000001e39215727d8b42c1b08498a9ce1e6b94'
18
- };
19
- export const environmentWiziDev = {
20
- isWizishopcom: true,
21
- production: false,
22
- wizi_admin_api: "https://admin.wizilocal.com/",
23
- wizi_api: "https://api.wizilocal.com/v3",
24
- CDN_URL: "https://media.wizilocal.com/_i/",
25
- assets_route: "https://js.wizilocal.com/a/libs/img-manager-webelement/assets/img-manager/",
26
- translations_route: "https://js.wizilocal.com/a/libs/img-manager-webelement/assets/img-manager/i18n/",
27
- wiziApiCredentialsKey: 'wizi_api_credentials_key',
28
- local: {
29
- shopId: null,
30
- token: null
31
- },
32
- product_sheet_endpoint: "/products/ajax",
33
- pexels_token: '563492ad6f91700001000001e39215727d8b42c1b08498a9ce1e6b94'
34
- };
35
- export const environmentWizishopProd = {
36
- isWizishopcom: true,
37
- production: true,
38
- wizi_admin_api: "https://admin.wizishop.com/",
39
- wizi_api: "https://api.wizishop.com/v3",
40
- CDN_URL: "https://media.cdnws.com/_i/",
41
- assets_route: "https://js.wizishop.com/a/libs/img-manager-webelement/assets/img-manager/",
42
- translations_route: "https://js.wizishop.com/a/libs/img-manager-webelement/assets/img-manager/i18n/",
43
- wiziApiCredentialsKey: 'wizi_api_credentials_key',
44
- local: {
45
- shopId: null,
46
- token: null
47
- },
48
- product_sheet_endpoint: "/products/ajax",
49
- pexels_token: '563492ad6f91700001000001e39215727d8b42c1b08498a9ce1e6b94'
50
- };
51
- export const environmentEvolupProd = {
52
- ...environmentWizishopProd,
53
- pexels_token: 'Q3qRBpJpomRu9AOFc2bOzRPfhIUou2LxZkqYYyKCZm2kGY19DxYdTMpE'
54
- };
55
- export const environmentDropiziDev = {
56
- isWizishopcom: true,
57
- production: false,
58
- wizi_admin_api: "https://admin.dropilocal.com/",
59
- wizi_api: "https://api.dropilocal.com/v3",
60
- CDN_URL: "https://media.dropilocal.com/_i/",
61
- assets_route: "https://js.dropilocal.fr/a/libs/img-manager-webelement/assets/img-manager/",
62
- translations_route: "https://js.dropilocal.com/a/libs/img-manager-webelement/assets/img-manager/i18n/",
63
- wiziApiCredentialsKey: 'wizi_api_credentials_key',
64
- local: {
65
- shopId: null,
66
- token: null
67
- },
68
- product_sheet_endpoint: "/products/ajax",
69
- pexels_token: 'QWTAGfv4wb14tTP62xxBE2DDnzdGxsBaTr4NXh1te2qDZ9lVPLDSWx0U'
70
- };
71
- export const environmentDropiziProd = {
72
- isWizishopcom: true,
73
- production: true,
74
- wizi_admin_api: "https://admin.dropizi.fr/",
75
- wizi_api: "https://api.wizishop.com/v3",
76
- CDN_URL: "https://media.cdnws.com/_i/",
77
- assets_route: "https://js.dropizi.fr/a/libs/img-manager-webelement/assets/img-manager/",
78
- translations_route: "https://js.dropizi.fr/a/libs/img-manager-webelement/assets/img-manager/i18n/",
79
- wiziApiCredentialsKey: 'wizi_api_credentials_key',
80
- local: {
81
- shopId: null,
82
- token: null
83
- },
84
- product_sheet_endpoint: "/products/ajax",
85
- pexels_token: 'QWTAGfv4wb14tTP62xxBE2DDnzdGxsBaTr4NXh1te2qDZ9lVPLDSWx0U'
86
- };
87
- function getCurrentEnv() {
88
- const isDev = !!window.location.hostname.match(/local/);
89
- const isWizi = !!window.location.hostname.match(/wizi/);
90
- const isEvolup = !!window.location.hostname.match(/evolup/);
91
- const serverLocal = !!window.location.port;
92
- if (serverLocal) {
93
- return environmentWiziDevLocal;
94
- }
95
- if (isDev) {
96
- if (isWizi) {
97
- return environmentWiziDev;
98
- }
99
- return environmentDropiziDev;
100
- }
101
- if (isEvolup) {
102
- return environmentEvolupProd;
103
- }
104
- if (isWizi) {
105
- return environmentWizishopProd;
106
- }
107
- return environmentDropiziProd;
108
- }
109
- export const environment = Object.assign({}, getCurrentEnv());
110
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW52aXJvbm1lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9pbWctbWFuYWdlci13ZWJlbGVtZW50L3NyYy9saWIvZW52aXJvbm1lbnRzL2Vudmlyb25tZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQWVBLCtCQUErQjtBQUMvQixNQUFNLENBQUMsTUFBTSx1QkFBdUIsR0FBZ0I7SUFDbEQsYUFBYSxFQUFFLEtBQUs7SUFDcEIsVUFBVSxFQUFFLEtBQUs7SUFDakIsY0FBYyxFQUFFLDhCQUE4QjtJQUM5QyxRQUFRLEVBQUUsOEJBQThCO0lBQ3hDLE9BQU8sRUFBRSxvQ0FBb0M7SUFDN0MsWUFBWSxFQUFHLHFCQUFxQjtJQUNwQyxrQkFBa0IsRUFBRyw0QkFBNEI7SUFDakQscUJBQXFCLEVBQUUsMEJBQTBCO0lBQ2pELEtBQUssRUFBRTtRQUNMLE1BQU0sRUFBRSxHQUFHO1FBQ1gsS0FBSyxFQUFHLG9nQkFBb2dCO0tBQzdnQjtJQUNELHNCQUFzQixFQUFFLGdCQUFnQjtJQUN4QyxXQUFXLEVBQUUsSUFBSTtJQUNqQixZQUFZLEVBQUUsMERBQTBEO0NBQ3pFLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxrQkFBa0IsR0FBZ0I7SUFDN0MsYUFBYSxFQUFFLElBQUk7SUFDbkIsVUFBVSxFQUFFLEtBQUs7SUFDakIsY0FBYyxFQUFFLDhCQUE4QjtJQUM5QyxRQUFRLEVBQUUsOEJBQThCO0lBQ3hDLE9BQU8sRUFBRSxpQ0FBaUM7SUFDMUMsWUFBWSxFQUFHLDRFQUE0RTtJQUMzRixrQkFBa0IsRUFBRyxpRkFBaUY7SUFDdEcscUJBQXFCLEVBQUUsMEJBQTBCO0lBQ2pELEtBQUssRUFBRTtRQUNMLE1BQU0sRUFBRSxJQUFJO1FBQ1osS0FBSyxFQUFHLElBQUk7S0FDYjtJQUNELHNCQUFzQixFQUFFLGdCQUFnQjtJQUN4QyxZQUFZLEVBQUUsMERBQTBEO0NBQ3pFLENBQUM7QUFFRixNQUFNLENB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ZXJmYWNlIEVudmlyb25tZW50IHtcclxuICBpc1dpemlzaG9wY29tOiBib29sZWFuO1xyXG4gIHByb2R1Y3Rpb246IGJvb2xlYW47XHJcbiAgd2l6aV9hZG1pbl9hcGk6IHN0cmluZztcclxuICB3aXppX2FwaTogc3RyaW5nO1xyXG4gIENETl9VUkw6IHN0cmluZztcclxuICBhc3NldHNfcm91dGU6IHN0cmluZztcclxuICB0cmFuc2xhdGlvbnNfcm91dGU6IHN0cmluZztcclxuICB3aXppQXBpQ3JlZGVudGlhbHNLZXk6IHN0cmluZztcclxuICBsb2NhbDogYW55O1xyXG4gIHByb2R1Y3Rfc2hlZXRfZW5kcG9pbnQ6IHN0cmluZztcclxuICBpc1Bob3Rvc1RhYj86IGJvb2xlYW47XHJcbiAgcGV4ZWxzX3Rva2VuOiBzdHJpbmc7XHJcbn1cclxuXHJcbi8vIFVzZSBsb2NhbGx5IGZvciB0aGlzIHByb2plY3RcclxuZXhwb3J0IGNvbnN0IGVudmlyb25tZW50V2l6aURldkxvY2FsOiBFbnZpcm9ubWVudCA9IHtcclxuICBpc1dpemlzaG9wY29tOiBmYWxzZSxcclxuICBwcm9kdWN0aW9uOiBmYWxzZSxcclxuICB3aXppX2FkbWluX2FwaTogXCJodHRwczovL2FkbWluLndpemlsb2NhbC5jb20vXCIsXHJcbiAgd2l6aV9hcGk6IFwiaHR0cHM6Ly9hcGkud2l6aWxvY2FsLmNvbS92M1wiLFxyXG4gIENETl9VUkw6IFwiaHR0cDovL2RlYnVnc2hvcC53aXppbG9jYWwuY29tL19pL1wiLFxyXG4gIGFzc2V0c19yb3V0ZSA6IFwiYXNzZXRzL2ltZy1tYW5hZ2VyL1wiLFxyXG4gIHRyYW5zbGF0aW9uc19yb3V0ZSA6IFwiLi9hc3NldHMvaW1nLW1hbmFnZXIvaTE4bi9cIixcclxuICB3aXppQXBpQ3JlZGVudGlhbHNLZXk6ICd3aXppX2FwaV9jcmVkZW50aWFsc19rZXknLFxyXG4gIGxvY2FsOiB7XHJcbiAgICBzaG9wSWQ6IDEzMSxcclxuICAgIHRva2VuIDogJ2V5SjBlWEFpT2lKS1YxUWlMQ0poYkdjaU9pSlNVekkxTmlKOS5leUoxYzJWeVgybGtJam8yTENKMWMyVnlYMnh2WTJGc1pTSTZJbVp5WDBaU0lpd2lhWE5WYzJWeVEyOXVibVZqZEdWa1JuSnZiVlp3YmlJNlptRnNjMlVzSW1WNGNDSTZNVFkzTkRNM05Ea3hNU3dpYVdGMElqb3hOamN4TnpneU9URXhmUS5EYmRCVGFWTHpMeDVwRTJGSFRnOEswRmNNc09ZN3lnN2hBejdiakJRdDRhZmtlMmVmX01maFhaeDlhanRqNkJjaU9zWTVlWVJnRHAzcjc0N2lMYzdDU1RoQzZjTmdQWVo5b010TjNNYkZSWWk1Ymt0bVBVVmZiczJveGZXZTlzTkR3ZHBnTXR3MDBkOFlJTzNaVEZaYjNYelhXMWhRSVMyT295NXgwR1RHUmdlZ0lEQUpZclZ5VnM4QUMzVEc4WmFDOGc3M2lTTUZuQ3JHODVUQUZiZ2pKYjhjY1UwSGZCLWgxSTlMUEUyTFV6STVRRTJ2YnNkNnFvMVhVNTliZWxXMVNQdjkyV2djZDlJaUh3dW9lTzNDMlMyclFHVXAtTDhxcHJUNmY1SWVYLXJwM1hWbU9WaFRDTk00RGMwRmRQZHBMNnAyak1WaGhodTYyZk9adE5FWEEnXHJcbiAgfSxcclxuICBwcm9kdWN0X3NoZWV0X2VuZHBvaW50OiBcIi9wcm9kdWN0cy9hamF4XCIsXHJcbiAgaXNQaG90b3NUYWI6IHRydWUsXHJcbiAgcGV4ZWxzX3Rva2VuOiAnNTYzNDkyYWQ2ZjkxNzAwMDAxMDAwMDAxZTM5MjE1NzI3ZDhiNDJjMWIwODQ5OGE5Y2UxZTZiOTQnXHJcbn07XHJcblxyXG5leHBvcnQgY29uc3QgZW52aXJvbm1lbnRXaXppRGV2OiBFbnZpcm9ubWVudCA9IHtcclxuICBpc1dpemlzaG9wY29tOiB0cnVlLFxyXG4gIHByb2R1Y3Rpb246IGZhbHNlLFxyXG4gIHdpemlfYWRtaW5fYXBpOiBcImh0dHBzOi8vYWRtaW4ud2l6aWxvY2FsLmNvbS9cIixcclxuICB3aXppX2FwaTogXCJodHRwczovL2FwaS53aXppbG9jYWwuY29tL3YzXCIsXHJcbiAgQ0ROX1VSTDogXCJodHRwczovL21lZGlhLndpemlsb2NhbC5jb20vX2kvXCIsXHJcbiAgYXNzZXRzX3JvdXRlIDogXCJodHRwczovL2pzLndpemlsb2NhbC5jb20vYS9saWJzL2ltZy1tYW5hZ2VyLXdlYmVsZW1lbnQvYXNzZXRzL2ltZy1tYW5hZ2VyL1wiLFxyXG4gIHRyYW5zbGF0aW9uc19yb3V0ZSA6IFwiaHR0cHM6Ly9qcy53aXppbG9jYWwuY29tL2EvbGlicy9pbWctbWFuYWdlci13ZWJlbGVtZW50L2Fzc2V0cy9pbWctbWFuYWdlci9pMThuL1wiLFxyXG4gIHdpemlBcGlDcmVkZW50aWFsc0tleTogJ3dpemlfYXBpX2NyZWRlbnRpYWxzX2tleScsXHJcbiAgbG9jYWw6IHtcclxuICAgIHNob3BJZDogbnVsbCxcclxuICAgIHRva2VuIDogbnVsbFxyXG4gIH0sXHJcbiAgcHJvZHVjdF9zaGVldF9lbmRwb2ludDogXCIvcHJvZHVjdHMvYWpheFwiLFxyXG4gIHBleGVsc190b2tlbjogJzU2MzQ5MmFkNmY5MTcwMDAwMTAwMDAwMWUzOTIxNTcyN2Q4YjQyYzFiMDg0OThhOWNlMWU2Yjk0J1xyXG59O1xyXG5cclxuZXhwb3J0IGNvbnN0IGVudmlyb25tZW50V2l6aXNob3BQcm9kOiBFbnZpcm9ubWVudCA9IHtcclxuICBpc1dpemlzaG9wY29tOiB0cnVlLFxyXG4gIHByb2R1Y3Rpb246IHRydWUsXHJcbiAgd2l6aV9hZG1pbl9hcGk6IFwiaHR0cHM6Ly9hZG1pbi53aXppc2hvcC5jb20vXCIsXHJcbiAgd2l6aV9hcGk6IFwiaHR0cHM6Ly9hcGkud2l6aXNob3AuY29tL3YzXCIsXHJcbiAgQ0ROX1VSTDogXCJodHRwczovL21lZGlhLmNkbndzLmNvbS9faS9cIixcclxuICBhc3NldHNfcm91dGUgOiBcImh0dHBzOi8vanMud2l6aXNob3AuY29tL2EvbGlicy9pbWctbWFuYWdlci13ZWJlbGVtZW50L2Fzc2V0cy9pbWctbWFuYWdlci9cIixcclxuICB0cmFuc2xhdGlvbnNfcm91dGUgOiBcImh0dHBzOi8vanMud2l6aXNob3AuY29tL2EvbGlicy9pbWctbWFuYWdlci13ZWJlbGVtZW50L2Fzc2V0cy9pbWctbWFuYWdlci9pMThuL1wiLFxyXG4gIHdpemlBcGlDcmVkZW50aWFsc0tleTogJ3dpemlfYXBpX2NyZWRlbnRpYWxzX2tleScsXHJcbiAgbG9jYWw6IHtcclxuICAgIHNob3BJZDogbnVsbCxcclxuICAgIHRva2VuIDogbnVsbFxyXG4gIH0sXHJcbiAgcHJvZHVjdF9zaGVldF9lbmRwb2ludDogXCIvcHJvZHVjdHMvYWpheFwiLFxyXG4gIHBleGVsc190b2tlbjogJzU2MzQ5MmFkNmY5MTcwMDAwMTAwMDAwMWUzOTIxNTcyN2Q4YjQyYzFiMDg0OThhOWNlMWU2Yjk0J1xyXG59O1xyXG5cclxuZXhwb3J0IGNvbnN0IGVudmlyb25tZW50RXZvbHVwUHJvZDogRW52aXJvbm1lbnQgPSB7XHJcbiAuLi5lbnZpcm9ubWVudFdpemlzaG9wUHJvZCxcclxuICBwZXhlbHNfdG9rZW46ICdRM3FSQnBKcG9tUnU5QU9GYzJiT3pSUGZoSVVvdTJMeFprcVlZeUtDWm0ya0dZMTlEeFlkVE1wRSdcclxufTtcclxuXHJcbmV4cG9ydCBjb25zdCBlbnZpcm9ubWVudERyb3BpemlEZXY6IEVudmlyb25tZW50ID0ge1xyXG4gIGlzV2l6aXNob3Bjb206IHRydWUsXHJcbiAgcHJvZHVjdGlvbjogZmFsc2UsXHJcbiAgd2l6aV9hZG1pbl9hcGk6IFwiaHR0cHM6Ly9hZG1pbi5kcm9waWxvY2FsLmNvbS9cIixcclxuICB3aXppX2FwaTogXCJodHRwczovL2FwaS5kcm9waWxvY2FsLmNvbS92M1wiLFxyXG4gIENETl9VUkw6IFwiaHR0cHM6Ly9tZWRpYS5kcm9waWxvY2FsLmNvbS9faS9cIixcclxuICBhc3NldHNfcm91dGUgOiBcImh0dHBzOi8vanMuZHJvcGlsb2NhbC5mci9hL2xpYnMvaW1nLW1hbmFnZXItd2ViZWxlbWVudC9hc3NldHMvaW1nLW1hbmFnZXIvXCIsXHJcbiAgdHJhbnNsYXRpb25zX3JvdXRlIDogXCJodHRwczovL2pzLmRyb3BpbG9jYWwuY29tL2EvbGlicy9pbWctbWFuYWdlci13ZWJlbGVtZW50L2Fzc2V0cy9pbWctbWFuYWdlci9pMThuL1wiLFxyXG4gIHdpemlBcGlDcmVkZW50aWFsc0tleTogJ3dpemlfYXBpX2NyZWRlbnRpYWxzX2tleScsXHJcbiAgbG9jYWw6IHtcclxuICAgIHNob3BJZDogbnVsbCxcclxuICAgIHRva2VuIDogbnVsbFxyXG4gIH0sXHJcbiAgcHJvZHVjdF9zaGVldF9lbmRwb2ludDogXCIvcHJvZHVjdHMvYWpheFwiLFxyXG4gIHBleGVsc190b2tlbjogJ1FXVEFHZnY0d2IxNHRUUDYyeHhCRTJERG56ZEd4c0JhVHI0TlhoMXRlMnFEWjlsVlBMRFNXeDBVJ1xyXG59O1xyXG5cclxuZXhwb3J0IGNvbnN0IGVudmlyb25tZW50RHJvcGl6aVByb2Q6IEVudmlyb25tZW50ID0ge1xyXG4gIGlzV2l6aXNob3Bjb206IHRydWUsXHJcbiAgcHJvZHVjdGlvbjogdHJ1ZSxcclxuICB3aXppX2FkbWluX2FwaTogXCJodHRwczovL2FkbWluLmRyb3BpemkuZnIvXCIsXHJcbiAgd2l6aV9hcGk6IFwiaHR0cHM6Ly9hcGkud2l6aXNob3AuY29tL3YzXCIsXHJcbiAgQ0ROX1VSTDogXCJodHRwczovL21lZGlhLmNkbndzLmNvbS9faS9cIixcclxuICBhc3NldHNfcm91dGUgOiBcImh0dHBzOi8vanMuZHJvcGl6aS5mci9hL2xpYnMvaW1nLW1hbmFnZXItd2ViZWxlbWVudC9hc3NldHMvaW1nLW1hbmFnZXIvXCIsXHJcbiAgdHJhbnNsYXRpb25zX3JvdXRlIDogXCJodHRwczovL2pzLmRyb3BpemkuZnIvYS9saWJzL2ltZy1tYW5hZ2VyLXdlYmVsZW1lbnQvYXNzZXRzL2ltZy1tYW5hZ2VyL2kxOG4vXCIsXHJcbiAgd2l6aUFwaUNyZWRlbnRpYWxzS2V5OiAnd2l6aV9hcGlfY3JlZGVudGlhbHNfa2V5JyxcclxuICBsb2NhbDoge1xyXG4gICAgc2hvcElkOiBudWxsLFxyXG4gICAgdG9rZW4gOiBudWxsXHJcbiAgfSxcclxuICBwcm9kdWN0X3NoZWV0X2VuZHBvaW50OiBcIi9wcm9kdWN0cy9hamF4XCIsXHJcbiAgcGV4ZWxzX3Rva2VuOiAnUVdUQUdmdjR3YjE0dFRQNjJ4eEJFMkREbnpkR3hzQmFUcjROWGgxdGUycURaOWxWUExEU1d4MFUnXHJcbn07XHJcblxyXG5mdW5jdGlvbiBnZXRDdXJyZW50RW52KCkge1xyXG4gIGNvbnN0IGlzRGV2ID0gISF3aW5kb3cubG9jYXRpb24uaG9zdG5hbWUubWF0Y2goL2xvY2FsLyk7XHJcbiAgY29uc3QgaXNXaXppID0gISF3aW5kb3cubG9jYXRpb24uaG9zdG5hbWUubWF0Y2goL3dpemkvKTtcclxuICBjb25zdCBpc0V2b2x1cCA9ICEhd2luZG93LmxvY2F0aW9uLmhvc3RuYW1lLm1hdGNoKC9ldm9sdXAvKTtcclxuICBjb25zdCBzZXJ2ZXJMb2NhbCA9ICEhd2luZG93LmxvY2F0aW9uLnBvcnQ7XHJcblxyXG4gIGlmIChzZXJ2ZXJMb2NhbCkge1xyXG4gICAgcmV0dXJuIGVudmlyb25tZW50V2l6aURldkxvY2FsO1xyXG4gIH1cclxuICBpZiAoaXNEZXYpIHtcclxuICAgIGlmIChpc1dpemkpIHtcclxuICAgICAgcmV0dXJuIGVudmlyb25tZW50V2l6aURldjtcclxuICAgIH1cclxuICAgIHJldHVybiBlbnZpcm9ubWVudERyb3BpemlEZXY7XHJcbiAgfVxyXG5cclxuICBpZiAoaXNFdm9sdXApIHtcclxuICAgIHJldHVybiBlbnZpcm9ubWVudEV2b2x1cFByb2Q7XHJcbiAgfVxyXG5cclxuICBpZiAoaXNXaXppKSB7XHJcbiAgICByZXR1cm4gZW52aXJvbm1lbnRXaXppc2hvcFByb2Q7XHJcbiAgfVxyXG5cclxuICByZXR1cm4gZW52aXJvbm1lbnREcm9waXppUHJvZDtcclxufVxyXG5cclxuZXhwb3J0IGNvbnN0IGVudmlyb25tZW50OiBFbnZpcm9ubWVudCA9IE9iamVjdC5hc3NpZ24oe30sIGdldEN1cnJlbnRFbnYoKSk7Il19