@pobuca/email-builder 1.0.1 → 1.1.0

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 (135) hide show
  1. package/README.md +1 -1
  2. package/bundles/pobuca-email-builder.umd.js +4464 -4414
  3. package/bundles/pobuca-email-builder.umd.js.map +1 -1
  4. package/bundles/pobuca-email-builder.umd.min.js +1 -1
  5. package/bundles/pobuca-email-builder.umd.min.js.map +1 -1
  6. package/esm2015/lib/classes/DefaultEmail.js +54 -53
  7. package/esm2015/lib/classes/Elements.js +229 -229
  8. package/esm2015/lib/classes/Structure.js +89 -89
  9. package/esm2015/lib/components/block/block.component.js +89 -89
  10. package/esm2015/lib/components/block-settings/block-settings.component.js +53 -53
  11. package/esm2015/lib/components/builder-container/builder-container.component.js +114 -114
  12. package/esm2015/lib/components/dialog.component.js +30 -30
  13. package/esm2015/lib/components/general-settings/general-settings.component.js +25 -25
  14. package/esm2015/lib/components/import-dialog/import-dialog.component.js +62 -62
  15. package/esm2015/lib/components/preview.component.js +89 -89
  16. package/esm2015/lib/components/structure/structure.component.js +163 -163
  17. package/esm2015/lib/components/structure-settings/structure-settings.component.js +31 -31
  18. package/esm2015/lib/components/template-list-dialog/template-list-dialog.component.js +45 -45
  19. package/esm2015/lib/directives/dynamic-component.directive.js +46 -46
  20. package/esm2015/lib/elements/abstract-block.js +23 -23
  21. package/esm2015/lib/elements/button/button.component.js +29 -29
  22. package/esm2015/lib/elements/divider/divider.component.js +30 -30
  23. package/esm2015/lib/elements/image/image.component.js +54 -54
  24. package/esm2015/lib/elements/social/social.component.js +42 -42
  25. package/esm2015/lib/elements/spacer/spacer.component.js +30 -30
  26. package/esm2015/lib/elements/text-element/text-element.component.js +80 -80
  27. package/esm2015/lib/groups/align.js +79 -79
  28. package/esm2015/lib/groups/back-repeat.js +55 -55
  29. package/esm2015/lib/groups/border.js +102 -102
  30. package/esm2015/lib/groups/color.js +139 -139
  31. package/esm2015/lib/groups/direction.js +63 -63
  32. package/esm2015/lib/groups/font-styles.js +127 -112
  33. package/esm2015/lib/groups/gaps.js +45 -45
  34. package/esm2015/lib/groups/line-height.js +68 -68
  35. package/esm2015/lib/groups/link.js +67 -67
  36. package/esm2015/lib/groups/margin.js +45 -45
  37. package/esm2015/lib/groups/padding.js +53 -53
  38. package/esm2015/lib/groups/upload-image.js +112 -112
  39. package/esm2015/lib/groups/width-height.js +94 -94
  40. package/esm2015/lib/interceptors/pb-interceptor.interceptor.js +51 -51
  41. package/esm2015/lib/interfaces/interfaces.js +13 -13
  42. package/esm2015/lib/pb-email-builder.component.js +258 -246
  43. package/esm2015/lib/pb-email-builder.module.js +291 -291
  44. package/esm2015/lib/pb-email-builder.service.js +134 -134
  45. package/esm2015/lib/pipes/slugify.pipe.js +39 -39
  46. package/esm2015/lib/services/internals/pb-email-object-store/pb-email-object-store.service.js +175 -165
  47. package/esm2015/lib/services/internals/user-interfaces/user-interface.service.js +122 -122
  48. package/esm2015/lib/services/pb-storage/FreeUsersStorage.class.js +11 -11
  49. package/esm2015/lib/services/pb-storage/index.js +7 -7
  50. package/esm2015/lib/services/pb-storage/pb-storage.service.js +79 -79
  51. package/esm2015/lib/services/user-image-uploader-service/free-users-image-uploader.service.js +26 -26
  52. package/esm2015/lib/services/user-image-uploader-service/index.js +8 -8
  53. package/esm2015/lib/services/user-image-uploader-service/paid-users-image-uploader.service.js +30 -30
  54. package/esm2015/lib/services/user-image-uploader-service/upload-bottom-sheet-dialog/upload-bottom-sheet-dialog.component.js +112 -112
  55. package/esm2015/lib/services/user-image-uploader-service/upload-image-gallery/upload-image-gallery.component.js +91 -91
  56. package/esm2015/lib/services/user-image-uploader-service/user-image-uploader.service.js +26 -26
  57. package/esm2015/lib/services/user-middleware-service/FreeUsersMiddleware.js +31 -31
  58. package/esm2015/lib/services/user-middleware-service/PaidUsersMiddleware.js +12 -12
  59. package/esm2015/lib/services/user-middleware-service/index.js +8 -8
  60. package/esm2015/lib/services/user-middleware-service/pb-middlewares.service.js +195 -195
  61. package/esm2015/lib/services/user-rest-api-service/free-users-rest-api.service.js +16 -16
  62. package/esm2015/lib/services/user-rest-api-service/index.js +7 -7
  63. package/esm2015/lib/services/user-rest-api-service/user-rest-api.service.js +116 -116
  64. package/esm2015/lib/tokens/private-tokens.js +17 -17
  65. package/esm2015/lib/tokens/tokens.js +159 -159
  66. package/esm2015/lib/utils.js +147 -147
  67. package/esm2015/pobuca-email-builder.js +42 -42
  68. package/esm2015/public_api.js +26 -26
  69. package/fesm2015/pobuca-email-builder.js +4206 -4168
  70. package/fesm2015/pobuca-email-builder.js.map +1 -1
  71. package/lib/classes/DefaultEmail.d.ts +10 -9
  72. package/lib/classes/Elements.d.ts +62 -62
  73. package/lib/classes/Structure.d.ts +11 -11
  74. package/lib/components/block/block.component.d.ts +25 -25
  75. package/lib/components/block-settings/block-settings.component.d.ts +18 -18
  76. package/lib/components/builder-container/builder-container.component.d.ts +36 -36
  77. package/lib/components/dialog.component.d.ts +10 -10
  78. package/lib/components/general-settings/general-settings.component.d.ts +6 -6
  79. package/lib/components/import-dialog/import-dialog.component.d.ts +16 -16
  80. package/lib/components/preview.component.d.ts +18 -18
  81. package/lib/components/structure/structure.component.d.ts +43 -43
  82. package/lib/components/structure-settings/structure-settings.component.d.ts +9 -9
  83. package/lib/components/template-list-dialog/template-list-dialog.component.d.ts +15 -15
  84. package/lib/directives/dynamic-component.directive.d.ts +13 -13
  85. package/lib/elements/abstract-block.d.ts +8 -8
  86. package/lib/elements/button/button.component.d.ts +18 -18
  87. package/lib/elements/divider/divider.component.d.ts +10 -10
  88. package/lib/elements/image/image.component.d.ts +19 -19
  89. package/lib/elements/social/social.component.d.ts +21 -21
  90. package/lib/elements/spacer/spacer.component.d.ts +5 -5
  91. package/lib/elements/text-element/text-element.component.d.ts +52 -52
  92. package/lib/groups/align.d.ts +17 -17
  93. package/lib/groups/back-repeat.d.ts +8 -8
  94. package/lib/groups/border.d.ts +13 -13
  95. package/lib/groups/color.d.ts +26 -26
  96. package/lib/groups/direction.d.ts +13 -13
  97. package/lib/groups/font-styles.d.ts +21 -17
  98. package/lib/groups/gaps.d.ts +7 -7
  99. package/lib/groups/line-height.d.ts +12 -12
  100. package/lib/groups/link.d.ts +11 -11
  101. package/lib/groups/margin.d.ts +8 -8
  102. package/lib/groups/padding.d.ts +8 -8
  103. package/lib/groups/upload-image.d.ts +19 -19
  104. package/lib/groups/width-height.d.ts +19 -19
  105. package/lib/interceptors/pb-interceptor.interceptor.d.ts +10 -10
  106. package/lib/interfaces/interfaces.d.ts +430 -422
  107. package/lib/pb-email-builder.component.d.ts +67 -67
  108. package/lib/pb-email-builder.module.d.ts +51 -51
  109. package/lib/pb-email-builder.service.d.ts +83 -83
  110. package/lib/pipes/slugify.pipe.d.ts +9 -9
  111. package/lib/services/internals/pb-email-object-store/pb-email-object-store.service.d.ts +50 -50
  112. package/lib/services/internals/user-interfaces/user-interface.service.d.ts +46 -46
  113. package/lib/services/pb-storage/FreeUsersStorage.class.d.ts +6 -6
  114. package/lib/services/pb-storage/index.d.ts +2 -2
  115. package/lib/services/pb-storage/pb-storage.service.d.ts +54 -54
  116. package/lib/services/user-image-uploader-service/free-users-image-uploader.service.d.ts +12 -12
  117. package/lib/services/user-image-uploader-service/index.d.ts +3 -3
  118. package/lib/services/user-image-uploader-service/paid-users-image-uploader.service.d.ts +14 -14
  119. package/lib/services/user-image-uploader-service/upload-bottom-sheet-dialog/upload-bottom-sheet-dialog.component.d.ts +28 -28
  120. package/lib/services/user-image-uploader-service/upload-image-gallery/upload-image-gallery.component.d.ts +27 -27
  121. package/lib/services/user-image-uploader-service/user-image-uploader.service.d.ts +26 -26
  122. package/lib/services/user-middleware-service/FreeUsersMiddleware.d.ts +15 -15
  123. package/lib/services/user-middleware-service/PaidUsersMiddleware.d.ts +7 -7
  124. package/lib/services/user-middleware-service/index.d.ts +3 -3
  125. package/lib/services/user-middleware-service/pb-middlewares.service.d.ts +190 -190
  126. package/lib/services/user-rest-api-service/free-users-rest-api.service.d.ts +10 -10
  127. package/lib/services/user-rest-api-service/index.d.ts +2 -2
  128. package/lib/services/user-rest-api-service/user-rest-api.service.d.ts +82 -82
  129. package/lib/tokens/private-tokens.d.ts +5 -5
  130. package/lib/tokens/tokens.d.ts +70 -70
  131. package/lib/utils.d.ts +88 -88
  132. package/package.json +8 -3
  133. package/pobuca-email-builder.d.ts +42 -42
  134. package/pobuca-email-builder.metadata.json +1 -1
  135. package/public_api.d.ts +16 -16
@@ -1,134 +1,134 @@
1
- /*
2
- * Copyright (c) 2024 Pobuca.
3
- * All rights reserved.
4
- */
5
- import { Injectable, Inject } from '@angular/core';
6
- import { EMPTY } from 'rxjs';
7
- import { catchError, switchMap, shareReplay, tap, finalize } from 'rxjs/operators';
8
- import { PB_CONFIG, PB_DEFAULT_CONFIG } from './tokens/tokens';
9
- import { PbEmailObjectStoreService } from './services/internals/pb-email-object-store/pb-email-object-store.service';
10
- import { PbUserMiddlewaresService } from './services/user-middleware-service/pb-middlewares.service';
11
- import { PbUserInterfaceService } from './services/internals/user-interfaces/user-interface.service';
12
- /**
13
- * @deprecated Soon it will be removed
14
- * @internal
15
- */
16
- export class PbEmailBuilderService {
17
- constructor(config,
18
- // @Inject(PB_GOOGLE_FONTS) private googleFonts: string[],
19
- emailObjectStore, pbMiddleWares, pbUserInterface // private _http: HttpClient,
20
- ) {
21
- this.config = config;
22
- this.emailObjectStore = emailObjectStore;
23
- this.pbMiddleWares = pbMiddleWares;
24
- this.pbUserInterface = pbUserInterface;
25
- // private _template = new BehaviorSubject<string>('');
26
- // private _mjml = new BehaviorSubject<string>('');
27
- // private readonly _onSave$ = new Subject();
28
- /**
29
- * @deprecated Please use the new service "UserRestApiService" instead
30
- */
31
- this.modules = new Set();
32
- /**
33
- * @deprecated Please use the new service "UserRestApiService" instead
34
- */
35
- this.customTemplates = new Set();
36
- /**
37
- * @deprecated Please use the new service "UserRestApiService" instead
38
- */
39
- this._mergeTags = new Set();
40
- this.onTemplateCreated$ = this.emailObjectStore.onTemplateCreated$.pipe(shareReplay());
41
- /**
42
- * @deprecated Use onTemplateCreated$ instead
43
- */
44
- this.onSave$ = this.onTemplateCreated$;
45
- /**
46
- * @deprecated Use isLoading$ instead
47
- */
48
- this.isLoading = this.pbUserInterface.activeMatProgress$.asObservable();
49
- this.isLoading$ = this.pbUserInterface.activeMatProgress$.asObservable();
50
- this.config = Object.assign(Object.assign({}, PB_DEFAULT_CONFIG), this.config);
51
- }
52
- /**
53
- * Save current Email Template
54
- */
55
- createHTMLTemplate$() {
56
- this.pbUserInterface.activeMatProgress$.next(true);
57
- return this.emailObjectStore.createHTMLTemplate$().pipe(tap(() => this.pbUserInterface.activeMatProgress$.next(false)), catchError((error) => this.pbMiddleWares.catchError(error).pipe(switchMap(() => {
58
- this.pbUserInterface.notify(error.message);
59
- this.pbUserInterface.activeMatProgress$.next(false);
60
- return EMPTY;
61
- }))), finalize(() => this.pbUserInterface.activeMatProgress$.next(false)));
62
- }
63
- /**
64
- * @deprecated Please use ngb.createHTMLTemplate$() instead
65
- */
66
- saveEmail() {
67
- return this.createHTMLTemplate$();
68
- }
69
- /**
70
- * Get Email as object
71
- */
72
- get Email() {
73
- return this.emailObjectStore.Email;
74
- }
75
- /**
76
- * Set Email saved from database or created with new PBEmail()
77
- */
78
- set Email(newEmail) {
79
- this.emailObjectStore.setEmail(newEmail);
80
- }
81
- /**
82
- * @deprecated Use getTemplateAsObservable$() instead
83
- */
84
- get Template() {
85
- return null;
86
- }
87
- /**
88
- * Set HTML output
89
- */
90
- // set Template(template: string) {
91
- // this._template.next(template);
92
- // }
93
- /**
94
- * @deprecated Use getMjmlAsObservable$() instead
95
- */
96
- get Mjml() {
97
- return null;
98
- }
99
- /**
100
- * Listen Email changes
101
- */
102
- getEmailAsObservable$() {
103
- return this.emailObjectStore.emailAsObservable$;
104
- }
105
- /**
106
- * Listen Template changes
107
- */
108
- getTemplateAsObservable$() {
109
- return this.emailObjectStore.templateAsObservable$;
110
- }
111
- /**
112
- * Listen MJML changes
113
- */
114
- getMjmlAsObservable$() {
115
- return this.emailObjectStore.mjmlAsObservable$;
116
- }
117
- /**
118
- * Listen Email and Template changes
119
- * @deprecated Use onTemplateCreated$ instead
120
- */
121
- onChanges$() {
122
- return this.onTemplateCreated$;
123
- }
124
- }
125
- PbEmailBuilderService.decorators = [
126
- { type: Injectable }
127
- ];
128
- PbEmailBuilderService.ctorParameters = () => [
129
- { type: undefined, decorators: [{ type: Inject, args: [PB_CONFIG,] }] },
130
- { type: PbEmailObjectStoreService },
131
- { type: PbUserMiddlewaresService },
132
- { type: PbUserInterfaceService }
133
- ];
134
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGItZW1haWwtYnVpbGRlci5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvcGItZW1haWwtYnVpbGRlci9zcmMvbGliL3BiLWVtYWlsLWJ1aWxkZXIuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7O0dBR0c7QUFFSCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVuRCxPQUFPLEVBQWMsS0FBSyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxVQUFVLEVBQUUsU0FBUyxFQUFFLFdBQVcsRUFBRSxHQUFHLEVBQUUsUUFBUSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFLbkYsT0FBTyxFQUFFLFNBQVMsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9ELE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLDBFQUEwRSxDQUFDO0FBQ3JILE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLDJEQUEyRCxDQUFDO0FBQ3JHLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDZEQUE2RCxDQUFDO0FBRXJHOzs7R0FHRztBQUVILE1BQU0sT0FBTyxxQkFBcUI7SUErQmhDLFlBQzRCLE1BQW9CO0lBQzlDLDBEQUEwRDtJQUNsRCxnQkFBMkMsRUFDM0MsYUFBdUMsRUFDdkMsZUFBdUMsQ0FBQyw2QkFBNkI7O1FBSm5ELFdBQU0sR0FBTixNQUFNLENBQWM7UUFFdEMscUJBQWdCLEdBQWhCLGdCQUFnQixDQUEyQjtRQUMzQyxrQkFBYSxHQUFiLGFBQWEsQ0FBMEI7UUFDdkMsb0JBQWUsR0FBZixlQUFlLENBQXdCO1FBbkNqRCx1REFBdUQ7UUFDdkQsbURBQW1EO1FBQ25ELDZDQUE2QztRQUU3Qzs7V0FFRztRQUNJLFlBQU8sR0FBRyxJQUFJLEdBQUcsRUFBZSxDQUFDO1FBQ3hDOztXQUVHO1FBQ2Esb0JBQWUsR0FBRyxJ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LHdCQUF3QjtZQUN4QixzQkFBc0IiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogQ29weXJpZ2h0IChjKSAyMDI0IFBvYnVjYS5cbiAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4gKi9cblxuaW1wb3J0IHsgSW5qZWN0YWJsZSwgSW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBIdHRwRXJyb3JSZXNwb25zZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7IE9ic2VydmFibGUsIEVNUFRZIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBjYXRjaEVycm9yLCBzd2l0Y2hNYXAsIHNoYXJlUmVwbGF5LCB0YXAsIGZpbmFsaXplIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5pbXBvcnQgeyBJRm9yUm9vdENvbmYsIElVc2VyTW9kdWxlLCBJVXNlclRlbXBsYXRlIH0gZnJvbSAnLi9pbnRlcmZhY2VzL2ludGVyZmFjZXMnO1xuaW1wb3J0IHsgUEJFbWFpbCB9IGZyb20gJy4vY2xhc3Nlcy9EZWZhdWx0RW1haWwnO1xuXG5pbXBvcnQgeyBQQl9DT05GSUcsIFBCX0RFRkFVTFRfQ09ORklHIH0gZnJvbSAnLi90b2tlbnMvdG9rZW5zJztcbmltcG9ydCB7IFBiRW1haWxPYmplY3RTdG9yZVNlcnZpY2UgfSBmcm9tICcuL3NlcnZpY2VzL2ludGVybmFscy9wYi1lbWFpbC1vYmplY3Qtc3RvcmUvcGItZW1haWwtb2JqZWN0LXN0b3JlLnNlcnZpY2UnO1xuaW1wb3J0IHsgUGJVc2VyTWlkZGxld2FyZXNTZXJ2aWNlIH0gZnJvbSAnLi9zZXJ2aWNlcy91c2VyLW1pZGRsZXdhcmUtc2VydmljZS9wYi1taWRkbGV3YXJlcy5zZXJ2aWNlJztcbmltcG9ydCB7IFBiVXNlckludGVyZmFjZVNlcnZpY2UgfSBmcm9tICcuL3NlcnZpY2VzL2ludGVybmFscy91c2VyLWludGVyZmFjZXMvdXNlci1pbnRlcmZhY2Uuc2VydmljZSc7XG5cbi8qKlxuICogQGRlcHJlY2F0ZWQgU29vbiBpdCB3aWxsIGJlIHJlbW92ZWRcbiAqIEBpbnRlcm5hbFxuICovXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgUGJFbWFpbEJ1aWxkZXJTZXJ2aWNlIHtcbiAgLy8gcHJpdmF0ZSBfdGVtcGxhdGUgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PHN0cmluZz4oJycpO1xuICAvLyBwcml2YXRlIF9tam1sID0gbmV3IEJlaGF2aW9yU3ViamVjdDxzdHJpbmc+KCcnKTtcbiAgLy8gcHJpdmF0ZSByZWFkb25seSBfb25TYXZlJCA9IG5ldyBTdWJqZWN0KCk7XG5cbiAgLyoqXG4gICAqIEBkZXByZWNhdGVkIFBsZWFzZSB1c2UgdGhlIG5ldyBzZXJ2aWNlIFwiVXNlclJlc3RBcGlTZXJ2aWNlXCIgaW5zdGVhZFxuICAgKi9cbiAgcHVibGljIG1vZHVsZXMgPSBuZXcgU2V0PElVc2VyTW9kdWxlPigpO1xuICAvKipcbiAgICogQGRlcHJlY2F0ZWQgUGxlYXNlIHVzZSB0aGUgbmV3IHNlcnZpY2UgXCJVc2VyUmVzdEFwaVNlcnZpY2VcIiBpbnN0ZWFkXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgY3VzdG9tVGVtcGxhdGVzID0gbmV3IFNldDxJVXNlclRlbXBsYXRlPigpO1xuICAvKipcbiAgICogQGRlcHJlY2F0ZWQgUGxlYXNlIHVzZSB0aGUgbmV3IHNlcnZpY2UgXCJVc2VyUmVzdEFwaVNlcnZpY2VcIiBpbnN0ZWFkXG4gICAqL1xuICBwcml2YXRlIF9tZXJnZVRhZ3MgPSBuZXcgU2V0PHN0cmluZz4oKTtcblxuICBwdWJsaWMgcmVhZG9ubHkgb25UZW1wbGF0ZUNyZWF0ZWQkID0gdGhpcy5lbWFpbE9iamVjdFN0b3JlLm9uVGVtcGxhdGVDcmVhdGVkJC5waXBlKHNoYXJlUmVwbGF5KCkpO1xuXG4gIC8qKlxuICAgKiBAZGVwcmVjYXRlZCBVc2Ugb25UZW1wbGF0ZUNyZWF0ZWQkIGluc3RlYWRcbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBvblNhdmUkID0gdGhpcy5vblRlbXBsYXRlQ3JlYXRlZCQ7XG5cbiAgLyoqXG4gICAqIEBkZXByZWNhdGVkIFVzZSBpc0xvYWRpbmckIGluc3RlYWRcbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBpc0xvYWRpbmcgPSB0aGlzLnBiVXNlckludGVyZmFjZS5hY3RpdmVNYXRQcm9ncmVzcyQuYXNPYnNlcnZhYmxlKCk7XG4gIHB1YmxpYyByZWFkb25seSBpc0xvYWRpbmckID0gdGhpcy5wYlVzZXJJbnRlcmZhY2UuYWN0aXZlTWF0UHJvZ3Jlc3MkLmFzT2JzZXJ2YWJsZSgpO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIEBJbmplY3QoUEJfQ09ORklHKSBwdWJsaWMgY29uZmlnOiBJRm9yUm9vdENvbmYsXG4gICAgLy8gQEluamVjdChQQl9HT09HTEVfRk9OVFMpIHByaXZhdGUgZ29vZ2xlRm9udHM6IHN0cmluZ1tdLFxuICAgIHByaXZhdGUgZW1haWxPYmplY3RTdG9yZTogUGJFbWFpbE9iamVjdFN0b3JlU2VydmljZSxcbiAgICBwcml2YXRlIHBiTWlkZGxlV2FyZXM6IFBiVXNlck1pZGRsZXdhcmVzU2VydmljZSxcbiAgICBwcml2YXRlIHBiVXNlckludGVyZmFjZTogUGJVc2VySW50ZXJmYWNlU2VydmljZSAvLyBwcml2YXRlIF9odHRwOiBIdHRwQ2xpZW50LFxuICApIHtcbiAgICB0aGlzLmNvbmZpZyA9IHsgLi4uUEJfREVGQVVMVF9DT05GSUcsIC4uLnRoaXMuY29uZmlnIH07XG4gIH1cblxuICAvKipcbiAgICogU2F2ZSBjdXJyZW50IEVtYWlsIFRlbXBsYXRlXG4gICAqL1xuICBjcmVhdGVIVE1MVGVtcGxhdGUkKCkge1xuICAgIHRoaXMucGJVc2VySW50ZXJmYWNlLmFjdGl2ZU1hdFByb2dyZXNzJC5uZXh0KHRydWUpO1xuICAgIHJldHVybiB0aGlzLmVtYWlsT2JqZWN0U3RvcmUuY3JlYXRlSFRNTFRlbXBsYXRlJCgpLnBpcGUoXG4gICAgICB0YXAoKCkgPT4gdGhpcy5wYlVzZXJJbnRlcmZhY2UuYWN0aXZlTWF0UHJvZ3Jlc3MkLm5leHQoZmFsc2UpKSxcbiAgICAgIGNhdGNoRXJyb3IoKGVycm9yOiBIdHRwRXJyb3JSZXNwb25zZSkgPT5cbiAgICAgICAgdGhpcy5wYk1pZGRsZVdhcmVzLmNhdGNoRXJyb3IoZXJyb3IpLnBpcGUoXG4gICAgICAgICAgc3dpdGNoTWFwKCgpID0+IHtcbiAgICAgICAgICAgIHRoaXMucGJVc2VySW50ZXJmYWNlLm5vdGlmeShlcnJvci5tZXNzYWdlKTtcbiAgICAgICAgICAgIHRoaXMucGJVc2VySW50ZXJmYWNlLmFjdGl2ZU1hdFByb2dyZXNzJC5uZXh0KGZhbHNlKTtcbiAgICAgICAgICAgIHJldHVybiBFTVBUWTtcbiAgICAgICAgICB9KVxuICAgICAgICApXG4gICAgICApLFxuICAgICAgZmluYWxpemUoKCkgPT4gdGhpcy5wYlVzZXJJbnRlcmZhY2UuYWN0aXZlTWF0UHJvZ3Jlc3MkLm5leHQoZmFsc2UpKVxuICAgICk7XG4gIH1cblxuICAvKipcbiAgICogIEBkZXByZWNhdGVkIFBsZWFzZSB1c2UgbmdiLmNyZWF0ZUhUTUxUZW1wbGF0ZSQoKSBpbnN0ZWFkXG4gICAqL1xuICBzYXZlRW1haWwoKSB7XG4gICAgcmV0dXJuIHRoaXMuY3JlYXRlSFRNTFRlbXBsYXRlJCgpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldCBFbWFpbCBhcyBvYmplY3RcbiAgICovXG4gIGdldCBFbWFpbCgpIHtcbiAgICByZXR1cm4gdGhpcy5lbWFpbE9iamVjdFN0b3JlLkVtYWlsO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldCBFbWFpbCBzYXZlZCBmcm9tIGRhdGFiYXNlIG9yIGNyZWF0ZWQgd2l0aCBuZXcgUEJFbWFpbCgpXG4gICAqL1xuICBzZXQgRW1haWwobmV3RW1haWw6IFBCRW1haWwpIHtcbiAgICB0aGlzLmVtYWlsT2JqZWN0U3RvcmUuc2V0RW1haWwobmV3RW1haWwpO1xuICB9XG5cbiAgLyoqXG4gICAqIEBkZXByZWNhdGVkIFVzZSBnZXRUZW1wbGF0ZUFzT2JzZXJ2YWJsZSQoKSBpbnN0ZWFkXG4gICAqL1xuICBnZXQgVGVtcGxhdGUoKSB7XG4gICAgcmV0dXJuIG51bGw7XG4gIH1cbiAgLyoqXG4gICAqIFNldCBIVE1MIG91dHB1dFxuICAgKi9cbiAgLy8gc2V0IFRlbXBsYXRlKHRlbXBsYXRlOiBzdHJpbmcpIHtcbiAgLy8gICB0aGlzLl90ZW1wbGF0ZS5uZXh0KHRlbXBsYXRlKTtcbiAgLy8gfVxuXG4gIC8qKlxuICAgKiBAZGVwcmVjYXRlZCBVc2UgZ2V0TWptbEFzT2JzZXJ2YWJsZSQoKSBpbnN0ZWFkXG4gICAqL1xuICBnZXQgTWptbCgpIHtcbiAgICByZXR1cm4gbnVsbDtcbiAgfVxuXG4gIC8qKlxuICAgKiBMaXN0ZW4gRW1haWwgY2hhbmdlc1xuICAgKi9cbiAgZ2V0RW1haWxBc09ic2VydmFibGUkKCk6IE9ic2VydmFibGU8UEJFbWFpbD4ge1xuICAgIHJldHVybiB0aGlzLmVtYWlsT2JqZWN0U3RvcmUuZW1haWxBc09ic2VydmFibGUkO1xuICB9XG5cbiAgLyoqXG4gICAqIExpc3RlbiBUZW1wbGF0ZSBjaGFuZ2VzXG4gICAqL1xuICBnZXRUZW1wbGF0ZUFzT2JzZXJ2YWJsZSQoKTogT2JzZXJ2YWJsZTxzdHJpbmc+IHtcbiAgICByZXR1cm4gdGhpcy5lbWFpbE9iamVjdFN0b3JlLnRlbXBsYXRlQXNPYnNlcnZhYmxlJDtcbiAgfVxuXG4gIC8qKlxuICAgKiBMaXN0ZW4gTUpNTCBjaGFuZ2VzXG4gICAqL1xuICBnZXRNam1sQXNPYnNlcnZhYmxlJCgpIHtcbiAgICByZXR1cm4gdGhpcy5lbWFpbE9iamVjdFN0b3JlLm1qbWxBc09ic2VydmFibGUkO1xuICB9XG5cbiAgLyoqXG4gICAqIExpc3RlbiBFbWFpbCBhbmQgVGVtcGxhdGUgY2hhbmdlc1xuICAgKiBAZGVwcmVjYXRlZCBVc2Ugb25UZW1wbGF0ZUNyZWF0ZWQkIGluc3RlYWRcbiAgICovXG4gIG9uQ2hhbmdlcyQoKTogT2JzZXJ2YWJsZTxbUEJFbWFpbCwgc3RyaW5nLCBzdHJpbmddPiB7XG4gICAgcmV0dXJuIHRoaXMub25UZW1wbGF0ZUNyZWF0ZWQkO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldCBTZXQgb2YgU3RydWN0dXJlcyBmcm9tIGFzaWRlXG4gICAqL1xuICAvLyBnZXRTaWRlU3RydWN0dXJlcygpOiBTZXQ8SVN0cnVjdHVyZT4ge1xuICAvLyAgIHJldHVybiB0aGlzLl9zdHJ1Y3R1cmVzO1xuICAvLyB9XG5cbiAgLyoqXG4gICAqIEdldCBTZXQgb2YgQmxvY2tzIGZyb20gYXNpZGVcbiAgICovXG4gIC8vIGdldFNpZGVCbG9ja3MoKTogU2V0PFRCbG9ja3M+IHtcbiAgLy8gICByZXR1cm4gdGhpcy5fYmxvY2tzO1xuICAvLyB9XG5cbiAgLyoqXG4gICAqIEdldCBhIFNldCBvZiBmb250cyBmYW1pbHlcbiAgICovXG4gIC8vIGdldCBGb250cygpOiBJRm9udEZhbWlseSB7XG4gIC8vICAgcmV0dXJuIHRoaXMuX2ZvbnRGYW1pbHk7XG4gIC8vIH1cbiAgLy8gc2V0IEZvbnRzKGZvbnRzOiBJRm9udEZhbWlseSkge1xuICAvLyAgIHRoaXMuX2ZvbnRGYW1pbHkgPSBmb250cztcbiAgLy8gfVxuXG4gIC8vIGdldCBGYWxsYmFja0ZvbnRzKCk6IElGb250RmFtaWx5IHtcbiAgLy8gICByZXR1cm4gdGhpcy5fZmFsbGJhY2tGYW1pbHk7XG4gIC8vIH1cbiAgLy8gc2V0IEZhbGxiYWNrRm9udHMoZm9udHM6IElGb250RmFtaWx5KSB7XG4gIC8vICAgdGhpcy5fZmFsbGJhY2tGYW1pbHkgPSBmb250cztcbiAgLy8gfVxuXG4gIC8qKlxuICAgKiBAZGVwcmVjYXRlZCBQbGVhc2UgdXNlIHRoZSBuZXcgc2VydmljZSBcIlVzZXJSZXN0QXBpU2VydmljZVwiIGluc3RlYWRcbiAgICovXG4gIC8vIGdldCBNZXJnZVRhZ3MoKTogU2V0PHN0cmluZz4ge1xuICAvLyAgIHJldHVybiB0aGlzLl9tZXJnZVRhZ3M7XG4gIC8vIH1cblxuICAvLyBzZXQgTWVyZ2VUYWdzKHRhZ3M6IFNldDxzdHJpbmc+KSB7XG4gIC8vICAgdGhpcy5fbWVyZ2VUYWdzID0gdGFncztcbiAgLy8gfVxufVxuIl19
1
+ /*
2
+ * Copyright (c) 2024 Pobuca.
3
+ * All rights reserved.
4
+ */
5
+ import { Injectable, Inject } from '@angular/core';
6
+ import { EMPTY } from 'rxjs';
7
+ import { catchError, switchMap, shareReplay, tap, finalize } from 'rxjs/operators';
8
+ import { PB_CONFIG, PB_DEFAULT_CONFIG } from './tokens/tokens';
9
+ import { PbEmailObjectStoreService } from './services/internals/pb-email-object-store/pb-email-object-store.service';
10
+ import { PbUserMiddlewaresService } from './services/user-middleware-service/pb-middlewares.service';
11
+ import { PbUserInterfaceService } from './services/internals/user-interfaces/user-interface.service';
12
+ /**
13
+ * @deprecated Soon it will be removed
14
+ * @internal
15
+ */
16
+ export class PbEmailBuilderService {
17
+ constructor(config,
18
+ // @Inject(PB_GOOGLE_FONTS) private googleFonts: string[],
19
+ emailObjectStore, pbMiddleWares, pbUserInterface // private _http: HttpClient,
20
+ ) {
21
+ this.config = config;
22
+ this.emailObjectStore = emailObjectStore;
23
+ this.pbMiddleWares = pbMiddleWares;
24
+ this.pbUserInterface = pbUserInterface;
25
+ // private _template = new BehaviorSubject<string>('');
26
+ // private _mjml = new BehaviorSubject<string>('');
27
+ // private readonly _onSave$ = new Subject();
28
+ /**
29
+ * @deprecated Please use the new service "UserRestApiService" instead
30
+ */
31
+ this.modules = new Set();
32
+ /**
33
+ * @deprecated Please use the new service "UserRestApiService" instead
34
+ */
35
+ this.customTemplates = new Set();
36
+ /**
37
+ * @deprecated Please use the new service "UserRestApiService" instead
38
+ */
39
+ this._mergeTags = new Set();
40
+ this.onTemplateCreated$ = this.emailObjectStore.onTemplateCreated$.pipe(shareReplay());
41
+ /**
42
+ * @deprecated Use onTemplateCreated$ instead
43
+ */
44
+ this.onSave$ = this.onTemplateCreated$;
45
+ /**
46
+ * @deprecated Use isLoading$ instead
47
+ */
48
+ this.isLoading = this.pbUserInterface.activeMatProgress$.asObservable();
49
+ this.isLoading$ = this.pbUserInterface.activeMatProgress$.asObservable();
50
+ this.config = Object.assign(Object.assign({}, PB_DEFAULT_CONFIG), this.config);
51
+ }
52
+ /**
53
+ * Save current Email Template
54
+ */
55
+ createHTMLTemplate$() {
56
+ this.pbUserInterface.activeMatProgress$.next(true);
57
+ return this.emailObjectStore.createHTMLTemplate$().pipe(tap(() => this.pbUserInterface.activeMatProgress$.next(false)), catchError((error) => this.pbMiddleWares.catchError(error).pipe(switchMap(() => {
58
+ this.pbUserInterface.notify(error.message);
59
+ this.pbUserInterface.activeMatProgress$.next(false);
60
+ return EMPTY;
61
+ }))), finalize(() => this.pbUserInterface.activeMatProgress$.next(false)));
62
+ }
63
+ /**
64
+ * @deprecated Please use ngb.createHTMLTemplate$() instead
65
+ */
66
+ saveEmail() {
67
+ return this.createHTMLTemplate$();
68
+ }
69
+ /**
70
+ * Get Email as object
71
+ */
72
+ get Email() {
73
+ return this.emailObjectStore.Email;
74
+ }
75
+ /**
76
+ * Set Email saved from database or created with new PBEmail()
77
+ */
78
+ set Email(newEmail) {
79
+ this.emailObjectStore.setEmail(newEmail);
80
+ }
81
+ /**
82
+ * @deprecated Use getTemplateAsObservable$() instead
83
+ */
84
+ get Template() {
85
+ return null;
86
+ }
87
+ /**
88
+ * Set HTML output
89
+ */
90
+ // set Template(template: string) {
91
+ // this._template.next(template);
92
+ // }
93
+ /**
94
+ * @deprecated Use getMjmlAsObservable$() instead
95
+ */
96
+ get Mjml() {
97
+ return null;
98
+ }
99
+ /**
100
+ * Listen Email changes
101
+ */
102
+ getEmailAsObservable$() {
103
+ return this.emailObjectStore.emailAsObservable$;
104
+ }
105
+ /**
106
+ * Listen Template changes
107
+ */
108
+ getTemplateAsObservable$() {
109
+ return this.emailObjectStore.templateAsObservable$;
110
+ }
111
+ /**
112
+ * Listen MJML changes
113
+ */
114
+ getMjmlAsObservable$() {
115
+ return this.emailObjectStore.mjmlAsObservable$;
116
+ }
117
+ /**
118
+ * Listen Email and Template changes
119
+ * @deprecated Use onTemplateCreated$ instead
120
+ */
121
+ onChanges$() {
122
+ return this.onTemplateCreated$;
123
+ }
124
+ }
125
+ PbEmailBuilderService.decorators = [
126
+ { type: Injectable }
127
+ ];
128
+ PbEmailBuilderService.ctorParameters = () => [
129
+ { type: undefined, decorators: [{ type: Inject, args: [PB_CONFIG,] }] },
130
+ { type: PbEmailObjectStoreService },
131
+ { type: PbUserMiddlewaresService },
132
+ { type: PbUserInterfaceService }
133
+ ];
134
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGItZW1haWwtYnVpbGRlci5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvcGItZW1haWwtYnVpbGRlci9zcmMvbGliL3BiLWVtYWlsLWJ1aWxkZXIuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7O0dBR0c7QUFFSCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVuRCxPQUFPLEVBQWMsS0FBSyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxVQUFVLEVBQUUsU0FBUyxFQUFFLFdBQVcsRUFBRSxHQUFHLEVBQUUsUUFBUSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFLbkYsT0FBTyxFQUFFLFNBQVMsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9ELE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLDBFQUEwRSxDQUFDO0FBQ3JILE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLDJEQUEyRCxDQUFDO0FBQ3JHLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDZEQUE2RCxDQUFDO0FBRXJHOzs7R0FHRztBQUVILE1BQU0sT0FBTyxxQkFBcUI7SUErQmhDLFlBQzRCLE1BQW9CO0lBQzlDLDBEQUEwRDtJQUNsRCxnQkFBMkMsRUFDM0MsYUFBdUMsRUFDdkMsZUFBdUMsQ0FBQyw2QkFBNkI7O1FBSm5ELFdBQU0sR0FBTixNQUFNLENBQWM7UUFFdEMscUJBQWdCLEdBQWhCLGdCQUFnQixDQUEyQjtRQUMzQyxrQkFBYSxHQUFiLGFBQWEsQ0FBMEI7UUFDdkMsb0JBQWUsR0FBZixlQUFlLENBQXdCO1FBbkNqRCx1REFBdUQ7UUFDdkQsbURBQW1EO1FBQ25ELDZDQUE2QztRQUU3Qzs7V0FFRztRQUNJLFlBQU8sR0FBRyxJQUFJLEdBQUcsRUFBZSxDQUFDO1FBQ3hDOztXQUVHO1FBQ2Esb0JBQWUsR0FBRyxJ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LHdCQUF3QjtZQUN4QixzQkFBc0IiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxyXG4gKiBDb3B5cmlnaHQgKGMpIDIwMjQgUG9idWNhLlxyXG4gKiBBbGwgcmlnaHRzIHJlc2VydmVkLlxyXG4gKi9cclxuXHJcbmltcG9ydCB7IEluamVjdGFibGUsIEluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBIdHRwRXJyb3JSZXNwb25zZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcclxuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgRU1QVFkgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgY2F0Y2hFcnJvciwgc3dpdGNoTWFwLCBzaGFyZVJlcGxheSwgdGFwLCBmaW5hbGl6ZSB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuXHJcbmltcG9ydCB7IElGb3JSb290Q29uZiwgSVVzZXJNb2R1bGUsIElVc2VyVGVtcGxhdGUgfSBmcm9tICcuL2ludGVyZmFjZXMvaW50ZXJmYWNlcyc7XHJcbmltcG9ydCB7IFBCRW1haWwgfSBmcm9tICcuL2NsYXNzZXMvRGVmYXVsdEVtYWlsJztcclxuXHJcbmltcG9ydCB7IFBCX0NPTkZJRywgUEJfREVGQVVMVF9DT05GSUcgfSBmcm9tICcuL3Rva2Vucy90b2tlbnMnO1xyXG5pbXBvcnQgeyBQYkVtYWlsT2JqZWN0U3RvcmVTZXJ2aWNlIH0gZnJvbSAnLi9zZXJ2aWNlcy9pbnRlcm5hbHMvcGItZW1haWwtb2JqZWN0LXN0b3JlL3BiLWVtYWlsLW9iamVjdC1zdG9yZS5zZXJ2aWNlJztcclxuaW1wb3J0IHsgUGJVc2VyTWlkZGxld2FyZXNTZXJ2aWNlIH0gZnJvbSAnLi9zZXJ2aWNlcy91c2VyLW1pZGRsZXdhcmUtc2VydmljZS9wYi1taWRkbGV3YXJlcy5zZXJ2aWNlJztcclxuaW1wb3J0IHsgUGJVc2VySW50ZXJmYWNlU2VydmljZSB9IGZyb20gJy4vc2VydmljZXMvaW50ZXJuYWxzL3VzZXItaW50ZXJmYWNlcy91c2VyLWludGVyZmFjZS5zZXJ2aWNlJztcclxuXHJcbi8qKlxyXG4gKiBAZGVwcmVjYXRlZCBTb29uIGl0IHdpbGwgYmUgcmVtb3ZlZFxyXG4gKiBAaW50ZXJuYWxcclxuICovXHJcbkBJbmplY3RhYmxlKClcclxuZXhwb3J0IGNsYXNzIFBiRW1haWxCdWlsZGVyU2VydmljZSB7XHJcbiAgLy8gcHJpdmF0ZSBfdGVtcGxhdGUgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PHN0cmluZz4oJycpO1xyXG4gIC8vIHByaXZhdGUgX21qbWwgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PHN0cmluZz4oJycpO1xyXG4gIC8vIHByaXZhdGUgcmVhZG9ubHkgX29uU2F2ZSQgPSBuZXcgU3ViamVjdCgpO1xyXG5cclxuICAvKipcclxuICAgKiBAZGVwcmVjYXRlZCBQbGVhc2UgdXNlIHRoZSBuZXcgc2VydmljZSBcIlVzZXJSZXN0QXBpU2VydmljZVwiIGluc3RlYWRcclxuICAgKi9cclxuICBwdWJsaWMgbW9kdWxlcyA9IG5ldyBTZXQ8SVVzZXJNb2R1bGU+KCk7XHJcbiAgLyoqXHJcbiAgICogQGRlcHJlY2F0ZWQgUGxlYXNlIHVzZSB0aGUgbmV3IHNlcnZpY2UgXCJVc2VyUmVzdEFwaVNlcnZpY2VcIiBpbnN0ZWFkXHJcbiAgICovXHJcbiAgcHVibGljIHJlYWRvbmx5IGN1c3RvbVRlbXBsYXRlcyA9IG5ldyBTZXQ8SVVzZXJUZW1wbGF0ZT4oKTtcclxuICAvKipcclxuICAgKiBAZGVwcmVjYXRlZCBQbGVhc2UgdXNlIHRoZSBuZXcgc2VydmljZSBcIlVzZXJSZXN0QXBpU2VydmljZVwiIGluc3RlYWRcclxuICAgKi9cclxuICBwcml2YXRlIF9tZXJnZVRhZ3MgPSBuZXcgU2V0PHN0cmluZz4oKTtcclxuXHJcbiAgcHVibGljIHJlYWRvbmx5IG9uVGVtcGxhdGVDcmVhdGVkJCA9IHRoaXMuZW1haWxPYmplY3RTdG9yZS5vblRlbXBsYXRlQ3JlYXRlZCQucGlwZShzaGFyZVJlcGxheSgpKTtcclxuXHJcbiAgLyoqXHJcbiAgICogQGRlcHJlY2F0ZWQgVXNlIG9uVGVtcGxhdGVDcmVhdGVkJCBpbnN0ZWFkXHJcbiAgICovXHJcbiAgcHVibGljIHJlYWRvbmx5IG9uU2F2ZSQgPSB0aGlzLm9uVGVtcGxhdGVDcmVhdGVkJDtcclxuXHJcbiAgLyoqXHJcbiAgICogQGRlcHJlY2F0ZWQgVXNlIGlzTG9hZGluZyQgaW5zdGVhZFxyXG4gICAqL1xyXG4gIHB1YmxpYyByZWFkb25seSBpc0xvYWRpbmcgPSB0aGlzLnBiVXNlckludGVyZmFjZS5hY3RpdmVNYXRQcm9ncmVzcyQuYXNPYnNlcnZhYmxlKCk7XHJcbiAgcHVibGljIHJlYWRvbmx5IGlzTG9hZGluZyQgPSB0aGlzLnBiVXNlckludGVyZmFjZS5hY3RpdmVNYXRQcm9ncmVzcyQuYXNPYnNlcnZhYmxlKCk7XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgQEluamVjdChQQl9DT05GSUcpIHB1YmxpYyBjb25maWc6IElGb3JSb290Q29uZixcclxuICAgIC8vIEBJbmplY3QoUEJfR09PR0xFX0ZPTlRTKSBwcml2YXRlIGdvb2dsZUZvbnRzOiBzdHJpbmdbXSxcclxuICAgIHByaXZhdGUgZW1haWxPYmplY3RTdG9yZTogUGJFbWFpbE9iamVjdFN0b3JlU2VydmljZSxcclxuICAgIHByaXZhdGUgcGJNaWRkbGVXYXJlczogUGJVc2VyTWlkZGxld2FyZXNTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBwYlVzZXJJbnRlcmZhY2U6IFBiVXNlckludGVyZmFjZVNlcnZpY2UgLy8gcHJpdmF0ZSBfaHR0cDogSHR0cENsaWVudCxcclxuICApIHtcclxuICAgIHRoaXMuY29uZmlnID0geyAuLi5QQl9ERUZBVUxUX0NPTkZJRywgLi4udGhpcy5jb25maWcgfTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFNhdmUgY3VycmVudCBFbWFpbCBUZW1wbGF0ZVxyXG4gICAqL1xyXG4gIGNyZWF0ZUhUTUxUZW1wbGF0ZSQoKSB7XHJcbiAgICB0aGlzLnBiVXNlckludGVyZmFjZS5hY3RpdmVNYXRQcm9ncmVzcyQubmV4dCh0cnVlKTtcclxuICAgIHJldHVybiB0aGlzLmVtYWlsT2JqZWN0U3RvcmUuY3JlYXRlSFRNTFRlbXBsYXRlJCgpLnBpcGUoXHJcbiAgICAgIHRhcCgoKSA9PiB0aGlzLnBiVXNlckludGVyZmFjZS5hY3RpdmVNYXRQcm9ncmVzcyQubmV4dChmYWxzZSkpLFxyXG4gICAgICBjYXRjaEVycm9yKChlcnJvcjogSHR0cEVycm9yUmVzcG9uc2UpID0+XHJcbiAgICAgICAgdGhpcy5wYk1pZGRsZVdhcmVzLmNhdGNoRXJyb3IoZXJyb3IpLnBpcGUoXHJcbiAgICAgICAgICBzd2l0Y2hNYXAoKCkgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLnBiVXNlckludGVyZmFjZS5ub3RpZnkoZXJyb3IubWVzc2FnZSk7XHJcbiAgICAgICAgICAgIHRoaXMucGJVc2VySW50ZXJmYWNlLmFjdGl2ZU1hdFByb2dyZXNzJC5uZXh0KGZhbHNlKTtcclxuICAgICAgICAgICAgcmV0dXJuIEVNUFRZO1xyXG4gICAgICAgICAgfSlcclxuICAgICAgICApXHJcbiAgICAgICksXHJcbiAgICAgIGZpbmFsaXplKCgpID0+IHRoaXMucGJVc2VySW50ZXJmYWNlLmFjdGl2ZU1hdFByb2dyZXNzJC5uZXh0KGZhbHNlKSlcclxuICAgICk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiAgQGRlcHJlY2F0ZWQgUGxlYXNlIHVzZSBuZ2IuY3JlYXRlSFRNTFRlbXBsYXRlJCgpIGluc3RlYWRcclxuICAgKi9cclxuICBzYXZlRW1haWwoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5jcmVhdGVIVE1MVGVtcGxhdGUkKCk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBHZXQgRW1haWwgYXMgb2JqZWN0XHJcbiAgICovXHJcbiAgZ2V0IEVtYWlsKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuZW1haWxPYmplY3RTdG9yZS5FbWFpbDtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFNldCBFbWFpbCBzYXZlZCBmcm9tIGRhdGFiYXNlIG9yIGNyZWF0ZWQgd2l0aCBuZXcgUEJFbWFpbCgpXHJcbiAgICovXHJcbiAgc2V0IEVtYWlsKG5ld0VtYWlsOiBQQkVtYWlsKSB7XHJcbiAgICB0aGlzLmVtYWlsT2JqZWN0U3RvcmUuc2V0RW1haWwobmV3RW1haWwpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogQGRlcHJlY2F0ZWQgVXNlIGdldFRlbXBsYXRlQXNPYnNlcnZhYmxlJCgpIGluc3RlYWRcclxuICAgKi9cclxuICBnZXQgVGVtcGxhdGUoKSB7XHJcbiAgICByZXR1cm4gbnVsbDtcclxuICB9XHJcbiAgLyoqXHJcbiAgICogU2V0IEhUTUwgb3V0cHV0XHJcbiAgICovXHJcbiAgLy8gc2V0IFRlbXBsYXRlKHRlbXBsYXRlOiBzdHJpbmcpIHtcclxuICAvLyAgIHRoaXMuX3RlbXBsYXRlLm5leHQodGVtcGxhdGUpO1xyXG4gIC8vIH1cclxuXHJcbiAgLyoqXHJcbiAgICogQGRlcHJlY2F0ZWQgVXNlIGdldE1qbWxBc09ic2VydmFibGUkKCkgaW5zdGVhZFxyXG4gICAqL1xyXG4gIGdldCBNam1sKCkge1xyXG4gICAgcmV0dXJuIG51bGw7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBMaXN0ZW4gRW1haWwgY2hhbmdlc1xyXG4gICAqL1xyXG4gIGdldEVtYWlsQXNPYnNlcnZhYmxlJCgpOiBPYnNlcnZhYmxlPFBCRW1haWw+IHtcclxuICAgIHJldHVybiB0aGlzLmVtYWlsT2JqZWN0U3RvcmUuZW1haWxBc09ic2VydmFibGUkO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogTGlzdGVuIFRlbXBsYXRlIGNoYW5nZXNcclxuICAgKi9cclxuICBnZXRUZW1wbGF0ZUFzT2JzZXJ2YWJsZSQoKTogT2JzZXJ2YWJsZTxzdHJpbmc+IHtcclxuICAgIHJldHVybiB0aGlzLmVtYWlsT2JqZWN0U3RvcmUudGVtcGxhdGVBc09ic2VydmFibGUkO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogTGlzdGVuIE1KTUwgY2hhbmdlc1xyXG4gICAqL1xyXG4gIGdldE1qbWxBc09ic2VydmFibGUkKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuZW1haWxPYmplY3RTdG9yZS5tam1sQXNPYnNlcnZhYmxlJDtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIExpc3RlbiBFbWFpbCBhbmQgVGVtcGxhdGUgY2hhbmdlc1xyXG4gICAqIEBkZXByZWNhdGVkIFVzZSBvblRlbXBsYXRlQ3JlYXRlZCQgaW5zdGVhZFxyXG4gICAqL1xyXG4gIG9uQ2hhbmdlcyQoKTogT2JzZXJ2YWJsZTxbUEJFbWFpbCwgc3RyaW5nLCBzdHJpbmddPiB7XHJcbiAgICByZXR1cm4gdGhpcy5vblRlbXBsYXRlQ3JlYXRlZCQ7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBHZXQgU2V0IG9mIFN0cnVjdHVyZXMgZnJvbSBhc2lkZVxyXG4gICAqL1xyXG4gIC8vIGdldFNpZGVTdHJ1Y3R1cmVzKCk6IFNldDxJU3RydWN0dXJlPiB7XHJcbiAgLy8gICByZXR1cm4gdGhpcy5fc3RydWN0dXJlcztcclxuICAvLyB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEdldCBTZXQgb2YgQmxvY2tzIGZyb20gYXNpZGVcclxuICAgKi9cclxuICAvLyBnZXRTaWRlQmxvY2tzKCk6IFNldDxUQmxvY2tzPiB7XHJcbiAgLy8gICByZXR1cm4gdGhpcy5fYmxvY2tzO1xyXG4gIC8vIH1cclxuXHJcbiAgLyoqXHJcbiAgICogR2V0IGEgU2V0IG9mIGZvbnRzIGZhbWlseVxyXG4gICAqL1xyXG4gIC8vIGdldCBGb250cygpOiBJRm9udEZhbWlseSB7XHJcbiAgLy8gICByZXR1cm4gdGhpcy5fZm9udEZhbWlseTtcclxuICAvLyB9XHJcbiAgLy8gc2V0IEZvbnRzKGZvbnRzOiBJRm9udEZhbWlseSkge1xyXG4gIC8vICAgdGhpcy5fZm9udEZhbWlseSA9IGZvbnRzO1xyXG4gIC8vIH1cclxuXHJcbiAgLy8gZ2V0IEZhbGxiYWNrRm9udHMoKTogSUZvbnRGYW1pbHkge1xyXG4gIC8vICAgcmV0dXJuIHRoaXMuX2ZhbGxiYWNrRmFtaWx5O1xyXG4gIC8vIH1cclxuICAvLyBzZXQgRmFsbGJhY2tGb250cyhmb250czogSUZvbnRGYW1pbHkpIHtcclxuICAvLyAgIHRoaXMuX2ZhbGxiYWNrRmFtaWx5ID0gZm9udHM7XHJcbiAgLy8gfVxyXG5cclxuICAvKipcclxuICAgKiBAZGVwcmVjYXRlZCBQbGVhc2UgdXNlIHRoZSBuZXcgc2VydmljZSBcIlVzZXJSZXN0QXBpU2VydmljZVwiIGluc3RlYWRcclxuICAgKi9cclxuICAvLyBnZXQgTWVyZ2VUYWdzKCk6IFNldDxzdHJpbmc+IHtcclxuICAvLyAgIHJldHVybiB0aGlzLl9tZXJnZVRhZ3M7XHJcbiAgLy8gfVxyXG5cclxuICAvLyBzZXQgTWVyZ2VUYWdzKHRhZ3M6IFNldDxzdHJpbmc+KSB7XHJcbiAgLy8gICB0aGlzLl9tZXJnZVRhZ3MgPSB0YWdzO1xyXG4gIC8vIH1cclxufVxyXG4iXX0=
@@ -1,39 +1,39 @@
1
- /*
2
- * Copyright (c) 2024 Pobuca.
3
- * All rights reserved.
4
- */
5
- import { Pipe } from '@angular/core';
6
- /**
7
- * @ignore
8
- *
9
- * Soon will be removed.
10
- */
11
- export class SlugifyPipe {
12
- transform(input) {
13
- const trChars = {
14
- áÁ: 'a',
15
- éÉ: 'e',
16
- íÍ: 'i',
17
- óÓ: 'o',
18
- úÚ: 'u',
19
- ñÑ: 'n'
20
- };
21
- for (const key of Object.keys(trChars)) {
22
- input = input.replace(new RegExp('[' + key + ']', 'g'), trChars[key]);
23
- }
24
- return input
25
- .toString()
26
- .toLowerCase()
27
- .replace(/\s+/g, '-') // Replace spaces with -
28
- .replace(/[^\w\-]+/g, '') // Remove all non-word chars
29
- .replace(/\-\-+/g, '-') // Replace multiple - with single -
30
- .replace(/^-+/, '') // Trim - from start of text
31
- .replace(/-+$/, ''); // Trim - from end of text
32
- }
33
- }
34
- SlugifyPipe.decorators = [
35
- { type: Pipe, args: [{
36
- name: 'slugify'
37
- },] }
38
- ];
39
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2x1Z2lmeS5waXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcGItZW1haWwtYnVpbGRlci9zcmMvbGliL3BpcGVzL3NsdWdpZnkucGlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7O0dBR0c7QUFFSCxPQUFPLEVBQUUsSUFBSSxFQUFpQixNQUFNLGVBQWUsQ0FBQztBQUVwRDs7OztHQUlHO0FBSUgsTUFBTSxPQUFPLFdBQVc7SUFDdEIsU0FBUyxDQUFDLEtBQWE7UUFDckIsTUFBTSxPQUFPLEdBQUc7WUFDZCxFQUFFLEVBQUUsR0FBRztZQUNQLEVBQUUsRUFBRSxHQUFHO1lBQ1AsRUFBRSxFQUFFLEdBQUc7WUFDUCxFQUFFLEVBQUUsR0FBRztZQUNQLEVBQUUsRUFBRSxHQUFHO1lBQ1AsRUFBRSxFQUFFLEdBQUc7U0FDUixDQUFDO1FBQ0YsS0FBSyxNQUFNLEdBQUcsSUFBSSxNQUFNLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxFQUFFO1lBQ3RDLEtBQUssR0FBRyxLQUFLLENBQUMsT0FBTyxDQUFDLElBQUksTUFBTSxDQUFDLEdBQUcsR0FBRyxHQUFHLEdBQUcsR0FBRyxFQUFFLEdBQUcsQ0FBQyxFQUFFLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO1NBQ3ZFO1FBQ0QsT0FBTyxLQUFLO2FBQ1QsUUFBUSxFQUFFO2FBQ1YsV0FBVyxFQUFFO2FBQ2IsT0FBTyxDQUFDLE1BQU0sRUFBRSxHQUFHLENBQUMsQ0FBQyx3QkFBd0I7YUFDN0MsT0FBTyxDQUFDLFdBQVcsRUFBRSxFQUFFLENBQUMsQ0FBQyw0QkFBNEI7YUFDckQsT0FBTyxDQUFDLFFBQVEsRUFBRSxHQUFHLENBQUMsQ0FBQyxtQ0FBbUM7YUFDMUQsT0FBTyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQyw0QkFBNEI7YUFDL0MsT0FBTyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLDBCQUEwQjtJQUNuRCxDQUFDOzs7WUF4QkYsSUFBSSxTQUFDO2dCQUNKLElBQUksRUFBRSxTQUFTO2FBQ2hCIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIENvcHlyaWdodCAoYykgMjAyNCBQb2J1Y2EuXG4gKiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuICovXG5cbmltcG9ydCB7IFBpcGUsIFBpcGVUcmFuc2Zvcm0gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuLyoqXG4gKiBAaWdub3JlXG4gKlxuICogU29vbiB3aWxsIGJlIHJlbW92ZWQuXG4gKi9cbkBQaXBlKHtcbiAgbmFtZTogJ3NsdWdpZnknXG59KVxuZXhwb3J0IGNsYXNzIFNsdWdpZnlQaXBlIGltcGxlbWVudHMgUGlwZVRyYW5zZm9ybSB7XG4gIHRyYW5zZm9ybShpbnB1dDogc3RyaW5nKTogc3RyaW5nIHtcbiAgICBjb25zdCB0ckNoYXJzID0ge1xuICAgICAgw6HDgTogJ2EnLFxuICAgICAgw6nDiTogJ2UnLFxuICAgICAgw63DjTogJ2knLFxuICAgICAgw7PDkzogJ28nLFxuICAgICAgw7rDmjogJ3UnLFxuICAgICAgw7HDkTogJ24nXG4gICAgfTtcbiAgICBmb3IgKGNvbnN0IGtleSBvZiBPYmplY3Qua2V5cyh0ckNoYXJzKSkge1xuICAgICAgaW5wdXQgPSBpbnB1dC5yZXBsYWNlKG5ldyBSZWdFeHAoJ1snICsga2V5ICsgJ10nLCAnZycpLCB0ckNoYXJzW2tleV0pO1xuICAgIH1cbiAgICByZXR1cm4gaW5wdXRcbiAgICAgIC50b1N0cmluZygpXG4gICAgICAudG9Mb3dlckNhc2UoKVxuICAgICAgLnJlcGxhY2UoL1xccysvZywgJy0nKSAvLyBSZXBsYWNlIHNwYWNlcyB3aXRoIC1cbiAgICAgIC5yZXBsYWNlKC9bXlxcd1xcLV0rL2csICcnKSAvLyBSZW1vdmUgYWxsIG5vbi13b3JkIGNoYXJzXG4gICAgICAucmVwbGFjZSgvXFwtXFwtKy9nLCAnLScpIC8vIFJlcGxhY2UgbXVsdGlwbGUgLSB3aXRoIHNpbmdsZSAtXG4gICAgICAucmVwbGFjZSgvXi0rLywgJycpIC8vIFRyaW0gLSBmcm9tIHN0YXJ0IG9mIHRleHRcbiAgICAgIC5yZXBsYWNlKC8tKyQvLCAnJyk7IC8vIFRyaW0gLSBmcm9tIGVuZCBvZiB0ZXh0XG4gIH1cbn1cbiJdfQ==
1
+ /*
2
+ * Copyright (c) 2024 Pobuca.
3
+ * All rights reserved.
4
+ */
5
+ import { Pipe } from '@angular/core';
6
+ /**
7
+ * @ignore
8
+ *
9
+ * Soon will be removed.
10
+ */
11
+ export class SlugifyPipe {
12
+ transform(input) {
13
+ const trChars = {
14
+ áÁ: 'a',
15
+ éÉ: 'e',
16
+ íÍ: 'i',
17
+ óÓ: 'o',
18
+ úÚ: 'u',
19
+ ñÑ: 'n'
20
+ };
21
+ for (const key of Object.keys(trChars)) {
22
+ input = input.replace(new RegExp('[' + key + ']', 'g'), trChars[key]);
23
+ }
24
+ return input
25
+ .toString()
26
+ .toLowerCase()
27
+ .replace(/\s+/g, '-') // Replace spaces with -
28
+ .replace(/[^\w\-]+/g, '') // Remove all non-word chars
29
+ .replace(/\-\-+/g, '-') // Replace multiple - with single -
30
+ .replace(/^-+/, '') // Trim - from start of text
31
+ .replace(/-+$/, ''); // Trim - from end of text
32
+ }
33
+ }
34
+ SlugifyPipe.decorators = [
35
+ { type: Pipe, args: [{
36
+ name: 'slugify'
37
+ },] }
38
+ ];
39
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2x1Z2lmeS5waXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcGItZW1haWwtYnVpbGRlci9zcmMvbGliL3BpcGVzL3NsdWdpZnkucGlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7O0dBR0c7QUFFSCxPQUFPLEVBQUUsSUFBSSxFQUFpQixNQUFNLGVBQWUsQ0FBQztBQUVwRDs7OztHQUlHO0FBSUgsTUFBTSxPQUFPLFdBQVc7SUFDdEIsU0FBUyxDQUFDLEtBQWE7UUFDckIsTUFBTSxPQUFPLEdBQUc7WUFDZCxFQUFFLEVBQUUsR0FBRztZQUNQLEVBQUUsRUFBRSxHQUFHO1lBQ1AsRUFBRSxFQUFFLEdBQUc7WUFDUCxFQUFFLEVBQUUsR0FBRztZQUNQLEVBQUUsRUFBRSxHQUFHO1lBQ1AsRUFBRSxFQUFFLEdBQUc7U0FDUixDQUFDO1FBQ0YsS0FBSyxNQUFNLEdBQUcsSUFBSSxNQUFNLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxFQUFFO1lBQ3RDLEtBQUssR0FBRyxLQUFLLENBQUMsT0FBTyxDQUFDLElBQUksTUFBTSxDQUFDLEdBQUcsR0FBRyxHQUFHLEdBQUcsR0FBRyxFQUFFLEdBQUcsQ0FBQyxFQUFFLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO1NBQ3ZFO1FBQ0QsT0FBTyxLQUFLO2FBQ1QsUUFBUSxFQUFFO2FBQ1YsV0FBVyxFQUFFO2FBQ2IsT0FBTyxDQUFDLE1BQU0sRUFBRSxHQUFHLENBQUMsQ0FBQyx3QkFBd0I7YUFDN0MsT0FBTyxDQUFDLFdBQVcsRUFBRSxFQUFFLENBQUMsQ0FBQyw0QkFBNEI7YUFDckQsT0FBTyxDQUFDLFFBQVEsRUFBRSxHQUFHLENBQUMsQ0FBQyxtQ0FBbUM7YUFDMUQsT0FBTyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQyw0QkFBNEI7YUFDL0MsT0FBTyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLDBCQUEwQjtJQUNuRCxDQUFDOzs7WUF4QkYsSUFBSSxTQUFDO2dCQUNKLElBQUksRUFBRSxTQUFTO2FBQ2hCIiwic291cmNlc0NvbnRlbnQiOlsiLypcclxuICogQ29weXJpZ2h0IChjKSAyMDI0IFBvYnVjYS5cclxuICogQWxsIHJpZ2h0cyByZXNlcnZlZC5cclxuICovXHJcblxyXG5pbXBvcnQgeyBQaXBlLCBQaXBlVHJhbnNmb3JtIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG4vKipcclxuICogQGlnbm9yZVxyXG4gKlxyXG4gKiBTb29uIHdpbGwgYmUgcmVtb3ZlZC5cclxuICovXHJcbkBQaXBlKHtcclxuICBuYW1lOiAnc2x1Z2lmeSdcclxufSlcclxuZXhwb3J0IGNsYXNzIFNsdWdpZnlQaXBlIGltcGxlbWVudHMgUGlwZVRyYW5zZm9ybSB7XHJcbiAgdHJhbnNmb3JtKGlucHV0OiBzdHJpbmcpOiBzdHJpbmcge1xyXG4gICAgY29uc3QgdHJDaGFycyA9IHtcclxuICAgICAgw6HDgTogJ2EnLFxyXG4gICAgICDDqcOJOiAnZScsXHJcbiAgICAgIMOtw406ICdpJyxcclxuICAgICAgw7PDkzogJ28nLFxyXG4gICAgICDDusOaOiAndScsXHJcbiAgICAgIMOxw5E6ICduJ1xyXG4gICAgfTtcclxuICAgIGZvciAoY29uc3Qga2V5IG9mIE9iamVjdC5rZXlzKHRyQ2hhcnMpKSB7XHJcbiAgICAgIGlucHV0ID0gaW5wdXQucmVwbGFjZShuZXcgUmVnRXhwKCdbJyArIGtleSArICddJywgJ2cnKSwgdHJDaGFyc1trZXldKTtcclxuICAgIH1cclxuICAgIHJldHVybiBpbnB1dFxyXG4gICAgICAudG9TdHJpbmcoKVxyXG4gICAgICAudG9Mb3dlckNhc2UoKVxyXG4gICAgICAucmVwbGFjZSgvXFxzKy9nLCAnLScpIC8vIFJlcGxhY2Ugc3BhY2VzIHdpdGggLVxyXG4gICAgICAucmVwbGFjZSgvW15cXHdcXC1dKy9nLCAnJykgLy8gUmVtb3ZlIGFsbCBub24td29yZCBjaGFyc1xyXG4gICAgICAucmVwbGFjZSgvXFwtXFwtKy9nLCAnLScpIC8vIFJlcGxhY2UgbXVsdGlwbGUgLSB3aXRoIHNpbmdsZSAtXHJcbiAgICAgIC5yZXBsYWNlKC9eLSsvLCAnJykgLy8gVHJpbSAtIGZyb20gc3RhcnQgb2YgdGV4dFxyXG4gICAgICAucmVwbGFjZSgvLSskLywgJycpOyAvLyBUcmltIC0gZnJvbSBlbmQgb2YgdGV4dFxyXG4gIH1cclxufVxyXG4iXX0=