simpo-component-library 3.6.858 → 3.6.859
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.
- package/esm2022/lib/components/hover-elements/hover-elements.component.mjs +6 -17
- package/esm2022/lib/ecommerce/sections/product-desc/product-desc.component.mjs +3 -3
- package/esm2022/lib/elements/text-editor/text-editor.component.mjs +498 -279
- package/esm2022/lib/sections/testimonial-fullwidth/testimonial-fullwidth.component.mjs +3 -3
- package/esm2022/public-api.mjs +1 -3
- package/fesm2022/simpo-component-library.mjs +550 -522
- package/fesm2022/simpo-component-library.mjs.map +1 -1
- package/lib/components/hover-elements/hover-elements.component.d.ts +0 -3
- package/lib/components/input-fields/input-fields.component.d.ts +1 -1
- package/lib/ecommerce/sections/product-desc/product-desc.component.d.ts +1 -1
- package/lib/ecommerce/sections/schemes/schemes.component.d.ts +1 -1
- package/lib/elements/pricing-s1/pricing-s1.component.d.ts +1 -1
- package/lib/elements/text-editor/text-editor.component.d.ts +50 -35
- package/lib/sections/banner-carousel/banner-carousel.component.d.ts +2 -2
- package/lib/sections/carousel-banner/carousel-banner.component.d.ts +1 -1
- package/lib/sections/image-section/image-section.component.d.ts +2 -2
- package/lib/sections/logo-showcase/logo-showcase.component.d.ts +2 -2
- package/lib/sections/new-testimonials/new-testimonials.component.d.ts +1 -1
- package/lib/sections/pricing-section/pricing-section.component.d.ts +1 -1
- package/package.json +1 -1
- package/public-api.d.ts +0 -2
- package/simpo-component-library-3.6.859.tgz +0 -0
- package/src/lib/styles/global-styles.css +15 -0
- package/esm2022/lib/sections/testimonial-masonry/testimonial-masonry.component.mjs +0 -110
- package/esm2022/lib/sections/testimonial-masonry/testimonial-masonry.model.mjs +0 -2
- package/esm2022/lib/styles/gradient-extension.mjs +0 -62
- package/esm2022/lib/styles/text-size.extension.mjs +0 -43
- package/lib/sections/testimonial-masonry/testimonial-masonry.component.d.ts +0 -30
- package/lib/sections/testimonial-masonry/testimonial-masonry.model.d.ts +0 -24
- package/lib/styles/gradient-extension.d.ts +0 -2
- package/lib/styles/text-size.extension.d.ts +0 -10
- package/simpo-component-library-3.6.858.tgz +0 -0
|
@@ -14,9 +14,6 @@ export declare class HoverElementsComponent implements OnInit {
|
|
|
14
14
|
isMerged: boolean;
|
|
15
15
|
isEcommerce: boolean;
|
|
16
16
|
ngOnInit(): void;
|
|
17
|
-
isMenuOpen: boolean;
|
|
18
|
-
toggleMenu(event: Event): void;
|
|
19
|
-
onDocumentClick(): void;
|
|
20
17
|
editSection(): void;
|
|
21
18
|
restyleSection(event: any): void;
|
|
22
19
|
changeContent(event: any): void;
|
|
@@ -13,7 +13,7 @@ export declare class InputFieldsComponent implements OnChanges {
|
|
|
13
13
|
constructor(elementRef: ElementRef);
|
|
14
14
|
ngOnChanges(changes: SimpleChanges): void;
|
|
15
15
|
handleMoneyInput(event: any): void;
|
|
16
|
-
get getTextColor(): "#
|
|
16
|
+
get getTextColor(): "#FFF" | "#000";
|
|
17
17
|
interpolateColor(color1: string, color2: string, factor: number): string;
|
|
18
18
|
padZero(str: string, length: number): string;
|
|
19
19
|
generateColorBasedOnNumber(number: number): string;
|
|
@@ -124,7 +124,7 @@ export declare class ProductDescComponent extends BaseSection {
|
|
|
124
124
|
getTextColor(color: any): "#000000" | "#ffffff";
|
|
125
125
|
languages: string[];
|
|
126
126
|
selectedLang: string;
|
|
127
|
-
getClass(map: any): "col-
|
|
127
|
+
getClass(map: any): "col-4" | "col-6" | "col-3" | "width-max";
|
|
128
128
|
onFindInStore(id: string): void;
|
|
129
129
|
onBookAppointment(): void;
|
|
130
130
|
isDetails: boolean;
|
|
@@ -21,7 +21,7 @@ export declare class SchemesComponent extends BaseSection {
|
|
|
21
21
|
get stylesLayout(): LayOutModel;
|
|
22
22
|
get spacingLayout(): SpacingModel;
|
|
23
23
|
getParentClass(): "" | "overflow-scroll flex-nowrap";
|
|
24
|
-
getClass(index: number): "col-12" | "col-6
|
|
24
|
+
getClass(index: number): "col-12" | "col-6" | "col-6 mb-2" | "col-12 mb-2";
|
|
25
25
|
showSchemeDetails(scheme: any): void;
|
|
26
26
|
static ɵfac: i0.ɵɵFactoryDeclaration<SchemesComponent, never>;
|
|
27
27
|
static ɵcmp: i0.ɵɵComponentDeclaration<SchemesComponent, "simpo-schemes", never, { "data": { "alias": "data"; "required": false; }; "edit": { "alias": "edit"; "required": false; }; "delete": { "alias": "delete"; "required": false; }; "index": { "alias": "index"; "required": false; }; }, {}, never, never, true, never>;
|
|
@@ -15,7 +15,7 @@ export declare class PricingS1Component extends BaseSection {
|
|
|
15
15
|
editSection(): void;
|
|
16
16
|
getButtonId(): string;
|
|
17
17
|
redirectTo(data: any): void;
|
|
18
|
-
getClass(): "col-
|
|
18
|
+
getClass(): "col-4" | "col-12" | "col-5";
|
|
19
19
|
static ɵfac: i0.ɵɵFactoryDeclaration<PricingS1Component, never>;
|
|
20
20
|
static ɵcmp: i0.ɵɵComponentDeclaration<PricingS1Component, "simpo-pricing-s1", never, { "data": { "alias": "data"; "required": false; }; "edit": { "alias": "edit"; "required": false; }; }, {}, never, never, true, never>;
|
|
21
21
|
}
|
|
@@ -1,50 +1,65 @@
|
|
|
1
|
-
import { ElementRef, EventEmitter,
|
|
2
|
-
import {
|
|
1
|
+
import { ElementRef, EventEmitter, NgZone } from '@angular/core';
|
|
2
|
+
import { ElementServiceService } from '../editor-service.service';
|
|
3
3
|
import * as i0 from "@angular/core";
|
|
4
|
-
export declare class TextEditorComponent
|
|
4
|
+
export declare class TextEditorComponent {
|
|
5
|
+
private editorService;
|
|
6
|
+
private platformId;
|
|
7
|
+
private ngZone;
|
|
8
|
+
toolbar: ElementRef;
|
|
9
|
+
editor: ElementRef;
|
|
10
|
+
colorPicker: ElementRef;
|
|
11
|
+
parentElement: ElementRef;
|
|
12
|
+
suggestion: ElementRef;
|
|
13
|
+
private lastGradientSpan;
|
|
5
14
|
value: string;
|
|
6
15
|
valueChange: EventEmitter<string>;
|
|
7
16
|
editable: boolean;
|
|
8
17
|
sectionId?: string;
|
|
9
18
|
label?: string;
|
|
10
19
|
type?: string;
|
|
11
|
-
|
|
12
|
-
editor: Editor;
|
|
13
|
-
selectedFontSize: string;
|
|
14
|
-
showToolbar: boolean;
|
|
15
|
-
toolbarX: number;
|
|
20
|
+
show: boolean;
|
|
16
21
|
toolbarY: number;
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
22
|
+
suggestionY: number;
|
|
23
|
+
rightZero: boolean;
|
|
24
|
+
showSuggestion: boolean;
|
|
25
|
+
toolbarData: any;
|
|
21
26
|
selectedColorType: 'SOLID' | 'GRADIENT';
|
|
27
|
+
primaryColor: string;
|
|
28
|
+
secondaryColor: any;
|
|
29
|
+
constructor(editorService: ElementServiceService, platformId: Object, ngZone: NgZone);
|
|
30
|
+
ngOnInit(): void;
|
|
22
31
|
ngOnDestroy(): void;
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
32
|
+
private selectRange;
|
|
33
|
+
private markSelection;
|
|
34
|
+
private restoreSelectionFromMarkers;
|
|
35
|
+
showToolbar(event: MouseEvent): void;
|
|
36
|
+
rememberSelection(e: MouseEvent): void;
|
|
37
|
+
private getActiveRange;
|
|
38
|
+
setColorMode(mode: 'SOLID' | 'GRADIENT'): void;
|
|
39
|
+
private wrapRangeWithGradient;
|
|
40
|
+
private unwrapGradientInRange;
|
|
41
|
+
hideToolbar(event: MouseEvent): void;
|
|
42
|
+
formatText(command: string, value?: string): void;
|
|
43
|
+
updateFSforOL(): void;
|
|
44
|
+
private setStyleWithCSS;
|
|
45
|
+
private toLegacyFontStep;
|
|
46
|
+
private normalizeFontSizeToCss;
|
|
47
|
+
changeFontSize(event: any): void;
|
|
48
|
+
changeColor(event: any): void;
|
|
49
|
+
updateText(event: Event): void;
|
|
50
|
+
onFormatChange(event: Event): void;
|
|
51
|
+
openColorPicker(): void;
|
|
52
|
+
readFormattingProperties(): void;
|
|
53
|
+
reFormattingData(): void;
|
|
54
|
+
changeGradientColor(): void;
|
|
55
|
+
applyGradientToText(gradientValue: string): void;
|
|
56
|
+
regenerateText(): void;
|
|
57
|
+
private savedRange;
|
|
26
58
|
saveSelection(): void;
|
|
27
59
|
restoreSelection(): void;
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
handleWindowFocus: () => void;
|
|
32
|
-
handleSelection(): void;
|
|
33
|
-
toggleBold(): void;
|
|
34
|
-
toggleItalic(): void;
|
|
35
|
-
toggleUnderline(): void;
|
|
36
|
-
toggleOrderedList(): void;
|
|
37
|
-
toggleBulletList(): void;
|
|
38
|
-
setAlign(alignment: 'left' | 'center' | 'right'): void;
|
|
39
|
-
changeColor(): void;
|
|
40
|
-
applyGradient(): void;
|
|
41
|
-
onMouseDown(): void;
|
|
42
|
-
isFontSizeMenuOpen: boolean;
|
|
43
|
-
toolbarData: any;
|
|
44
|
-
toggleFontSizeMenu(event: Event): void;
|
|
45
|
-
getDisplayFontSize(): string;
|
|
46
|
-
selectCustomFontSize(cssSize: string, event: Event): void;
|
|
47
|
-
changeFontSize(fontSize: string): void;
|
|
60
|
+
onPaste(event: ClipboardEvent): void;
|
|
61
|
+
stripStyles(html: string): string;
|
|
62
|
+
getText(): string;
|
|
48
63
|
static ɵfac: i0.ɵɵFactoryDeclaration<TextEditorComponent, never>;
|
|
49
64
|
static ɵcmp: i0.ɵɵComponentDeclaration<TextEditorComponent, "simpo-text-editor", never, { "value": { "alias": "value"; "required": false; }; "editable": { "alias": "editable"; "required": false; }; "sectionId": { "alias": "sectionId"; "required": false; }; "label": { "alias": "label"; "required": false; }; "type": { "alias": "type"; "required": false; }; }, { "valueChange": "valueChange"; }, never, never, true, never>;
|
|
50
65
|
}
|
|
@@ -33,8 +33,8 @@ export declare class BannerCarouselComponent extends BaseSection implements OnIn
|
|
|
33
33
|
get stylesLayout(): LayOutModel;
|
|
34
34
|
get getBlurValue(): "NONE" | "LIGHT" | "MODERATE" | "STRONG" | "VERY_STRONG" | undefined;
|
|
35
35
|
get getBackgroundColor(): BackgroundModel;
|
|
36
|
-
get getBackgroundOpacity(): "0
|
|
37
|
-
opacityValue(value: OverlayValue): "
|
|
36
|
+
get getBackgroundOpacity(): "1" | "0" | "0.7" | "0.5" | "0.6" | "0.8";
|
|
37
|
+
opacityValue(value: OverlayValue): "1" | "0.7" | "0.5" | "0.6" | "0.8";
|
|
38
38
|
editSection(): void;
|
|
39
39
|
getScreenSize(): number;
|
|
40
40
|
getSectionMinHeight(): string;
|
|
@@ -25,7 +25,7 @@ export declare class CarouselBannerComponent extends BaseSection implements OnIn
|
|
|
25
25
|
get canMergeNavbar(): boolean | undefined;
|
|
26
26
|
get isBorderlessImage(): boolean | undefined;
|
|
27
27
|
get getPositionLayout(): PositionLayoutModal;
|
|
28
|
-
opacityValue(value: OverlayValue): "0
|
|
28
|
+
opacityValue(value: OverlayValue): "0" | "0.7" | "0.5" | "0.3" | "0.2";
|
|
29
29
|
editSection(): void;
|
|
30
30
|
static ɵfac: i0.ɵɵFactoryDeclaration<CarouselBannerComponent, never>;
|
|
31
31
|
static ɵcmp: i0.ɵɵComponentDeclaration<CarouselBannerComponent, "simpo-carousel-banner", never, { "data": { "alias": "data"; "required": false; }; "index": { "alias": "index"; "required": false; }; "edit": { "alias": "edit"; "required": false; }; "delete": { "alias": "delete"; "required": false; }; "customClass": { "alias": "customClass"; "required": false; }; "nextComponentColor": { "alias": "nextComponentColor"; "required": false; }; }, {}, never, never, true, never>;
|
|
@@ -20,9 +20,9 @@ export declare class ImageSectionComponent extends BaseSection {
|
|
|
20
20
|
constructor(_eventService: EventsService);
|
|
21
21
|
ngOnInit(): void;
|
|
22
22
|
get canMergeNavbar(): boolean | undefined;
|
|
23
|
-
get getBackgroundOpacity(): "
|
|
23
|
+
get getBackgroundOpacity(): "1" | "0.7" | "0.5" | "0.3" | "0.2";
|
|
24
24
|
get stylesLayout(): LayOutModel;
|
|
25
|
-
opacityValue(value: OverlayValue): "
|
|
25
|
+
opacityValue(value: OverlayValue): "1" | "0.7" | "0.5" | "0.3" | "0.2";
|
|
26
26
|
editSection(): void;
|
|
27
27
|
redirectTo(): void;
|
|
28
28
|
static ɵfac: i0.ɵɵFactoryDeclaration<ImageSectionComponent, never>;
|
|
@@ -23,8 +23,8 @@ export declare class LogoShowcaseComponent extends BaseSection implements OnInit
|
|
|
23
23
|
constructor(_eventService: EventsService);
|
|
24
24
|
ngOnInit(): void;
|
|
25
25
|
get stylesLayout(): LayOutModel;
|
|
26
|
-
get animationDuration(): "
|
|
27
|
-
get animationDirection(): "reverse" | "normal"
|
|
26
|
+
get animationDuration(): "3s" | "4s" | logoSpeed.Normal | "18s" | "6s" | "5s";
|
|
27
|
+
get animationDirection(): logoDirection.Left | "reverse" | "normal";
|
|
28
28
|
get isMobile(): boolean;
|
|
29
29
|
get getPositionLayout(): PositionLayoutModal;
|
|
30
30
|
screenWidth: number;
|
|
@@ -24,7 +24,7 @@ export declare class NewTestimonialsComponent extends BaseSection {
|
|
|
24
24
|
idx: number;
|
|
25
25
|
getImageData(): import("../../styles/style.model").Image | undefined;
|
|
26
26
|
getImageUrl(): string | undefined;
|
|
27
|
-
getImageType(): "
|
|
27
|
+
getImageType(): "Image" | "Video";
|
|
28
28
|
getLength(): number;
|
|
29
29
|
editSection(): void;
|
|
30
30
|
stopPropagation(event: any): void;
|
|
@@ -23,7 +23,7 @@ export declare class PricingSectionComponent extends BaseSection {
|
|
|
23
23
|
getButtonId(): string;
|
|
24
24
|
editSection(): void;
|
|
25
25
|
redirectTo(data: any): void;
|
|
26
|
-
getClass(): "col-
|
|
26
|
+
getClass(): "col-4" | "col-12" | "col-6" | "col-3";
|
|
27
27
|
getAlignment(): "justify-content-start" | "justify-content-center" | "justify-content-end";
|
|
28
28
|
static ɵfac: i0.ɵɵFactoryDeclaration<PricingSectionComponent, never>;
|
|
29
29
|
static ɵcmp: i0.ɵɵComponentDeclaration<PricingSectionComponent, "simpo-pricing-section", never, { "data": { "alias": "data"; "required": false; }; "index": { "alias": "index"; "required": false; }; "edit": { "alias": "edit"; "required": false; }; "customClass": { "alias": "customClass"; "required": false; }; "delete": { "alias": "delete"; "required": false; }; "nextComponentColor": { "alias": "nextComponentColor"; "required": false; }; }, {}, never, never, true, never>;
|
package/package.json
CHANGED
package/public-api.d.ts
CHANGED
|
@@ -49,8 +49,6 @@ export * from './lib/sections/scheme-detail/scheme-detail.component';
|
|
|
49
49
|
export * from './lib/ecommerce/sections/schemes/schemes.component';
|
|
50
50
|
export * from './lib/sections/image-grid-hotspot/image-grid-hotspot.component';
|
|
51
51
|
export * from './lib/sections/testimonial-slider/testimonial-slider.component';
|
|
52
|
-
export * from './lib/sections/testimonial-masonry/testimonial-masonry.component';
|
|
53
|
-
export * from './lib/sections/testimonial-masonry/testimonial-masonry.model';
|
|
54
52
|
export * from './lib/ecommerce/sections/featured-products/featured-products.component';
|
|
55
53
|
export * from './lib/ecommerce/sections/featured-category/featured-category.component';
|
|
56
54
|
export * from './lib/ecommerce/sections/product-desc/product-desc.component';
|
|
Binary file
|
|
@@ -82,6 +82,11 @@
|
|
|
82
82
|
font-size: 18px !important;
|
|
83
83
|
line-height: 20px !important;
|
|
84
84
|
}
|
|
85
|
+
|
|
86
|
+
p {
|
|
87
|
+
font-size: 16px !important;
|
|
88
|
+
line-height: 21px !important;
|
|
89
|
+
}
|
|
85
90
|
}
|
|
86
91
|
|
|
87
92
|
}
|
|
@@ -112,6 +117,11 @@
|
|
|
112
117
|
font-size: 16px;
|
|
113
118
|
line-height: 24px;
|
|
114
119
|
}
|
|
120
|
+
|
|
121
|
+
p {
|
|
122
|
+
font-size: 14px;
|
|
123
|
+
line-height: 21px;
|
|
124
|
+
}
|
|
115
125
|
}
|
|
116
126
|
|
|
117
127
|
}
|
|
@@ -141,6 +151,11 @@
|
|
|
141
151
|
font-size: 16px;
|
|
142
152
|
line-height: 24px;
|
|
143
153
|
}
|
|
154
|
+
|
|
155
|
+
p {
|
|
156
|
+
font-size: 14px;
|
|
157
|
+
line-height: 21px;
|
|
158
|
+
}
|
|
144
159
|
}
|
|
145
160
|
|
|
146
161
|
.link-editor {
|
|
@@ -1,110 +0,0 @@
|
|
|
1
|
-
import { Component, HostListener, Input } from '@angular/core';
|
|
2
|
-
import { CommonModule, NgFor, NgIf } from '@angular/common';
|
|
3
|
-
import { SpacingAroundDirective } from '../../directive/spacing-around.directive';
|
|
4
|
-
import { BackgroundDirective } from '../../directive/background-directive';
|
|
5
|
-
import { HoverDirective } from '../../directive/hover-element-directive';
|
|
6
|
-
import { SpacingHorizontalDirective } from '../../directive/spacing-horizontal.directive';
|
|
7
|
-
import { CornerDirective } from '../../directive/corner-directive';
|
|
8
|
-
import { SimpoHoverBorderDirective } from '../../directive/hoverborder.directive';
|
|
9
|
-
import { SimpoElementsModule } from '../../elements/index';
|
|
10
|
-
import { SimpoComponentModule } from '../../components/index';
|
|
11
|
-
import { BorderDirective } from '../../directive/border-directive';
|
|
12
|
-
import { ContainerFitDirective } from '../../directive/container-fir.directive';
|
|
13
|
-
import { simpoConetenAlignmentDirective } from '../../directive/content-alignment-directive';
|
|
14
|
-
import { ContentFitDirective } from '../../directive/content-fit-directive';
|
|
15
|
-
import { AnimationDirective } from '../../directive/animation-directive';
|
|
16
|
-
import { SimpoContainerAligment } from '../../directive/container-alignment.directive';
|
|
17
|
-
import { TextBackgroundDirectiveDirective } from '../../directive/text-background-directive.directive';
|
|
18
|
-
import { OverlayDirective } from '../../directive/overlay-directive';
|
|
19
|
-
import { TextEditorComponent } from '../../elements/text-editor/text-editor.component';
|
|
20
|
-
import { ImageEditorDirective } from '../../directive/image-editor.directive';
|
|
21
|
-
import BaseSection from '../BaseSection';
|
|
22
|
-
import * as i0 from "@angular/core";
|
|
23
|
-
import * as i1 from "../../services/events.service";
|
|
24
|
-
import * as i2 from "@angular/common";
|
|
25
|
-
import * as i3 from "../../elements/svg-divider/svg-divider.component";
|
|
26
|
-
import * as i4 from "../../components/hover-elements/hover-elements.component";
|
|
27
|
-
import * as i5 from "../../components/delete-hover-element/delete-hover-element.component";
|
|
28
|
-
export class TestimonialMasonryComponent extends BaseSection {
|
|
29
|
-
constructor(_eventService) {
|
|
30
|
-
super();
|
|
31
|
-
this._eventService = _eventService;
|
|
32
|
-
this.screenWidth = 0;
|
|
33
|
-
}
|
|
34
|
-
ngOnInit() {
|
|
35
|
-
this.content = this.data?.content;
|
|
36
|
-
this.styles = this.data?.styles;
|
|
37
|
-
this.getScreenSize();
|
|
38
|
-
}
|
|
39
|
-
get stylesLayout() {
|
|
40
|
-
return { ...this.styles?.layout };
|
|
41
|
-
}
|
|
42
|
-
get activeItems() {
|
|
43
|
-
return this.content?.listItem?.data?.filter((item) => item.status !== false) ?? [];
|
|
44
|
-
}
|
|
45
|
-
getQuote(item) {
|
|
46
|
-
return item?.inputText?.[0]?.value ?? '';
|
|
47
|
-
}
|
|
48
|
-
getAuthor(item) {
|
|
49
|
-
return item?.inputText?.[1]?.value ?? '';
|
|
50
|
-
}
|
|
51
|
-
getRole(item) {
|
|
52
|
-
return item?.inputText?.[2]?.value ?? '';
|
|
53
|
-
}
|
|
54
|
-
getAvatarUrl(item) {
|
|
55
|
-
return item?.image?.url ?? '';
|
|
56
|
-
}
|
|
57
|
-
editSection() {
|
|
58
|
-
this._eventService.toggleEditorEvent.emit(false);
|
|
59
|
-
setTimeout(() => {
|
|
60
|
-
this._eventService.editSection.emit({ data: this.data });
|
|
61
|
-
}, 100);
|
|
62
|
-
}
|
|
63
|
-
getScreenSize() {
|
|
64
|
-
this.screenWidth = window.innerWidth;
|
|
65
|
-
}
|
|
66
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: TestimonialMasonryComponent, deps: [{ token: i1.EventsService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
67
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: TestimonialMasonryComponent, isStandalone: true, selector: "simpo-testimonial-masonry", inputs: { data: "data", edit: "edit", delete: "delete", customClass: "customClass", nextComponentColor: "nextComponentColor", index: "index" }, host: { listeners: { "window:resize": "getScreenSize($event)" } }, usesInheritance: true, ngImport: i0, template: "<section class=\"main-container hover-effect\" simpoHover (hovering)=\"showEditTabs($event)\">\r\n <div class=\"spacing-around\" [spacingAround]=\"stylesLayout\" [simpoBorder]=\"styles?.border\" [id]=\"data?.id\">\r\n <div class=\"parent-div\" [id]=\"data?.id\" [simpoCorner]=\"styles?.corners\" [simpoBackground]=\"styles?.background\">\r\n <div [simpoOverlay]=\"styles?.background\" [simpoLayout]=\"styles?.layout\" [id]=\"data?.id\"\r\n [spacingHorizontal]=\"stylesLayout\" class=\"flex-column\">\r\n\r\n <!-- Heading Block -->\r\n <div class=\"header-block mb-3\" [simpoAnimation]=\"styles?.animation\">\r\n <ng-container *ngFor=\"let text of content?.inputText\">\r\n <simpo-text-editor [(value)]=\"text.value\" [editable]=\"edit || false\"></simpo-text-editor>\r\n </ng-container>\r\n </div>\r\n\r\n <!-- Masonry Grid -->\r\n <div class=\"masonry-grid\" [simpoAnimation]=\"styles?.animation\">\r\n <div class=\"masonry-card\" *ngFor=\"let item of activeItems; let i = index\">\r\n <!-- Quote Icon -->\r\n <div class=\"quote-icon\">\r\n <svg width=\"28\" height=\"22\" viewBox=\"0 0 36 31\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path\r\n d=\"M35.3998 3.29993C35.5998 3.09993 35.7998 2.69993 35.5998 2.29993C35.3998 2.09993 34.9998 1.69993 34.5998 0.899925C33.9998 0.699925 33.5998 0.699926 32.9998 1.09993C25.3998 5.89993 21.1998 11.4999 20.3998 17.8999C18.9998 27.8999 27.9998 32.6999 32.5998 28.2999C37.1998 23.8999 34.3998 18.2999 31.1998 16.6999C27.9998 15.0999 25.9998 15.6999 26.1998 13.6999C26.5998 11.6999 31.1998 6.09993 35.3998 3.29993ZM14.7998 1.09993C14.1998 0.699926 13.5998 0.699926 13.1998 1.09993C5.59983 5.89993 1.39983 11.4999 0.599832 18.0999C-0.800168 28.0999 8.19983 32.8999 12.7998 28.4999C17.3998 24.0999 14.5998 18.4999 11.3998 16.8999C7.99983 15.4999 5.99983 16.0999 6.39983 13.8999C6.79983 11.8999 11.3998 6.29993 15.5998 3.49993C15.7998 3.29993 15.9998 2.89993 15.7998 2.49993C15.5998 2.29993 15.1998 1.89993 14.7998 1.09993Z\"\r\n [attr.fill]=\"styles?.background?.accentColor || '#6C8EBF'\" />\r\n </svg>\r\n </div>\r\n\r\n <!-- Quote Text -->\r\n <div class=\"quote-text\">\r\n <simpo-text-editor [(value)]=\"item.inputText[0].value\" [editable]=\"edit || false\"></simpo-text-editor>\r\n </div>\r\n\r\n <!-- Author Row -->\r\n <div class=\"author-row\">\r\n <img *ngIf=\"getAvatarUrl(item)\" [src]=\"getAvatarUrl(item)\" class=\"avatar\" [alt]=\"getAuthor(item)\"\r\n [appImageEditor]=\"edit || false\" [imageData]=\"item.image\" [sectionId]=\"data?.id\" loading=\"lazy\" />\r\n <div class=\"author-info\">\r\n <simpo-text-editor [(value)]=\"item.inputText[1].value\" [editable]=\"edit || false\"></simpo-text-editor>\r\n <simpo-text-editor *ngIf=\"item.inputText[2]\" [(value)]=\"item.inputText[2].value\"\r\n [editable]=\"edit || false\"></simpo-text-editor>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <!-- Divider -->\r\n <ng-container *ngIf=\"styles?.devider?.display\">\r\n <simpo-svg-divider [dividerType]=\"styles?.devider?.deviderType\"\r\n [color]=\"nextComponentColor?.color\"></simpo-svg-divider>\r\n </ng-container>\r\n\r\n <!-- Hover / Edit Controls -->\r\n <div [ngClass]=\"{'hover_effect': edit}\" *ngIf=\"showEditors\">\r\n <simpo-hover-elements [data]=\"data\" [index]=\"index\" [editOptions]=\"edit\"></simpo-hover-elements>\r\n </div>\r\n <div *ngIf=\"showDelete\" [ngClass]=\"{'hover_effect': delete}\">\r\n <simpo-delete-hover-element [data]=\"data\" [index]=\"index\"></simpo-delete-hover-element>\r\n </div>\r\n</section>", styles: [".masonry-grid{display:grid;grid-auto-flow:column;grid-template-rows:repeat(2,1fr);grid-auto-columns:364px;gap:24px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;width:95%;-webkit-mask-image:linear-gradient(to right,transparent 0%,black 8%,black 92%,transparent 100%);mask-image:linear-gradient(to right,transparent 0%,black 8%,black 92%,transparent 100%);-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.masonry-grid .masonry-card:nth-child(odd){transform:translate(0)}.masonry-grid .masonry-card:nth-child(2n){transform:translate(40%)}.hover_effect{position:unset;width:100%;top:0;left:0;height:100%}@media (max-width: 575px){.masonry-grid{column-count:1}}.masonry-card{break-inside:avoid;display:flex;flex-direction:column;gap:14px;background:#fff;border:1px solid #E8EDF5;border-radius:12px;padding:24px;margin-bottom:20px;box-shadow:0 2px 12px #0000000a;transition:box-shadow .25s ease,transform .25s ease}.quote-icon svg{display:block}.author-row{display:flex;align-items:center;gap:12px;margin-top:4px}.avatar{width:44px;height:44px;border-radius:50%;object-fit:cover;flex-shrink:0;border:2px solid #E8EDF5}.author-info{display:flex;flex-direction:column}.header-block{text-align:center;padding-bottom:8px}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: SpacingAroundDirective, selector: "[spacingAround]", inputs: ["spacingAround", "backgroundInfo"] }, { kind: "directive", type: BackgroundDirective, selector: "[simpoBackground]", inputs: ["simpoBackground", "scrollValue"] }, { kind: "directive", type: HoverDirective, selector: "[simpoHover]", outputs: ["hovering"] }, { kind: "directive", type: SpacingHorizontalDirective, selector: "[spacingHorizontal]", inputs: ["spacingHorizontal", "isHeader"] }, { kind: "directive", type: CornerDirective, selector: "[simpoCorner]", inputs: ["simpoCorner"] }, { kind: "ngmodule", type: SimpoElementsModule }, { kind: "component", type: i3.SvgDividerComponent, selector: "simpo-svg-divider", inputs: ["dividerType", "color"] }, { kind: "ngmodule", type: SimpoComponentModule }, { kind: "component", type: i4.HoverElementsComponent, selector: "simpo-hover-elements", inputs: ["data", "index", "editOptions", "isMerged", "isEcommerce"], outputs: ["edit"] }, { kind: "component", type: i5.DeleteHoverElementComponent, selector: "simpo-delete-hover-element", inputs: ["index", "data"], outputs: ["edit"] }, { kind: "directive", type: BorderDirective, selector: "[simpoBorder]", inputs: ["simpoBorder"] }, { kind: "directive", type: AnimationDirective, selector: "[simpoAnimation]", inputs: ["simpoAnimation"] }, { kind: "directive", type: ContentFitDirective, selector: "[simpoLayout]", inputs: ["simpoLayout"] }, { kind: "directive", type: OverlayDirective, selector: "[simpoOverlay]", inputs: ["simpoOverlay"] }, { kind: "component", type: TextEditorComponent, selector: "simpo-text-editor", inputs: ["value", "editable", "sectionId", "label", "type"], outputs: ["valueChange"] }, { kind: "directive", type: ImageEditorDirective, selector: "[appImageEditor]", inputs: ["appImageEditor", "imageData", "sectionId", "showIcon", "iconData"] }] }); }
|
|
68
|
-
}
|
|
69
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: TestimonialMasonryComponent, decorators: [{
|
|
70
|
-
type: Component,
|
|
71
|
-
args: [{ selector: 'simpo-testimonial-masonry', standalone: true, imports: [
|
|
72
|
-
CommonModule,
|
|
73
|
-
NgFor,
|
|
74
|
-
NgIf,
|
|
75
|
-
SpacingAroundDirective,
|
|
76
|
-
BackgroundDirective,
|
|
77
|
-
HoverDirective,
|
|
78
|
-
SpacingHorizontalDirective,
|
|
79
|
-
CornerDirective,
|
|
80
|
-
SimpoHoverBorderDirective,
|
|
81
|
-
SimpoElementsModule,
|
|
82
|
-
SimpoComponentModule,
|
|
83
|
-
BorderDirective,
|
|
84
|
-
ContainerFitDirective,
|
|
85
|
-
simpoConetenAlignmentDirective,
|
|
86
|
-
AnimationDirective,
|
|
87
|
-
SimpoContainerAligment,
|
|
88
|
-
ContentFitDirective,
|
|
89
|
-
TextBackgroundDirectiveDirective,
|
|
90
|
-
OverlayDirective,
|
|
91
|
-
TextEditorComponent,
|
|
92
|
-
ImageEditorDirective,
|
|
93
|
-
], template: "<section class=\"main-container hover-effect\" simpoHover (hovering)=\"showEditTabs($event)\">\r\n <div class=\"spacing-around\" [spacingAround]=\"stylesLayout\" [simpoBorder]=\"styles?.border\" [id]=\"data?.id\">\r\n <div class=\"parent-div\" [id]=\"data?.id\" [simpoCorner]=\"styles?.corners\" [simpoBackground]=\"styles?.background\">\r\n <div [simpoOverlay]=\"styles?.background\" [simpoLayout]=\"styles?.layout\" [id]=\"data?.id\"\r\n [spacingHorizontal]=\"stylesLayout\" class=\"flex-column\">\r\n\r\n <!-- Heading Block -->\r\n <div class=\"header-block mb-3\" [simpoAnimation]=\"styles?.animation\">\r\n <ng-container *ngFor=\"let text of content?.inputText\">\r\n <simpo-text-editor [(value)]=\"text.value\" [editable]=\"edit || false\"></simpo-text-editor>\r\n </ng-container>\r\n </div>\r\n\r\n <!-- Masonry Grid -->\r\n <div class=\"masonry-grid\" [simpoAnimation]=\"styles?.animation\">\r\n <div class=\"masonry-card\" *ngFor=\"let item of activeItems; let i = index\">\r\n <!-- Quote Icon -->\r\n <div class=\"quote-icon\">\r\n <svg width=\"28\" height=\"22\" viewBox=\"0 0 36 31\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path\r\n d=\"M35.3998 3.29993C35.5998 3.09993 35.7998 2.69993 35.5998 2.29993C35.3998 2.09993 34.9998 1.69993 34.5998 0.899925C33.9998 0.699925 33.5998 0.699926 32.9998 1.09993C25.3998 5.89993 21.1998 11.4999 20.3998 17.8999C18.9998 27.8999 27.9998 32.6999 32.5998 28.2999C37.1998 23.8999 34.3998 18.2999 31.1998 16.6999C27.9998 15.0999 25.9998 15.6999 26.1998 13.6999C26.5998 11.6999 31.1998 6.09993 35.3998 3.29993ZM14.7998 1.09993C14.1998 0.699926 13.5998 0.699926 13.1998 1.09993C5.59983 5.89993 1.39983 11.4999 0.599832 18.0999C-0.800168 28.0999 8.19983 32.8999 12.7998 28.4999C17.3998 24.0999 14.5998 18.4999 11.3998 16.8999C7.99983 15.4999 5.99983 16.0999 6.39983 13.8999C6.79983 11.8999 11.3998 6.29993 15.5998 3.49993C15.7998 3.29993 15.9998 2.89993 15.7998 2.49993C15.5998 2.29993 15.1998 1.89993 14.7998 1.09993Z\"\r\n [attr.fill]=\"styles?.background?.accentColor || '#6C8EBF'\" />\r\n </svg>\r\n </div>\r\n\r\n <!-- Quote Text -->\r\n <div class=\"quote-text\">\r\n <simpo-text-editor [(value)]=\"item.inputText[0].value\" [editable]=\"edit || false\"></simpo-text-editor>\r\n </div>\r\n\r\n <!-- Author Row -->\r\n <div class=\"author-row\">\r\n <img *ngIf=\"getAvatarUrl(item)\" [src]=\"getAvatarUrl(item)\" class=\"avatar\" [alt]=\"getAuthor(item)\"\r\n [appImageEditor]=\"edit || false\" [imageData]=\"item.image\" [sectionId]=\"data?.id\" loading=\"lazy\" />\r\n <div class=\"author-info\">\r\n <simpo-text-editor [(value)]=\"item.inputText[1].value\" [editable]=\"edit || false\"></simpo-text-editor>\r\n <simpo-text-editor *ngIf=\"item.inputText[2]\" [(value)]=\"item.inputText[2].value\"\r\n [editable]=\"edit || false\"></simpo-text-editor>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <!-- Divider -->\r\n <ng-container *ngIf=\"styles?.devider?.display\">\r\n <simpo-svg-divider [dividerType]=\"styles?.devider?.deviderType\"\r\n [color]=\"nextComponentColor?.color\"></simpo-svg-divider>\r\n </ng-container>\r\n\r\n <!-- Hover / Edit Controls -->\r\n <div [ngClass]=\"{'hover_effect': edit}\" *ngIf=\"showEditors\">\r\n <simpo-hover-elements [data]=\"data\" [index]=\"index\" [editOptions]=\"edit\"></simpo-hover-elements>\r\n </div>\r\n <div *ngIf=\"showDelete\" [ngClass]=\"{'hover_effect': delete}\">\r\n <simpo-delete-hover-element [data]=\"data\" [index]=\"index\"></simpo-delete-hover-element>\r\n </div>\r\n</section>", styles: [".masonry-grid{display:grid;grid-auto-flow:column;grid-template-rows:repeat(2,1fr);grid-auto-columns:364px;gap:24px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;width:95%;-webkit-mask-image:linear-gradient(to right,transparent 0%,black 8%,black 92%,transparent 100%);mask-image:linear-gradient(to right,transparent 0%,black 8%,black 92%,transparent 100%);-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.masonry-grid .masonry-card:nth-child(odd){transform:translate(0)}.masonry-grid .masonry-card:nth-child(2n){transform:translate(40%)}.hover_effect{position:unset;width:100%;top:0;left:0;height:100%}@media (max-width: 575px){.masonry-grid{column-count:1}}.masonry-card{break-inside:avoid;display:flex;flex-direction:column;gap:14px;background:#fff;border:1px solid #E8EDF5;border-radius:12px;padding:24px;margin-bottom:20px;box-shadow:0 2px 12px #0000000a;transition:box-shadow .25s ease,transform .25s ease}.quote-icon svg{display:block}.author-row{display:flex;align-items:center;gap:12px;margin-top:4px}.avatar{width:44px;height:44px;border-radius:50%;object-fit:cover;flex-shrink:0;border:2px solid #E8EDF5}.author-info{display:flex;flex-direction:column}.header-block{text-align:center;padding-bottom:8px}\n"] }]
|
|
94
|
-
}], ctorParameters: () => [{ type: i1.EventsService }], propDecorators: { data: [{
|
|
95
|
-
type: Input
|
|
96
|
-
}], edit: [{
|
|
97
|
-
type: Input
|
|
98
|
-
}], delete: [{
|
|
99
|
-
type: Input
|
|
100
|
-
}], customClass: [{
|
|
101
|
-
type: Input
|
|
102
|
-
}], nextComponentColor: [{
|
|
103
|
-
type: Input
|
|
104
|
-
}], index: [{
|
|
105
|
-
type: Input
|
|
106
|
-
}], getScreenSize: [{
|
|
107
|
-
type: HostListener,
|
|
108
|
-
args: ['window:resize', ['$event']]
|
|
109
|
-
}] } });
|
|
110
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVzdGltb25pYWwtbWFzb25yeS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zaW1wby11aS9zcmMvbGliL3NlY3Rpb25zL3Rlc3RpbW9uaWFsLW1hc29ucnkvdGVzdGltb25pYWwtbWFzb25yeS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zaW1wby11aS9zcmMvbGliL3NlY3Rpb25zL3Rlc3RpbW9uaWFsLW1hc29ucnkvdGVzdGltb25pYWwtbWFzb25yeS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFDdkUsT0FBTyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFNUQsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFDbEYsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFDM0UsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHlDQUF5QyxDQUFDO0FBQ3pFLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLDhDQUE4QyxDQUFDO0FBQzFGLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUNuRSxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUNsRixPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUMzRCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUM5RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDbkUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0seUNBQXlDLENBQUM7QUFDaEYsT0FBTyxFQUFFLDhCQUE4QixFQUFFLE1BQU0sNkNBQTZDLENBQUM7QUFDN0YsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFDNUUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFDekUsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sK0NBQStDLENBQUM7QUFDdkYsT0FBTyxFQUFFLGdDQUFnQyxFQUFFLE1BQU0scURBQXFELENBQUM7QUFDdkcsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDckUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sa0RBQWtELENBQUM7QUFDdkYsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFFOUUsT0FBTyxXQUFXLE1BQU0sZ0JBQWdCLENBQUM7Ozs7Ozs7QUFnQ3pDLE1BQU0sT0FBTywyQkFBNEIsU0FBUSxXQUFXO0lBYTFELFlBQW9CLGFBQTRCO1FBQzlDLEtBQUssRUFBRSxDQUFDO1FBRFUsa0JBQWEsR0FBYixhQUFhLENBQWU7UUFGaEQsZ0JBQVcsR0FBVyxDQUFDLENBQUM7SUFJeEIsQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxJQUFJLEVBQUUsT0FBTyxDQUFDO1FBQ2xDLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLElBQUksRUFBRSxNQUFNLENBQUM7UUFDaEMsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO0lBQ3ZCLENBQUM7SUFFRCxJQUFJLFlBQVk7UUFDZCxPQUFPLEVBQUUsR0FBRyxJQUFJLENBQUMsTUFBTSxFQUFFLE1BQU0sRUFBaUIsQ0FBQztJQUNuRCxDQUFDO0lBRUQsSUFBSSxXQUFXO1FBQ2IsT0FBTyxJQUFJLENBQUMsT0FBTyxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsTUFBTSxDQUFDLENBQUMsSUFBUyxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsTUFBTSxLQUFLLEtBQUssQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUMxRixDQUFDO0lBRUQsUUFBUSxDQUFDLElBQVM7UUFDaEIsT0FBTyxJQUFJLEVBQUUsU0FBUyxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsS0FBSyxJQUFJLEVBQUUsQ0FBQztJQUMzQyxDQUFDO0lBRUQsU0FBUyxDQUFDLElBQVM7UUFDakIsT0FBTyxJQUFJLEVBQUUsU0FBUyxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsS0FBSyxJQUFJLEVBQUUsQ0FBQztJQUMzQyxDQUFDO0lBRUQsT0FBTyxDQUFDLElBQVM7UUFDZixPQUFPLElBQUksRUFBRSxTQUFTLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxLQUFLLElBQUksRUFBRSxDQUFDO0lBQzNDLENBQUM7SUFFRCxZQUFZLENBQUMsSUFBUztRQUNwQixPQUFPLElBQUksRUFBRSxLQUFLLEVBQUUsR0FBRyxJQUFJLEVBQUUsQ0FBQztJQUNoQyxDQUFDO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxhQUFhLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ2pELFVBQVUsQ0FBQyxHQUFHLEVBQUU7WUFDZCxJQUFJLENBQUMsYUFBYSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsRUFBRSxJQUFJLEVBQUUsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDLENBQUM7UUFDM0QsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxDQUFDO0lBQ1YsQ0FBQztJQUdELGFBQWE7UUFDWCxJQUFJLENBQUMsV0FBVyxHQUFHLE1BQU0sQ0FBQyxVQUFVLENBQUM7SUFDdkMsQ0FBQzsrR0F6RFUsMkJBQTJCO21HQUEzQiwyQkFBMkIsK1RDdER4QyxtNEhBNERVLGl4Q0QvQk4sWUFBWSw4VkFHWixzQkFBc0IseUdBQ3RCLG1CQUFtQiwwR0FDbkIsY0FBYyxnRkFDZCwwQkFBMEIsMkdBQzFCLGVBQWUsa0ZBRWYsbUJBQW1CLG9KQUNuQixvQkFBb0Isb1dBQ3BCLGVBQWUsbUZBR2Ysa0JBQWtCLHlGQUVsQixtQkFBbUIsbUZBRW5CLGdCQUFnQixxRkFDaEIsbUJBQW1CLHFKQUNuQixvQkFBb0I7OzRGQUtYLDJCQUEyQjtrQkE3QnZDLFNBQVM7K0JBQ0UsMkJBQTJCLGNBQ3pCLElBQUksV0FDUDt3QkFDUCxZQUFZO3dCQUNaLEtBQUs7d0JBQ0wsSUFBSTt3QkFDSixzQkFBc0I7d0JBQ3RCLG1CQUFtQjt3QkFDbkIsY0FBYzt3QkFDZCwwQkFBMEI7d0JBQzFCLGVBQWU7d0JBQ2YseUJBQXlCO3dCQUN6QixtQkFBbUI7d0JBQ25CLG9CQUFvQjt3QkFDcEIsZUFBZTt3QkFDZixxQkFBcUI7d0JBQ3JCLDhCQUE4Qjt3QkFDOUIsa0JBQWtCO3dCQUNsQixzQkFBc0I7d0JBQ3RCLG1CQUFtQjt3QkFDbkIsZ0NBQWdDO3dCQUNoQyxnQkFBZ0I7d0JBQ2hCLG1CQUFtQjt3QkFDbkIsb0JBQW9CO3FCQUNyQjtrRkFNUSxJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLO2dCQUNHLE1BQU07c0JBQWQsS0FBSztnQkFDRyxXQUFXO3NCQUFuQixLQUFLO2dCQUNHLGtCQUFrQjtzQkFBMUIsS0FBSztnQkFDRyxLQUFLO3NCQUFiLEtBQUs7Z0JBZ0ROLGFBQWE7c0JBRFosWUFBWTt1QkFBQyxlQUFlLEVBQUUsQ0FBQyxRQUFRLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEhvc3RMaXN0ZW5lciwgSW5wdXQsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBDb21tb25Nb2R1bGUsIE5nRm9yLCBOZ0lmIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgQmFja2dyb3VuZE1vZGVsLCBCYW5uZXJTdHlsZXNNb2RlbCwgTGF5T3V0TW9kZWwgfSBmcm9tICcuLi8uLi9zdHlsZXMvc3R5bGUubW9kZWwnO1xyXG5pbXBvcnQgeyBTcGFjaW5nQXJvdW5kRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlL3NwYWNpbmctYXJvdW5kLmRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IEJhY2tncm91bmREaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmUvYmFja2dyb3VuZC1kaXJlY3RpdmUnO1xyXG5pbXBvcnQgeyBIb3ZlckRpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZS9ob3Zlci1lbGVtZW50LWRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IFNwYWNpbmdIb3Jpem9udGFsRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlL3NwYWNpbmctaG9yaXpvbnRhbC5kaXJlY3RpdmUnO1xyXG5pbXBvcnQgeyBDb3JuZXJEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmUvY29ybmVyLWRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IFNpbXBvSG92ZXJCb3JkZXJEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmUvaG92ZXJib3JkZXIuZGlyZWN0aXZlJztcclxuaW1wb3J0IHsgU2ltcG9FbGVtZW50c01vZHVsZSB9IGZyb20gJy4uLy4uL2VsZW1lbnRzL2luZGV4JztcclxuaW1wb3J0IHsgU2ltcG9Db21wb25lbnRNb2R1bGUgfSBmcm9tICcuLi8uLi9jb21wb25lbnRzL2luZGV4JztcclxuaW1wb3J0IHsgQm9yZGVyRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlL2JvcmRlci1kaXJlY3RpdmUnO1xyXG5pbXBvcnQgeyBDb250YWluZXJGaXREaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmUvY29udGFpbmVyLWZpci5kaXJlY3RpdmUnO1xyXG5pbXBvcnQgeyBzaW1wb0NvbmV0ZW5BbGlnbm1lbnREaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmUvY29udGVudC1hbGlnbm1lbnQtZGlyZWN0aXZlJztcclxuaW1wb3J0IHsgQ29udGVudEZpdERpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZS9jb250ZW50LWZpdC1kaXJlY3RpdmUnO1xyXG5pbXBvcnQgeyBBbmltYXRpb25EaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmUvYW5pbWF0aW9uLWRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IFNpbXBvQ29udGFpbmVyQWxpZ21lbnQgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmUvY29udGFpbmVyLWFsaWdubWVudC5kaXJlY3RpdmUnO1xyXG5pbXBvcnQgeyBUZXh0QmFja2dyb3VuZERpcmVjdGl2ZURpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZS90ZXh0LWJhY2tncm91bmQtZGlyZWN0aXZlLmRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IE92ZXJsYXlEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmUvb3ZlcmxheS1kaXJlY3RpdmUnO1xyXG5pbXBvcnQgeyBUZXh0RWRpdG9yQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vZWxlbWVudHMvdGV4dC1lZGl0b3IvdGV4dC1lZGl0b3IuY29tcG9uZW50JztcclxuaW1wb3J0IHsgSW1hZ2VFZGl0b3JEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmUvaW1hZ2UtZWRpdG9yLmRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IEV2ZW50c1NlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9ldmVudHMuc2VydmljZSc7XHJcbmltcG9ydCBCYXNlU2VjdGlvbiBmcm9tICcuLi9CYXNlU2VjdGlvbic7XHJcbmltcG9ydCB7IFRlc3RpbW9uaWFsTWFzb25yeUNvbnRlbnRNb2RlbCwgVGVzdGltb25pYWxNYXNvbnJ5TW9kZWwsIFRlc3RpbW9uaWFsTWFzb25yeVN0eWxlTW9kZWwgfSBmcm9tICcuL3Rlc3RpbW9uaWFsLW1hc29ucnkubW9kZWwnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdzaW1wby10ZXN0aW1vbmlhbC1tYXNvbnJ5JyxcclxuICBzdGFuZGFsb25lOiB0cnVlLFxyXG4gIGltcG9ydHM6IFtcclxuICAgIENvbW1vbk1vZHVsZSxcclxuICAgIE5nRm9yLFxyXG4gICAgTmdJZixcclxuICAgIFNwYWNpbmdBcm91bmREaXJlY3RpdmUsXHJcbiAgICBCYWNrZ3JvdW5kRGlyZWN0aXZlLFxyXG4gICAgSG92ZXJEaXJlY3RpdmUsXHJcbiAgICBTcGFjaW5nSG9yaXpvbnRhbERpcmVjdGl2ZSxcclxuICAgIENvcm5lckRpcmVjdGl2ZSxcclxuICAgIFNpbXBvSG92ZXJCb3JkZXJEaXJlY3RpdmUsXHJcbiAgICBTaW1wb0VsZW1lbnRzTW9kdWxlLFxyXG4gICAgU2ltcG9Db21wb25lbnRNb2R1bGUsXHJcbiAgICBCb3JkZXJEaXJlY3RpdmUsXHJcbiAgICBDb250YWluZXJGaXREaXJlY3RpdmUsXHJcbiAgICBzaW1wb0NvbmV0ZW5BbGlnbm1lbnREaXJlY3RpdmUsXHJcbiAgICBBbmltYXRpb25EaXJlY3RpdmUsXHJcbiAgICBTaW1wb0NvbnRhaW5lckFsaWdtZW50LFxyXG4gICAgQ29udGVudEZpdERpcmVjdGl2ZSxcclxuICAgIFRleHRCYWNrZ3JvdW5kRGlyZWN0aXZlRGlyZWN0aXZlLFxyXG4gICAgT3ZlcmxheURpcmVjdGl2ZSxcclxuICAgIFRleHRFZGl0b3JDb21wb25lbnQsXHJcbiAgICBJbWFnZUVkaXRvckRpcmVjdGl2ZSxcclxuICBdLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi90ZXN0aW1vbmlhbC1tYXNvbnJ5LmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybDogJy4vdGVzdGltb25pYWwtbWFzb25yeS5jb21wb25lbnQuY3NzJ1xyXG59KVxyXG5leHBvcnQgY2xhc3MgVGVzdGltb25pYWxNYXNvbnJ5Q29tcG9uZW50IGV4dGVuZHMgQmFzZVNlY3Rpb24gaW1wbGVtZW50cyBPbkluaXQge1xyXG5cclxuICBASW5wdXQoKSBkYXRhPzogVGVzdGltb25pYWxNYXNvbnJ5TW9kZWwgfCBhbnk7XHJcbiAgQElucHV0KCkgZWRpdD86IGJvb2xlYW47XHJcbiAgQElucHV0KCkgZGVsZXRlPzogYm9vbGVhbjtcclxuICBASW5wdXQoKSBjdXN0b21DbGFzcz86IHN0cmluZztcclxuICBASW5wdXQoKSBuZXh0Q29tcG9uZW50Q29sb3I/OiBCYWNrZ3JvdW5kTW9kZWw7XHJcbiAgQElucHV0KCkgaW5kZXg/OiBudW1iZXI7XHJcblxyXG4gIGNvbnRlbnQ/OiBUZXN0aW1vbmlhbE1hc29ucnlDb250ZW50TW9kZWw7XHJcbiAgc3R5bGVzPzogVGVzdGltb25pYWxNYXNvbnJ5U3R5bGVNb2RlbDtcclxuICBzY3JlZW5XaWR0aDogbnVtYmVyID0gMDtcclxuXHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBfZXZlbnRTZXJ2aWNlOiBFdmVudHNTZXJ2aWNlKSB7XHJcbiAgICBzdXBlcigpO1xyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLmNvbnRlbnQgPSB0aGlzLmRhdGE/LmNvbnRlbnQ7XHJcbiAgICB0aGlzLnN0eWxlcyA9IHRoaXMuZGF0YT8uc3R5bGVzO1xyXG4gICAgdGhpcy5nZXRTY3JlZW5TaXplKCk7XHJcbiAgfVxyXG5cclxuICBnZXQgc3R5bGVzTGF5b3V0KCkge1xyXG4gICAgcmV0dXJuIHsgLi4udGhpcy5zdHlsZXM/LmxheW91dCB9IGFzIExheU91dE1vZGVsO1xyXG4gIH1cclxuXHJcbiAgZ2V0IGFjdGl2ZUl0ZW1zKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuY29udGVudD8ubGlzdEl0ZW0/LmRhdGE/LmZpbHRlcigoaXRlbTogYW55KSA9PiBpdGVtLnN0YXR1cyAhPT0gZmFsc2UpID8/IFtdO1xyXG4gIH1cclxuXHJcbiAgZ2V0UXVvdGUoaXRlbTogYW55KTogc3RyaW5nIHtcclxuICAgIHJldHVybiBpdGVtPy5pbnB1dFRleHQ/LlswXT8udmFsdWUgPz8gJyc7XHJcbiAgfVxyXG5cclxuICBnZXRBdXRob3IoaXRlbTogYW55KTogc3RyaW5nIHtcclxuICAgIHJldHVybiBpdGVtPy5pbnB1dFRleHQ/LlsxXT8udmFsdWUgPz8gJyc7XHJcbiAgfVxyXG5cclxuICBnZXRSb2xlKGl0ZW06IGFueSk6IHN0cmluZyB7XHJcbiAgICByZXR1cm4gaXRlbT8uaW5wdXRUZXh0Py5bMl0/LnZhbHVlID8/ICcnO1xyXG4gIH1cclxuXHJcbiAgZ2V0QXZhdGFyVXJsKGl0ZW06IGFueSk6IHN0cmluZyB7XHJcbiAgICByZXR1cm4gaXRlbT8uaW1hZ2U/LnVybCA/PyAnJztcclxuICB9XHJcblxyXG4gIGVkaXRTZWN0aW9uKCkge1xyXG4gICAgdGhpcy5fZXZlbnRTZXJ2aWNlLnRvZ2dsZUVkaXRvckV2ZW50LmVtaXQoZmFsc2UpO1xyXG4gICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgIHRoaXMuX2V2ZW50U2VydmljZS5lZGl0U2VjdGlvbi5lbWl0KHsgZGF0YTogdGhpcy5kYXRhIH0pO1xyXG4gICAgfSwgMTAwKTtcclxuICB9XHJcblxyXG4gIEBIb3N0TGlzdGVuZXIoJ3dpbmRvdzpyZXNpemUnLCBbJyRldmVudCddKVxyXG4gIGdldFNjcmVlblNpemUoKSB7XHJcbiAgICB0aGlzLnNjcmVlbldpZHRoID0gd2luZG93LmlubmVyV2lkdGg7XHJcbiAgfVxyXG59XHJcbiIsIjxzZWN0aW9uIGNsYXNzPVwibWFpbi1jb250YWluZXIgaG92ZXItZWZmZWN0XCIgc2ltcG9Ib3ZlciAoaG92ZXJpbmcpPVwic2hvd0VkaXRUYWJzKCRldmVudClcIj5cclxuICA8ZGl2IGNsYXNzPVwic3BhY2luZy1hcm91bmRcIiBbc3BhY2luZ0Fyb3VuZF09XCJzdHlsZXNMYXlvdXRcIiBbc2ltcG9Cb3JkZXJdPVwic3R5bGVzPy5ib3JkZXJcIiBbaWRdPVwiZGF0YT8uaWRcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJwYXJlbnQtZGl2XCIgW2lkXT1cImRhdGE/LmlkXCIgW3NpbXBvQ29ybmVyXT1cInN0eWxlcz8uY29ybmVyc1wiIFtzaW1wb0JhY2tncm91bmRdPVwic3R5bGVzPy5iYWNrZ3JvdW5kXCI+XHJcbiAgICAgIDxkaXYgW3NpbXBvT3ZlcmxheV09XCJzdHlsZXM/LmJhY2tncm91bmRcIiBbc2ltcG9MYXlvdXRdPVwic3R5bGVzPy5sYXlvdXRcIiBbaWRdPVwiZGF0YT8uaWRcIlxyXG4gICAgICAgIFtzcGFjaW5nSG9yaXpvbnRhbF09XCJzdHlsZXNMYXlvdXRcIiBjbGFzcz1cImZsZXgtY29sdW1uXCI+XHJcblxyXG4gICAgICAgIDwhLS0gSGVhZGluZyBCbG9jayAtLT5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiaGVhZGVyLWJsb2NrIG1iLTNcIiBbc2ltcG9BbmltYXRpb25dPVwic3R5bGVzPy5hbmltYXRpb25cIj5cclxuICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IHRleHQgb2YgY29udGVudD8uaW5wdXRUZXh0XCI+XHJcbiAgICAgICAgICAgIDxzaW1wby10ZXh0LWVkaXRvciBbKHZhbHVlKV09XCJ0ZXh0LnZhbHVlXCIgW2VkaXRhYmxlXT1cImVkaXQgfHwgZmFsc2VcIj48L3NpbXBvLXRleHQtZWRpdG9yPlxyXG4gICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgIDwhLS0gTWFzb25yeSBHcmlkIC0tPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJtYXNvbnJ5LWdyaWRcIiBbc2ltcG9BbmltYXRpb25dPVwic3R5bGVzPy5hbmltYXRpb25cIj5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJtYXNvbnJ5LWNhcmRcIiAqbmdGb3I9XCJsZXQgaXRlbSBvZiBhY3RpdmVJdGVtczsgbGV0IGkgPSBpbmRleFwiPlxyXG4gICAgICAgICAgICA8IS0tIFF1b3RlIEljb24gLS0+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJxdW90ZS1pY29uXCI+XHJcbiAgICAgICAgICAgICAgPHN2ZyB3aWR0aD1cIjI4XCIgaGVpZ2h0PVwiMjJcIiB2aWV3Qm94PVwiMCAwIDM2IDMxXCIgZmlsbD1cIm5vbmVcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCI+XHJcbiAgICAgICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgICAgICBkPVwiTTM1LjM5OTggMy4yOTk5M0MzNS41OTk4IDMuMDk5OTMgMzUuNzk5OCAyLjY5OTkzIDM1LjU5OTggMi4yOTk5M0MzNS4zOTk4IDIuMDk5OTMgMzQuOTk5OCAxLjY5OTkzIDM0LjU5OTggMC44OTk5MjVDMzMuOTk5OCAwLjY5OTkyNSAzMy41OTk4IDAuNjk5OTI2IDMyLjk5OTggMS4wOTk5M0MyNS4zOTk4IDUuODk5OTMgMjEuMTk5OCAxMS40OTk5IDIwLjM5OTggMTcuODk5OUMxOC45OTk4IDI3Ljg5OTkgMjcuOTk5OCAzMi42OTk5IDMyLjU5OTggMjguMjk5OUMzNy4xOTk4IDIzLjg5OTkgMzQuMzk5OCAxOC4yOTk5IDMxLjE5OTggMTYuNjk5OUMyNy45OTk4IDE1LjA5OTkgMjUuOTk5OCAxNS42OTk5IDI2LjE5OTggMTMuNjk5OUMyNi41OTk4IDExLjY5OTkgMzEuMTk5OCA2LjA5OTkzIDM1LjM5OTggMy4yOTk5M1pNMTQuNzk5OCAxLjA5OTkzQzE0LjE5OTggMC42OTk5MjYgMTMuNTk5OCAwLjY5OTkyNiAxMy4xOTk4IDEuMDk5OTNDNS41OTk4MyA1Ljg5OTkzIDEuMzk5ODMgMTEuNDk5OSAwLjU5OTgzMiAxOC4wOTk5Qy0wLjgwMDE2OCAyOC4wOTk5IDguMTk5ODMgMzIuODk5OSAxMi43OTk4IDI4LjQ5OTlDMTcuMzk5OCAyNC4wOTk5IDE0LjU5OTggMTguNDk5OSAxMS4zOTk4IDE2Ljg5OTlDNy45OTk4MyAxNS40OTk5IDUuOTk5ODMgMTYuMDk5OSA2LjM5OTgzIDEzLjg5OTlDNi43OTk4MyAxMS44OTk5IDExLjM5OTggNi4yOTk5MyAxNS41OTk4IDMuNDk5OTNDMTUuNzk5OCAzLjI5OTkzIDE1Ljk5OTggMi44OTk5MyAxNS43OTk4IDIuNDk5OTNDMTUuNTk5OCAyLjI5OTkzIDE1LjE5OTggMS44OTk5MyAxNC43OTk4IDEuMDk5OTNaXCJcclxuICAgICAgICAgICAgICAgICAgW2F0dHIuZmlsbF09XCJzdHlsZXM/LmJhY2tncm91bmQ/LmFjY2VudENvbG9yIHx8ICcjNkM4RUJGJ1wiIC8+XHJcbiAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICAgICAgPCEtLSBRdW90ZSBUZXh0IC0tPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwicXVvdGUtdGV4dFwiPlxyXG4gICAgICAgICAgICAgIDxzaW1wby10ZXh0LWVkaXRvciBbKHZhbHVlKV09XCJpdGVtLmlucHV0VGV4dFswXS52YWx1ZVwiIFtlZGl0YWJsZV09XCJlZGl0IHx8IGZhbHNlXCI+PC9zaW1wby10ZXh0LWVkaXRvcj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgICAgICA8IS0tIEF1dGhvciBSb3cgLS0+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJhdXRob3Itcm93XCI+XHJcbiAgICAgICAgICAgICAgPGltZyAqbmdJZj1cImdldEF2YXRhclVybChpdGVtKVwiIFtzcmNdPVwiZ2V0QXZhdGFyVXJsKGl0ZW0pXCIgY2xhc3M9XCJhdmF0YXJcIiBbYWx0XT1cImdldEF1dGhvcihpdGVtKVwiXHJcbiAgICAgICAgICAgICAgICBbYXBwSW1hZ2VFZGl0b3JdPVwiZWRpdCB8fCBmYWxzZVwiIFtpbWFnZURhdGFdPVwiaXRlbS5pbWFnZVwiIFtzZWN0aW9uSWRdPVwiZGF0YT8uaWRcIiBsb2FkaW5nPVwibGF6eVwiIC8+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImF1dGhvci1pbmZvXCI+XHJcbiAgICAgICAgICAgICAgICA8c2ltcG8tdGV4dC1lZGl0b3IgWyh2YWx1ZSldPVwiaXRlbS5pbnB1dFRleHRbMV0udmFsdWVcIiBbZWRpdGFibGVdPVwiZWRpdCB8fCBmYWxzZVwiPjwvc2ltcG8tdGV4dC1lZGl0b3I+XHJcbiAgICAgICAgICAgICAgICA8c2ltcG8tdGV4dC1lZGl0b3IgKm5nSWY9XCJpdGVtLmlucHV0VGV4dFsyXVwiIFsodmFsdWUpXT1cIml0ZW0uaW5wdXRUZXh0WzJdLnZhbHVlXCJcclxuICAgICAgICAgICAgICAgICAgW2VkaXRhYmxlXT1cImVkaXQgfHwgZmFsc2VcIj48L3NpbXBvLXRleHQtZWRpdG9yPlxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuICA8L2Rpdj5cclxuXHJcbiAgPCEtLSBEaXZpZGVyIC0tPlxyXG4gIDxuZy1jb250YWluZXIgKm5nSWY9XCJzdHlsZXM/LmRldmlkZXI/LmRpc3BsYXlcIj5cclxuICAgIDxzaW1wby1zdmctZGl2aWRlciBbZGl2aWRlclR5cGVdPVwic3R5bGVzPy5kZXZpZGVyPy5kZXZpZGVyVHlwZVwiXHJcbiAgICAgIFtjb2xvcl09XCJuZXh0Q29tcG9uZW50Q29sb3I/LmNvbG9yXCI+PC9zaW1wby1zdmctZGl2aWRlcj5cclxuICA8L25nLWNvbnRhaW5lcj5cclxuXHJcbiAgPCEtLSBIb3ZlciAvIEVkaXQgQ29udHJvbHMgLS0+XHJcbiAgPGRpdiBbbmdDbGFzc109XCJ7J2hvdmVyX2VmZmVjdCc6IGVkaXR9XCIgKm5nSWY9XCJzaG93RWRpdG9yc1wiPlxyXG4gICAgPHNpbXBvLWhvdmVyLWVsZW1lbnRzIFtkYXRhXT1cImRhdGFcIiBbaW5kZXhdPVwiaW5kZXhcIiBbZWRpdE9wdGlvbnNdPVwiZWRpdFwiPjwvc2ltcG8taG92ZXItZWxlbWVudHM+XHJcbiAgPC9kaXY+XHJcbiAgPGRpdiAqbmdJZj1cInNob3dEZWxldGVcIiBbbmdDbGFzc109XCJ7J2hvdmVyX2VmZmVjdCc6IGRlbGV0ZX1cIj5cclxuICAgIDxzaW1wby1kZWxldGUtaG92ZXItZWxlbWVudCBbZGF0YV09XCJkYXRhXCIgW2luZGV4XT1cImluZGV4XCI+PC9zaW1wby1kZWxldGUtaG92ZXItZWxlbWVudD5cclxuICA8L2Rpdj5cclxuPC9zZWN0aW9uPiJdfQ==
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVzdGltb25pYWwtbWFzb25yeS5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NpbXBvLXVpL3NyYy9saWIvc2VjdGlvbnMvdGVzdGltb25pYWwtbWFzb25yeS90ZXN0aW1vbmlhbC1tYXNvbnJ5Lm1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbWFnZSwgSW5wdXRUZXh0TW9kZWwsIExpc3RJdGVtTW9kYWwsIFN0eWxlc01vZGVsLCBCYW5uZXJTdHlsZXNNb2RlbCwgQWN0aW9uTW9kZWwgfSBmcm9tICcuLi8uLi9zdHlsZXMvc3R5bGUubW9kZWwnO1xyXG5cclxuZXhwb3J0IGludGVyZmFjZSBUZXN0aW1vbmlhbE1hc29ucnlNb2RlbCB7XHJcbiAgaWQ6IHN0cmluZztcclxuICBzZWN0aW9uVHlwZTogc3RyaW5nO1xyXG4gIHNlY3Rpb25OYW1lOiBzdHJpbmc7XHJcbiAgY29udGVudDogVGVzdGltb25pYWxNYXNvbnJ5Q29udGVudE1vZGVsO1xyXG4gIHN0eWxlczogVGVzdGltb25pYWxNYXNvbnJ5U3R5bGVNb2RlbDtcclxuICBhY3Rpb24/OiBBY3Rpb25Nb2RlbDtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBUZXN0aW1vbmlhbE1hc29ucnlDb250ZW50TW9kZWwge1xyXG4gIGlucHV0VGV4dDogSW5wdXRUZXh0TW9kZWxbXTtcclxuICBkaXNwbGF5Pzoge1xyXG4gICAgc2hvd0ltYWdlPzogYm9vbGVhbjtcclxuICAgIHNob3dDYXJkPzogYm9vbGVhbjtcclxuICB9O1xyXG4gIGxpc3RJdGVtOiBMaXN0SXRlbU1vZGFsPFRlc3RpbW9uaWFsTWFzb25yeUl0ZW1Nb2RlbD47XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgVGVzdGltb25pYWxNYXNvbnJ5SXRlbU1vZGVsIHtcclxuICBzdGF0dXM6IGJvb2xlYW47XHJcbiAgaW1hZ2U6IEltYWdlO1xyXG4gIGlucHV0VGV4dDogSW5wdXRUZXh0TW9kZWxbXTsgLy8gWzBdID0gcXVvdGUsIFsxXSA9IGJ5LCBbMl0gPSByb2xlIChvcHRpb25hbClcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBUZXN0aW1vbmlhbE1hc29ucnlTdHlsZU1vZGVsIGV4dGVuZHMgU3R5bGVzTW9kZWwsIEJhbm5lclN0eWxlc01vZGVsIHt9XHJcbiJdfQ==
|
|
@@ -1,62 +0,0 @@
|
|
|
1
|
-
import { Extension } from '@tiptap/core';
|
|
2
|
-
export const GradientExtension = Extension.create({
|
|
3
|
-
name: 'gradient',
|
|
4
|
-
addGlobalAttributes() {
|
|
5
|
-
return [
|
|
6
|
-
{
|
|
7
|
-
types: ['textStyle'],
|
|
8
|
-
attributes: {
|
|
9
|
-
backgroundImage: {
|
|
10
|
-
default: null,
|
|
11
|
-
parseHTML: element => element.style.backgroundImage,
|
|
12
|
-
renderHTML: attributes => {
|
|
13
|
-
if (!attributes['backgroundImage']) {
|
|
14
|
-
return {};
|
|
15
|
-
}
|
|
16
|
-
return {
|
|
17
|
-
style: `background-image:${attributes['backgroundImage']};`
|
|
18
|
-
};
|
|
19
|
-
},
|
|
20
|
-
},
|
|
21
|
-
backgroundClip: {
|
|
22
|
-
default: null,
|
|
23
|
-
parseHTML: element => element.style.backgroundClip,
|
|
24
|
-
renderHTML: attributes => {
|
|
25
|
-
if (!attributes['backgroundClip']) {
|
|
26
|
-
return {};
|
|
27
|
-
}
|
|
28
|
-
return {
|
|
29
|
-
style: `background-clip:${attributes['backgroundClip']};`
|
|
30
|
-
};
|
|
31
|
-
},
|
|
32
|
-
},
|
|
33
|
-
WebkitBackgroundClip: {
|
|
34
|
-
default: null,
|
|
35
|
-
parseHTML: element => element.style.webkitBackgroundClip,
|
|
36
|
-
renderHTML: attributes => {
|
|
37
|
-
if (!attributes['WebkitBackgroundClip']) {
|
|
38
|
-
return {};
|
|
39
|
-
}
|
|
40
|
-
return {
|
|
41
|
-
style: `-webkit-background-clip:${attributes['WebkitBackgroundClip']};`
|
|
42
|
-
};
|
|
43
|
-
},
|
|
44
|
-
},
|
|
45
|
-
WebkitTextFillColor: {
|
|
46
|
-
default: null,
|
|
47
|
-
parseHTML: element => element.style.webkitTextFillColor,
|
|
48
|
-
renderHTML: attributes => {
|
|
49
|
-
if (!attributes['WebkitTextFillColor']) {
|
|
50
|
-
return {};
|
|
51
|
-
}
|
|
52
|
-
return {
|
|
53
|
-
style: `-webkit-text-fill-color:${attributes['WebkitTextFillColor']};`
|
|
54
|
-
};
|
|
55
|
-
},
|
|
56
|
-
},
|
|
57
|
-
},
|
|
58
|
-
},
|
|
59
|
-
];
|
|
60
|
-
},
|
|
61
|
-
});
|
|
62
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JhZGllbnQtZXh0ZW5zaW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2ltcG8tdWkvc3JjL2xpYi9zdHlsZXMvZ3JhZGllbnQtZXh0ZW5zaW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFFekMsTUFBTSxDQUFDLE1BQU0saUJBQWlCLEdBQzFCLFNBQVMsQ0FBQyxNQUFNLENBQUM7SUFFYixJQUFJLEVBQUUsVUFBVTtJQUVoQixtQkFBbUI7UUFFZixPQUFPO1lBRUg7Z0JBQ0ksS0FBSyxFQUFFLENBQUMsV0FBVyxDQUFDO2dCQUVwQixVQUFVLEVBQUU7b0JBRVIsZUFBZSxFQUFFO3dCQUViLE9BQU8sRUFBRSxJQUFJO3dCQUViLFNBQVMsRUFBRSxPQUFPLENBQUMsRUFBRSxDQUNqQixPQUFPLENBQUMsS0FBSyxDQUFDLGVBQWU7d0JBRWpDLFVBQVUsRUFBRSxVQUFVLENBQUMsRUFBRTs0QkFFckIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUM7Z0NBQ2pDLE9BQU8sRUFBRSxDQUFDOzRCQUNkLENBQUM7NEJBRUQsT0FBTztnQ0FDSCxLQUFLLEVBQ0Qsb0JBQW9CLFVBQVUsQ0FBQyxpQkFBaUIsQ0FBQyxHQUFHOzZCQUMzRCxDQUFDO3dCQUVOLENBQUM7cUJBRUo7b0JBRUQsY0FBYyxFQUFFO3dCQUVaLE9BQU8sRUFBRSxJQUFJO3dCQUViLFNBQVMsRUFBRSxPQUFPLENBQUMsRUFBRSxDQUNqQixPQUFPLENBQUMsS0FBSyxDQUFDLGNBQWM7d0JBRWhDLFVBQVUsRUFBRSxVQUFVLENBQUMsRUFBRTs0QkFFckIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxnQkFBZ0IsQ0FBQyxFQUFFLENBQUM7Z0NBQ2hDLE9BQU8sRUFBRSxDQUFDOzRCQUNkLENBQUM7NEJBRUQsT0FBTztnQ0FDSCxLQUFLLEVBQ0QsbUJBQW1CLFVBQVUsQ0FBQyxnQkFBZ0IsQ0FBQyxHQUFHOzZCQUN6RCxDQUFDO3dCQUVOLENBQUM7cUJBRUo7b0JBRUQsb0JBQW9CLEVBQUU7d0JBRWxCLE9BQU8sRUFBRSxJQUFJO3dCQUViLFNBQVMsRUFBRSxPQUFPLENBQUMsRUFBRSxDQUNqQixPQUFPLENBQUMsS0FBSyxDQUFDLG9CQUFvQjt3QkFFdEMsVUFBVSxFQUFFLFVBQVUsQ0FBQyxFQUFFOzRCQUVyQixJQUFJLENBQUMsVUFBVSxDQUFDLHNCQUFzQixDQUFDLEVBQUUsQ0FBQztnQ0FDdEMsT0FBTyxFQUFFLENBQUM7NEJBQ2QsQ0FBQzs0QkFFRCxPQUFPO2dDQUNILEtBQUssRUFDRCwyQkFBMkIsVUFBVSxDQUFDLHNCQUFzQixDQUFDLEdBQUc7NkJBQ3ZFLENBQUM7d0JBRU4sQ0FBQztxQkFFSjtvQkFFRCxtQkFBbUIsRUFBRTt3QkFFakIsT0FBTyxFQUFFLElBQUk7d0JBRWIsU0FBUyxFQUFFLE9BQU8sQ0FBQyxFQUFFLENBQ2pCLE9BQU8sQ0FBQyxLQUFLLENBQUMsbUJBQW1CO3dCQUVyQyxVQUFVLEVBQUUsVUFBVSxDQUFDLEVBQUU7NEJBRXJCLElBQUksQ0FBQyxVQUFVLENBQUMscUJBQXFCLENBQUMsRUFBRSxDQUFDO2dDQUNyQyxPQUFPLEVBQUUsQ0FBQzs0QkFDZCxDQUFDOzRCQUVELE9BQU87Z0NBQ0gsS0FBSyxFQUNELDJCQUEyQixVQUFVLENBQUMscUJBQXFCLENBQUMsR0FBRzs2QkFDdEUsQ0FBQzt3QkFFTixDQUFDO3FCQUVKO2lCQUVKO2FBRUo7U0FFSixDQUFDO0lBRU4sQ0FBQztDQUVKLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEV4dGVuc2lvbiB9IGZyb20gJ0B0aXB0YXAvY29yZSc7XHJcblxyXG5leHBvcnQgY29uc3QgR3JhZGllbnRFeHRlbnNpb24gPVxyXG4gICAgRXh0ZW5zaW9uLmNyZWF0ZSh7XHJcblxyXG4gICAgICAgIG5hbWU6ICdncmFkaWVudCcsXHJcblxyXG4gICAgICAgIGFkZEdsb2JhbEF0dHJpYnV0ZXMoKSB7XHJcblxyXG4gICAgICAgICAgICByZXR1cm4gW1xyXG5cclxuICAgICAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgICAgICB0eXBlczogWyd0ZXh0U3R5bGUnXSxcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgYXR0cmlidXRlczoge1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZEltYWdlOiB7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGVmYXVsdDogbnVsbCxcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYXJzZUhUTUw6IGVsZW1lbnQgPT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlbGVtZW50LnN0eWxlLmJhY2tncm91bmRJbWFnZSxcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZW5kZXJIVE1MOiBhdHRyaWJ1dGVzID0+IHtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCFhdHRyaWJ1dGVzWydiYWNrZ3JvdW5kSW1hZ2UnXSkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4ge307XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHlsZTpcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGBiYWNrZ3JvdW5kLWltYWdlOiR7YXR0cmlidXRlc1snYmFja2dyb3VuZEltYWdlJ119O2BcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9O1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9LFxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZENsaXA6IHtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZWZhdWx0OiBudWxsLFxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhcnNlSFRNTDogZWxlbWVudCA9PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVsZW1lbnQuc3R5bGUuYmFja2dyb3VuZENsaXAsXHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVuZGVySFRNTDogYXR0cmlidXRlcyA9PiB7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmICghYXR0cmlidXRlc1snYmFja2dyb3VuZENsaXAnXSkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4ge307XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHlsZTpcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGBiYWNrZ3JvdW5kLWNsaXA6JHthdHRyaWJ1dGVzWydiYWNrZ3JvdW5kQ2xpcCddfTtgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfTtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgfSxcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFdlYmtpdEJhY2tncm91bmRDbGlwOiB7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGVmYXVsdDogbnVsbCxcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYXJzZUhUTUw6IGVsZW1lbnQgPT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlbGVtZW50LnN0eWxlLndlYmtpdEJhY2tncm91bmRDbGlwLFxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlbmRlckhUTUw6IGF0dHJpYnV0ZXMgPT4ge1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoIWF0dHJpYnV0ZXNbJ1dlYmtpdEJhY2tncm91bmRDbGlwJ10pIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHt9O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3R5bGU6XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBgLXdlYmtpdC1iYWNrZ3JvdW5kLWNsaXA6JHthdHRyaWJ1dGVzWydXZWJraXRCYWNrZ3JvdW5kQ2xpcCddfTtgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfTtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgfSxcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFdlYmtpdFRleHRGaWxsQ29sb3I6IHtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZWZhdWx0OiBudWxsLFxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhcnNlSFRNTDogZWxlbWVudCA9PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVsZW1lbnQuc3R5bGUud2Via2l0VGV4dEZpbGxDb2xvcixcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZW5kZXJIVE1MOiBhdHRyaWJ1dGVzID0+IHtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCFhdHRyaWJ1dGVzWydXZWJraXRUZXh0RmlsbENvbG9yJ10pIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHt9O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3R5bGU6XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBgLXdlYmtpdC10ZXh0LWZpbGwtY29sb3I6JHthdHRyaWJ1dGVzWydXZWJraXRUZXh0RmlsbENvbG9yJ119O2BcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9O1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9LFxyXG5cclxuICAgICAgICAgICAgICAgICAgICB9LFxyXG5cclxuICAgICAgICAgICAgICAgIH0sXHJcblxyXG4gICAgICAgICAgICBdO1xyXG5cclxuICAgICAgICB9LFxyXG5cclxuICAgIH0pOyJdfQ==
|
|
@@ -1,43 +0,0 @@
|
|
|
1
|
-
import { Extension } from '@tiptap/core';
|
|
2
|
-
export const FontSize = Extension.create({
|
|
3
|
-
name: 'fontSize',
|
|
4
|
-
addGlobalAttributes() {
|
|
5
|
-
return [
|
|
6
|
-
{
|
|
7
|
-
types: ['textStyle'],
|
|
8
|
-
attributes: {
|
|
9
|
-
fontSize: {
|
|
10
|
-
default: null,
|
|
11
|
-
parseHTML: element => element.style.fontSize || null,
|
|
12
|
-
renderHTML: attributes => {
|
|
13
|
-
if (!attributes['fontSize']) {
|
|
14
|
-
return {};
|
|
15
|
-
}
|
|
16
|
-
return {
|
|
17
|
-
style: `font-size: ${attributes['fontSize']}`
|
|
18
|
-
};
|
|
19
|
-
}
|
|
20
|
-
}
|
|
21
|
-
}
|
|
22
|
-
}
|
|
23
|
-
];
|
|
24
|
-
},
|
|
25
|
-
addCommands() {
|
|
26
|
-
return {
|
|
27
|
-
setFontSize: (fontSize) => ({ chain }) => {
|
|
28
|
-
return chain()
|
|
29
|
-
.setMark('textStyle', { fontSize })
|
|
30
|
-
.run();
|
|
31
|
-
},
|
|
32
|
-
unsetFontSize: () => ({ chain }) => {
|
|
33
|
-
return chain()
|
|
34
|
-
.setMark('textStyle', {
|
|
35
|
-
fontSize: null
|
|
36
|
-
})
|
|
37
|
-
.removeEmptyTextStyle()
|
|
38
|
-
.run();
|
|
39
|
-
}
|
|
40
|
-
};
|
|
41
|
-
}
|
|
42
|
-
});
|
|
43
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dC1zaXplLmV4dGVuc2lvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NpbXBvLXVpL3NyYy9saWIvc3R5bGVzL3RleHQtc2l6ZS5leHRlbnNpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQVd6QyxNQUFNLENBQUMsTUFBTSxRQUFRLEdBQUcsU0FBUyxDQUFDLE1BQU0sQ0FBQztJQUVyQyxJQUFJLEVBQUUsVUFBVTtJQUVoQixtQkFBbUI7UUFFZixPQUFPO1lBQ0g7Z0JBQ0ksS0FBSyxFQUFFLENBQUMsV0FBVyxDQUFDO2dCQUNwQixVQUFVLEVBQUU7b0JBRVIsUUFBUSxFQUFFO3dCQUVOLE9BQU8sRUFBRSxJQUFJO3dCQUViLFNBQVMsRUFBRSxPQUFPLENBQUMsRUFBRSxDQUNqQixPQUFPLENBQUMsS0FBSyxDQUFDLFFBQVEsSUFBSSxJQUFJO3dCQUVsQyxVQUFVLEVBQUUsVUFBVSxDQUFDLEVBQUU7NEJBRXJCLElBQUksQ0FBQyxVQUFVLENBQUMsVUFBVSxDQUFDLEVBQUUsQ0FBQztnQ0FDMUIsT0FBTyxFQUFFLENBQUM7NEJBQ2QsQ0FBQzs0QkFFRCxPQUFPO2dDQUNILEtBQUssRUFBRSxjQUFjLFVBQVUsQ0FBQyxVQUFVLENBQUMsRUFBRTs2QkFDaEQsQ0FBQzt3QkFFTixDQUFDO3FCQUVKO2lCQUVKO2FBRUo7U0FFSixDQUFDO0lBRU4sQ0FBQztJQUVELFdBQVc7UUFFUCxPQUFPO1lBRUgsV0FBVyxFQUNQLENBQUMsUUFBZ0IsRUFBRSxFQUFFLENBQ2pCLENBQUMsRUFBRSxLQUFLLEVBQUUsRUFBRSxFQUFFO2dCQUVWLE9BQU8sS0FBSyxFQUFFO3FCQUNULE9BQU8sQ0FBQyxXQUFXLEVBQUUsRUFBRSxRQUFRLEVBQUUsQ0FBQztxQkFDbEMsR0FBRyxFQUFFLENBQUM7WUFFZixDQUFDO1lBRVQsYUFBYSxFQUNULEdBQUcsRUFBRSxDQUNELENBQUMsRUFBRSxLQUFLLEVBQUUsRUFBRSxFQUFFO2dCQUVWLE9BQU8sS0FBSyxFQUFFO3FCQUNULE9BQU8sQ0FBQyxXQUFXLEVBQUU7b0JBQ2xCLFFBQVEsRUFBRSxJQUFJO2lCQUNqQixDQUFDO3FCQUNELG9CQUFvQixFQUFFO3FCQUN0QixHQUFHLEVBQUUsQ0FBQztZQUVmLENBQUM7U0FFWixDQUFDO0lBRU4sQ0FBQztDQUVKLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEV4dGVuc2lvbiB9IGZyb20gJ0B0aXB0YXAvY29yZSc7XHJcblxyXG5kZWNsYXJlIG1vZHVsZSAnQHRpcHRhcC9jb3JlJyB7XHJcbiAgICBpbnRlcmZhY2UgQ29tbWFuZHM8UmV0dXJuVHlwZT4ge1xyXG4gICAgICAgIGZvbnRTaXplOiB7XHJcbiAgICAgICAgICAgIHNldEZvbnRTaXplOiAoZm9udFNpemU6IHN0cmluZykgPT4gUmV0dXJuVHlwZTtcclxuICAgICAgICAgICAgdW5zZXRGb250U2l6ZTogKCkgPT4gUmV0dXJuVHlwZTtcclxuICAgICAgICB9O1xyXG4gICAgfVxyXG59XHJcblxyXG5leHBvcnQgY29uc3QgRm9udFNpemUgPSBFeHRlbnNpb24uY3JlYXRlKHtcclxuXHJcbiAgICBuYW1lOiAnZm9udFNpemUnLFxyXG5cclxuICAgIGFkZEdsb2JhbEF0dHJpYnV0ZXMoKSB7XHJcblxyXG4gICAgICAgIHJldHVybiBbXHJcbiAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgIHR5cGVzOiBbJ3RleHRTdHlsZSddLFxyXG4gICAgICAgICAgICAgICAgYXR0cmlidXRlczoge1xyXG5cclxuICAgICAgICAgICAgICAgICAgICBmb250U2l6ZToge1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgZGVmYXVsdDogbnVsbCxcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhcnNlSFRNTDogZWxlbWVudCA9PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZWxlbWVudC5zdHlsZS5mb250U2l6ZSB8fCBudWxsLFxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgcmVuZGVySFRNTDogYXR0cmlidXRlcyA9PiB7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCFhdHRyaWJ1dGVzWydmb250U2l6ZSddKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHt9O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3R5bGU6IGBmb250LXNpemU6ICR7YXR0cmlidXRlc1snZm9udFNpemUnXX1gXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9O1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICBdO1xyXG5cclxuICAgIH0sXHJcblxyXG4gICAgYWRkQ29tbWFuZHMoKSB7XHJcblxyXG4gICAgICAgIHJldHVybiB7XHJcblxyXG4gICAgICAgICAgICBzZXRGb250U2l6ZTpcclxuICAgICAgICAgICAgICAgIChmb250U2l6ZTogc3RyaW5nKSA9PlxyXG4gICAgICAgICAgICAgICAgICAgICh7IGNoYWluIH0pID0+IHtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBjaGFpbigpXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAuc2V0TWFyaygndGV4dFN0eWxlJywgeyBmb250U2l6ZSB9KVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLnJ1bigpO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICB9LFxyXG5cclxuICAgICAgICAgICAgdW5zZXRGb250U2l6ZTpcclxuICAgICAgICAgICAgICAgICgpID0+XHJcbiAgICAgICAgICAgICAgICAgICAgKHsgY2hhaW4gfSkgPT4ge1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGNoYWluKClcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5zZXRNYXJrKCd0ZXh0U3R5bGUnLCB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udFNpemU6IG51bGxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAucmVtb3ZlRW1wdHlUZXh0U3R5bGUoKVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLnJ1bigpO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgIH07XHJcblxyXG4gICAgfVxyXG5cclxufSk7Il19
|
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
import { OnInit } from '@angular/core';
|
|
2
|
-
import { BackgroundModel, LayOutModel } from '../../styles/style.model';
|
|
3
|
-
import { EventsService } from '../../services/events.service';
|
|
4
|
-
import BaseSection from '../BaseSection';
|
|
5
|
-
import { TestimonialMasonryContentModel, TestimonialMasonryModel, TestimonialMasonryStyleModel } from './testimonial-masonry.model';
|
|
6
|
-
import * as i0 from "@angular/core";
|
|
7
|
-
export declare class TestimonialMasonryComponent extends BaseSection implements OnInit {
|
|
8
|
-
private _eventService;
|
|
9
|
-
data?: TestimonialMasonryModel | any;
|
|
10
|
-
edit?: boolean;
|
|
11
|
-
delete?: boolean;
|
|
12
|
-
customClass?: string;
|
|
13
|
-
nextComponentColor?: BackgroundModel;
|
|
14
|
-
index?: number;
|
|
15
|
-
content?: TestimonialMasonryContentModel;
|
|
16
|
-
styles?: TestimonialMasonryStyleModel;
|
|
17
|
-
screenWidth: number;
|
|
18
|
-
constructor(_eventService: EventsService);
|
|
19
|
-
ngOnInit(): void;
|
|
20
|
-
get stylesLayout(): LayOutModel;
|
|
21
|
-
get activeItems(): import("./testimonial-masonry.model").TestimonialMasonryItemModel[];
|
|
22
|
-
getQuote(item: any): string;
|
|
23
|
-
getAuthor(item: any): string;
|
|
24
|
-
getRole(item: any): string;
|
|
25
|
-
getAvatarUrl(item: any): string;
|
|
26
|
-
editSection(): void;
|
|
27
|
-
getScreenSize(): void;
|
|
28
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<TestimonialMasonryComponent, never>;
|
|
29
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<TestimonialMasonryComponent, "simpo-testimonial-masonry", never, { "data": { "alias": "data"; "required": false; }; "edit": { "alias": "edit"; "required": false; }; "delete": { "alias": "delete"; "required": false; }; "customClass": { "alias": "customClass"; "required": false; }; "nextComponentColor": { "alias": "nextComponentColor"; "required": false; }; "index": { "alias": "index"; "required": false; }; }, {}, never, never, true, never>;
|
|
30
|
-
}
|