@pobuca/email-builder 1.0.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 (150) hide show
  1. package/README.md +1 -0
  2. package/assets/icons/dribbble.png +0 -0
  3. package/assets/icons/facebook.png +0 -0
  4. package/assets/icons/github.png +0 -0
  5. package/assets/icons/instagram.png +0 -0
  6. package/assets/icons/linkedin.png +0 -0
  7. package/assets/icons/medium.png +0 -0
  8. package/assets/icons/pinterest.png +0 -0
  9. package/assets/icons/snapchat.png +0 -0
  10. package/assets/icons/soundcloud.png +0 -0
  11. package/assets/icons/tumblr.png +0 -0
  12. package/assets/icons/twitter.png +0 -0
  13. package/assets/icons/vimeo.png +0 -0
  14. package/assets/icons/web.png +0 -0
  15. package/assets/icons/xing.png +0 -0
  16. package/assets/icons/youtube.png +0 -0
  17. package/bundles/pobuca-email-builder.umd.js +4664 -0
  18. package/bundles/pobuca-email-builder.umd.js.map +1 -0
  19. package/bundles/pobuca-email-builder.umd.min.js +2 -0
  20. package/bundles/pobuca-email-builder.umd.min.js.map +1 -0
  21. package/esm2015/lib/classes/DefaultEmail.js +53 -0
  22. package/esm2015/lib/classes/Elements.js +229 -0
  23. package/esm2015/lib/classes/Structure.js +89 -0
  24. package/esm2015/lib/components/block/block.component.js +89 -0
  25. package/esm2015/lib/components/block-settings/block-settings.component.js +53 -0
  26. package/esm2015/lib/components/builder-container/builder-container.component.js +114 -0
  27. package/esm2015/lib/components/dialog.component.js +30 -0
  28. package/esm2015/lib/components/general-settings/general-settings.component.js +25 -0
  29. package/esm2015/lib/components/import-dialog/import-dialog.component.js +62 -0
  30. package/esm2015/lib/components/preview.component.js +89 -0
  31. package/esm2015/lib/components/structure/structure.component.js +163 -0
  32. package/esm2015/lib/components/structure-settings/structure-settings.component.js +31 -0
  33. package/esm2015/lib/components/template-list-dialog/template-list-dialog.component.js +45 -0
  34. package/esm2015/lib/directives/dynamic-component.directive.js +46 -0
  35. package/esm2015/lib/elements/abstract-block.js +23 -0
  36. package/esm2015/lib/elements/button/button.component.js +29 -0
  37. package/esm2015/lib/elements/divider/divider.component.js +30 -0
  38. package/esm2015/lib/elements/image/image.component.js +54 -0
  39. package/esm2015/lib/elements/social/social.component.js +42 -0
  40. package/esm2015/lib/elements/spacer/spacer.component.js +30 -0
  41. package/esm2015/lib/elements/text-element/text-element.component.js +80 -0
  42. package/esm2015/lib/groups/align.js +79 -0
  43. package/esm2015/lib/groups/back-repeat.js +55 -0
  44. package/esm2015/lib/groups/border.js +102 -0
  45. package/esm2015/lib/groups/color.js +139 -0
  46. package/esm2015/lib/groups/direction.js +63 -0
  47. package/esm2015/lib/groups/font-styles.js +112 -0
  48. package/esm2015/lib/groups/gaps.js +45 -0
  49. package/esm2015/lib/groups/line-height.js +68 -0
  50. package/esm2015/lib/groups/link.js +67 -0
  51. package/esm2015/lib/groups/margin.js +45 -0
  52. package/esm2015/lib/groups/padding.js +53 -0
  53. package/esm2015/lib/groups/upload-image.js +112 -0
  54. package/esm2015/lib/groups/width-height.js +94 -0
  55. package/esm2015/lib/interceptors/pb-interceptor.interceptor.js +51 -0
  56. package/esm2015/lib/interfaces/interfaces.js +13 -0
  57. package/esm2015/lib/pb-email-builder.component.js +246 -0
  58. package/esm2015/lib/pb-email-builder.module.js +291 -0
  59. package/esm2015/lib/pb-email-builder.service.js +134 -0
  60. package/esm2015/lib/pipes/slugify.pipe.js +39 -0
  61. package/esm2015/lib/services/internals/pb-email-object-store/pb-email-object-store.service.js +165 -0
  62. package/esm2015/lib/services/internals/user-interfaces/user-interface.service.js +122 -0
  63. package/esm2015/lib/services/pb-storage/FreeUsersStorage.class.js +11 -0
  64. package/esm2015/lib/services/pb-storage/index.js +7 -0
  65. package/esm2015/lib/services/pb-storage/pb-storage.service.js +79 -0
  66. package/esm2015/lib/services/user-image-uploader-service/free-users-image-uploader.service.js +26 -0
  67. package/esm2015/lib/services/user-image-uploader-service/index.js +8 -0
  68. package/esm2015/lib/services/user-image-uploader-service/paid-users-image-uploader.service.js +30 -0
  69. package/esm2015/lib/services/user-image-uploader-service/upload-bottom-sheet-dialog/upload-bottom-sheet-dialog.component.js +112 -0
  70. package/esm2015/lib/services/user-image-uploader-service/upload-image-gallery/upload-image-gallery.component.js +91 -0
  71. package/esm2015/lib/services/user-image-uploader-service/user-image-uploader.service.js +26 -0
  72. package/esm2015/lib/services/user-middleware-service/FreeUsersMiddleware.js +31 -0
  73. package/esm2015/lib/services/user-middleware-service/PaidUsersMiddleware.js +12 -0
  74. package/esm2015/lib/services/user-middleware-service/index.js +8 -0
  75. package/esm2015/lib/services/user-middleware-service/pb-middlewares.service.js +195 -0
  76. package/esm2015/lib/services/user-rest-api-service/free-users-rest-api.service.js +16 -0
  77. package/esm2015/lib/services/user-rest-api-service/index.js +7 -0
  78. package/esm2015/lib/services/user-rest-api-service/user-rest-api.service.js +116 -0
  79. package/esm2015/lib/tokens/private-tokens.js +17 -0
  80. package/esm2015/lib/tokens/tokens.js +159 -0
  81. package/esm2015/lib/utils.js +147 -0
  82. package/esm2015/pobuca-email-builder.js +43 -0
  83. package/esm2015/public_api.js +26 -0
  84. package/fesm2015/pobuca-email-builder.js +4335 -0
  85. package/fesm2015/pobuca-email-builder.js.map +1 -0
  86. package/lib/classes/DefaultEmail.d.ts +9 -0
  87. package/lib/classes/Elements.d.ts +62 -0
  88. package/lib/classes/Structure.d.ts +11 -0
  89. package/lib/components/block/block.component.d.ts +25 -0
  90. package/lib/components/block-settings/block-settings.component.d.ts +18 -0
  91. package/lib/components/builder-container/builder-container.component.d.ts +36 -0
  92. package/lib/components/dialog.component.d.ts +10 -0
  93. package/lib/components/general-settings/general-settings.component.d.ts +6 -0
  94. package/lib/components/import-dialog/import-dialog.component.d.ts +16 -0
  95. package/lib/components/preview.component.d.ts +18 -0
  96. package/lib/components/structure/structure.component.d.ts +43 -0
  97. package/lib/components/structure-settings/structure-settings.component.d.ts +9 -0
  98. package/lib/components/template-list-dialog/template-list-dialog.component.d.ts +15 -0
  99. package/lib/directives/dynamic-component.directive.d.ts +13 -0
  100. package/lib/elements/abstract-block.d.ts +8 -0
  101. package/lib/elements/button/button.component.d.ts +18 -0
  102. package/lib/elements/divider/divider.component.d.ts +10 -0
  103. package/lib/elements/image/image.component.d.ts +19 -0
  104. package/lib/elements/social/social.component.d.ts +21 -0
  105. package/lib/elements/spacer/spacer.component.d.ts +5 -0
  106. package/lib/elements/text-element/text-element.component.d.ts +52 -0
  107. package/lib/groups/align.d.ts +17 -0
  108. package/lib/groups/back-repeat.d.ts +8 -0
  109. package/lib/groups/border.d.ts +13 -0
  110. package/lib/groups/color.d.ts +26 -0
  111. package/lib/groups/direction.d.ts +13 -0
  112. package/lib/groups/font-styles.d.ts +17 -0
  113. package/lib/groups/gaps.d.ts +7 -0
  114. package/lib/groups/line-height.d.ts +12 -0
  115. package/lib/groups/link.d.ts +11 -0
  116. package/lib/groups/margin.d.ts +8 -0
  117. package/lib/groups/padding.d.ts +8 -0
  118. package/lib/groups/upload-image.d.ts +19 -0
  119. package/lib/groups/width-height.d.ts +19 -0
  120. package/lib/interceptors/pb-interceptor.interceptor.d.ts +10 -0
  121. package/lib/interfaces/interfaces.d.ts +422 -0
  122. package/lib/pb-email-builder.component.d.ts +67 -0
  123. package/lib/pb-email-builder.module.d.ts +51 -0
  124. package/lib/pb-email-builder.service.d.ts +83 -0
  125. package/lib/pipes/slugify.pipe.d.ts +9 -0
  126. package/lib/services/internals/pb-email-object-store/pb-email-object-store.service.d.ts +50 -0
  127. package/lib/services/internals/user-interfaces/user-interface.service.d.ts +46 -0
  128. package/lib/services/pb-storage/FreeUsersStorage.class.d.ts +6 -0
  129. package/lib/services/pb-storage/index.d.ts +2 -0
  130. package/lib/services/pb-storage/pb-storage.service.d.ts +54 -0
  131. package/lib/services/user-image-uploader-service/free-users-image-uploader.service.d.ts +12 -0
  132. package/lib/services/user-image-uploader-service/index.d.ts +3 -0
  133. package/lib/services/user-image-uploader-service/paid-users-image-uploader.service.d.ts +14 -0
  134. package/lib/services/user-image-uploader-service/upload-bottom-sheet-dialog/upload-bottom-sheet-dialog.component.d.ts +28 -0
  135. package/lib/services/user-image-uploader-service/upload-image-gallery/upload-image-gallery.component.d.ts +27 -0
  136. package/lib/services/user-image-uploader-service/user-image-uploader.service.d.ts +26 -0
  137. package/lib/services/user-middleware-service/FreeUsersMiddleware.d.ts +15 -0
  138. package/lib/services/user-middleware-service/PaidUsersMiddleware.d.ts +7 -0
  139. package/lib/services/user-middleware-service/index.d.ts +3 -0
  140. package/lib/services/user-middleware-service/pb-middlewares.service.d.ts +190 -0
  141. package/lib/services/user-rest-api-service/free-users-rest-api.service.d.ts +10 -0
  142. package/lib/services/user-rest-api-service/index.d.ts +2 -0
  143. package/lib/services/user-rest-api-service/user-rest-api.service.d.ts +82 -0
  144. package/lib/tokens/private-tokens.d.ts +5 -0
  145. package/lib/tokens/tokens.d.ts +70 -0
  146. package/lib/utils.d.ts +88 -0
  147. package/package.json +37 -0
  148. package/pobuca-email-builder.d.ts +42 -0
  149. package/pobuca-email-builder.metadata.json +1 -0
  150. package/public_api.d.ts +16 -0
@@ -0,0 +1,116 @@
1
+ /*
2
+ * Copyright (c) 2024 Pobuca.
3
+ * All rights reserved.
4
+ */
5
+ import { Injectable } from '@angular/core';
6
+ import { HttpClient } from '@angular/common/http';
7
+ import { map, shareReplay } from 'rxjs/operators';
8
+ import { deferOf } from '../../utils';
9
+ /**
10
+ * Default NGB ROOT API Path
11
+ */
12
+ const NGB_HOST = 'https://ngb-api.wlocalhost.org/v1';
13
+ /**
14
+ * The abstract service that must extend the user's custom REST API service.
15
+ * Contains all required properties needed within project.
16
+ *
17
+ * Rewrite the default methods/properties to get the desired data.
18
+ * We recommend using `shareReplay()` operator if it's just a simple static data.
19
+ *
20
+ * @example
21
+ * // Create a custom service
22
+ * class YourOwnRestApiService extends PbUserRestApiService {}
23
+ *
24
+ * // Rewrite it into AppModule
25
+ * { provide: PbUserRestApiService, useClass: YourOwnRestApiService }
26
+ */
27
+ export class PbUserRestApiService {
28
+ constructor(http) {
29
+ this.http = http;
30
+ /**
31
+ * Get all user merge fields to inject into text editor.
32
+ */
33
+ this.getAllUserMergeFields$ = deferOf([]);
34
+ /**
35
+ * Get all Custom Modules to be included into Modules List.
36
+ * We're looking for someone who could create many modules to be included by default, if you feel you can help us, please leave a message!
37
+ */
38
+ this.getAllUserModules$ = deferOf([]);
39
+ /**
40
+ * Get all Predefined Templates and categories.
41
+ * You can leave it to get all default templates from NGB API
42
+ */
43
+ this.getAllUserTemplates$ = this.http
44
+ .get(NGB_HOST.concat('/templates'))
45
+ .pipe(map(list => list.map(({ category, templates }) => ({
46
+ category,
47
+ templates: templates.map(title => ({
48
+ thumbPath: `https://ngb-templates.s3.amazonaws.com/${category}-${title}.jpg`,
49
+ title,
50
+ templateData: null
51
+ }))
52
+ }))), shareReplay());
53
+ }
54
+ /**
55
+ * This method must return the chosen template from Template Gallery List PBEmail object,
56
+ * see {@link PbUserRestApiService#getAllUserTemplates$|getAllUserTemplates$}.
57
+ *
58
+ * Sometimes it can contain 'templateData' property - in this case, just return it.
59
+ *
60
+ * @param category Selected Category from Template Gallery.
61
+ * @param template Selected Template from Template Gallery.
62
+ *
63
+ * @example
64
+ * if (template.templateData) { return template }
65
+ */
66
+ getUserTemplateData$(category, template) {
67
+ if (template.templateData) {
68
+ return deferOf(template);
69
+ }
70
+ return this.http
71
+ .get(NGB_HOST.concat('/templates'), {
72
+ params: { category, template: template.title }
73
+ })
74
+ .pipe(map(email => (Object.assign(Object.assign({}, template), { templateData: email }))));
75
+ }
76
+ /**
77
+ * Handle all uploaded images.
78
+ * FormData 'csrf' is deprecated in favor of [HttpClientXsrfModule]{@link https://angular.io/api/common/http/HttpClientXsrfModule}.
79
+ *
80
+ * @param body A FormData that contains 'image' and 'csrf' data.
81
+ * @param uploadImagePath Define a path where NGB have to send the upload request.
82
+ */
83
+ userImageUpload$(body, uploadImagePath) {
84
+ return this.http.request('POST', uploadImagePath, {
85
+ body,
86
+ reportProgress: true,
87
+ responseType: 'json',
88
+ observe: 'events'
89
+ });
90
+ }
91
+ /**
92
+ * Get all images to include into Image Gallery.
93
+ */
94
+ getUserImages$() {
95
+ return deferOf([]);
96
+ }
97
+ /**
98
+ * Rewrite the default request which converts PBEmail to HTML, if you have a paid License,
99
+ * this method allows you to rewrite the default Convertor API Path to yours.
100
+ *
101
+ * You can still use the default Convertor API Path, since you have a valid and active License Key.
102
+ *
103
+ * @param emailAndFonts PBEmail plus Google Fonts List object.
104
+ * @param url Your own Convertor API Path, or leave it empty to use NGB servers.
105
+ */
106
+ createHTMLTemplate$(emailAndFonts, url = NGB_HOST) {
107
+ return this.http.post(url, emailAndFonts);
108
+ }
109
+ }
110
+ PbUserRestApiService.decorators = [
111
+ { type: Injectable }
112
+ ];
113
+ PbUserRestApiService.ctorParameters = () => [
114
+ { type: HttpClient }
115
+ ];
116
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlci1yZXN0LWFwaS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcGItZW1haWwtYnVpbGRlci9zcmMvbGliL3NlcnZpY2VzL3VzZXItcmVzdC1hcGktc2VydmljZS91c2VyLXJlc3QtYXBpLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7OztHQUdHO0FBRUgsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsVUFBVSxFQUFhLE1BQU0sc0JBQXNCLENBQUM7QUFFN0QsT0FBTyxFQUFFLEdBQUcsRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUlsRCxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBVXRDOztHQUVHO0FBQ0gsTUFBTSxRQUFRLEdBQUcsbUNBQW1DLENBQUM7QUFFckQ7Ozs7Ozs7Ozs7Ozs7R0FhRztBQUVILE1BQU0sT0FBZ0Isb0JBQW9CO0lBZ0N4QyxZQUFtQixJQUFnQjtRQUFoQixTQUFJLEdBQUosSUFBSSxDQUFZO1FBL0JuQzs7V0FFRztRQUNILDJCQUFzQixHQUF5QixPQUFPLENBQVcsRUFBRSxDQUFDLENBQUM7UUFFckU7OztXQUdHO1FBQ0gsdUJBQWtCLEdBQThCLE9BQU8sQ0FBZ0IsRUFBRSxDQUFDLENBQUM7UUFFM0U7OztXQUdHO1FBQ0gseUJBQW9CLEdBQXdDLElBQUksQ0FBQyxJQUFJO2FBQ2xFLEdBQUcsQ0FBOEMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxZQUFZLENBQUMsQ0FBQzthQUMvRSxJQUFJLENBQ0gsR0FBRyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQ1QsSUFBSSxDQUFDLEdBQUcsQ0FBd0IsQ0FBQyxFQUFFLFFBQVEsRUFBRSxTQUFTLEVBQUUsRUFBRSxFQUFFLENBQUMsQ0FBQztZQUM1RCxRQUFRO1lBQ1IsU0FBUyxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDO2dCQUNqQyxTQUFTLEVBQUUsMENBQTBDLFFBQVEsSUFBSSxLQUFLLE1BQU07Z0JBQzVFLEtBQUs7Z0JBQ0wsWUFBWSxFQUFFLElBQUk7YUFDbkIsQ0FBQyxDQUFDO1NBQ0osQ0FBQyxDQUFDLENBQ0osRUFDRCxXQUFXLEVBQUUsQ0FDZCxDQUFDO0lBRWtDLENBQUM7SUFFdkM7Ozs7Ozs7Ozs7O09BV0c7SUFDSCxvQkFBb0IsQ0FBQyxRQUFnQixFQUFFLFFBQXVCO1FBQzVELElBQUksUUFBUSxDQUFDLFlBQVksRUFBRTtZQUN6QixPQUFPLE9BQU8sQ0FBQyxRQUFRLENBQUMsQ0FBQztTQUMxQjtRQUNELE9BQU8sSUFBSSxDQUFDLElBQUk7YUFDYixHQUFHLENBQVcsUUFBUSxDQUFDLE1BQU0sQ0FBQyxZQUFZLENBQUMsRUFBRTtZQUM1QyxNQUFNLEVBQUUsRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFFLFFBQVEsQ0FBQyxLQUFLLEVBQUU7U0FDL0MsQ0FBQzthQUNELElBQUksQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxpQ0FBTSxRQUFRLEtBQUUsWUFBWSxFQUFFLEtBQUssSUFBRyxDQUFDLENBQUMsQ0FBQztJQUNoRSxDQUFDO0lBRUQ7Ozs7OztPQU1HO0lBQ0gsZ0JBQWdCLENBQUMsSUFBYyxFQUFFLGVBQXVCO1FBQ3RELE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxFQUFFLGVBQWUsRUFBRTtZQUNoRCxJQUFJO1lBQ0osY0FBYyxFQUFFLElBQUk7WUFDcEIsWUFBWSxFQUFFLE1BQU07WUFDcEIsT0FBTyxFQUFFLFFBQVE7U0FDbEIsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVEOztPQUVHO0lBQ0gsY0FBYztRQUNaLE9BQU8sT0FBTyxDQUFXLEVBQUUsQ0FBQyxDQUFDO0lBQy9CLENBQUM7SUFFRDs7Ozs7Ozs7T0FRRztJQUNILG1CQUFtQixDQUFDLGFBQW1DLEVBQUUsTUFBYyxRQUFRO1FBQzdFLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQXNCLEdBQUcsRUFBRSxhQUFhLENBQUMsQ0FBQztJQUNqRSxDQUFDOzs7WUE1RkYsVUFBVTs7O1lBbkNGLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogQ29weXJpZ2h0IChjKSAyMDI0IFBvYnVjYS5cbiAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4gKi9cblxuaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgSHR0cENsaWVudCwgSHR0cEV2ZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgbWFwLCBzaGFyZVJlcGxheSB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHsgSVBCRW1haWwsIElNam1sU2VydmVyUmVzcG9uc2UsIElVc2VyTW9kdWxlLCBJVXNlclRlbXBsYXRlLCBJVXNlclRlbXBsYXRlQ2F0ZWdvcnkgfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzL2ludGVyZmFjZXMnO1xuaW1wb3J0IHsgUEJFbWFpbCB9IGZyb20gJy4uLy4uL2NsYXNzZXMvRGVmYXVsdEVtYWlsJztcbmltcG9ydCB7IGRlZmVyT2YgfSBmcm9tICcuLi8uLi91dGlscyc7XG5cbi8qKlxuICogQWRkIEdvb2dsZSBGb250cyBsaXN0IHRvIFBCRW1haWwgb2JqZWN0IHRvIGluY2x1ZGUgaW50byB0ZW1wbGF0ZS5cbiAqIE1KTUwgQ29udmVydG9yIHdpbGwgZmlsdGVyIGFuZCByZW1vdmUgZm9udHMgdGhhdCBhcmVuJ3QgdXNlZC5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBJRW1haWxBbmRHb29nbGVGb250cyBleHRlbmRzIFBCRW1haWwge1xuICBnb29nbGVGb250czogc3RyaW5nW107XG59XG5cbi8qKlxuICogRGVmYXVsdCBOR0IgUk9PVCBBUEkgUGF0aFxuICovXG5jb25zdCBOR0JfSE9TVCA9ICdodHRwczovL25nYi1hcGkud2xvY2FsaG9zdC5vcmcvdjEnO1xuXG4vKipcbiAqIFRoZSBhYnN0cmFjdCBzZXJ2aWNlIHRoYXQgbXVzdCBleHRlbmQgdGhlIHVzZXIncyBjdXN0b20gUkVTVCBBUEkgc2VydmljZS5cbiAqIENvbnRhaW5zIGFsbCByZXF1aXJlZCBwcm9wZXJ0aWVzIG5lZWRlZCB3aXRoaW4gcHJvamVjdC5cbiAqXG4gKiBSZXdyaXRlIHRoZSBkZWZhdWx0IG1ldGhvZHMvcHJvcGVydGllcyB0byBnZXQgdGhlIGRlc2lyZWQgZGF0YS5cbiAqIFdlIHJlY29tbWVuZCB1c2luZyBgc2hhcmVSZXBsYXkoKWAgb3BlcmF0b3IgaWYgaXQncyBqdXN0IGEgc2ltcGxlIHN0YXRpYyBkYXRhLlxuICpcbiAqIEBleGFtcGxlXG4gKiAvLyBDcmVhdGUgYSBjdXN0b20gc2VydmljZVxuICogY2xhc3MgWW91ck93blJlc3RBcGlTZXJ2aWNlIGV4dGVuZHMgUGJVc2VyUmVzdEFwaVNlcnZpY2Uge31cbiAqXG4gKiAvLyBSZXdyaXRlIGl0IGludG8gQXBwTW9kdWxlXG4gKiB7IHByb3ZpZGU6IFBiVXNlclJlc3RBcGlTZXJ2aWNlLCB1c2VDbGFzczogWW91ck93blJlc3RBcGlTZXJ2aWNlIH1cbiAqL1xuQEluamVjdGFibGUoKVxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIFBiVXNlclJlc3RBcGlTZXJ2aWNlIHtcbiAgLyoqXG4gICAqIEdldCBhbGwgdXNlciBtZXJnZSBmaWVsZHMgdG8gaW5qZWN0IGludG8gdGV4dCBlZGl0b3IuXG4gICAqL1xuICBnZXRBbGxVc2VyTWVyZ2VGaWVsZHMkOiBPYnNlcnZhYmxlPHN0cmluZ1tdPiA9IGRlZmVyT2Y8c3RyaW5nW10+KFtdKTtcblxuICAvKipcbiAgICogR2V0IGFsbCBDdXN0b20gTW9kdWxlcyB0byBiZSBpbmNsdWRlZCBpbnRvIE1vZHVsZXMgTGlzdC5cbiAgICogV2UncmUgbG9va2luZyBmb3Igc29tZW9uZSB3aG8gY291bGQgY3JlYXRlIG1hbnkgbW9kdWxlcyB0byBiZSBpbmNsdWRlZCBieSBkZWZhdWx0LCBpZiB5b3UgZmVlbCB5b3UgY2FuIGhlbHAgdXMsIHBsZWFzZSBsZWF2ZSBhIG1lc3NhZ2UhXG4gICAqL1xuICBnZXRBbGxVc2VyTW9kdWxlcyQ6IE9ic2VydmFibGU8SVVzZXJNb2R1bGVbXT4gPSBkZWZlck9mPElVc2VyTW9kdWxlW10+KFtdKTtcblxuICAvKipcbiAgICogR2V0IGFsbCBQcmVkZWZpbmVkIFRlbXBsYXRlcyBhbmQgY2F0ZWdvcmllcy5cbiAgICogWW91IGNhbiBsZWF2ZSBpdCB0byBnZXQgYWxsIGRlZmF1bHQgdGVtcGxhdGVzIGZyb20gTkdCIEFQSVxuICAgKi9cbiAgZ2V0QWxsVXNlclRlbXBsYXRlcyQ6IE9ic2VydmFibGU8SVVzZXJUZW1wbGF0ZUNhdGVnb3J5W10+ID0gdGhpcy5odHRwXG4gICAgLmdldDx7IGNhdGVnb3J5OiBzdHJpbmc7IHRlbXBsYXRlczogc3RyaW5nW10gfVtdPihOR0JfSE9TVC5jb25jYXQoJy90ZW1wbGF0ZXMnKSlcbiAgICAucGlwZShcbiAgICAgIG1hcChsaXN0ID0+XG4gICAgICAgIGxpc3QubWFwPElVc2VyVGVtcGxhdGVDYXRlZ29yeT4oKHsgY2F0ZWdvcnksIHRlbXBsYXRlcyB9KSA9PiAoe1xuICAgICAgICAgIGNhdGVnb3J5LFxuICAgICAgICAgIHRlbXBsYXRlczogdGVtcGxhdGVzLm1hcCh0aXRsZSA9PiAoe1xuICAgICAgICAgICAgdGh1bWJQYXRoOiBgaHR0cHM6Ly9uZ2ItdGVtcGxhdGVzLnMzLmFtYXpvbmF3cy5jb20vJHtjYXRlZ29yeX0tJHt0aXRsZX0uanBnYCxcbiAgICAgICAgICAgIHRpdGxlLFxuICAgICAgICAgICAgdGVtcGxhdGVEYXRhOiBudWxsXG4gICAgICAgICAgfSkpXG4gICAgICAgIH0pKVxuICAgICAgKSxcbiAgICAgIHNoYXJlUmVwbGF5KClcbiAgICApO1xuXG4gIGNvbnN0cnVjdG9yKHB1YmxpYyBodHRwOiBIdHRwQ2xpZW50KSB7fVxuXG4gIC8qKlxuICAgKiBUaGlzIG1ldGhvZCBtdXN0IHJldHVybiB0aGUgY2hvc2VuIHRlbXBsYXRlIGZyb20gVGVtcGxhdGUgR2FsbGVyeSBMaXN0IFBCRW1haWwgb2JqZWN0LFxuICAgKiBzZWUge0BsaW5rIFBiVXNlclJlc3RBcGlTZXJ2aWNlI2dldEFsbFVzZXJUZW1wbGF0ZXMkfGdldEFsbFVzZXJUZW1wbGF0ZXMkfS5cbiAgICpcbiAgICogU29tZXRpbWVzIGl0IGNhbiBjb250YWluICd0ZW1wbGF0ZURhdGEnIHByb3BlcnR5IC0gaW4gdGhpcyBjYXNlLCBqdXN0IHJldHVybiBpdC5cbiAgICpcbiAgICogQHBhcmFtIGNhdGVnb3J5IFNlbGVjdGVkIENhdGVnb3J5IGZyb20gVGVtcGxhdGUgR2FsbGVyeS5cbiAgICogQHBhcmFtIHRlbXBsYXRlIFNlbGVjdGVkIFRlbXBsYXRlIGZyb20gVGVtcGxhdGUgR2FsbGVyeS5cbiAgICpcbiAgICogQGV4YW1wbGVcbiAgICogaWYgKHRlbXBsYXRlLnRlbXBsYXRlRGF0YSkgeyByZXR1cm4gdGVtcGxhdGUgfVxuICAgKi9cbiAgZ2V0VXNlclRlbXBsYXRlRGF0YSQoY2F0ZWdvcnk6IHN0cmluZywgdGVtcGxhdGU6IElVc2VyVGVtcGxhdGUpOiBPYnNlcnZhYmxlPElVc2VyVGVtcGxhdGU+IHtcbiAgICBpZiAodGVtcGxhdGUudGVtcGxhdGVEYXRhKSB7XG4gICAgICByZXR1cm4gZGVmZXJPZih0ZW1wbGF0ZSk7XG4gICAgfVxuICAgIHJldHVybiB0aGlzLmh0dHBcbiAgICAgIC5nZXQ8SVBCRW1haWw+KE5HQl9IT1NULmNvbmNhdCgnL3RlbXBsYXRlcycpLCB7XG4gICAgICAgIHBhcmFtczogeyBjYXRlZ29yeSwgdGVtcGxhdGU6IHRlbXBsYXRlLnRpdGxlIH1cbiAgICAgIH0pXG4gICAgICAucGlwZShtYXAoZW1haWwgPT4gKHsgLi4udGVtcGxhdGUsIHRlbXBsYXRlRGF0YTogZW1haWwgfSkpKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBIYW5kbGUgYWxsIHVwbG9hZGVkIGltYWdlcy5cbiAgICogRm9ybURhdGEgJ2NzcmYnIGlzIGRlcHJlY2F0ZWQgaW4gZmF2b3Igb2YgW0h0dHBDbGllbnRYc3JmTW9kdWxlXXtAbGluayBodHRwczovL2FuZ3VsYXIuaW8vYXBpL2NvbW1vbi9odHRwL0h0dHBDbGllbnRYc3JmTW9kdWxlfS5cbiAgICpcbiAgICogQHBhcmFtIGJvZHkgQSBGb3JtRGF0YSB0aGF0IGNvbnRhaW5zICdpbWFnZScgYW5kICdjc3JmJyBkYXRhLlxuICAgKiBAcGFyYW0gdXBsb2FkSW1hZ2VQYXRoIERlZmluZSBhIHBhdGggd2hlcmUgTkdCIGhhdmUgdG8gc2VuZCB0aGUgdXBsb2FkIHJlcXVlc3QuXG4gICAqL1xuICB1c2VySW1hZ2VVcGxvYWQkKGJvZHk6IEZvcm1EYXRhLCB1cGxvYWRJbWFnZVBhdGg6IHN0cmluZyk6IE9ic2VydmFibGU8SHR0cEV2ZW50PHsgc3VjY2VzczogYm9vbGVhbjsgcGF0aDogc3RyaW5nOyBtZXNzYWdlPzogc3RyaW5nIH0+PiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5yZXF1ZXN0KCdQT1NUJywgdXBsb2FkSW1hZ2VQYXRoLCB7XG4gICAgICBib2R5LFxuICAgICAgcmVwb3J0UHJvZ3Jlc3M6IHRydWUsXG4gICAgICByZXNwb25zZVR5cGU6ICdqc29uJyxcbiAgICAgIG9ic2VydmU6ICdldmVudHMnXG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogR2V0IGFsbCBpbWFnZXMgdG8gaW5jbHVkZSBpbnRvIEltYWdlIEdhbGxlcnkuXG4gICAqL1xuICBnZXRVc2VySW1hZ2VzJCgpOiBPYnNlcnZhYmxlPHN0cmluZ1tdPiB7XG4gICAgcmV0dXJuIGRlZmVyT2Y8c3RyaW5nW10+KFtdKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXdyaXRlIHRoZSBkZWZhdWx0IHJlcXVlc3Qgd2hpY2ggY29udmVydHMgUEJFbWFpbCB0byBIVE1MLCBpZiB5b3UgaGF2ZSBhIHBhaWQgTGljZW5zZSxcbiAgICogdGhpcyBtZXRob2QgYWxsb3dzIHlvdSB0byByZXdyaXRlIHRoZSBkZWZhdWx0IENvbnZlcnRvciBBUEkgUGF0aCB0byB5b3Vycy5cbiAgICpcbiAgICogWW91IGNhbiBzdGlsbCB1c2UgdGhlIGRlZmF1bHQgQ29udmVydG9yIEFQSSBQYXRoLCBzaW5jZSB5b3UgaGF2ZSBhIHZhbGlkIGFuZCBhY3RpdmUgTGljZW5zZSBLZXkuXG4gICAqXG4gICAqIEBwYXJhbSBlbWFpbEFuZEZvbnRzIFBCRW1haWwgcGx1cyBHb29nbGUgRm9udHMgTGlzdCBvYmplY3QuXG4gICAqIEBwYXJhbSB1cmwgWW91ciBvd24gQ29udmVydG9yIEFQSSBQYXRoLCBvciBsZWF2ZSBpdCBlbXB0eSB0byB1c2UgTkdCIHNlcnZlcnMuXG4gICAqL1xuICBjcmVhdGVIVE1MVGVtcGxhdGUkKGVtYWlsQW5kRm9udHM6IElFbWFpbEFuZEdvb2dsZUZvbnRzLCB1cmw6IHN0cmluZyA9IE5HQl9IT1NUKTogT2JzZXJ2YWJsZTxJTWptbFNlcnZlclJlc3BvbnNlPiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0PElNam1sU2VydmVyUmVzcG9uc2U+KHVybCwgZW1haWxBbmRGb250cyk7XG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,17 @@
1
+ /*
2
+ * Copyright (c) 2024 Pobuca.
3
+ * All rights reserved.
4
+ */
5
+ import { inject, InjectionToken } from '@angular/core';
6
+ import { PB_CONFIG, PB_DEFAULT_CONFIG } from './tokens';
7
+ /**
8
+ * @internal
9
+ */
10
+ export const LIBRARY_IS_PRO = new InjectionToken('Library environment', {
11
+ providedIn: 'any',
12
+ factory: () => {
13
+ const { xApiKey } = inject(PB_CONFIG);
14
+ return !(!xApiKey || xApiKey.length < 40 || xApiKey === PB_DEFAULT_CONFIG.xApiKey);
15
+ }
16
+ });
17
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJpdmF0ZS10b2tlbnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9wYi1lbWFpbC1idWlsZGVyL3NyYy9saWIvdG9rZW5zL3ByaXZhdGUtdG9rZW5zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7R0FHRztBQUVILE9BQU8sRUFBRSxNQUFNLEVBQUUsY0FBYyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRXZELE9BQU8sRUFBRSxTQUFTLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFFeEQ7O0dBRUc7QUFDSCxNQUFNLENBQUMsTUFBTSxjQUFjLEdBQUcsSUFBSSxjQUFjLENBQVUscUJBQXFCLEVBQUU7SUFDL0UsVUFBVSxFQUFFLEtBQUs7SUFDakIsT0FBTyxFQUFFLEdBQUcsRUFBRTtRQUNaLE1BQU0sRUFBRSxPQUFPLEVBQUUsR0FBRyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDdEMsT0FBTyxDQUFDLENBQUMsQ0FBQyxPQUFPLElBQUksT0FBTyxDQUFDLE1BQU0sR0FBRyxFQUFFLElBQUksT0FBTyxLQUFLLGlCQUFpQixDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ3JGLENBQUM7Q0FDRixDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogQ29weXJpZ2h0IChjKSAyMDI0IFBvYnVjYS5cbiAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4gKi9cblxuaW1wb3J0IHsgaW5qZWN0LCBJbmplY3Rpb25Ub2tlbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBQQl9DT05GSUcsIFBCX0RFRkFVTFRfQ09ORklHIH0gZnJvbSAnLi90b2tlbnMnO1xuXG4vKipcbiAqIEBpbnRlcm5hbFxuICovXG5leHBvcnQgY29uc3QgTElCUkFSWV9JU19QUk8gPSBuZXcgSW5qZWN0aW9uVG9rZW48Ym9vbGVhbj4oJ0xpYnJhcnkgZW52aXJvbm1lbnQnLCB7XG4gIHByb3ZpZGVkSW46ICdhbnknLFxuICBmYWN0b3J5OiAoKSA9PiB7XG4gICAgY29uc3QgeyB4QXBpS2V5IH0gPSBpbmplY3QoUEJfQ09ORklHKTtcbiAgICByZXR1cm4gISgheEFwaUtleSB8fCB4QXBpS2V5Lmxlbmd0aCA8IDQwIHx8IHhBcGlLZXkgPT09IFBCX0RFRkFVTFRfQ09ORklHLnhBcGlLZXkpO1xuICB9XG59KTtcbiJdfQ==
@@ -0,0 +1,159 @@
1
+ /*
2
+ * Copyright (c) 2024 Pobuca.
3
+ * All rights reserved.
4
+ */
5
+ import { InjectionToken } from '@angular/core';
6
+ import { Structure } from '../classes/Structure';
7
+ import { ButtonBlock, DividerBlock, ImageBlock, SocialBlock, SpacerBlock, TextBlock } from '../classes/Elements';
8
+ /**
9
+ * Some top documentation
10
+ */
11
+ /**
12
+ * The default social networks list provided by builder. This list is injected by {@link PB_SOCIAL_NETWORKS}.
13
+ */
14
+ export const PB_DEFAULT_SOCIAL_NETWORKS = [
15
+ 'github',
16
+ 'instagram',
17
+ 'web',
18
+ 'snapchat',
19
+ 'youtube',
20
+ 'vimeo',
21
+ 'medium',
22
+ 'soundcloud',
23
+ 'dribbble',
24
+ 'facebook',
25
+ 'twitter',
26
+ 'pinterest',
27
+ 'linkedin',
28
+ 'tumblr',
29
+ 'xing',
30
+ 'tiktok'
31
+ ];
32
+ /**
33
+ * The token that injects [default social networks list]{@link PB_DEFAULT_SOCIAL_NETWORKS}.
34
+ * Use it to add or remove social networks within list.
35
+ *
36
+ * @example
37
+ * {provide: PB_SOCIAL_NETWORKS, useValue: PB_DEFAULT_SOCIAL_NETWORKS.filter(network => !['github', 'instagram'].includes(network)}
38
+ */
39
+ export const PB_SOCIAL_NETWORKS = new InjectionToken('PB Social Networks', {
40
+ providedIn: 'any',
41
+ factory: () => PB_DEFAULT_SOCIAL_NETWORKS
42
+ });
43
+ /**
44
+ * The default [Google Fonts]{@link https://fonts.google.com} list provided by builder.
45
+ * This list is injected by {@link PB_GOOGLE_FONTS} token.
46
+ */
47
+ export const PB_DEFAULT_GOOGLE_FONTS = [
48
+ 'Open+Sans:300,400,500,700',
49
+ 'Droid+Sans:300,400,500,700',
50
+ 'Lato:300,400,500,700',
51
+ 'Roboto:300,400,700,900',
52
+ 'Ubuntu:300,400,500,700',
53
+ 'Fira+Sans:300,400,500,700',
54
+ 'Mansalva:400'
55
+ ];
56
+ /**
57
+ * The token that injects [default google fonts]{@link PB_DEFAULT_GOOGLE_FONTS} list.
58
+ */
59
+ export const PB_GOOGLE_FONTS = new InjectionToken('PB Google Fonts', {
60
+ providedIn: 'any',
61
+ factory: () => PB_DEFAULT_GOOGLE_FONTS
62
+ });
63
+ /**
64
+ * The default Fallback Fonts list provided by builder. This list is injected by {@link PB_FALLBACK_FONTS} token.
65
+ *
66
+ * A fallback font is a font that takes effect in case a [Google Font]{@link PB_DEFAULT_GOOGLE_FONTS} can't be loaded by some email
67
+ * providers.
68
+ */
69
+ export const PB_DEFAULT_FALLBACK_FONTS = [
70
+ 'Palatino Linotype, Book Antiqua, Palatino, serif',
71
+ 'Times New Roman, Times, serif',
72
+ 'Arial, Helvetica, sans-serif',
73
+ 'Arial Black, Gadget, sans-serif',
74
+ 'Comic Sans MS, cursive, sans-serif',
75
+ 'Impact, Charcoal, sans-serif',
76
+ 'Lucida Sans Unicode, Lucida Grande, sans-serif',
77
+ 'Tahoma, Geneva, sans-serif',
78
+ 'Trebuchet MS, Helvetica, sans-serif',
79
+ 'Verdana, Geneva, sans-serif',
80
+ 'Courier New, Courier, monospace',
81
+ 'Lucida Console, Monaco, monospace'
82
+ ];
83
+ /**
84
+ * The token that injects {@link PB_DEFAULT_FALLBACK_FONTS} list.
85
+ */
86
+ export const PB_FALLBACK_FONTS = new InjectionToken('PB Fallback Fonts', {
87
+ providedIn: 'any',
88
+ factory: () => PB_DEFAULT_FALLBACK_FONTS
89
+ });
90
+ /**
91
+ * The default [Structures]{@link IStructure} list. This list is injected by {@link PB_STRUCTURES} token.
92
+ */
93
+ export const PB_DEFAULT_STRUCTURES = [
94
+ new Structure('cols_1'),
95
+ new Structure('cols_2'),
96
+ new Structure('cols_3'),
97
+ new Structure('cols_4'),
98
+ new Structure('cols_12'),
99
+ new Structure('cols_21')
100
+ ];
101
+ /**
102
+ * The token that injects {@link PB_DEFAULT_STRUCTURES} list.
103
+ */
104
+ export const PB_STRUCTURES = new InjectionToken('PB Structures', {
105
+ providedIn: 'any',
106
+ factory: () => PB_DEFAULT_STRUCTURES
107
+ });
108
+ /**
109
+ * The default [Blocks]{@link TBlocks} list. This list is injected by {@link PB_BLOCKS} token.
110
+ */
111
+ export const PB_DEFAULT_BLOCKS = [
112
+ new TextBlock(),
113
+ new ImageBlock(),
114
+ new ButtonBlock(),
115
+ new DividerBlock(),
116
+ new SpacerBlock(),
117
+ new SocialBlock()
118
+ ];
119
+ /**
120
+ * The token that injects {@link PB_BLOCKS} list.
121
+ */
122
+ export const PB_BLOCKS = new InjectionToken('PB Blocks', {
123
+ providedIn: 'any',
124
+ factory: () => PB_DEFAULT_BLOCKS
125
+ });
126
+ /**
127
+ * Default builder configuration, injected by {@link PB_CONFIG} token. See {@link IForRootConf} for more info.
128
+ */
129
+ export const PB_DEFAULT_CONFIG = Object.freeze({
130
+ xApiKey: 't7HdQfZjGp6R96fOV4P8v18ggf6LLTQZ1puUI2tz',
131
+ // apiPath: 'https://ngb-api.wlocalhost.org/v1',
132
+ useSaveButton: true,
133
+ usePreviewButton: true,
134
+ useDownloadButton: true,
135
+ templateListIfEmpty: true,
136
+ uploadImageName: 'image'
137
+ });
138
+ /**
139
+ * The token that injects [default builder configurations]{@link PB_DEFAULT_CONFIG}.
140
+ */
141
+ export const PB_CONFIG = new InjectionToken('PB Builder Configuration', {
142
+ providedIn: 'root',
143
+ factory: () => PB_DEFAULT_CONFIG
144
+ });
145
+ /**
146
+ * The default Storage used by builder. It can be either `localStorage` or `sessionStorage`.
147
+ */
148
+ export const PB_STORAGE_FACTORY = new InjectionToken('PB Storage factory token', {
149
+ providedIn: 'any',
150
+ factory: () => sessionStorage
151
+ });
152
+ /**
153
+ * The default storage to cache the templates list. It can be either `localStorage` or `sessionStorage`.
154
+ */
155
+ export const PB_TEMPLATES_TEMPORARY_STORAGE = new InjectionToken('PB Token that stores temporary templates cache', {
156
+ providedIn: 'any',
157
+ factory: () => sessionStorage
158
+ });
159
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9rZW5zLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcGItZW1haWwtYnVpbGRlci9zcmMvbGliL3Rva2Vucy90b2tlbnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7OztHQUdHO0FBRUgsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUcvQyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDakQsT0FBTyxFQUFFLFdBQVcsRUFBRSxZQUFZLEVBQUUsVUFBVSxFQUFFLFdBQVcsRUFBRSxXQUFXLEVBQVcsU0FBUyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFFMUg7O0dBRUc7QUFFSDs7R0FFRztBQUNILE1BQU0sQ0FBQyxNQUFNLDBCQUEwQixHQUFhO0lBQ2xELFFBQVE7SUFDUixXQUFXO0lBQ1gsS0FBSztJQUNMLFVBQVU7SUFDVixTQUFTO0lBQ1QsT0FBTztJQUNQLFFBQVE7SUFDUixZQUFZO0lBQ1osVUFBVTtJQUNWLFVBQVU7SUFDVixTQUFTO0lBQ1QsV0FBVztJQUNYLFVBQVU7SUFDVixRQUFRO0lBQ1IsTUFBTTtJQUNOLFFBQVE7Q0FDVCxDQUFDO0FBQ0Y7Ozs7OztHQU1HO0FBQ0gsTUFBTSxDQUFDLE1BQU0sa0JBQWtCLEdBQUcsSUFBSSxjQUFjLENBQVcsb0JBQW9CLEVBQUU7SUFDbkYsVUFBVSxFQUFFLEtBQUs7SUFDakIsT0FBTyxFQUFFLEdBQUcsRUFBRSxDQUFDLDBCQUEwQjtDQUMxQyxDQUFDLENBQUM7QUFFSDs7O0dBR0c7QUFDSCxNQUFNLENBQUMsTUFBTSx1QkFBdUIsR0FBYTtJQUMvQywyQkFBMkI7SUFDM0IsNEJBQTRCO0lBQzVCLHNCQUFzQjtJQUN0Qix3QkFBd0I7SUFDeEIsd0JBQXdCO0lBQ3hCLDJCQUEyQjtJQUMzQixjQUFjO0NBQ2YsQ0FBQztBQUNGOztHQUVHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sZUFBZSxHQUFHLElBQUksY0FBYyxDQUFXLGlCQUFpQixFQUFFO0lBQzdFLFVBQVUsRUFBRSxLQUFLO0lBQ2pCLE9BQU8sRUFBRSxHQUFHLEVBQUUsQ0FBQyx1QkFBdUI7Q0FDdkMsQ0FBQyxDQUFDO0FBRUg7Ozs7O0dBS0c7QUFDSCxNQUFNLENBQUMsTUFBTSx5QkFBeUIsR0FBYTtJQUNqRCxrREFBa0Q7SUFDbEQsK0JBQStCO0lBQy9CLDhCQUE4QjtJQUM5QixpQ0FBaUM7SUFDakMsb0NBQW9DO0lBQ3BDLDhCQUE4QjtJQUM5QixnREFBZ0Q7SUFDaEQsNEJBQTRCO0lBQzVCLHFDQUFxQztJQUNyQyw2QkFBNkI7SUFDN0IsaUNBQWlDO0lBQ2pDLG1DQUFtQztDQUNwQyxDQUFDO0FBQ0Y7O0dBRUc7QUFDSCxNQUFNLENBQUMsTUFBTSxpQkFBaUIsR0FBRyxJQUFJLGNBQWMsQ0FBVyxtQkFBbUIsRUFBRTtJQUNqRixVQUFVLEVBQUUsS0FBSztJQUNqQixPQUFPLEVBQUUsR0FBRyxFQUFFLENBQUMseUJBQXlCO0NBQ3pDLENBQUMsQ0FBQztBQUVIOztHQUVHO0FBQ0gsTUFBTSxDQUFDLE1BQU0scUJBQXFCLEdBQWlCO0lBQ2pELElBQUksU0FBUyxDQUFDLFFBQVEsQ0FBQztJQUN2QixJQUFJLFNBQVMsQ0FBQyxRQUFRLENBQUM7SUFDdkIsSUFBSSxTQUFTLENBQUMsUUFBUSxDQUFDO0lBQ3ZCLElBQUksU0FBUyxDQUFDLFFBQVEsQ0FBQztJQUN2QixJQUFJLFNBQVMsQ0FBQyxTQUFTLENBQUM7SUFDeEIsSUFBSSxTQUFTLENBQUMsU0FBUyxDQUFDO0NBQ3pCLENBQUM7QUFDRjs7R0FFRztBQUNILE1BQU0sQ0FBQyxNQUFNLGFBQWEsR0FBRyxJQUFJLGNBQWMsQ0FBK0IsZUFBZSxFQUFFO0lBQzdGLFVBQVUsRUFBRSxLQUFLO0lBQ2pCLE9BQU8sRUFBRSxHQUFHLEVBQUUsQ0FBQyxxQkFBcUI7Q0FDckMsQ0FBQyxDQUFDO0FBRUg7O0dBRUc7QUFDSCxNQUFNLENBQUMsTUFBTSxpQkFBaUIsR0FBYztJQUMxQyxJQUFJLFNBQVMsRUFBRTtJQUNmLElBQUksVUFBVSxFQUFFO0lBQ2hCLElBQUksV0FBVyxFQUFFO0lBQ2pCLElBQUksWUFBWSxFQUFFO0lBQ2xCLElBQUksV0FBVyxFQUFFO0lBQ2pCLElBQUksV0FBVyxFQUFFO0NBQ2xCLENBQUM7QUFDRjs7R0FFRztBQUNILE1BQU0sQ0FBQyxNQUFNLFNBQVMsR0FBRyxJQUFJLGNBQWMsQ0FBMkIsV0FBVyxFQUFFO0lBQ2pGLFVBQVUsRUFBRSxLQUFLO0lBQ2pCLE9BQU8sRUFBRSxHQUFHLEVBQUUsQ0FBQyxpQkFBaUI7Q0FDakMsQ0FBQyxDQUFDO0FBRUg7O0dBRUc7QUFDSCxNQUFNLENBQUMsTUFBTSxpQkFBaUIsR0FBaUIsTUFBTSxDQUFDLE1BQU0sQ0FBQztJQUMzRCxPQUFPLEVBQUUsMENBQTBDO0lBQ25ELGdEQUFnRDtJQUNoRCxhQUFhLEVBQUUsSUFBSTtJQUNuQixnQkFBZ0IsRUFBRSxJQUFJO0lBQ3RCLGlCQUFpQixFQUFFLElBQUk7SUFDdkIsbUJBQW1CLEVBQUUsSUFBSTtJQUN6QixlQUFlLEVBQUUsT0FBTztDQUN6QixDQUFDLENBQUM7QUFDSDs7R0FFRztBQUNILE1BQU0sQ0FBQyxNQUFNLFNBQVMsR0FBRyxJQUFJLGNBQWMsQ0FBd0IsMEJBQTBCLEVBQUU7SUFDN0YsVUFBVSxFQUFFLE1BQU07SUFDbEIsT0FBTyxFQUFFLEdBQUcsRUFBRSxDQUFDLGlCQUFpQjtDQUNqQyxDQUFDLENBQUM7QUFFSDs7R0FFRztBQUNILE1BQU0sQ0FBQyxNQUFNLGtCQUFrQixHQUFHLElBQUksY0FBYyxDQUFVLDBCQUEwQixFQUFFO0lBQ3hGLFVBQVUsRUFBRSxLQUFLO0lBQ2pCLE9BQU8sRUFBRSxHQUFHLEVBQUUsQ0FBQyxjQUFjO0NBQzlCLENBQUMsQ0FBQztBQUVIOztHQUVHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sOEJBQThCLEdBQUcsSUFBSSxjQUFjLENBQVUsZ0RBQWdELEVBQUU7SUFDMUgsVUFBVSxFQUFFLEtBQUs7SUFDakIsT0FBTyxFQUFFLEdBQUcsRUFBRSxDQUFDLGNBQWM7Q0FDOUIsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIENvcHlyaWdodCAoYykgMjAyNCBQb2J1Y2EuXG4gKiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuICovXG5cbmltcG9ydCB7IEluamVjdGlvblRva2VuIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IElGb3JSb290Q29uZiwgSVN0cnVjdHVyZSB9IGZyb20gJy4uL2ludGVyZmFjZXMvaW50ZXJmYWNlcyc7XG5pbXBvcnQgeyBTdHJ1Y3R1cmUgfSBmcm9tICcuLi9jbGFzc2VzL1N0cnVjdHVyZSc7XG5pbXBvcnQgeyBCdXR0b25CbG9jaywgRGl2aWRlckJsb2NrLCBJbWFnZUJsb2NrLCBTb2NpYWxCbG9jaywgU3BhY2VyQmxvY2ssIFRCbG9ja3MsIFRleHRCbG9jayB9IGZyb20gJy4uL2NsYXNzZXMvRWxlbWVudHMnO1xuXG4vKipcbiAqIFNvbWUgdG9wIGRvY3VtZW50YXRpb25cbiAqL1xuXG4vKipcbiAqIFRoZSBkZWZhdWx0IHNvY2lhbCBuZXR3b3JrcyBsaXN0IHByb3ZpZGVkIGJ5IGJ1aWxkZXIuIFRoaXMgbGlzdCBpcyBpbmplY3RlZCBieSB7QGxpbmsgUEJfU09DSUFMX05FVFdPUktTfS5cbiAqL1xuZXhwb3J0IGNvbnN0IFBCX0RFRkFVTFRfU09DSUFMX05FVFdPUktTOiBzdHJpbmdbXSA9IFtcbiAgJ2dpdGh1YicsXG4gICdpbnN0YWdyYW0nLFxuICAnd2ViJyxcbiAgJ3NuYXBjaGF0JyxcbiAgJ3lvdXR1YmUnLFxuICAndmltZW8nLFxuICAnbWVkaXVtJyxcbiAgJ3NvdW5kY2xvdWQnLFxuICAnZHJpYmJibGUnLFxuICAnZmFjZWJvb2snLFxuICAndHdpdHRlcicsXG4gICdwaW50ZXJlc3QnLFxuICAnbGlua2VkaW4nLFxuICAndHVtYmxyJyxcbiAgJ3hpbmcnLFxuICAndGlrdG9rJ1xuXTtcbi8qKlxuICogVGhlIHRva2VuIHRoYXQgaW5qZWN0cyBbZGVmYXVsdCBzb2NpYWwgbmV0d29ya3MgbGlzdF17QGxpbmsgUEJfREVGQVVMVF9TT0NJQUxfTkVUV09SS1N9LlxuICogVXNlIGl0IHRvIGFkZCBvciByZW1vdmUgc29jaWFsIG5ldHdvcmtzIHdpdGhpbiBsaXN0LlxuICpcbiAqIEBleGFtcGxlXG4gKiB7cHJvdmlkZTogUEJfU09DSUFMX05FVFdPUktTLCB1c2VWYWx1ZTogUEJfREVGQVVMVF9TT0NJQUxfTkVUV09SS1MuZmlsdGVyKG5ldHdvcmsgPT4gIVsnZ2l0aHViJywgJ2luc3RhZ3JhbSddLmluY2x1ZGVzKG5ldHdvcmspfVxuICovXG5leHBvcnQgY29uc3QgUEJfU09DSUFMX05FVFdPUktTID0gbmV3IEluamVjdGlvblRva2VuPHN0cmluZ1tdPignUEIgU29jaWFsIE5ldHdvcmtzJywge1xuICBwcm92aWRlZEluOiAnYW55JyxcbiAgZmFjdG9yeTogKCkgPT4gUEJfREVGQVVMVF9TT0NJQUxfTkVUV09SS1Ncbn0pO1xuXG4vKipcbiAqIFRoZSBkZWZhdWx0IFtHb29nbGUgRm9udHNde0BsaW5rIGh0dHBzOi8vZm9udHMuZ29vZ2xlLmNvbX0gbGlzdCBwcm92aWRlZCBieSBidWlsZGVyLlxuICogVGhpcyBsaXN0IGlzIGluamVjdGVkIGJ5IHtAbGluayBQQl9HT09HTEVfRk9OVFN9IHRva2VuLlxuICovXG5leHBvcnQgY29uc3QgUEJfREVGQVVMVF9HT09HTEVfRk9OVFM6IHN0cmluZ1tdID0gW1xuICAnT3BlbitTYW5zOjMwMCw0MDAsNTAwLDcwMCcsXG4gICdEcm9pZCtTYW5zOjMwMCw0MDAsNTAwLDcwMCcsXG4gICdMYXRvOjMwMCw0MDAsNTAwLDcwMCcsXG4gICdSb2JvdG86MzAwLDQwMCw3MDAsOTAwJyxcbiAgJ1VidW50dTozMDAsNDAwLDUwMCw3MDAnLFxuICAnRmlyYStTYW5zOjMwMCw0MDAsNTAwLDcwMCcsXG4gICdNYW5zYWx2YTo0MDAnXG5dO1xuLyoqXG4gKiBUaGUgdG9rZW4gdGhhdCBpbmplY3RzIFtkZWZhdWx0IGdvb2dsZSBmb250c117QGxpbmsgUEJfREVGQVVMVF9HT09HTEVfRk9OVFN9IGxpc3QuXG4gKi9cbmV4cG9ydCBjb25zdCBQQl9HT09HTEVfRk9OVFMgPSBuZXcgSW5qZWN0aW9uVG9rZW48c3RyaW5nW10+KCdQQiBHb29nbGUgRm9udHMnLCB7XG4gIHByb3ZpZGVkSW46ICdhbnknLFxuICBmYWN0b3J5OiAoKSA9PiBQQl9ERUZBVUxUX0dPT0dMRV9GT05UU1xufSk7XG5cbi8qKlxuICogVGhlIGRlZmF1bHQgRmFsbGJhY2sgRm9udHMgbGlzdCBwcm92aWRlZCBieSBidWlsZGVyLiBUaGlzIGxpc3QgaXMgaW5qZWN0ZWQgYnkge0BsaW5rIFBCX0ZBTExCQUNLX0ZPTlRTfSB0b2tlbi5cbiAqXG4gKiBBIGZhbGxiYWNrIGZvbnQgaXMgYSBmb250IHRoYXQgdGFrZXMgZWZmZWN0IGluIGNhc2UgYSBbR29vZ2xlIEZvbnRde0BsaW5rIFBCX0RFRkFVTFRfR09PR0xFX0ZPTlRTfSBjYW4ndCBiZSBsb2FkZWQgYnkgc29tZSBlbWFpbFxuICogcHJvdmlkZXJzLlxuICovXG5leHBvcnQgY29uc3QgUEJfREVGQVVMVF9GQUxMQkFDS19GT05UUzogc3RyaW5nW10gPSBbXG4gICdQYWxhdGlubyBMaW5vdHlwZSwgQm9vayBBbnRpcXVhLCBQYWxhdGlubywgc2VyaWYnLFxuICAnVGltZXMgTmV3IFJvbWFuLCBUaW1lcywgc2VyaWYnLFxuICAnQXJpYWwsIEhlbHZldGljYSwgc2Fucy1zZXJpZicsXG4gICdBcmlhbCBCbGFjaywgR2FkZ2V0LCBzYW5zLXNlcmlmJyxcbiAgJ0NvbWljIFNhbnMgTVMsIGN1cnNpdmUsIHNhbnMtc2VyaWYnLFxuICAnSW1wYWN0LCBDaGFyY29hbCwgc2Fucy1zZXJpZicsXG4gICdMdWNpZGEgU2FucyBVbmljb2RlLCBMdWNpZGEgR3JhbmRlLCBzYW5zLXNlcmlmJyxcbiAgJ1RhaG9tYSwgR2VuZXZhLCBzYW5zLXNlcmlmJyxcbiAgJ1RyZWJ1Y2hldCBNUywgSGVsdmV0aWNhLCBzYW5zLXNlcmlmJyxcbiAgJ1ZlcmRhbmEsIEdlbmV2YSwgc2Fucy1zZXJpZicsXG4gICdDb3VyaWVyIE5ldywgQ291cmllciwgbW9ub3NwYWNlJyxcbiAgJ0x1Y2lkYSBDb25zb2xlLCBNb25hY28sIG1vbm9zcGFjZSdcbl07XG4vKipcbiAqIFRoZSB0b2tlbiB0aGF0IGluamVjdHMge0BsaW5rIFBCX0RFRkFVTFRfRkFMTEJBQ0tfRk9OVFN9IGxpc3QuXG4gKi9cbmV4cG9ydCBjb25zdCBQQl9GQUxMQkFDS19GT05UUyA9IG5ldyBJbmplY3Rpb25Ub2tlbjxzdHJpbmdbXT4oJ1BCIEZhbGxiYWNrIEZvbnRzJywge1xuICBwcm92aWRlZEluOiAnYW55JyxcbiAgZmFjdG9yeTogKCkgPT4gUEJfREVGQVVMVF9GQUxMQkFDS19GT05UU1xufSk7XG5cbi8qKlxuICogVGhlIGRlZmF1bHQgW1N0cnVjdHVyZXNde0BsaW5rIElTdHJ1Y3R1cmV9IGxpc3QuIFRoaXMgbGlzdCBpcyBpbmplY3RlZCBieSB7QGxpbmsgUEJfU1RSVUNUVVJFU30gdG9rZW4uXG4gKi9cbmV4cG9ydCBjb25zdCBQQl9ERUZBVUxUX1NUUlVDVFVSRVM6IElTdHJ1Y3R1cmVbXSA9IFtcbiAgbmV3IFN0cnVjdHVyZSgnY29sc18xJyksXG4gIG5ldyBTdHJ1Y3R1cmUoJ2NvbHNfMicpLFxuICBuZXcgU3RydWN0dXJlKCdjb2xzXzMnKSxcbiAgbmV3IFN0cnVjdHVyZSgnY29sc180JyksXG4gIG5ldyBTdHJ1Y3R1cmUoJ2NvbHNfMTInKSxcbiAgbmV3IFN0cnVjdHVyZSgnY29sc18yMScpXG5dO1xuLyoqXG4gKiBUaGUgdG9rZW4gdGhhdCBpbmplY3RzIHtAbGluayBQQl9ERUZBVUxUX1NUUlVDVFVSRVN9IGxpc3QuXG4gKi9cbmV4cG9ydCBjb25zdCBQQl9TVFJVQ1RVUkVTID0gbmV3IEluamVjdGlvblRva2VuPHR5cGVvZiBQQl9ERUZBVUxUX1NUUlVDVFVSRVM+KCdQQiBTdHJ1Y3R1cmVzJywge1xuICBwcm92aWRlZEluOiAnYW55JyxcbiAgZmFjdG9yeTogKCkgPT4gUEJfREVGQVVMVF9TVFJVQ1RVUkVTXG59KTtcblxuLyoqXG4gKiBUaGUgZGVmYXVsdCBbQmxvY2tzXXtAbGluayBUQmxvY2tzfSBsaXN0LiBUaGlzIGxpc3QgaXMgaW5qZWN0ZWQgYnkge0BsaW5rIFBCX0JMT0NLU30gdG9rZW4uXG4gKi9cbmV4cG9ydCBjb25zdCBQQl9ERUZBVUxUX0JMT0NLUzogVEJsb2Nrc1tdID0gW1xuICBuZXcgVGV4dEJsb2NrKCksXG4gIG5ldyBJbWFnZUJsb2NrKCksXG4gIG5ldyBCdXR0b25CbG9jaygpLFxuICBuZXcgRGl2aWRlckJsb2NrKCksXG4gIG5ldyBTcGFjZXJCbG9jaygpLFxuICBuZXcgU29jaWFsQmxvY2soKVxuXTtcbi8qKlxuICogVGhlIHRva2VuIHRoYXQgaW5qZWN0cyB7QGxpbmsgUEJfQkxPQ0tTfSBsaXN0LlxuICovXG5leHBvcnQgY29uc3QgUEJfQkxPQ0tTID0gbmV3IEluamVjdGlvblRva2VuPHR5cGVvZiBQQl9ERUZBVUxUX0JMT0NLUz4oJ1BCIEJsb2NrcycsIHtcbiAgcHJvdmlkZWRJbjogJ2FueScsXG4gIGZhY3Rvcnk6ICgpID0+IFBCX0RFRkFVTFRfQkxPQ0tTXG59KTtcblxuLyoqXG4gKiBEZWZhdWx0IGJ1aWxkZXIgY29uZmlndXJhdGlvbiwgaW5qZWN0ZWQgYnkge0BsaW5rIFBCX0NPTkZJR30gdG9rZW4uIFNlZSB7QGxpbmsgSUZvclJvb3RDb25mfSBmb3IgbW9yZSBpbmZvLlxuICovXG5leHBvcnQgY29uc3QgUEJfREVGQVVMVF9DT05GSUc6IElGb3JSb290Q29uZiA9IE9iamVjdC5mcmVlemUoe1xuICB4QXBpS2V5OiAndDdIZFFmWmpHcDZSOTZmT1Y0UDh2MThnZ2Y2TExUUVoxcHVVSTJ0eicsXG4gIC8vIGFwaVBhdGg6ICdodHRwczovL25nYi1hcGkud2xvY2FsaG9zdC5vcmcvdjEnLFxuICB1c2VTYXZlQnV0dG9uOiB0cnVlLFxuICB1c2VQcmV2aWV3QnV0dG9uOiB0cnVlLFxuICB1c2VEb3dubG9hZEJ1dHRvbjogdHJ1ZSxcbiAgdGVtcGxhdGVMaXN0SWZFbXB0eTogdHJ1ZSxcbiAgdXBsb2FkSW1hZ2VOYW1lOiAnaW1hZ2UnXG59KTtcbi8qKlxuICogVGhlIHRva2VuIHRoYXQgaW5qZWN0cyBbZGVmYXVsdCBidWlsZGVyIGNvbmZpZ3VyYXRpb25zXXtAbGluayBQQl9ERUZBVUxUX0NPTkZJR30uXG4gKi9cbmV4cG9ydCBjb25zdCBQQl9DT05GSUcgPSBuZXcgSW5qZWN0aW9uVG9rZW48UGFydGlhbDxJRm9yUm9vdENvbmY+PignUEIgQnVpbGRlciBDb25maWd1cmF0aW9uJywge1xuICBwcm92aWRlZEluOiAncm9vdCcsXG4gIGZhY3Rvcnk6ICgpID0+IFBCX0RFRkFVTFRfQ09ORklHXG59KTtcblxuLyoqXG4gKiBUaGUgZGVmYXVsdCBTdG9yYWdlIHVzZWQgYnkgYnVpbGRlci4gSXQgY2FuIGJlIGVpdGhlciBgbG9jYWxTdG9yYWdlYCBvciBgc2Vzc2lvblN0b3JhZ2VgLlxuICovXG5leHBvcnQgY29uc3QgUEJfU1RPUkFHRV9GQUNUT1JZID0gbmV3IEluamVjdGlvblRva2VuPFN0b3JhZ2U+KCdQQiBTdG9yYWdlIGZhY3RvcnkgdG9rZW4nLCB7XG4gIHByb3ZpZGVkSW46ICdhbnknLFxuICBmYWN0b3J5OiAoKSA9PiBzZXNzaW9uU3RvcmFnZVxufSk7XG5cbi8qKlxuICogVGhlIGRlZmF1bHQgc3RvcmFnZSB0byBjYWNoZSB0aGUgdGVtcGxhdGVzIGxpc3QuIEl0IGNhbiBiZSBlaXRoZXIgYGxvY2FsU3RvcmFnZWAgb3IgYHNlc3Npb25TdG9yYWdlYC5cbiAqL1xuZXhwb3J0IGNvbnN0IFBCX1RFTVBMQVRFU19URU1QT1JBUllfU1RPUkFHRSA9IG5ldyBJbmplY3Rpb25Ub2tlbjxTdG9yYWdlPignUEIgVG9rZW4gdGhhdCBzdG9yZXMgdGVtcG9yYXJ5IHRlbXBsYXRlcyBjYWNoZScsIHtcbiAgcHJvdmlkZWRJbjogJ2FueScsXG4gIGZhY3Rvcnk6ICgpID0+IHNlc3Npb25TdG9yYWdlXG59KTtcbiJdfQ==
@@ -0,0 +1,147 @@
1
+ /*
2
+ * Copyright (c) 2024 Pobuca.
3
+ * All rights reserved.
4
+ */
5
+ import { defer, of } from 'rxjs';
6
+ // import { getDiff } from 'recursive-diff';
7
+ /**
8
+ * An alternative lodash cloneDeep function. Use it on your own risk.
9
+ * @param obj Object to be cloned.
10
+ */
11
+ export function cloneDeep(obj = {}) {
12
+ return JSON.parse(JSON.stringify(obj));
13
+ }
14
+ /**
15
+ * An alternative lodash isEqual function. Use it on your own risk.
16
+ * @param x Object to be compared
17
+ * @param y the second Object to be compared
18
+ */
19
+ export function isEqual(x, y) {
20
+ // return !getDiff(x, y).length;
21
+ return JSON.stringify(x) === JSON.stringify(y);
22
+ }
23
+ /**
24
+ * An alternative lodash defaultsDeep function. Use it on your own risk.
25
+ * @param to The object with default properties
26
+ * @param sources An array of objects with default properties
27
+ */
28
+ export function defaultsDeep(to = {}, ...sources) {
29
+ for (const source of sources) {
30
+ for (const key in source) {
31
+ if (to.hasOwnProperty(key)) {
32
+ continue;
33
+ }
34
+ if (!Array.isArray(source[key]) && typeof source[key] === 'object') {
35
+ to[key] = defaultsDeep(to[key], source[key]);
36
+ }
37
+ else {
38
+ to[key] = source[key];
39
+ }
40
+ }
41
+ }
42
+ return to;
43
+ }
44
+ /**
45
+ * Create CSS border styles based on {@link IBorder} object.
46
+ * @param border Border object.
47
+ * @param rule Most likely you won't need it, but for some cases, it can be changed. Default is: `border`.
48
+ *
49
+ * @return CSS Border styles.
50
+ */
51
+ export function createBorder(border, rule = 'border') {
52
+ const { color = '#000000', style = 'solid', width = 4, radius = 0 } = border;
53
+ return {
54
+ [rule]: `${width}px ${style} ${color}`,
55
+ borderRadius: `${radius}px`
56
+ };
57
+ }
58
+ /**
59
+ * Create CSS padding styles based on {@link IPadding} object.
60
+ * @param padding Padding object.
61
+ * @param rule Most likely you won't need it, but for some cases, it can be changed. Default is: `padding`.
62
+ */
63
+ export function createPadding(padding, rule = 'padding') {
64
+ const { top = 10, right = 25, bottom = 10, left = 25 } = padding;
65
+ return {
66
+ [rule]: `${top}px ${right}px ${bottom}px ${left}px`
67
+ };
68
+ }
69
+ /**
70
+ * Create CSS margin styles based on {@link IMargin} object.
71
+ * @param margin Margin object.
72
+ */
73
+ export function createMargin(margin) {
74
+ const { top = 0, bottom = 0 } = margin;
75
+ return {
76
+ margin: `${top}px 0 ${bottom}px`
77
+ };
78
+ }
79
+ /**
80
+ * Create CSS font styles based on {@link IFont} object.
81
+ * @param font Font object.
82
+ */
83
+ export function createFont(font) {
84
+ const { family = '', size = 13, style = 'normal', weight = 'normal' } = font;
85
+ return {
86
+ fontFamily: family,
87
+ fontSize: `${size}px`,
88
+ fontStyle: style,
89
+ fontWeight: weight
90
+ };
91
+ }
92
+ /**
93
+ * Create CSS line-height styles based on {@link ILineHeight} object.
94
+ * @param lineHeight Line-height object.
95
+ */
96
+ export function createLineHeight(lineHeight) {
97
+ const { value = 22, unit = 'px' } = lineHeight;
98
+ return {
99
+ lineHeight: unit !== 'none' ? `${value}${unit}` : 'normal'
100
+ };
101
+ }
102
+ /**
103
+ * Create background styles based on {@link IBackground} object.
104
+ * @param background Background object.
105
+ */
106
+ export function createBackground(background) {
107
+ const { url = '', color = 'white', repeat = 'no-repeat' } = background;
108
+ return `${color} ${url && `url(${url})`} ${repeat} top center`;
109
+ }
110
+ /**
111
+ * Create Width or Height styles based on {@link IWidthHeight} object.
112
+ * @param widthHeight Width or Height object.
113
+ */
114
+ export function createWidthHeight(widthHeight) {
115
+ const { value = 100, unit = '%', auto = false } = widthHeight;
116
+ return (auto && 'auto') || (['%', 'px'].indexOf(unit) > -1 && `${value}${unit}`) || unit;
117
+ }
118
+ /**
119
+ * Convert bytes to KB-YB.
120
+ * @param bytes Bytes number.
121
+ * @param decimals How many decimals to be used. Default: 2.
122
+ */
123
+ export function bytesToSize(bytes, decimals = 2) {
124
+ if (bytes === 0) {
125
+ return '0 Bytes';
126
+ }
127
+ const k = 1024;
128
+ const dm = decimals < 0 ? 0 : decimals;
129
+ const sizes = ['Bytes', 'KB', 'MB', 'GB', 'TB', 'PB', 'EB', 'ZB', 'YB'];
130
+ const i = Math.floor(Math.log(bytes) / Math.log(k));
131
+ return parseFloat((bytes / Math.pow(k, i)).toFixed(dm)) + sizes[i];
132
+ }
133
+ /**
134
+ * Get a Social Icon path.
135
+ * @param path Icon path. Ex: facebook.png
136
+ */
137
+ export function getAssetByPath(path) {
138
+ return `https://www.mailjet.com/images/theme/v1/icons/ico-social/${path}`;
139
+ }
140
+ /**
141
+ * A simple and powerful function that allows to create an `Observable` only when it needs to be used.
142
+ * @param args Arguments to send to new Observable.
143
+ */
144
+ export function deferOf(...args) {
145
+ return defer(() => of(...args));
146
+ }
147
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9wYi1lbWFpbC1idWlsZGVyL3NyYy9saWIvdXRpbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7OztHQUdHO0FBR0gsT0FBTyxFQUFFLEtBQUssRUFBYyxFQUFFLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFN0MsNENBQTRDO0FBRTVDOzs7R0FHRztBQUNILE1BQU0sVUFBVSxTQUFTLENBQUksR0FBRyxHQUFHLEVBQUU7SUFDbkMsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztBQUN6QyxDQUFDO0FBRUQ7Ozs7R0FJRztBQUNILE1BQU0sVUFBVSxPQUFPLENBQUMsQ0FBUyxFQUFFLENBQVM7SUFDMUMsZ0NBQWdDO0lBQ2hDLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsS0FBSyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDO0FBQ2pELENBQUM7QUFFRDs7OztHQUlHO0FBQ0gsTUFBTSxVQUFVLFlBQVksQ0FBSSxLQUFRLEVBQU8sRUFBRSxHQUFHLE9BQVk7SUFDOUQsS0FBSyxNQUFNLE1BQU0sSUFBSSxPQUFPLEVBQUU7UUFDNUIsS0FBSyxNQUFNLEdBQUcsSUFBSSxNQUFNLEVBQUU7WUFDeEIsSUFBSSxFQUFFLENBQUMsY0FBYyxDQUFDLEdBQUcsQ0FBQyxFQUFFO2dCQUMxQixTQUFTO2FBQ1Y7WUFDRCxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxPQUFPLE1BQU0sQ0FBQyxHQUFHLENBQUMsS0FBSyxRQUFRLEVBQUU7Z0JBQ2xFLEVBQUUsQ0FBQyxHQUFHLENBQUMsR0FBRyxZQUFZLENBQUMsRUFBRSxDQUFDLEdBQUcsQ0FBQyxFQUFFLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FB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QUFHLEVBQUUsQ0FBQyxFQUFFLENBQUMsR0FBRyxJQUFJLENBQUMsQ0FBQyxDQUFDO0FBQ2xDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogQ29weXJpZ2h0IChjKSAyMDI0IFBvYnVjYS5cbiAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4gKi9cblxuaW1wb3J0IHsgSUJhY2tncm91bmQsIElCb3JkZXIsIElGb250LCBJTGluZUhlaWdodCwgSU1hcmdpbiwgSVBhZGRpbmcsIElXaWR0aEhlaWdodCwgVEZvbnRXZWlnaHQgfSBmcm9tICcuL2ludGVyZmFjZXMvaW50ZXJmYWNlcyc7XG5pbXBvcnQgeyBkZWZlciwgT2JzZXJ2YWJsZSwgb2YgfSBmcm9tICdyeGpzJztcblxuLy8gaW1wb3J0IHsgZ2V0RGlmZiB9IGZyb20gJ3JlY3Vyc2l2ZS1kaWZmJztcblxuLyoqXG4gKiBBbiBhbHRlcm5hdGl2ZSBsb2Rhc2ggY2xvbmVEZWVwIGZ1bmN0aW9uLiBVc2UgaXQgb24geW91ciBvd24gcmlzay5cbiAqIEBwYXJhbSBvYmogT2JqZWN0IHRvIGJlIGNsb25lZC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGNsb25lRGVlcDxUPihvYmogPSB7fSk6IFQge1xuICByZXR1cm4gSlNPTi5wYXJzZShKU09OLnN0cmluZ2lmeShvYmopKTtcbn1cblxuLyoqXG4gKiBBbiBhbHRlcm5hdGl2ZSBsb2Rhc2ggaXNFcXVhbCBmdW5jdGlvbi4gVXNlIGl0IG9uIHlvdXIgb3duIHJpc2suXG4gKiBAcGFyYW0geCBPYmplY3QgdG8gYmUgY29tcGFyZWRcbiAqIEBwYXJhbSB5IHRoZSBzZWNvbmQgT2JqZWN0IHRvIGJlIGNvbXBhcmVkXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBpc0VxdWFsKHg6IG9iamVjdCwgeTogb2JqZWN0KTogYm9vbGVhbiB7XG4gIC8vIHJldHVybiAhZ2V0RGlmZih4LCB5KS5sZW5ndGg7XG4gIHJldHVybiBKU09OLnN0cmluZ2lmeSh4KSA9PT0gSlNPTi5zdHJpbmdpZnkoeSk7XG59XG5cbi8qKlxuICogQW4gYWx0ZXJuYXRpdmUgbG9kYXNoIGRlZmF1bHRzRGVlcCBmdW5jdGlvbi4gVXNlIGl0IG9uIHlvdXIgb3duIHJpc2suXG4gKiBAcGFyYW0gdG8gVGhlIG9iamVjdCB3aXRoIGRlZmF1bHQgcHJvcGVydGllc1xuICogQHBhcmFtIHNvdXJjZXMgQW4gYXJyYXkgb2Ygb2JqZWN0cyB3aXRoIGRlZmF1bHQgcHJvcGVydGllc1xuICovXG5leHBvcnQgZnVuY3Rpb24gZGVmYXVsdHNEZWVwPFQ+KHRvOiBUID0ge30gYXMgVCwgLi4uc291cmNlczogVFtdKTogVCB7XG4gIGZvciAoY29uc3Qgc291cmNlIG9mIHNvdXJjZXMpIHtcbiAgICBmb3IgKGNvbnN0IGtleSBpbiBzb3VyY2UpIHtcbiAgICAgIGlmICh0by5oYXNPd25Qcm9wZXJ0eShrZXkpKSB7XG4gICAgICAgIGNvbnRpbnVlO1xuICAgICAgfVxuICAgICAgaWYgKCFBcnJheS5pc0FycmF5KHNvdXJjZVtrZXldKSAmJiB0eXBlb2Ygc291cmNlW2tleV0gPT09ICdvYmplY3QnKSB7XG4gICAgICAgIHRvW2tleV0gPSBkZWZhdWx0c0RlZXAodG9ba2V5XSwgc291cmNlW2tleV0pO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdG9ba2V5XSA9IHNvdXJjZVtrZXldO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICByZXR1cm4gKHRvIGFzIHVua25vd24pIGFzIFQ7XG59XG5cbi8qKlxuICogQ3JlYXRlIENTUyBib3JkZXIgc3R5bGVzIGJhc2VkIG9uIHtAbGluayBJQm9yZGVyfSBvYmplY3QuXG4gKiBAcGFyYW0gYm9yZGVyIEJvcmRlciBvYmplY3QuXG4gKiBAcGFyYW0gcnVsZSBNb3N0IGxpa2VseSB5b3Ugd29uJ3QgbmVlZCBpdCwgYnV0IGZvciBzb21lIGNhc2VzLCBpdCBjYW4gYmUgY2hhbmdlZC4gRGVmYXVsdCBpczogYGJvcmRlcmAuXG4gKlxuICogQHJldHVybiBDU1MgQm9yZGVyIHN0eWxlcy5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZUJvcmRlcihib3JkZXI6IElCb3JkZXIsIHJ1bGUgPSAnYm9yZGVyJyk6IHsgW3A6IHN0cmluZ106IHN0cmluZzsgYm9yZGVyUmFkaXVzOiBzdHJpbmcgfSB7XG4gIGNvbnN0IHsgY29sb3IgPSAnIzAwMDAwMCcsIHN0eWxlID0gJ3NvbGlkJywgd2lkdGggPSA0LCByYWRpdXMgPSAwIH0gPSBib3JkZXI7XG4gIHJldHVybiB7XG4gICAgW3J1bGVdOiBgJHt3aWR0aH1weCAke3N0eWxlfSAke2NvbG9yfWAsXG4gICAgYm9yZGVyUmFkaXVzOiBgJHtyYWRpdXN9cHhgXG4gIH07XG59XG5cbi8qKlxuICogQ3JlYXRlIENTUyBwYWRkaW5nIHN0eWxlcyBiYXNlZCBvbiB7QGxpbmsgSVBhZGRpbmd9IG9iamVjdC5cbiAqIEBwYXJhbSBwYWRkaW5nIFBhZGRpbmcgb2JqZWN0LlxuICogQHBhcmFtIHJ1bGUgTW9zdCBsaWtlbHkgeW91IHdvbid0IG5lZWQgaXQsIGJ1dCBmb3Igc29tZSBjYXNlcywgaXQgY2FuIGJlIGNoYW5nZWQuIERlZmF1bHQgaXM6IGBwYWRkaW5nYC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZVBhZGRpbmcocGFkZGluZzogSVBhZGRpbmcsIHJ1bGUgPSAncGFkZGluZycpOiB7IFtwOiBzdHJpbmddOiBzdHJpbmcgfSB7XG4gIGNvbnN0IHsgdG9wID0gMTAsIHJpZ2h0ID0gMjUsIGJvdHRvbSA9IDEwLCBsZWZ0ID0gMjUgfSA9IHBhZGRpbmc7XG4gIHJldHVybiB7XG4gICAgW3J1bGVdOiBgJHt0b3B9cHggJHtyaWdodH1weCAke2JvdHRvbX1weCAke2xlZnR9cHhgXG4gIH07XG59XG5cbi8qKlxuICogQ3JlYXRlIENTUyBtYXJnaW4gc3R5bGVzIGJhc2VkIG9uIHtAbGluayBJTWFyZ2lufSBvYmplY3QuXG4gKiBAcGFyYW0gbWFyZ2luIE1hcmdpbiBvYmplY3QuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVNYXJnaW4obWFyZ2luOiBJTWFyZ2luKTogeyBtYXJnaW46IHN0cmluZyB9IHtcbiAgY29uc3QgeyB0b3AgPSAwLCBib3R0b20gPSAwIH0gPSBtYXJnaW47XG4gIHJldHVybiB7XG4gICAgbWFyZ2luOiBgJHt0b3B9cHggMCAke2JvdHRvbX1weGBcbiAgfTtcbn1cblxuLyoqXG4gKiBDcmVhdGUgQ1NTIGZvbnQgc3R5bGVzIGJhc2VkIG9uIHtAbGluayBJRm9udH0gb2JqZWN0LlxuICogQHBhcmFtIGZvbnQgRm9udCBvYmplY3QuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVGb250KGZvbnQ6IElGb250KTogeyBmb250RmFtaWx5OiBzdHJpbmc7IGZvbnRTaXplOiBzdHJpbmc7IGZvbnRTdHlsZTogc3RyaW5nOyBmb250V2VpZ2h0OiBudW1iZXIgfCBURm9udFdlaWdodCB9IHtcbiAgY29uc3QgeyBmYW1pbHkgPSAnJywgc2l6ZSA9IDEzLCBzdHlsZSA9ICdub3JtYWwnLCB3ZWlnaHQgPSAnbm9ybWFsJyB9ID0gZm9udDtcbiAgcmV0dXJuIHtcbiAgICBmb250RmFtaWx5OiBmYW1pbHksXG4gICAgZm9udFNpemU6IGAke3NpemV9cHhgLFxuICAgIGZvbnRTdHlsZTogc3R5bGUsXG4gICAgZm9udFdlaWdodDogd2VpZ2h0XG4gIH07XG59XG5cbi8qKlxuICogQ3JlYXRlIENTUyBsaW5lLWhlaWdodCBzdHlsZXMgYmFzZWQgb24ge0BsaW5rIElMaW5lSGVpZ2h0fSBvYmplY3QuXG4gKiBAcGFyYW0gbGluZUhlaWdodCBMaW5lLWhlaWdodCBvYmplY3QuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVMaW5lSGVpZ2h0KGxpbmVIZWlnaHQ6IElMaW5lSGVpZ2h0KTogeyBsaW5lSGVpZ2h0OiBzdHJpbmcgfSB7XG4gIGNvbnN0IHsgdmFsdWUgPSAyMiwgdW5pdCA9ICdweCcgfSA9IGxpbmVIZWlnaHQ7XG4gIHJldHVybiB7XG4gICAgbGluZUhlaWdodDogdW5pdCAhPT0gJ25vbmUnID8gYCR7dmFsdWV9JHt1bml0fWAgOiAnbm9ybWFsJ1xuICB9O1xufVxuXG4vKipcbiAqIENyZWF0ZSBiYWNrZ3JvdW5kIHN0eWxlcyBiYXNlZCBvbiB7QGxpbmsgSUJhY2tncm91bmR9IG9iamVjdC5cbiAqIEBwYXJhbSBiYWNrZ3JvdW5kIEJhY2tncm91bmQgb2JqZWN0LlxuICovXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlQmFja2dyb3VuZChiYWNrZ3JvdW5kOiBJQmFja2dyb3VuZCk6IHN0cmluZyB7XG4gIGNvbnN0IHsgdXJsID0gJycsIGNvbG9yID0gJ3doaXRlJywgcmVwZWF0ID0gJ25vLXJlcGVhdCcgfSA9IGJhY2tncm91bmQ7XG4gIHJldHVybiBgJHtjb2xvcn0gJHt1cmwgJiYgYHVybCgke3VybH0pYH0gJHtyZXBlYXR9IHRvcCBjZW50ZXJgO1xufVxuXG4vKipcbiAqIENyZWF0ZSBXaWR0aCBvciBIZWlnaHQgc3R5bGVzIGJhc2VkIG9uIHtAbGluayBJV2lkdGhIZWlnaHR9IG9iamVjdC5cbiAqIEBwYXJhbSB3aWR0aEhlaWdodCBXaWR0aCBvciBIZWlnaHQgb2JqZWN0LlxuICovXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlV2lkdGhIZWlnaHQod2lkdGhIZWlnaHQ6IElXaWR0aEhlaWdodCk6IHN0cmluZyB7XG4gIGNvbnN0IHsgdmFsdWUgPSAxMDAsIHVuaXQgPSAnJScsIGF1dG8gPSBmYWxzZSB9ID0gd2lkdGhIZWlnaHQ7XG4gIHJldHVybiAoYXV0byAmJiAnYXV0bycpIHx8IChbJyUnLCAncHgnXS5pbmRleE9mKHVuaXQpID4gLTEgJiYgYCR7dmFsdWV9JHt1bml0fWApIHx8IHVuaXQ7XG59XG5cbi8qKlxuICogQ29udmVydCBieXRlcyB0byBLQi1ZQi5cbiAqIEBwYXJhbSBieXRlcyBCeXRlcyBudW1iZXIuXG4gKiBAcGFyYW0gZGVjaW1hbHMgSG93IG1hbnkgZGVjaW1hbHMgdG8gYmUgdXNlZC4gRGVmYXVsdDogMi5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGJ5dGVzVG9TaXplKGJ5dGVzOiBudW1iZXIsIGRlY2ltYWxzID0gMik6IHN0cmluZyB7XG4gIGlmIChieXRlcyA9PT0gMCkge1xuICAgIHJldHVybiAnMCBCeXRlcyc7XG4gIH1cbiAgY29uc3QgayA9IDEwMjQ7XG4gIGNvbnN0IGRtID0gZGVjaW1hbHMgPCAwID8gMCA6IGRlY2ltYWxzO1xuICBjb25zdCBzaXplcyA9IFsnQnl0ZXMnLCAnS0InLCAnTUInLCAnR0InLCAnVEInLCAnUEInLCAnRUInLCAnWkInLCAnWUInXTtcbiAgY29uc3QgaSA9IE1hdGguZmxvb3IoTWF0aC5sb2coYnl0ZXMpIC8gTWF0aC5sb2coaykpO1xuICByZXR1cm4gcGFyc2VGbG9hdCgoYnl0ZXMgLyBNYXRoLnBvdyhrLCBpKSkudG9GaXhlZChkbSkpICsgc2l6ZXNbaV07XG59XG5cbi8qKlxuICogR2V0IGEgU29jaWFsIEljb24gcGF0aC5cbiAqIEBwYXJhbSBwYXRoIEljb24gcGF0aC4gRXg6IGZhY2Vib29rLnBuZ1xuICovXG5leHBvcnQgZnVuY3Rpb24gZ2V0QXNzZXRCeVBhdGgocGF0aDogc3RyaW5nKTogc3RyaW5nIHtcbiAgcmV0dXJuIGBodHRwczovL3d3dy5tYWlsamV0LmNvbS9pbWFnZXMvdGhlbWUvdjEvaWNvbnMvaWNvLXNvY2lhbC8ke3BhdGh9YDtcbn1cblxuLyoqXG4gKiBBIHNpbXBsZSBhbmQgcG93ZXJmdWwgZnVuY3Rpb24gdGhhdCBhbGxvd3MgdG8gY3JlYXRlIGFuIGBPYnNlcnZhYmxlYCBvbmx5IHdoZW4gaXQgbmVlZHMgdG8gYmUgdXNlZC5cbiAqIEBwYXJhbSBhcmdzIEFyZ3VtZW50cyB0byBzZW5kIHRvIG5ldyBPYnNlcnZhYmxlLlxuICovXG5leHBvcnQgZnVuY3Rpb24gZGVmZXJPZjxUPiguLi5hcmdzOiBUW10pOiBPYnNlcnZhYmxlPFQ+IHtcbiAgcmV0dXJuIGRlZmVyKCgpID0+IG9mKC4uLmFyZ3MpKTtcbn1cbiJdfQ==
@@ -0,0 +1,43 @@
1
+ /**
2
+ * Generated bundle index. Do not edit.
3
+ */
4
+ export * from './public_api';
5
+ export { BlockSettingsComponent as ɵbd } from './lib/components/block-settings/block-settings.component';
6
+ export { BlockComponent as ɵf } from './lib/components/block/block.component';
7
+ export { BuilderContainerComponent as ɵo } from './lib/components/builder-container/builder-container.component';
8
+ export { ConfirmDialogComponent as ɵbb } from './lib/components/dialog.component';
9
+ export { GeneralSettingsComponent as ɵbf } from './lib/components/general-settings/general-settings.component';
10
+ export { ImportDialogComponent as ɵbj } from './lib/components/import-dialog/import-dialog.component';
11
+ export { StructureSettingsComponent as ɵbe } from './lib/components/structure-settings/structure-settings.component';
12
+ export { StructureComponent as ɵe } from './lib/components/structure/structure.component';
13
+ export { TemplateListDialogComponent as ɵbi } from './lib/components/template-list-dialog/template-list-dialog.component';
14
+ export { DynamicComponentDirective as ɵg } from './lib/directives/dynamic-component.directive';
15
+ export { AbstractBlock as ɵi } from './lib/elements/abstract-block';
16
+ export { ButtonComponent as ɵk } from './lib/elements/button/button.component';
17
+ export { DividerComponent as ɵl } from './lib/elements/divider/divider.component';
18
+ export { ImageComponent as ɵj } from './lib/elements/image/image.component';
19
+ export { SocialComponent as ɵn } from './lib/elements/social/social.component';
20
+ export { SpacerComponent as ɵm } from './lib/elements/spacer/spacer.component';
21
+ export { TextElementComponent as ɵh } from './lib/elements/text-element/text-element.component';
22
+ export { AlignComponent as ɵy } from './lib/groups/align';
23
+ export { BackRepatComponent as ɵba } from './lib/groups/back-repeat';
24
+ export { BorderComponent as ɵv } from './lib/groups/border';
25
+ export { ColorComponent as ɵw } from './lib/groups/color';
26
+ export { DirectionComponent as ɵz } from './lib/groups/direction';
27
+ export { FontStylesComponent as ɵp } from './lib/groups/font-styles';
28
+ export { GapsComponent as ɵs } from './lib/groups/gaps';
29
+ export { LineHeightComponent as ɵt } from './lib/groups/line-height';
30
+ export { LinkComponent as ɵx } from './lib/groups/link';
31
+ export { MarginComponent as ɵr } from './lib/groups/margin';
32
+ export { PaddingComponent as ɵq } from './lib/groups/padding';
33
+ export { ImageUploadComponent as ɵbc } from './lib/groups/upload-image';
34
+ export { WidthHeightComponent as ɵu } from './lib/groups/width-height';
35
+ export { IpInterceptorInterceptor as ɵbk } from './lib/interceptors/pb-interceptor.interceptor';
36
+ export { PbEmailObjectStoreService as ɵa } from './lib/services/internals/pb-email-object-store/pb-email-object-store.service';
37
+ export { PbUserInterfaceService as ɵb } from './lib/services/internals/user-interfaces/user-interface.service';
38
+ export { FreeUsersPbStorage as ɵd } from './lib/services/pb-storage';
39
+ export { UploadBottomSheetDialogComponent as ɵbg } from './lib/services/user-image-uploader-service/upload-bottom-sheet-dialog/upload-bottom-sheet-dialog.component';
40
+ export { UploadImageGalleryComponent as ɵbh } from './lib/services/user-image-uploader-service/upload-image-gallery/upload-image-gallery.component';
41
+ export { FreeUsersRestApi as ɵc } from './lib/services/user-rest-api-service';
42
+ export { LIBRARY_IS_PRO as ɵbl } from './lib/tokens/private-tokens';
43
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9idWNhLWVtYWlsLWJ1aWxkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9wcm9qZWN0cy9wYi1lbWFpbC1idWlsZGVyL3NyYy9wb2J1Y2EtZW1haWwtYnVpbGRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsY0FBYyxDQUFDO0FBRTdCLE9BQU8sRUFBQyxzQkFBc0IsSUFBSSxHQUFHLEVBQUMsTUFBTSwwREFBMEQsQ0FBQztBQUN2RyxPQUFPLEVBQUMsY0FBYyxJQUFJLEVBQUUsRUFBQyxNQUFNLHdDQUF3QyxDQUFDO0FBQzVFLE9BQU8sRUFBQyx5QkFBeUIsSUFBSSxFQUFFLEVBQUMsTUFBTSxnRUFBZ0UsQ0FBQztBQUMvRyxPQUFPLEVBQUMsc0JBQXNCLElBQUksR0FBRyxFQUFDLE1BQU0sbUNBQW1DLENBQUM7QUFDaEYsT0FBTyxFQUFDLHdCQUF3QixJQUFJLEdBQUcsRUFBQyxNQUFNLDhEQUE4RCxDQUFDO0FBQzdHLE9BQU8sRUFBQyxxQkFBcUIsSUFBSSxHQUFHLEVBQUMsTUFBTSx3REFBd0QsQ0FBQztBQUNwRyxPQUFPLEVBQUMsMEJBQTBCLElBQUksR0FBRyxFQUFDLE1BQU0sa0VBQWtFLENBQUM7QUFDbkgsT0FBTyxFQUFDLGtCQUFrQixJQUFJLEVBQUUsRUFBQyxNQUFNLGdEQUFnRCxDQUFDO0FBQ3hGLE9BQU8sRUFBQywyQkFBMkIsSUFBSSxHQUFHLEVBQUMsTUFBTSxzRUFBc0UsQ0FBQztBQUN4SCxPQUFPLEVBQUMseUJBQXlCLElBQUksRUFBRSxFQUFDLE1BQU0sOENBQThDLENBQUM7QUFDN0YsT0FBTyxFQUFDLGFBQWEsSUFBSSxFQUFFLEVBQUMsTUFBTSwrQkFBK0IsQ0FBQztBQUNsRSxPQUFPLEVBQUMsZUFBZSxJQUFJLEVBQUUsRUFBQyxNQUFNLHdDQUF3QyxDQUFDO0FBQzdFLE9BQU8sRUFBQyxnQkFBZ0IsSUFBSSxFQUFFLEVBQUMsTUFBTSwwQ0FBMEMsQ0FBQztBQUNoRixPQUFPLEVBQUMsY0FBYyxJQUFJLEVBQUUsRUFBQyxNQUFNLHNDQUFzQyxDQUFDO0FBQzFFLE9BQU8sRUFBQyxlQUFlLElBQUksRUFBRSxFQUFDLE1BQU0sd0NBQXdDLENBQUM7QUFDN0UsT0FBTyxFQUFDLGVBQWUsSUFBSSxFQUFFLEVBQUMsTUFBTSx3Q0FBd0MsQ0FBQztBQUM3RSxPQUFPLEVBQUMsb0JBQW9CLElBQUksRUFBRSxFQUFDLE1BQU0sb0RBQW9ELENBQUM7QUFDOUYsT0FBTyxFQUFDLGNBQWMsSUFBSSxFQUFFLEVBQUMsTUFBTSxvQkFBb0IsQ0FBQztBQUN4RCxPQUFPLEVBQUMsa0JBQWtCLElBQUksR0FBRyxFQUFDLE1BQU0sMEJBQTBCLENBQUM7QUFDbkUsT0FBTyxFQUFDLGVBQWUsSUFBSSxFQUFFLEVBQUMsTUFBTSxxQkFBcUIsQ0FBQztBQUMxRCxPQUFPLEVBQUMsY0FBYyxJQUFJLEVBQUUsRUFBQyxNQUFNLG9CQUFvQixDQUFDO0FBQ3hELE9BQU8sRUFBQyxrQkFBa0IsSUFBSSxFQUFFLEVBQUMsTUFBTSx3QkFBd0IsQ0FBQztBQUNoRSxPQUFPLEVBQUMsbUJBQW1CLElBQUksRUFBRSxFQUFDLE1BQU0sMEJBQTBCLENBQUM7QUFDbkUsT0FBTyxFQUFDLGFBQWEsSUFBSSxFQUFFLEVBQUMsTUFBTSxtQkFBbUIsQ0FBQztBQUN0RCxPQUFPLEVBQUMsbUJBQW1CLElBQUksRUFBRSxFQUFDLE1BQU0sMEJBQTBCLENBQUM7QUFDbkUsT0FBTyxFQUFDLGFBQWEsSUFBSSxFQUFFLEVBQUMsTUFBTSxtQkFBbUIsQ0FBQztBQUN0RCxPQUFPLEVBQUMsZUFBZSxJQUFJLEVBQUUsRUFBQyxNQUFNLHFCQUFxQixDQUFDO0FBQzFELE9BQU8sRUFBQyxnQkFBZ0IsSUFBSSxFQUFFLEVBQUMsTUFBTSxzQkFBc0IsQ0FBQztBQUM1RCxPQUFPLEVBQUMsb0JBQW9CLElBQUksR0FBRyxFQUFDLE1BQU0sMkJBQTJCLENBQUM7QUFDdEUsT0FBTyxFQUFDLG9CQUFvQixJQUFJLEVBQUUsRUFBQyxNQUFNLDJCQUEyQixDQUFDO0FBQ3JFLE9BQU8sRUFBQyx3QkFBd0IsSUFBSSxHQUFHLEVBQUMsTUFBTSwrQ0FBK0MsQ0FBQztBQUM5RixPQUFPLEVBQUMseUJBQXlCLElBQUksRUFBRSxFQUFDLE1BQU0sOEVBQThFLENBQUM7QUFDN0gsT0FBTyxFQUFDLHNCQUFzQixJQUFJLEVBQUUsRUFBQyxNQUFNLGlFQUFpRSxDQUFDO0FBQzdHLE9BQU8sRUFBQyxrQkFBa0IsSUFBSSxFQUFFLEVBQUMsTUFBTSwyQkFBMkIsQ0FBQztBQUNuRSxPQUFPLEVBQUMsZ0NBQWdDLElBQUksR0FBRyxFQUFDLE1BQU0sNEdBQTRHLENBQUM7QUFDbkssT0FBTyxFQUFDLDJCQUEyQixJQUFJLEdBQUcsRUFBQyxNQUFNLGdHQUFnRyxDQUFDO0FBQ2xKLE9BQU8sRUFBQyxnQkFBZ0IsSUFBSSxFQUFFLEVBQUMsTUFBTSxzQ0FBc0MsQ0FBQztBQUM1RSxPQUFPLEVBQUMsY0FBYyxJQUFJLEdBQUcsRUFBQyxNQUFNLDZCQUE2QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL3B1YmxpY19hcGknO1xuXG5leHBvcnQge0Jsb2NrU2V0dGluZ3NDb21wb25lbnQgYXMgybViZH0gZnJvbSAnLi9saWIvY29tcG9uZW50cy9ibG9jay1zZXR0aW5ncy9ibG9jay1zZXR0aW5ncy5jb21wb25lbnQnO1xuZXhwb3J0IHtCbG9ja0NvbXBvbmVudCBhcyDJtWZ9IGZyb20gJy4vbGliL2NvbXBvbmVudHMvYmxvY2svYmxvY2suY29tcG9uZW50JztcbmV4cG9ydCB7QnVpbGRlckNvbnRhaW5lckNvbXBvbmVudCBhcyDJtW99IGZyb20gJy4vbGliL2NvbXBvbmVudHMvYnVpbGRlci1jb250YWluZXIvYnVpbGRlci1jb250YWluZXIuY29tcG9uZW50JztcbmV4cG9ydCB7Q29uZmlybURpYWxvZ0NvbXBvbmVudCBhcyDJtWJifSBmcm9tICcuL2xpYi9jb21wb25lbnRzL2RpYWxvZy5jb21wb25lbnQnO1xuZXhwb3J0IHtHZW5lcmFsU2V0dGluZ3NDb21wb25lbnQgYXMgybViZn0gZnJvbSAnLi9saWIvY29tcG9uZW50cy9nZW5lcmFsLXNldHRpbmdzL2dlbmVyYWwtc2V0dGluZ3MuY29tcG9uZW50JztcbmV4cG9ydCB7SW1wb3J0RGlhbG9nQ29tcG9uZW50IGFzIMm1Ymp9IGZyb20gJy4vbGliL2NvbXBvbmVudHMvaW1wb3J0LWRpYWxvZy9pbXBvcnQtZGlhbG9nLmNvbXBvbmVudCc7XG5leHBvcnQge1N0cnVjdHVyZVNldHRpbmdzQ29tcG9uZW50IGFzIMm1YmV9IGZyb20gJy4vbGliL2NvbXBvbmVudHMvc3RydWN0dXJlLXNldHRpbmdzL3N0cnVjdHVyZS1zZXR0aW5ncy5jb21wb25lbnQnO1xuZXhwb3J0IHtTdHJ1Y3R1cmVDb21wb25lbnQgYXMgybVlfSBmcm9tICcuL2xpYi9jb21wb25lbnRzL3N0cnVjdHVyZS9zdHJ1Y3R1cmUuY29tcG9uZW50JztcbmV4cG9ydCB7VGVtcGxhdGVMaXN0RGlhbG9nQ29tcG9uZW50IGFzIMm1Yml9IGZyb20gJy4vbGliL2NvbXBvbmVudHMvdGVtcGxhdGUtbGlzdC1kaWFsb2cvdGVtcGxhdGUtbGlzdC1kaWFsb2cuY29tcG9uZW50JztcbmV4cG9ydCB7RHluYW1pY0NvbXBvbmVudERpcmVjdGl2ZSBhcyDJtWd9IGZyb20gJy4vbGliL2RpcmVjdGl2ZXMvZHluYW1pYy1jb21wb25lbnQuZGlyZWN0aXZlJztcbmV4cG9ydCB7QWJzdHJhY3RCbG9jayBhcyDJtWl9IGZyb20gJy4vbGliL2VsZW1lbnRzL2Fic3RyYWN0LWJsb2NrJztcbmV4cG9ydCB7QnV0dG9uQ29tcG9uZW50IGFzIMm1a30gZnJvbSAnLi9saWIvZWxlbWVudHMvYnV0dG9uL2J1dHRvbi5jb21wb25lbnQnO1xuZXhwb3J0IHtEaXZpZGVyQ29tcG9uZW50IGFzIMm1bH0gZnJvbSAnLi9saWIvZWxlbWVudHMvZGl2aWRlci9kaXZpZGVyLmNvbXBvbmVudCc7XG5leHBvcnQge0ltYWdlQ29tcG9uZW50IGFzIMm1an0gZnJvbSAnLi9saWIvZWxlbWVudHMvaW1hZ2UvaW1hZ2UuY29tcG9uZW50JztcbmV4cG9ydCB7U29jaWFsQ29tcG9uZW50IGFzIMm1bn0gZnJvbSAnLi9saWIvZWxlbWVudHMvc29jaWFsL3NvY2lhbC5jb21wb25lbnQnO1xuZXhwb3J0IHtTcGFjZXJDb21wb25lbnQgYXMgybVtfSBmcm9tICcuL2xpYi9lbGVtZW50cy9zcGFjZXIvc3BhY2VyLmNvbXBvbmVudCc7XG5leHBvcnQge1RleHRFbGVtZW50Q29tcG9uZW50IGFzIMm1aH0gZnJvbSAnLi9saWIvZWxlbWVudHMvdGV4dC1lbGVtZW50L3RleHQtZWxlbWVudC5jb21wb25lbnQnO1xuZXhwb3J0IHtBbGlnbkNvbXBvbmVudCBhcyDJtXl9IGZyb20gJy4vbGliL2dyb3Vwcy9hbGlnbic7XG5leHBvcnQge0JhY2tSZXBhdENvbXBvbmVudCBhcyDJtWJhfSBmcm9tICcuL2xpYi9ncm91cHMvYmFjay1yZXBlYXQnO1xuZXhwb3J0IHtCb3JkZXJDb21wb25lbnQgYXMgybV2fSBmcm9tICcuL2xpYi9ncm91cHMvYm9yZGVyJztcbmV4cG9ydCB7Q29sb3JDb21wb25lbnQgYXMgybV3fSBmcm9tICcuL2xpYi9ncm91cHMvY29sb3InO1xuZXhwb3J0IHtEaXJlY3Rpb25Db21wb25lbnQgYXMgybV6fSBmcm9tICcuL2xpYi9ncm91cHMvZGlyZWN0aW9uJztcbmV4cG9ydCB7Rm9udFN0eWxlc0NvbXBvbmVudCBhcyDJtXB9IGZyb20gJy4vbGliL2dyb3Vwcy9mb250LXN0eWxlcyc7XG5leHBvcnQge0dhcHNDb21wb25lbnQgYXMgybVzfSBmcm9tICcuL2xpYi9ncm91cHMvZ2Fwcyc7XG5leHBvcnQge0xpbmVIZWlnaHRDb21wb25lbnQgYXMgybV0fSBmcm9tICcuL2xpYi9ncm91cHMvbGluZS1oZWlnaHQnO1xuZXhwb3J0IHtMaW5rQ29tcG9uZW50IGFzIMm1eH0gZnJvbSAnLi9saWIvZ3JvdXBzL2xpbmsnO1xuZXhwb3J0IHtNYXJnaW5Db21wb25lbnQgYXMgybVyfSBmcm9tICcuL2xpYi9ncm91cHMvbWFyZ2luJztcbmV4cG9ydCB7UGFkZGluZ0NvbXBvbmVudCBhcyDJtXF9IGZyb20gJy4vbGliL2dyb3Vwcy9wYWRkaW5nJztcbmV4cG9ydCB7SW1hZ2VVcGxvYWRDb21wb25lbnQgYXMgybViY30gZnJvbSAnLi9saWIvZ3JvdXBzL3VwbG9hZC1pbWFnZSc7XG5leHBvcnQge1dpZHRoSGVpZ2h0Q29tcG9uZW50IGFzIMm1dX0gZnJvbSAnLi9saWIvZ3JvdXBzL3dpZHRoLWhlaWdodCc7XG5leHBvcnQge0lwSW50ZXJjZXB0b3JJbnRlcmNlcHRvciBhcyDJtWJrfSBmcm9tICcuL2xpYi9pbnRlcmNlcHRvcnMvcGItaW50ZXJjZXB0b3IuaW50ZXJjZXB0b3InO1xuZXhwb3J0IHtQYkVtYWlsT2JqZWN0U3RvcmVTZXJ2aWNlIGFzIMm1YX0gZnJvbSAnLi9saWIvc2VydmljZXMvaW50ZXJuYWxzL3BiLWVtYWlsLW9iamVjdC1zdG9yZS9wYi1lbWFpbC1vYmplY3Qtc3RvcmUuc2VydmljZSc7XG5leHBvcnQge1BiVXNlckludGVyZmFjZVNlcnZpY2UgYXMgybVifSBmcm9tICcuL2xpYi9zZXJ2aWNlcy9pbnRlcm5hbHMvdXNlci1pbnRlcmZhY2VzL3VzZXItaW50ZXJmYWNlLnNlcnZpY2UnO1xuZXhwb3J0IHtGcmVlVXNlcnNQYlN0b3JhZ2UgYXMgybVkfSBmcm9tICcuL2xpYi9zZXJ2aWNlcy9wYi1zdG9yYWdlJztcbmV4cG9ydCB7VXBsb2FkQm90dG9tU2hlZXREaWFsb2dDb21wb25lbnQgYXMgybViZ30gZnJvbSAnLi9saWIvc2VydmljZXMvdXNlci1pbWFnZS11cGxvYWRlci1zZXJ2aWNlL3VwbG9hZC1ib3R0b20tc2hlZXQtZGlhbG9nL3VwbG9hZC1ib3R0b20tc2hlZXQtZGlhbG9nLmNvbXBvbmVudCc7XG5leHBvcnQge1VwbG9hZEltYWdlR2FsbGVyeUNvbXBvbmVudCBhcyDJtWJofSBmcm9tICcuL2xpYi9zZXJ2aWNlcy91c2VyLWltYWdlLXVwbG9hZGVyLXNlcnZpY2UvdXBsb2FkLWltYWdlLWdhbGxlcnkvdXBsb2FkLWltYWdlLWdhbGxlcnkuY29tcG9uZW50JztcbmV4cG9ydCB7RnJlZVVzZXJzUmVzdEFwaSBhcyDJtWN9IGZyb20gJy4vbGliL3NlcnZpY2VzL3VzZXItcmVzdC1hcGktc2VydmljZSc7XG5leHBvcnQge0xJQlJBUllfSVNfUFJPIGFzIMm1Ymx9IGZyb20gJy4vbGliL3Rva2Vucy9wcml2YXRlLXRva2Vucyc7Il19
@@ -0,0 +1,26 @@
1
+ /*
2
+ * Copyright (c) 2024 Pobuca.
3
+ * All rights reserved.
4
+ */
5
+ /*
6
+ * Public API Surface of pb-email-builder
7
+ */
8
+ export * from './lib/interfaces/interfaces';
9
+ export * from './lib/tokens/tokens';
10
+ // export * from './lib/providers';
11
+ export * from './lib/utils';
12
+ export * from './lib/classes/DefaultEmail';
13
+ export * from './lib/classes/Elements';
14
+ export * from './lib/classes/Structure';
15
+ export * from './lib/pb-email-builder.service';
16
+ export * from './lib/services/user-middleware-service/pb-middlewares.service';
17
+ export * from './lib/services/user-rest-api-service/user-rest-api.service';
18
+ export * from './lib/services/pb-storage/pb-storage.service';
19
+ export { FreeUsersImageUploader } from './lib/services/user-image-uploader-service';
20
+ export * from './lib/services/user-image-uploader-service/user-image-uploader.service';
21
+ export * from './lib/pb-email-builder.module';
22
+ export * from './lib/pb-email-builder.component';
23
+ export * from './lib/components/preview.component';
24
+ // export * from './lib/components/template-list-dialog/template-list-dialog.component';
25
+ export * from './lib/pipes/slugify.pipe';
26
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljX2FwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL3BiLWVtYWlsLWJ1aWxkZXIvc3JjL3B1YmxpY19hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7OztHQUdHO0FBRUg7O0dBRUc7QUFFSCxjQUFjLDZCQUE2QixDQUFDO0FBQzVDLGNBQWMscUJBQXFCLENBQUM7QUFDcEMsbUNBQW1DO0FBQ25DLGNBQWMsYUFBYSxDQUFDO0FBQzVCLGNBQWMsNEJBQTRCLENBQUM7QUFDM0MsY0FBYyx3QkFBd0IsQ0FBQztBQUN2QyxjQUFjLHlCQUF5QixDQUFDO0FBRXhDLGNBQWMsZ0NBQWdDLENBQUM7QUFDL0MsY0FBYywrREFBK0QsQ0FBQztBQUM5RSxjQUFjLDREQUE0RCxDQUFDO0FBQzNFLGNBQWMsOENBQThDLENBQUM7QUFDN0QsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sNENBQTRDLENBQUM7QUFDcEYsY0FBYyx3RUFBd0UsQ0FBQztBQUV2RixjQUFjLCtCQUErQixDQUFDO0FBRTlDLGNBQWMsa0NBQWtDLENBQUM7QUFDakQsY0FBYyxvQ0FBb0MsQ0FBQztBQUNuRCx3RkFBd0Y7QUFFeEYsY0FBYywwQkFBMEIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBDb3B5cmlnaHQgKGMpIDIwMjQgUG9idWNhLlxuICogQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiAqL1xuXG4vKlxuICogUHVibGljIEFQSSBTdXJmYWNlIG9mIHBiLWVtYWlsLWJ1aWxkZXJcbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2xpYi9pbnRlcmZhY2VzL2ludGVyZmFjZXMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdG9rZW5zL3Rva2Vucyc7XG4vLyBleHBvcnQgKiBmcm9tICcuL2xpYi9wcm92aWRlcnMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdXRpbHMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY2xhc3Nlcy9EZWZhdWx0RW1haWwnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY2xhc3Nlcy9FbGVtZW50cyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jbGFzc2VzL1N0cnVjdHVyZSc7XG5cbmV4cG9ydCAqIGZyb20gJy4vbGliL3BiLWVtYWlsLWJ1aWxkZXIuc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9zZXJ2aWNlcy91c2VyLW1pZGRsZXdhcmUtc2VydmljZS9wYi1taWRkbGV3YXJlcy5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3NlcnZpY2VzL3VzZXItcmVzdC1hcGktc2VydmljZS91c2VyLXJlc3QtYXBpLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvc2VydmljZXMvcGItc3RvcmFnZS9wYi1zdG9yYWdlLnNlcnZpY2UnO1xuZXhwb3J0IHsgRnJlZVVzZXJzSW1hZ2VVcGxvYWRlciB9IGZyb20gJy4vbGliL3NlcnZpY2VzL3VzZXItaW1hZ2UtdXBsb2FkZXItc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9zZXJ2aWNlcy91c2VyLWltYWdlLXVwbG9hZGVyLXNlcnZpY2UvdXNlci1pbWFnZS11cGxvYWRlci5zZXJ2aWNlJztcblxuZXhwb3J0ICogZnJvbSAnLi9saWIvcGItZW1haWwtYnVpbGRlci5tb2R1bGUnO1xuXG5leHBvcnQgKiBmcm9tICcuL2xpYi9wYi1lbWFpbC1idWlsZGVyLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL3ByZXZpZXcuY29tcG9uZW50Jztcbi8vIGV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvdGVtcGxhdGUtbGlzdC1kaWFsb2cvdGVtcGxhdGUtbGlzdC1kaWFsb2cuY29tcG9uZW50JztcblxuZXhwb3J0ICogZnJvbSAnLi9saWIvcGlwZXMvc2x1Z2lmeS5waXBlJztcbiJdfQ==