@wizishop/img-manager-webelement 1.0.3 → 14.0.5

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 (40) hide show
  1. package/README.md +13 -113
  2. package/esm2020/lib/environments/environment.mjs +99 -0
  3. package/esm2020/lib/img-manager-web-element.component.mjs +177 -0
  4. package/esm2020/lib/img-manager-web-element.module.mjs +47 -0
  5. package/esm2020/lib/services/auth-credentials.service.mjs +43 -0
  6. package/esm2020/lib/services/event.service.mjs +37 -0
  7. package/esm2020/lib/services/fiche_products.service.mjs +237 -0
  8. package/esm2020/lib/services/storage.service.mjs +53 -0
  9. package/esm2020/public-api.mjs +6 -0
  10. package/esm2020/wizishop-img-manager-webelement.mjs +5 -0
  11. package/fesm2015/wizishop-img-manager-webelement.mjs +671 -0
  12. package/fesm2015/wizishop-img-manager-webelement.mjs.map +1 -0
  13. package/fesm2020/wizishop-img-manager-webelement.mjs +673 -0
  14. package/fesm2020/wizishop-img-manager-webelement.mjs.map +1 -0
  15. package/index.d.ts +5 -0
  16. package/lib/environments/environment.d.ts +19 -0
  17. package/lib/img-manager-web-element.component.d.ts +50 -0
  18. package/lib/img-manager-web-element.module.d.ts +11 -0
  19. package/lib/services/auth-credentials.service.d.ts +19 -0
  20. package/lib/services/event.service.d.ts +11 -0
  21. package/lib/services/fiche_products.service.d.ts +51 -0
  22. package/lib/services/storage.service.d.ts +14 -0
  23. package/package.json +25 -10
  24. package/public-api.d.ts +2 -0
  25. package/3rdpartylicenses.txt +0 -665
  26. package/4.js +0 -1
  27. package/assets/img-manager/canva/icon_canva.svg +0 -4
  28. package/assets/img-manager/i18n/en.json +0 -1
  29. package/assets/img-manager/i18n/es.json +0 -1
  30. package/assets/img-manager/i18n/fr.json +0 -1
  31. package/assets/img-manager/i18n/it.json +0 -1
  32. package/assets/img-manager/img/fake.png +0 -0
  33. package/assets/img-manager/img/icon_picture.svg +0 -11
  34. package/favicon.ico +0 -0
  35. package/img-manager-webelement.1.0.3.js +0 -1
  36. package/index.html +0 -25
  37. package/main.js +0 -1
  38. package/polyfills.js +0 -1
  39. package/runtime.js +0 -1
  40. package/styles.1.0.3.css +0 -1
package/README.md CHANGED
@@ -1,124 +1,24 @@
1
- # Image Manager WebElement for Wizishop-com
1
+ # ImgManagerWebElement
2
2
 
3
- [![npm](https://img.shields.io/npm/v/@wizishop/img-manager-webelement.svg)](https://www.npmjs.com/package/@wizishop/img-manager-webelement)
4
- [![npm](https://img.shields.io/npm/dm/@wizishop/img-manager-webelement.svg)](https://www.npmjs.com/package/@wizishop/img-manager-webelement)
3
+ This library was generated with [Angular CLI](https://github.com/angular/angular-cli) version 9.0.7.
5
4
 
6
- ## Install
5
+ ## Code scaffolding
7
6
 
8
- On the root of the wizishop-com package run :
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
9
 
10
- ```
11
- npm i @wizishop/img-manager-webelement
12
- ```
10
+ ## Build
13
11
 
14
- (A postinstall script will copy and paste the project files in the appropriate directorie : `_/js/a/libs/img-manager-webelement`)
12
+ Run `ng build ImgManagerWebElement` to build the project. The build artifacts will be stored in the `dist/` directory.
15
13
 
16
- ### Update the shop token for local dev
17
- In the following file : `src/environments/environment.ts`, update the shop token for 131.
14
+ ## Publishing
18
15
 
19
- ## Update the project
16
+ After building your library with `ng build ImgManagerWebElement`, go to the dist folder `cd dist/img-manager-web-element` and run `npm publish`.
20
17
 
21
- Retrieve the last version of the wii-img-manager project.
22
- Run the following commande from package.json :
23
- ```
24
- npm run update:img-manager
25
- ```
26
- Or install the lastest version :
27
- ```
28
- npm i @wizishop/img-manager-webelement@latest
29
- ```
18
+ ## Running unit tests
30
19
 
31
- ## Upload a new version
32
- Increment the package version number, then run the publish command:
20
+ Run `ng test ImgManagerWebElement` to execute the unit tests via [Karma](https://karma-runner.github.io).
33
21
 
34
- ```
35
- npm run publish
36
- ```
22
+ ## Further help
37
23
 
38
- ## Integration
39
- In order to retrieve the template data call the query : `ImageManagerTemplateQuery->getData()`.
40
- Then display the data in the template.
41
-
42
- Exemples :
43
-
44
- In twig Controller :
45
- ```
46
- return new Response(
47
- TwigTool::render(
48
- '...',
49
- [
50
- ...
51
- 'imgManagerWebelement' => $this->imageManagerTemplateQuery->getData()
52
-
53
- ],
54
- '...'
55
- )
56
- );
57
- ```
58
-
59
- In twig Template :
60
- ```
61
- {# Img manager webelement #}
62
- {{ imgManagerWebelement |raw }}
63
- ```
64
-
65
- In old php files :
66
- ```
67
- <?= \_c\ContainerService\ContainerService::getImageManagerTemplateQuery()->getData()?>
68
- ```
69
-
70
- ## Open and retrieve img
71
- This project works with events.
72
-
73
- ### Open the img manager module
74
- Dispatch the `openImgManager` event
75
- ```
76
- var value = {
77
- detail: {
78
- "fileId": fileId, // Optional : Not used yet
79
- "from": "persoCss" // Optional : Use when the img manager is called from different place
80
- }
81
- };
82
- var event = new CustomEvent('openImgManager', value);
83
- var imgManagerModule= document.getElementById('imgManagerModule');
84
- imgManagerModule.dispatchEvent(event);
85
- ```
86
-
87
- ### Retrieve Img selected
88
- Listen to the event `imgSelected` from the element `imgManagerModule`.
89
- ```
90
- // Listen event imgSelected from the img manager, and display the img selected
91
- const imgManagerModule= document.getElementById('imgManagerModule');
92
- imgManagerModule.addEventListener("imgSelected", (e) => {
93
- // Optional : Add a check on from property to know which place expected an img : "e.detail.from === 'persoCss'"
94
- if (e && e.detail && e.detail.file && e.detail.file.id_file) {
95
- var fileId = e.detail.file.id_file;
96
- // Display the img
97
- }
98
- } );
99
- ```
100
-
101
- File object retrieved properties :
102
- ```
103
- export interface ImgPictureDTO {
104
- big_miniature: string;
105
- category: string;
106
- cropped: string;
107
- date: string;
108
- display_name: string;
109
- file_name: string;
110
- g_id: string;
111
- id_file: string;
112
- id_shop: string;
113
- nb_used: string;
114
- old_file_name: string;
115
- raw_height: string;
116
- raw_width: string;
117
- size: string;
118
- checked?: boolean;
119
- selected?: boolean;
120
- delSelected?: boolean;
121
- deleted?: boolean;
122
- imgNotLoaded?: boolean;
123
- }
124
- ```
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).
@@ -0,0 +1,99 @@
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.eyJ1c2VyX2lkIjo2LCJ1c2VyX2xvY2FsZSI6ImZyX0ZSIiwiaXNVc2VyQ29ubmVjdGVkRnJvbVZwbiI6dHJ1ZSwiZXhwIjoxNjY3NTY3NDYwLCJpYXQiOjE2NjQ5NzU0NjB9.lapOlCngJBPszMTtwgjhYHu9et-Tcg-xCUBcu_h_lNfaAzYrG2EdSGAwJiF7_jJSuueO0pXpfBdNGVopVlEb9aR9gXai3IlKeM4h3VdhZIunNJ3niuZjXcMlQgeTkreYYBrulbSQZSToz2cDeGbCZpN_HVP4E2kLpDabtmcfrGE380zjF6wLRIAbWvj2z7UP509AW1A_JM-CrM99CVuZB0EoowPRk5nCKZoY9x4MYMGdW1rSgRvwuWjBn-y8J7wJfRHezx-7FkVIpulq4mmxOi6KAgLZTOFFKAxMCnTEeyW7kJOEmu5Lm3R9bKmjzQra1ikIYLT2-WCSFPbiEmaIzQ'
14
+ },
15
+ product_sheet_endpoint: "/products/ajax",
16
+ isPhotosTab: true
17
+ };
18
+ export const environmentWiziDev = {
19
+ isWizishopcom: true,
20
+ production: false,
21
+ wizi_admin_api: "https://admin.wizilocal.com/",
22
+ wizi_api: "https://api.wizilocal.com/v3",
23
+ CDN_URL: "https://media.wizilocal.com/_i/",
24
+ assets_route: "https://js.wizilocal.com/a/libs/img-manager-webelement/assets/img-manager/",
25
+ translations_route: "https://js.wizilocal.com/a/libs/img-manager-webelement/assets/img-manager/i18n/",
26
+ wiziApiCredentialsKey: 'wizi_api_credentials_key',
27
+ local: {
28
+ shopId: null,
29
+ token: null
30
+ },
31
+ product_sheet_endpoint: "/products/ajax"
32
+ };
33
+ export const environmentProd = {
34
+ isWizishopcom: true,
35
+ production: true,
36
+ wizi_admin_api: "https://admin.wizishop.com/",
37
+ wizi_api: "https://api.wizishop.com/v3",
38
+ CDN_URL: "https://media.cdnws.com/_i/",
39
+ assets_route: "https://js.wizishop.com/a/libs/img-manager-webelement/assets/img-manager/",
40
+ translations_route: "https://js.wizishop.com/a/libs/img-manager-webelement/assets/img-manager/i18n/",
41
+ wiziApiCredentialsKey: 'wizi_api_credentials_key',
42
+ local: {
43
+ shopId: null,
44
+ token: null
45
+ },
46
+ product_sheet_endpoint: "/products/ajax"
47
+ };
48
+ export const environmentDropiziDev = {
49
+ isWizishopcom: true,
50
+ production: false,
51
+ wizi_admin_api: "https://admin.dropilocal.com/",
52
+ wizi_api: "https://api.dropilocal.com/v3",
53
+ CDN_URL: "https://media.dropilocal.com/_i/",
54
+ assets_route: "https://js.dropilocal.fr/a/libs/img-manager-webelement/assets/img-manager/",
55
+ translations_route: "https://js.dropilocal.com/a/libs/img-manager-webelement/assets/img-manager/i18n/",
56
+ wiziApiCredentialsKey: 'wizi_api_credentials_key',
57
+ local: {
58
+ shopId: null,
59
+ token: null
60
+ },
61
+ product_sheet_endpoint: "/products/ajax"
62
+ };
63
+ export const environmentDropiziProd = {
64
+ isWizishopcom: true,
65
+ production: true,
66
+ wizi_admin_api: "https://admin.dropizi.fr/",
67
+ wizi_api: "https://api.wizishop.com/v3",
68
+ CDN_URL: "https://media.cdnws.com/_i/",
69
+ assets_route: "https://js.dropizi.fr/a/libs/img-manager-webelement/assets/img-manager/",
70
+ translations_route: "https://js.dropizi.fr/a/libs/img-manager-webelement/assets/img-manager/i18n/",
71
+ wiziApiCredentialsKey: 'wizi_api_credentials_key',
72
+ local: {
73
+ shopId: null,
74
+ token: null
75
+ },
76
+ product_sheet_endpoint: "/products/ajax"
77
+ };
78
+ function getCurrentEnv() {
79
+ const isDev = !!window.location.hostname.match(/local/);
80
+ const isWizi = !!window.location.hostname.match(/wizi/);
81
+ const serverLocal = !!window.location.port;
82
+ if (serverLocal) {
83
+ return environmentWiziDevLocal;
84
+ }
85
+ if (isDev) {
86
+ if (isWizi) {
87
+ return environmentWiziDev;
88
+ }
89
+ return environmentDropiziDev;
90
+ }
91
+ else {
92
+ if (isWizi) {
93
+ return environmentProd;
94
+ }
95
+ return environmentDropiziProd;
96
+ }
97
+ }
98
+ export const environment = Object.assign({}, getCurrentEnv());
99
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW52aXJvbm1lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9pbWctbWFuYWdlci13ZWItZWxlbWVudC9zcmMvbGliL2Vudmlyb25tZW50cy9lbnZpcm9ubWVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFjQSwrQkFBK0I7QUFDL0IsTUFBTSxDQUFDLE1BQU0sdUJBQXVCLEdBQWdCO0lBQ2xELGFBQWEsRUFBRSxLQUFLO0lBQ3BCLFVBQVUsRUFBRSxLQUFLO0lBQ2pCLGNBQWMsRUFBRSw4QkFBOEI7SUFDOUMsUUFBUSxFQUFFLDhCQUE4QjtJQUN4QyxPQUFPLEVBQUUsb0NBQW9DO0lBQzdDLFlBQVksRUFBRyxxQkFBcUI7SUFDcEMsa0JBQWtCLEVBQUcsNEJBQTRCO0lBQ2pELHFCQUFxQixFQUFFLDBCQUEwQjtJQUNqRCxLQUFLLEVBQUU7UUFDTCxNQUFNLEVBQUUsR0FBRztRQUNYLEtBQUssRUFBRyxrZ0JBQWtnQjtLQUMzZ0I7SUFDRCxzQkFBc0IsRUFBRSxnQkFBZ0I7SUFDeEMsV0FBVyxFQUFFLElBQUk7Q0FDbEIsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLGtCQUFrQixHQUFnQjtJQUM3QyxhQUFhLEVBQUUsSUFBSTtJQUNuQixVQUFVLEVBQUUsS0FBSztJQUNqQixjQUFjLEVBQUUsOEJBQThCO0lBQzlDLFFBQVEsRUFBRSw4QkFBOEI7SUFDeEMsT0FBTyxFQUFFLGlDQUFpQztJQUMxQyxZQUFZLEVBQUcsNEVBQTRFO0lBQzNGLGtCQUFrQixFQUFHLGlGQUFpRjtJQUN0RyxxQkFBcUIsRUFBRSwwQkFBMEI7SUFDakQsS0FBSyxFQUFFO1FBQ0wsTUFBTSxFQUFFLElBQUk7UUFDWixLQUFLLEVBQUcsSUFBSTtLQUNiO0lBQ0Qsc0JBQXNCLEVBQUUsZ0JBQWdCO0NBQ3pDLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxlQUFlLEdBQWdCO0lBQzFDLGFBQWEsRUFBRSxJQUFJO0lBQ25CLFVBQVUsRUFBRSxJQUFJO0lBQ2hCLGNBQWMsRUFBRSw2QkFBNkI7SUFDN0MsUUFBUSxFQUFFLDZCQUE2QjtJQUN2QyxPQUFPLEVBQUUsNkJBQTZCO0lBQ3RDLFlBQVksRUFBRywyRUFBMkU7SUFDMUYsa0JBQWtCLEVBQUcsZ0ZBQWdGO0lBQ3JHLHFCQUFxQixFQUFFLDBCQUEwQjtJQUNqRCxLQUFLLEVBQUU7UUFDTCxNQUFNLEVBQUUsSUFBSTtRQUNaLEtBQUssRUFBRyxJQUFJO0tBQ2I7SUFDRCxzQkFBc0IsRUFBRSxnQkFBZ0I7Q0FDekMsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLHFCQUFxQixHQUFnQjtJQUNoRCxhQUFhLEVBQUUsSUFBSTtJQUNuQixVQUFVLEVBQUUsS0FBSztJQUNqQixjQUFjLEVBQUUsK0JBQStCO0lBQy9DLFFBQVEsRUFBRSwrQkFBK0I7SUFDekMsT0FBTyxFQUFFLGtDQUFrQztJQUMzQyxZQUFZLEVBQUcsNEVBQTRFO0lBQzNGLGtCQUFrQixFQUFHLGtGQUFrRjtJQUN2RyxxQkFBcUIsRUFBRSwwQkFBMEI7SUFDakQsS0FBSyxFQUFFO1FBQ0wsTUFBTSxFQUFFLElBQUk7UUFDWixLQUFLLEVBQUcsSUFBSTtLQUNiO0lBQ0Qsc0JBQXNCLEVBQUUsZ0JBQWdCO0NBQ3pDLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxzQkFBc0IsR0FBZ0I7SUFDakQsYUFBYSxFQUFFLElBQUk7SUFDbkIsVUFBVSxFQUFFLElBQUk7SUFDaEIsY0FBYyxFQUFFLDJCQUEyQjtJQUMzQyxRQUFRLEVBQUUsNkJBQTZCO0lBQ3ZDLE9BQU8sRUFBRSw2QkFBNkI7SUFDdEMsWUFBWSxFQUFHLHlFQUF5RTtJQUN4RixrQkFBa0IsRUFBRyw4RUFBOEU7SUFDbkcscUJBQXFCLEVBQUUsMEJBQTBCO0lBQ2pELEtBQUssRUFBRTtRQUNMLE1BQU0sRUFBRSxJQUFJO1FBQ1osS0FBSyxFQUFHLElBQUk7S0FDYjtJQUNELHNCQUFzQixFQUFFLGdCQUFnQjtDQUN6QyxDQUFDO0FBRUYsU0FBUyxhQUFhO0lBQ3BCLE1BQU0sS0FBSyxHQUFHLENBQUMsQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDeEQsTUFBTSxNQUFNLEdBQUcsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUN4RCxNQUFNLFdBQVcsR0FBRyxDQUFDLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUM7SUFFM0MsSUFBSSxXQUFXLEVBQUU7UUFDZixPQUFPLHVCQUF1QixDQUFDO0tBQ2hDO0lBQ0QsSUFBSSxLQUFLLEVBQUU7UUFDVCxJQUFJLE1BQU0sRUFBRTtZQUNWLE9BQU8sa0JBQWtCLENBQUM7U0FDM0I7UUFDRCxPQUFPLHFCQUFxQixDQUFDO0tBQzlCO1NBQU07UUFDTCxJQUFJLE1BQU0sRUFBRTtZQUNWLE9BQU8sZUFBZSxDQUFDO1NBQ3hCO1FBQ0QsT0FBTyxzQkFBc0IsQ0FBQztLQUMvQjtBQUNILENBQUM7QUFFRCxNQUFNLENBQUMsTUFBTSxXQUFXLEdBQWdCLE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxFQUFFLGFBQWEsRUFBRSxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgaW50ZXJmYWNlIEVudmlyb25tZW50IHtcbiAgaXNXaXppc2hvcGNvbTogYm9vbGVhbjtcbiAgcHJvZHVjdGlvbjogYm9vbGVhbjtcbiAgd2l6aV9hZG1pbl9hcGk6IHN0cmluZztcbiAgd2l6aV9hcGk6IHN0cmluZztcbiAgQ0ROX1VSTDogc3RyaW5nO1xuICBhc3NldHNfcm91dGU6IHN0cmluZztcbiAgdHJhbnNsYXRpb25zX3JvdXRlOiBzdHJpbmc7XG4gIHdpemlBcGlDcmVkZW50aWFsc0tleTogc3RyaW5nO1xuICBsb2NhbDogYW55O1xuICBwcm9kdWN0X3NoZWV0X2VuZHBvaW50OiBzdHJpbmc7XG4gIGlzUGhvdG9zVGFiPzogYm9vbGVhbjtcbn1cblxuLy8gVXNlIGxvY2FsbHkgZm9yIHRoaXMgcHJvamVjdFxuZXhwb3J0IGNvbnN0IGVudmlyb25tZW50V2l6aURldkxvY2FsOiBFbnZpcm9ubWVudCA9IHtcbiAgaXNXaXppc2hvcGNvbTogZmFsc2UsXG4gIHByb2R1Y3Rpb246IGZhbHNlLFxuICB3aXppX2FkbWluX2FwaTogXCJodHRwczovL2FkbWluLndpemlsb2NhbC5jb20vXCIsXG4gIHdpemlfYXBpOiBcImh0dHBzOi8vYXBpLndpemlsb2NhbC5jb20vdjNcIixcbiAgQ0ROX1VSTDogXCJodHRwOi8vZGVidWdzaG9wLndpemlsb2NhbC5jb20vX2kvXCIsXG4gIGFzc2V0c19yb3V0ZSA6IFwiYXNzZXRzL2ltZy1tYW5hZ2VyL1wiLFxuICB0cmFuc2xhdGlvbnNfcm91dGUgOiBcIi4vYXNzZXRzL2ltZy1tYW5hZ2VyL2kxOG4vXCIsXG4gIHdpemlBcGlDcmVkZW50aWFsc0tleTogJ3dpemlfYXBpX2NyZWRlbnRpYWxzX2tleScsXG4gIGxvY2FsOiB7XG4gICAgc2hvcElkOiAxMzEsXG4gICAgdG9rZW4gOiAnZXlKMGVYQWlPaUpLVjFRaUxDSmhiR2NpT2lKU1V6STFOaUo5LmV5SjFjMlZ5WDJsa0lqbzJMQ0oxYzJWeVgyeHZZMkZzWlNJNkltWnlYMFpTSWl3aWFYTlZjMlZ5UTI5dWJtVmpkR1ZrUm5KdmJWWndiaUk2ZEhKMVpTd2laWGh3SWpveE5qWTNOVFkzTkRZd0xDSnBZWFFpT2pFMk5qUTVOelUwTmpCOS5sYXBPbENuZ0pCUHN6TVR0d2dqaFlIdTlldC1UY2cteENVQmN1X2hfbE5mYUF6WXJHMkVkU0dBd0ppRjdfakpTdXVlTzBwWHBmQmROR1ZvcFZsRWI5YVI5Z1hhaTNJbEtlTTRoM1ZkaFpJdW5OSjNuaXVaalhjTWxRZ2VUa3JlWVlCcnVsYlNRWlNUb3oyY0RlR2JDWnBOX0hWUDRFMmtMcERhYnRtY2ZyR0UzODB6akY2d0xSSUFiV3ZqMno3VVA1MDlBVzFBX0pNLUNyTTk5Q1Z1WkIwRW9vd1BSazVuQ0tab1k5eDRNWU1HZFcxclNnUnZ3dVdqQm4teThKN3dKZlJIZXp4LTdGa1ZJcHVscTRtbXhPaTZLQWdMWlRPRkZLQXhNQ25URWV5VzdrSk9FbXU1TG0zUjliS21qelFyYTFpa0lZTFQyLVdDU0ZQYmlFbWFJelEnXG4gIH0sXG4gIHByb2R1Y3Rfc2hlZXRfZW5kcG9pbnQ6IFwiL3Byb2R1Y3RzL2FqYXhcIixcbiAgaXNQaG90b3NUYWI6IHRydWVcbn07XG5cbmV4cG9ydCBjb25zdCBlbnZpcm9ubWVudFdpemlEZXY6IEVudmlyb25tZW50ID0ge1xuICBpc1dpemlzaG9wY29tOiB0cnVlLFxuICBwcm9kdWN0aW9uOiBmYWxzZSxcbiAgd2l6aV9hZG1pbl9hcGk6IFwiaHR0cHM6Ly9hZG1pbi53aXppbG9jYWwuY29tL1wiLFxuICB3aXppX2FwaTogXCJodHRwczovL2FwaS53aXppbG9jYWwuY29tL3YzXCIsXG4gIENETl9VUkw6IFwiaHR0cHM6Ly9tZWRpYS53aXppbG9jYWwuY29tL19pL1wiLFxuICBhc3NldHNfcm91dGUgOiBcImh0dHBzOi8vanMud2l6aWxvY2FsLmNvbS9hL2xpYnMvaW1nLW1hbmFnZXItd2ViZWxlbWVudC9hc3NldHMvaW1nLW1hbmFnZXIvXCIsXG4gIHRyYW5zbGF0aW9uc19yb3V0ZSA6IFwiaHR0cHM6Ly9qcy53aXppbG9jYWwuY29tL2EvbGlicy9pbWctbWFuYWdlci13ZWJlbGVtZW50L2Fzc2V0cy9pbWctbWFuYWdlci9pMThuL1wiLFxuICB3aXppQXBpQ3JlZGVudGlhbHNLZXk6ICd3aXppX2FwaV9jcmVkZW50aWFsc19rZXknLFxuICBsb2NhbDoge1xuICAgIHNob3BJZDogbnVsbCxcbiAgICB0b2tlbiA6IG51bGxcbiAgfSxcbiAgcHJvZHVjdF9zaGVldF9lbmRwb2ludDogXCIvcHJvZHVjdHMvYWpheFwiXG59O1xuXG5leHBvcnQgY29uc3QgZW52aXJvbm1lbnRQcm9kOiBFbnZpcm9ubWVudCA9IHtcbiAgaXNXaXppc2hvcGNvbTogdHJ1ZSxcbiAgcHJvZHVjdGlvbjogdHJ1ZSxcbiAgd2l6aV9hZG1pbl9hcGk6IFwiaHR0cHM6Ly9hZG1pbi53aXppc2hvcC5jb20vXCIsXG4gIHdpemlfYXBpOiBcImh0dHBzOi8vYXBpLndpemlzaG9wLmNvbS92M1wiLFxuICBDRE5fVVJMOiBcImh0dHBzOi8vbWVkaWEuY2Rud3MuY29tL19pL1wiLFxuICBhc3NldHNfcm91dGUgOiBcImh0dHBzOi8vanMud2l6aXNob3AuY29tL2EvbGlicy9pbWctbWFuYWdlci13ZWJlbGVtZW50L2Fzc2V0cy9pbWctbWFuYWdlci9cIixcbiAgdHJhbnNsYXRpb25zX3JvdXRlIDogXCJodHRwczovL2pzLndpemlzaG9wLmNvbS9hL2xpYnMvaW1nLW1hbmFnZXItd2ViZWxlbWVudC9hc3NldHMvaW1nLW1hbmFnZXIvaTE4bi9cIixcbiAgd2l6aUFwaUNyZWRlbnRpYWxzS2V5OiAnd2l6aV9hcGlfY3JlZGVudGlhbHNfa2V5JyxcbiAgbG9jYWw6IHtcbiAgICBzaG9wSWQ6IG51bGwsXG4gICAgdG9rZW4gOiBudWxsXG4gIH0sXG4gIHByb2R1Y3Rfc2hlZXRfZW5kcG9pbnQ6IFwiL3Byb2R1Y3RzL2FqYXhcIlxufTtcblxuZXhwb3J0IGNvbnN0IGVudmlyb25tZW50RHJvcGl6aURldjogRW52aXJvbm1lbnQgPSB7XG4gIGlzV2l6aXNob3Bjb206IHRydWUsXG4gIHByb2R1Y3Rpb246IGZhbHNlLFxuICB3aXppX2FkbWluX2FwaTogXCJodHRwczovL2FkbWluLmRyb3BpbG9jYWwuY29tL1wiLFxuICB3aXppX2FwaTogXCJodHRwczovL2FwaS5kcm9waWxvY2FsLmNvbS92M1wiLFxuICBDRE5fVVJMOiBcImh0dHBzOi8vbWVkaWEuZHJvcGlsb2NhbC5jb20vX2kvXCIsXG4gIGFzc2V0c19yb3V0ZSA6IFwiaHR0cHM6Ly9qcy5kcm9waWxvY2FsLmZyL2EvbGlicy9pbWctbWFuYWdlci13ZWJlbGVtZW50L2Fzc2V0cy9pbWctbWFuYWdlci9cIixcbiAgdHJhbnNsYXRpb25zX3JvdXRlIDogXCJodHRwczovL2pzLmRyb3BpbG9jYWwuY29tL2EvbGlicy9pbWctbWFuYWdlci13ZWJlbGVtZW50L2Fzc2V0cy9pbWctbWFuYWdlci9pMThuL1wiLFxuICB3aXppQXBpQ3JlZGVudGlhbHNLZXk6ICd3aXppX2FwaV9jcmVkZW50aWFsc19rZXknLFxuICBsb2NhbDoge1xuICAgIHNob3BJZDogbnVsbCxcbiAgICB0b2tlbiA6IG51bGxcbiAgfSxcbiAgcHJvZHVjdF9zaGVldF9lbmRwb2ludDogXCIvcHJvZHVjdHMvYWpheFwiXG59O1xuXG5leHBvcnQgY29uc3QgZW52aXJvbm1lbnREcm9waXppUHJvZDogRW52aXJvbm1lbnQgPSB7XG4gIGlzV2l6aXNob3Bjb206IHRydWUsXG4gIHByb2R1Y3Rpb246IHRydWUsXG4gIHdpemlfYWRtaW5fYXBpOiBcImh0dHBzOi8vYWRtaW4uZHJvcGl6aS5mci9cIixcbiAgd2l6aV9hcGk6IFwiaHR0cHM6Ly9hcGkud2l6aXNob3AuY29tL3YzXCIsXG4gIENETl9VUkw6IFwiaHR0cHM6Ly9tZWRpYS5jZG53cy5jb20vX2kvXCIsXG4gIGFzc2V0c19yb3V0ZSA6IFwiaHR0cHM6Ly9qcy5kcm9waXppLmZyL2EvbGlicy9pbWctbWFuYWdlci13ZWJlbGVtZW50L2Fzc2V0cy9pbWctbWFuYWdlci9cIixcbiAgdHJhbnNsYXRpb25zX3JvdXRlIDogXCJodHRwczovL2pzLmRyb3BpemkuZnIvYS9saWJzL2ltZy1tYW5hZ2VyLXdlYmVsZW1lbnQvYXNzZXRzL2ltZy1tYW5hZ2VyL2kxOG4vXCIsXG4gIHdpemlBcGlDcmVkZW50aWFsc0tleTogJ3dpemlfYXBpX2NyZWRlbnRpYWxzX2tleScsXG4gIGxvY2FsOiB7XG4gICAgc2hvcElkOiBudWxsLFxuICAgIHRva2VuIDogbnVsbFxuICB9LFxuICBwcm9kdWN0X3NoZWV0X2VuZHBvaW50OiBcIi9wcm9kdWN0cy9hamF4XCJcbn07XG5cbmZ1bmN0aW9uIGdldEN1cnJlbnRFbnYoKSB7XG4gIGNvbnN0IGlzRGV2ID0gISF3aW5kb3cubG9jYXRpb24uaG9zdG5hbWUubWF0Y2goL2xvY2FsLyk7XG4gIGNvbnN0IGlzV2l6aSA9ICEhd2luZG93LmxvY2F0aW9uLmhvc3RuYW1lLm1hdGNoKC93aXppLyk7XG4gIGNvbnN0IHNlcnZlckxvY2FsID0gISF3aW5kb3cubG9jYXRpb24ucG9ydDtcblxuICBpZiAoc2VydmVyTG9jYWwpIHtcbiAgICByZXR1cm4gZW52aXJvbm1lbnRXaXppRGV2TG9jYWw7XG4gIH1cbiAgaWYgKGlzRGV2KSB7XG4gICAgaWYgKGlzV2l6aSkge1xuICAgICAgcmV0dXJuIGVudmlyb25tZW50V2l6aURldjtcbiAgICB9XG4gICAgcmV0dXJuIGVudmlyb25tZW50RHJvcGl6aURldjtcbiAgfSBlbHNlIHtcbiAgICBpZiAoaXNXaXppKSB7XG4gICAgICByZXR1cm4gZW52aXJvbm1lbnRQcm9kO1xuICAgIH1cbiAgICByZXR1cm4gZW52aXJvbm1lbnREcm9waXppUHJvZDtcbiAgfVxufVxuXG5leHBvcnQgY29uc3QgZW52aXJvbm1lbnQ6IEVudmlyb25tZW50ID0gT2JqZWN0LmFzc2lnbih7fSwgZ2V0Q3VycmVudEVudigpKTsiXX0=
@@ -0,0 +1,177 @@
1
+ import { Component } from '@angular/core';
2
+ import { ImgManagerConfigDto, ImgApiDto, ImgCDNConfigDTO } from '@wizishop/img-manager';
3
+ import { from as fromPromise } from 'rxjs';
4
+ import { HttpHeaders } from '@angular/common/http';
5
+ import { environment } from './environments/environment';
6
+ import * as i0 from "@angular/core";
7
+ import * as i1 from "@ngx-translate/core";
8
+ import * as i2 from "@wizishop/img-manager";
9
+ import * as i3 from "./services/fiche_products.service";
10
+ import * as i4 from "./services/auth-credentials.service";
11
+ import * as i5 from "@angular/common/http";
12
+ import * as i6 from "./services/event.service";
13
+ import * as i7 from "@angular/common";
14
+ import * as i8 from "dist/@wizishop/img-manager";
15
+ export class ImgManagerWebElementComponent {
16
+ constructor(translateService, imgSelectionService, canvaService, ficheProductService, authCredentialsService, http, eventService, imgManagerService) {
17
+ this.translateService = translateService;
18
+ this.imgSelectionService = imgSelectionService;
19
+ this.canvaService = canvaService;
20
+ this.ficheProductService = ficheProductService;
21
+ this.authCredentialsService = authCredentialsService;
22
+ this.http = http;
23
+ this.eventService = eventService;
24
+ this.imgManagerService = imgManagerService;
25
+ // img manger config
26
+ this.openImgManager = false;
27
+ this.loading = true;
28
+ // fiche roduct config
29
+ this.isPhotosTab = !!environment.isPhotosTab;
30
+ this.subscriptions = [];
31
+ }
32
+ ngOnInit() {
33
+ this.loading = true;
34
+ this.pageficheProductConfig = this.imgManagerService.getImgManagerDisplayConfig("fiche-product");
35
+ this.pageEventConfig = this.imgManagerService.getImgManagerDisplayConfig("wizi-block");
36
+ this.setCurrentLanguage();
37
+ // Search on which page is display the img manger
38
+ this.setDisplayedPageConfig();
39
+ const subCredentials = this.getCredentials().subscribe(authCredentials => {
40
+ this.loading = false;
41
+ this.initVariables(authCredentials);
42
+ // Fiche product page
43
+ if (this.imgManagerDisplayConfig.pageficheProduct) {
44
+ this.setFicheProductPage();
45
+ }
46
+ else {
47
+ this.setPageWithEvents();
48
+ }
49
+ });
50
+ this.subscriptions.push(subCredentials);
51
+ }
52
+ initVariables(authCredentials) {
53
+ if (!authCredentials) {
54
+ if (environment.isWizishopcom) {
55
+ return;
56
+ }
57
+ // Run on local Server
58
+ this.setAppVars(null, environment.local.shopId, null, environment.local.token);
59
+ this.setImgManagerExtraConfig();
60
+ this.imgManagerDisplayConfig = this.pageficheProductConfig;
61
+ return;
62
+ }
63
+ this.setAppVars(authCredentials.user_id, authCredentials.shop_id, authCredentials.account_id, authCredentials.token);
64
+ this.setImgManagerExtraConfig();
65
+ }
66
+ setFicheProductPage() {
67
+ this.ficheProductService.setApiConfig(this.id_shop, this.token_shop);
68
+ this.handleFicheProductTab(); // Display different img manager config according to the tab
69
+ this.closeImgManagerOnSwitchingTab();
70
+ this.subscribePageAskForImg(); // Use for images in variations tab
71
+ this.ficheProductService.updateImgSelectionOnChange();
72
+ }
73
+ setPageWithEvents() {
74
+ this.subscribePageAskForImg();
75
+ // Send img selected
76
+ const subImgSelection = this.imgSelectionService.getImgSelectionChange().subscribe(imgSelectionList => {
77
+ if (imgSelectionList && imgSelectionList.length) {
78
+ this.eventService.sendImgSelectedToPage(imgSelectionList[0]);
79
+ }
80
+ });
81
+ this.subscriptions.push(subImgSelection);
82
+ }
83
+ subscribePageAskForImg() {
84
+ // Listen to page editor ask for img event
85
+ const subAskForImg = this.eventService.pageAskForImg().subscribe(data => {
86
+ // Retrieve which img manager send the event
87
+ const emitter = data && data["detail"] ? data["detail"]["from"] : null;
88
+ this.eventService.setEmitter(emitter);
89
+ this.imgSelectionService.setImgSelection([]);
90
+ this.open();
91
+ });
92
+ this.subscriptions.push(subAskForImg);
93
+ }
94
+ open() {
95
+ this.openImgManager = true;
96
+ }
97
+ onImgManagerClosed() {
98
+ // Close img manager
99
+ this.openImgManager = false;
100
+ }
101
+ setCurrentLanguage() {
102
+ const matches = window.location.pathname.match(/^\/(\w+)\//);
103
+ this.translateService.use(matches && matches[1] ? matches[1] : 'fr');
104
+ }
105
+ setDisplayedPageConfig() {
106
+ const isFicheProductPage = /\/products\/(\d+\/edit|create)/.test(window.location.pathname);
107
+ this.imgManagerDisplayConfig = isFicheProductPage ? this.pageficheProductConfig : this.pageEventConfig;
108
+ }
109
+ handleFicheProductTab() {
110
+ const tabsSub = this.ficheProductService.handleTabs().subscribe(isPhotosTab => {
111
+ this.imgManagerDisplayConfig = isPhotosTab ? this.pageficheProductConfig : this.pageEventConfig;
112
+ this.isPhotosTab = isPhotosTab;
113
+ });
114
+ this.subscriptions.push(tabsSub);
115
+ }
116
+ closeImgManagerOnSwitchingTab() {
117
+ const tabsCloseSub = this.ficheProductService.switchTabs().subscribe(data => {
118
+ this.openImgManager = false;
119
+ });
120
+ this.subscriptions.push(tabsCloseSub);
121
+ }
122
+ getCredentials() {
123
+ return fromPromise(this.authCredentialsService.get());
124
+ }
125
+ setAppVars(userId, shopId, accountId, token) {
126
+ this.userId = userId;
127
+ this.id_shop = shopId;
128
+ this.accountId = accountId;
129
+ this.token_shop = token;
130
+ }
131
+ setImgManagerExtraConfig() {
132
+ const apiDto = new ImgApiDto();
133
+ apiDto.shop_token = this.token_shop;
134
+ apiDto.image_manager_route = environment.wizi_api + "/image-manager/shops/" + this.id_shop;
135
+ apiDto.canva_token = 'wdByHayF5v57nj2ZSLvu055O';
136
+ apiDto.canva_url = 'https://sdk.canva.com/designbutton/v2/api.js';
137
+ apiDto.pexels_token = '563492ad6f91700001000001e39215727d8b42c1b08498a9ce1e6b94';
138
+ apiDto.pexels_route = 'https://api.pexels.com/v1';
139
+ apiDto.shop_category = 'other'; // The shop categorie is retrieve later with the getShopCategory methode
140
+ apiDto.assets_route = environment.assets_route;
141
+ const imgCDNConfigDTO = new ImgCDNConfigDTO();
142
+ imgCDNConfigDTO.url_raw_image = `${environment.CDN_URL}${this.id_shop}/RAW-`;
143
+ imgCDNConfigDTO.url_100_image = `${environment.CDN_URL}${this.id_shop}/m100-`;
144
+ imgCDNConfigDTO.url_200_image = `${environment.CDN_URL}${this.id_shop}/cs200-`;
145
+ imgCDNConfigDTO.url_400_image = `${environment.CDN_URL}${this.id_shop}/cs400-`;
146
+ imgCDNConfigDTO.url_800_image = `${environment.CDN_URL}${this.id_shop}/cs800-`;
147
+ this.imgExternalConfig = new ImgManagerConfigDto();
148
+ this.imgExternalConfig.api = apiDto;
149
+ this.imgExternalConfig.imgCDNConfig = imgCDNConfigDTO;
150
+ const subShopCategory = this.getShopCategory().subscribe(shop => {
151
+ if (shop && shop['category']) {
152
+ this.imgExternalConfig.api.shop_category = shop['category'];
153
+ }
154
+ });
155
+ this.subscriptions.push(subShopCategory);
156
+ }
157
+ getShopCategory() {
158
+ return this.http.get(`${environment.wizi_api}/shops/${this.id_shop}`, this.getOptionsHeadersWithBearer());
159
+ }
160
+ getOptionsHeadersWithBearer() {
161
+ const header = { headers: new HttpHeaders({
162
+ Authorization: 'Bearer ' + this.token_shop
163
+ })
164
+ };
165
+ return header;
166
+ }
167
+ ngOnDestroy() {
168
+ this.subscriptions.forEach(sub => sub.unsubscribe());
169
+ }
170
+ }
171
+ ImgManagerWebElementComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: ImgManagerWebElementComponent, deps: [{ token: i1.TranslateService }, { token: i2.ImgSelectionService }, { token: i2.CanvaService }, { token: i3.FicheProductService }, { token: i4.AuthCredentialsService }, { token: i5.HttpClient }, { token: i6.EventService }, { token: i2.ImgManagerService }], target: i0.ɵɵFactoryTarget.Component });
172
+ ImgManagerWebElementComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.1.3", type: ImgManagerWebElementComponent, 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 [externalConfig]=\"imgExternalConfig\"\n (imgManagerClosed)=\"onImgManagerClosed()\">\n </wz-img-manager>\n </div>\n </ng-container>\n</div>", styles: [""], dependencies: [{ kind: "directive", type: i7.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i8.WzImgManagerComponent, selector: "wz-img-manager", inputs: ["stateDisplayed", "showSelection", "externalConfig", "forceToOpenCanva", "multipleImgMode", "showImgManagerModule"], outputs: ["imgManagerClosed"] }, { kind: "pipe", type: i1.TranslatePipe, name: "translate" }] });
173
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: ImgManagerWebElementComponent, decorators: [{
174
+ type: Component,
175
+ args: [{ 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 [externalConfig]=\"imgExternalConfig\"\n (imgManagerClosed)=\"onImgManagerClosed()\">\n </wz-img-manager>\n </div>\n </ng-container>\n</div>" }]
176
+ }], ctorParameters: function () { return [{ type: i1.TranslateService }, { type: i2.ImgSelectionService }, { type: i2.CanvaService }, { type: i3.FicheProductService }, { type: i4.AuthCredentialsService }, { type: i5.HttpClient }, { type: i6.EventService }, { type: i2.ImgManagerService }]; } });
177
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1nLW1hbmFnZXItd2ViLWVsZW1lbnQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvaW1nLW1hbmFnZXItd2ViLWVsZW1lbnQvc3JjL2xpYi9pbWctbWFuYWdlci13ZWItZWxlbWVudC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9pbWctbWFuYWdlci13ZWItZWxlbWVudC9zcmMvbGliL2ltZy1tYW5hZ2VyLXdlYi1lbGVtZW50LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUMsT0FBTyxFQUFFLG1CQUFtQixFQUFFLFNBQVMsRUFBRSxlQUFlLEVBQWlGLE1BQU0sdUJBQXVCLENBQUM7QUFFdkssT0FBTyxFQUFnQixJQUFJLElBQUksV0FBVyxFQUFjLE1BQU0sTUFBTSxDQUFDO0FBR3JFLE9BQU8sRUFBYyxXQUFXLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUUvRCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sNEJBQTRCLENBQUM7Ozs7Ozs7Ozs7QUFPekQsTUFBTSxPQUFPLDZCQUE2QjtJQW9CeEMsWUFDVSxnQkFBa0MsRUFDbEMsbUJBQXdDLEVBQ3hDLFlBQTBCLEVBQzFCLG1CQUF3QyxFQUN4QyxzQkFBOEMsRUFDOUMsSUFBZ0IsRUFDaEIsWUFBMEIsRUFDMUIsaUJBQW9DO1FBUHBDLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7UUFDbEMsd0JBQW1CLEdBQW5CLG1CQUFtQixDQUFxQjtRQUN4QyxpQkFBWSxHQUFaLFlBQVksQ0FBYztRQUMxQix3QkFBbUIsR0FBbkIsbUJBQW1CLENBQXFCO1FBQ3hDLDJCQUFzQixHQUF0QixzQkFBc0IsQ0FBd0I7UUFDOUMsU0FBSSxHQUFKLElBQUksQ0FBWTtRQUNoQixpQkFBWSxHQUFaLFlBQVksQ0FBYztRQUMxQixz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QyxFQUFFLENBQUMsR0FBRyxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUM7SUFDdkQsQ0FBQzs7MEhBcE1VLDZCQUE2Qjs4R0FBN0IsNkJBQTZCLDhEQ2YxQyxpb0NBeUJNOzJGRFZPLDZCQUE2QjtrQkFMekMsU0FBUzsrQkFDRSx3QkFBd0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEltZ01hbmFnZXJDb25maWdEdG8sIEltZ0FwaUR0bywgSW1nQ0ROQ29uZmlnRFRPLCBJbWdTZWxlY3Rpb25TZXJ2aWNlLCBDYW52YVNlcnZpY2UsIEltZ01hbmFnZXJEaXNwbGF5Q29uZmlnLCBJbWdNYW5hZ2VyU2VydmljZSB9IGZyb20gJ0B3aXppc2hvcC9pbWctbWFuYWdlcic7XG5pbXBvcnQgeyBUcmFuc2xhdGVTZXJ2aWNlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSc7XG5pbXBvcnQgeyBTdWJzY3JpcHRpb24sIGZyb20gYXMgZnJvbVByb21pc2UsIE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IEZpY2hlUHJvZHVjdFNlcnZpY2UgfSBmcm9tICcuL3NlcnZpY2VzL2ZpY2hlX3Byb2R1Y3RzLnNlcnZpY2UnO1xuaW1wb3J0IHsgQXV0aENyZWRlbnRpYWxzLCBBdXRoQ3JlZGVudGlhbHNTZXJ2aWNlIH0gZnJvbSAnLi9zZXJ2aWNlcy9hdXRoLWNyZWRlbnRpYWxzLnNlcnZpY2UnO1xuaW1wb3J0IHsgSHR0cENsaWVudCwgSHR0cEhlYWRlcnMgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQgeyBFdmVudFNlcnZpY2UgfSBmcm9tICcuL3NlcnZpY2VzL2V2ZW50LnNlcnZpY2UnO1xuaW1wb3J0IHsgZW52aXJvbm1lbnQgfSBmcm9tICcuL2Vudmlyb25tZW50cy9lbnZpcm9ubWVudCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2ltZy1tYW5hZ2VyLXdlYmVsZW1lbnQnLFxuICB0ZW1wbGF0ZVVybDogJy4vaW1nLW1hbmFnZXItd2ViLWVsZW1lbnQuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9pbWctbWFuYWdlci13ZWItZWxlbWVudC5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIEltZ01hbmFnZXJXZWJFbGVtZW50Q29tcG9uZW50IHtcbiAgLy8gc2hvcCBjb25maWdcbiAgaWRfc2hvcDogbnVtYmVyO1xuICB0b2tlbl9zaG9wOiBzdHJpbmc7XG4gIHVzZXJJZDogbnVtYmVyIHwgbnVsbDtcbiAgYWNjb3VudElkOiBudW1iZXIgfCBudWxsO1xuXG4gIC8vIGltZyBtYW5nZXIgY29uZmlnXG4gIG9wZW5JbWdNYW5hZ2VyOmJvb2xlYW4gPSBmYWxzZTtcbiAgbG9hZGluZzogYm9vbGVhbiA9IHRydWU7XG4gIGltZ0V4dGVybmFsQ29uZmlnOiBJbWdNYW5hZ2VyQ29uZmlnRHRvO1xuICBpbWdNYW5hZ2VyRGlzcGxheUNvbmZpZzogSW1nTWFuYWdlckRpc3BsYXlDb25maWc7XG4gIHBhZ2VmaWNoZVByb2R1Y3RDb25maWc6IEltZ01hbmFnZXJEaXNwbGF5Q29uZmlnO1xuICBwYWdlRXZlbnRDb25maWc6IEltZ01hbmFnZXJEaXNwbGF5Q29uZmlnO1xuXG4gIC8vIGZpY2hlIHJvZHVjdCBjb25maWdcbiAgaXNQaG90b3NUYWI6IGJvb2xlYW4gPSAhIWVudmlyb25tZW50LmlzUGhvdG9zVGFiO1xuXG4gIHN1YnNjcmlwdGlvbnM6IFN1YnNjcmlwdGlvbltdID0gW107XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSB0cmFuc2xhdGVTZXJ2aWNlOiBUcmFuc2xhdGVTZXJ2aWNlLFxuICAgIHByaXZhdGUgaW1nU2VsZWN0aW9uU2VydmljZTogSW1nU2VsZWN0aW9uU2VydmljZSxcbiAgICBwcml2YXRlIGNhbnZhU2VydmljZTogQ2FudmFTZXJ2aWNlLFxuICAgIHByaXZhdGUgZmljaGVQcm9kdWN0U2VydmljZTogRmljaGVQcm9kdWN0U2VydmljZSxcbiAgICBwcml2YXRlIGF1dGhDcmVkZW50aWFsc1NlcnZpY2U6IEF1dGhDcmVkZW50aWFsc1NlcnZpY2UsXG4gICAgcHJpdmF0ZSBodHRwOiBIdHRwQ2xpZW50LFxuICAgIHByaXZhdGUgZXZlbnRTZXJ2aWNlOiBFdmVudFNlcnZpY2UsXG4gICAgcHJpdmF0ZSBpbWdNYW5hZ2VyU2VydmljZTogSW1nTWFuYWdlclNlcnZpY2VcbiAgKXt9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgdGhpcy5sb2FkaW5nID0gdHJ1ZTtcbiAgICB0aGlzLnBhZ2VmaWNoZVByb2R1Y3RDb25maWcgPSB0aGlzLmltZ01hbmFnZXJTZXJ2aWNlLmdldEltZ01hbmFnZXJEaXNwbGF5Q29uZmlnKFwiZmljaGUtcHJvZHVjdFwiKTtcbiAgICB0aGlzLnBhZ2VFdmVudENvbmZpZyA9IHRoaXMuaW1nTWFuYWdlclNlcnZpY2UuZ2V0SW1nTWFuYWdlckRpc3BsYXlDb25maWcoXCJ3aXppLWJsb2NrXCIpO1xuICAgIHRoaXMuc2V0Q3VycmVudExhbmd1YWdlKCk7XG4gICAgLy8gU2VhcmNoIG9uIHdoaWNoIHBhZ2UgaXMgZGlzcGxheSB0aGUgaW1nIG1hbmdlclxuICAgIHRoaXMuc2V0RGlzcGxheWVkUGFnZUNvbmZpZygpO1xuXG4gICAgY29uc3Qgc3ViQ3JlZGVudGlhbHMgPVxuICAgICAgdGhpcy5nZXRDcmVkZW50aWFscygpLnN1YnNjcmliZShhdXRoQ3JlZGVudGlhbHMgPT4ge1xuICAgICAgICB0aGlzLmxvYWRpbmcgPSBmYWxzZTtcbiAgICAgICAgdGhpcy5pbml0VmFyaWFibGVzKGF1dGhDcmVkZW50aWFscyk7XG4gICAgICAgIC8vIEZpY2hlIHByb2R1Y3QgcGFnZVxuICAgICAgICBpZiAodGhpcy5pbWdNYW5hZ2VyRGlzcGxheUNvbmZpZy5wYWdlZmljaGVQcm9kdWN0KSB7XG4gICAgICAgICAgdGhpcy5zZXRGaWNoZVByb2R1Y3RQYWdlKCk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgdGhpcy5zZXRQYWdlV2l0aEV2ZW50cygpO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB0aGlzLnN1YnNjcmlwdGlvbnMucHVzaChzdWJDcmVkZW50aWFscyk7XG4gIH1cblxuICBpbml0VmFyaWFibGVzKGF1dGhDcmVkZW50aWFsczogQXV0aENyZWRlbnRpYWxzIHwgbnVsbCkge1xuICAgIGlmICghYXV0aENyZWRlbnRpYWxzKSB7XG5cbiAgICAgIGlmIChlbnZpcm9ubWVudC5pc1dpemlzaG9wY29tKSB7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cbiAgICAgIC8vIFJ1biBvbiBsb2NhbCBTZXJ2ZXJcbiAgICAgIHRoaXMuc2V0QXBwVmFycyhudWxsLCBlbnZpcm9ubWVudC5sb2NhbC5zaG9wSWQsIG51bGwsICBlbnZpcm9ubWVudC5sb2NhbC50b2tlbik7XG4gICAgICB0aGlzLnNldEltZ01hbmFnZXJFeHRyYUNvbmZpZygpO1xuICAgICAgdGhpcy5pbWdNYW5hZ2VyRGlzcGxheUNvbmZpZyA9IHRoaXMucGFnZWZpY2hlUHJvZHVjdENvbmZpZztcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0aGlzLnNldEFwcFZhcnMoYXV0aENyZWRlbnRpYWxzLnVzZXJfaWQsIGF1dGhDcmVkZW50aWFscy5zaG9wX2lkLCBhdXRoQ3JlZGVudGlhbHMuYWNjb3VudF9pZCwgYXV0aENyZWRlbnRpYWxzLnRva2VuKTtcbiAgICB0aGlzLnNldEltZ01hbmFnZXJFeHRyYUNvbmZpZygpO1xuICB9XG5cbiAgc2V0RmljaGVQcm9kdWN0UGFnZSgpIHtcbiAgICB0aGlzLmZpY2hlUHJvZHVjdFNlcnZpY2Uuc2V0QXBpQ29uZmlnKHRoaXMuaWRfc2hvcCwgdGhpcy50b2tlbl9zaG9wKTtcbiAgICB0aGlzLmhhbmRsZUZpY2hlUHJvZHVjdFRhYigpOyAvLyBEaXNwbGF5IGRpZmZlcmVudCBpbWcgbWFuYWdlciBjb25maWcgYWNjb3JkaW5nIHRvIHRoZSB0YWJcbiAgICB0aGlzLmNsb3NlSW1nTWFuYWdlck9uU3dpdGNoaW5nVGFiKCk7XG4gICAgdGhpcy5zdWJzY3JpYmVQYWdlQXNrRm9ySW1nKCk7IC8vIFVzZSBmb3IgaW1hZ2VzIGluIHZhcmlhdGlvbnMgdGFiXG4gICAgdGhpcy5maWNoZVByb2R1Y3RTZXJ2aWNlLnVwZGF0ZUltZ1NlbGVjdGlvbk9uQ2hhbmdlKCk7XG4gIH1cblxuICBzZXRQYWdlV2l0aEV2ZW50cygpIHtcbiAgICB0aGlzLnN1YnNjcmliZVBhZ2VBc2tGb3JJbWcoKTtcblxuICAgIC8vIFNlbmQgaW1nIHNlbGVjdGVkXG4gICAgY29uc3Qgc3ViSW1nU2VsZWN0aW9uID0gdGhpcy5pbWdTZWxlY3Rpb25TZXJ2aWNlLmdldEltZ1NlbGVjdGlvbkNoYW5nZSgpLnN1YnNjcmliZShpbWdTZWxlY3Rpb25MaXN0ID0+IHtcbiAgICAgIGlmIChpbWdTZWxlY3Rpb25MaXN0ICYmIGltZ1NlbGVjdGlvbkxpc3QubGVuZ3RoKSB7XG4gICAgICAgIHRoaXMuZXZlbnRTZXJ2aWNlLnNlbmRJbWdTZWxlY3RlZFRvUGFnZShpbWdTZWxlY3Rpb25MaXN0WzBdKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgICB0aGlzLnN1YnNjcmlwdGlvbnMucHVzaChzdWJJbWdTZWxlY3Rpb24pO1xuICB9XG5cbiAgc3Vic2NyaWJlUGFnZUFza0ZvckltZygpIHtcbiAgICAvLyBMaXN0ZW4gdG8gcGFnZSBlZGl0b3IgYXNrIGZvciBpbWcgZXZlbnRcbiAgICBjb25zdCBzdWJBc2tGb3JJbWcgPSB0aGlzLmV2ZW50U2VydmljZS5wYWdlQXNrRm9ySW1nKCkuc3Vic2NyaWJlKCBkYXRhID0+IHtcbiAgICAgIC8vIFJldHJpZXZlIHdoaWNoIGltZyBtYW5hZ2VyIHNlbmQgdGhlIGV2ZW50XG4gICAgICBjb25zdCBlbWl0dGVyID0gZGF0YSAmJiBkYXRhW1wiZGV0YWlsXCJdID8gZGF0YVtcImRldGFpbFwiXVtcImZyb21cIl0gOiBudWxsO1xuICAgICAgdGhpcy5ldmVudFNlcnZpY2Uuc2V0RW1pdHRlcihlbWl0dGVyKTtcblxuICAgICAgdGhpcy5pbWdTZWxlY3Rpb25TZXJ2aWNlLnNldEltZ1NlbGVjdGlvbihbXSk7XG5cbiAgICAgIHRoaXMub3BlbigpO1xuICAgIH0pO1xuICAgIHRoaXMuc3Vic2NyaXB0aW9ucy5wdXNoKHN1YkFza0ZvckltZyk7XG4gIH1cblxuICBvcGVuKCkge1xuICAgIHRoaXMub3BlbkltZ01hbmFnZXIgPSB0cnVlO1xuICB9XG5cbiAgb25JbWdNYW5hZ2VyQ2xvc2VkKCkge1xuICAgIC8vIENsb3NlIGltZyBtYW5hZ2VyXG4gICAgdGhpcy5vcGVuSW1nTWFuYWdlciA9IGZhbHNlO1xuICB9XG5cbiAgc2V0Q3VycmVudExhbmd1YWdlKCkge1xuICAgIGNvbnN0IG1hdGNoZXMgPSB3aW5kb3cubG9jYXRpb24ucGF0aG5hbWUubWF0Y2goIC9eXFwvKFxcdyspXFwvLyk7XG4gICAgdGhpcy50cmFuc2xhdGVTZXJ2aWNlLnVzZShtYXRjaGVzICYmIG1hdGNoZXNbMV0gPyBtYXRjaGVzWzFdIDogJ2ZyJyk7XG4gIH1cblxuICBzZXREaXNwbGF5ZWRQYWdlQ29uZmlnKCkge1xuICAgIGNvbnN0IGlzRmljaGVQcm9kdWN0UGFnZSA9IC9cXC9wcm9kdWN0c1xcLyhcXGQrXFwvZWRpdHxjcmVhdGUpLy50ZXN0KHdpbmRvdy5sb2NhdGlvbi5wYXRobmFtZSk7XG4gICAgdGhpcy5pbWdNYW5hZ2VyRGlzcGxheUNvbmZpZyA9IGlzRmljaGVQcm9kdWN0UGFnZSA/IHRoaXMucGFnZWZpY2hlUHJvZHVjdENvbmZpZyA6IHRoaXMucGFnZUV2ZW50Q29uZmlnO1xuICB9XG5cbiAgaGFuZGxlRmljaGVQcm9kdWN0VGFiKCkge1xuICAgIGNvbnN0IHRhYnNTdWIgPVxuICAgICAgdGhpcy5maWNoZVByb2R1Y3RTZXJ2aWNlLmhhbmRsZVRhYnMoKS5zdWJzY3JpYmUoaXNQaG90b3NUYWIgPT4ge1xuICAgICAgICB0aGlzLmltZ01hbmFnZXJEaXNwbGF5Q29uZmlnID0gaXNQaG90b3NUYWIgPyB0aGlzLnBhZ2VmaWNoZVByb2R1Y3RDb25maWcgOiB0aGlzLnBhZ2VFdmVudENvbmZpZztcbiAgICAgICAgdGhpcy5pc1Bob3Rvc1RhYiA9IGlzUGhvdG9zVGFiO1xuICAgICAgfSk7XG4gICAgdGhpcy5zdWJzY3JpcHRpb25zLnB1c2godGFic1N1Yik7XG4gIH1cblxuICBjbG9zZUltZ01hbmFnZXJPblN3aXRjaGluZ1RhYigpIHtcbiAgICBjb25zdCB0YWJzQ2xvc2VTdWIgPVxuICAgICAgdGhpcy5maWNoZVByb2R1Y3RTZXJ2aWNlLnN3aXRjaFRhYnMoKS5zdWJzY3JpYmUoZGF0YSA9PiB7XG4gICAgICAgIHRoaXMub3BlbkltZ01hbmFnZXIgPSBmYWxzZTtcbiAgICAgIH0pO1xuXG4gICAgdGhpcy5zdWJzY3JpcHRpb25zLnB1c2godGFic0Nsb3NlU3ViKTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0Q3JlZGVudGlhbHM8QXV0aENyZWRlbnRpYWxzPigpIHtcbiAgICByZXR1cm4gZnJvbVByb21pc2UodGhpcy5hdXRoQ3JlZGVudGlhbHNTZXJ2aWNlLmdldCgpKTtcbiAgfVxuXG4gIHByaXZhdGUgc2V0QXBwVmFycyh1c2VySWQ6IG51bWJlciB8IG51bGwsIHNob3BJZDogbnVtYmVyLCBhY2NvdW50SWQ6IG51bWJlcnwgbnVsbCwgdG9rZW46IHN0cmluZykge1xuICAgIHRoaXMudXNlcklkID0gdXNlcklkO1xuICAgIHRoaXMuaWRfc2hvcCA9IHNob3BJZDtcbiAgICB0aGlzLmFjY291bnRJZCA9IGFjY291bnRJZDtcbiAgICB0aGlzLnRva2VuX3Nob3AgPSB0b2tlbjtcbiAgfVxuXG4gIHByaXZhdGUgc2V0SW1nTWFuYWdlckV4dHJhQ29uZmlnKCkge1xuICAgIGNvbnN0IGFwaUR0byA9IG5ldyBJbWdBcGlEdG8oKTtcbiAgICBhcGlEdG8uc2hvcF90b2tlbiA9IHRoaXMudG9rZW5fc2hvcDtcbiAgICBhcGlEdG8uaW1hZ2VfbWFuYWdlcl9yb3V0ZSA9IGVudmlyb25tZW50LndpemlfYXBpKyBcIi9pbWFnZS1tYW5hZ2VyL3Nob3BzL1wiICsgdGhpcy5pZF9zaG9wO1xuICAgIGFwaUR0by5jYW52YV90b2tlbiA9ICd3ZEJ5SGF5RjV2NTduajJaU0x2dTA1NU8nO1xuICAgIGFwaUR0by5jYW52YV91cmwgPSAnaHR0cHM6Ly9zZGsuY2FudmEuY29tL2Rlc2lnbmJ1dHRvbi92Mi9hcGkuanMnO1xuICAgIGFwaUR0by5wZXhlbHNfdG9rZW4gPSAnNTYzNDkyYWQ2ZjkxNzAwMDAxMDAwMDAxZTM5MjE1NzI3ZDhiNDJjMWIwODQ5OGE5Y2UxZTZiOTQnO1xuICAgIGFwaUR0by5wZXhlbHNfcm91dGUgPSAnaHR0cHM6Ly9hcGkucGV4ZWxzLmNvbS92MSc7XG4gICAgYXBpRHRvLnNob3BfY2F0ZWdvcnkgPSAnb3RoZXInOyAvLyBUaGUgc2hvcCBjYXRlZ29yaWUgaXMgcmV0cmlldmUgbGF0ZXIgd2l0aCB0aGUgZ2V0U2hvcENhdGVnb3J5IG1ldGhvZGVcbiAgICBhcGlEdG8uYXNzZXRzX3JvdXRlID0gZW52aXJvbm1lbnQuYXNzZXRzX3JvdXRlO1xuXG4gICAgY29uc3QgaW1nQ0ROQ29uZmlnRFRPID0gbmV3IEltZ0NETkNvbmZpZ0RUTygpO1xuICAgIGltZ0NETkNvbmZpZ0RUTy51cmxfcmF3X2ltYWdlID0gYCR7ZW52aXJvbm1lbnQuQ0ROX1VSTH0ke3RoaXMuaWRfc2hvcH0vUkFXLWA7XG4gICAgaW1nQ0ROQ29uZmlnRFRPLnVybF8xMDBfaW1hZ2UgPSBgJHtlbnZpcm9ubWVudC5DRE5fVVJMfSR7dGhpcy5pZF9zaG9wfS9tMTAwLWA7XG4gICAgaW1nQ0ROQ29uZmlnRFRPLnVybF8yMDBfaW1hZ2UgPSBgJHtlbnZpcm9ubWVudC5DRE5fVVJMfSR7dGhpcy5pZF9zaG9wfS9jczIwMC1gO1xuICAgIGltZ0NETkNvbmZpZ0RUTy51cmxfNDAwX2ltYWdlID0gYCR7ZW52aXJvbm1lbnQuQ0ROX1VSTH0ke3RoaXMuaWRfc2hvcH0vY3M0MDAtYDtcbiAgICBpbWdDRE5Db25maWdEVE8udXJsXzgwMF9pbWFnZSA9IGAke2Vudmlyb25tZW50LkNETl9VUkx9JHt0aGlzLmlkX3Nob3B9L2NzODAwLWA7XG5cbiAgICB0aGlzLmltZ0V4dGVybmFsQ29uZmlnID0gbmV3IEltZ01hbmFnZXJDb25maWdEdG8oKTtcbiAgICB0aGlzLmltZ0V4dGVybmFsQ29uZmlnLmFwaSA9IGFwaUR0bztcbiAgICB0aGlzLmltZ0V4dGVybmFsQ29uZmlnLmltZ0NETkNvbmZpZyA9IGltZ0NETkNvbmZpZ0RUTztcblxuICAgIGNvbnN0IHN1YlNob3BDYXRlZ29yeSA9IHRoaXMuZ2V0U2hvcENhdGVnb3J5KCkuc3Vic2NyaWJlKHNob3AgPT4ge1xuICAgICAgaWYgKHNob3AgJiYgc2hvcFsnY2F0ZWdvcnknXSkge1xuICAgICAgICB0aGlzLmltZ0V4dGVybmFsQ29uZmlnLmFwaS5zaG9wX2NhdGVnb3J5ID0gc2hvcFsnY2F0ZWdvcnknXTtcbiAgICAgIH1cbiAgICB9KTtcbiAgICB0aGlzLnN1YnNjcmlwdGlvbnMucHVzaChzdWJTaG9wQ2F0ZWdvcnkpO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRTaG9wQ2F0ZWdvcnkoKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldChgJHtlbnZpcm9ubWVudC53aXppX2FwaX0vc2hvcHMvJHt0aGlzLmlkX3Nob3B9YCwgdGhpcy5nZXRPcHRpb25zSGVhZGVyc1dpdGhCZWFyZXIoKSk7XG4gIH1cblxuICBwcml2YXRlIGdldE9wdGlvbnNIZWFkZXJzV2l0aEJlYXJlcigpIHtcbiAgICBjb25zdCBoZWFkZXIgPSB7IGhlYWRlcnM6IG5ldyBIdHRwSGVhZGVycyh7XG4gICAgICBBdXRob3JpemF0aW9uOiAnQmVhcmVyICcgKyB0aGlzLnRva2VuX3Nob3BcbiAgICAgIH0pXG4gICAgfTtcbiAgICByZXR1cm4gaGVhZGVyO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKSB7XG4gICAgdGhpcy5zdWJzY3JpcHRpb25zLmZvckVhY2goc3ViID0+IHN1Yi51bnN1YnNjcmliZSgpKTtcbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cImluZm8tYnVsbGVcIj5cbiAgPHAgY2xhc3M9XCJpbmZvLWJ1bGxlLWNvbnRlbnRcIiBbaW5uZXJIVE1MXT1cIidJbWdNYW5hZ2VyLndlYkVsZW1lbnQuaW5mb0J1bGxlJyB8IHRyYW5zbGF0ZVwiPjwvcD5cblxuICA8bmctY29udGFpbmVyICpuZ0lmPVwiaW1nTWFuYWdlckRpc3BsYXlDb25maWcucGFnZWZpY2hlUHJvZHVjdCAmJiBpc1Bob3Rvc1RhYlwiPlxuICAgIDxoMyBjbGFzcz1cIndpemljc3Mtc291cy10aXRyZVwiPnt7J0ltZ01hbmFnZXIud2ViRWxlbWVudC5waG90b3NUaXRsZScgfCB0cmFuc2xhdGUgfX08L2gzPlxuICA8L25nLWNvbnRhaW5lcj5cblxuICA8bmctY29udGFpbmVyICpuZ0lmPVwiIWxvYWRpbmcgJiYgaWRfc2hvcCAmJiBpbWdNYW5hZ2VyRGlzcGxheUNvbmZpZ1wiPlxuXG4gICAgPHAgY2xhc3M9XCJpbWctbWFuYWdlci1vcGVuXCIgKm5nSWY9XCJpbWdNYW5hZ2VyRGlzcGxheUNvbmZpZy5kaXNwbGF5QnRuICYmIGlzUGhvdG9zVGFiXCI+XG4gICAgICA8YSAoY2xpY2spPVwib3BlbigpXCI+e3snSW1nTWFuYWdlci53ZWJFbGVtZW50Lk9wZW5CdG4nIHwgdHJhbnNsYXRlIH19PC9hPlxuICAgIDwvcD5cblxuICAgIDxkaXYgY2xhc3M9XCJpbWdNYW5hZ2VyQm94XCI+XG4gICAgICA8d3otaW1nLW1hbmFnZXJcbiAgICAgICAgI3d6SW1nTWFuYWdlclxuICAgICAgICBbc3RhdGVEaXNwbGF5ZWRdPVwiaW1nTWFuYWdlckRpc3BsYXlDb25maWcuc3RhdGVEaXNwbGF5ZWRcIlxuICAgICAgICBbbXVsdGlwbGVJbWdNb2RlXT1cImltZ01hbmFnZXJEaXNwbGF5Q29uZmlnLm11bHRpcGxlSW1nTW9kZVwiXG4gICAgICAgIFtzaG93SW1nTWFuYWdlck1vZHVsZV09XCJpbWdNYW5hZ2VyRGlzcGxheUNvbmZpZy5zaG93SW1nTWFuYWdlck1vZHVsZSAmJiBvcGVuSW1nTWFuYWdlclwiXG4gICAgICAgIFtzaG93U2VsZWN0aW9uXT1cImltZ01hbmFnZXJEaXNwbGF5Q29uZmlnLnNob3dTZWxlY3Rpb25cIlxuICAgICAgICBbZXh0ZXJuYWxDb25maWddPVwiaW1nRXh0ZXJuYWxDb25maWdcIlxuICAgICAgICAoaW1nTWFuYWdlckNsb3NlZCk9XCJvbkltZ01hbmFnZXJDbG9zZWQoKVwiPlxuICAgICAgPC93ei1pbWctbWFuYWdlcj5cbiAgICA8L2Rpdj5cbiAgPC9uZy1jb250YWluZXI+XG48L2Rpdj4iXX0=
@@ -0,0 +1,47 @@
1
+ import { CommonModule } from '@angular/common';
2
+ import { HttpClientModule } from '@angular/common/http';
3
+ import { NgModule } from '@angular/core';
4
+ import { TranslateModule } from '@ngx-translate/core';
5
+ import { WzImgManagerModule } from 'dist/@wizishop/img-manager';
6
+ import { ImgManagerWebElementComponent } from './img-manager-web-element.component';
7
+ import { AuthCredentialsService } from './services/auth-credentials.service';
8
+ import { EventService } from './services/event.service';
9
+ import { FicheProductService } from './services/fiche_products.service';
10
+ import { StorageService } from './services/storage.service';
11
+ import * as i0 from "@angular/core";
12
+ export class ImgManagerWebElementModule {
13
+ }
14
+ ImgManagerWebElementModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: ImgManagerWebElementModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
15
+ ImgManagerWebElementModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.1.3", ngImport: i0, type: ImgManagerWebElementModule, declarations: [ImgManagerWebElementComponent], imports: [CommonModule,
16
+ HttpClientModule,
17
+ WzImgManagerModule,
18
+ TranslateModule], exports: [ImgManagerWebElementComponent] });
19
+ ImgManagerWebElementModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: ImgManagerWebElementModule, providers: [
20
+ StorageService,
21
+ FicheProductService,
22
+ EventService,
23
+ AuthCredentialsService
24
+ ], imports: [CommonModule,
25
+ HttpClientModule,
26
+ WzImgManagerModule,
27
+ TranslateModule] });
28
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: ImgManagerWebElementModule, decorators: [{
29
+ type: NgModule,
30
+ args: [{
31
+ declarations: [ImgManagerWebElementComponent],
32
+ imports: [
33
+ CommonModule,
34
+ HttpClientModule,
35
+ WzImgManagerModule,
36
+ TranslateModule,
37
+ ],
38
+ exports: [ImgManagerWebElementComponent],
39
+ providers: [
40
+ StorageService,
41
+ FicheProductService,
42
+ EventService,
43
+ AuthCredentialsService
44
+ ]
45
+ }]
46
+ }] });
47
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1nLW1hbmFnZXItd2ViLWVsZW1lbnQubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvaW1nLW1hbmFnZXItd2ViLWVsZW1lbnQvc3JjL2xpYi9pbWctbWFuYWdlci13ZWItZWxlbWVudC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3hELE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3RELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ2hFLE9BQU8sRUFBRSw2QkFBNkIsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQ3BGLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQzdFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUN4RCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUN4RSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sNEJBQTRCLENBQUM7O0FBb0I1RCxNQUFNLE9BQU8sMEJBQTBCOzt1SEFBMUIsMEJBQTBCO3dIQUExQiwwQkFBMEIsaUJBZnRCLDZCQUE2QixhQUUxQyxZQUFZO1FBQ1osZ0JBQWdCO1FBQ2hCLGtCQUFrQjtRQUNsQixlQUFlLGFBRVAsNkJBQTZCO3dIQVE1QiwwQkFBMEIsYUFQMUI7UUFDVCxjQUFjO1FBQ2QsbUJBQW1CO1FBQ25CLFlBQVk7UUFDWixzQkFBc0I7S0FDdkIsWUFYQyxZQUFZO1FBQ1osZ0JBQWdCO1FBQ2hCLGtCQUFrQjtRQUNsQixlQUFlOzJGQVVOLDBCQUEwQjtrQkFoQnRDLFFBQVE7bUJBQUM7b0JBQ1IsWUFBWSxFQUFFLENBQUMsNkJBQTZCLENBQUM7b0JBQzdDLE9BQU8sRUFBRTt3QkFDUCxZQUFZO3dCQUNaLGdCQUFnQjt3QkFDaEIsa0JBQWtCO3dCQUNsQixlQUFlO3FCQUNoQjtvQkFDRCxPQUFPLEVBQUUsQ0FBQyw2QkFBNkIsQ0FBQztvQkFDeEMsU0FBUyxFQUFFO3dCQUNULGNBQWM7d0JBQ2QsbUJBQW1CO3dCQUNuQixZQUFZO3dCQUNaLHNCQUFzQjtxQkFDdkI7aUJBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgSHR0cENsaWVudE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBUcmFuc2xhdGVNb2R1bGUgfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcbmltcG9ydCB7IFd6SW1nTWFuYWdlck1vZHVsZSB9IGZyb20gJ2Rpc3QvQHdpemlzaG9wL2ltZy1tYW5hZ2VyJztcbmltcG9ydCB7IEltZ01hbmFnZXJXZWJFbGVtZW50Q29tcG9uZW50IH0gZnJvbSAnLi9pbWctbWFuYWdlci13ZWItZWxlbWVudC5jb21wb25lbnQnO1xuaW1wb3J0IHsgQXV0aENyZWRlbnRpYWxzU2VydmljZSB9IGZyb20gJy4vc2VydmljZXMvYXV0aC1jcmVkZW50aWFscy5zZXJ2aWNlJztcbmltcG9ydCB7IEV2ZW50U2VydmljZSB9IGZyb20gJy4vc2VydmljZXMvZXZlbnQuc2VydmljZSc7XG5pbXBvcnQgeyBGaWNoZVByb2R1Y3RTZXJ2aWNlIH0gZnJvbSAnLi9zZXJ2aWNlcy9maWNoZV9wcm9kdWN0cy5zZXJ2aWNlJztcbmltcG9ydCB7IFN0b3JhZ2VTZXJ2aWNlIH0gZnJvbSAnLi9zZXJ2aWNlcy9zdG9yYWdlLnNlcnZpY2UnO1xuXG5cblxuQE5nTW9kdWxlKHtcbiAgZGVjbGFyYXRpb25zOiBbSW1nTWFuYWdlcldlYkVsZW1lbnRDb21wb25lbnRdLFxuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIEh0dHBDbGllbnRNb2R1bGUsXG4gICAgV3pJbWdNYW5hZ2VyTW9kdWxlLFxuICAgIFRyYW5zbGF0ZU1vZHVsZSxcbiAgXSxcbiAgZXhwb3J0czogW0ltZ01hbmFnZXJXZWJFbGVtZW50Q29tcG9uZW50XSxcbiAgcHJvdmlkZXJzOiBbXG4gICAgU3RvcmFnZVNlcnZpY2UsXG4gICAgRmljaGVQcm9kdWN0U2VydmljZSxcbiAgICBFdmVudFNlcnZpY2UsXG4gICAgQXV0aENyZWRlbnRpYWxzU2VydmljZVxuICBdXG59KVxuZXhwb3J0IGNsYXNzIEltZ01hbmFnZXJXZWJFbGVtZW50TW9kdWxlIHsgfVxuIl19
@@ -0,0 +1,43 @@
1
+ import { Injectable } from '@angular/core';
2
+ import { environment } from '../environments/environment';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "./storage.service";
5
+ export class AuthCredentialsService {
6
+ constructor(storage) {
7
+ this.storage = storage;
8
+ this.credentials = null;
9
+ this.credentials$ = this.storage.subscribe(environment.wiziApiCredentialsKey);
10
+ }
11
+ get() {
12
+ if (this.credentials) {
13
+ return Promise.resolve(this.credentials);
14
+ }
15
+ return this.storage.get(environment.wiziApiCredentialsKey).then(token => {
16
+ this.credentials = token;
17
+ return this.credentials;
18
+ });
19
+ }
20
+ set(credentials) {
21
+ return this.storage.set(environment.wiziApiCredentialsKey, credentials).then(set => {
22
+ if (set) {
23
+ this.credentials = credentials;
24
+ }
25
+ return set;
26
+ });
27
+ }
28
+ remove() {
29
+ return this.storage.remove(environment.wiziApiCredentialsKey).then(removed => {
30
+ if (removed) {
31
+ this.credentials = null;
32
+ }
33
+ return removed;
34
+ });
35
+ }
36
+ }
37
+ AuthCredentialsService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: AuthCredentialsService, deps: [{ token: i1.StorageService }], target: i0.ɵɵFactoryTarget.Injectable });
38
+ AuthCredentialsService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: AuthCredentialsService });
39
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: AuthCredentialsService, decorators: [{
40
+ type: Injectable
41
+ }], ctorParameters: function () { return [{ type: i1.StorageService }]; } });
42
+ ;
43
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aC1jcmVkZW50aWFscy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvaW1nLW1hbmFnZXItd2ViLWVsZW1lbnQvc3JjL2xpYi9zZXJ2aWNlcy9hdXRoLWNyZWRlbnRpYWxzLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUzQyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sNkJBQTZCLENBQUM7OztBQUkxRCxNQUFNLE9BQU8sc0JBQXNCO0lBS2pDLFlBQW9CLE9BQXVCO1FBQXZCLFlBQU8sR0FBUCxPQUFPLENBQWdCO1FBSm5DLGdCQUFXLEdBQTJCLElBQUksQ0FBQztRQUtqRCxJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFrQixXQUFXLENBQUMscUJBQXFCLENBQUMsQ0FBQztJQUNqRyxDQUFDO0lBRUQsR0FBRztRQUNELElBQUksSUFBSSxDQUFDLFdBQVcsRUFBRTtZQUNwQixPQUFPLE9BQU8sQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1NBQzFDO1FBQ0QsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBUyxXQUFXLENBQUMscUJBQXFCLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEVBQUU7WUFDOUUsSUFBSSxDQUFDLFdBQVcsR0FBRyxLQUFLLENBQUM7WUFFekIsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDO1FBQzFCLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELEdBQUcsQ0FBQyxXQUE0QjtRQUM5QixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLFdBQVcsQ0FBQyxxQkFBcUIsRUFBRSxXQUFXLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUU7WUFDakYsSUFBSSxHQUFHLEVBQUU7Z0JBQ1AsSUFBSSxDQUFDLFdBQVcsR0FBRyxXQUFXLENBQUM7YUFDaEM7WUFDRCxPQUFPLEdBQUcsQ0FBQztRQUNiLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELE1BQU07UUFDSixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsRUFBRTtZQUMzRSxJQUFJLE9BQU8sRUFBRTtnQkFDWCxJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQzthQUN6QjtZQUNELE9BQU8sT0FBTyxDQUFDO1FBQ2pCLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzs7bUhBcENVLHNCQUFzQjt1SEFBdEIsc0JBQXNCOzJGQUF0QixzQkFBc0I7a0JBRGxDLFVBQVU7O0FBNkNWLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IGVudmlyb25tZW50IH0gZnJvbSAnLi4vZW52aXJvbm1lbnRzL2Vudmlyb25tZW50JztcbmltcG9ydCB7IFN0b3JhZ2VTZXJ2aWNlIH0gZnJvbSAnLi9zdG9yYWdlLnNlcnZpY2UnO1xuXG5ASW5qZWN0YWJsZSgpIC8vIHRvZG9cbmV4cG9ydCBjbGFzcyBBdXRoQ3JlZGVudGlhbHNTZXJ2aWNlIHtcbiAgcHJpdmF0ZSBjcmVkZW50aWFsczogQXV0aENyZWRlbnRpYWxzIHwgbnVsbCA9IG51bGw7XG5cbiAgY3JlZGVudGlhbHMkO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgc3RvcmFnZTogU3RvcmFnZVNlcnZpY2UpIHtcbiAgICB0aGlzLmNyZWRlbnRpYWxzJCA9IHRoaXMuc3RvcmFnZS5zdWJzY3JpYmU8QXV0aENyZWRlbnRpYWxzPihlbnZpcm9ubWVudC53aXppQXBpQ3JlZGVudGlhbHNLZXkpO1xuICB9XG5cbiAgZ2V0KCk6IFByb21pc2U8QXV0aENyZWRlbnRpYWxzIHwgbnVsbD4ge1xuICAgIGlmICh0aGlzLmNyZWRlbnRpYWxzKSB7XG4gICAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKHRoaXMuY3JlZGVudGlhbHMpO1xuICAgIH1cbiAgICByZXR1cm4gdGhpcy5zdG9yYWdlLmdldDxzdHJpbmc+KGVudmlyb25tZW50LndpemlBcGlDcmVkZW50aWFsc0tleSkudGhlbih0b2tlbiA9PiB7XG4gICAgICB0aGlzLmNyZWRlbnRpYWxzID0gdG9rZW47XG5cbiAgICAgIHJldHVybiB0aGlzLmNyZWRlbnRpYWxzO1xuICAgIH0pO1xuICB9XG5cbiAgc2V0KGNyZWRlbnRpYWxzOiBBdXRoQ3JlZGVudGlhbHMpOiBQcm9taXNlPGJvb2xlYW4+IHtcbiAgICByZXR1cm4gdGhpcy5zdG9yYWdlLnNldChlbnZpcm9ubWVudC53aXppQXBpQ3JlZGVudGlhbHNLZXksIGNyZWRlbnRpYWxzKS50aGVuKHNldCA9PiB7XG4gICAgICBpZiAoc2V0KSB7XG4gICAgICAgIHRoaXMuY3JlZGVudGlhbHMgPSBjcmVkZW50aWFscztcbiAgICAgIH1cbiAgICAgIHJldHVybiBzZXQ7XG4gICAgfSk7XG4gIH1cblxuICByZW1vdmUoKTogUHJvbWlzZTxib29sZWFuPiB7XG4gICAgcmV0dXJuIHRoaXMuc3RvcmFnZS5yZW1vdmUoZW52aXJvbm1lbnQud2l6aUFwaUNyZWRlbnRpYWxzS2V5KS50aGVuKHJlbW92ZWQgPT4ge1xuICAgICAgaWYgKHJlbW92ZWQpIHtcbiAgICAgICAgdGhpcy5jcmVkZW50aWFscyA9IG51bGw7XG4gICAgICB9XG4gICAgICByZXR1cm4gcmVtb3ZlZDtcbiAgICB9KTtcbiAgfVxufVxuXG5leHBvcnQgaW50ZXJmYWNlIEF1dGhDcmVkZW50aWFscyB7XG4gIHRva2VuOiBzdHJpbmc7XG4gIHVzZXJfaWQ6IG51bWJlcjtcbiAgYWNjb3VudF9pZDogbnVtYmVyO1xuICBzaG9wX2lkOiBudW1iZXI7XG59O1xuIl19
@@ -0,0 +1,37 @@
1
+ import { Injectable } from '@angular/core';
2
+ import { fromEvent } from 'rxjs';
3
+ import { environment } from '../environments/environment';
4
+ import * as i0 from "@angular/core";
5
+ export class EventService {
6
+ constructor() { }
7
+ sendImgSelectedToPage(file) {
8
+ const sendedFile = {
9
+ ...file,
10
+ cdn_img_src: ''
11
+ };
12
+ if (sendedFile) {
13
+ sendedFile.cdn_img_src = `${environment.CDN_URL}${file.id_shop}/`;
14
+ }
15
+ const value = {
16
+ detail: {
17
+ sendedFile,
18
+ "from": this.emitter
19
+ }
20
+ };
21
+ const event = new CustomEvent('imgSelected', value);
22
+ const imgManagerModule = document.getElementById('imgManagerModule');
23
+ imgManagerModule?.dispatchEvent(event);
24
+ }
25
+ pageAskForImg() {
26
+ return fromEvent(document.getElementById('imgManagerModule'), "openImgManager");
27
+ }
28
+ setEmitter(emitter) {
29
+ this.emitter = emitter;
30
+ }
31
+ }
32
+ EventService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: EventService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
33
+ EventService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: EventService });
34
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: EventService, decorators: [{
35
+ type: Injectable
36
+ }], ctorParameters: function () { return []; } });
37
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXZlbnQuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2ltZy1tYW5hZ2VyLXdlYi1lbGVtZW50L3NyYy9saWIvc2VydmljZXMvZXZlbnQuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTNDLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDakMsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLDZCQUE2QixDQUFDOztBQUcxRCxNQUFNLE9BQU8sWUFBWTtJQU12QixnQkFBZ0IsQ0FBQztJQUVqQixxQkFBcUIsQ0FBQyxJQUFvQjtRQUN4QyxNQUFNLFVBQVUsR0FBRztZQUNqQixHQUFHLElBQUk7WUFDUCxXQUFXLEVBQUUsRUFBRTtTQUNoQixDQUFDO1FBQ0YsSUFBSSxVQUFVLEVBQUU7WUFDZCxVQUFVLENBQUMsV0FBVyxHQUFHLEdBQUcsV0FBVyxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsT0FBTyxHQUFHLENBQUM7U0FDbkU7UUFFRCxNQUFNLEtBQUssR0FBRztZQUNFLE1BQU0sRUFBRTtnQkFDTixVQUFVO2dCQUNWLE1BQU0sRUFBRSxJQUFJLENBQUMsT0FBTzthQUNyQjtTQUNGLENBQUM7UUFDaEIsTUFBTSxLQUFLLEdBQUcsSUFBSSxXQUFXLENBQUMsYUFBYSxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQ3BELE1BQU0sZ0JBQWdCLEdBQUUsUUFBUSxDQUFDLGNBQWMsQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO1FBQ3BFLGdCQUFnQixFQUFFLGFBQWEsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUN6QyxDQUFDO0lBRUQsYUFBYTtRQUNYLE9BQU8sU0FBUyxDQUFNLFFBQVEsQ0FBQyxjQUFjLENBQUMsa0JBQWtCLENBQVEsRUFBRSxnQkFBZ0IsQ0FBQyxDQUFDO0lBQzlGLENBQUM7SUFFRCxVQUFVLENBQUMsT0FBZTtRQUN4QixJQUFJLENBQUMsT0FBTyxHQUFHLE9BQU8sQ0FBQztJQUN6QixDQUFDOzt5R0FsQ1UsWUFBWTs2R0FBWixZQUFZOzJGQUFaLFlBQVk7a0JBRHhCLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBJbWdQaWN0dXJlRFRPIH0gZnJvbSAnQHdpemlzaG9wL2ltZy1tYW5hZ2VyJztcbmltcG9ydCB7IGZyb21FdmVudCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgZW52aXJvbm1lbnQgfSBmcm9tICcuLi9lbnZpcm9ubWVudHMvZW52aXJvbm1lbnQnO1xuXG5ASW5qZWN0YWJsZSgpIC8vIHRvZG9cbmV4cG9ydCBjbGFzcyBFdmVudFNlcnZpY2Uge1xuXG4gIC8vIFNvbWV0aW1lcywgdGhlcmUgYXJlIG11bHRpcGxlIGltZyBtYW5hZ2VyIHRoYXQgbGlzdGVuIGF0IHRoZSBzYW1lIHRpbWUgYXQgaW1nU2VsZWN0ZWQgZXZlbnRcbiAgLy8gSXQgdXNlIGJ5IHRoZSBsaXN0ZW5lciwgdG8ga25vdyBpZiB0aGUgZXZlbnQgaXMgZm9yIGhpbVxuICBlbWl0dGVyOiBzdHJpbmc7XG5cbiAgY29uc3RydWN0b3IoKSB7IH1cblxuICBzZW5kSW1nU2VsZWN0ZWRUb1BhZ2UoZmlsZSA6IEltZ1BpY3R1cmVEVE8pIHtcbiAgICBjb25zdCBzZW5kZWRGaWxlID0ge1xuICAgICAgLi4uZmlsZSxcbiAgICAgIGNkbl9pbWdfc3JjOiAnJ1xuICAgIH07XG4gICAgaWYgKHNlbmRlZEZpbGUpIHtcbiAgICAgIHNlbmRlZEZpbGUuY2RuX2ltZ19zcmMgPSBgJHtlbnZpcm9ubWVudC5DRE5fVVJMfSR7ZmlsZS5pZF9zaG9wfS9gO1xuICAgIH1cblxuICAgIGNvbnN0IHZhbHVlID0ge1xuICAgICAgICAgICAgICAgICAgICBkZXRhaWw6IHtcbiAgICAgICAgICAgICAgICAgICAgICBzZW5kZWRGaWxlLFxuICAgICAgICAgICAgICAgICAgICAgIFwiZnJvbVwiOiB0aGlzLmVtaXR0ZXJcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgfTtcbiAgICBjb25zdCBldmVudCA9IG5ldyBDdXN0b21FdmVudCgnaW1nU2VsZWN0ZWQnLCB2YWx1ZSk7XG4gICAgY29uc3QgaW1nTWFuYWdlck1vZHVsZT0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2ltZ01hbmFnZXJNb2R1bGUnKTtcbiAgICBpbWdNYW5hZ2VyTW9kdWxlPy5kaXNwYXRjaEV2ZW50KGV2ZW50KTtcbiAgfVxuXG4gIHBhZ2VBc2tGb3JJbWcoKSB7XG4gICAgcmV0dXJuIGZyb21FdmVudDxhbnk+KGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdpbWdNYW5hZ2VyTW9kdWxlJykgYXMgYW55LCBcIm9wZW5JbWdNYW5hZ2VyXCIpO1xuICB9XG5cbiAgc2V0RW1pdHRlcihlbWl0dGVyOiBzdHJpbmcpIHtcbiAgICB0aGlzLmVtaXR0ZXIgPSBlbWl0dGVyO1xuICB9XG59Il19