asksuite-citrus 1.11.2 → 1.12.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 (52) hide show
  1. package/esm2022/lib/asksuite-citrus.module.mjs +23 -11
  2. package/esm2022/lib/classes/bubble-toolbox.mjs +49 -0
  3. package/esm2022/lib/classes/richtext-wrapper.mjs +12 -5
  4. package/esm2022/lib/classes/toolbox.mjs +5 -8
  5. package/esm2022/lib/classes/topbar-toolbox.mjs +37 -0
  6. package/esm2022/lib/components/autocomplete/autocomplete.component.mjs +2 -2
  7. package/esm2022/lib/components/avatar/avatar.component.mjs +2 -2
  8. package/esm2022/lib/components/box/box.component.mjs +2 -2
  9. package/esm2022/lib/components/button/button.component.mjs +2 -2
  10. package/esm2022/lib/components/character-counter/character-counter.component.mjs +2 -2
  11. package/esm2022/lib/components/checkbox/checkbox.component.mjs +2 -2
  12. package/esm2022/lib/components/chips/chips.component.mjs +2 -2
  13. package/esm2022/lib/components/date-picker/date-picker-calendar/date-picker-calendar.component.mjs +2 -2
  14. package/esm2022/lib/components/date-picker/date-picker.component.mjs +2 -2
  15. package/esm2022/lib/components/dropdown-container/dropdown-container.component.mjs +2 -2
  16. package/esm2022/lib/components/input/input.component.mjs +2 -2
  17. package/esm2022/lib/components/loading-bar/loading-bar.component.mjs +17 -0
  18. package/esm2022/lib/components/modal/confirmation-modal/confirmation-modal.component.mjs +32 -0
  19. package/esm2022/lib/components/modal/modal.component.mjs +3 -3
  20. package/esm2022/lib/components/pagination/pagination.component.mjs +2 -2
  21. package/esm2022/lib/components/phone-ddi/phone-ddi.component.mjs +2 -2
  22. package/esm2022/lib/components/richtext-toolbox/richtext-toolbox.component.mjs +82 -0
  23. package/esm2022/lib/components/richtext-url-prompt/richtext-url-prompt.component.mjs +3 -3
  24. package/esm2022/lib/components/select/select.component.mjs +2 -2
  25. package/esm2022/lib/components/table/table.component.mjs +2 -2
  26. package/esm2022/lib/components/toast/toast.component.mjs +2 -2
  27. package/esm2022/lib/directives/richtext-toolbox/richtext-toolbox.directive.mjs +12 -8
  28. package/esm2022/lib/services/modal/modal.service.mjs +7 -1
  29. package/esm2022/public-api.mjs +2 -1
  30. package/esm2022/shared/validators/phone-mask.validator.mjs +1 -1
  31. package/fesm2022/asksuite-citrus.mjs +213 -161
  32. package/fesm2022/asksuite-citrus.mjs.map +1 -1
  33. package/lib/asksuite-citrus.module.d.ts +12 -9
  34. package/lib/classes/{toolbox-bubble.d.ts → bubble-toolbox.d.ts} +6 -2
  35. package/lib/classes/richtext-wrapper.d.ts +8 -3
  36. package/lib/classes/toolbox.d.ts +3 -3
  37. package/lib/classes/{toolbox-topbar.d.ts → topbar-toolbox.d.ts} +5 -1
  38. package/lib/components/loading-bar/loading-bar.component.d.ts +6 -0
  39. package/lib/components/modal/confirmation-modal/confirmation-modal.component.d.ts +18 -0
  40. package/lib/components/{richtext-toolbox-core/richtext-toolbox-core.component.d.ts → richtext-toolbox/richtext-toolbox.component.d.ts} +5 -5
  41. package/lib/directives/richtext-toolbox/richtext-toolbox.directive.d.ts +1 -0
  42. package/lib/services/modal/modal.service.d.ts +2 -0
  43. package/package.json +1 -1
  44. package/public-api.d.ts +1 -0
  45. package/shared/validators/phone-mask.validator.d.ts +2 -4
  46. package/styles/material.scss +14 -0
  47. package/styles/styles.scss +5 -0
  48. package/esm2022/lib/classes/toolbox-bubble.mjs +0 -46
  49. package/esm2022/lib/classes/toolbox-topbar.mjs +0 -34
  50. package/esm2022/lib/components/richtext-toolbox-core/richtext-toolbox-core.component.mjs +0 -82
  51. package/esm2022/lib/services/quill-builder.service.mjs +0 -18
  52. package/lib/services/quill-builder.service.d.ts +0 -8
@@ -34,21 +34,24 @@ import * as i31 from "./components/pagination/pagination.component";
34
34
  import * as i32 from "./pipes/paginate/paginate.pipe";
35
35
  import * as i33 from "./directives/richtext-toolbox/richtext-toolbox.directive";
36
36
  import * as i34 from "./components/richtext-url-prompt/richtext-url-prompt.component";
37
- import * as i35 from "./components/richtext-toolbox-core/richtext-toolbox-core.component";
37
+ import * as i35 from "./components/richtext-toolbox/richtext-toolbox.component";
38
38
  import * as i36 from "./directives/button/ask-text-button.directive";
39
39
  import * as i37 from "./pipes/force-break-line/force-break-line.pipe";
40
- import * as i38 from "@angular/common";
41
- import * as i39 from "@angular/forms";
42
- import * as i40 from "@angular/cdk/overlay";
43
- import * as i41 from "@ngx-translate/core";
44
- import * as i42 from "ngx-skeleton-loader";
45
- import * as i43 from "@angular/material/tooltip";
46
- import * as i44 from "ngx-mask";
40
+ import * as i38 from "./components/modal/confirmation-modal/confirmation-modal.component";
41
+ import * as i39 from "./components/loading-bar/loading-bar.component";
42
+ import * as i40 from "@angular/common";
43
+ import * as i41 from "@angular/forms";
44
+ import * as i42 from "@angular/cdk/overlay";
45
+ import * as i43 from "@ngx-translate/core";
46
+ import * as i44 from "ngx-skeleton-loader";
47
+ import * as i45 from "@angular/material/tooltip";
48
+ import * as i46 from "ngx-mask";
49
+ import * as i47 from "@angular/material/progress-bar";
47
50
  export declare class AsksuiteCitrusModule {
48
51
  static forRoot(params?: {
49
52
  flagUrl?: string;
50
53
  }): ModuleWithProviders<AsksuiteCitrusModule>;
51
54
  static ɵfac: i0.ɵɵFactoryDeclaration<AsksuiteCitrusModule, never>;
52
- static ɵmod: i0.ɵɵNgModuleDeclaration<AsksuiteCitrusModule, [typeof i1.ButtonComponent, typeof i2.InputComponent, typeof i3.SelectComponent, typeof i4.BoxComponent, typeof i5.AvatarComponent, typeof i6.DropdownContainerComponent, typeof i7.AskDropdownDirective, typeof i8.AutocompleteComponent, typeof i9.PhoneDdiComponent, typeof i10.ChipsComponent, typeof i11.CheckboxComponent, typeof i12.DatePickerComponent, typeof i13.DatePickerCalendarComponent, typeof i14.SkeletonComponent, typeof i15.SpinnerComponent, typeof i16.SpinnerDirective, typeof i17.BadgeDirective, typeof i18.AutofocusDirective, typeof i19.ScrollDirective, typeof i20.AskTooltipDirective, typeof i21.ToastComponent, typeof i22.AskButtonDirective, typeof i23.ModalComponent, typeof i24.ModalBodyDirective, typeof i25.ModalHeaderDirective, typeof i26.ModalFooterDirective, typeof i27.CharacterCounterComponent, typeof i28.AccordionComponent, typeof i29.ExtendablePanelComponent, typeof i30.TableComponent, typeof i31.PaginationComponent, typeof i32.PaginatePipe, typeof i33.RichtextToolboxDirective, typeof i34.RichtextUrlPromptComponent, typeof i35.RichtextToolboxCoreComponent, typeof i36.AskTextButtonDirective, typeof i37.ForceBreakLinePipe], [typeof i38.CommonModule, typeof i39.FormsModule, typeof i39.ReactiveFormsModule, typeof i40.CdkOverlayOrigin, typeof i40.CdkConnectedOverlay, typeof i40.OverlayModule, typeof i41.TranslateModule, typeof i42.NgxSkeletonLoaderModule, typeof i43.MatTooltipModule, typeof i44.NgxMaskDirective, typeof i44.NgxMaskPipe], [typeof i1.ButtonComponent, typeof i2.InputComponent, typeof i3.SelectComponent, typeof i4.BoxComponent, typeof i5.AvatarComponent, typeof i6.DropdownContainerComponent, typeof i7.AskDropdownDirective, typeof i8.AutocompleteComponent, typeof i9.PhoneDdiComponent, typeof i10.ChipsComponent, typeof i11.CheckboxComponent, typeof i12.DatePickerComponent, typeof i13.DatePickerCalendarComponent, typeof i14.SkeletonComponent, typeof i16.SpinnerDirective, typeof i17.BadgeDirective, typeof i18.AutofocusDirective, typeof i19.ScrollDirective, typeof i20.AskTooltipDirective, typeof i22.AskButtonDirective, typeof i36.AskTextButtonDirective, typeof i24.ModalBodyDirective, typeof i25.ModalHeaderDirective, typeof i26.ModalFooterDirective, typeof i27.CharacterCounterComponent, typeof i28.AccordionComponent, typeof i29.ExtendablePanelComponent, typeof i30.TableComponent, typeof i31.PaginationComponent, typeof i32.PaginatePipe, typeof i33.RichtextToolboxDirective, typeof i37.ForceBreakLinePipe]>;
55
+ static ɵmod: i0.ɵɵNgModuleDeclaration<AsksuiteCitrusModule, [typeof i1.ButtonComponent, typeof i2.InputComponent, typeof i3.SelectComponent, typeof i4.BoxComponent, typeof i5.AvatarComponent, typeof i6.DropdownContainerComponent, typeof i7.AskDropdownDirective, typeof i8.AutocompleteComponent, typeof i9.PhoneDdiComponent, typeof i10.ChipsComponent, typeof i11.CheckboxComponent, typeof i12.DatePickerComponent, typeof i13.DatePickerCalendarComponent, typeof i14.SkeletonComponent, typeof i15.SpinnerComponent, typeof i16.SpinnerDirective, typeof i17.BadgeDirective, typeof i18.AutofocusDirective, typeof i19.ScrollDirective, typeof i20.AskTooltipDirective, typeof i21.ToastComponent, typeof i22.AskButtonDirective, typeof i23.ModalComponent, typeof i24.ModalBodyDirective, typeof i25.ModalHeaderDirective, typeof i26.ModalFooterDirective, typeof i27.CharacterCounterComponent, typeof i28.AccordionComponent, typeof i29.ExtendablePanelComponent, typeof i30.TableComponent, typeof i31.PaginationComponent, typeof i32.PaginatePipe, typeof i33.RichtextToolboxDirective, typeof i34.RichtextUrlPromptComponent, typeof i35.RichtextToolboxComponent, typeof i36.AskTextButtonDirective, typeof i37.ForceBreakLinePipe, typeof i38.ConfirmationModalComponent, typeof i39.LoadingBarComponent], [typeof i40.CommonModule, typeof i41.FormsModule, typeof i41.ReactiveFormsModule, typeof i42.CdkOverlayOrigin, typeof i42.CdkConnectedOverlay, typeof i42.OverlayModule, typeof i43.TranslateModule, typeof i44.NgxSkeletonLoaderModule, typeof i45.MatTooltipModule, typeof i46.NgxMaskDirective, typeof i46.NgxMaskPipe, typeof i47.MatProgressBarModule], [typeof i1.ButtonComponent, typeof i2.InputComponent, typeof i3.SelectComponent, typeof i4.BoxComponent, typeof i5.AvatarComponent, typeof i6.DropdownContainerComponent, typeof i7.AskDropdownDirective, typeof i8.AutocompleteComponent, typeof i9.PhoneDdiComponent, typeof i10.ChipsComponent, typeof i11.CheckboxComponent, typeof i12.DatePickerComponent, typeof i13.DatePickerCalendarComponent, typeof i14.SkeletonComponent, typeof i16.SpinnerDirective, typeof i17.BadgeDirective, typeof i18.AutofocusDirective, typeof i19.ScrollDirective, typeof i20.AskTooltipDirective, typeof i22.AskButtonDirective, typeof i36.AskTextButtonDirective, typeof i24.ModalBodyDirective, typeof i25.ModalHeaderDirective, typeof i26.ModalFooterDirective, typeof i27.CharacterCounterComponent, typeof i28.AccordionComponent, typeof i29.ExtendablePanelComponent, typeof i30.TableComponent, typeof i31.PaginationComponent, typeof i32.PaginatePipe, typeof i33.RichtextToolboxDirective, typeof i37.ForceBreakLinePipe, typeof i39.LoadingBarComponent]>;
53
56
  static ɵinj: i0.ɵɵInjectorDeclaration<AsksuiteCitrusModule>;
54
57
  }
@@ -1,12 +1,16 @@
1
1
  import { Injector } from "@angular/core";
2
2
  import { Toolbox } from "./toolbox";
3
3
  import { ToolsState } from "../interfaces/richtext-toolbox.interface";
4
- export declare class BubbleStrategy extends Toolbox {
4
+ declare class BubbleToolbox extends Toolbox {
5
5
  private clickListener?;
6
6
  constructor(injector: Injector);
7
7
  private move;
8
8
  private listenOutsideClicks;
9
9
  onToolsChanged(state: ToolsState): void;
10
10
  displayComponent(): void;
11
- destroyAll(): void;
11
+ destroyComponent(): void;
12
12
  }
13
+ export declare const BubbleToolboxProxy: {
14
+ BubbleToolbox: typeof BubbleToolbox;
15
+ };
16
+ export {};
@@ -1,10 +1,9 @@
1
1
  import { ChangeDetectorRef, ElementRef, NgZone } from '@angular/core';
2
+ import Quill from 'quill';
2
3
  import { RichTextFunctions, ToolKeys, ToolsState } from '../interfaces/richtext-toolbox.interface';
3
- import { QuillBuilderService } from '../services/quill-builder.service';
4
4
  export declare class RichtextWrapper implements RichTextFunctions {
5
5
  private ngZone;
6
6
  private cd;
7
- private quillBuilder;
8
7
  private elementRef;
9
8
  private quill;
10
9
  private stateSub;
@@ -22,7 +21,7 @@ export declare class RichtextWrapper implements RichTextFunctions {
22
21
  get listenOnTouched$(): import("rxjs").Observable<boolean>;
23
22
  get listenEscape$(): import("rxjs").Observable<boolean>;
24
23
  get listenEnter$(): import("rxjs").Observable<boolean>;
25
- constructor(ngZone: NgZone, cd: ChangeDetectorRef, quillBuilder: QuillBuilderService, elementRef: ElementRef<HTMLElement>);
24
+ constructor(ngZone: NgZone, cd: ChangeDetectorRef, elementRef: ElementRef<HTMLElement>);
26
25
  setItalic(): void;
27
26
  setBold(): void;
28
27
  setUnderline(): void;
@@ -50,3 +49,9 @@ export declare class RichtextWrapper implements RichTextFunctions {
50
49
  private listenEditorChanges;
51
50
  private update;
52
51
  }
52
+ export declare const QuillProxy: {
53
+ Quill: typeof Quill;
54
+ };
55
+ export declare const RichtextWrapperProxy: {
56
+ RichtextWrapper: typeof RichtextWrapper;
57
+ };
@@ -1,7 +1,7 @@
1
1
  import { ChangeDetectorRef, ComponentRef, ElementRef, Injector, NgZone, Renderer2, ViewContainerRef } from '@angular/core';
2
2
  import { RichtextWrapper } from './richtext-wrapper';
3
3
  import { ToolbarItem, ToolboxInput, ToolsState } from '../interfaces/richtext-toolbox.interface';
4
- import { RichtextToolboxCoreComponent } from '../components/richtext-toolbox-core/richtext-toolbox-core.component';
4
+ import { RichtextToolboxComponent } from '../components/richtext-toolbox/richtext-toolbox.component';
5
5
  export declare abstract class Toolbox {
6
6
  readonly richtextWrapper: RichtextWrapper;
7
7
  protected hostEl: ElementRef<HTMLElement>;
@@ -9,8 +9,8 @@ export declare abstract class Toolbox {
9
9
  protected renderer2: Renderer2;
10
10
  protected ngZone: NgZone;
11
11
  protected cd: ChangeDetectorRef;
12
- protected componentRef?: ComponentRef<RichtextToolboxCoreComponent>;
13
- protected get component(): RichtextToolboxCoreComponent | undefined;
12
+ protected componentRef?: ComponentRef<RichtextToolboxComponent>;
13
+ protected get component(): RichtextToolboxComponent | undefined;
14
14
  protected get componentEl(): HTMLElement | undefined;
15
15
  private parentEl?;
16
16
  private toolboxInput?;
@@ -1,8 +1,12 @@
1
1
  import { Injector } from "@angular/core";
2
2
  import { Toolbox } from "./toolbox";
3
3
  import { ToolbarItem, ToolsState } from "../interfaces/richtext-toolbox.interface";
4
- export declare class TopbarStrategy extends Toolbox {
4
+ declare class TopbarToolbox extends Toolbox {
5
5
  constructor(injector: Injector);
6
6
  displayComponent(): void;
7
7
  prepareUpdatedTools(toolState: ToolsState): ToolbarItem[];
8
8
  }
9
+ export declare const TopbarToolboxProxy: {
10
+ TopbarToolbox: typeof TopbarToolbox;
11
+ };
12
+ export {};
@@ -0,0 +1,6 @@
1
+ import * as i0 from "@angular/core";
2
+ export declare class LoadingBarComponent {
3
+ mode: 'indeterminate' | 'determinate';
4
+ static ɵfac: i0.ɵɵFactoryDeclaration<LoadingBarComponent, never>;
5
+ static ɵcmp: i0.ɵɵComponentDeclaration<LoadingBarComponent, "ask-loading-bar", never, { "mode": { "alias": "mode"; "required": false; }; }, {}, never, never, false, never>;
6
+ }
@@ -0,0 +1,18 @@
1
+ import { ModalRef } from "../../../services/modal";
2
+ import * as i0 from "@angular/core";
3
+ export declare class ConfirmationModalComponent {
4
+ protected modalRef: ModalRef;
5
+ protected title: string;
6
+ protected text: string;
7
+ protected confirmButtonText: string | undefined;
8
+ protected cancelButtonText: string | undefined;
9
+ constructor(modalRef: ModalRef, data: AskModalConfirmData);
10
+ static ɵfac: i0.ɵɵFactoryDeclaration<ConfirmationModalComponent, never>;
11
+ static ɵcmp: i0.ɵɵComponentDeclaration<ConfirmationModalComponent, "lib-confirmation-modal", never, {}, {}, never, never, false, never>;
12
+ }
13
+ export interface AskModalConfirmData {
14
+ title: string;
15
+ text: string;
16
+ confirmButtonText?: string;
17
+ cancelButtonText?: string;
18
+ }
@@ -2,7 +2,7 @@ import { EventEmitter, QueryList, SimpleChanges } from '@angular/core';
2
2
  import { ToolbarItem } from '../../interfaces/richtext-toolbox.interface';
3
3
  import { AskDropdownDirective } from '../../directives';
4
4
  import * as i0 from "@angular/core";
5
- export declare class RichtextToolboxCoreComponent {
5
+ export declare class RichtextToolboxComponent {
6
6
  dropdowns?: QueryList<AskDropdownDirective>;
7
7
  close: EventEmitter<void>;
8
8
  tool: EventEmitter<ToolbarItem>;
@@ -13,13 +13,13 @@ export declare class RichtextToolboxCoreComponent {
13
13
  private _toolbarItems;
14
14
  private urlIdx;
15
15
  protected isUrlMode: boolean;
16
- get linkTool(): ToolbarItem | undefined;
17
- get urlDropdownRef(): AskDropdownDirective | undefined;
16
+ protected get linkTool(): ToolbarItem | undefined;
17
+ private get urlDropdownRef();
18
18
  ngOnChanges(sp: SimpleChanges): void;
19
19
  onTool(toolbarItem: ToolbarItem): void;
20
20
  onUrl(link: string): void;
21
21
  trackByToolFn(index: number, item: ToolbarItem): import("../../interfaces/richtext-toolbox.interface").Tool;
22
22
  protected closeUrlInput(): void;
23
- static ɵfac: i0.ɵɵFactoryDeclaration<RichtextToolboxCoreComponent, never>;
24
- static ɵcmp: i0.ɵɵComponentDeclaration<RichtextToolboxCoreComponent, "ask-richtext-toolbox-core", never, { "toolbarItems": { "alias": "toolbarItems"; "required": false; }; "type": { "alias": "type"; "required": false; }; "class": { "alias": "class"; "required": false; }; }, { "close": "close"; "tool": "tool"; }, never, never, false, never>;
23
+ static ɵfac: i0.ɵɵFactoryDeclaration<RichtextToolboxComponent, never>;
24
+ static ɵcmp: i0.ɵɵComponentDeclaration<RichtextToolboxComponent, "ask-richtext-toolbox", never, { "toolbarItems": { "alias": "toolbarItems"; "required": false; }; "type": { "alias": "type"; "required": false; }; "class": { "alias": "class"; "required": false; }; }, { "close": "close"; "tool": "tool"; }, never, never, false, never>;
25
25
  }
@@ -35,6 +35,7 @@ export declare class RichtextToolboxDirective implements OnChanges, ControlValue
35
35
  private update;
36
36
  private destroyAll;
37
37
  private generateToolboxLayout;
38
+ private getToolbox;
38
39
  static ɵfac: i0.ɵɵFactoryDeclaration<RichtextToolboxDirective, never>;
39
40
  static ɵdir: i0.ɵɵDirectiveDeclaration<RichtextToolboxDirective, "[askRichtextToolbox]", never, { "rtPlaceholder": { "alias": "rtPlaceholder"; "required": false; }; "rtTools": { "alias": "rtTools"; "required": false; }; "rtDisabledTools": { "alias": "rtDisabledTools"; "required": false; }; "rtType": { "alias": "rtType"; "required": false; }; "rtToolbarOnly": { "alias": "rtToolbarOnly"; "required": false; }; "maxlength": { "alias": "maxlength"; "required": false; }; "rtToolbarClass": { "alias": "rtToolbarClass"; "required": false; }; "rtEditorClass": { "alias": "rtEditorClass"; "required": false; }; "rtBreakOnEnter": { "alias": "rtBreakOnEnter"; "required": false; }; }, { "inputChange": "inputChange"; "inputEnter": "inputEnter"; "inputEscape": "inputEscape"; "toolChange": "toolChange"; }, never, never, false, never>;
40
41
  }
@@ -3,12 +3,14 @@ import { Overlay } from "@angular/cdk/overlay";
3
3
  import { ModalRef } from "./modal-ref";
4
4
  import { ModalConfig } from "./modal.config";
5
5
  import { ComponentType } from "../../components/modal/modal.component";
6
+ import { AskModalConfirmData } from "../../components/modal/confirmation-modal/confirmation-modal.component";
6
7
  import * as i0 from "@angular/core";
7
8
  export declare class ModalService {
8
9
  private overlay;
9
10
  private injector;
10
11
  constructor(overlay: Overlay, injector: Injector);
11
12
  open<T>(component: ComponentType<T>, config?: ModalConfig): ModalRef;
13
+ confirmModal(data: AskModalConfirmData): ModalRef;
12
14
  private createInjector;
13
15
  private getPositionStrategy;
14
16
  getOverlay(config?: ModalConfig): import("@angular/cdk/overlay").OverlayRef;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "asksuite-citrus",
3
- "version": "1.11.2",
3
+ "version": "1.12.0",
4
4
  "peerDependencies": {
5
5
  "@angular/common": "^16.1.0",
6
6
  "@angular/core": "^16.1.0",
package/public-api.d.ts CHANGED
@@ -17,6 +17,7 @@ export * from './lib/components/accordion/accordion.component';
17
17
  export * from './lib/components/accordion/extendable-panel/extendable-panel.component';
18
18
  export * from './lib/components/table/table.component';
19
19
  export * from './lib/components/pagination/pagination.component';
20
+ export * from './lib/components/loading-bar/loading-bar.component';
20
21
  export * from './lib/directives';
21
22
  export * from './lib/components/modal/directives';
22
23
  export * from './lib/services/toast/toast.service';
@@ -1,13 +1,11 @@
1
- import { AbstractControl } from "@angular/forms";
1
+ import { ValidatorFn } from "@angular/forms";
2
2
  import { CountryData } from "../providers/flag.provider";
3
3
  import { PhoneValidationService } from "../../lib/services/phone-ddi/phone-validation.service";
4
4
  import * as i0 from "@angular/core";
5
5
  export declare class PhoneMaskValidator {
6
6
  private readonly phoneValidationService;
7
7
  constructor(phoneValidationService: PhoneValidationService);
8
- validate(selectedFlag: CountryData): (control: AbstractControl) => {
9
- [key: string]: any;
10
- } | null;
8
+ validate(selectedFlag: CountryData): ValidatorFn;
11
9
  static ɵfac: i0.ɵɵFactoryDeclaration<PhoneMaskValidator, never>;
12
10
  static ɵprov: i0.ɵɵInjectableDeclaration<PhoneMaskValidator>;
13
11
  }
@@ -0,0 +1,14 @@
1
+ @use '@angular/material' as mat;
2
+ @include mat.core();
3
+
4
+ $my-primary: mat.define-palette(mat.$deep-orange-palette, 500);
5
+ $my-accent: mat.define-palette(mat.$blue-gray-palette, A200, A100, A400);
6
+
7
+ $my-theme: mat.define-light-theme((
8
+ color: (
9
+ primary: $my-primary,
10
+ accent: $my-accent,
11
+ )
12
+ ));
13
+
14
+ @include mat.all-component-themes($my-theme);
@@ -1,3 +1,8 @@
1
+ /**
2
+ * Material Design
3
+ */
4
+ @import "./material";
5
+
1
6
  /*
2
7
  * Tokens
3
8
  */
@@ -1,46 +0,0 @@
1
- import { Toolbox } from "./toolbox";
2
- const TOOLBOX_HEIGHT = 40;
3
- const MARGIN = 8;
4
- const MOUSE_EVENT = 'mouseup';
5
- export class BubbleStrategy extends Toolbox {
6
- constructor(injector) {
7
- super(injector);
8
- this.listenOutsideClicks();
9
- }
10
- move(bounds) {
11
- this.renderer2.setStyle(this.componentEl, 'top', `${bounds.top - (TOOLBOX_HEIGHT + MARGIN)}px`);
12
- this.renderer2.setStyle(this.componentEl, 'left', `${bounds.left}px`);
13
- }
14
- listenOutsideClicks() {
15
- this.clickListener = (event) => {
16
- if (!this.componentEl?.contains(event.target)
17
- && this.isVisible()) {
18
- this.destroyComponent();
19
- }
20
- };
21
- document.body.addEventListener(MOUSE_EVENT, this.clickListener);
22
- }
23
- onToolsChanged(state) {
24
- super.onToolsChanged(state);
25
- const { hasSelection, hasFocus, bounds } = state;
26
- if (hasSelection && bounds) {
27
- if (!this.isVisible())
28
- this.displayComponent();
29
- this.move(bounds);
30
- }
31
- else {
32
- if (this.isVisible() && hasFocus)
33
- this.destroyComponent();
34
- }
35
- }
36
- displayComponent() {
37
- super.displayComponent();
38
- this.renderer2.appendChild(this.hostEl?.nativeElement, this.componentEl);
39
- this.componentRef.setInput('type', 'bubble');
40
- }
41
- destroyAll() {
42
- document.body.removeEventListener(MOUSE_EVENT, this.clickListener);
43
- super.destroyAll();
44
- }
45
- }
46
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbGJveC1idWJibGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hc2tzdWl0ZS1jaXRydXMvc3JjL2xpYi9jbGFzc2VzL3Rvb2xib3gtYnViYmxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFHcEMsTUFBTSxjQUFjLEdBQUcsRUFBRSxDQUFDO0FBQzFCLE1BQU0sTUFBTSxHQUFHLENBQUMsQ0FBQztBQUNqQixNQUFNLFdBQVcsR0FBRyxTQUFTLENBQUE7QUFFN0IsTUFBTSxPQUFPLGNBQWUsU0FBUSxPQUFPO0lBR3ZDLFlBQVksUUFBa0I7UUFDNUIsS0FBSyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQ2hCLElBQUksQ0FBQyxtQkFBbUIsRUFBRSxDQUFDO0lBQzdCLENBQUM7SUFFTyxJQUFJLENBQUMsTUFBb0I7UUFDL0IsSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBQyxLQUFLLEVBQUMsR0FBRyxNQUFNLENBQUMsR0FBRyxHQUFHLENBQUMsY0FBYyxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUM5RixJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFDLE1BQU0sRUFBQyxHQUFHLE1BQU0sQ0FBQyxJQUFJLElBQUksQ0FBQyxDQUFDO0lBQ3RFLENBQUM7SUFFTyxtQkFBbUI7UUFDekIsSUFBSSxDQUFDLGFBQWEsR0FBRyxDQUFDLEtBQUssRUFBRSxFQUFFO1lBQzdCLElBQ0UsQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLFFBQVEsQ0FBQyxLQUFLLENBQUMsTUFBYyxDQUFDO21CQUM5QyxJQUFJLENBQUMsU0FBUyxFQUFFLEVBQ3BCO2dCQUNDLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO2FBQ3pCO1FBQ0gsQ0FBQyxDQUFBO1FBQ0QsUUFBUSxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxXQUFXLEVBQUUsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDO0lBQ2xFLENBQUM7SUFFUSxjQUFjLENBQUMsS0FBaUI7UUFDdkMsS0FBSyxDQUFDLGNBQWMsQ0FBQyxLQUFLLENBQUMsQ0FBQTtRQUMzQixNQUFNLEVBQUUsWUFBWSxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsR0FBRyxLQUFLLENBQUM7UUFDakQsSUFBSSxZQUFZLElBQUksTUFBTSxFQUFFO1lBQzFCLElBQUcsQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFO2dCQUNsQixJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztZQUMxQixJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1NBQ25CO2FBQU07WUFDTCxJQUFHLElBQUksQ0FBQyxTQUFTLEVBQUUsSUFBSSxRQUFRO2dCQUM3QixJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztTQUMzQjtJQUNILENBQUM7SUFFUSxnQkFBZ0I7UUFDdkIsS0FBSyxDQUFDLGdCQUFnQixFQUFFLENBQUM7UUFDekIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxhQUFhLEVBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQ3hFLElBQUksQ0FBQyxZQUFhLENBQUMsUUFBUSxDQUFDLE1BQU0sRUFBQyxRQUFRLENBQUMsQ0FBQztJQUMvQyxDQUFDO0lBRVEsVUFBVTtRQUNqQixRQUFRLENBQUMsSUFBSSxDQUFDLG1CQUFtQixDQUFDLFdBQVcsRUFBRSxJQUFJLENBQUMsYUFBYyxDQUFDLENBQUM7UUFDcEUsS0FBSyxDQUFDLFVBQVUsRUFBRSxDQUFDO0lBQ3JCLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdG9yIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7IEJvdW5kc1N0YXRpYyB9IGZyb20gXCJxdWlsbFwiO1xuaW1wb3J0IHsgVG9vbGJveCB9IGZyb20gXCIuL3Rvb2xib3hcIjtcbmltcG9ydCB7IFRvb2xzU3RhdGUgfSBmcm9tIFwiLi4vaW50ZXJmYWNlcy9yaWNodGV4dC10b29sYm94LmludGVyZmFjZVwiO1xuXG5jb25zdCBUT09MQk9YX0hFSUdIVCA9IDQwO1xuY29uc3QgTUFSR0lOID0gODtcbmNvbnN0IE1PVVNFX0VWRU5UID0gJ21vdXNldXAnXG5cbmV4cG9ydCBjbGFzcyBCdWJibGVTdHJhdGVneSBleHRlbmRzIFRvb2xib3gge1xuICAgIHByaXZhdGUgY2xpY2tMaXN0ZW5lcj86IChldmVudDogTW91c2VFdmVudCkgPT4gdm9pZDtcbiAgXG4gICAgY29uc3RydWN0b3IoaW5qZWN0b3I6IEluamVjdG9yKSB7XG4gICAgICBzdXBlcihpbmplY3Rvcik7XG4gICAgICB0aGlzLmxpc3Rlbk91dHNpZGVDbGlja3MoKTtcbiAgICB9XG4gIFxuICAgIHByaXZhdGUgbW92ZShib3VuZHM6IEJvdW5kc1N0YXRpYykge1xuICAgICAgdGhpcy5yZW5kZXJlcjIuc2V0U3R5bGUodGhpcy5jb21wb25lbnRFbCwndG9wJyxgJHtib3VuZHMudG9wIC0gKFRPT0xCT1hfSEVJR0hUICsgTUFSR0lOKX1weGApO1xuICAgICAgdGhpcy5yZW5kZXJlcjIuc2V0U3R5bGUodGhpcy5jb21wb25lbnRFbCwnbGVmdCcsYCR7Ym91bmRzLmxlZnR9cHhgKTtcbiAgICB9XG4gIFxuICAgIHByaXZhdGUgbGlzdGVuT3V0c2lkZUNsaWNrcygpe1xuICAgICAgdGhpcy5jbGlja0xpc3RlbmVyID0gKGV2ZW50KSA9PiB7XG4gICAgICAgIGlmKFxuICAgICAgICAgICF0aGlzLmNvbXBvbmVudEVsPy5jb250YWlucyhldmVudC50YXJnZXQgYXMgTm9kZSkgXG4gICAgICAgICAgJiYgdGhpcy5pc1Zpc2libGUoKVxuICAgICAgICApe1xuICAgICAgICAgIHRoaXMuZGVzdHJveUNvbXBvbmVudCgpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBkb2N1bWVudC5ib2R5LmFkZEV2ZW50TGlzdGVuZXIoTU9VU0VfRVZFTlQsIHRoaXMuY2xpY2tMaXN0ZW5lcik7XG4gICAgfVxuICAgIFxuICAgIG92ZXJyaWRlIG9uVG9vbHNDaGFuZ2VkKHN0YXRlOiBUb29sc1N0YXRlKTogdm9pZCB7XG4gICAgICBzdXBlci5vblRvb2xzQ2hhbmdlZChzdGF0ZSlcbiAgICAgIGNvbnN0IHsgaGFzU2VsZWN0aW9uLCBoYXNGb2N1cywgYm91bmRzIH0gPSBzdGF0ZTtcbiAgICAgIGlmIChoYXNTZWxlY3Rpb24gJiYgYm91bmRzKSB7XG4gICAgICAgIGlmKCF0aGlzLmlzVmlzaWJsZSgpKVxuICAgICAgICAgIHRoaXMuZGlzcGxheUNvbXBvbmVudCgpO1xuICAgICAgICB0aGlzLm1vdmUoYm91bmRzKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGlmKHRoaXMuaXNWaXNpYmxlKCkgJiYgaGFzRm9jdXMpXG4gICAgICAgICAgdGhpcy5kZXN0cm95Q29tcG9uZW50KCk7XG4gICAgICB9XG4gICAgfVxuICBcbiAgICBvdmVycmlkZSBkaXNwbGF5Q29tcG9uZW50KCkge1xuICAgICAgc3VwZXIuZGlzcGxheUNvbXBvbmVudCgpO1xuICAgICAgdGhpcy5yZW5kZXJlcjIuYXBwZW5kQ2hpbGQodGhpcy5ob3N0RWw/Lm5hdGl2ZUVsZW1lbnQsdGhpcy5jb21wb25lbnRFbCk7XG4gICAgICB0aGlzLmNvbXBvbmVudFJlZiEuc2V0SW5wdXQoJ3R5cGUnLCdidWJibGUnKTtcbiAgICB9XG4gICAgXG4gICAgb3ZlcnJpZGUgZGVzdHJveUFsbCgpOiB2b2lkIHtcbiAgICAgIGRvY3VtZW50LmJvZHkucmVtb3ZlRXZlbnRMaXN0ZW5lcihNT1VTRV9FVkVOVCwgdGhpcy5jbGlja0xpc3RlbmVyISk7XG4gICAgICBzdXBlci5kZXN0cm95QWxsKCk7XG4gICAgfVxuICB9Il19
@@ -1,34 +0,0 @@
1
- import { Toolbox } from "./toolbox";
2
- export class TopbarStrategy extends Toolbox {
3
- constructor(injector) {
4
- super(injector);
5
- this.displayComponent();
6
- }
7
- displayComponent() {
8
- super.displayComponent();
9
- const parentElement = this.renderer2.parentNode(this.hostEl?.nativeElement);
10
- this.renderer2.appendChild(parentElement, this.componentEl);
11
- this.renderer2.appendChild(parentElement, this.hostEl?.nativeElement);
12
- this.componentRef.setInput('type', 'topbar');
13
- }
14
- prepareUpdatedTools(toolState) {
15
- const toolbarItems = super.prepareUpdatedTools(toolState);
16
- const { formats, hasSelection, hasFocus } = toolState;
17
- toolbarItems.forEach(tool => {
18
- if (!hasFocus) {
19
- tool.disabled = true;
20
- return;
21
- }
22
- if (tool.tool === 'clear') {
23
- tool.disabled = !hasSelection;
24
- }
25
- else if (tool.tool === 'link') {
26
- tool.selected = !!formats.link;
27
- tool.disabled = !hasSelection && !formats.link;
28
- tool.value = formats?.link;
29
- }
30
- });
31
- return toolbarItems;
32
- }
33
- }
34
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbGJveC10b3BiYXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hc2tzdWl0ZS1jaXRydXMvc3JjL2xpYi9jbGFzc2VzL3Rvb2xib3gtdG9wYmFyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFHcEMsTUFBTSxPQUFPLGNBQWUsU0FBUSxPQUFPO0lBRXZDLFlBQVksUUFBa0I7UUFDNUIsS0FBSyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQ2hCLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO0lBQzFCLENBQUM7SUFHUSxnQkFBZ0I7UUFDdkIsS0FBSyxDQUFDLGdCQUFnQixFQUFFLENBQUM7UUFDekIsTUFBTSxhQUFhLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxhQUFhLENBQUMsQ0FBQztRQUM1RSxJQUFJLENBQUMsU0FBUyxDQUFDLFdBQVcsQ0FBQyxhQUFhLEVBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQzNELElBQUksQ0FBQyxTQUFTLENBQUMsV0FBVyxDQUFDLGFBQWEsRUFBRSxJQUFJLENBQUMsTUFBTSxFQUFFLGFBQWEsQ0FBQyxDQUFDO1FBQ3RFLElBQUksQ0FBQyxZQUFhLENBQUMsUUFBUSxDQUFDLE1BQU0sRUFBQyxRQUFRLENBQUMsQ0FBQztJQUMvQyxDQUFDO0lBRVEsbUJBQW1CLENBQUMsU0FBcUI7UUFDaEQsTUFBTSxZQUFZLEdBQUcsS0FBSyxDQUFDLG1CQUFtQixDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQzFELE1BQU0sRUFBRSxPQUFPLEVBQUUsWUFBWSxFQUFFLFFBQVEsRUFBRSxHQUFHLFNBQVMsQ0FBQztRQUV0RCxZQUFZLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxFQUFFO1lBQzFCLElBQUcsQ0FBQyxRQUFRLEVBQUU7Z0JBQ1osSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUE7Z0JBQ3BCLE9BQU87YUFDUjtZQUVELElBQUksSUFBSSxDQUFDLElBQUksS0FBSyxPQUFPLEVBQUU7Z0JBQ3pCLElBQUksQ0FBQyxRQUFRLEdBQUcsQ0FBQyxZQUFZLENBQUM7YUFDL0I7aUJBQU0sSUFBSSxJQUFJLENBQUMsSUFBSSxLQUFLLE1BQU0sRUFBRTtnQkFDL0IsSUFBSSxDQUFDLFFBQVEsR0FBRyxDQUFDLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQztnQkFDL0IsSUFBSSxDQUFDLFFBQVEsR0FBRyxDQUFDLFlBQVksSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUM7Z0JBQy9DLElBQUksQ0FBQyxLQUFLLEdBQUcsT0FBTyxFQUFFLElBQUksQ0FBQzthQUM1QjtRQUNILENBQUMsQ0FBQyxDQUFBO1FBQ0osT0FBTyxZQUFZLENBQUE7SUFDbkIsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0b3IgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgVG9vbGJveCB9IGZyb20gXCIuL3Rvb2xib3hcIjtcbmltcG9ydCB7IFRvb2xiYXJJdGVtLCBUb29sc1N0YXRlIH0gZnJvbSBcIi4uL2ludGVyZmFjZXMvcmljaHRleHQtdG9vbGJveC5pbnRlcmZhY2VcIjtcblxuZXhwb3J0IGNsYXNzIFRvcGJhclN0cmF0ZWd5IGV4dGVuZHMgVG9vbGJveCB7XG5cbiAgICBjb25zdHJ1Y3RvcihpbmplY3RvcjogSW5qZWN0b3IpIHtcbiAgICAgIHN1cGVyKGluamVjdG9yKTtcbiAgICAgIHRoaXMuZGlzcGxheUNvbXBvbmVudCgpO1xuICAgIH1cbiAgXG4gIFxuICAgIG92ZXJyaWRlIGRpc3BsYXlDb21wb25lbnQoKTogdm9pZCB7XG4gICAgICBzdXBlci5kaXNwbGF5Q29tcG9uZW50KCk7XG4gICAgICBjb25zdCBwYXJlbnRFbGVtZW50ID0gdGhpcy5yZW5kZXJlcjIucGFyZW50Tm9kZSh0aGlzLmhvc3RFbD8ubmF0aXZlRWxlbWVudCk7XG4gICAgICB0aGlzLnJlbmRlcmVyMi5hcHBlbmRDaGlsZChwYXJlbnRFbGVtZW50LHRoaXMuY29tcG9uZW50RWwpO1xuICAgICAgdGhpcy5yZW5kZXJlcjIuYXBwZW5kQ2hpbGQocGFyZW50RWxlbWVudCwgdGhpcy5ob3N0RWw/Lm5hdGl2ZUVsZW1lbnQpO1xuICAgICAgdGhpcy5jb21wb25lbnRSZWYhLnNldElucHV0KCd0eXBlJywndG9wYmFyJyk7XG4gICAgfVxuXG4gICAgb3ZlcnJpZGUgcHJlcGFyZVVwZGF0ZWRUb29scyh0b29sU3RhdGU6IFRvb2xzU3RhdGUpOiBUb29sYmFySXRlbVtde1xuICAgICAgY29uc3QgdG9vbGJhckl0ZW1zID0gc3VwZXIucHJlcGFyZVVwZGF0ZWRUb29scyh0b29sU3RhdGUpO1xuICAgICAgY29uc3QgeyBmb3JtYXRzLCBoYXNTZWxlY3Rpb24sIGhhc0ZvY3VzIH0gPSB0b29sU3RhdGU7XG5cbiAgICAgIHRvb2xiYXJJdGVtcy5mb3JFYWNoKHRvb2wgPT4ge1xuICAgICAgICBpZighaGFzRm9jdXMpIHtcbiAgICAgICAgICB0b29sLmRpc2FibGVkID0gdHJ1ZVxuICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICh0b29sLnRvb2wgPT09ICdjbGVhcicpIHtcbiAgICAgICAgICB0b29sLmRpc2FibGVkID0gIWhhc1NlbGVjdGlvbjtcbiAgICAgICAgfSBlbHNlIGlmICh0b29sLnRvb2wgPT09ICdsaW5rJykge1xuICAgICAgICAgIHRvb2wuc2VsZWN0ZWQgPSAhIWZvcm1hdHMubGluaztcbiAgICAgICAgICB0b29sLmRpc2FibGVkID0gIWhhc1NlbGVjdGlvbiAmJiAhZm9ybWF0cy5saW5rO1xuICAgICAgICAgIHRvb2wudmFsdWUgPSBmb3JtYXRzPy5saW5rO1xuICAgICAgICB9XG4gICAgICB9KVxuICAgIHJldHVybiB0b29sYmFySXRlbXNcbiAgICB9XG4gIH1cbiAgIl19
@@ -1,82 +0,0 @@
1
- import { ChangeDetectionStrategy, Component, EventEmitter, HostBinding, Input, Output, ViewChildren, } from '@angular/core';
2
- import { AskDropdownDirective } from '../../directives';
3
- import * as i0 from "@angular/core";
4
- import * as i1 from "@angular/common";
5
- import * as i2 from "../../directives/ask-dropdown.directive";
6
- import * as i3 from "../richtext-url-prompt/richtext-url-prompt.component";
7
- export class RichtextToolboxCoreComponent {
8
- constructor() {
9
- this.close = new EventEmitter();
10
- this.tool = new EventEmitter();
11
- this.type = 'topbar';
12
- this.class = '';
13
- this._toolbarItems = [];
14
- this.urlIdx = -1;
15
- this.isUrlMode = false;
16
- }
17
- get toolbarItems() {
18
- return this._toolbarItems;
19
- }
20
- set toolbarItems(value) {
21
- this._toolbarItems = value;
22
- this.urlIdx = value.findIndex((item) => item.tool === 'link');
23
- }
24
- get linkTool() {
25
- return this.toolbarItems[this.urlIdx];
26
- }
27
- get urlDropdownRef() {
28
- return this.dropdowns?.get(this.urlIdx);
29
- }
30
- ngOnChanges(sp) {
31
- if (sp['type'] && !this.class) {
32
- this.class = this.type === 'bubble' ? 'bubble-toolbox' : 'top-toolbox';
33
- }
34
- }
35
- onTool(toolbarItem) {
36
- if (toolbarItem.disabled)
37
- return;
38
- if (toolbarItem.tool === 'link') {
39
- if (this.type === 'bubble')
40
- this.isUrlMode = true;
41
- }
42
- else {
43
- this.tool.emit(toolbarItem);
44
- }
45
- }
46
- onUrl(link) {
47
- this.tool.emit({ ...this.linkTool, value: link });
48
- this.closeUrlInput();
49
- }
50
- trackByToolFn(index, item) {
51
- return item.tool;
52
- }
53
- closeUrlInput() {
54
- if (this.isUrlMode)
55
- this.isUrlMode = false;
56
- else
57
- this.urlDropdownRef.close();
58
- }
59
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.6", ngImport: i0, type: RichtextToolboxCoreComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
60
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.6", type: RichtextToolboxCoreComponent, selector: "ask-richtext-toolbox-core", inputs: { toolbarItems: "toolbarItems", type: "type", class: "class" }, outputs: { close: "close", tool: "tool" }, host: { properties: { "class": "this.class" } }, viewQueries: [{ propertyName: "dropdowns", predicate: AskDropdownDirective, descendants: true }], usesOnChanges: true, ngImport: i0, template: "<ng-container *ngIf=\"!isUrlMode; else urlTemplate\">\n <button\n class=\"button\"\n *ngFor=\"let tool of toolbarItems; trackBy: trackByToolFn\"\n [disabled]=\"tool.disabled\"\n (click)=\"onTool(tool)\"\n [askDropdown]=\"tool.tool === 'link' && type === 'topbar' ? urlTemplate : undefined\"\n positions=\"BOTTOM_LEFT\"\n >\n <span\n class=\"material-icons icon\"\n [ngClass]=\"{\n '-selected': tool.selected,\n '-disabled': tool.disabled,\n '-bubble': type === 'bubble',\n }\"\n >\n {{ tool.icon }}\n </span>\n </button>\n</ng-container>\n\n<ng-template #urlTemplate>\n <ask-richtext-url-prompt\n [url]=\"linkTool?.value || ''\"\n (url)=\"onUrl($event)\"\n (keydown.escape)=\"closeUrlInput()\"\n />\n</ng-template>\n", styles: ["@import\"https://cdn.quilljs.com/1.0.0/quill.core.css\";:root{--asksuite-orange: #FF5724;--white: #FFF;--grey-50: #F5F7FA;--grey-100: #E4E7EB;--grey-200: #CBD2D9;--grey-300: #9AA5B1;--grey-400: #7B8794;--grey-500: #616E7C;--grey-600: #52606D;--grey-700: #3E4C59;--grey-800: #2A3042;--grey-900: #1F2933;--yellow-50: #FFF8E2;--yellow-200: #FFECB3;--success-green: #4BAF50;--warning-yellow: #FFC107;--error-red: #E8453E;--shadow: rgba(42, 48, 66, .1607843137);--lightblue-tag: #CDF9F3;--lavender-tag: #D4DAF3;--green-tag: #CEEEAA;--pink-tag: #FBC5FF;--orange-tag: #FED5C9;--purple-tag: #DDBFE5;--yellow-tag: #FFE0B2;--blue-tag: #B2E5FD;--brown-tag: #EFC89C;--whatsapp-green: #68B35D;--facebook-blue: #0084FF;--instagram-pink: #D53E91;--google-blue: #345DC8;--telegram-blue: #34AADF;--telephone-yellow: #FECB00;--primary-background: #FFF;--secondary-background: #EFF3F8;--hover-background: #F5F7FA;--divider-background: #E4E7EB;--font-color-100: #2A3042;--font-color-200: #616E7C;--font-color-300: #9AA5B1}:root{--font-default: $font-default;--font-code: $font-code}:root{--font-xs: $font-xs;--font-sm: $font-sm;--font-md: $font-md;--font-lg: $font-lg;--font-xl: $font-xl;--font-xxl: $font-xxl}:root{--font-weight-regular: $font-weight-regular;--font-weight-medium: $font-weight-medium}:root{--radii-px: $radii-px;--radii-xs: $radii-xs;--radii-sm: $radii-sm;--radii-md: $radii-md;--radii-lg: $radii-lg;--radii-full: $radii-full}.ellipsis{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.scale-in-center{animation:scale-in-center .3s ease-in-out both}@keyframes scale-in-center{0%{transform:scale(0);opacity:1}to{transform:scale(1);opacity:1}}.scale-out-center{animation:scale-out-center .3s ease-in-out both}@keyframes scale-out-center{0%{transform:scale(1);opacity:1}to{transform:scale(0);opacity:1}}.ask-tooltip{background-color:#7b8794;color:#fff;padding:4px;border-radius:8px;position:relative}.ask-tooltip>div{text-align:center!important}.ask-tooltip:after{position:absolute;content:\"\";width:10px;height:10px;background-color:inherit}.ask-tooltip.-above{margin-bottom:4px}.ask-tooltip.-above:after{bottom:-5px;left:50%;transform:translate(-50%) rotate(45deg)}.ask-tooltip.-below{margin-top:4px}.ask-tooltip.-below:after{top:-5px;left:50%;transform:translate(-50%) rotate(45deg)}.ask-tooltip.-after,.ask-tooltip.-right{margin-left:4px}.ask-tooltip.-after:after,.ask-tooltip.-right:after{left:-5px;top:50%;transform:translateY(-50%) rotate(45deg)}.ask-tooltip.-before,.ask-tooltip.-left{margin-right:4px}.ask-tooltip.-before:after,.ask-tooltip.-left:after{right:-5px;top:50%;transform:translateY(-50%) rotate(45deg)}.ask-button{padding:8px 24px;border-radius:6px;border:none;outline:none;height:48px;font-size:1rem;transition:background-color .1s,box-shadow .1s;cursor:pointer;font-weight:500;background:white;color:var(--grey-500)}.ask-button:not(.-primary,.-secondary){box-shadow:0 1px 2px #2a304229}.ask-button:not(.-primary):hover:not(:disabled){box-shadow:0 0 6px #2a304229}.ask-button:hover:not(:disabled){box-shadow:0 0 6px #ff572466}.ask-button:active:not(:disabled){background-color:#f34915}.ask-button:disabled{cursor:not-allowed;background-color:#9aa5b1}.ask-button.-primary{background:#FF5724;color:#fff}.ask-text-button{padding:8px 16px;border:none;border-radius:4px;outline:none;background:none;color:var(--asksuite-orange);font-size:1rem;font-weight:500;cursor:pointer;transition:all .3ms}.ask-text-button:hover{text-decoration:none;background:#F5F7FA}.ask-text-button:disabled{cursor:not-allowed;color:#9aa5b1}.ask-text-button.-primary{color:var(--asksuite-orange)}.ask-text-button.-secondary{color:#616e7c}.ask-modal-header{display:block;position:relative;flex-shrink:0;box-sizing:border-box;margin:0 0 1px;padding:0 24px 9px}.ask-modal-body{flex-grow:1;box-sizing:border-box;margin:0;overflow:auto;padding:20px 24px;max-height:65vh;display:block}.ask-modal-footer{display:flex;position:relative;flex-shrink:0;flex-wrap:wrap;align-items:center;justify-content:flex-end;box-sizing:border-box;min-height:52px;margin:0;padding:8px;border-top:1px solid rgba(0,0,0,0)}.ql-editor{padding:14px 16px;font-size:.875rem;word-break:break-word}.bubble-toolbox{position:absolute;background-color:var(--grey-800);border-radius:8px;z-index:999}.top-toolbox{background-color:var(--grey-100)}.material-icons{font-family:Material Icons;font-weight:400;font-style:normal;font-size:24px;line-height:1;letter-spacing:normal;text-transform:none;display:inline-block;white-space:nowrap;word-wrap:normal;direction:ltr;-webkit-font-feature-settings:\"liga\";-webkit-font-smoothing:antialiased}*{box-sizing:border-box}*,button,select,textarea{font-family:Inter,sans-serif;font-weight:400}input{font-size:1rem}.ask-badge{position:relative}.ask-badge>.badge{position:absolute;display:flex;justify-content:center;align-items:center;background-color:var(--bg-color);color:#fff;font-size:12px;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;border-radius:50%;box-shadow:0 2px 6px -1px #00000080}.ask-badge>.badge.-primary{--bg-color: var(--asksuite-orange)}.ask-badge>.badge.-secondary{--bg-color: var(--grey-800)}.ask-badge>.badge.-top{top:-10px}.ask-badge>.badge.-bottom{bottom:-10px}.ask-badge>.badge.-left{left:-10px}.ask-badge>.badge.-right{right:-10px}.ask-badge>.badge.-small{width:18px;height:18px;font-size:10px}.ask-badge>.badge.-regular{width:22px;height:22px;font-size:11px}.ask-badge>.badge.-large{width:28px;height:28px;font-size:12px}.ask-dropdown-top-right{margin-left:8px}.ask-dropdown-top-left{margin-right:8px}.ask-dropdown-bottom-right,.ask-dropdown-bottom-left{margin-top:8px}.ask-tooltip{white-space:break-spaces}:host{display:flex}.button{background:none;color:inherit;border:none;margin:0;font:inherit;cursor:pointer;outline:inherit;line-height:0;color:#7b8794;padding:8px}.icon.-bubble{color:var(--white)}.icon.-disabled{color:var(--grey-200)}.icon.-selected{color:#ff5724}.icon.-bubble.-disabled{color:var(--grey-600)}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.AskDropdownDirective, selector: "[askDropdown]", inputs: ["askDropdown", "dropdownName", "positions", "dropdownDisabled", "dropdownOpenOnHover", "mouseThreshold"], outputs: ["askDropdownOnClose"] }, { kind: "component", type: i3.RichtextUrlPromptComponent, selector: "ask-richtext-url-prompt", inputs: ["url"], outputs: ["url"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
61
- }
62
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.6", ngImport: i0, type: RichtextToolboxCoreComponent, decorators: [{
63
- type: Component,
64
- args: [{ selector: 'ask-richtext-toolbox-core', changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-container *ngIf=\"!isUrlMode; else urlTemplate\">\n <button\n class=\"button\"\n *ngFor=\"let tool of toolbarItems; trackBy: trackByToolFn\"\n [disabled]=\"tool.disabled\"\n (click)=\"onTool(tool)\"\n [askDropdown]=\"tool.tool === 'link' && type === 'topbar' ? urlTemplate : undefined\"\n positions=\"BOTTOM_LEFT\"\n >\n <span\n class=\"material-icons icon\"\n [ngClass]=\"{\n '-selected': tool.selected,\n '-disabled': tool.disabled,\n '-bubble': type === 'bubble',\n }\"\n >\n {{ tool.icon }}\n </span>\n </button>\n</ng-container>\n\n<ng-template #urlTemplate>\n <ask-richtext-url-prompt\n [url]=\"linkTool?.value || ''\"\n (url)=\"onUrl($event)\"\n (keydown.escape)=\"closeUrlInput()\"\n />\n</ng-template>\n", styles: ["@import\"https://cdn.quilljs.com/1.0.0/quill.core.css\";:root{--asksuite-orange: #FF5724;--white: #FFF;--grey-50: #F5F7FA;--grey-100: #E4E7EB;--grey-200: #CBD2D9;--grey-300: #9AA5B1;--grey-400: #7B8794;--grey-500: #616E7C;--grey-600: #52606D;--grey-700: #3E4C59;--grey-800: #2A3042;--grey-900: #1F2933;--yellow-50: #FFF8E2;--yellow-200: #FFECB3;--success-green: #4BAF50;--warning-yellow: #FFC107;--error-red: #E8453E;--shadow: rgba(42, 48, 66, .1607843137);--lightblue-tag: #CDF9F3;--lavender-tag: #D4DAF3;--green-tag: #CEEEAA;--pink-tag: #FBC5FF;--orange-tag: #FED5C9;--purple-tag: #DDBFE5;--yellow-tag: #FFE0B2;--blue-tag: #B2E5FD;--brown-tag: #EFC89C;--whatsapp-green: #68B35D;--facebook-blue: #0084FF;--instagram-pink: #D53E91;--google-blue: #345DC8;--telegram-blue: #34AADF;--telephone-yellow: #FECB00;--primary-background: #FFF;--secondary-background: #EFF3F8;--hover-background: #F5F7FA;--divider-background: #E4E7EB;--font-color-100: #2A3042;--font-color-200: #616E7C;--font-color-300: #9AA5B1}:root{--font-default: $font-default;--font-code: $font-code}:root{--font-xs: $font-xs;--font-sm: $font-sm;--font-md: $font-md;--font-lg: $font-lg;--font-xl: $font-xl;--font-xxl: $font-xxl}:root{--font-weight-regular: $font-weight-regular;--font-weight-medium: $font-weight-medium}:root{--radii-px: $radii-px;--radii-xs: $radii-xs;--radii-sm: $radii-sm;--radii-md: $radii-md;--radii-lg: $radii-lg;--radii-full: $radii-full}.ellipsis{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.scale-in-center{animation:scale-in-center .3s ease-in-out both}@keyframes scale-in-center{0%{transform:scale(0);opacity:1}to{transform:scale(1);opacity:1}}.scale-out-center{animation:scale-out-center .3s ease-in-out both}@keyframes scale-out-center{0%{transform:scale(1);opacity:1}to{transform:scale(0);opacity:1}}.ask-tooltip{background-color:#7b8794;color:#fff;padding:4px;border-radius:8px;position:relative}.ask-tooltip>div{text-align:center!important}.ask-tooltip:after{position:absolute;content:\"\";width:10px;height:10px;background-color:inherit}.ask-tooltip.-above{margin-bottom:4px}.ask-tooltip.-above:after{bottom:-5px;left:50%;transform:translate(-50%) rotate(45deg)}.ask-tooltip.-below{margin-top:4px}.ask-tooltip.-below:after{top:-5px;left:50%;transform:translate(-50%) rotate(45deg)}.ask-tooltip.-after,.ask-tooltip.-right{margin-left:4px}.ask-tooltip.-after:after,.ask-tooltip.-right:after{left:-5px;top:50%;transform:translateY(-50%) rotate(45deg)}.ask-tooltip.-before,.ask-tooltip.-left{margin-right:4px}.ask-tooltip.-before:after,.ask-tooltip.-left:after{right:-5px;top:50%;transform:translateY(-50%) rotate(45deg)}.ask-button{padding:8px 24px;border-radius:6px;border:none;outline:none;height:48px;font-size:1rem;transition:background-color .1s,box-shadow .1s;cursor:pointer;font-weight:500;background:white;color:var(--grey-500)}.ask-button:not(.-primary,.-secondary){box-shadow:0 1px 2px #2a304229}.ask-button:not(.-primary):hover:not(:disabled){box-shadow:0 0 6px #2a304229}.ask-button:hover:not(:disabled){box-shadow:0 0 6px #ff572466}.ask-button:active:not(:disabled){background-color:#f34915}.ask-button:disabled{cursor:not-allowed;background-color:#9aa5b1}.ask-button.-primary{background:#FF5724;color:#fff}.ask-text-button{padding:8px 16px;border:none;border-radius:4px;outline:none;background:none;color:var(--asksuite-orange);font-size:1rem;font-weight:500;cursor:pointer;transition:all .3ms}.ask-text-button:hover{text-decoration:none;background:#F5F7FA}.ask-text-button:disabled{cursor:not-allowed;color:#9aa5b1}.ask-text-button.-primary{color:var(--asksuite-orange)}.ask-text-button.-secondary{color:#616e7c}.ask-modal-header{display:block;position:relative;flex-shrink:0;box-sizing:border-box;margin:0 0 1px;padding:0 24px 9px}.ask-modal-body{flex-grow:1;box-sizing:border-box;margin:0;overflow:auto;padding:20px 24px;max-height:65vh;display:block}.ask-modal-footer{display:flex;position:relative;flex-shrink:0;flex-wrap:wrap;align-items:center;justify-content:flex-end;box-sizing:border-box;min-height:52px;margin:0;padding:8px;border-top:1px solid rgba(0,0,0,0)}.ql-editor{padding:14px 16px;font-size:.875rem;word-break:break-word}.bubble-toolbox{position:absolute;background-color:var(--grey-800);border-radius:8px;z-index:999}.top-toolbox{background-color:var(--grey-100)}.material-icons{font-family:Material Icons;font-weight:400;font-style:normal;font-size:24px;line-height:1;letter-spacing:normal;text-transform:none;display:inline-block;white-space:nowrap;word-wrap:normal;direction:ltr;-webkit-font-feature-settings:\"liga\";-webkit-font-smoothing:antialiased}*{box-sizing:border-box}*,button,select,textarea{font-family:Inter,sans-serif;font-weight:400}input{font-size:1rem}.ask-badge{position:relative}.ask-badge>.badge{position:absolute;display:flex;justify-content:center;align-items:center;background-color:var(--bg-color);color:#fff;font-size:12px;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;border-radius:50%;box-shadow:0 2px 6px -1px #00000080}.ask-badge>.badge.-primary{--bg-color: var(--asksuite-orange)}.ask-badge>.badge.-secondary{--bg-color: var(--grey-800)}.ask-badge>.badge.-top{top:-10px}.ask-badge>.badge.-bottom{bottom:-10px}.ask-badge>.badge.-left{left:-10px}.ask-badge>.badge.-right{right:-10px}.ask-badge>.badge.-small{width:18px;height:18px;font-size:10px}.ask-badge>.badge.-regular{width:22px;height:22px;font-size:11px}.ask-badge>.badge.-large{width:28px;height:28px;font-size:12px}.ask-dropdown-top-right{margin-left:8px}.ask-dropdown-top-left{margin-right:8px}.ask-dropdown-bottom-right,.ask-dropdown-bottom-left{margin-top:8px}.ask-tooltip{white-space:break-spaces}:host{display:flex}.button{background:none;color:inherit;border:none;margin:0;font:inherit;cursor:pointer;outline:inherit;line-height:0;color:#7b8794;padding:8px}.icon.-bubble{color:var(--white)}.icon.-disabled{color:var(--grey-200)}.icon.-selected{color:#ff5724}.icon.-bubble.-disabled{color:var(--grey-600)}\n"] }]
65
- }], propDecorators: { dropdowns: [{
66
- type: ViewChildren,
67
- args: [AskDropdownDirective]
68
- }], close: [{
69
- type: Output
70
- }], tool: [{
71
- type: Output
72
- }], toolbarItems: [{
73
- type: Input
74
- }], type: [{
75
- type: Input
76
- }], class: [{
77
- type: Input
78
- }, {
79
- type: HostBinding,
80
- args: ['class']
81
- }] } });
82
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmljaHRleHQtdG9vbGJveC1jb3JlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Fza3N1aXRlLWNpdHJ1cy9zcmMvbGliL2NvbXBvbmVudHMvcmljaHRleHQtdG9vbGJveC1jb3JlL3JpY2h0ZXh0LXRvb2xib3gtY29yZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hc2tzdWl0ZS1jaXRydXMvc3JjL2xpYi9jb21wb25lbnRzL3JpY2h0ZXh0LXRvb2xib3gtY29yZS9yaWNodGV4dC10b29sYm94LWNvcmUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsWUFBWSxFQUNaLFdBQVcsRUFDWCxLQUFLLEVBQ0wsTUFBTSxFQUdOLFlBQVksR0FDYixNQUFNLGVBQWUsQ0FBQztBQUl2QixPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQzs7Ozs7QUFReEQsTUFBTSxPQUFPLDRCQUE0QjtJQU56QztRQVdZLFVBQUssR0FBRyxJQUFJLFlBQVksRUFBUSxDQUFDO1FBQ2pDLFNBQUksR0FBRyxJQUFJLFlBQVksRUFBZSxDQUFDO1FBU3hDLFNBQUksR0FBd0IsUUFBUSxDQUFDO1FBQ2YsVUFBSyxHQUE4QyxFQUFFLENBQUM7UUFFN0Usa0JBQWEsR0FBa0IsRUFBRSxDQUFDO1FBQ2xDLFdBQU0sR0FBVyxDQUFDLENBQUMsQ0FBQztRQUNsQixjQUFTLEdBQUcsS0FBSyxDQUFDO0tBMkM3QjtJQXZEQyxJQUFJLFlBQVk7UUFDZCxPQUFPLElBQUksQ0FBQyxhQUFhLENBQUM7SUFDNUIsQ0FBQztJQUNELElBQWEsWUFBWSxDQUFDLEtBQW9CO1FBQzVDLElBQUksQ0FBQyxhQUFhLEdBQUcsS0FBSyxDQUFDO1FBQzNCLElBQUksQ0FBQyxNQUFNLEdBQUcsS0FBSyxDQUFDLFNBQVMsQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLElBQUksS0FBSyxNQUFNLENBQUMsQ0FBQztJQUNoRSxDQUFDO0lBU0QsSUFBSSxRQUFRO1FBQ1YsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUN4QyxDQUFDO0lBRUQsSUFBSSxjQUFjO1FBQ2hCLE9BQU8sSUFBSSxDQUFDLFNBQVMsRUFBRSxHQUFHLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQzFDLENBQUM7SUFFRCxXQUFXLENBQUMsRUFBaUI7UUFDM0IsSUFBRyxFQUFFLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFDO1lBQzNCLElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLElBQUksS0FBSyxRQUFRLENBQUMsQ0FBQyxDQUFDLGdCQUFnQixDQUFDLENBQUMsQ0FBQyxhQUFhLENBQUM7U0FDeEU7SUFDSCxDQUFDO0lBRUQsTUFBTSxDQUFDLFdBQXdCO1FBQzdCLElBQUksV0FBVyxDQUFDLFFBQVE7WUFBRSxPQUFPO1FBRWpDLElBQUksV0FBVyxDQUFDLElBQUksS0FBSyxNQUFNLEVBQUM7WUFDOUIsSUFBRyxJQUFJLENBQUMsSUFBSSxLQUFLLFFBQVE7Z0JBQ3ZCLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDO1NBQ3pCO2FBQUk7WUFDSCxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztTQUM3QjtJQUNILENBQUM7SUFFRCxLQUFLLENBQUMsSUFBWTtRQUNoQixJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFLEdBQUcsSUFBSSxDQUFDLFFBQVMsRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztRQUNuRCxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUE7SUFDdEIsQ0FBQztJQUVELGFBQWEsQ0FBQyxLQUFhLEVBQUUsSUFBaUI7UUFDNUMsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDO0lBQ25CLENBQUM7SUFFUyxhQUFhO1FBQ3JCLElBQUcsSUFBSSxDQUFDLFNBQVM7WUFDZixJQUFJLENBQUMsU0FBUyxHQUFHLEtBQUssQ0FBQzs7WUFFdkIsSUFBSSxDQUFDLGNBQWUsQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUNqQyxDQUFDOzhHQTlEVSw0QkFBNEI7a0dBQTVCLDRCQUE0QixtUUFDekIsb0JBQW9CLHFFQ3ZCcEMsd3hCQTZCQTs7MkZEUGEsNEJBQTRCO2tCQU54QyxTQUFTOytCQUNFLDJCQUEyQixtQkFHcEIsdUJBQXVCLENBQUMsTUFBTTs4QkFJL0MsU0FBUztzQkFEUixZQUFZO3VCQUFDLG9CQUFvQjtnQkFJeEIsS0FBSztzQkFBZCxNQUFNO2dCQUNHLElBQUk7c0JBQWIsTUFBTTtnQkFLTSxZQUFZO3NCQUF4QixLQUFLO2dCQUlHLElBQUk7c0JBQVosS0FBSztnQkFDeUIsS0FBSztzQkFBbkMsS0FBSzs7c0JBQUksV0FBVzt1QkFBQyxPQUFPIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENvbXBvbmVudCxcbiAgRXZlbnRFbWl0dGVyLFxuICBIb3N0QmluZGluZyxcbiAgSW5wdXQsXG4gIE91dHB1dCxcbiAgUXVlcnlMaXN0LFxuICBTaW1wbGVDaGFuZ2VzLFxuICBWaWV3Q2hpbGRyZW4sXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgVG9vbGJhckl0ZW0sXG59IGZyb20gJy4uLy4uL2ludGVyZmFjZXMvcmljaHRleHQtdG9vbGJveC5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgQXNrRHJvcGRvd25EaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmVzJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXNrLXJpY2h0ZXh0LXRvb2xib3gtY29yZScsXG4gIHRlbXBsYXRlVXJsOiAnLi9yaWNodGV4dC10b29sYm94LWNvcmUuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9yaWNodGV4dC10b29sYm94LWNvcmUuY29tcG9uZW50LnNjc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIFJpY2h0ZXh0VG9vbGJveENvcmVDb21wb25lbnQge1xuICBAVmlld0NoaWxkcmVuKEFza0Ryb3Bkb3duRGlyZWN0aXZlKVxuICBkcm9wZG93bnM/OiBRdWVyeUxpc3Q8QXNrRHJvcGRvd25EaXJlY3RpdmU+O1xuXG4gIFxuICBAT3V0cHV0KCkgY2xvc2UgPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG4gIEBPdXRwdXQoKSB0b29sID0gbmV3IEV2ZW50RW1pdHRlcjxUb29sYmFySXRlbT4oKTtcblxuICBnZXQgdG9vbGJhckl0ZW1zKCl7XG4gICAgcmV0dXJuIHRoaXMuX3Rvb2xiYXJJdGVtcztcbiAgfVxuICBASW5wdXQoKSBzZXQgdG9vbGJhckl0ZW1zKHZhbHVlOiBUb29sYmFySXRlbVtdKSB7XG4gICAgdGhpcy5fdG9vbGJhckl0ZW1zID0gdmFsdWU7XG4gICAgdGhpcy51cmxJZHggPSB2YWx1ZS5maW5kSW5kZXgoKGl0ZW0pID0+IGl0ZW0udG9vbCA9PT0gJ2xpbmsnKTtcbiAgfVxuICBASW5wdXQoKSB0eXBlOiAndG9wYmFyJyB8ICdidWJibGUnID0gJ3RvcGJhcic7XG4gIEBJbnB1dCgpIEBIb3N0QmluZGluZygnY2xhc3MnKSBjbGFzczogJ3RvcC10b29sYm94JyB8ICdidWJibGUtdG9vbGJveCcgfCBzdHJpbmcgPSAnJztcbiAgXG4gIHByaXZhdGUgX3Rvb2xiYXJJdGVtczogVG9vbGJhckl0ZW1bXSA9IFtdO1xuICBwcml2YXRlIHVybElkeDogbnVtYmVyID0gLTE7XG4gIHByb3RlY3RlZCBpc1VybE1vZGUgPSBmYWxzZTtcblxuXG4gIGdldCBsaW5rVG9vbCgpOiBUb29sYmFySXRlbSB8IHVuZGVmaW5lZCB7XG4gICAgcmV0dXJuIHRoaXMudG9vbGJhckl0ZW1zW3RoaXMudXJsSWR4XTtcbiAgfVxuXG4gIGdldCB1cmxEcm9wZG93blJlZigpIHtcbiAgICByZXR1cm4gdGhpcy5kcm9wZG93bnM/LmdldCh0aGlzLnVybElkeCk7XG4gIH1cblxuICBuZ09uQ2hhbmdlcyhzcDogU2ltcGxlQ2hhbmdlcykge1xuICAgIGlmKHNwWyd0eXBlJ10gJiYgIXRoaXMuY2xhc3Mpe1xuICAgICAgdGhpcy5jbGFzcyA9IHRoaXMudHlwZSA9PT0gJ2J1YmJsZScgPyAnYnViYmxlLXRvb2xib3gnIDogJ3RvcC10b29sYm94JztcbiAgICB9XG4gIH1cblxuICBvblRvb2wodG9vbGJhckl0ZW06IFRvb2xiYXJJdGVtKSB7XG4gICAgaWYgKHRvb2xiYXJJdGVtLmRpc2FibGVkKSByZXR1cm47XG5cbiAgICBpZiAodG9vbGJhckl0ZW0udG9vbCA9PT0gJ2xpbmsnKXtcbiAgICAgIGlmKHRoaXMudHlwZSA9PT0gJ2J1YmJsZScpXG4gICAgICAgIHRoaXMuaXNVcmxNb2RlID0gdHJ1ZTsgICAgICBcbiAgICB9ZWxzZXtcbiAgICAgIHRoaXMudG9vbC5lbWl0KHRvb2xiYXJJdGVtKTtcbiAgICB9XG4gIH1cblxuICBvblVybChsaW5rOiBzdHJpbmcpIHtcbiAgICB0aGlzLnRvb2wuZW1pdCh7IC4uLnRoaXMubGlua1Rvb2whLCB2YWx1ZTogbGluayB9KTtcbiAgICB0aGlzLmNsb3NlVXJsSW5wdXQoKVxuICB9XG5cbiAgdHJhY2tCeVRvb2xGbihpbmRleDogbnVtYmVyLCBpdGVtOiBUb29sYmFySXRlbSkge1xuICAgIHJldHVybiBpdGVtLnRvb2w7XG4gIH1cblxuICBwcm90ZWN0ZWQgY2xvc2VVcmxJbnB1dCgpe1xuICAgIGlmKHRoaXMuaXNVcmxNb2RlKVxuICAgICAgdGhpcy5pc1VybE1vZGUgPSBmYWxzZTtcbiAgICBlbHNlXG4gICAgICB0aGlzLnVybERyb3Bkb3duUmVmIS5jbG9zZSgpO1xuICB9XG59XG4iLCI8bmctY29udGFpbmVyICpuZ0lmPVwiIWlzVXJsTW9kZTsgZWxzZSB1cmxUZW1wbGF0ZVwiPlxuICA8YnV0dG9uXG4gICAgY2xhc3M9XCJidXR0b25cIlxuICAgICpuZ0Zvcj1cImxldCB0b29sIG9mIHRvb2xiYXJJdGVtczsgdHJhY2tCeTogdHJhY2tCeVRvb2xGblwiXG4gICAgW2Rpc2FibGVkXT1cInRvb2wuZGlzYWJsZWRcIlxuICAgIChjbGljayk9XCJvblRvb2wodG9vbClcIlxuICAgIFthc2tEcm9wZG93bl09XCJ0b29sLnRvb2wgPT09ICdsaW5rJyAmJiB0eXBlID09PSAndG9wYmFyJyA/IHVybFRlbXBsYXRlIDogdW5kZWZpbmVkXCJcbiAgICBwb3NpdGlvbnM9XCJCT1RUT01fTEVGVFwiXG4gID5cbiAgICA8c3BhblxuICAgICAgY2xhc3M9XCJtYXRlcmlhbC1pY29ucyBpY29uXCJcbiAgICAgIFtuZ0NsYXNzXT1cIntcbiAgICAgICctc2VsZWN0ZWQnOiB0b29sLnNlbGVjdGVkLFxuICAgICAgJy1kaXNhYmxlZCc6IHRvb2wuZGlzYWJsZWQsXG4gICAgICAnLWJ1YmJsZSc6IHR5cGUgPT09ICdidWJibGUnLFxuICAgIH1cIlxuICAgID5cbiAgICAgIHt7IHRvb2wuaWNvbiB9fVxuICAgIDwvc3Bhbj5cbiAgPC9idXR0b24+XG48L25nLWNvbnRhaW5lcj5cblxuPG5nLXRlbXBsYXRlICN1cmxUZW1wbGF0ZT5cbiAgPGFzay1yaWNodGV4dC11cmwtcHJvbXB0XG4gICAgW3VybF09XCJsaW5rVG9vbD8udmFsdWUgfHwgJydcIlxuICAgICh1cmwpPVwib25VcmwoJGV2ZW50KVwiXG4gICAgKGtleWRvd24uZXNjYXBlKT1cImNsb3NlVXJsSW5wdXQoKVwiXG4gIC8+XG48L25nLXRlbXBsYXRlPlxuIl19
@@ -1,18 +0,0 @@
1
- import { Injectable } from '@angular/core';
2
- import Quill from 'quill';
3
- import * as i0 from "@angular/core";
4
- export class QuillBuilderService {
5
- constructor() { }
6
- getQuill() {
7
- return Quill;
8
- }
9
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.6", ngImport: i0, type: QuillBuilderService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
10
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.1.6", ngImport: i0, type: QuillBuilderService, providedIn: 'root' }); }
11
- }
12
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.6", ngImport: i0, type: QuillBuilderService, decorators: [{
13
- type: Injectable,
14
- args: [{
15
- providedIn: 'root'
16
- }]
17
- }], ctorParameters: function () { return []; } });
18
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXVpbGwtYnVpbGRlci5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYXNrc3VpdGUtY2l0cnVzL3NyYy9saWIvc2VydmljZXMvcXVpbGwtYnVpbGRlci5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxLQUFLLE1BQU0sT0FBTyxDQUFDOztBQUsxQixNQUFNLE9BQU8sbUJBQW1CO0lBRTlCLGdCQUFnQixDQUFDO0lBRWpCLFFBQVE7UUFDTixPQUFPLEtBQUssQ0FBQTtJQUNkLENBQUM7OEdBTlUsbUJBQW1CO2tIQUFuQixtQkFBbUIsY0FGbEIsTUFBTTs7MkZBRVAsbUJBQW1CO2tCQUgvQixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCBRdWlsbCBmcm9tICdxdWlsbCc7XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIFF1aWxsQnVpbGRlclNlcnZpY2Uge1xuXG4gIGNvbnN0cnVjdG9yKCkgeyB9XG5cbiAgZ2V0UXVpbGwoKXtcbiAgICByZXR1cm4gUXVpbGxcbiAgfVxufVxuIl19
@@ -1,8 +0,0 @@
1
- import Quill from 'quill';
2
- import * as i0 from "@angular/core";
3
- export declare class QuillBuilderService {
4
- constructor();
5
- getQuill(): typeof Quill;
6
- static ɵfac: i0.ɵɵFactoryDeclaration<QuillBuilderService, never>;
7
- static ɵprov: i0.ɵɵInjectableDeclaration<QuillBuilderService>;
8
- }