@pobuca/email-builder 1.0.0 → 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,53 +1,54 @@
1
- /*
2
- * Copyright (c) 2024 Pobuca.
3
- * All rights reserved.
4
- */
5
- // import { Structure } from './Structure';
6
- export class Defaults {
7
- constructor(structures = [], general = {
8
- name: '',
9
- previewText: '',
10
- width: {
11
- value: 600,
12
- unit: 'px',
13
- units: ['px']
14
- },
15
- background: {
16
- // url: '',
17
- color: '#f1f1f1',
18
- // repeat: 'repeat',
19
- size: {
20
- value: 100,
21
- unit: '%',
22
- auto: true,
23
- units: ['px', '%', 'cover', 'contain']
24
- }
25
- },
26
- padding: {
27
- top: 16,
28
- right: 10,
29
- bottom: 10,
30
- left: 10
31
- },
32
- direction: 'ltr',
33
- global: {
34
- // TODO Add more global configurations
35
- // fonts: [],
36
- padding: {
37
- top: 0,
38
- right: 0,
39
- bottom: 0,
40
- left: 0
41
- }
42
- }
43
- }) {
44
- this.structures = structures;
45
- this.general = general;
46
- }
47
- }
48
- export class PBEmail extends Defaults {
49
- constructor({ structures, general } = {}) {
50
- super(structures, general);
51
- }
52
- }
53
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRGVmYXVsdEVtYWlsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcGItZW1haWwtYnVpbGRlci9zcmMvbGliL2NsYXNzZXMvRGVmYXVsdEVtYWlsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7R0FHRztBQUdILDJDQUEyQztBQUUzQyxNQUFNLE9BQU8sUUFBUTtJQUNuQixZQUNTLGFBQTJCLEVBQUUsRUFDN0IsVUFBMkI7UUFDaEMsSUFBSSxFQUFFLEVBQUU7UUFDUixXQUFXLEVBQUUsRUFBRTtRQUNmLEtBQUssRUFBRTtZQUNMLEtBQUssRUFBRSxHQUFHO1lBQ1YsSUFBSSxFQUFFLElBQUk7WUFDVixLQUFLLEVBQUUsQ0FBQyxJQUFJLENBQUM7U0FDZDtRQUNELFVBQVUsRUFBRTtZQUNWLFdBQVc7WUFDWCxLQUFLLEVBQUUsU0FBUztZQUNoQixvQkFBb0I7WUFDcEIsSUFBSSxFQUFFO2dCQUNKLEtBQUssRUFBRSxHQUFHO2dCQUNWLElBQUksRUFBRSxHQUFHO2dCQUNULElBQUksRUFBRSxJQUFJO2dCQUNWLEtBQUssRUFBRSxDQUFDLElBQUksRUFBRSxHQUFHLEVBQUUsT0FBTyxFQUFFLFNBQVMsQ0FBQzthQUN2QztTQUNGO1FBQ0QsT0FBTyxFQUFFO1lBQ1AsR0FBRyxFQUFFLEVBQUU7WUFDUCxLQUFLLEVBQUUsRUFBRTtZQUNULE1BQU0sRUFBRSxFQUFFO1lBQ1YsSUFBSSxFQUFFLEVBQUU7U0FDVDtRQUNELFNBQVMsRUFBRSxLQUFLO1FBQ2hCLE1BQU0sRUFBRTtZQUNOLHNDQUFzQztZQUN0QyxhQUFhO1lBQ2IsT0FBTyxFQUFFO2dCQUNQLEdBQUcsRUFBRSxDQUFDO2dCQUNOLEtBQUssRUFBRSxDQUFDO2dCQUNSLE1BQU0sRUFBRSxDQUFDO2dCQUNULElBQUksRUFBRSxDQUFDO2FBQ1I7U0FDRjtLQUNGO1FBckNNLGVBQVUsR0FBVixVQUFVLENBQW1CO1FBQzdCLFlBQU8sR0FBUCxPQUFPLENBb0NiO0lBQ0EsQ0FBQztDQUNMO0FBRUQsTUFBTSxPQUFPLE9BQVEsU0FBUSxRQUFRO0lBQ25DLFlBQVksRUFBRSxVQUFVLEVBQUUsT0FBTyxLQUFlLEVBQUU7UUFDaEQsS0FBSyxDQUFDLFVBQVUsRUFBRSxPQUFPLENBQUMsQ0FBQztJQUM3QixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogQ29weXJpZ2h0IChjKSAyMDI0IFBvYnVjYS5cbiAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4gKi9cblxuaW1wb3J0IHsgSVN0cnVjdHVyZSwgSVBCRW1haWwsIElHZW5lcmFsT3B0aW9ucyB9IGZyb20gJy4uL2ludGVyZmFjZXMvaW50ZXJmYWNlcyc7XG4vLyBpbXBvcnQgeyBTdHJ1Y3R1cmUgfSBmcm9tICcuL1N0cnVjdHVyZSc7XG5cbmV4cG9ydCBjbGFzcyBEZWZhdWx0cyB7XG4gIGNvbnN0cnVjdG9yKFxuICAgIHB1YmxpYyBzdHJ1Y3R1cmVzOiBJU3RydWN0dXJlW10gPSBbXSxcbiAgICBwdWJsaWMgZ2VuZXJhbDogSUdlbmVyYWxPcHRpb25zID0ge1xuICAgICAgbmFtZTogJycsXG4gICAgICBwcmV2aWV3VGV4dDogJycsXG4gICAgICB3aWR0aDoge1xuICAgICAgICB2YWx1ZTogNjAwLFxuICAgICAgICB1bml0OiAncHgnLFxuICAgICAgICB1bml0czogWydweCddXG4gICAgICB9LFxuICAgICAgYmFja2dyb3VuZDoge1xuICAgICAgICAvLyB1cmw6ICcnLFxuICAgICAgICBjb2xvcjogJyNmMWYxZjEnLFxuICAgICAgICAvLyByZXBlYXQ6ICdyZXBlYXQnLFxuICAgICAgICBzaXplOiB7XG4gICAgICAgICAgdmFsdWU6IDEwMCxcbiAgICAgICAgICB1bml0OiAnJScsXG4gICAgICAgICAgYXV0bzogdHJ1ZSxcbiAgICAgICAgICB1bml0czogWydweCcsICclJywgJ2NvdmVyJywgJ2NvbnRhaW4nXVxuICAgICAgICB9XG4gICAgICB9LFxuICAgICAgcGFkZGluZzoge1xuICAgICAgICB0b3A6IDE2LFxuICAgICAgICByaWdodDogMTAsXG4gICAgICAgIGJvdHRvbTogMTAsXG4gICAgICAgIGxlZnQ6IDEwXG4gICAgICB9LFxuICAgICAgZGlyZWN0aW9uOiAnbHRyJyxcbiAgICAgIGdsb2JhbDoge1xuICAgICAgICAvLyBUT0RPIEFkZCBtb3JlIGdsb2JhbCBjb25maWd1cmF0aW9uc1xuICAgICAgICAvLyBmb250czogW10sXG4gICAgICAgIHBhZGRpbmc6IHtcbiAgICAgICAgICB0b3A6IDAsXG4gICAgICAgICAgcmlnaHQ6IDAsXG4gICAgICAgICAgYm90dG9tOiAwLFxuICAgICAgICAgIGxlZnQ6IDBcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgKSB7fVxufVxuXG5leHBvcnQgY2xhc3MgUEJFbWFpbCBleHRlbmRzIERlZmF1bHRzIHtcbiAgY29uc3RydWN0b3IoeyBzdHJ1Y3R1cmVzLCBnZW5lcmFsIH06IElQQkVtYWlsID0ge30pIHtcbiAgICBzdXBlcihzdHJ1Y3R1cmVzLCBnZW5lcmFsKTtcbiAgfVxufVxuIl19
1
+ /*
2
+ * Copyright (c) 2024 Pobuca.
3
+ * All rights reserved.
4
+ */
5
+ // import { Structure } from './Structure';
6
+ export class Defaults {
7
+ constructor(structures = [], general = {
8
+ name: '',
9
+ previewText: '',
10
+ width: {
11
+ value: 600,
12
+ unit: 'px',
13
+ units: ['px']
14
+ },
15
+ background: {
16
+ // url: '',
17
+ color: '#f1f1f1',
18
+ // repeat: 'repeat',
19
+ size: {
20
+ value: 100,
21
+ unit: '%',
22
+ auto: true,
23
+ units: ['px', '%', 'cover', 'contain']
24
+ }
25
+ },
26
+ padding: {
27
+ top: 16,
28
+ right: 10,
29
+ bottom: 10,
30
+ left: 10
31
+ },
32
+ direction: 'ltr',
33
+ global: {
34
+ // TODO Add more global configurations
35
+ // fonts: [],
36
+ padding: {
37
+ top: 0,
38
+ right: 0,
39
+ bottom: 0,
40
+ left: 0
41
+ }
42
+ }
43
+ }, customFonts = []) {
44
+ this.structures = structures;
45
+ this.general = general;
46
+ this.customFonts = customFonts;
47
+ }
48
+ }
49
+ export class PBEmail extends Defaults {
50
+ constructor({ structures, general, customFonts } = {}) {
51
+ super(structures, general, customFonts);
52
+ }
53
+ }
54
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRGVmYXVsdEVtYWlsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcGItZW1haWwtYnVpbGRlci9zcmMvbGliL2NsYXNzZXMvRGVmYXVsdEVtYWlsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7R0FHRztBQUdILDJDQUEyQztBQUUzQyxNQUFNLE9BQU8sUUFBUTtJQUNuQixZQUNTLGFBQTJCLEVBQUUsRUFDN0IsVUFBMkI7UUFDaEMsSUFBSSxFQUFFLEVBQUU7UUFDUixXQUFXLEVBQUUsRUFBRTtRQUNmLEtBQUssRUFBRTtZQUNMLEtBQUssRUFBRSxHQUFHO1lBQ1YsSUFBSSxFQUFFLElBQUk7WUFDVixLQUFLLEVBQUUsQ0FBQyxJQUFJLENBQUM7U0FDZDtRQUNELFVBQVUsRUFBRTtZQUNWLFdBQVc7WUFDWCxLQUFLLEVBQUUsU0FBUztZQUNoQixvQkFBb0I7WUFDcEIsSUFBSSxFQUFFO2dCQUNKLEtBQUssRUFBRSxHQUFHO2dCQUNWLElBQUksRUFBRSxHQUFHO2dCQUNULElBQUksRUFBRSxJQUFJO2dCQUNWLEtBQUssRUFBRSxDQUFDLElBQUksRUFBRSxHQUFHLEVBQUUsT0FBTyxFQUFFLFNBQVMsQ0FBQzthQUN2QztTQUNGO1FBQ0QsT0FBTyxFQUFFO1lBQ1AsR0FBRyxFQUFFLEVBQUU7WUFDUCxLQUFLLEVBQUUsRUFBRTtZQUNULE1BQU0sRUFBRSxFQUFFO1lBQ1YsSUFBSSxFQUFFLEVBQUU7U0FDVDtRQUNELFNBQVMsRUFBRSxLQUFLO1FBQ2hCLE1BQU0sRUFBRTtZQUNOLHNDQUFzQztZQUN0QyxhQUFhO1lBQ2IsT0FBTyxFQUFFO2dCQUNQLEdBQUcsRUFBRSxDQUFDO2dCQUNOLEtBQUssRUFBRSxDQUFDO2dCQUNSLE1BQU0sRUFBRSxDQUFDO2dCQUNULElBQUksRUFBRSxDQUFDO2FBQ1I7U0FDRjtLQUNGLEVBQ00sY0FBNkIsRUFBRTtRQXRDL0IsZUFBVSxHQUFWLFVBQVUsQ0FBbUI7UUFDN0IsWUFBTyxHQUFQLE9BQU8sQ0FvQ2I7UUFDTSxnQkFBVyxHQUFYLFdBQVcsQ0FBb0I7SUFDcEMsQ0FBQztDQUNOO0FBRUQsTUFBTSxPQUFPLE9BQVEsU0FBUSxRQUFRO0lBQ25DLFlBQVksRUFBRSxVQUFVLEVBQUUsT0FBTyxFQUFFLFdBQVcsS0FBZSxFQUFFO1FBQzdELEtBQUssQ0FBQyxVQUFVLEVBQUUsT0FBTyxFQUFFLFdBQVcsQ0FBQyxDQUFDO0lBQzFDLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbIi8qXHJcbiAqIENvcHlyaWdodCAoYykgMjAyNCBQb2J1Y2EuXHJcbiAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuXHJcbiAqL1xyXG5cclxuaW1wb3J0IHsgSVN0cnVjdHVyZSwgSVBCRW1haWwsIElHZW5lcmFsT3B0aW9ucywgSUN1c3RvbUZvbnQgfSBmcm9tICcuLi9pbnRlcmZhY2VzL2ludGVyZmFjZXMnO1xyXG4vLyBpbXBvcnQgeyBTdHJ1Y3R1cmUgfSBmcm9tICcuL1N0cnVjdHVyZSc7XHJcblxyXG5leHBvcnQgY2xhc3MgRGVmYXVsdHMge1xyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHVibGljIHN0cnVjdHVyZXM6IElTdHJ1Y3R1cmVbXSA9IFtdLFxyXG4gICAgcHVibGljIGdlbmVyYWw6IElHZW5lcmFsT3B0aW9ucyA9IHtcclxuICAgICAgbmFtZTogJycsXHJcbiAgICAgIHByZXZpZXdUZXh0OiAnJyxcclxuICAgICAgd2lkdGg6IHtcclxuICAgICAgICB2YWx1ZTogNjAwLFxyXG4gICAgICAgIHVuaXQ6ICdweCcsXHJcbiAgICAgICAgdW5pdHM6IFsncHgnXVxyXG4gICAgICB9LFxyXG4gICAgICBiYWNrZ3JvdW5kOiB7XHJcbiAgICAgICAgLy8gdXJsOiAnJyxcclxuICAgICAgICBjb2xvcjogJyNmMWYxZjEnLFxyXG4gICAgICAgIC8vIHJlcGVhdDogJ3JlcGVhdCcsXHJcbiAgICAgICAgc2l6ZToge1xyXG4gICAgICAgICAgdmFsdWU6IDEwMCxcclxuICAgICAgICAgIHVuaXQ6ICclJyxcclxuICAgICAgICAgIGF1dG86IHRydWUsXHJcbiAgICAgICAgICB1bml0czogWydweCcsICclJywgJ2NvdmVyJywgJ2NvbnRhaW4nXVxyXG4gICAgICAgIH1cclxuICAgICAgfSxcclxuICAgICAgcGFkZGluZzoge1xyXG4gICAgICAgIHRvcDogMTYsXHJcbiAgICAgICAgcmlnaHQ6IDEwLFxyXG4gICAgICAgIGJvdHRvbTogMTAsXHJcbiAgICAgICAgbGVmdDogMTBcclxuICAgICAgfSxcclxuICAgICAgZGlyZWN0aW9uOiAnbHRyJyxcclxuICAgICAgZ2xvYmFsOiB7XHJcbiAgICAgICAgLy8gVE9ETyBBZGQgbW9yZSBnbG9iYWwgY29uZmlndXJhdGlvbnNcclxuICAgICAgICAvLyBmb250czogW10sXHJcbiAgICAgICAgcGFkZGluZzoge1xyXG4gICAgICAgICAgdG9wOiAwLFxyXG4gICAgICAgICAgcmlnaHQ6IDAsXHJcbiAgICAgICAgICBib3R0b206IDAsXHJcbiAgICAgICAgICBsZWZ0OiAwXHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9LFxyXG4gICAgcHVibGljIGN1c3RvbUZvbnRzOiBJQ3VzdG9tRm9udFtdID0gW11cclxuICApIHsgfVxyXG59XHJcblxyXG5leHBvcnQgY2xhc3MgUEJFbWFpbCBleHRlbmRzIERlZmF1bHRzIHtcclxuICBjb25zdHJ1Y3Rvcih7IHN0cnVjdHVyZXMsIGdlbmVyYWwsIGN1c3RvbUZvbnRzIH06IElQQkVtYWlsID0ge30pIHtcclxuICAgIHN1cGVyKHN0cnVjdHVyZXMsIGdlbmVyYWwsIGN1c3RvbUZvbnRzKTtcclxuICB9XHJcbn1cclxuIl19
@@ -1,229 +1,229 @@
1
- /*
2
- * Copyright (c) 2024 Pobuca.
3
- * All rights reserved.
4
- */
5
- import { defaultsDeep } from '../utils';
6
- export class AIPBlock {
7
- }
8
- export class TextBlock {
9
- constructor(innerText, options, state = {
10
- disabled: false,
11
- message: ''
12
- }) {
13
- this.innerText = innerText;
14
- this.state = state;
15
- this.type = 'text';
16
- this.icon = 'text_format';
17
- this.options = {
18
- color: '#000000',
19
- font: {
20
- fallback: 'Arial, Helvetica, sans-serif',
21
- family: 'Roboto',
22
- style: 'normal',
23
- size: 16,
24
- weight: 400
25
- },
26
- lineHeight: {
27
- value: 40,
28
- unit: 'none'
29
- },
30
- padding: {
31
- top: 10,
32
- right: 25,
33
- bottom: 10,
34
- left: 25
35
- }
36
- };
37
- this.title = $localize `:@@text_block:Text`;
38
- this.options = defaultsDeep(options, this.options);
39
- }
40
- }
41
- export class ImageBlock {
42
- constructor(src = 'https://via.placeholder.com/600x200?text=CHANGE+ME', options, state = {
43
- disabled: false,
44
- message: ''
45
- }) {
46
- this.src = src;
47
- this.state = state;
48
- this.type = 'image';
49
- this.icon = 'image';
50
- this.options = {
51
- border: {
52
- color: '#cccccc',
53
- style: 'solid',
54
- width: 0,
55
- radius: 0
56
- },
57
- width: {
58
- value: 100,
59
- unit: 'px',
60
- auto: true,
61
- units: ['px']
62
- },
63
- height: {
64
- value: 100,
65
- unit: 'px',
66
- auto: true,
67
- units: ['px']
68
- },
69
- link: {
70
- href: '',
71
- target: '_blank'
72
- },
73
- align: 'center',
74
- title: '',
75
- padding: {
76
- top: 0,
77
- right: 0,
78
- bottom: 0,
79
- left: 0
80
- }
81
- };
82
- this.title = $localize `:@@image_block:Image`;
83
- this.options = defaultsDeep(options, this.options);
84
- }
85
- }
86
- export class ButtonBlock {
87
- constructor(innerText = 'Click on me', options, state = {
88
- disabled: false,
89
- message: ''
90
- }) {
91
- this.innerText = innerText;
92
- this.state = state;
93
- this.type = 'button';
94
- this.icon = 'radio_button_checked';
95
- this.options = {
96
- backgroundColor: '#414141',
97
- border: {
98
- color: '#414141',
99
- style: 'solid',
100
- width: 0,
101
- radius: 3
102
- },
103
- color: '#ffffff',
104
- font: {
105
- fallback: 'Arial, Helvetica, sans-serif',
106
- family: 'Roboto',
107
- size: 13,
108
- style: 'normal',
109
- weight: 400
110
- },
111
- align: 'center',
112
- fullWidth: false,
113
- // verticalAlign: 'middle',
114
- lineHeight: {
115
- value: 120,
116
- unit: '%'
117
- },
118
- link: {
119
- href: '',
120
- target: '_blank'
121
- },
122
- innerPadding: {
123
- top: 10,
124
- right: 25,
125
- bottom: 10,
126
- left: 25
127
- },
128
- padding: {
129
- top: 10,
130
- right: 25,
131
- bottom: 10,
132
- left: 25
133
- }
134
- };
135
- this.title = $localize `:@@button_block:Button`;
136
- this.options = defaultsDeep(options, this.options);
137
- }
138
- }
139
- export class DividerBlock {
140
- constructor(options, state = {
141
- disabled: false,
142
- message: ''
143
- }) {
144
- this.state = state;
145
- this.type = 'divider';
146
- this.icon = 'remove';
147
- this.options = {
148
- border: {
149
- color: '#000000',
150
- style: 'solid',
151
- width: 4
152
- },
153
- padding: {
154
- top: 10,
155
- right: 25,
156
- bottom: 10,
157
- left: 25
158
- }
159
- };
160
- this.title = $localize `:@@divider_block:Divider`;
161
- this.options = defaultsDeep(options, this.options);
162
- }
163
- }
164
- export class SpacerBlock {
165
- constructor(options, state = {
166
- disabled: false,
167
- message: ''
168
- }) {
169
- this.state = state;
170
- this.type = 'spacer';
171
- this.icon = 'vertical_align_center';
172
- this.title = $localize `:@@spacer_block:Spacer`;
173
- this.options = {
174
- height: {
175
- value: 20,
176
- unit: 'px',
177
- units: ['px']
178
- }
179
- };
180
- this.options = defaultsDeep(options, this.options);
181
- }
182
- }
183
- export class SocialBlock {
184
- // https://mjml.io/documentation/#mjml-social
185
- constructor(networks = [], options, state = {
186
- disabled: false,
187
- message: ''
188
- }) {
189
- this.networks = networks;
190
- this.state = state;
191
- this.type = 'social';
192
- this.icon = 'share';
193
- this.title = $localize `:@@share_block:Social`;
194
- this.options = {
195
- align: 'center',
196
- mode: 'horizontal',
197
- font: {
198
- fallback: 'Arial, Helvetica, sans-serif',
199
- family: 'Roboto',
200
- style: 'normal',
201
- size: 16,
202
- weight: 400
203
- },
204
- iconSize: {
205
- value: 30,
206
- unit: 'px'
207
- },
208
- lineHeight: {
209
- value: 16,
210
- unit: 'px'
211
- },
212
- color: '#333333',
213
- innerPadding: {
214
- top: 4,
215
- right: 4,
216
- bottom: 4,
217
- left: 4
218
- },
219
- padding: {
220
- top: 10,
221
- right: 25,
222
- bottom: 10,
223
- left: 25
224
- }
225
- };
226
- this.options = defaultsDeep(options, this.options);
227
- }
228
- }
229
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRWxlbWVudHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9wYi1lbWFpbC1idWlsZGVyL3NyYy9saWIvY2xhc3Nlcy9FbGVtZW50cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7O0dBR0c7QUFFSCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sVUFBVSxDQUFDO0FBb0J4QyxNQUFNLE9BQWdCLFFBQVE7Q0FNN0I7QUFFRCxNQUFNLE9BQU8sU0FBUztJQXlCcEIsWUFDUyxTQUFrQixFQUN6QixPQUEyQixFQUNwQixRQUFxQjtRQUMxQixRQUFRLEVBQUUsS0FBSztRQUNmLE9BQU8sRUFBRSxFQUFFO0tBQ1o7UUFMTSxjQUFTLEdBQVQsU0FBUyxDQUFTO1FBRWxCLFVBQUssR0FBTCxLQUFLLENBR1g7UUE5Qk0sU0FBSSxHQUFHLE1BQU0sQ0FBQztRQUNkLFNBQUksR0FBRyxhQUFhLENBQUM7UUFDdkIsWUFBTyxHQUFzQjtZQUNsQyxLQUFLLEVBQUUsU0FBUztZQUNoQixJQUFJLEVBQUU7Z0JBQ0osUUFBUSxFQUFFLDhCQUE4QjtnQkFDeEMsTUFBTSxFQUFFLFFBQVE7Z0JBQ2hCLEtBQUssRUFBRSxRQUFRO2dCQUNmLElBQUksRUFBRSxFQUFFO2dCQUNSLE1BQU0sRUFBRSxHQUFHO2FBQ1o7WUFDRCxVQUFVLEVBQUU7Z0JBQ1YsS0FBSyxFQUFFLEVBQUU7Z0JBQ1QsSUFBSSxFQUFFLE1BQU07YUFDYjtZQUNELE9BQU8sRUFBRTtnQkFDUCxHQUFHLEVBQUUsRUFBRTtnQkFDUCxLQUFLLEVBQUUsRUFBRTtnQkFDVCxNQUFNLEVBQUUsRUFBRTtnQkFDVixJQUFJLEVBQUUsRUFBRTthQUNUO1NBQ0YsQ0FBQztRQUNGLFVBQUssR0FBRyxTQUFTLENBQUEsb0JBQW9CLENBQUM7UUFVcEMsSUFBSSxDQUFDLE9BQU8sR0FBRyxZQUFZLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztJ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T0FBTyxFQUFFO2dCQUNQLEdBQUcsRUFBRSxFQUFFO2dCQUNQLEtBQUssRUFBRSxFQUFFO2dCQUNULE1BQU0sRUFBRSxFQUFFO2dCQUNWLElBQUksRUFBRSxFQUFFO2FBQ1Q7U0FDRixDQUFDO1FBV0EsSUFBSSxDQUFDLE9BQU8sR0FBRyxZQUFZLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUNyRCxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogQ29weXJpZ2h0IChjKSAyMDI0IFBvYnVjYS5cbiAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4gKi9cblxuaW1wb3J0IHsgZGVmYXVsdHNEZWVwIH0gZnJvbSAnLi4vdXRpbHMnO1xuaW1wb3J0IHtcbiAgSUJsb2NrU3RhdGUsXG4gIElCdXR0b25CbG9ja09wdGlvbnMsXG4gIElEaXZpZGVyQmxvY2tPcHRpb25zLFxuICBJSW1hZ2VCTG9ja09wdGlvbnMsXG4gIElTb2NpYWxCbG9ja09wdGlvbnMsXG4gIElTb2NpYWxOZXR3b3JrLFxuICBJU3BhY2VyQmxvY2tPcHRpb25zLFxuICBJVGV4dEJsb2NrT3B0aW9uc1xufSBmcm9tICcuLi9pbnRlcmZhY2VzL2ludGVyZmFjZXMnO1xuXG5leHBvcnQgdHlwZSBUQmxvY2tzT3B0aW9ucyA9XG4gIHwgSVRleHRCbG9ja09wdGlvbnNcbiAgfCBJSW1hZ2VCTG9ja09wdGlvbnNcbiAgfCBJQnV0dG9uQmxvY2tPcHRpb25zXG4gIHwgSURpdmlkZXJCbG9ja09wdGlvbnNcbiAgfCBJU3BhY2VyQmxvY2tPcHRpb25zXG4gIHwgSVNvY2lhbEJsb2NrT3B0aW9ucztcblxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEFJUEJsb2NrIHtcbiAgcmVhZG9ubHkgdHlwZTogc3RyaW5nO1xuICByZWFkb25seSBpY29uOiBzdHJpbmc7XG4gIGFic3RyYWN0IHJlYWRvbmx5IHRpdGxlOiBzdHJpbmc7XG4gIHB1YmxpYyBvcHRpb25zOiBUQmxvY2tzT3B0aW9ucztcbiAgcHVibGljIHN0YXRlOiBJQmxvY2tTdGF0ZTtcbn1cblxuZXhwb3J0IGNsYXNzIFRleHRCbG9jayBpbXBsZW1lbnRzIEFJUEJsb2NrIHtcbiAgcmVhZG9ubHkgdHlwZSA9ICd0ZXh0JztcbiAgcmVhZG9ubHkgaWNvbiA9ICd0ZXh0X2Zvcm1hdCc7XG4gIHB1YmxpYyBvcHRpb25zOiBJVGV4dEJsb2NrT3B0aW9ucyA9IHtcbiAgICBjb2xvcjogJyMwMDAwMDAnLFxuICAgIGZvbnQ6IHtcbiAgICAgIGZhbGxiYWNrOiAnQXJpYWwsIEhlbHZldGljYSwgc2Fucy1zZXJpZicsXG4gICAgICBmYW1pbHk6ICdSb2JvdG8nLFxuICAgICAgc3R5bGU6ICdub3JtYWwnLFxuICAgICAgc2l6ZTogMTYsXG4gICAgICB3ZWlnaHQ6IDQwMFxuICAgIH0sXG4gICAgbGluZUhlaWdodDoge1xuICAgICAgdmFsdWU6IDQwLFxuICAgICAgdW5pdDogJ25vbmUnXG4gICAgfSxcbiAgICBwYWRkaW5nOiB7XG4gICAgICB0b3A6IDEwLFxuICAgICAgcmlnaHQ6IDI1LFxuICAgICAgYm90dG9tOiAxMCxcbiAgICAgIGxlZnQ6IDI1XG4gICAgfVxuICB9O1xuICB0aXRsZSA9ICRsb2NhbGl6ZWA6QEB0ZXh0X2Jsb2NrOlRleHRgO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHB1YmxpYyBpbm5lclRleHQ/OiBzdHJpbmcsXG4gICAgb3B0aW9ucz86IElUZXh0QmxvY2tPcHRpb25zLFxuICAgIHB1YmxpYyBzdGF0ZTogSUJsb2NrU3RhdGUgPSB7XG4gICAgICBkaXNhYmxlZDogZmFsc2UsXG4gICAgICBtZXNzYWdlOiAnJ1xuICAgIH1cbiAgKSB7XG4gICAgdGhpcy5vcHRpb25zID0gZGVmYXVsdHNEZWVwKG9wdGlvbnMsIHRoaXMub3B0aW9ucyk7XG4gIH1cbn1cblxuZXhwb3J0IGNsYXNzIEltYWdlQmxvY2sgaW1wbGVtZW50cyBBSVBCbG9jayB7XG4gIHJlYWRvbmx5IHR5cGUgPSAnaW1hZ2UnO1xuICByZWFkb25seSBpY29uID0gJ2ltYWdlJztcbiAgcHVibGljIG9wdGlvbnM6IElJbWFnZUJMb2NrT3B0aW9ucyA9IHtcbiAgICBib3JkZXI6IHtcbiAgICAgIGNvbG9yOiAnI2NjY2NjYycsXG4gICAgICBzdHlsZTogJ3NvbGlkJyxcbiAgICAgIHdpZHRoOiAwLFxuICAgICAgcmFkaXVzOiAwXG4gICAgfSxcbiAgICB3aWR0aDoge1xuICAgICAgdmFsdWU6IDEwMCxcbiAgICAgIHVuaXQ6ICdweCcsXG4gICAgICBhdXRvOiB0cnVlLFxuICAgICAgdW5pdHM6IFsncHgnXVxuICAgIH0sXG4gICAgaGVpZ2h0OiB7XG4gICAgICB2YWx1ZTogMTAwLFxuICAgICAgdW5pdDogJ3B4JyxcbiAgICAgIGF1dG86IHRydWUsXG4gICAgICB1bml0czogWydweCddXG4gICAgfSxcbiAgICBsaW5rOiB7XG4gICAgICBocmVmOiAnJyxcbiAgICAgIHRhcmdldDogJ19ibGFuaydcbiAgICB9LFxuICAgIGFsaWduOiAnY2VudGVyJyxcbiAgICB0aXRsZTogJycsXG4gICAgcGFkZGluZzoge1xuICAgICAgdG9wOiAwLFxuICAgICAgcmlnaHQ6IDAsXG4gICAgICBib3R0b206IDAsXG4gICAgICBsZWZ0OiAwXG4gICAgfVxuICB9O1xuICB0aXRsZSA9ICRsb2NhbGl6ZWA6QEBpbWFnZV9ibG9jazpJbWFnZWA7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHVibGljIHNyYyA9ICdodHRwczovL3ZpYS5wbGFjZWhvbGRlci5jb20vNjAweDIwMD90ZXh0PUNIQU5HRStNRScsXG4gICAgb3B0aW9ucz86IElJbWFnZUJMb2NrT3B0aW9ucyxcbiAgICBwdWJsaWMgc3RhdGU6IElCbG9ja1N0YXRlID0ge1xuICAgICAgZGlzYWJsZWQ6IGZhbHNlLFxuICAgICAgbWVzc2FnZTogJydcbiAgICB9XG4gICkge1xuICAgIHRoaXMub3B0aW9ucyA9IGRlZmF1bHRzRGVlcChvcHRpb25zLCB0aGlzLm9wdGlvbnMpO1xuICB9XG59XG5cbmV4cG9ydCBjbGFzcyBCdXR0b25CbG9jayBpbXBsZW1lbnRzIEFJUEJsb2NrIHtcbiAgcmVhZG9ubHkgdHlwZSA9ICdidXR0b24nO1xuICByZWFkb25seSBpY29uID0gJ3JhZGlvX2J1dHRvbl9jaGVja2VkJztcbiAgcHVibGljIG9wdGlvbnM6IElCdXR0b25CbG9ja09wdGlvbnMgPSB7XG4gICAgYmFja2dyb3VuZENvbG9yOiAnIzQxNDE0MScsXG4gICAgYm9yZGVyOiB7XG4gICAgICBjb2xvcjogJyM0MTQxNDEnLFxuICAgICAgc3R5bGU6ICdzb2xpZCcsXG4gICAgICB3aWR0aDogMCxcbiAgICAgIHJhZGl1czogM1xuICAgIH0sXG4gICAgY29sb3I6ICcjZmZmZmZmJyxcbiAgICBmb250OiB7XG4gICAgICBmYWxsYmFjazogJ0FyaWFsLCBIZWx2ZXRpY2EsIHNhbnMtc2VyaWYnLFxuICAgICAgZmFtaWx5OiAnUm9ib3RvJyxcbiAgICAgIHNpemU6IDEzLFxuICAgICAgc3R5bGU6ICdub3JtYWwnLFxuICAgICAgd2VpZ2h0OiA0MDBcbiAgICB9LFxuXG4gICAgYWxpZ246ICdjZW50ZXInLFxuICAgIGZ1bGxXaWR0aDogZmFsc2UsXG4gICAgLy8gdmVydGljYWxBbGlnbjogJ21pZGRsZScsXG4gICAgbGluZUhlaWdodDoge1xuICAgICAgdmFsdWU6IDEyMCxcbiAgICAgIHVuaXQ6ICclJ1xuICAgIH0sXG4gICAgbGluazoge1xuICAgICAgaHJlZjogJycsXG4gICAgICB0YXJnZXQ6ICdfYmxhbmsnXG4gICAgfSxcbiAgICBpbm5lclBhZGRpbmc6IHtcbiAgICAgIHRvcDogMTAsXG4gICAgICByaWdodDogMjUsXG4gICAgICBib3R0b206IDEwLFxuICAgICAgbGVmdDogMjVcbiAgICB9LFxuICAgIHBhZGRpbmc6IHtcbiAgICAgIHRvcDogMTAsXG4gICAgICByaWdodDogMjUsXG4gICAgICBib3R0b206IDEwLFxuICAgICAgbGVmdDogMjVcbiAgICB9XG4gIH07XG4gIHRpdGxlID0gJGxvY2FsaXplYDpAQGJ1dHRvbl9ibG9jazpCdXR0b25gO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHB1YmxpYyBpbm5lclRleHQ6IHN0cmluZyA9ICdDbGljayBvbiBtZScsXG4gICAgb3B0aW9ucz86IElCdXR0b25CbG9ja09wdGlvbnMsXG4gICAgcHVibGljIHN0YXRlOiBJQmxvY2tTdGF0ZSA9IHtcbiAgICAgIGRpc2FibGVkOiBmYWxzZSxcbiAgICAgIG1lc3NhZ2U6ICcnXG4gICAgfVxuICApIHtcbiAgICB0aGlzLm9wdGlvbnMgPSBkZWZhdWx0c0RlZXAob3B0aW9ucywgdGhpcy5vcHRpb25zKTtcbiAgfVxufVxuXG5leHBvcnQgY2xhc3MgRGl2aWRlckJsb2NrIGltcGxlbWVudHMgQUlQQmxvY2sge1xuICByZWFkb25seSB0eXBlID0gJ2RpdmlkZXInO1xuICByZWFkb25seSBpY29uID0gJ3JlbW92ZSc7XG4gIHB1YmxpYyBvcHRpb25zOiBJRGl2aWRlckJsb2NrT3B0aW9ucyA9IHtcbiAgICBib3JkZXI6IHtcbiAgICAgIGNvbG9yOiAnIzAwMDAwMCcsXG4gICAgICBzdHlsZTogJ3NvbGlkJyxcbiAgICAgIHdpZHRoOiA0XG4gICAgfSxcbiAgICBwYWRkaW5nOiB7XG4gICAgICB0b3A6IDEwLFxuICAgICAgcmlnaHQ6IDI1LFxuICAgICAgYm90dG9tOiAxMCxcbiAgICAgIGxlZnQ6IDI1XG4gICAgfVxuICB9O1xuICB0aXRsZSA9ICRsb2NhbGl6ZWA6QEBkaXZpZGVyX2Jsb2NrOkRpdmlkZXJgO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIG9wdGlvbnM/OiBJRGl2aWRlckJsb2NrT3B0aW9ucyxcbiAgICBwdWJsaWMgc3RhdGU6IElCbG9ja1N0YXRlID0ge1xuICAgICAgZGlzYWJsZWQ6IGZhbHNlLFxuICAgICAgbWVzc2FnZTogJydcbiAgICB9XG4gICkge1xuICAgIHRoaXMub3B0aW9ucyA9IGRlZmF1bHRzRGVlcChvcHRpb25zLCB0aGlzLm9wdGlvbnMpO1xuICB9XG59XG5cbmV4cG9ydCBjbGFzcyBTcGFjZXJCbG9jayBpbXBsZW1lbnRzIEFJUEJsb2NrIHtcbiAgcmVhZG9ubHkgdHlwZSA9ICdzcGFjZXInO1xuICByZWFkb25seSBpY29uID0gJ3ZlcnRpY2FsX2FsaWduX2NlbnRlcic7XG4gIHRpdGxlID0gJGxvY2FsaXplYDpAQHNwYWNlcl9ibG9jazpTcGFjZXJgO1xuXG4gIG9wdGlvbnM6IElTcGFjZXJCbG9ja09wdGlvbnMgPSB7XG4gICAgaGVpZ2h0OiB7XG4gICAgICB2YWx1ZTogMjAsXG4gICAgICB1bml0OiAncHgnLFxuICAgICAgdW5pdHM6IFsncHgnXVxuICAgIH1cbiAgfTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBvcHRpb25zPzogSVNwYWNlckJsb2NrT3B0aW9ucyxcbiAgICBwdWJsaWMgc3RhdGU6IElCbG9ja1N0YXRlID0ge1xuICAgICAgZGlzYWJsZWQ6IGZhbHNlLFxuICAgICAgbWVzc2FnZTogJydcbiAgICB9XG4gICkge1xuICAgIHRoaXMub3B0aW9ucyA9IGRlZmF1bHRzRGVlcChvcHRpb25zLCB0aGlzLm9wdGlvbnMpO1xuICB9XG59XG5cbmV4cG9ydCBjbGFzcyBTb2NpYWxCbG9jayBpbXBsZW1lbnRzIEFJUEJsb2NrIHtcbiAgcmVhZG9ubHkgdHlwZSA9ICdzb2NpYWwnO1xuICByZWFkb25seSBpY29uID0gJ3NoYXJlJztcbiAgdGl0bGUgPSAkbG9jYWxpemVgOkBAc2hhcmVfYmxvY2s6U29jaWFsYDtcblxuICBvcHRpb25zOiBJU29jaWFsQmxvY2tPcHRpb25zID0ge1xuICAgIGFsaWduOiAnY2VudGVyJyxcbiAgICBtb2RlOiAnaG9yaXpvbnRhbCcsXG4gICAgZm9udDoge1xuICAgICAgZmFsbGJhY2s6ICdBcmlhbCwgSGVsdmV0aWNhLCBzYW5zLXNlcmlmJyxcbiAgICAgIGZhbWlseTogJ1JvYm90bycsXG4gICAgICBzdHlsZTogJ25vcm1hbCcsXG4gICAgICBzaXplOiAxNixcbiAgICAgIHdlaWdodDogNDAwXG4gICAgfSxcbiAgICBpY29uU2l6ZToge1xuICAgICAgdmFsdWU6IDMwLFxuICAgICAgdW5pdDogJ3B4J1xuICAgIH0sXG4gICAgbGluZUhlaWdodDoge1xuICAgICAgdmFsdWU6IDE2LFxuICAgICAgdW5pdDogJ3B4J1xuICAgIH0sXG4gICAgY29sb3I6ICcjMzMzMzMzJyxcbiAgICBpbm5lclBhZGRpbmc6IHtcbiAgICAgIHRvcDogNCxcbiAgICAgIHJpZ2h0OiA0LFxuICAgICAgYm90dG9tOiA0LFxuICAgICAgbGVmdDogNFxuICAgIH0sXG4gICAgcGFkZGluZzoge1xuICAgICAgdG9wOiAxMCxcbiAgICAgIHJpZ2h0OiAyNSxcbiAgICAgIGJvdHRvbTogMTAsXG4gICAgICBsZWZ0OiAyNVxuICAgIH1cbiAgfTtcblxuICAvLyBodHRwczovL21qbWwuaW8vZG9jdW1lbnRhdGlvbi8jbWptbC1zb2NpYWxcbiAgY29uc3RydWN0b3IoXG4gICAgcHVibGljIG5ldHdvcmtzOiBJU29jaWFsTmV0d29ya1tdID0gW10sXG4gICAgb3B0aW9ucz86IElTb2NpYWxCbG9ja09wdGlvbnMsXG4gICAgcHVibGljIHN0YXRlOiBJQmxvY2tTdGF0ZSA9IHtcbiAgICAgIGRpc2FibGVkOiBmYWxzZSxcbiAgICAgIG1lc3NhZ2U6ICcnXG4gICAgfVxuICApIHtcbiAgICB0aGlzLm9wdGlvbnMgPSBkZWZhdWx0c0RlZXAob3B0aW9ucywgdGhpcy5vcHRpb25zKTtcbiAgfVxufVxuXG5leHBvcnQgdHlwZSBUQmxvY2tzID0gVGV4dEJsb2NrIHwgSW1hZ2VCbG9jayB8IEJ1dHRvbkJsb2NrIHwgRGl2aWRlckJsb2NrIHwgU3BhY2VyQmxvY2sgfCBTb2NpYWxCbG9jaztcbiJdfQ==
1
+ /*
2
+ * Copyright (c) 2024 Pobuca.
3
+ * All rights reserved.
4
+ */
5
+ import { defaultsDeep } from '../utils';
6
+ export class AIPBlock {
7
+ }
8
+ export class TextBlock {
9
+ constructor(innerText, options, state = {
10
+ disabled: false,
11
+ message: ''
12
+ }) {
13
+ this.innerText = innerText;
14
+ this.state = state;
15
+ this.type = 'text';
16
+ this.icon = 'text_format';
17
+ this.options = {
18
+ color: '#000000',
19
+ font: {
20
+ fallback: 'Arial, Helvetica, sans-serif',
21
+ family: 'Roboto',
22
+ style: 'normal',
23
+ size: 16,
24
+ weight: 400
25
+ },
26
+ lineHeight: {
27
+ value: 40,
28
+ unit: 'none'
29
+ },
30
+ padding: {
31
+ top: 10,
32
+ right: 25,
33
+ bottom: 10,
34
+ left: 25
35
+ }
36
+ };
37
+ this.title = $localize `:@@text_block:Text`;
38
+ this.options = defaultsDeep(options, this.options);
39
+ }
40
+ }
41
+ export class ImageBlock {
42
+ constructor(src = 'https://via.placeholder.com/600x200?text=CHANGE+ME', options, state = {
43
+ disabled: false,
44
+ message: ''
45
+ }) {
46
+ this.src = src;
47
+ this.state = state;
48
+ this.type = 'image';
49
+ this.icon = 'image';
50
+ this.options = {
51
+ border: {
52
+ color: '#cccccc',
53
+ style: 'solid',
54
+ width: 0,
55
+ radius: 0
56
+ },
57
+ width: {
58
+ value: 100,
59
+ unit: 'px',
60
+ auto: true,
61
+ units: ['px']
62
+ },
63
+ height: {
64
+ value: 100,
65
+ unit: 'px',
66
+ auto: true,
67
+ units: ['px']
68
+ },
69
+ link: {
70
+ href: '',
71
+ target: '_blank'
72
+ },
73
+ align: 'center',
74
+ title: '',
75
+ padding: {
76
+ top: 0,
77
+ right: 0,
78
+ bottom: 0,
79
+ left: 0
80
+ }
81
+ };
82
+ this.title = $localize `:@@image_block:Image`;
83
+ this.options = defaultsDeep(options, this.options);
84
+ }
85
+ }
86
+ export class ButtonBlock {
87
+ constructor(innerText = 'Click on me', options, state = {
88
+ disabled: false,
89
+ message: ''
90
+ }) {
91
+ this.innerText = innerText;
92
+ this.state = state;
93
+ this.type = 'button';
94
+ this.icon = 'radio_button_checked';
95
+ this.options = {
96
+ backgroundColor: '#414141',
97
+ border: {
98
+ color: '#414141',
99
+ style: 'solid',
100
+ width: 0,
101
+ radius: 3
102
+ },
103
+ color: '#ffffff',
104
+ font: {
105
+ fallback: 'Arial, Helvetica, sans-serif',
106
+ family: 'Roboto',
107
+ size: 13,
108
+ style: 'normal',
109
+ weight: 400
110
+ },
111
+ align: 'center',
112
+ fullWidth: false,
113
+ // verticalAlign: 'middle',
114
+ lineHeight: {
115
+ value: 120,
116
+ unit: '%'
117
+ },
118
+ link: {
119
+ href: '',
120
+ target: '_blank'
121
+ },
122
+ innerPadding: {
123
+ top: 10,
124
+ right: 25,
125
+ bottom: 10,
126
+ left: 25
127
+ },
128
+ padding: {
129
+ top: 10,
130
+ right: 25,
131
+ bottom: 10,
132
+ left: 25
133
+ }
134
+ };
135
+ this.title = $localize `:@@button_block:Button`;
136
+ this.options = defaultsDeep(options, this.options);
137
+ }
138
+ }
139
+ export class DividerBlock {
140
+ constructor(options, state = {
141
+ disabled: false,
142
+ message: ''
143
+ }) {
144
+ this.state = state;
145
+ this.type = 'divider';
146
+ this.icon = 'remove';
147
+ this.options = {
148
+ border: {
149
+ color: '#000000',
150
+ style: 'solid',
151
+ width: 4
152
+ },
153
+ padding: {
154
+ top: 10,
155
+ right: 25,
156
+ bottom: 10,
157
+ left: 25
158
+ }
159
+ };
160
+ this.title = $localize `:@@divider_block:Divider`;
161
+ this.options = defaultsDeep(options, this.options);
162
+ }
163
+ }
164
+ export class SpacerBlock {
165
+ constructor(options, state = {
166
+ disabled: false,
167
+ message: ''
168
+ }) {
169
+ this.state = state;
170
+ this.type = 'spacer';
171
+ this.icon = 'vertical_align_center';
172
+ this.title = $localize `:@@spacer_block:Spacer`;
173
+ this.options = {
174
+ height: {
175
+ value: 20,
176
+ unit: 'px',
177
+ units: ['px']
178
+ }
179
+ };
180
+ this.options = defaultsDeep(options, this.options);
181
+ }
182
+ }
183
+ export class SocialBlock {
184
+ // https://mjml.io/documentation/#mjml-social
185
+ constructor(networks = [], options, state = {
186
+ disabled: false,
187
+ message: ''
188
+ }) {
189
+ this.networks = networks;
190
+ this.state = state;
191
+ this.type = 'social';
192
+ this.icon = 'share';
193
+ this.title = $localize `:@@share_block:Social`;
194
+ this.options = {
195
+ align: 'center',
196
+ mode: 'horizontal',
197
+ font: {
198
+ fallback: 'Arial, Helvetica, sans-serif',
199
+ family: 'Roboto',
200
+ style: 'normal',
201
+ size: 16,
202
+ weight: 400
203
+ },
204
+ iconSize: {
205
+ value: 30,
206
+ unit: 'px'
207
+ },
208
+ lineHeight: {
209
+ value: 16,
210
+ unit: 'px'
211
+ },
212
+ color: '#333333',
213
+ innerPadding: {
214
+ top: 4,
215
+ right: 4,
216
+ bottom: 4,
217
+ left: 4
218
+ },
219
+ padding: {
220
+ top: 10,
221
+ right: 25,
222
+ bottom: 10,
223
+ left: 25
224
+ }
225
+ };
226
+ this.options = defaultsDeep(options, this.options);
227
+ }
228
+ }
229
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRWxlbWVudHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9wYi1lbWFpbC1idWlsZGVyL3NyYy9saWIvY2xhc3Nlcy9FbGVtZW50cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7O0dBR0c7QUFFSCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sVUFBVSxDQUFDO0FBb0J4QyxNQUFNLE9BQWdCLFFBQVE7Q0FNN0I7QUFFRCxNQUFNLE9BQU8sU0FBUztJQXlCcEIsWUFDUyxTQUFrQixFQUN6QixPQUEyQixFQUNwQixRQUFxQjtRQUMxQixRQUFRLEVBQUUsS0FBSztRQUNmLE9BQU8sRUFBRSxFQUFFO0tBQ1o7UUFMTSxjQUFTLEdBQVQsU0FBUyxDQUFTO1FBRWxCLFVBQUssR0FBTCxLQUFLLENBR1g7UUE5Qk0sU0FBSSxHQUFHLE1BQU0sQ0FBQztRQUNkLFNBQUksR0FBRyxhQUFhLENBQUM7UUFDdkIsWUFBTyxHQUFzQjtZQUNsQyxLQUFLLEVBQUUsU0FBUztZQUNoQixJQUFJLEVBQUU7Z0JBQ0osUUFBUSxFQUFFLDhCQUE4QjtnQkFDeEMsTUFBTSxFQUFFLFFBQVE7Z0JBQ2hCLEtBQUssRUFBRSxRQUFRO2dCQUNmLElBQUksRUFBRSxFQUFFO2dCQUNSLE1BQU0sRUFBRSxHQUFHO2FBQ1o7WUFDRCxVQUFVLEVBQUU7Z0JBQ1YsS0FBSyxFQUFFLEVBQUU7Z0JBQ1QsSUFBSSxFQUFFLE1BQU07YUFDYjtZQUNELE9BQU8sRUFBRTtnQkFDUCxHQUFHLEVBQUUsRUFBRTtnQkFDUCxLQUFLLEVBQUUsRUFBRTtnQkFDVCxNQUFNLEVBQUUsRUFBRTtnQkFDVixJQUFJLEVBQUUsRUFBRTthQUNUO1NBQ0YsQ0FBQztRQUNGLFVBQUssR0FBRyxTQUFTLENBQUEsb0JBQW9CLENBQUM7UUFVcEMsSUFBSSxDQUFDLE9BQU8sR0FBRyxZQUFZLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztJ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T0FBTyxFQUFFO2dCQUNQLEdBQUcsRUFBRSxFQUFFO2dCQUNQLEtBQUssRUFBRSxFQUFFO2dCQUNULE1BQU0sRUFBRSxFQUFFO2dCQUNWLElBQUksRUFBRSxFQUFFO2FBQ1Q7U0FDRixDQUFDO1FBV0EsSUFBSSxDQUFDLE9BQU8sR0FBRyxZQUFZLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUNyRCxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxyXG4gKiBDb3B5cmlnaHQgKGMpIDIwMjQgUG9idWNhLlxyXG4gKiBBbGwgcmlnaHRzIHJlc2VydmVkLlxyXG4gKi9cclxuXHJcbmltcG9ydCB7IGRlZmF1bHRzRGVlcCB9IGZyb20gJy4uL3V0aWxzJztcclxuaW1wb3J0IHtcclxuICBJQmxvY2tTdGF0ZSxcclxuICBJQnV0dG9uQmxvY2tPcHRpb25zLFxyXG4gIElEaXZpZGVyQmxvY2tPcHRpb25zLFxyXG4gIElJbWFnZUJMb2NrT3B0aW9ucyxcclxuICBJU29jaWFsQmxvY2tPcHRpb25zLFxyXG4gIElTb2NpYWxOZXR3b3JrLFxyXG4gIElTcGFjZXJCbG9ja09wdGlvbnMsXHJcbiAgSVRleHRCbG9ja09wdGlvbnNcclxufSBmcm9tICcuLi9pbnRlcmZhY2VzL2ludGVyZmFjZXMnO1xyXG5cclxuZXhwb3J0IHR5cGUgVEJsb2Nrc09wdGlvbnMgPVxyXG4gIHwgSVRleHRCbG9ja09wdGlvbnNcclxuICB8IElJbWFnZUJMb2NrT3B0aW9uc1xyXG4gIHwgSUJ1dHRvbkJsb2NrT3B0aW9uc1xyXG4gIHwgSURpdmlkZXJCbG9ja09wdGlvbnNcclxuICB8IElTcGFjZXJCbG9ja09wdGlvbnNcclxuICB8IElTb2NpYWxCbG9ja09wdGlvbnM7XHJcblxyXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgQUlQQmxvY2sge1xyXG4gIHJlYWRvbmx5IHR5cGU6IHN0cmluZztcclxuICByZWFkb25seSBpY29uOiBzdHJpbmc7XHJcbiAgYWJzdHJhY3QgcmVhZG9ubHkgdGl0bGU6IHN0cmluZztcclxuICBwdWJsaWMgb3B0aW9uczogVEJsb2Nrc09wdGlvbnM7XHJcbiAgcHVibGljIHN0YXRlOiBJQmxvY2tTdGF0ZTtcclxufVxyXG5cclxuZXhwb3J0IGNsYXNzIFRleHRCbG9jayBpbXBsZW1lbnRzIEFJUEJsb2NrIHtcclxuICByZWFkb25seSB0eXBlID0gJ3RleHQnO1xyXG4gIHJlYWRvbmx5IGljb24gPSAndGV4dF9mb3JtYXQnO1xyXG4gIHB1YmxpYyBvcHRpb25zOiBJVGV4dEJsb2NrT3B0aW9ucyA9IHtcclxuICAgIGNvbG9yOiAnIzAwMDAwMCcsXHJcbiAgICBmb250OiB7XHJcbiAgICAgIGZhbGxiYWNrOiAnQXJpYWwsIEhlbHZldGljYSwgc2Fucy1zZXJpZicsXHJcbiAgICAgIGZhbWlseTogJ1JvYm90bycsXHJcbiAgICAgIHN0eWxlOiAnbm9ybWFsJyxcclxuICAgICAgc2l6ZTogMTYsXHJcbiAgICAgIHdlaWdodDogNDAwXHJcbiAgICB9LFxyXG4gICAgbGluZUhlaWdodDoge1xyXG4gICAgICB2YWx1ZTogNDAsXHJcbiAgICAgIHVuaXQ6ICdub25lJ1xyXG4gICAgfSxcclxuICAgIHBhZGRpbmc6IHtcclxuICAgICAgdG9wOiAxMCxcclxuICAgICAgcmlnaHQ6IDI1LFxyXG4gICAgICBib3R0b206IDEwLFxyXG4gICAgICBsZWZ0OiAyNVxyXG4gICAgfVxyXG4gIH07XHJcbiAgdGl0bGUgPSAkbG9jYWxpemVgOkBAdGV4dF9ibG9jazpUZXh0YDtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwdWJsaWMgaW5uZXJUZXh0Pzogc3RyaW5nLFxyXG4gICAgb3B0aW9ucz86IElUZXh0QmxvY2tPcHRpb25zLFxyXG4gICAgcHVibGljIHN0YXRlOiBJQmxvY2tTdGF0ZSA9IHtcclxuICAgICAgZGlzYWJsZWQ6IGZhbHNlLFxyXG4gICAgICBtZXNzYWdlOiAnJ1xyXG4gICAgfVxyXG4gICkge1xyXG4gICAgdGhpcy5vcHRpb25zID0gZGVmYXVsdHNEZWVwKG9wdGlvbnMsIHRoaXMub3B0aW9ucyk7XHJcbiAgfVxyXG59XHJcblxyXG5leHBvcnQgY2xhc3MgSW1hZ2VCbG9jayBpbXBsZW1lbnRzIEFJUEJsb2NrIHtcclxuICByZWFkb25seSB0eXBlID0gJ2ltYWdlJztcclxuICByZWFkb25seSBpY29uID0gJ2ltYWdlJztcclxuICBwdWJsaWMgb3B0aW9uczogSUltYWdlQkxvY2tPcHRpb25zID0ge1xyXG4gICAgYm9yZGVyOiB7XHJcbiAgICAgIGNvbG9yOiAnI2NjY2NjYycsXHJcbiAgICAgIHN0eWxlOiAnc29saWQnLFxyXG4gICAgICB3aWR0aDogMCxcclxuICAgICAgcmFkaXVzOiAwXHJcbiAgICB9LFxyXG4gICAgd2lkdGg6IHtcclxuICAgICAgdmFsdWU6IDEwMCxcclxuICAgICAgdW5pdDogJ3B4JyxcclxuICAgICAgYXV0bzogdHJ1ZSxcclxuICAgICAgdW5pdHM6IFsncHgnXVxyXG4gICAgfSxcclxuICAgIGhlaWdodDoge1xyXG4gICAgICB2YWx1ZTogMTAwLFxyXG4gICAgICB1bml0OiAncHgnLFxyXG4gICAgICBhdXRvOiB0cnVlLFxyXG4gICAgICB1bml0czogWydweCddXHJcbiAgICB9LFxyXG4gICAgbGluazoge1xyXG4gICAgICBocmVmOiAnJyxcclxuICAgICAgdGFyZ2V0OiAnX2JsYW5rJ1xyXG4gICAgfSxcclxuICAgIGFsaWduOiAnY2VudGVyJyxcclxuICAgIHRpdGxlOiAnJyxcclxuICAgIHBhZGRpbmc6IHtcclxuICAgICAgdG9wOiAwLFxyXG4gICAgICByaWdodDogMCxcclxuICAgICAgYm90dG9tOiAwLFxyXG4gICAgICBsZWZ0OiAwXHJcbiAgICB9XHJcbiAgfTtcclxuICB0aXRsZSA9ICRsb2NhbGl6ZWA6QEBpbWFnZV9ibG9jazpJbWFnZWA7XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHVibGljIHNyYyA9ICdodHRwczovL3ZpYS5wbGFjZWhvbGRlci5jb20vNjAweDIwMD90ZXh0PUNIQU5HRStNRScsXHJcbiAgICBvcHRpb25zPzogSUltYWdlQkxvY2tPcHRpb25zLFxyXG4gICAgcHVibGljIHN0YXRlOiBJQmxvY2tTdGF0ZSA9IHtcclxuICAgICAgZGlzYWJsZWQ6IGZhbHNlLFxyXG4gICAgICBtZXNzYWdlOiAnJ1xyXG4gICAgfVxyXG4gICkge1xyXG4gICAgdGhpcy5vcHRpb25zID0gZGVmYXVsdHNEZWVwKG9wdGlvbnMsIHRoaXMub3B0aW9ucyk7XHJcbiAgfVxyXG59XHJcblxyXG5leHBvcnQgY2xhc3MgQnV0dG9uQmxvY2sgaW1wbGVtZW50cyBBSVBCbG9jayB7XHJcbiAgcmVhZG9ubHkgdHlwZSA9ICdidXR0b24nO1xyXG4gIHJlYWRvbmx5IGljb24gPSAncmFkaW9fYnV0dG9uX2NoZWNrZWQnO1xyXG4gIHB1YmxpYyBvcHRpb25zOiBJQnV0dG9uQmxvY2tPcHRpb25zID0ge1xyXG4gICAgYmFja2dyb3VuZENvbG9yOiAnIzQxNDE0MScsXHJcbiAgICBib3JkZXI6IHtcclxuICAgICAgY29sb3I6ICcjNDE0MTQxJyxcclxuICAgICAgc3R5bGU6ICdzb2xpZCcsXHJcbiAgICAgIHdpZHRoOiAwLFxyXG4gICAgICByYWRpdXM6IDNcclxuICAgIH0sXHJcbiAgICBjb2xvcjogJyNmZmZmZmYnLFxyXG4gICAgZm9udDoge1xyXG4gICAgICBmYWxsYmFjazogJ0FyaWFsLCBIZWx2ZXRpY2EsIHNhbnMtc2VyaWYnLFxyXG4gICAgICBmYW1pbHk6ICdSb2JvdG8nLFxyXG4gICAgICBzaXplOiAxMyxcclxuICAgICAgc3R5bGU6ICdub3JtYWwnLFxyXG4gICAgICB3ZWlnaHQ6IDQwMFxyXG4gICAgfSxcclxuXHJcbiAgICBhbGlnbjogJ2NlbnRlcicsXHJcbiAgICBmdWxsV2lkdGg6IGZhbHNlLFxyXG4gICAgLy8gdmVydGljYWxBbGlnbjogJ21pZGRsZScsXHJcbiAgICBsaW5lSGVpZ2h0OiB7XHJcbiAgICAgIHZhbHVlOiAxMjAsXHJcbiAgICAgIHVuaXQ6ICclJ1xyXG4gICAgfSxcclxuICAgIGxpbms6IHtcclxuICAgICAgaHJlZjogJycsXHJcbiAgICAgIHRhcmdldDogJ19ibGFuaydcclxuICAgIH0sXHJcbiAgICBpbm5lclBhZGRpbmc6IHtcclxuICAgICAgdG9wOiAxMCxcclxuICAgICAgcmlnaHQ6IDI1LFxyXG4gICAgICBib3R0b206IDEwLFxyXG4gICAgICBsZWZ0OiAyNVxyXG4gICAgfSxcclxuICAgIHBhZGRpbmc6IHtcclxuICAgICAgdG9wOiAxMCxcclxuICAgICAgcmlnaHQ6IDI1LFxyXG4gICAgICBib3R0b206IDEwLFxyXG4gICAgICBsZWZ0OiAyNVxyXG4gICAgfVxyXG4gIH07XHJcbiAgdGl0bGUgPSAkbG9jYWxpemVgOkBAYnV0dG9uX2Jsb2NrOkJ1dHRvbmA7XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHVibGljIGlubmVyVGV4dDogc3RyaW5nID0gJ0NsaWNrIG9uIG1lJyxcclxuICAgIG9wdGlvbnM/OiBJQnV0dG9uQmxvY2tPcHRpb25zLFxyXG4gICAgcHVibGljIHN0YXRlOiBJQmxvY2tTdGF0ZSA9IHtcclxuICAgICAgZGlzYWJsZWQ6IGZhbHNlLFxyXG4gICAgICBtZXNzYWdlOiAnJ1xyXG4gICAgfVxyXG4gICkge1xyXG4gICAgdGhpcy5vcHRpb25zID0gZGVmYXVsdHNEZWVwKG9wdGlvbnMsIHRoaXMub3B0aW9ucyk7XHJcbiAgfVxyXG59XHJcblxyXG5leHBvcnQgY2xhc3MgRGl2aWRlckJsb2NrIGltcGxlbWVudHMgQUlQQmxvY2sge1xyXG4gIHJlYWRvbmx5IHR5cGUgPSAnZGl2aWRlcic7XHJcbiAgcmVhZG9ubHkgaWNvbiA9ICdyZW1vdmUnO1xyXG4gIHB1YmxpYyBvcHRpb25zOiBJRGl2aWRlckJsb2NrT3B0aW9ucyA9IHtcclxuICAgIGJvcmRlcjoge1xyXG4gICAgICBjb2xvcjogJyMwMDAwMDAnLFxyXG4gICAgICBzdHlsZTogJ3NvbGlkJyxcclxuICAgICAgd2lkdGg6IDRcclxuICAgIH0sXHJcbiAgICBwYWRkaW5nOiB7XHJcbiAgICAgIHRvcDogMTAsXHJcbiAgICAgIHJpZ2h0OiAyNSxcclxuICAgICAgYm90dG9tOiAxMCxcclxuICAgICAgbGVmdDogMjVcclxuICAgIH1cclxuICB9O1xyXG4gIHRpdGxlID0gJGxvY2FsaXplYDpAQGRpdmlkZXJfYmxvY2s6RGl2aWRlcmA7XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgb3B0aW9ucz86IElEaXZpZGVyQmxvY2tPcHRpb25zLFxyXG4gICAgcHVibGljIHN0YXRlOiBJQmxvY2tTdGF0ZSA9IHtcclxuICAgICAgZGlzYWJsZWQ6IGZhbHNlLFxyXG4gICAgICBtZXNzYWdlOiAnJ1xyXG4gICAgfVxyXG4gICkge1xyXG4gICAgdGhpcy5vcHRpb25zID0gZGVmYXVsdHNEZWVwKG9wdGlvbnMsIHRoaXMub3B0aW9ucyk7XHJcbiAgfVxyXG59XHJcblxyXG5leHBvcnQgY2xhc3MgU3BhY2VyQmxvY2sgaW1wbGVtZW50cyBBSVBCbG9jayB7XHJcbiAgcmVhZG9ubHkgdHlwZSA9ICdzcGFjZXInO1xyXG4gIHJlYWRvbmx5IGljb24gPSAndmVydGljYWxfYWxpZ25fY2VudGVyJztcclxuICB0aXRsZSA9ICRsb2NhbGl6ZWA6QEBzcGFjZXJfYmxvY2s6U3BhY2VyYDtcclxuXHJcbiAgb3B0aW9uczogSVNwYWNlckJsb2NrT3B0aW9ucyA9IHtcclxuICAgIGhlaWdodDoge1xyXG4gICAgICB2YWx1ZTogMjAsXHJcbiAgICAgIHVuaXQ6ICdweCcsXHJcbiAgICAgIHVuaXRzOiBbJ3B4J11cclxuICAgIH1cclxuICB9O1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIG9wdGlvbnM/OiBJU3BhY2VyQmxvY2tPcHRpb25zLFxyXG4gICAgcHVibGljIHN0YXRlOiBJQmxvY2tTdGF0ZSA9IHtcclxuICAgICAgZGlzYWJsZWQ6IGZhbHNlLFxyXG4gICAgICBtZXNzYWdlOiAnJ1xyXG4gICAgfVxyXG4gICkge1xyXG4gICAgdGhpcy5vcHRpb25zID0gZGVmYXVsdHNEZWVwKG9wdGlvbnMsIHRoaXMub3B0aW9ucyk7XHJcbiAgfVxyXG59XHJcblxyXG5leHBvcnQgY2xhc3MgU29jaWFsQmxvY2sgaW1wbGVtZW50cyBBSVBCbG9jayB7XHJcbiAgcmVhZG9ubHkgdHlwZSA9ICdzb2NpYWwnO1xyXG4gIHJlYWRvbmx5IGljb24gPSAnc2hhcmUnO1xyXG4gIHRpdGxlID0gJGxvY2FsaXplYDpAQHNoYXJlX2Jsb2NrOlNvY2lhbGA7XHJcblxyXG4gIG9wdGlvbnM6IElTb2NpYWxCbG9ja09wdGlvbnMgPSB7XHJcbiAgICBhbGlnbjogJ2NlbnRlcicsXHJcbiAgICBtb2RlOiAnaG9yaXpvbnRhbCcsXHJcbiAgICBmb250OiB7XHJcbiAgICAgIGZhbGxiYWNrOiAnQXJpYWwsIEhlbHZldGljYSwgc2Fucy1zZXJpZicsXHJcbiAgICAgIGZhbWlseTogJ1JvYm90bycsXHJcbiAgICAgIHN0eWxlOiAnbm9ybWFsJyxcclxuICAgICAgc2l6ZTogMTYsXHJcbiAgICAgIHdlaWdodDogNDAwXHJcbiAgICB9LFxyXG4gICAgaWNvblNpemU6IHtcclxuICAgICAgdmFsdWU6IDMwLFxyXG4gICAgICB1bml0OiAncHgnXHJcbiAgICB9LFxyXG4gICAgbGluZUhlaWdodDoge1xyXG4gICAgICB2YWx1ZTogMTYsXHJcbiAgICAgIHVuaXQ6ICdweCdcclxuICAgIH0sXHJcbiAgICBjb2xvcjogJyMzMzMzMzMnLFxyXG4gICAgaW5uZXJQYWRkaW5nOiB7XHJcbiAgICAgIHRvcDogNCxcclxuICAgICAgcmlnaHQ6IDQsXHJcbiAgICAgIGJvdHRvbTogNCxcclxuICAgICAgbGVmdDogNFxyXG4gICAgfSxcclxuICAgIHBhZGRpbmc6IHtcclxuICAgICAgdG9wOiAxMCxcclxuICAgICAgcmlnaHQ6IDI1LFxyXG4gICAgICBib3R0b206IDEwLFxyXG4gICAgICBsZWZ0OiAyNVxyXG4gICAgfVxyXG4gIH07XHJcblxyXG4gIC8vIGh0dHBzOi8vbWptbC5pby9kb2N1bWVudGF0aW9uLyNtam1sLXNvY2lhbFxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHVibGljIG5ldHdvcmtzOiBJU29jaWFsTmV0d29ya1tdID0gW10sXHJcbiAgICBvcHRpb25zPzogSVNvY2lhbEJsb2NrT3B0aW9ucyxcclxuICAgIHB1YmxpYyBzdGF0ZTogSUJsb2NrU3RhdGUgPSB7XHJcbiAgICAgIGRpc2FibGVkOiBmYWxzZSxcclxuICAgICAgbWVzc2FnZTogJydcclxuICAgIH1cclxuICApIHtcclxuICAgIHRoaXMub3B0aW9ucyA9IGRlZmF1bHRzRGVlcChvcHRpb25zLCB0aGlzLm9wdGlvbnMpO1xyXG4gIH1cclxufVxyXG5cclxuZXhwb3J0IHR5cGUgVEJsb2NrcyA9IFRleHRCbG9jayB8IEltYWdlQmxvY2sgfCBCdXR0b25CbG9jayB8IERpdmlkZXJCbG9jayB8IFNwYWNlckJsb2NrIHwgU29jaWFsQmxvY2s7XHJcbiJdfQ==