croco-html 2.18.0 → 2.20.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.
- package/esm2022/lib/components/editor/button-editor/button-editor.component.mjs +45 -0
- package/esm2022/lib/components/editor/download-file-button-editor/download-file-button-editor.component.mjs +42 -0
- package/esm2022/lib/components/editor/external-video-editor/external-video-editor.component.mjs +55 -0
- package/esm2022/lib/components/editor/{external-video-block → external-video-editor}/vk-video-player/vk-video-player.component.mjs +1 -1
- package/esm2022/lib/components/editor/{external-video-block → external-video-editor}/youtube-video-player/youtube-video-player.component.mjs +1 -1
- package/esm2022/lib/components/editor/image-editor/image-editor.component.mjs +5 -4
- package/esm2022/lib/components/editor/index.mjs +2 -2
- package/esm2022/lib/components/editor/main-editor/main-editor.component.mjs +2 -2
- package/esm2022/lib/components/editor/main-editor-block/main-editor-block.component.mjs +9 -7
- package/esm2022/lib/components/editor/visual-editor/DefaultTags.mjs +3 -1
- package/esm2022/lib/components/editor/visual-editor/visual-editor.component.mjs +7 -1
- package/esm2022/lib/components/html-view/html-view.component.mjs +7 -3
- package/esm2022/lib/components/xml-tags/xml-tag-custom-button/xml-tag-button.component.mjs +46 -0
- package/esm2022/lib/components/xml-tags/xml-tag-download-file-button/xml-tag-download-file-button.component.mjs +2 -2
- package/esm2022/lib/components/xml-tags/xml-tag-external-video/xml-tag-external-video.component.mjs +3 -3
- package/esm2022/lib/components/xml-tags/xml-tag-view/xml-tag-view.component.mjs +11 -3
- package/esm2022/lib/croco-html.module.mjs +7 -7
- package/esm2022/lib/extensions/BodyTagsExtensions.mjs +10 -5
- package/esm2022/lib/extensions/ButtonMethods.mjs +19 -0
- package/esm2022/lib/extensions/HtmlExtractionMethods.mjs +3 -1
- package/esm2022/lib/extensions/ImageMethods.mjs +12 -11
- package/esm2022/lib/extensions/TextSimpleMethods.mjs +4 -1
- package/esm2022/lib/index.mjs +19 -19
- package/esm2022/lib/models/models.mjs +1 -1
- package/esm2022/lib/services/HtmlViewController.mjs +13 -0
- package/fesm2022/croco-html.mjs +182 -49
- package/fesm2022/croco-html.mjs.map +1 -1
- package/lib/components/editor/button-editor/button-editor.component.d.ts +13 -0
- package/lib/components/editor/{download-file-button-block/download-file-button-block.component.d.ts → download-file-button-editor/download-file-button-editor.component.d.ts} +3 -3
- package/lib/components/editor/{external-video-block/external-video-block.component.d.ts → external-video-editor/external-video-editor.component.d.ts} +3 -3
- package/lib/components/editor/index.d.ts +1 -1
- package/lib/components/html-view/html-view.component.d.ts +3 -1
- package/lib/components/xml-tags/xml-tag-custom-button/xml-tag-button.component.d.ts +13 -0
- package/lib/components/xml-tags/xml-tag-view/xml-tag-view.component.d.ts +3 -1
- package/lib/croco-html.module.d.ts +4 -4
- package/lib/extensions/ButtonMethods.d.ts +18 -0
- package/lib/extensions/HtmlExtractionMethods.d.ts +1 -1
- package/lib/extensions/ImageMethods.d.ts +5 -3
- package/lib/extensions/TextSimpleMethods.d.ts +3 -0
- package/lib/index.d.ts +20 -20
- package/lib/services/HtmlViewController.d.ts +8 -0
- package/package.json +1 -1
- package/esm2022/lib/components/editor/download-file-button-block/download-file-button-block.component.mjs +0 -42
- package/esm2022/lib/components/editor/external-video-block/external-video-block.component.mjs +0 -55
- /package/lib/components/editor/{external-video-block → external-video-editor}/vk-video-player/vk-video-player.component.d.ts +0 -0
- /package/lib/components/editor/{external-video-block → external-video-editor}/youtube-video-player/youtube-video-player.component.d.ts +0 -0
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { EventEmitter } from '@angular/core';
|
|
2
|
+
import { HtmlBodyTag } from "../../../models/models";
|
|
3
|
+
import { ButtonTagData } from "../../../extensions/ButtonMethods";
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
export declare class ButtonEditorComponent {
|
|
6
|
+
tag: HtmlBodyTag;
|
|
7
|
+
onTagUpdated: EventEmitter<HtmlBodyTag>;
|
|
8
|
+
tagData: ButtonTagData;
|
|
9
|
+
ngOnInit(): void;
|
|
10
|
+
linkChanged(): void;
|
|
11
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<ButtonEditorComponent, never>;
|
|
12
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<ButtonEditorComponent, "croco-html-button-editor", never, { "tag": { "alias": "tag"; "required": false; }; }, { "onTagUpdated": "onTagUpdated"; }, never, never, true, never>;
|
|
13
|
+
}
|
|
@@ -2,12 +2,12 @@ import { EventEmitter } from '@angular/core';
|
|
|
2
2
|
import { HtmlBodyTag } from "../../../models/models";
|
|
3
3
|
import { DownloadButtonTagData } from "../../../extensions/DownloadButtonMethods";
|
|
4
4
|
import * as i0 from "@angular/core";
|
|
5
|
-
export declare class
|
|
5
|
+
export declare class DownloadFileButtonEditorComponent {
|
|
6
6
|
tag: HtmlBodyTag;
|
|
7
7
|
onTagUpdated: EventEmitter<HtmlBodyTag>;
|
|
8
8
|
tagData: DownloadButtonTagData;
|
|
9
9
|
ngOnInit(): void;
|
|
10
10
|
linkChanged(): void;
|
|
11
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<
|
|
12
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<
|
|
11
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<DownloadFileButtonEditorComponent, never>;
|
|
12
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<DownloadFileButtonEditorComponent, "croco-html-download-file-button-editor", never, { "tag": { "alias": "tag"; "required": false; }; }, { "onTagUpdated": "onTagUpdated"; }, never, never, true, never>;
|
|
13
13
|
}
|
|
@@ -2,7 +2,7 @@ import { EventEmitter, OnInit } from '@angular/core';
|
|
|
2
2
|
import { ExternalVideoTagData, ExternalVideoSupportedTypes } from '../../../extensions';
|
|
3
3
|
import { HtmlBodyTag } from '../../../models/models';
|
|
4
4
|
import * as i0 from "@angular/core";
|
|
5
|
-
export declare class
|
|
5
|
+
export declare class ExternalVideoEditorComponent implements OnInit {
|
|
6
6
|
tag: HtmlBodyTag;
|
|
7
7
|
onTagUpdated: EventEmitter<HtmlBodyTag>;
|
|
8
8
|
protected readonly ExternalVideoSupportedTypes: typeof ExternalVideoSupportedTypes;
|
|
@@ -11,6 +11,6 @@ export declare class ExternalVideoBlockComponent implements OnInit {
|
|
|
11
11
|
ngOnInit(): void;
|
|
12
12
|
linkChanged(): void;
|
|
13
13
|
createLinkByIFrame(): void;
|
|
14
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<
|
|
15
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<
|
|
14
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<ExternalVideoEditorComponent, never>;
|
|
15
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<ExternalVideoEditorComponent, "croco-html-external-video-editor", never, { "tag": { "alias": "tag"; "required": false; }; }, { "onTagUpdated": "onTagUpdated"; }, never, never, true, never>;
|
|
16
16
|
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export * from './external-video-
|
|
1
|
+
export * from './external-video-editor/external-video-editor.component';
|
|
2
2
|
export * from './html-raw-editor/html-raw-editor.component';
|
|
3
3
|
export * from './image-editor/image-editor.component';
|
|
4
4
|
export * from './main-editor/main-editor.component';
|
|
@@ -1,6 +1,8 @@
|
|
|
1
|
+
import { HtmlViewController } from '../../services/HtmlViewController';
|
|
1
2
|
import * as i0 from "@angular/core";
|
|
2
3
|
export declare class HtmlViewComponent {
|
|
3
4
|
html: string;
|
|
5
|
+
controller: HtmlViewController;
|
|
4
6
|
static ɵfac: i0.ɵɵFactoryDeclaration<HtmlViewComponent, never>;
|
|
5
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<HtmlViewComponent, "croco-html-view", never, { "html": { "alias": "html"; "required": false; }; }, {}, never, never, true, never>;
|
|
7
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<HtmlViewComponent, "croco-html-view", never, { "html": { "alias": "html"; "required": false; }; "controller": { "alias": "controller"; "required": false; }; }, {}, never, never, true, never>;
|
|
6
8
|
}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { InterfaceBlock } from "../../../extensions/InterfaceBlock";
|
|
2
|
+
import { ButtonTagData } from "../../../extensions/ButtonMethods";
|
|
3
|
+
import { HtmlViewController } from '../../../services/HtmlViewController';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
export declare class XmlTagButtonComponent {
|
|
6
|
+
set data(value: InterfaceBlock);
|
|
7
|
+
set tagData(value: ButtonTagData);
|
|
8
|
+
controller: HtmlViewController;
|
|
9
|
+
_block: ButtonTagData;
|
|
10
|
+
clickHandler(): void;
|
|
11
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<XmlTagButtonComponent, never>;
|
|
12
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<XmlTagButtonComponent, "croco-html-xml-tag-button", never, { "data": { "alias": "data"; "required": false; }; "tagData": { "alias": "tagData"; "required": false; }; "controller": { "alias": "controller"; "required": false; }; }, {}, never, never, true, never>;
|
|
13
|
+
}
|
|
@@ -1,8 +1,10 @@
|
|
|
1
1
|
import { InterfaceBlock } from "../../../extensions/InterfaceBlock";
|
|
2
|
+
import { HtmlViewController } from '../../../services/HtmlViewController';
|
|
2
3
|
import * as i0 from "@angular/core";
|
|
3
4
|
export declare class XmlTagViewComponent {
|
|
4
5
|
data: InterfaceBlock[];
|
|
6
|
+
controller: HtmlViewController;
|
|
5
7
|
isHeaderTextTag(item: InterfaceBlock): boolean;
|
|
6
8
|
static ɵfac: i0.ɵɵFactoryDeclaration<XmlTagViewComponent, never>;
|
|
7
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<XmlTagViewComponent, "croco-html-xml-tag-view", never, { "data": { "alias": "data"; "required": false; }; }, {}, never, never, true, never>;
|
|
9
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<XmlTagViewComponent, "croco-html-xml-tag-view", never, { "data": { "alias": "data"; "required": false; }; "controller": { "alias": "controller"; "required": false; }; }, {}, never, never, true, never>;
|
|
8
10
|
}
|
|
@@ -32,9 +32,9 @@ import * as i30 from "@angular/material/icon";
|
|
|
32
32
|
import * as i31 from "@angular/cdk/drag-drop";
|
|
33
33
|
import * as i32 from "@angular/material/button-toggle";
|
|
34
34
|
import * as i33 from "./components/error-banner/error-banner.component";
|
|
35
|
-
import * as i34 from "./components/editor/external-video-
|
|
36
|
-
import * as i35 from "./components/editor/external-video-
|
|
37
|
-
import * as i36 from "./components/editor/download-file-button-
|
|
35
|
+
import * as i34 from "./components/editor/external-video-editor/vk-video-player/vk-video-player.component";
|
|
36
|
+
import * as i35 from "./components/editor/external-video-editor/youtube-video-player/youtube-video-player.component";
|
|
37
|
+
import * as i36 from "./components/editor/download-file-button-editor/download-file-button-editor.component";
|
|
38
38
|
import * as i37 from "./components/xml-tags/xml-tag-download-file-button/xml-tag-download-file-button.component";
|
|
39
39
|
import * as i38 from "./components/upload-files-btn/upload-files-btn.component";
|
|
40
40
|
import * as i39 from "./components/html-view/html-view.component";
|
|
@@ -63,6 +63,6 @@ import * as i61 from "./pipes/ToHtmlBodyTagsPipe";
|
|
|
63
63
|
import * as i62 from "./pipes/ToPreviewHtmlPipe";
|
|
64
64
|
export declare class CrocoHtmlModule {
|
|
65
65
|
static ɵfac: i0.ɵɵFactoryDeclaration<CrocoHtmlModule, never>;
|
|
66
|
-
static ɵmod: i0.ɵɵNgModuleDeclaration<CrocoHtmlModule, never, [typeof i1.CommonModule, typeof i2.FormsModule, typeof i2.ReactiveFormsModule, typeof i3.NgSelectModule, typeof i4.MatBadgeModule, typeof i5.MatTableModule, typeof i6.MatExpansionModule, typeof i7.MatFormFieldModule, typeof i8.MatSnackBarModule, typeof i9.MatProgressBarModule, typeof i10.MatProgressSpinnerModule, typeof i11.MatTabsModule, typeof i12.MatMenuModule, typeof i13.MatCardModule, typeof i14.MatSelectModule, typeof i15.MatTooltipModule, typeof i16.MatCheckboxModule, typeof i17.MatChipsModule, typeof i18.MatListModule, typeof i19.MatButtonModule, typeof i20.MatInputModule, typeof i21.MatDialogModule, typeof i22.MatPaginatorModule, typeof i23.MatDatepickerModule, typeof i24.MatGridListModule, typeof i25.MatSlideToggleModule, typeof i26.MatTreeModule, typeof i27.MatNativeDateModule, typeof i28.MatAutocompleteModule, typeof i29.MatSidenavModule, typeof i30.MatIconModule, typeof i31.DragDropModule, typeof i32.MatButtonToggleModule, typeof i33.ErrorBannerComponent, typeof i34.VkVideoPlayerComponent, typeof i35.YoutubeVideoPlayerComponent, typeof i36.
|
|
66
|
+
static ɵmod: i0.ɵɵNgModuleDeclaration<CrocoHtmlModule, never, [typeof i1.CommonModule, typeof i2.FormsModule, typeof i2.ReactiveFormsModule, typeof i3.NgSelectModule, typeof i4.MatBadgeModule, typeof i5.MatTableModule, typeof i6.MatExpansionModule, typeof i7.MatFormFieldModule, typeof i8.MatSnackBarModule, typeof i9.MatProgressBarModule, typeof i10.MatProgressSpinnerModule, typeof i11.MatTabsModule, typeof i12.MatMenuModule, typeof i13.MatCardModule, typeof i14.MatSelectModule, typeof i15.MatTooltipModule, typeof i16.MatCheckboxModule, typeof i17.MatChipsModule, typeof i18.MatListModule, typeof i19.MatButtonModule, typeof i20.MatInputModule, typeof i21.MatDialogModule, typeof i22.MatPaginatorModule, typeof i23.MatDatepickerModule, typeof i24.MatGridListModule, typeof i25.MatSlideToggleModule, typeof i26.MatTreeModule, typeof i27.MatNativeDateModule, typeof i28.MatAutocompleteModule, typeof i29.MatSidenavModule, typeof i30.MatIconModule, typeof i31.DragDropModule, typeof i32.MatButtonToggleModule, typeof i33.ErrorBannerComponent, typeof i34.VkVideoPlayerComponent, typeof i35.YoutubeVideoPlayerComponent, typeof i36.DownloadFileButtonEditorComponent, typeof i37.XmlTagDownloadFileButtonComponent, typeof i38.UploadFilesBtnComponent, typeof i39.HtmlViewComponent, typeof i40.XmlTagTableViewComponent, typeof i41.XmlTagViewComponent, typeof i42.XmlTagRichTextViewComponent, typeof i43.XmlTagHtmlViewComponent, typeof i44.XmlTagTextViewComponent, typeof i45.XmlTagHeaderTextViewComponent, typeof i46.XmlTagHeaderInnerTextViewComponent, typeof i47.XmlTagExternalVideoComponent, typeof i48.HtmlRawViewComponent, typeof i49.FileImageTagViewComponent, typeof i39.HtmlViewComponent, typeof i50.MainEditorComponent, typeof i51.FileIdSelectComponent, typeof i52.TextEditorComponent, typeof i53.ImageEditorComponent, typeof i54.MainEditorBlockComponent, typeof i55.VisualEditorComponent, typeof i56.AddFilesBtnComponent, typeof i57.HtmlRawEditorComponent, typeof i58.RichTextToHtmlPipe, typeof i59.TagToSpanPipe, typeof i60.ToPreviewPipe, typeof i61.ToHtmlBodyTagsPipe, typeof i62.ToPreviewHtmlPipe], [typeof i38.UploadFilesBtnComponent, typeof i39.HtmlViewComponent, typeof i40.XmlTagTableViewComponent, typeof i41.XmlTagViewComponent, typeof i42.XmlTagRichTextViewComponent, typeof i43.XmlTagHtmlViewComponent, typeof i44.XmlTagTextViewComponent, typeof i45.XmlTagHeaderTextViewComponent, typeof i46.XmlTagHeaderInnerTextViewComponent, typeof i47.XmlTagExternalVideoComponent, typeof i48.HtmlRawViewComponent, typeof i49.FileImageTagViewComponent, typeof i39.HtmlViewComponent, typeof i50.MainEditorComponent, typeof i51.FileIdSelectComponent, typeof i52.TextEditorComponent, typeof i53.ImageEditorComponent, typeof i54.MainEditorBlockComponent, typeof i55.VisualEditorComponent, typeof i56.AddFilesBtnComponent, typeof i57.HtmlRawEditorComponent, typeof i58.RichTextToHtmlPipe, typeof i59.TagToSpanPipe, typeof i60.ToPreviewPipe, typeof i61.ToHtmlBodyTagsPipe, typeof i62.ToPreviewHtmlPipe]>;
|
|
67
67
|
static ɵinj: i0.ɵɵInjectorDeclaration<CrocoHtmlModule>;
|
|
68
68
|
}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
export declare class ButtonTagDataConsts {
|
|
2
|
+
static TagName: string;
|
|
3
|
+
static TextAttrName: string;
|
|
4
|
+
static TypeAttrName: string;
|
|
5
|
+
static ClickAttrName: string;
|
|
6
|
+
}
|
|
7
|
+
export interface ButtonTag {
|
|
8
|
+
type: string;
|
|
9
|
+
data: ButtonTagData;
|
|
10
|
+
}
|
|
11
|
+
export interface ButtonTagData {
|
|
12
|
+
text: string;
|
|
13
|
+
type: string;
|
|
14
|
+
click: string;
|
|
15
|
+
}
|
|
16
|
+
export declare class ButtonMethods {
|
|
17
|
+
static ExtractDownloadButtonTag(elem: HTMLElement): ButtonTag;
|
|
18
|
+
}
|
|
@@ -30,7 +30,7 @@ export declare class HtmlExtractionMethods {
|
|
|
30
30
|
data: {
|
|
31
31
|
innerHTML: string;
|
|
32
32
|
};
|
|
33
|
-
}) | ((elem: HTMLElement, options: CrocoHtmlOptions) => GenericTextTag) | ((elem: HTMLElement, options: CrocoHtmlOptions) => import("./VideoMethods").ExternalVideoTag) | ((elem: HTMLElement, options: CrocoHtmlOptions) => import("./DownloadButtonMethods").DownloadButtonTag);
|
|
33
|
+
}) | ((elem: HTMLElement, options: CrocoHtmlOptions) => GenericTextTag) | ((elem: HTMLElement, options: CrocoHtmlOptions) => import("./VideoMethods").ExternalVideoTag) | ((elem: HTMLElement, options: CrocoHtmlOptions) => import("./DownloadButtonMethods").DownloadButtonTag) | ((elem: HTMLElement, options: CrocoHtmlOptions) => import("./ButtonMethods").ButtonTag);
|
|
34
34
|
TEXT: (elem: HTMLElement, options: CrocoHtmlOptions) => import("./TextSimpleMethods").SimpleTextTag;
|
|
35
35
|
"FILE-IMAGE": (elem: HTMLElement, options: CrocoHtmlOptions) => import("./ImageMethods").FileImageTag;
|
|
36
36
|
TABLE: (elem: HTMLElement, options: CrocoHtmlOptions) => {
|
|
@@ -4,7 +4,8 @@ export declare class FileImageTagDataConsts {
|
|
|
4
4
|
static FileIdAttrName: string;
|
|
5
5
|
static ScreenMediaRequest: string;
|
|
6
6
|
static DefaultValueForFileImage: string;
|
|
7
|
-
static
|
|
7
|
+
static MaxScreenWidth: string;
|
|
8
|
+
static MinScreenWidth: string;
|
|
8
9
|
static MaxImageHeight: string;
|
|
9
10
|
}
|
|
10
11
|
export interface FileImageTag {
|
|
@@ -17,7 +18,8 @@ export interface FileImageTagData {
|
|
|
17
18
|
screenMediaRequest: string;
|
|
18
19
|
}
|
|
19
20
|
export interface IMediaRequest {
|
|
20
|
-
|
|
21
|
+
minScreenWidth: number;
|
|
22
|
+
maxScreenWidth: number;
|
|
21
23
|
maxImageHeight: number;
|
|
22
24
|
}
|
|
23
25
|
export declare class ImageMethods {
|
|
@@ -28,5 +30,5 @@ export declare class ImageMethods {
|
|
|
28
30
|
static mediaRequestStringToArrayParser: (data: string) => IMediaRequest[];
|
|
29
31
|
static createMediaRequestValue(arr: string[], attribute: string): number;
|
|
30
32
|
static mediaRequestsArrayToStringParser: (data: IMediaRequest[]) => string;
|
|
31
|
-
static screenSizeChanged: (screenSize: number, requests: IMediaRequest[]) =>
|
|
33
|
+
static screenSizeChanged: (screenSize: number, requests: IMediaRequest[]) => void;
|
|
32
34
|
}
|
package/lib/index.d.ts
CHANGED
|
@@ -1,22 +1,22 @@
|
|
|
1
|
-
import { ImageEditorComponent } from "./components
|
|
2
|
-
import { MainEditorBlockComponent } from "./components
|
|
3
|
-
import { MainEditorComponent } from "./components
|
|
4
|
-
import { FileIdSelectComponent } from "./components
|
|
5
|
-
import { XmlTagHeaderTextViewComponent } from "./components
|
|
6
|
-
import { XmlTagHtmlViewComponent } from "./components
|
|
7
|
-
import { XmlTagRichTextViewComponent } from "./components
|
|
8
|
-
import { XmlTagTableViewComponent } from "./components
|
|
9
|
-
import { XmlTagViewComponent } from "./components
|
|
10
|
-
import { VisualEditorComponent } from './components
|
|
11
|
-
import { AddFilesBtnComponent } from './components
|
|
12
|
-
import { XmlTagExternalVideoComponent } from "./components
|
|
13
|
-
import { HtmlRawEditorComponent } from "./components
|
|
14
|
-
import {
|
|
1
|
+
import { ImageEditorComponent } from "./components";
|
|
2
|
+
import { MainEditorBlockComponent } from "./components";
|
|
3
|
+
import { MainEditorComponent } from "./components";
|
|
4
|
+
import { FileIdSelectComponent } from "./components";
|
|
5
|
+
import { XmlTagHeaderTextViewComponent } from "./components";
|
|
6
|
+
import { XmlTagHtmlViewComponent } from "./components";
|
|
7
|
+
import { XmlTagRichTextViewComponent } from "./components";
|
|
8
|
+
import { XmlTagTableViewComponent } from "./components";
|
|
9
|
+
import { XmlTagViewComponent } from "./components";
|
|
10
|
+
import { VisualEditorComponent } from './components';
|
|
11
|
+
import { AddFilesBtnComponent } from './components';
|
|
12
|
+
import { XmlTagExternalVideoComponent } from "./components";
|
|
13
|
+
import { HtmlRawEditorComponent } from "./components";
|
|
14
|
+
import { MatFormFieldModule } from '@angular/material/form-field';
|
|
15
15
|
import { RichTextToHtmlPipe, TagToSpanPipe, ToHtmlBodyTagsPipe, ToPreviewHtmlPipe, ToPreviewPipe } from "./pipes";
|
|
16
16
|
import { FileImageTagViewComponent, UploadFilesBtnComponent } from "./components";
|
|
17
|
-
import { HtmlRawViewComponent } from "./components
|
|
18
|
-
export declare const EditorComponents: (typeof
|
|
19
|
-
export declare const XmlComponents: (typeof
|
|
20
|
-
export declare const CrocoPipes: (typeof
|
|
21
|
-
export declare const CrocoHtmlDeclarations: (typeof
|
|
22
|
-
export declare const MaterialModules: (typeof
|
|
17
|
+
import { HtmlRawViewComponent } from "./components";
|
|
18
|
+
export declare const EditorComponents: (typeof VisualEditorComponent | typeof MainEditorComponent | typeof AddFilesBtnComponent | typeof HtmlRawEditorComponent | typeof FileIdSelectComponent | typeof ImageEditorComponent | typeof MainEditorBlockComponent)[];
|
|
19
|
+
export declare const XmlComponents: (typeof XmlTagViewComponent | typeof HtmlRawViewComponent | typeof XmlTagHeaderTextViewComponent | typeof FileImageTagViewComponent | typeof XmlTagHtmlViewComponent | typeof XmlTagExternalVideoComponent | typeof XmlTagRichTextViewComponent | typeof XmlTagTableViewComponent)[];
|
|
20
|
+
export declare const CrocoPipes: (typeof ToPreviewPipe | typeof RichTextToHtmlPipe | typeof TagToSpanPipe | typeof ToHtmlBodyTagsPipe | typeof ToPreviewHtmlPipe)[];
|
|
21
|
+
export declare const CrocoHtmlDeclarations: (typeof XmlTagViewComponent | typeof ToPreviewPipe | typeof HtmlRawViewComponent | typeof XmlTagHeaderTextViewComponent | typeof FileImageTagViewComponent | typeof XmlTagHtmlViewComponent | typeof XmlTagExternalVideoComponent | typeof VisualEditorComponent | typeof MainEditorComponent | typeof UploadFilesBtnComponent | typeof AddFilesBtnComponent | typeof RichTextToHtmlPipe | typeof XmlTagRichTextViewComponent | typeof XmlTagTableViewComponent | typeof HtmlRawEditorComponent | typeof FileIdSelectComponent | typeof ImageEditorComponent | typeof MainEditorBlockComponent | typeof TagToSpanPipe | typeof ToHtmlBodyTagsPipe | typeof ToPreviewHtmlPipe)[];
|
|
22
|
+
export declare const MaterialModules: (typeof MatFormFieldModule)[];
|
package/package.json
CHANGED
|
@@ -1,42 +0,0 @@
|
|
|
1
|
-
import { Component, EventEmitter, Input, Output } from '@angular/core';
|
|
2
|
-
import { MatFormField, MatFormFieldModule } from "@angular/material/form-field";
|
|
3
|
-
import { MatInput } from "@angular/material/input";
|
|
4
|
-
import { FormsModule, ReactiveFormsModule } from "@angular/forms";
|
|
5
|
-
import { XmlTagDownloadFileButtonComponent } from "../../xml-tags/xml-tag-download-file-button/xml-tag-download-file-button.component";
|
|
6
|
-
import * as i0 from "@angular/core";
|
|
7
|
-
import * as i1 from "@angular/forms";
|
|
8
|
-
import * as i2 from "@angular/material/form-field";
|
|
9
|
-
export class DownloadFileButtonBlockComponent {
|
|
10
|
-
constructor() {
|
|
11
|
-
this.onTagUpdated = new EventEmitter();
|
|
12
|
-
this.tagData = {
|
|
13
|
-
link: '',
|
|
14
|
-
title: ''
|
|
15
|
-
};
|
|
16
|
-
}
|
|
17
|
-
ngOnInit() {
|
|
18
|
-
this.tagData.link = this.tag.attributes.link;
|
|
19
|
-
this.tagData.title = this.tag.attributes.title;
|
|
20
|
-
}
|
|
21
|
-
linkChanged() {
|
|
22
|
-
this.tag.attributes = this.tagData;
|
|
23
|
-
}
|
|
24
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: DownloadFileButtonBlockComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
25
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.4", type: DownloadFileButtonBlockComponent, isStandalone: true, selector: "croco-html-download-file-button-block", inputs: { tag: "tag" }, outputs: { onTagUpdated: "onTagUpdated" }, ngImport: i0, template: "@if (tag.presentOrEdit) {\n <div>\n <div>\n \u0421\u0441\u044B\u043B\u043A\u0430 \u0434\u043B\u044F \u0441\u043A\u0430\u0447\u0438\u0432\u0430\u043D\u0438\u044F: {{tagData.link}}\n </div>\n <div style=\"height: 10px;\"></div>\n <div>\n \u0422\u0435\u043A\u0441\u0442 \u043A\u043D\u043E\u043F\u043A\u0438: {{tagData.title}}\n </div>\n <div style=\"height: 20px;\"></div>\n <croco-html-xml-tag-download-file-button [tagData]=\"tagData\"></croco-html-xml-tag-download-file-button>\n </div>\n}\n\n@if (!tag.presentOrEdit) {\n <div>\n <mat-form-field class=\"w-100\">\n <mat-label>\n \u0421\u0441\u044B\u043B\u043A\u0430 \u043D\u0430 \u0441\u043A\u0430\u0447\u0438\u0432\u0430\u043D\u0438\u0435\n </mat-label>\n <input matInput placeholder=\"\u0421\u0441\u044B\u043B\u043A\u0430 \u043D\u0430 \u0441\u043A\u0430\u0447\u0438\u0432\u0430\u043D\u0438\u0435\"\n autocomplete=\"off\"\n [(ngModel)]=\"tagData.link\"\n (ngModelChange)=\"linkChanged()\">\n </mat-form-field>\n\n <mat-form-field class=\"w-100\">\n <mat-label>\n \u0422\u0435\u043A\u0441\u0442 \u043D\u0430 \u043A\u043D\u043E\u043F\u043A\u0435\n </mat-label>\n <input matInput placeholder=\"\u0422\u0435\u043A\u0441\u0442 \u043D\u0430 \u043A\u043D\u043E\u043F\u043A\u0435\"\n autocomplete=\"off\"\n [(ngModel)]=\"tagData.title\"\n (ngModelChange)=\"linkChanged()\">\n </mat-form-field>\n </div>\n}\n", styles: [""], dependencies: [{ kind: "component", type: MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: XmlTagDownloadFileButtonComponent, selector: "croco-html-xml-tag-download-file-button", inputs: ["data", "tagData"] }, { kind: "ngmodule", type: MatFormFieldModule }, { kind: "directive", type: i2.MatLabel, selector: "mat-label" }] }); }
|
|
26
|
-
}
|
|
27
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: DownloadFileButtonBlockComponent, decorators: [{
|
|
28
|
-
type: Component,
|
|
29
|
-
args: [{ selector: 'croco-html-download-file-button-block', standalone: true, imports: [
|
|
30
|
-
MatFormField,
|
|
31
|
-
MatInput,
|
|
32
|
-
ReactiveFormsModule,
|
|
33
|
-
FormsModule,
|
|
34
|
-
XmlTagDownloadFileButtonComponent,
|
|
35
|
-
MatFormFieldModule
|
|
36
|
-
], template: "@if (tag.presentOrEdit) {\n <div>\n <div>\n \u0421\u0441\u044B\u043B\u043A\u0430 \u0434\u043B\u044F \u0441\u043A\u0430\u0447\u0438\u0432\u0430\u043D\u0438\u044F: {{tagData.link}}\n </div>\n <div style=\"height: 10px;\"></div>\n <div>\n \u0422\u0435\u043A\u0441\u0442 \u043A\u043D\u043E\u043F\u043A\u0438: {{tagData.title}}\n </div>\n <div style=\"height: 20px;\"></div>\n <croco-html-xml-tag-download-file-button [tagData]=\"tagData\"></croco-html-xml-tag-download-file-button>\n </div>\n}\n\n@if (!tag.presentOrEdit) {\n <div>\n <mat-form-field class=\"w-100\">\n <mat-label>\n \u0421\u0441\u044B\u043B\u043A\u0430 \u043D\u0430 \u0441\u043A\u0430\u0447\u0438\u0432\u0430\u043D\u0438\u0435\n </mat-label>\n <input matInput placeholder=\"\u0421\u0441\u044B\u043B\u043A\u0430 \u043D\u0430 \u0441\u043A\u0430\u0447\u0438\u0432\u0430\u043D\u0438\u0435\"\n autocomplete=\"off\"\n [(ngModel)]=\"tagData.link\"\n (ngModelChange)=\"linkChanged()\">\n </mat-form-field>\n\n <mat-form-field class=\"w-100\">\n <mat-label>\n \u0422\u0435\u043A\u0441\u0442 \u043D\u0430 \u043A\u043D\u043E\u043F\u043A\u0435\n </mat-label>\n <input matInput placeholder=\"\u0422\u0435\u043A\u0441\u0442 \u043D\u0430 \u043A\u043D\u043E\u043F\u043A\u0435\"\n autocomplete=\"off\"\n [(ngModel)]=\"tagData.title\"\n (ngModelChange)=\"linkChanged()\">\n </mat-form-field>\n </div>\n}\n" }]
|
|
37
|
-
}], propDecorators: { tag: [{
|
|
38
|
-
type: Input
|
|
39
|
-
}], onTagUpdated: [{
|
|
40
|
-
type: Output
|
|
41
|
-
}] } });
|
|
42
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG93bmxvYWQtZmlsZS1idXR0b24tYmxvY2suY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY3JvY28taHRtbC9zcmMvbGliL2NvbXBvbmVudHMvZWRpdG9yL2Rvd25sb2FkLWZpbGUtYnV0dG9uLWJsb2NrL2Rvd25sb2FkLWZpbGUtYnV0dG9uLWJsb2NrLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Nyb2NvLWh0bWwvc3JjL2xpYi9jb21wb25lbnRzL2VkaXRvci9kb3dubG9hZC1maWxlLWJ1dHRvbi1ibG9jay9kb3dubG9hZC1maWxlLWJ1dHRvbi1ibG9jay5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3JFLE9BQU8sRUFBQyxZQUFZLEVBQUUsa0JBQWtCLEVBQUMsTUFBTSw4QkFBOEIsQ0FBQztBQUM5RSxPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0seUJBQXlCLENBQUM7QUFDakQsT0FBTyxFQUFDLFdBQVcsRUFBRSxtQkFBbUIsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBRWhFLE9BQU8sRUFBQyxpQ0FBaUMsRUFBQyxNQUFNLG9GQUFvRixDQUFDOzs7O0FBaUJySSxNQUFNLE9BQU8sZ0NBQWdDO0lBZDdDO1FBb0JFLGlCQUFZLEdBQUcsSUFBSSxZQUFZLEVBQWUsQ0FBQztRQUUvQyxZQUFPLEdBQTBCO1lBQy9CLElBQUksRUFBRSxFQUFFO1lBQ1IsS0FBSyxFQUFFLEVBQUU7U0FDVixDQUFDO0tBVUg7SUFSQyxRQUFRO1FBQ04sSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLEdBQUksSUFBSSxDQUFDLEdBQUcsQ0FBQyxVQUFvQyxDQUFDLElBQUksQ0FBQztRQUN4RSxJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssR0FBSSxJQUFJLENBQUMsR0FBRyxDQUFDLFVBQW9DLENBQUMsS0FBSyxDQUFDO0lBQzVFLENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLEdBQUcsQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQztJQUNyQyxDQUFDOzhHQXBCVSxnQ0FBZ0M7a0dBQWhDLGdDQUFnQyxvS0N0QjdDLDJqREFxQ0EsMEREekJJLFlBQVksNExBQ1osUUFBUSxnVUFDUixtQkFBbUIsc1pBQ25CLFdBQVcsdVBBQ1gsaUNBQWlDLGdIQUNqQyxrQkFBa0I7OzJGQUtULGdDQUFnQztrQkFkNUMsU0FBUzsrQkFDRSx1Q0FBdUMsY0FDckMsSUFBSSxXQUNQO3dCQUNQLFlBQVk7d0JBQ1osUUFBUTt3QkFDUixtQkFBbUI7d0JBQ25CLFdBQVc7d0JBQ1gsaUNBQWlDO3dCQUNqQyxrQkFBa0I7cUJBQ25COzhCQU9ELEdBQUc7c0JBREYsS0FBSztnQkFJTixZQUFZO3NCQURYLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT3V0cHV0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7TWF0Rm9ybUZpZWxkLCBNYXRGb3JtRmllbGRNb2R1bGV9IGZyb20gXCJAYW5ndWxhci9tYXRlcmlhbC9mb3JtLWZpZWxkXCI7XG5pbXBvcnQge01hdElucHV0fSBmcm9tIFwiQGFuZ3VsYXIvbWF0ZXJpYWwvaW5wdXRcIjtcbmltcG9ydCB7Rm9ybXNNb2R1bGUsIFJlYWN0aXZlRm9ybXNNb2R1bGV9IGZyb20gXCJAYW5ndWxhci9mb3Jtc1wiO1xuaW1wb3J0IHtIdG1sQm9keVRhZ30gZnJvbSBcIi4uLy4uLy4uL21vZGVscy9tb2RlbHNcIjtcbmltcG9ydCB7WG1sVGFnRG93bmxvYWRGaWxlQnV0dG9uQ29tcG9uZW50fSBmcm9tIFwiLi4vLi4veG1sLXRhZ3MveG1sLXRhZy1kb3dubG9hZC1maWxlLWJ1dHRvbi94bWwtdGFnLWRvd25sb2FkLWZpbGUtYnV0dG9uLmNvbXBvbmVudFwiO1xuaW1wb3J0IHtEb3dubG9hZEJ1dHRvblRhZ0RhdGF9IGZyb20gXCIuLi8uLi8uLi9leHRlbnNpb25zL0Rvd25sb2FkQnV0dG9uTWV0aG9kc1wiO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdjcm9jby1odG1sLWRvd25sb2FkLWZpbGUtYnV0dG9uLWJsb2NrJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1xuICAgIE1hdEZvcm1GaWVsZCxcbiAgICBNYXRJbnB1dCxcbiAgICBSZWFjdGl2ZUZvcm1zTW9kdWxlLFxuICAgIEZvcm1zTW9kdWxlLFxuICAgIFhtbFRhZ0Rvd25sb2FkRmlsZUJ1dHRvbkNvbXBvbmVudCxcbiAgICBNYXRGb3JtRmllbGRNb2R1bGVcbiAgXSxcbiAgdGVtcGxhdGVVcmw6ICcuL2Rvd25sb2FkLWZpbGUtYnV0dG9uLWJsb2NrLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmw6ICcuL2Rvd25sb2FkLWZpbGUtYnV0dG9uLWJsb2NrLmNvbXBvbmVudC5jc3MnXG59KVxuZXhwb3J0IGNsYXNzIERvd25sb2FkRmlsZUJ1dHRvbkJsb2NrQ29tcG9uZW50IHtcblxuICBASW5wdXQoKVxuICB0YWc6IEh0bWxCb2R5VGFnO1xuXG4gIEBPdXRwdXQoKVxuICBvblRhZ1VwZGF0ZWQgPSBuZXcgRXZlbnRFbWl0dGVyPEh0bWxCb2R5VGFnPigpO1xuXG4gIHRhZ0RhdGE6IERvd25sb2FkQnV0dG9uVGFnRGF0YSA9IHtcbiAgICBsaW5rOiAnJyxcbiAgICB0aXRsZTogJydcbiAgfTtcblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLnRhZ0RhdGEubGluayA9ICh0aGlzLnRhZy5hdHRyaWJ1dGVzIGFzIERvd25sb2FkQnV0dG9uVGFnRGF0YSkubGluaztcbiAgICB0aGlzLnRhZ0RhdGEudGl0bGUgPSAodGhpcy50YWcuYXR0cmlidXRlcyBhcyBEb3dubG9hZEJ1dHRvblRhZ0RhdGEpLnRpdGxlO1xuICB9XG5cbiAgbGlua0NoYW5nZWQoKXtcbiAgICB0aGlzLnRhZy5hdHRyaWJ1dGVzID0gdGhpcy50YWdEYXRhO1xuICB9XG59XG4iLCJAaWYgKHRhZy5wcmVzZW50T3JFZGl0KSB7XG4gIDxkaXY+XG4gICAgPGRpdj5cbiAgICAgINCh0YHRi9C70LrQsCDQtNC70Y8g0YHQutCw0YfQuNCy0LDQvdC40Y86IHt7dGFnRGF0YS5saW5rfX1cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IHN0eWxlPVwiaGVpZ2h0OiAxMHB4O1wiPjwvZGl2PlxuICAgIDxkaXY+XG4gICAgICDQotC10LrRgdGCINC60L3QvtC/0LrQuDoge3t0YWdEYXRhLnRpdGxlfX1cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IHN0eWxlPVwiaGVpZ2h0OiAyMHB4O1wiPjwvZGl2PlxuICAgIDxjcm9jby1odG1sLXhtbC10YWctZG93bmxvYWQtZmlsZS1idXR0b24gW3RhZ0RhdGFdPVwidGFnRGF0YVwiPjwvY3JvY28taHRtbC14bWwtdGFnLWRvd25sb2FkLWZpbGUtYnV0dG9uPlxuICA8L2Rpdj5cbn1cblxuQGlmICghdGFnLnByZXNlbnRPckVkaXQpIHtcbiAgICAgIDxkaXY+XG4gICAgICAgIDxtYXQtZm9ybS1maWVsZCBjbGFzcz1cInctMTAwXCI+XG4gICAgICAgICAgPG1hdC1sYWJlbD5cbiAgICAgICAgICAgINCh0YHRi9C70LrQsCDQvdCwINGB0LrQsNGH0LjQstCw0L3QuNC1XG4gICAgICAgICAgPC9tYXQtbGFiZWw+XG4gICAgICAgICAgPGlucHV0IG1hdElucHV0IHBsYWNlaG9sZGVyPVwi0KHRgdGL0LvQutCwINC90LAg0YHQutCw0YfQuNCy0LDQvdC40LVcIlxuICAgICAgICAgICAgICAgICBhdXRvY29tcGxldGU9XCJvZmZcIlxuICAgICAgICAgICAgICAgICBbKG5nTW9kZWwpXT1cInRhZ0RhdGEubGlua1wiXG4gICAgICAgICAgICAgICAgIChuZ01vZGVsQ2hhbmdlKT1cImxpbmtDaGFuZ2VkKClcIj5cbiAgICAgICAgPC9tYXQtZm9ybS1maWVsZD5cblxuICAgICAgICA8bWF0LWZvcm0tZmllbGQgY2xhc3M9XCJ3LTEwMFwiPlxuICAgICAgICAgIDxtYXQtbGFiZWw+XG4gICAgICAgICAgICDQotC10LrRgdGCINC90LAg0LrQvdC+0L/QutC1XG4gICAgICAgICAgPC9tYXQtbGFiZWw+XG4gICAgICAgICAgPGlucHV0IG1hdElucHV0IHBsYWNlaG9sZGVyPVwi0KLQtdC60YHRgiDQvdCwINC60L3QvtC/0LrQtVwiXG4gICAgICAgICAgICAgICAgIGF1dG9jb21wbGV0ZT1cIm9mZlwiXG4gICAgICAgICAgICAgICAgIFsobmdNb2RlbCldPVwidGFnRGF0YS50aXRsZVwiXG4gICAgICAgICAgICAgICAgIChuZ01vZGVsQ2hhbmdlKT1cImxpbmtDaGFuZ2VkKClcIj5cbiAgICAgICAgPC9tYXQtZm9ybS1maWVsZD5cbiAgICAgIDwvZGl2PlxufVxuIl19
|
package/esm2022/lib/components/editor/external-video-block/external-video-block.component.mjs
DELETED
|
@@ -1,55 +0,0 @@
|
|
|
1
|
-
import { Component, EventEmitter, Input, Output } from '@angular/core';
|
|
2
|
-
import { ExternalVideoSupportedTypes, } from '../../../extensions';
|
|
3
|
-
import { MatFormFieldModule } from '@angular/material/form-field';
|
|
4
|
-
import { FormsModule } from '@angular/forms';
|
|
5
|
-
import { XmlTagExternalVideoComponent } from '../../xml-tags';
|
|
6
|
-
import { MatInputModule } from '@angular/material/input';
|
|
7
|
-
import * as i0 from "@angular/core";
|
|
8
|
-
import * as i1 from "@angular/material/form-field";
|
|
9
|
-
import * as i2 from "@angular/material/input";
|
|
10
|
-
import * as i3 from "@angular/forms";
|
|
11
|
-
export class ExternalVideoBlockComponent {
|
|
12
|
-
constructor() {
|
|
13
|
-
this.onTagUpdated = new EventEmitter();
|
|
14
|
-
this.ExternalVideoSupportedTypes = ExternalVideoSupportedTypes;
|
|
15
|
-
this.tagData = {
|
|
16
|
-
link: '',
|
|
17
|
-
type: ExternalVideoSupportedTypes.Youtube
|
|
18
|
-
};
|
|
19
|
-
this.linkText = '';
|
|
20
|
-
}
|
|
21
|
-
ngOnInit() {
|
|
22
|
-
this.tagData.link = this.tag.attributes.link;
|
|
23
|
-
this.tagData.type = this.tag.attributes.type;
|
|
24
|
-
this.linkText = this.tagData.type === ExternalVideoSupportedTypes.VkVideo ? 'Ссылка на Vk Video' : ' Ссылка на YouTube';
|
|
25
|
-
}
|
|
26
|
-
linkChanged() {
|
|
27
|
-
if (this.tagData.link.includes('iframe')) {
|
|
28
|
-
this.createLinkByIFrame();
|
|
29
|
-
}
|
|
30
|
-
this.tag.attributes = this.tagData;
|
|
31
|
-
}
|
|
32
|
-
createLinkByIFrame() {
|
|
33
|
-
const parser = new DOMParser();
|
|
34
|
-
const document = parser.parseFromString(this.tagData.link, "text/html");
|
|
35
|
-
const elem = document.body.children[0];
|
|
36
|
-
const src = elem.getAttribute("src");
|
|
37
|
-
this.tagData.link = src;
|
|
38
|
-
}
|
|
39
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: ExternalVideoBlockComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
40
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.4", type: ExternalVideoBlockComponent, isStandalone: true, selector: "croco-html-external-video-block", inputs: { tag: "tag" }, outputs: { onTagUpdated: "onTagUpdated" }, ngImport: i0, template: "@if (tag.presentOrEdit) {\n <div>\n <div>\n @switch (tagData.type) {\n @case (ExternalVideoSupportedTypes.VkVideo) {\n {{linkText}}: {{tagData.link}}\n }\n @case (ExternalVideoSupportedTypes.Youtube) {\n {{linkText}}: {{tagData.link}}\n }\n }\n </div>\n <div style=\"height: 10px;\"></div>\n <croco-html-xml-tag-external-video [tagData]=\"tagData\"></croco-html-xml-tag-external-video>\n </div>\n}\n\n@if (!tag.presentOrEdit) {\n <div>\n <mat-form-field class=\"w-100\">\n <mat-label>\n {{linkText}}\n </mat-label>\n <input matInput placeholder=\"{{linkText}}\"\n autocomplete=\"off\"\n [(ngModel)]=\"tagData.link\"\n (ngModelChange)=\"linkChanged()\">\n </mat-form-field>\n </div>\n}\n", styles: [".video-player{margin:0 auto;max-width:640px;width:100%;height:360px}@media screen and (max-width: 760px){.video-player{height:300px}}@media screen and (max-width: 540px){.video-player{height:250px}}@media screen and (max-width: 450px){.video-player{height:200px}}@media screen and (max-width: 380px){.video-player{height:180px}}\n"], dependencies: [{ kind: "ngmodule", type: MatFormFieldModule }, { kind: "component", type: i1.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i1.MatLabel, selector: "mat-label" }, { kind: "ngmodule", type: MatInputModule }, { kind: "directive", type: i2.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: XmlTagExternalVideoComponent, selector: "croco-html-xml-tag-external-video", inputs: ["data", "tagData"] }] }); }
|
|
41
|
-
}
|
|
42
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: ExternalVideoBlockComponent, decorators: [{
|
|
43
|
-
type: Component,
|
|
44
|
-
args: [{ selector: 'croco-html-external-video-block', standalone: true, imports: [
|
|
45
|
-
MatFormFieldModule,
|
|
46
|
-
MatInputModule,
|
|
47
|
-
FormsModule,
|
|
48
|
-
XmlTagExternalVideoComponent,
|
|
49
|
-
], template: "@if (tag.presentOrEdit) {\n <div>\n <div>\n @switch (tagData.type) {\n @case (ExternalVideoSupportedTypes.VkVideo) {\n {{linkText}}: {{tagData.link}}\n }\n @case (ExternalVideoSupportedTypes.Youtube) {\n {{linkText}}: {{tagData.link}}\n }\n }\n </div>\n <div style=\"height: 10px;\"></div>\n <croco-html-xml-tag-external-video [tagData]=\"tagData\"></croco-html-xml-tag-external-video>\n </div>\n}\n\n@if (!tag.presentOrEdit) {\n <div>\n <mat-form-field class=\"w-100\">\n <mat-label>\n {{linkText}}\n </mat-label>\n <input matInput placeholder=\"{{linkText}}\"\n autocomplete=\"off\"\n [(ngModel)]=\"tagData.link\"\n (ngModelChange)=\"linkChanged()\">\n </mat-form-field>\n </div>\n}\n", styles: [".video-player{margin:0 auto;max-width:640px;width:100%;height:360px}@media screen and (max-width: 760px){.video-player{height:300px}}@media screen and (max-width: 540px){.video-player{height:250px}}@media screen and (max-width: 450px){.video-player{height:200px}}@media screen and (max-width: 380px){.video-player{height:180px}}\n"] }]
|
|
50
|
-
}], propDecorators: { tag: [{
|
|
51
|
-
type: Input
|
|
52
|
-
}], onTagUpdated: [{
|
|
53
|
-
type: Output
|
|
54
|
-
}] } });
|
|
55
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXh0ZXJuYWwtdmlkZW8tYmxvY2suY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY3JvY28taHRtbC9zcmMvbGliL2NvbXBvbmVudHMvZWRpdG9yL2V4dGVybmFsLXZpZGVvLWJsb2NrL2V4dGVybmFsLXZpZGVvLWJsb2NrLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Nyb2NvLWh0bWwvc3JjL2xpYi9jb21wb25lbnRzL2VkaXRvci9leHRlcm5hbC12aWRlby1ibG9jay9leHRlcm5hbC12aWRlby1ibG9jay5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQVUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQy9FLE9BQU8sRUFFTCwyQkFBMkIsR0FDNUIsTUFBTSxxQkFBcUIsQ0FBQztBQUU3QixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUNsRSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDN0MsT0FBTyxFQUFFLDRCQUE0QixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDOUQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHlCQUF5QixDQUFDOzs7OztBQWN6RCxNQUFNLE9BQU8sMkJBQTJCO0lBWnhDO1FBa0JFLGlCQUFZLEdBQUcsSUFBSSxZQUFZLEVBQWUsQ0FBQztRQUU1QixnQ0FBMkIsR0FBRywyQkFBMkIsQ0FBQztRQUU3RSxZQUFPLEdBQXlCO1lBQzlCLElBQUksRUFBRSxFQUFFO1lBQ1IsSUFBSSxFQUFFLDJCQUEyQixDQUFDLE9BQU87U0FDMUMsQ0FBQztRQUVGLGFBQVEsR0FBRyxFQUFFLENBQUM7S0F1QmY7SUFyQkMsUUFBUTtRQUNOLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxHQUFJLElBQUksQ0FBQyxHQUFHLENBQUMsVUFBbUMsQ0FBQyxJQUFJLENBQUM7UUFDdkUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLEdBQUksSUFBSSxDQUFDLEdBQUcsQ0FBQyxVQUFtQyxDQUFDLElBQUksQ0FBQztRQUV2RSxJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxLQUFLLDJCQUEyQixDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsb0JBQW9CLENBQUMsQ0FBQyxDQUFDLG9CQUFvQixDQUFDO0lBQzFILENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBRyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQztZQUN4QyxJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQTtRQUMzQixDQUFDO1FBQ0QsSUFBSSxDQUFDLEdBQUcsQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQztJQUNyQyxDQUFDO0lBRUQsa0JBQWtCO1FBQ2hCLE1BQU0sTUFBTSxHQUFHLElBQUksU0FBUyxFQUFFLENBQUM7UUFDL0IsTUFBTSxRQUFRLEdBQUcsTUFBTSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRSxXQUFXLENBQUMsQ0FBQztRQUN4RSxNQUFNLElBQUksR0FBRyxRQUFRLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUN2QyxNQUFNLEdBQUcsR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3JDLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxHQUFHLEdBQUcsQ0FBQztJQUMxQixDQUFDOzhHQXJDVSwyQkFBMkI7a0dBQTNCLDJCQUEyQiw4SkN2QnhDLDIwQkE4QkEsbVlEYkksa0JBQWtCLDBTQUNsQixjQUFjLDBXQUNkLFdBQVcsK21CQUNYLDRCQUE0Qjs7MkZBR25CLDJCQUEyQjtrQkFadkMsU0FBUzsrQkFDRSxpQ0FBaUMsY0FHL0IsSUFBSSxXQUNQO3dCQUNQLGtCQUFrQjt3QkFDbEIsY0FBYzt3QkFDZCxXQUFXO3dCQUNYLDRCQUE0QjtxQkFDN0I7OEJBS0QsR0FBRztzQkFERixLQUFLO2dCQUlOLFlBQVk7c0JBRFgsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25Jbml0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gIEV4dGVybmFsVmlkZW9UYWdEYXRhLFxuICBFeHRlcm5hbFZpZGVvU3VwcG9ydGVkVHlwZXMsXG59IGZyb20gJy4uLy4uLy4uL2V4dGVuc2lvbnMnO1xuaW1wb3J0IHsgSHRtbEJvZHlUYWcgfSBmcm9tICcuLi8uLi8uLi9tb2RlbHMvbW9kZWxzJztcbmltcG9ydCB7IE1hdEZvcm1GaWVsZE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2Zvcm0tZmllbGQnO1xuaW1wb3J0IHsgRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBYbWxUYWdFeHRlcm5hbFZpZGVvQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4veG1sLXRhZ3MnO1xuaW1wb3J0IHsgTWF0SW5wdXRNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pbnB1dCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2Nyb2NvLWh0bWwtZXh0ZXJuYWwtdmlkZW8tYmxvY2snLFxuICB0ZW1wbGF0ZVVybDogJy4vZXh0ZXJuYWwtdmlkZW8tYmxvY2suY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9leHRlcm5hbC12aWRlby1ibG9jay5jb21wb25lbnQuc2NzcyddLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbXG4gICAgTWF0Rm9ybUZpZWxkTW9kdWxlLFxuICAgIE1hdElucHV0TW9kdWxlLFxuICAgIEZvcm1zTW9kdWxlLFxuICAgIFhtbFRhZ0V4dGVybmFsVmlkZW9Db21wb25lbnQsXG4gIF1cbn0pXG5leHBvcnQgY2xhc3MgRXh0ZXJuYWxWaWRlb0Jsb2NrQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcblxuICBASW5wdXQoKVxuICB0YWc6IEh0bWxCb2R5VGFnO1xuXG4gIEBPdXRwdXQoKVxuICBvblRhZ1VwZGF0ZWQgPSBuZXcgRXZlbnRFbWl0dGVyPEh0bWxCb2R5VGFnPigpO1xuXG4gIHByb3RlY3RlZCByZWFkb25seSBFeHRlcm5hbFZpZGVvU3VwcG9ydGVkVHlwZXMgPSBFeHRlcm5hbFZpZGVvU3VwcG9ydGVkVHlwZXM7XG5cbiAgdGFnRGF0YTogRXh0ZXJuYWxWaWRlb1RhZ0RhdGEgPSB7XG4gICAgbGluazogJycsXG4gICAgdHlwZTogRXh0ZXJuYWxWaWRlb1N1cHBvcnRlZFR5cGVzLllvdXR1YmVcbiAgfTtcblxuICBsaW5rVGV4dCA9ICcnO1xuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMudGFnRGF0YS5saW5rID0gKHRoaXMudGFnLmF0dHJpYnV0ZXMgYXMgRXh0ZXJuYWxWaWRlb1RhZ0RhdGEpLmxpbms7XG4gICAgdGhpcy50YWdEYXRhLnR5cGUgPSAodGhpcy50YWcuYXR0cmlidXRlcyBhcyBFeHRlcm5hbFZpZGVvVGFnRGF0YSkudHlwZTtcblxuICAgIHRoaXMubGlua1RleHQgPSB0aGlzLnRhZ0RhdGEudHlwZSA9PT0gRXh0ZXJuYWxWaWRlb1N1cHBvcnRlZFR5cGVzLlZrVmlkZW8gPyAn0KHRgdGL0LvQutCwINC90LAgVmsgVmlkZW8nIDogJyDQodGB0YvQu9C60LAg0L3QsCBZb3VUdWJlJztcbiAgfVxuXG4gIGxpbmtDaGFuZ2VkKCl7XG4gICAgaWYodGhpcy50YWdEYXRhLmxpbmsuaW5jbHVkZXMoJ2lmcmFtZScpKSB7XG4gICAgICB0aGlzLmNyZWF0ZUxpbmtCeUlGcmFtZSgpXG4gICAgfVxuICAgIHRoaXMudGFnLmF0dHJpYnV0ZXMgPSB0aGlzLnRhZ0RhdGE7XG4gIH1cblxuICBjcmVhdGVMaW5rQnlJRnJhbWUoKSB7XG4gICAgY29uc3QgcGFyc2VyID0gbmV3IERPTVBhcnNlcigpO1xuICAgIGNvbnN0IGRvY3VtZW50ID0gcGFyc2VyLnBhcnNlRnJvbVN0cmluZyh0aGlzLnRhZ0RhdGEubGluaywgXCJ0ZXh0L2h0bWxcIik7XG4gICAgY29uc3QgZWxlbSA9IGRvY3VtZW50LmJvZHkuY2hpbGRyZW5bMF07XG4gICAgY29uc3Qgc3JjID0gZWxlbS5nZXRBdHRyaWJ1dGUoXCJzcmNcIik7XG4gICAgdGhpcy50YWdEYXRhLmxpbmsgPSBzcmM7XG4gIH1cbn1cbiIsIkBpZiAodGFnLnByZXNlbnRPckVkaXQpIHtcbiAgPGRpdj5cbiAgICA8ZGl2PlxuICAgICAgQHN3aXRjaCAodGFnRGF0YS50eXBlKSB7XG4gICAgICAgIEBjYXNlIChFeHRlcm5hbFZpZGVvU3VwcG9ydGVkVHlwZXMuVmtWaWRlbykge1xuICAgICAgICAgIHt7bGlua1RleHR9fToge3t0YWdEYXRhLmxpbmt9fVxuICAgICAgICB9XG4gICAgICAgIEBjYXNlIChFeHRlcm5hbFZpZGVvU3VwcG9ydGVkVHlwZXMuWW91dHViZSkge1xuICAgICAgICAgIHt7bGlua1RleHR9fToge3t0YWdEYXRhLmxpbmt9fVxuICAgICAgICB9XG4gICAgICB9XG4gICAgPC9kaXY+XG4gICAgPGRpdiBzdHlsZT1cImhlaWdodDogMTBweDtcIj48L2Rpdj5cbiAgICA8Y3JvY28taHRtbC14bWwtdGFnLWV4dGVybmFsLXZpZGVvIFt0YWdEYXRhXT1cInRhZ0RhdGFcIj48L2Nyb2NvLWh0bWwteG1sLXRhZy1leHRlcm5hbC12aWRlbz5cbiAgPC9kaXY+XG59XG5cbkBpZiAoIXRhZy5wcmVzZW50T3JFZGl0KSB7XG4gICAgPGRpdj5cbiAgICAgIDxtYXQtZm9ybS1maWVsZCBjbGFzcz1cInctMTAwXCI+XG4gICAgICAgIDxtYXQtbGFiZWw+XG4gICAgICAgICAge3tsaW5rVGV4dH19XG4gICAgICAgIDwvbWF0LWxhYmVsPlxuICAgICAgICA8aW5wdXQgbWF0SW5wdXQgcGxhY2Vob2xkZXI9XCJ7e2xpbmtUZXh0fX1cIlxuICAgICAgICAgIGF1dG9jb21wbGV0ZT1cIm9mZlwiXG4gICAgICAgICAgWyhuZ01vZGVsKV09XCJ0YWdEYXRhLmxpbmtcIlxuICAgICAgICAgICAgICAgICAgKG5nTW9kZWxDaGFuZ2UpPVwibGlua0NoYW5nZWQoKVwiPlxuICAgICAgICAgIDwvbWF0LWZvcm0tZmllbGQ+XG4gICAgPC9kaXY+XG59XG4iXX0=
|
|
File without changes
|