@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,9 @@
1
+ import { IStructure, IPBEmail, IGeneralOptions } from '../interfaces/interfaces';
2
+ export declare class Defaults {
3
+ structures: IStructure[];
4
+ general: IGeneralOptions;
5
+ constructor(structures?: IStructure[], general?: IGeneralOptions);
6
+ }
7
+ export declare class PBEmail extends Defaults {
8
+ constructor({ structures, general }?: IPBEmail);
9
+ }
@@ -0,0 +1,62 @@
1
+ import { IBlockState, IButtonBlockOptions, IDividerBlockOptions, IImageBLockOptions, ISocialBlockOptions, ISocialNetwork, ISpacerBlockOptions, ITextBlockOptions } from '../interfaces/interfaces';
2
+ export declare type TBlocksOptions = ITextBlockOptions | IImageBLockOptions | IButtonBlockOptions | IDividerBlockOptions | ISpacerBlockOptions | ISocialBlockOptions;
3
+ export declare abstract class AIPBlock {
4
+ readonly type: string;
5
+ readonly icon: string;
6
+ abstract readonly title: string;
7
+ options: TBlocksOptions;
8
+ state: IBlockState;
9
+ }
10
+ export declare class TextBlock implements AIPBlock {
11
+ innerText?: string;
12
+ state: IBlockState;
13
+ readonly type = "text";
14
+ readonly icon = "text_format";
15
+ options: ITextBlockOptions;
16
+ title: string;
17
+ constructor(innerText?: string, options?: ITextBlockOptions, state?: IBlockState);
18
+ }
19
+ export declare class ImageBlock implements AIPBlock {
20
+ src: string;
21
+ state: IBlockState;
22
+ readonly type = "image";
23
+ readonly icon = "image";
24
+ options: IImageBLockOptions;
25
+ title: string;
26
+ constructor(src?: string, options?: IImageBLockOptions, state?: IBlockState);
27
+ }
28
+ export declare class ButtonBlock implements AIPBlock {
29
+ innerText: string;
30
+ state: IBlockState;
31
+ readonly type = "button";
32
+ readonly icon = "radio_button_checked";
33
+ options: IButtonBlockOptions;
34
+ title: string;
35
+ constructor(innerText?: string, options?: IButtonBlockOptions, state?: IBlockState);
36
+ }
37
+ export declare class DividerBlock implements AIPBlock {
38
+ state: IBlockState;
39
+ readonly type = "divider";
40
+ readonly icon = "remove";
41
+ options: IDividerBlockOptions;
42
+ title: string;
43
+ constructor(options?: IDividerBlockOptions, state?: IBlockState);
44
+ }
45
+ export declare class SpacerBlock implements AIPBlock {
46
+ state: IBlockState;
47
+ readonly type = "spacer";
48
+ readonly icon = "vertical_align_center";
49
+ title: string;
50
+ options: ISpacerBlockOptions;
51
+ constructor(options?: ISpacerBlockOptions, state?: IBlockState);
52
+ }
53
+ export declare class SocialBlock implements AIPBlock {
54
+ networks: ISocialNetwork[];
55
+ state: IBlockState;
56
+ readonly type = "social";
57
+ readonly icon = "share";
58
+ title: string;
59
+ options: ISocialBlockOptions;
60
+ constructor(networks?: ISocialNetwork[], options?: ISocialBlockOptions, state?: IBlockState);
61
+ }
62
+ export declare type TBlocks = TextBlock | ImageBlock | ButtonBlock | DividerBlock | SpacerBlock | SocialBlock;
@@ -0,0 +1,11 @@
1
+ import { IStructure, IStructureColumnOptions, IStructureOptions, TStructureTypes } from '../interfaces/interfaces';
2
+ import { TBlocks } from './Elements';
3
+ export declare const defaultColumnsOptions: IStructureColumnOptions;
4
+ export declare class Structure implements IStructure {
5
+ readonly type: TStructureTypes;
6
+ elements: TBlocks[][];
7
+ columns: number;
8
+ readonly id: number;
9
+ options: IStructureOptions;
10
+ constructor(type?: TStructureTypes, elements?: TBlocks[][], options?: IStructureOptions);
11
+ }
@@ -0,0 +1,25 @@
1
+ import { DoCheck, OnDestroy, OnInit, ChangeDetectorRef } from '@angular/core';
2
+ import { TBlocks } from '../../classes/Elements';
3
+ import { PbUserInterfaceService } from '../../services/internals/user-interfaces/user-interface.service';
4
+ import { PbEmailObjectStoreService } from '../../services/internals/pb-email-object-store/pb-email-object-store.service';
5
+ import { PbUserMiddlewaresService } from '../../services/user-middleware-service/pb-middlewares.service';
6
+ export declare class BlockComponent implements DoCheck, OnDestroy, OnInit {
7
+ private pbMiddlewaresService;
8
+ private userInterfaceService;
9
+ private emailObjectStore;
10
+ private chRef;
11
+ block: TBlocks;
12
+ column: TBlocks[];
13
+ index: number;
14
+ isActive: boolean;
15
+ private readonly componentIsDestroyed$;
16
+ onHostClick(event: MouseEvent): void;
17
+ get isBlockActive(): boolean;
18
+ constructor(pbMiddlewaresService: PbUserMiddlewaresService, userInterfaceService: PbUserInterfaceService, emailObjectStore: PbEmailObjectStoreService, chRef: ChangeDetectorRef);
19
+ removeBlock(): void;
20
+ duplicateBlock(): void;
21
+ editBlock(): void;
22
+ ngOnInit(): void;
23
+ ngDoCheck(): void;
24
+ ngOnDestroy(): void;
25
+ }
@@ -0,0 +1,18 @@
1
+ import { MatSelectChange } from '@angular/material/select';
2
+ import { SocialBlock, TBlocksOptions } from '../../classes/Elements';
3
+ import { ISocialNetwork } from '../../interfaces/interfaces';
4
+ import { PbUserInterfaceService } from '../../services/internals/user-interfaces/user-interface.service';
5
+ import { PbEmailObjectStoreService } from '../../services/internals/pb-email-object-store/pb-email-object-store.service';
6
+ export declare class BlockSettingsComponent {
7
+ private internalService;
8
+ private emailObject;
9
+ private networks;
10
+ block$: import("rxjs").Observable<import("../../classes/Elements").TBlocks>;
11
+ constructor(internalService: PbUserInterfaceService, emailObject: PbEmailObjectStoreService, networks: string[]);
12
+ hasProperty(options: TBlocksOptions, property: string): boolean;
13
+ markForCheck(): void;
14
+ socialNetworks(block: SocialBlock): string[];
15
+ addSocialNetwork({ value, source }: MatSelectChange, block: SocialBlock): void;
16
+ removeSocialNetwork(network: ISocialNetwork, block: SocialBlock): void;
17
+ getSocialIcon(network: string): string;
18
+ }
@@ -0,0 +1,36 @@
1
+ import { DomSanitizer, SafeStyle } from '@angular/platform-browser';
2
+ import { IForRootConf, IStructure } from '../../interfaces/interfaces';
3
+ import { IAddStructureEvent, PbUserMiddlewaresService } from '../../services/user-middleware-service/pb-middlewares.service';
4
+ import { PbUserInterfaceService } from '../../services/internals/user-interfaces/user-interface.service';
5
+ import { PbEmailObjectStoreService } from '../../services/internals/pb-email-object-store/pb-email-object-store.service';
6
+ import { PbUserRestApiService } from '../../services/user-rest-api-service/user-rest-api.service';
7
+ import { PbStorageService } from '../../services/pb-storage/pb-storage.service';
8
+ export declare class BuilderContainerComponent {
9
+ private userInterfaceService;
10
+ private emailObjectStore;
11
+ private userRestApi;
12
+ private pbStorage;
13
+ private pbMiddlewaresService;
14
+ private sanitizer;
15
+ private userConfig;
16
+ showTemplateList: boolean;
17
+ getStructures$: import("rxjs").Observable<IStructure[]>;
18
+ activeMatProgress$: import("rxjs").ReplaySubject<boolean>;
19
+ constructor(userInterfaceService: PbUserInterfaceService, emailObjectStore: PbEmailObjectStoreService, userRestApi: PbUserRestApiService, pbStorage: PbStorageService, pbMiddlewaresService: PbUserMiddlewaresService, sanitizer: DomSanitizer, userConfig: IForRootConf);
20
+ onHostClick(): void;
21
+ trackBy(structure: IStructure): number;
22
+ disableStructureDrag$(structure: IStructure): import("rxjs").Observable<boolean>;
23
+ openTemplateDialog(ev: Event): import("rxjs").Subscription;
24
+ dropNewStructure(event: IAddStructureEvent): void;
25
+ getStructureStyles(structure: IStructure): {
26
+ margin: string;
27
+ borderRadius: string;
28
+ width: string;
29
+ backgroundRepeat: import("../../interfaces/interfaces").TBackgroundRepeat;
30
+ backgroundColor: string;
31
+ backgroundSize: string;
32
+ backgroundPosition: string;
33
+ gridTemplateColumns: string;
34
+ };
35
+ getBackgroundImage(structure: IStructure): SafeStyle;
36
+ }
@@ -0,0 +1,10 @@
1
+ import { MatDialogRef } from '@angular/material/dialog';
2
+ export declare class ConfirmDialogComponent {
3
+ dialogRef: MatDialogRef<ConfirmDialogComponent>;
4
+ data: {
5
+ message: string;
6
+ };
7
+ constructor(dialogRef: MatDialogRef<ConfirmDialogComponent>, data: {
8
+ message: string;
9
+ });
10
+ }
@@ -0,0 +1,6 @@
1
+ import { PbEmailObjectStoreService } from '../../services/internals/pb-email-object-store/pb-email-object-store.service';
2
+ export declare class GeneralSettingsComponent {
3
+ private pbEmailObject;
4
+ generalOptions$: import("rxjs").Observable<import("../../interfaces/interfaces").IGeneralOptions>;
5
+ constructor(pbEmailObject: PbEmailObjectStoreService);
6
+ }
@@ -0,0 +1,16 @@
1
+ import { OnInit, OnDestroy } from '@angular/core';
2
+ import { MatBottomSheetRef } from '@angular/material/bottom-sheet';
3
+ import { PbUserMiddlewaresService } from '../../services/user-middleware-service/pb-middlewares.service';
4
+ import { PBEmail } from '../../classes/DefaultEmail';
5
+ export declare class ImportDialogComponent implements OnInit, OnDestroy {
6
+ private pbMiddlewares;
7
+ private bottomSheetRef;
8
+ private uploadInput;
9
+ importing: boolean;
10
+ private fileReader;
11
+ constructor(pbMiddlewares: PbUserMiddlewaresService, bottomSheetRef: MatBottomSheetRef<ImportDialogComponent, PBEmail>);
12
+ openBrowserModal(event: MouseEvent): void;
13
+ startImporting(): void;
14
+ ngOnInit(): void;
15
+ ngOnDestroy(): void;
16
+ }
@@ -0,0 +1,18 @@
1
+ import { OnInit, OnDestroy } from '@angular/core';
2
+ import { MatButtonToggleChange } from '@angular/material/button-toggle';
3
+ import { DomSanitizer, SafeResourceUrl } from '@angular/platform-browser';
4
+ import { PbUserMiddlewaresService } from '../services/user-middleware-service/pb-middlewares.service';
5
+ export declare type TPreviewDevice = 'desktop' | 'smartphone' | 'tablet';
6
+ export declare class PreviewTemplateComponent implements OnInit, OnDestroy {
7
+ private middlewares;
8
+ private sanitizer;
9
+ template: string;
10
+ private src;
11
+ private device;
12
+ templateSrc: SafeResourceUrl;
13
+ constructor(middlewares: PbUserMiddlewaresService, sanitizer: DomSanitizer);
14
+ changeDevice(button: MatButtonToggleChange): import("rxjs").Subscription;
15
+ getFlexWidth(): string;
16
+ ngOnInit(): void;
17
+ ngOnDestroy(): void;
18
+ }
@@ -0,0 +1,43 @@
1
+ import { ChangeDetectorRef, DoCheck, OnDestroy, OnInit } from '@angular/core';
2
+ import { ResizeEvent } from 'angular-resizable-element';
3
+ import { Structure } from '../../classes/Structure';
4
+ import { TBlocks } from '../../classes/Elements';
5
+ import { IAddBlockEvent, PbUserMiddlewaresService } from '../../services/user-middleware-service/pb-middlewares.service';
6
+ import { PbUserInterfaceService } from '../../services/internals/user-interfaces/user-interface.service';
7
+ import { PbEmailObjectStoreService } from '../../services/internals/pb-email-object-store/pb-email-object-store.service';
8
+ export declare class StructureComponent implements DoCheck, OnInit, OnDestroy {
9
+ private userInterfaceService;
10
+ private emailObjectStore;
11
+ private chRef;
12
+ private pbMiddlewaresService;
13
+ structure: Structure;
14
+ index: number;
15
+ isActive: boolean;
16
+ cdkDropListConnectedTo$: import("rxjs").Observable<any[]>;
17
+ fr: number;
18
+ validate: any;
19
+ private readonly componentIsDestroyed$;
20
+ constructor(userInterfaceService: PbUserInterfaceService, emailObjectStore: PbEmailObjectStoreService, chRef: ChangeDetectorRef, pbMiddlewaresService: PbUserMiddlewaresService);
21
+ get isStructureActive(): boolean;
22
+ onHostClick(event: MouseEvent): void;
23
+ removeStructure(event: Event): void;
24
+ duplicateStructure(event: Event): void;
25
+ dropNewBlock(event: IAddBlockEvent, column: TBlocks[]): void;
26
+ disableBlockDrag$(block: TBlocks): import("rxjs").Observable<boolean>;
27
+ editStructure(structure?: Structure): void;
28
+ getResizeEdges(columnKey: number): {
29
+ right: boolean;
30
+ left: boolean;
31
+ };
32
+ createColumnId(columnKey: number): string;
33
+ getColumnStyles(columnKey: number): {
34
+ borderRadius: string;
35
+ padding: string;
36
+ backgroundColor: string;
37
+ placeSelf: string;
38
+ };
39
+ onResizeEnd({ rectangle }: ResizeEvent, key: number): void;
40
+ ngDoCheck(): void;
41
+ ngOnInit(): void;
42
+ ngOnDestroy(): void;
43
+ }
@@ -0,0 +1,9 @@
1
+ import { PbUserInterfaceService } from '../../services/internals/user-interfaces/user-interface.service';
2
+ import { PbEmailObjectStoreService } from '../../services/internals/pb-email-object-store/pb-email-object-store.service';
3
+ export declare class StructureSettingsComponent {
4
+ private pbInternalService;
5
+ private emailObject;
6
+ currentStructure$: import("rxjs").Observable<import("../../interfaces/interfaces").IStructure>;
7
+ constructor(pbInternalService: PbUserInterfaceService, emailObject: PbEmailObjectStoreService);
8
+ markForCheck(): void;
9
+ }
@@ -0,0 +1,15 @@
1
+ import { MatDialogRef } from '@angular/material/dialog';
2
+ import { BehaviorSubject } from 'rxjs';
3
+ import { IUserTemplateCategory, IUserTemplate } from '../../interfaces/interfaces';
4
+ export declare class TemplateListDialogComponent {
5
+ private matDialogRef;
6
+ templateList: IUserTemplateCategory[];
7
+ readonly chooseCategory$: BehaviorSubject<string>;
8
+ readonly currentCategoryTemplates$: import("rxjs").Observable<any[]>;
9
+ csdTemplate: IUserTemplate;
10
+ constructor(matDialogRef: MatDialogRef<TemplateListDialogComponent>, templateList: IUserTemplateCategory[]);
11
+ chooseTemplate(template: IUserTemplate): void;
12
+ chageCategory(category: string): void;
13
+ getTemplatesList(): IUserTemplateCategory[];
14
+ startBuilding(): void;
15
+ }
@@ -0,0 +1,13 @@
1
+ import { ComponentFactoryResolver, ViewContainerRef } from '@angular/core';
2
+ import { TBlocks } from '../classes/Elements';
3
+ /**
4
+ * @internal
5
+ *
6
+ * Soon it must be optimized, and load all components lazily.
7
+ */
8
+ export declare class DynamicComponentDirective {
9
+ private cResolver;
10
+ private viewContainerRef;
11
+ constructor(cResolver: ComponentFactoryResolver, viewContainerRef: ViewContainerRef);
12
+ set pbDynamicComponent(block: TBlocks);
13
+ }
@@ -0,0 +1,8 @@
1
+ import { OnInit } from '@angular/core';
2
+ export declare abstract class AbstractBlock<AbstractEntityBlock> implements OnInit {
3
+ block: AbstractEntityBlock;
4
+ private portal;
5
+ ngOnInit(): void;
6
+ }
7
+ export declare abstract class AbstractEntityBlock {
8
+ }
@@ -0,0 +1,18 @@
1
+ import { ButtonBlock } from '../../classes/Elements';
2
+ import { AbstractBlock } from '../abstract-block';
3
+ export declare class ButtonComponent extends AbstractBlock<ButtonBlock> {
4
+ getButtonStyles(): {
5
+ lineHeight: string;
6
+ borderRadius: string;
7
+ fontFamily: string;
8
+ fontSize: string;
9
+ fontStyle: string;
10
+ fontWeight: import("../../interfaces/interfaces").TFontWeight;
11
+ color: string;
12
+ width: string;
13
+ backgroundColor: string;
14
+ };
15
+ getParentStyles(): {
16
+ justifyContent: string;
17
+ };
18
+ }
@@ -0,0 +1,10 @@
1
+ import { OnInit } from '@angular/core';
2
+ import { DividerBlock } from '../../classes/Elements';
3
+ import { AbstractBlock } from '../abstract-block';
4
+ export declare class DividerComponent extends AbstractBlock<DividerBlock> implements OnInit {
5
+ getDividerStyles(): {
6
+ [x: string]: string;
7
+ borderRadius: string;
8
+ };
9
+ ngOnInit(): void;
10
+ }
@@ -0,0 +1,19 @@
1
+ import { ChangeDetectorRef } from '@angular/core';
2
+ import { ImageBlock } from '../../classes/Elements';
3
+ import { PbUserImageUploaderService } from '../../services/user-image-uploader-service/user-image-uploader.service';
4
+ import { PbEmailBuilderService } from '../../pb-email-builder.service';
5
+ import { AbstractBlock } from '../abstract-block';
6
+ export declare class ImageComponent extends AbstractBlock<ImageBlock> {
7
+ private imageUploader;
8
+ private chRef;
9
+ ngb: PbEmailBuilderService;
10
+ get align(): import("../../interfaces/interfaces").TAlign;
11
+ get src(): string;
12
+ constructor(imageUploader: PbUserImageUploaderService, chRef: ChangeDetectorRef, ngb: PbEmailBuilderService);
13
+ uploadImage(): Promise<void>;
14
+ getImageStyles(): {
15
+ borderRadius: string;
16
+ width: string;
17
+ height: string;
18
+ };
19
+ }
@@ -0,0 +1,21 @@
1
+ import { SocialBlock } from '../../classes/Elements';
2
+ import { AbstractBlock } from '../abstract-block';
3
+ export declare class SocialComponent extends AbstractBlock<SocialBlock> {
4
+ getParentStyles(): {
5
+ fontFamily: string;
6
+ fontSize: string;
7
+ fontStyle: string;
8
+ fontWeight: import("../../interfaces/interfaces").TFontWeight;
9
+ lineHeight: string;
10
+ color: string;
11
+ };
12
+ getLabelStyles(): {
13
+ lineHeight: number;
14
+ };
15
+ getSocialListStyles(): {
16
+ display: string;
17
+ placeContent: string;
18
+ };
19
+ getSocialListClasses(): string;
20
+ getSocialNetworkIcon(network: string): string;
21
+ }
@@ -0,0 +1,5 @@
1
+ import { SpacerBlock } from '../../classes/Elements';
2
+ import { AbstractBlock } from '../abstract-block';
3
+ export declare class SpacerComponent extends AbstractBlock<SpacerBlock> {
4
+ get height(): string;
5
+ }
@@ -0,0 +1,52 @@
1
+ import { OnDestroy, OnInit } from '@angular/core';
2
+ import { TextBlock } from '../../classes/Elements';
3
+ import { PbUserInterfaceService } from '../../services/internals/user-interfaces/user-interface.service';
4
+ import { PbEmailObjectStoreService } from '../../services/internals/pb-email-object-store/pb-email-object-store.service';
5
+ import { PbUserRestApiService } from '../../services/user-rest-api-service/user-rest-api.service';
6
+ import { AbstractBlock } from '../abstract-block';
7
+ export declare class TextElementComponent extends AbstractBlock<TextBlock> implements OnInit, OnDestroy {
8
+ private userRestApi;
9
+ private emailObject;
10
+ private internalService;
11
+ setAsReadOnly$: import("rxjs").Observable<boolean>;
12
+ staticQuillConfig: {
13
+ toolbar: {
14
+ container: (({
15
+ header: (number | boolean)[];
16
+ size?: undefined;
17
+ } | {
18
+ size: (string | boolean)[];
19
+ header?: undefined;
20
+ })[] | (string | {
21
+ align: any[];
22
+ })[] | {
23
+ list: string;
24
+ }[] | ({
25
+ color: any[];
26
+ background?: undefined;
27
+ } | {
28
+ background: any[];
29
+ color?: undefined;
30
+ })[])[];
31
+ handlers: {
32
+ placeholder(selector: string): void;
33
+ };
34
+ };
35
+ };
36
+ readonly quillInit$: import("rxjs").Observable<boolean>;
37
+ private textChanged$;
38
+ private componentDestroyed$;
39
+ constructor(userRestApi: PbUserRestApiService, emailObject: PbEmailObjectStoreService, internalService: PbUserInterfaceService);
40
+ getTextStyles(): {
41
+ fontFamily: string;
42
+ fontSize: string;
43
+ fontStyle: string;
44
+ fontWeight: import("../../interfaces/interfaces").TFontWeight;
45
+ lineHeight: string;
46
+ color: string;
47
+ 'word-break': string;
48
+ };
49
+ contentChanged(): void;
50
+ ngOnInit(): void;
51
+ ngOnDestroy(): void;
52
+ }
@@ -0,0 +1,17 @@
1
+ import { TAlign, TVerticalAlign } from '../interfaces/interfaces';
2
+ import { PbEmailObjectStoreService } from '../services/internals/pb-email-object-store/pb-email-object-store.service';
3
+ export declare class AlignComponent {
4
+ private emailObject;
5
+ model: {
6
+ align?: TAlign;
7
+ verticalAlign?: TVerticalAlign;
8
+ };
9
+ mode: 'vertical' | 'horizontal';
10
+ disabled: boolean;
11
+ private labels;
12
+ constructor(emailObject: PbEmailObjectStoreService);
13
+ get currentModel(): TAlign | TVerticalAlign;
14
+ set currentModel(value: TAlign | TVerticalAlign);
15
+ getLabel(key: TAlign | TVerticalAlign): string;
16
+ getPositions(): TAlign[] | TVerticalAlign[];
17
+ }
@@ -0,0 +1,8 @@
1
+ import { IBackground, TBackgroundRepeat } from '../interfaces/interfaces';
2
+ export declare class BackRepatComponent {
3
+ model: IBackground;
4
+ disabled: boolean;
5
+ private repeatLabels;
6
+ getRepeats(): TBackgroundRepeat[];
7
+ getRepeatLabel(repeat: TBackgroundRepeat): string;
8
+ }
@@ -0,0 +1,13 @@
1
+ import { IBorder } from '../interfaces/interfaces';
2
+ import { PbEmailObjectStoreService } from '../services/internals/pb-email-object-store/pb-email-object-store.service';
3
+ export declare class BorderComponent {
4
+ private emailObject;
5
+ border: IBorder;
6
+ constructor(emailObject: PbEmailObjectStoreService);
7
+ private _styleLabels;
8
+ get styleLabels(): IBorder['style'][];
9
+ getStyleLabel(style: IBorder['style']): string;
10
+ markForCheck(): void;
11
+ isEven(): boolean;
12
+ hasOwnProperty(property: string): boolean;
13
+ }
@@ -0,0 +1,26 @@
1
+ import { OnInit } from '@angular/core';
2
+ import { ColorEvent } from 'ngx-color';
3
+ import { PbEmailObjectStoreService } from '../services/internals/pb-email-object-store/pb-email-object-store.service';
4
+ import { TBlocksOptions } from '../classes/Elements';
5
+ export declare class ColorComponent implements OnInit {
6
+ private emailObject;
7
+ options: TBlocksOptions & {
8
+ color?: string;
9
+ backgroundColor?: string;
10
+ };
11
+ showTransparent: boolean;
12
+ disabled: boolean;
13
+ key: 'backgroundColor' | 'color';
14
+ transparent: boolean;
15
+ showColorPicker: boolean;
16
+ private oldValue;
17
+ constructor(emailObject: PbEmailObjectStoreService);
18
+ get currentColorModel(): string;
19
+ set currentColorModel(hex: string);
20
+ get currentColor(): string;
21
+ set currentColor(hex: string);
22
+ onHostMouseLeave(): void;
23
+ changeColor(event: ColorEvent): void;
24
+ makeTransparentColor(): void;
25
+ ngOnInit(): void;
26
+ }
@@ -0,0 +1,13 @@
1
+ import { TDirection } from '../interfaces/interfaces';
2
+ import { PbEmailObjectStoreService } from '../services/internals/pb-email-object-store/pb-email-object-store.service';
3
+ export declare class DirectionComponent {
4
+ private emailObject;
5
+ model: {
6
+ direction: TDirection;
7
+ };
8
+ private dirLabels;
9
+ constructor(emailObject: PbEmailObjectStoreService);
10
+ markForCheck(): void;
11
+ getDirections(): TDirection[];
12
+ getDirectionLabel(dir: TDirection): string;
13
+ }
@@ -0,0 +1,17 @@
1
+ import { IFont } from '../interfaces/interfaces';
2
+ import { PbEmailObjectStoreService } from '../services/internals/pb-email-object-store/pb-email-object-store.service';
3
+ export declare class FontStylesComponent {
4
+ private pbEmailObject;
5
+ fallbackFonts: string[];
6
+ font: IFont;
7
+ private fontsMap;
8
+ private stylesMap;
9
+ constructor(pbEmailObject: PbEmailObjectStoreService, googleFonts: string[], fallbackFonts: string[]);
10
+ get fontWeightList(): number[];
11
+ get fontFamilyList(): string[];
12
+ get styles(): IFont['style'][];
13
+ markForCheck(): void;
14
+ isGoogleFont(): boolean;
15
+ getStyleLabel(style: IFont['style']): string;
16
+ hasProperty(property: string): boolean;
17
+ }
@@ -0,0 +1,7 @@
1
+ import { PbEmailObjectStoreService } from '../services/internals/pb-email-object-store/pb-email-object-store.service';
2
+ export declare class GapsComponent {
3
+ private emailObject;
4
+ gaps: [number, number];
5
+ constructor(emailObject: PbEmailObjectStoreService);
6
+ markForCheck(): void;
7
+ }
@@ -0,0 +1,12 @@
1
+ import { ILineHeight, TLineHeight } from '../interfaces/interfaces';
2
+ import { PbEmailObjectStoreService } from '../services/internals/pb-email-object-store/pb-email-object-store.service';
3
+ export declare class LineHeightComponent {
4
+ private emailObject;
5
+ lineHeight: ILineHeight;
6
+ label: string;
7
+ units: TLineHeight[];
8
+ private unitsLabels;
9
+ constructor(emailObject: PbEmailObjectStoreService);
10
+ markForCheck(): void;
11
+ getUnitLabel(unit: TLineHeight): string;
12
+ }
@@ -0,0 +1,11 @@
1
+ import { ILink, TLinkTarget } from '../interfaces/interfaces';
2
+ import { PbEmailObjectStoreService } from '../services/internals/pb-email-object-store/pb-email-object-store.service';
3
+ export declare class LinkComponent {
4
+ private emailObject;
5
+ link: ILink;
6
+ private targetLabels;
7
+ constructor(emailObject: PbEmailObjectStoreService);
8
+ markForCheck(): void;
9
+ getTargets(): TLinkTarget[];
10
+ getTargetLabel(target: string): string;
11
+ }
@@ -0,0 +1,8 @@
1
+ import { IMargin } from '../interfaces/interfaces';
2
+ import { PbEmailObjectStoreService } from '../services/internals/pb-email-object-store/pb-email-object-store.service';
3
+ export declare class MarginComponent {
4
+ private emailObject;
5
+ margin: IMargin;
6
+ constructor(emailObject: PbEmailObjectStoreService);
7
+ markForCheck(): void;
8
+ }
@@ -0,0 +1,8 @@
1
+ import { IPadding } from '../interfaces/interfaces';
2
+ import { PbEmailObjectStoreService } from '../services/internals/pb-email-object-store/pb-email-object-store.service';
3
+ export declare class PaddingComponent {
4
+ private emailObject;
5
+ padding: IPadding;
6
+ constructor(emailObject: PbEmailObjectStoreService);
7
+ markForCheck(): void;
8
+ }
@@ -0,0 +1,19 @@
1
+ import { OnInit } from '@angular/core';
2
+ import { Subject } from 'rxjs';
3
+ import { PbUserImageUploaderService } from '../services/user-image-uploader-service/user-image-uploader.service';
4
+ import { ImageBlock } from '../classes/Elements';
5
+ import { PbEmailObjectStoreService } from '../services/internals/pb-email-object-store/pb-email-object-store.service';
6
+ import { IBackground } from '../interfaces/interfaces';
7
+ export declare class ImageUploadComponent implements OnInit {
8
+ private imageUpload;
9
+ private emailObject;
10
+ block: ImageBlock | IBackground;
11
+ key: string;
12
+ browsing: Subject<unknown>;
13
+ constructor(imageUpload: PbUserImageUploaderService, emailObject: PbEmailObjectStoreService);
14
+ get source(): string;
15
+ set source(value: string);
16
+ markForCheck(): void;
17
+ browse(): Promise<void>;
18
+ ngOnInit(): void;
19
+ }