croco-html 0.1.1 → 0.1.3
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/croco-html.d.ts +5 -0
- package/esm2020/croco-html.mjs +5 -0
- package/esm2020/lib/components/add-files-btn/add-files-btn.component.mjs +53 -0
- package/esm2020/lib/components/editor/external-video-block/external-video-block.component.mjs +45 -0
- package/esm2020/lib/components/editor/html-raw-editor/html-raw-editor.component.mjs +25 -0
- package/esm2020/lib/components/editor/image-editor/image-editor.component.mjs +50 -0
- package/esm2020/lib/components/editor/index.mjs +8 -0
- package/esm2020/lib/components/editor/main-editor/main-editor.component.mjs +76 -0
- package/esm2020/lib/components/editor/main-editor-block/main-editor-block.component.mjs +41 -0
- package/esm2020/lib/components/editor/text-editor/text-editor.component.mjs +34 -0
- package/esm2020/lib/components/editor/visual-editor/visual-editor.component.mjs +161 -0
- package/esm2020/lib/components/file-id-select/file-id-select.component.mjs +62 -0
- package/esm2020/lib/components/index.mjs +6 -0
- package/esm2020/lib/components/upload-files-btn/upload-files-btn.component.mjs +54 -0
- package/esm2020/lib/components/xml-tags/index.mjs +9 -0
- package/esm2020/lib/components/xml-tags/xml-tag-external-video/xml-tag-external-video.component.mjs +43 -0
- package/esm2020/lib/components/xml-tags/xml-tag-header-inner-text-view/xml-tag-header-inner-text-view.component.mjs +17 -0
- package/esm2020/lib/components/xml-tags/xml-tag-header-text-view/xml-tag-header-text-view.component.mjs +18 -0
- package/esm2020/lib/components/xml-tags/xml-tag-html-view/xml-tag-html-view.component.mjs +16 -0
- package/esm2020/lib/components/xml-tags/xml-tag-rich-text-view/xml-tag-rich-text-view.component.mjs +20 -0
- package/esm2020/lib/components/xml-tags/xml-tag-table-view/xml-tag-table-view.component.mjs +20 -0
- package/esm2020/lib/components/xml-tags/xml-tag-text-view/xml-tag-text-view.component.mjs +17 -0
- package/esm2020/lib/components/xml-tags/xml-tag-view/xml-tag-view.component.mjs +21 -0
- package/esm2020/lib/croco-html.module.mjs +90 -0
- package/esm2020/lib/extensions/AngularMaterialTableMethods.mjs +64 -0
- package/esm2020/lib/extensions/BodyTagsExtensions.mjs +120 -0
- package/esm2020/lib/extensions/BootstrapTableMethods.mjs +67 -0
- package/esm2020/lib/extensions/HtmlExtractionMethods.mjs +63 -0
- package/esm2020/lib/extensions/HtmlRawTagDataConsts.mjs +4 -0
- package/esm2020/lib/extensions/ImageMethods.mjs +24 -0
- package/esm2020/lib/extensions/InterfaceBlock.mjs +2 -0
- package/esm2020/lib/extensions/TableBuilder.mjs +35 -0
- package/esm2020/lib/extensions/TableMethods.mjs +108 -0
- package/esm2020/lib/extensions/TextMethods.mjs +29 -0
- package/esm2020/lib/extensions/TextSimpleMethods.mjs +77 -0
- package/esm2020/lib/extensions/VideoMethods.mjs +20 -0
- package/esm2020/lib/extensions/XmlExtensions.mjs +26 -0
- package/esm2020/lib/extensions/index.mjs +13 -0
- package/esm2020/lib/index.mjs +113 -0
- package/esm2020/lib/models/models.mjs +2 -0
- package/esm2020/lib/pipes/RichTextToHtmlPipe.mjs +26 -0
- package/esm2020/lib/pipes/TagToSpanPipe.mjs +16 -0
- package/esm2020/lib/pipes/ToHtmlBodyTagsPipe.mjs +17 -0
- package/esm2020/lib/pipes/index.mjs +5 -0
- package/esm2020/lib/pipes/to-preview.pipe.mjs +17 -0
- package/esm2020/lib/services/file-upload.service.mjs +40 -0
- package/esm2020/lib/services/files-query.service.mjs +27 -0
- package/esm2020/public-api.mjs +8 -0
- package/fesm2015/croco-html.mjs +1565 -0
- package/fesm2015/croco-html.mjs.map +1 -0
- package/fesm2020/croco-html.mjs +1568 -0
- package/fesm2020/croco-html.mjs.map +1 -0
- package/lib/components/add-files-btn/add-files-btn.component.d.ts +18 -0
- package/lib/components/editor/external-video-block/external-video-block.component.d.ts +19 -0
- package/lib/components/editor/html-raw-editor/html-raw-editor.component.d.ts +11 -0
- package/lib/components/editor/image-editor/image-editor.component.d.ts +20 -0
- package/lib/components/editor/index.d.ts +7 -0
- package/lib/components/editor/main-editor/main-editor.component.d.ts +28 -0
- package/lib/components/editor/main-editor-block/main-editor-block.component.d.ts +16 -0
- package/lib/components/editor/text-editor/text-editor.component.d.ts +14 -0
- package/lib/components/editor/visual-editor/visual-editor.component.d.ts +43 -0
- package/lib/components/file-id-select/file-id-select.component.d.ts +30 -0
- package/lib/components/index.d.ts +5 -0
- package/lib/components/upload-files-btn/upload-files-btn.component.d.ts +24 -0
- package/{src/lib/components/xml-tags/index.ts → lib/components/xml-tags/index.d.ts} +8 -8
- package/lib/components/xml-tags/xml-tag-external-video/xml-tag-external-video.component.d.ts +17 -0
- package/lib/components/xml-tags/xml-tag-header-inner-text-view/xml-tag-header-inner-text-view.component.d.ts +10 -0
- package/lib/components/xml-tags/xml-tag-header-text-view/xml-tag-header-text-view.component.d.ts +10 -0
- package/lib/components/xml-tags/xml-tag-html-view/xml-tag-html-view.component.d.ts +7 -0
- package/lib/components/xml-tags/xml-tag-rich-text-view/xml-tag-rich-text-view.component.d.ts +10 -0
- package/lib/components/xml-tags/xml-tag-table-view/xml-tag-table-view.component.d.ts +7 -0
- package/lib/components/xml-tags/xml-tag-text-view/xml-tag-text-view.component.d.ts +10 -0
- package/lib/components/xml-tags/xml-tag-view/xml-tag-view.component.d.ts +8 -0
- package/lib/croco-html.module.d.ts +60 -0
- package/lib/extensions/AngularMaterialTableMethods.d.ts +10 -0
- package/lib/extensions/BodyTagsExtensions.d.ts +10 -0
- package/lib/extensions/BootstrapTableMethods.d.ts +9 -0
- package/lib/extensions/HtmlExtractionMethods.d.ts +69 -0
- package/lib/extensions/HtmlRawTagDataConsts.d.ts +3 -0
- package/lib/extensions/ImageMethods.d.ts +17 -0
- package/lib/extensions/InterfaceBlock.d.ts +4 -0
- package/lib/extensions/TableBuilder.d.ts +5 -0
- package/lib/extensions/TableMethods.d.ts +58 -0
- package/lib/extensions/TextMethods.d.ts +19 -0
- package/lib/extensions/TextSimpleMethods.d.ts +23 -0
- package/lib/extensions/VideoMethods.d.ts +19 -0
- package/lib/extensions/XmlExtensions.d.ts +5 -0
- package/lib/extensions/index.d.ts +10 -0
- package/lib/index.d.ts +20 -0
- package/{src/lib/models/models.ts → lib/models/models.d.ts} +1 -2
- package/lib/pipes/RichTextToHtmlPipe.d.ts +8 -0
- package/lib/pipes/TagToSpanPipe.d.ts +7 -0
- package/lib/pipes/ToHtmlBodyTagsPipe.d.ts +8 -0
- package/{src/lib/pipes/index.ts → lib/pipes/index.d.ts} +0 -0
- package/lib/pipes/to-preview.pipe.d.ts +8 -0
- package/lib/services/file-upload.service.d.ts +23 -0
- package/lib/services/files-query.service.d.ts +42 -0
- package/package.json +34 -14
- package/{src/public-api.ts → public-api.d.ts} +0 -4
- package/karma.conf.js +0 -44
- package/ng-package.json +0 -7
- package/src/lib/components/add-files-btn/add-files-btn.component.css +0 -0
- package/src/lib/components/add-files-btn/add-files-btn.component.html +0 -14
- package/src/lib/components/add-files-btn/add-files-btn.component.ts +0 -61
- package/src/lib/components/editor/external-video-block/external-video-block.component.css +0 -0
- package/src/lib/components/editor/external-video-block/external-video-block.component.html +0 -27
- package/src/lib/components/editor/external-video-block/external-video-block.component.ts +0 -45
- package/src/lib/components/editor/html-raw-editor/html-raw-editor.component.css +0 -0
- package/src/lib/components/editor/html-raw-editor/html-raw-editor.component.html +0 -17
- package/src/lib/components/editor/html-raw-editor/html-raw-editor.component.ts +0 -22
- package/src/lib/components/editor/image-editor/image-editor.component.css +0 -7
- package/src/lib/components/editor/image-editor/image-editor.component.html +0 -54
- package/src/lib/components/editor/image-editor/image-editor.component.ts +0 -52
- package/src/lib/components/editor/index.ts +0 -7
- package/src/lib/components/editor/main-editor/main-editor.component.css +0 -48
- package/src/lib/components/editor/main-editor/main-editor.component.html +0 -39
- package/src/lib/components/editor/main-editor/main-editor.component.ts +0 -71
- package/src/lib/components/editor/main-editor-block/main-editor-block.component.css +0 -0
- package/src/lib/components/editor/main-editor-block/main-editor-block.component.html +0 -41
- package/src/lib/components/editor/main-editor-block/main-editor-block.component.ts +0 -39
- package/src/lib/components/editor/text-editor/text-editor.component.css +0 -0
- package/src/lib/components/editor/text-editor/text-editor.component.html +0 -39
- package/src/lib/components/editor/text-editor/text-editor.component.ts +0 -30
- package/src/lib/components/editor/visual-editor/visual-editor.component.css +0 -48
- package/src/lib/components/editor/visual-editor/visual-editor.component.html +0 -84
- package/src/lib/components/editor/visual-editor/visual-editor.component.ts +0 -180
- package/src/lib/components/file-id-select/file-id-select.component.css +0 -0
- package/src/lib/components/file-id-select/file-id-select.component.html +0 -39
- package/src/lib/components/file-id-select/file-id-select.component.ts +0 -75
- package/src/lib/components/index.ts +0 -5
- package/src/lib/components/upload-files-btn/upload-files-btn.component.css +0 -0
- package/src/lib/components/upload-files-btn/upload-files-btn.component.html +0 -2
- package/src/lib/components/upload-files-btn/upload-files-btn.component.ts +0 -57
- package/src/lib/components/xml-tags/xml-tag-external-video/xml-tag-external-video.component.css +0 -15
- package/src/lib/components/xml-tags/xml-tag-external-video/xml-tag-external-video.component.html +0 -8
- package/src/lib/components/xml-tags/xml-tag-external-video/xml-tag-external-video.component.ts +0 -59
- package/src/lib/components/xml-tags/xml-tag-header-inner-text-view/xml-tag-header-inner-text-view.component.css +0 -0
- package/src/lib/components/xml-tags/xml-tag-header-inner-text-view/xml-tag-header-inner-text-view.component.html +0 -18
- package/src/lib/components/xml-tags/xml-tag-header-inner-text-view/xml-tag-header-inner-text-view.component.ts +0 -19
- package/src/lib/components/xml-tags/xml-tag-header-text-view/xml-tag-header-text-view.component.css +0 -0
- package/src/lib/components/xml-tags/xml-tag-header-text-view/xml-tag-header-text-view.component.html +0 -25
- package/src/lib/components/xml-tags/xml-tag-header-text-view/xml-tag-header-text-view.component.ts +0 -19
- package/src/lib/components/xml-tags/xml-tag-html-view/xml-tag-html-view.component.css +0 -0
- package/src/lib/components/xml-tags/xml-tag-html-view/xml-tag-html-view.component.html +0 -3
- package/src/lib/components/xml-tags/xml-tag-html-view/xml-tag-html-view.component.ts +0 -14
- package/src/lib/components/xml-tags/xml-tag-rich-text-view/xml-tag-rich-text-view.component.css +0 -0
- package/src/lib/components/xml-tags/xml-tag-rich-text-view/xml-tag-rich-text-view.component.html +0 -2
- package/src/lib/components/xml-tags/xml-tag-rich-text-view/xml-tag-rich-text-view.component.ts +0 -19
- package/src/lib/components/xml-tags/xml-tag-table-view/xml-tag-table-view.component.css +0 -0
- package/src/lib/components/xml-tags/xml-tag-table-view/xml-tag-table-view.component.html +0 -9
- package/src/lib/components/xml-tags/xml-tag-table-view/xml-tag-table-view.component.ts +0 -15
- package/src/lib/components/xml-tags/xml-tag-text-view/xml-tag-text-view.component.css +0 -0
- package/src/lib/components/xml-tags/xml-tag-text-view/xml-tag-text-view.component.html +0 -21
- package/src/lib/components/xml-tags/xml-tag-text-view/xml-tag-text-view.component.ts +0 -18
- package/src/lib/components/xml-tags/xml-tag-view/xml-tag-view.component.css +0 -4
- package/src/lib/components/xml-tags/xml-tag-view/xml-tag-view.component.html +0 -44
- package/src/lib/components/xml-tags/xml-tag-view/xml-tag-view.component.ts +0 -17
- package/src/lib/croco-html.module.ts +0 -22
- package/src/lib/extensions/AngularMaterialTableMethods.ts +0 -87
- package/src/lib/extensions/BodyTagsExtensions.ts +0 -151
- package/src/lib/extensions/BootstrapTableMethods.ts +0 -87
- package/src/lib/extensions/HtmlExtractionMethods.ts +0 -78
- package/src/lib/extensions/HtmlRawTagDataConsts.ts +0 -3
- package/src/lib/extensions/ImageMethods.ts +0 -37
- package/src/lib/extensions/InterfaceBlock.ts +0 -5
- package/src/lib/extensions/TableBuilder.ts +0 -50
- package/src/lib/extensions/TableMethods.ts +0 -175
- package/src/lib/extensions/TextMethods.ts +0 -51
- package/src/lib/extensions/TextSimpleMethods.ts +0 -120
- package/src/lib/extensions/VideoMethods.ts +0 -31
- package/src/lib/extensions/XmlExtensions.ts +0 -26
- package/src/lib/extensions/index.ts +0 -12
- package/src/lib/index.ts +0 -119
- package/src/lib/pipes/RichTextToHtmlPipe.ts +0 -25
- package/src/lib/pipes/TagToSpanPipe.ts +0 -10
- package/src/lib/pipes/ToHtmlBodyTagsPipe.ts +0 -14
- package/src/lib/pipes/to-preview.pipe.ts +0 -12
- package/src/lib/services/file-upload.service.ts +0 -56
- package/src/lib/services/files-query.service.ts +0 -72
- package/src/test.ts +0 -28
- package/tsconfig.lib.json +0 -20
- package/tsconfig.lib.prod.json +0 -10
- package/tsconfig.spec.json +0 -17
|
@@ -0,0 +1,161 @@
|
|
|
1
|
+
import { moveItemInArray } from '@angular/cdk/drag-drop';
|
|
2
|
+
import { Component, EventEmitter, Input, Output } from '@angular/core';
|
|
3
|
+
import { FormGroup, FormControl } from '@angular/forms';
|
|
4
|
+
import { BodyTagsExtensions } from '../../../extensions/BodyTagsExtensions';
|
|
5
|
+
import { HtmlRawTagDataConsts } from '../../../extensions/HtmlRawTagDataConsts';
|
|
6
|
+
import { FileImageTagDataConsts } from '../../../extensions/ImageMethods';
|
|
7
|
+
import { TextMethods } from '../../../extensions/TextMethods';
|
|
8
|
+
import { ExternalVideoTagDataConsts, ExternalVideoSupportedTypes } from '../../../extensions/VideoMethods';
|
|
9
|
+
import { XmlExtensions } from '../../../extensions/XmlExtensions';
|
|
10
|
+
import * as i0 from "@angular/core";
|
|
11
|
+
import * as i1 from "@angular/material/progress-spinner";
|
|
12
|
+
import * as i2 from "@angular/material/card";
|
|
13
|
+
import * as i3 from "@angular/material/chips";
|
|
14
|
+
import * as i4 from "../main-editor-block/main-editor-block.component";
|
|
15
|
+
import * as i5 from "@angular/material/form-field";
|
|
16
|
+
import * as i6 from "@angular/material/select";
|
|
17
|
+
import * as i7 from "@angular/material/core";
|
|
18
|
+
import * as i8 from "@angular/material/button";
|
|
19
|
+
import * as i9 from "../../add-files-btn/add-files-btn.component";
|
|
20
|
+
import * as i10 from "@angular/common";
|
|
21
|
+
import * as i11 from "@angular/cdk/drag-drop";
|
|
22
|
+
import * as i12 from "@angular/forms";
|
|
23
|
+
export class DefaultTags {
|
|
24
|
+
static getTags(useHtmlRaw) {
|
|
25
|
+
var result = [...DefaultTags.tags];
|
|
26
|
+
if (useHtmlRaw) {
|
|
27
|
+
result.push(DefaultTags.htmlRawTag);
|
|
28
|
+
}
|
|
29
|
+
return result;
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
DefaultTags.tags = [
|
|
33
|
+
{ tag: FileImageTagDataConsts.TagName, displayValue: 'Изображение' },
|
|
34
|
+
{ tag: ExternalVideoTagDataConsts.TagName, displayValue: 'Внешнее видео Youtube' },
|
|
35
|
+
{ tag: 'text', displayValue: 'Текст' },
|
|
36
|
+
{ tag: 'h1', displayValue: 'Заголовок 1 уровня' },
|
|
37
|
+
{ tag: 'h2', displayValue: 'Заголовок 2 уровня' },
|
|
38
|
+
{ tag: 'h3', displayValue: 'Заголовок 3 уровня' },
|
|
39
|
+
{ tag: 'h4', displayValue: 'Заголовок 4 уровня' },
|
|
40
|
+
{ tag: 'h5', displayValue: 'Заголовок 5 уровня' },
|
|
41
|
+
{ tag: 'h6', displayValue: 'Заголовок 6 уровня' },
|
|
42
|
+
];
|
|
43
|
+
DefaultTags.htmlRawTag = {
|
|
44
|
+
tag: HtmlRawTagDataConsts.TagName, displayValue: 'Html разметка'
|
|
45
|
+
};
|
|
46
|
+
export class VisualEditorComponent {
|
|
47
|
+
constructor(_cdref) {
|
|
48
|
+
this._cdref = _cdref;
|
|
49
|
+
this.isLoading = false;
|
|
50
|
+
this.loadingText = "Идёт загрузка";
|
|
51
|
+
this.showMarkUp = true;
|
|
52
|
+
this.myForm = new FormGroup({
|
|
53
|
+
"html": new FormControl(),
|
|
54
|
+
});
|
|
55
|
+
this.tags = [];
|
|
56
|
+
this.useHtmlRaw = false;
|
|
57
|
+
this.html = "";
|
|
58
|
+
this.onHtmlChanged = new EventEmitter();
|
|
59
|
+
this.rendered = new EventEmitter();
|
|
60
|
+
this.bodyTags = [];
|
|
61
|
+
}
|
|
62
|
+
isHtmlSet() {
|
|
63
|
+
return this.html.startsWith("<body>");
|
|
64
|
+
}
|
|
65
|
+
clearHtml() {
|
|
66
|
+
this.html = "";
|
|
67
|
+
this.recalculateBodyTags();
|
|
68
|
+
}
|
|
69
|
+
getHtml() {
|
|
70
|
+
this.recalculateHtml();
|
|
71
|
+
return this.html;
|
|
72
|
+
}
|
|
73
|
+
ngAfterViewInit() {
|
|
74
|
+
this.rendered.emit(true);
|
|
75
|
+
}
|
|
76
|
+
ngAfterContentChecked() {
|
|
77
|
+
this._cdref.detectChanges();
|
|
78
|
+
}
|
|
79
|
+
addTag() {
|
|
80
|
+
let tagDescription = this.tags
|
|
81
|
+
.find(x => x.tag === this.selectedValue);
|
|
82
|
+
let attrs = {};
|
|
83
|
+
let innerHtml = "";
|
|
84
|
+
if (TextMethods.textTags.includes(tagDescription.tag)) {
|
|
85
|
+
attrs["h-align"] = "left";
|
|
86
|
+
innerHtml = "Введите ваш текст";
|
|
87
|
+
}
|
|
88
|
+
else if (tagDescription.tag == ExternalVideoTagDataConsts.TagName) {
|
|
89
|
+
attrs[ExternalVideoTagDataConsts.VideoTypeAttrName] = ExternalVideoSupportedTypes.Youtube;
|
|
90
|
+
attrs[ExternalVideoTagDataConsts.LinkAttrName] = null;
|
|
91
|
+
}
|
|
92
|
+
else {
|
|
93
|
+
attrs[FileImageTagDataConsts.FileIdAttrName] = null;
|
|
94
|
+
}
|
|
95
|
+
this.bodyTags.push({
|
|
96
|
+
tagDescription,
|
|
97
|
+
innerHtml,
|
|
98
|
+
attributes: attrs,
|
|
99
|
+
presentOrEdit: true
|
|
100
|
+
});
|
|
101
|
+
this.recalculateHtml();
|
|
102
|
+
}
|
|
103
|
+
postFilesStartedEventHandler(model) {
|
|
104
|
+
this.loadingText = "Файлы загружаются на сервер";
|
|
105
|
+
this.isLoading = true;
|
|
106
|
+
}
|
|
107
|
+
addTagCustom(tag) {
|
|
108
|
+
this.bodyTags.push(tag);
|
|
109
|
+
this.recalculateHtml();
|
|
110
|
+
}
|
|
111
|
+
filesTagsReadyHandler(tags) {
|
|
112
|
+
for (let i = 0; i < tags.length; i++) {
|
|
113
|
+
this.bodyTags.push(tags[i]);
|
|
114
|
+
}
|
|
115
|
+
this.recalculateHtml();
|
|
116
|
+
this.isLoading = false;
|
|
117
|
+
}
|
|
118
|
+
drop(event) {
|
|
119
|
+
moveItemInArray(this.bodyTags, event.previousIndex, event.currentIndex);
|
|
120
|
+
this.recalculateHtml();
|
|
121
|
+
}
|
|
122
|
+
onTagSavedHandler(tag) {
|
|
123
|
+
this.recalculateHtml();
|
|
124
|
+
}
|
|
125
|
+
onTagRemovedHandler(index) {
|
|
126
|
+
this.bodyTags.splice(index, 1);
|
|
127
|
+
this.recalculateHtml();
|
|
128
|
+
}
|
|
129
|
+
recalculateHtml() {
|
|
130
|
+
let result = BodyTagsExtensions.toHtml(this.bodyTags);
|
|
131
|
+
this.html = XmlExtensions.formatXml("<body>" + result + "</body>");
|
|
132
|
+
this.onHtmlChanged.emit(this.html);
|
|
133
|
+
}
|
|
134
|
+
recalculateBodyTags() {
|
|
135
|
+
this.bodyTags = BodyTagsExtensions.getBodyTags(this.html);
|
|
136
|
+
}
|
|
137
|
+
ngOnInit() {
|
|
138
|
+
this.recalculateBodyTags();
|
|
139
|
+
this.tags = DefaultTags.getTags(this.useHtmlRaw);
|
|
140
|
+
this.selectedValue = this.tags[0].tag;
|
|
141
|
+
}
|
|
142
|
+
}
|
|
143
|
+
VisualEditorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: VisualEditorComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
144
|
+
VisualEditorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: VisualEditorComponent, selector: "croco-visual-editor", inputs: { showMarkUp: "showMarkUp", useHtmlRaw: "useHtmlRaw", html: "html" }, outputs: { html: "html", onHtmlChanged: "onHtmlChanged", rendered: "rendered" }, ngImport: i0, template: "<div *ngIf=\"isLoading\">\r\n <div>\r\n <mat-spinner style=\"margin:0 auto;\"></mat-spinner>\r\n <div style=\"text-align: center;\">{{loadingText}}</div>\r\n </div>\r\n <div style=\"height: 10px;\"></div>\r\n</div>\r\n\r\n<div [hidden]=\"isLoading\">\r\n <div cdkDropList (cdkDropListDropped)=\"drop($event)\">\r\n <div *ngFor=\"let tag of bodyTags; let i = index\" cdkDrag>\r\n <mat-card>\r\n <div class=\"d-flex justify-content-between\">\r\n <div class=\"example-handle\" cdkDragHandle>\r\n <svg width=\"24px\" fill=\"currentColor\" viewBox=\"0 0 24 24\">\r\n <path\r\n d=\"M10 9h4V6h3l-5-5-5 5h3v3zm-1 1H6V7l-5 5 5 5v-3h3v-4zm14 2l-5-5v3h-3v4h3v3l5-5zm-9 3h-4v3H7l5 5 5-5h-3v-3z\">\r\n </path>\r\n <path d=\"M0 0h24v24H0z\" fill=\"none\"></path>\r\n </svg>\r\n </div>\r\n <div>\r\n <mat-chip-list aria-label=\"Tag display value\">\r\n <mat-chip color=\"primary\" selected>{{tag.tagDescription.displayValue}}</mat-chip>\r\n </mat-chip-list>\r\n </div>\r\n </div>\r\n \r\n <div style=\"height: 15px;\"></div>\r\n \r\n <croco-html-main-editor-block [tag]=\"tag\" \r\n (onTagSaved)=\"onTagSavedHandler($event)\"\r\n (onTagRemoved)=\"onTagRemovedHandler(i)\">\r\n </croco-html-main-editor-block>\r\n </mat-card>\r\n \r\n <div style=\"height: 10px;\">\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n\r\n\r\n<div [hidden]=\"isLoading\">\r\n <mat-card>\r\n <div class=\"row d-flex align-items-center\">\r\n <div class=\"col-12\">\r\n <mat-form-field class=\"w-100\" appearance=\"fill\">\r\n <mat-label>\u0412\u044B\u0431\u0435\u0440\u0438\u0442\u0435 \u0442\u0435\u0433</mat-label>\r\n <mat-select [(ngModel)]=\"selectedValue\">\r\n <mat-option *ngFor=\"let tag of tags\" [value]=\"tag.tag\">\r\n {{tag.displayValue}}\r\n </mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n </div>\r\n <div class=\"col-12\">\r\n <button (click)=\"addTag()\" class=\"w-100\" mat-stroked-button>\r\n \u0414\u043E\u0431\u0430\u0432\u0438\u0442\u044C \u0442\u0435\u0433\r\n </button>\r\n </div>\r\n </div>\r\n </mat-card>\r\n\r\n <div style=\"height: 10px;\">\r\n </div>\r\n</div>\r\n\r\n<div [hidden]=\"isLoading\">\r\n <mat-card>\r\n <div class=\"row d-flex align-items-center\">\r\n <div class=\"col-12\">\r\n <croco-add-files-btn \r\n (filesTagsReady)=\"filesTagsReadyHandler($event)\"\r\n (postFilesStarted)=\"postFilesStartedEventHandler($event)\"\r\n class=\"w-100\">\r\n </croco-add-files-btn>\r\n </div>\r\n </div>\r\n </mat-card>\r\n\r\n <div style=\"height: 10px;\">\r\n </div>\r\n</div>", styles: [".example-list{width:500px;max-width:100%;border:solid 1px #ccc;min-height:60px;display:block;background:white;border-radius:4px;overflow:hidden}.example-box{padding:20px 10px;border-bottom:solid 1px #ccc;color:#000000de;display:flex;flex-direction:row;align-items:center;justify-content:space-between;box-sizing:border-box;cursor:move;background:white;font-size:14px}.cdk-drag-preview{box-sizing:border-box;border-radius:4px;box-shadow:0 5px 5px -3px #0003,0 8px 10px 1px #00000024,0 3px 14px 2px #0000001f}.cdk-drag-placeholder{opacity:0}.cdk-drag-animating{transition:transform .25s cubic-bezier(0,0,.2,1)}.example-box:last-child{border:none}.example-list.cdk-drop-list-dragging .example-box:not(.cdk-drag-placeholder){transition:transform .25s cubic-bezier(0,0,.2,1)}\n"], components: [{ type: i1.MatSpinner, selector: "mat-spinner", inputs: ["color"] }, { type: i2.MatCard, selector: "mat-card", exportAs: ["matCard"] }, { type: i3.MatChipList, selector: "mat-chip-list", inputs: ["aria-orientation", "multiple", "compareWith", "value", "required", "placeholder", "disabled", "selectable", "tabIndex", "errorStateMatcher"], outputs: ["change", "valueChange"], exportAs: ["matChipList"] }, { type: i4.MainEditorBlockComponent, selector: "croco-html-main-editor-block", inputs: ["tag"], outputs: ["onTagSaved", "onTagRemoved"] }, { type: i5.MatFormField, selector: "mat-form-field", inputs: ["color", "floatLabel", "appearance", "hideRequiredMarker", "hintLabel"], exportAs: ["matFormField"] }, { type: i6.MatSelect, selector: "mat-select", inputs: ["disabled", "disableRipple", "tabIndex"], exportAs: ["matSelect"] }, { type: i7.MatOption, selector: "mat-option", exportAs: ["matOption"] }, { type: i8.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { type: i9.AddFilesBtnComponent, selector: "croco-add-files-btn", outputs: ["postFilesStarted", "filesTagsReady"] }], directives: [{ type: i10.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i11.CdkDropList, selector: "[cdkDropList], cdk-drop-list", inputs: ["cdkDropListConnectedTo", "cdkDropListData", "cdkDropListOrientation", "id", "cdkDropListLockAxis", "cdkDropListDisabled", "cdkDropListSortingDisabled", "cdkDropListEnterPredicate", "cdkDropListSortPredicate", "cdkDropListAutoScrollDisabled", "cdkDropListAutoScrollStep"], outputs: ["cdkDropListDropped", "cdkDropListEntered", "cdkDropListExited", "cdkDropListSorted"], exportAs: ["cdkDropList"] }, { type: i10.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i11.CdkDrag, selector: "[cdkDrag]", inputs: ["cdkDragData", "cdkDragLockAxis", "cdkDragRootElement", "cdkDragBoundary", "cdkDragStartDelay", "cdkDragFreeDragPosition", "cdkDragDisabled", "cdkDragConstrainPosition", "cdkDragPreviewClass", "cdkDragPreviewContainer"], outputs: ["cdkDragStarted", "cdkDragReleased", "cdkDragEnded", "cdkDragEntered", "cdkDragExited", "cdkDragDropped", "cdkDragMoved"], exportAs: ["cdkDrag"] }, { type: i11.CdkDragHandle, selector: "[cdkDragHandle]", inputs: ["cdkDragHandleDisabled"] }, { type: i3.MatChip, selector: "mat-basic-chip, [mat-basic-chip], mat-chip, [mat-chip]", inputs: ["color", "disableRipple", "tabIndex", "selected", "value", "selectable", "disabled", "removable"], outputs: ["selectionChange", "destroyed", "removed"], exportAs: ["matChip"] }, { type: i5.MatLabel, selector: "mat-label" }, { type: i12.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i12.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }] });
|
|
145
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: VisualEditorComponent, decorators: [{
|
|
146
|
+
type: Component,
|
|
147
|
+
args: [{ selector: 'croco-visual-editor', template: "<div *ngIf=\"isLoading\">\r\n <div>\r\n <mat-spinner style=\"margin:0 auto;\"></mat-spinner>\r\n <div style=\"text-align: center;\">{{loadingText}}</div>\r\n </div>\r\n <div style=\"height: 10px;\"></div>\r\n</div>\r\n\r\n<div [hidden]=\"isLoading\">\r\n <div cdkDropList (cdkDropListDropped)=\"drop($event)\">\r\n <div *ngFor=\"let tag of bodyTags; let i = index\" cdkDrag>\r\n <mat-card>\r\n <div class=\"d-flex justify-content-between\">\r\n <div class=\"example-handle\" cdkDragHandle>\r\n <svg width=\"24px\" fill=\"currentColor\" viewBox=\"0 0 24 24\">\r\n <path\r\n d=\"M10 9h4V6h3l-5-5-5 5h3v3zm-1 1H6V7l-5 5 5 5v-3h3v-4zm14 2l-5-5v3h-3v4h3v3l5-5zm-9 3h-4v3H7l5 5 5-5h-3v-3z\">\r\n </path>\r\n <path d=\"M0 0h24v24H0z\" fill=\"none\"></path>\r\n </svg>\r\n </div>\r\n <div>\r\n <mat-chip-list aria-label=\"Tag display value\">\r\n <mat-chip color=\"primary\" selected>{{tag.tagDescription.displayValue}}</mat-chip>\r\n </mat-chip-list>\r\n </div>\r\n </div>\r\n \r\n <div style=\"height: 15px;\"></div>\r\n \r\n <croco-html-main-editor-block [tag]=\"tag\" \r\n (onTagSaved)=\"onTagSavedHandler($event)\"\r\n (onTagRemoved)=\"onTagRemovedHandler(i)\">\r\n </croco-html-main-editor-block>\r\n </mat-card>\r\n \r\n <div style=\"height: 10px;\">\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n\r\n\r\n<div [hidden]=\"isLoading\">\r\n <mat-card>\r\n <div class=\"row d-flex align-items-center\">\r\n <div class=\"col-12\">\r\n <mat-form-field class=\"w-100\" appearance=\"fill\">\r\n <mat-label>\u0412\u044B\u0431\u0435\u0440\u0438\u0442\u0435 \u0442\u0435\u0433</mat-label>\r\n <mat-select [(ngModel)]=\"selectedValue\">\r\n <mat-option *ngFor=\"let tag of tags\" [value]=\"tag.tag\">\r\n {{tag.displayValue}}\r\n </mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n </div>\r\n <div class=\"col-12\">\r\n <button (click)=\"addTag()\" class=\"w-100\" mat-stroked-button>\r\n \u0414\u043E\u0431\u0430\u0432\u0438\u0442\u044C \u0442\u0435\u0433\r\n </button>\r\n </div>\r\n </div>\r\n </mat-card>\r\n\r\n <div style=\"height: 10px;\">\r\n </div>\r\n</div>\r\n\r\n<div [hidden]=\"isLoading\">\r\n <mat-card>\r\n <div class=\"row d-flex align-items-center\">\r\n <div class=\"col-12\">\r\n <croco-add-files-btn \r\n (filesTagsReady)=\"filesTagsReadyHandler($event)\"\r\n (postFilesStarted)=\"postFilesStartedEventHandler($event)\"\r\n class=\"w-100\">\r\n </croco-add-files-btn>\r\n </div>\r\n </div>\r\n </mat-card>\r\n\r\n <div style=\"height: 10px;\">\r\n </div>\r\n</div>", styles: [".example-list{width:500px;max-width:100%;border:solid 1px #ccc;min-height:60px;display:block;background:white;border-radius:4px;overflow:hidden}.example-box{padding:20px 10px;border-bottom:solid 1px #ccc;color:#000000de;display:flex;flex-direction:row;align-items:center;justify-content:space-between;box-sizing:border-box;cursor:move;background:white;font-size:14px}.cdk-drag-preview{box-sizing:border-box;border-radius:4px;box-shadow:0 5px 5px -3px #0003,0 8px 10px 1px #00000024,0 3px 14px 2px #0000001f}.cdk-drag-placeholder{opacity:0}.cdk-drag-animating{transition:transform .25s cubic-bezier(0,0,.2,1)}.example-box:last-child{border:none}.example-list.cdk-drop-list-dragging .example-box:not(.cdk-drag-placeholder){transition:transform .25s cubic-bezier(0,0,.2,1)}\n"] }]
|
|
148
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }]; }, propDecorators: { showMarkUp: [{
|
|
149
|
+
type: Input
|
|
150
|
+
}], useHtmlRaw: [{
|
|
151
|
+
type: Input
|
|
152
|
+
}], html: [{
|
|
153
|
+
type: Input
|
|
154
|
+
}, {
|
|
155
|
+
type: Output
|
|
156
|
+
}], onHtmlChanged: [{
|
|
157
|
+
type: Output
|
|
158
|
+
}], rendered: [{
|
|
159
|
+
type: Output
|
|
160
|
+
}] } });
|
|
161
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmlzdWFsLWVkaXRvci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jcm9jby1odG1sL3NyYy9saWIvY29tcG9uZW50cy9lZGl0b3IvdmlzdWFsLWVkaXRvci92aXN1YWwtZWRpdG9yLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Nyb2NvLWh0bWwvc3JjL2xpYi9jb21wb25lbnRzL2VkaXRvci92aXN1YWwtZWRpdG9yL3Zpc3VhbC1lZGl0b3IuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFlLGVBQWUsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3RFLE9BQU8sRUFBb0MsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQVUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2pILE9BQU8sRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDeEQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFDNUUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFDaEYsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDMUUsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQzlELE9BQU8sRUFBRSwwQkFBMEIsRUFBRSwyQkFBMkIsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQzNHLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7QUFJbEUsTUFBTSxPQUFPLFdBQVc7SUFpQnRCLE1BQU0sQ0FBQyxPQUFPLENBQUMsVUFBa0I7UUFDL0IsSUFBSSxNQUFNLEdBQUcsQ0FBQyxHQUFHLFdBQVcsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUVuQyxJQUFH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RkR0Q08scUJBQXFCO2tCQUxqQyxTQUFTOytCQUNFLHFCQUFxQjt3R0FVL0IsVUFBVTtzQkFEVCxLQUFLO2dCQVlOLFVBQVU7c0JBRFQsS0FBSztnQkFLTixJQUFJO3NCQUZILEtBQUs7O3NCQUNMLE1BQU07Z0JBa0JQLGFBQWE7c0JBRFosTUFBTTtnQkFJUCxRQUFRO3NCQURQLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDZGtEcmFnRHJvcCwgbW92ZUl0ZW1JbkFycmF5IH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2RyYWctZHJvcCc7XHJcbmltcG9ydCB7IEFmdGVyVmlld0luaXQsIENoYW5nZURldGVjdG9yUmVmLCBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uSW5pdCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEZvcm1Hcm91cCwgRm9ybUNvbnRyb2wgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IEJvZHlUYWdzRXh0ZW5zaW9ucyB9IGZyb20gJy4uLy4uLy4uL2V4dGVuc2lvbnMvQm9keVRhZ3NFeHRlbnNpb25zJztcclxuaW1wb3J0IHsgSHRtbFJhd1RhZ0RhdGFDb25zdHMgfSBmcm9tICcuLi8uLi8uLi9leHRlbnNpb25zL0h0bWxSYXdUYWdEYXRhQ29uc3RzJztcclxuaW1wb3J0IHsgRmlsZUltYWdlVGFnRGF0YUNvbnN0cyB9IGZyb20gJy4uLy4uLy4uL2V4dGVuc2lvbnMvSW1hZ2VNZXRob2RzJztcclxuaW1wb3J0IHsgVGV4dE1ldGhvZHMgfSBmcm9tICcuLi8uLi8uLi9leHRlbnNpb25zL1RleHRNZXRob2RzJztcclxuaW1wb3J0IHsgRXh0ZXJuYWxWaWRlb1RhZ0RhdGFDb25zdHMsIEV4dGVybmFsVmlkZW9TdXBwb3J0ZWRUeXBlcyB9IGZyb20gJy4uLy4uLy4uL2V4dGVuc2lvbnMvVmlkZW9NZXRob2RzJztcclxuaW1wb3J0IHsgWG1sRXh0ZW5zaW9ucyB9IGZyb20gJy4uLy4uLy4uL2V4dGVuc2lvbnMvWG1sRXh0ZW5zaW9ucyc7XHJcbmltcG9ydCB7IFRhZ0l0ZW0sIEh0bWxCb2R5VGFnIH0gZnJvbSAnLi4vLi4vLi4vbW9kZWxzL21vZGVscyc7XHJcbmltcG9ydCB7IEZpbGVQb3N0aW5nU3RhcnRlZCB9IGZyb20gJy4uLy4uL3VwbG9hZC1maWxlcy1idG4vdXBsb2FkLWZpbGVzLWJ0bi5jb21wb25lbnQnO1xyXG5cclxuZXhwb3J0IGNsYXNzIERlZmF1bHRUYWdze1xyXG4gIHN0YXRpYyB0YWdzOlRhZ0l0ZW1bXSA9IFtcclxuICAgIHsgdGFnOiBGaWxlSW1hZ2VUYWdEYXRhQ29uc3RzLlRhZ05hbWUsIGRpc3BsYXlWYWx1ZTogJ9CY0LfQvtCx0YDQsNC20LXQvdC40LUnIH0sXHJcbiAgICB7IHRhZzogRXh0ZXJuYWxWaWRlb1RhZ0RhdGFDb25zdHMuVGFnTmFtZSwgZGlzcGxheVZhbHVlOiAn0JLQvdC10YjQvdC10LUg0LLQuNC00LXQviBZb3V0dWJlJyB9LFxyXG4gICAgeyB0YWc6ICd0ZXh0JywgZGlzcGxheVZhbHVlOiAn0KLQtdC60YHRgicgfSxcclxuICAgIHsgdGFnOiAnaDEnLCBkaXNwbGF5VmFsdWU6ICfQl9Cw0LPQvtC70L7QstC+0LogMSDRg9GA0L7QstC90Y8nIH0sXHJcbiAgICB7IHRhZzogJ2gyJywgZGlzcGxheVZhbHVlOiAn0JfQsNCz0L7Qu9C+0LLQvtC6IDIg0YPRgNC+0LLQvdGPJyB9LFxyXG4gICAgeyB0YWc6ICdoMycsIGRpc3BsYXlWYWx1ZTogJ9CX0LDQs9C+0LvQvtCy0L7QuiAzINGD0YDQvtCy0L3RjycgfSxcclxuICAgIHsgdGFnOiAnaDQnLCBkaXNwbGF5VmFsdWU6ICfQl9Cw0LPQvtC70L7QstC+0LogNCDRg9GA0L7QstC90Y8nIH0sXHJcbiAgICB7IHRhZzogJ2g1JywgZGlzcGxheVZhbHVlOiAn0JfQsNCz0L7Qu9C+0LLQvtC6IDUg0YPRgNC+0LLQvdGPJyB9LFxyXG4gICAgeyB0YWc6ICdoNicsIGRpc3BsYXlWYWx1ZTogJ9CX0LDQs9C+0LvQvtCy0L7QuiA2INGD0YDQvtCy0L3RjycgfSxcclxuICBdO1xyXG5cclxuICBzdGF0aWMgaHRtbFJhd1RhZzpUYWdJdGVtID0ge1xyXG4gICAgdGFnOiBIdG1sUmF3VGFnRGF0YUNvbnN0cy5UYWdOYW1lLCBkaXNwbGF5VmFsdWU6ICdIdG1sINGA0LDQt9C80LXRgtC60LAnXHJcbiAgfVxyXG5cclxuICBzdGF0aWMgZ2V0VGFncyh1c2VIdG1sUmF3OmJvb2xlYW4pOlRhZ0l0ZW1bXXtcclxuICAgIHZhciByZXN1bHQgPSBbLi4uRGVmYXVsdFRhZ3MudGFnc107XHJcblxyXG4gICAgaWYodXNlSHRtbFJhdyl7XHJcbiAgICAgIHJlc3VsdC5wdXNoKERlZmF1bHRUYWdzLmh0bWxSYXdUYWcpO1xyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiByZXN1bHQ7XHJcbiAgfVxyXG59XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2Nyb2NvLXZpc3VhbC1lZGl0b3InLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi92aXN1YWwtZWRpdG9yLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi92aXN1YWwtZWRpdG9yLmNvbXBvbmVudC5jc3MnXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgVmlzdWFsRWRpdG9yQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBBZnRlclZpZXdJbml0IHtcclxuXHJcbiAgaXNMb2FkaW5nID0gZmFsc2U7XHJcbiAgbG9hZGluZ1RleHQgPSBcItCY0LTRkdGCINC30LDQs9GA0YPQt9C60LBcIjtcclxuXHJcbiAgQElucHV0KClcclxuICBzaG93TWFya1VwID0gdHJ1ZTtcclxuXHJcbiAgbXlGb3JtID0gbmV3IEZvcm1Hcm91cCh7XHJcbiAgICBcImh0bWxcIjogbmV3IEZvcm1Db250cm9sKCksXHJcbiAgfSk7XHJcblxyXG4gIHRhZ3M6IFRhZ0l0ZW1bXSA9IFtdO1xyXG5cclxuICBzZWxlY3RlZFZhbHVlOiBzdHJpbmc7XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgdXNlSHRtbFJhdyA9IGZhbHNlO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIEBPdXRwdXQoKVxyXG4gIGh0bWw6IHN0cmluZyA9IFwiXCI7XHJcblxyXG4gIGlzSHRtbFNldCgpe1xyXG4gICAgcmV0dXJuIHRoaXMuaHRtbC5zdGFydHNXaXRoKFwiPGJvZHk+XCIpO1xyXG4gIH1cclxuXHJcbiAgY2xlYXJIdG1sKCl7XHJcbiAgICB0aGlzLmh0bWwgPSBcIlwiO1xyXG4gICAgdGhpcy5yZWNhbGN1bGF0ZUJvZHlUYWdzKCk7XHJcbiAgfVxyXG5cclxuICBnZXRIdG1sKCl7XHJcbiAgICB0aGlzLnJlY2FsY3VsYXRlSHRtbCgpO1xyXG4gICAgcmV0dXJuIHRoaXMuaHRtbDtcclxuICB9XHJcblxyXG4gIEBPdXRwdXQoKVxyXG4gIG9uSHRtbENoYW5nZWQgPSBuZXcgRXZlbnRFbWl0dGVyPHN0cmluZz4oKTtcclxuXHJcbiAgQE91dHB1dCgpXHJcbiAgcmVuZGVyZWQgPSBuZXcgRXZlbnRFbWl0dGVyPGJvb2xlYW4+KCk7XHJcblxyXG4gIGJvZHlUYWdzOiBIdG1sQm9keVRhZ1tdID0gW107XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBfY2RyZWY6IENoYW5nZURldGVjdG9yUmVmKSB7IH1cclxuXHJcbiAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5yZW5kZXJlZC5lbWl0KHRydWUpO1xyXG4gIH1cclxuXHJcbiAgbmdBZnRlckNvbnRlbnRDaGVja2VkKCk6IHZvaWQge1xyXG4gICAgdGhpcy5fY2RyZWYuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gIH1cclxuXHJcbiAgYWRkVGFnKCk6IHZvaWQge1xyXG4gICAgbGV0IHRhZ0Rlc2NyaXB0aW9uID0gdGhpcy50YWdzXHJcbiAgICAgIC5maW5kKHggPT4geC50YWcgPT09IHRoaXMuc2VsZWN0ZWRWYWx1ZSk7XHJcblxyXG4gICAgbGV0IGF0dHJzID0ge307XHJcbiAgICBsZXQgaW5uZXJIdG1sID0gXCJcIjtcclxuXHJcbiAgICBpZihUZXh0TWV0aG9kcy50ZXh0VGFncy5pbmNsdWRlcyh0YWdEZXNjcmlwdGlvbi50YWcpKXtcclxuICAgICAgYXR0cnNbXCJoLWFsaWduXCJdID0gXCJsZWZ0XCI7XHJcbiAgICAgIGlubmVySHRtbCA9IFwi0JLQstC10LTQuNGC0LUg0LLQsNGIINGC0LXQutGB0YJcIjtcclxuICAgIH1cclxuICAgIGVsc2UgaWYodGFnRGVzY3JpcHRpb24udGFnID09IEV4dGVybmFsVmlkZW9UYWdEYXRhQ29uc3RzLlRhZ05hbWUpe1xyXG4gICAgICBhdHRyc1tFeHRlcm5hbFZpZGVvVGFnRGF0YUNvbnN0cy5WaWRlb1R5cGVBdHRyTmFtZV0gPSBFeHRlcm5hbFZpZGVvU3VwcG9ydGVkVHlwZXMuWW91dHViZTtcclxuICAgICAgYXR0cnNbRXh0ZXJuYWxWaWRlb1RhZ0RhdGFDb25zdHMuTGlua0F0dHJOYW1lXSA9IG51bGw7XHJcbiAgICB9XHJcbiAgICBlbHNle1xyXG4gICAgICBhdHRyc1tGaWxlSW1hZ2VUYWdEYXRhQ29uc3RzLkZpbGVJZEF0dHJOYW1lXSA9IG51bGw7XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5ib2R5VGFncy5wdXNoKHtcclxuICAgICAgdGFnRGVzY3JpcHRpb24sXHJcbiAgICAgIGlubmVySHRtbCxcclxuICAgICAgYXR0cmlidXRlczogYXR0cnMsXHJcbiAgICAgIHByZXNlbnRPckVkaXQ6IHRydWVcclxuICAgIH0pO1xyXG5cclxuICAgIHRoaXMucmVjYWxjdWxhdGVIdG1sKCk7XHJcbiAgfVxyXG5cclxuICBwb3N0RmlsZXNTdGFydGVkRXZlbnRIYW5kbGVyKG1vZGVsOkZpbGVQb3N0aW5nU3RhcnRlZCl7XHJcbiAgICB0aGlzLmxvYWRpbmdUZXh0ID0gXCLQpNCw0LnQu9GLINC30LDQs9GA0YPQttCw0Y7RgtGB0Y8g0L3QsCDRgdC10YDQstC10YBcIjtcclxuICAgIHRoaXMuaXNMb2FkaW5nID0gdHJ1ZTtcclxuICB9XHJcblxyXG4gIGFkZFRhZ0N1c3RvbSh0YWc6IEh0bWxCb2R5VGFnKXtcclxuICAgIHRoaXMuYm9keVRhZ3MucHVzaCh0YWcpO1xyXG4gICAgdGhpcy5yZWNhbGN1bGF0ZUh0bWwoKTtcclxuICB9XHJcblxyXG4gIGZpbGVzVGFnc1JlYWR5SGFuZGxlcih0YWdzOiBIdG1sQm9keVRhZ1tdKXtcclxuICAgIGZvcihsZXQgaSA9IDA7IGkgPCB0YWdzLmxlbmd0aDsgaSsrKXtcclxuICAgICAgdGhpcy5ib2R5VGFncy5wdXNoKHRhZ3NbaV0pO1xyXG4gICAgfVxyXG4gICAgdGhpcy5yZWNhbGN1bGF0ZUh0bWwoKTtcclxuXHJcbiAgICB0aGlzLmlzTG9hZGluZyA9IGZhbHNlO1xyXG4gIH1cclxuXHJcbiAgZHJvcChldmVudDogQ2RrRHJhZ0Ryb3A8b2JqZWN0W10+KSB7XHJcbiAgICBtb3ZlSXRlbUluQXJyYXkodGhpcy5ib2R5VGFncywgZXZlbnQucHJldmlvdXNJbmRleCwgZXZlbnQuY3VycmVudEluZGV4KTtcclxuICAgIHRoaXMucmVjYWxjdWxhdGVIdG1sKCk7XHJcbiAgfVxyXG5cclxuICBvblRhZ1NhdmVkSGFuZGxlcih0YWc6IEh0bWxCb2R5VGFnKXtcclxuICAgIHRoaXMucmVjYWxjdWxhdGVIdG1sKCk7XHJcbiAgfVxyXG5cclxuICBvblRhZ1JlbW92ZWRIYW5kbGVyKGluZGV4OiBudW1iZXIpe1xyXG4gICAgdGhpcy5ib2R5VGFncy5zcGxpY2UoaW5kZXgsIDEpO1xyXG4gICAgdGhpcy5yZWNhbGN1bGF0ZUh0bWwoKTtcclxuICB9XHJcblxyXG4gIHJlY2FsY3VsYXRlSHRtbCgpe1xyXG4gICAgbGV0IHJlc3VsdCA9IEJvZHlUYWdzRXh0ZW5zaW9ucy50b0h0bWwodGhpcy5ib2R5VGFncyk7XHJcbiAgICB0aGlzLmh0bWwgPSBYbWxFeHRlbnNpb25zLmZvcm1hdFhtbChcIjxib2R5PlwiICsgcmVzdWx0ICsgXCI8L2JvZHk+XCIpO1xyXG4gICAgdGhpcy5vbkh0bWxDaGFuZ2VkLmVtaXQodGhpcy5odG1sKTtcclxuICB9XHJcblxyXG4gIHJlY2FsY3VsYXRlQm9keVRhZ3MoKXtcclxuICAgIHRoaXMuYm9keVRhZ3MgPSBCb2R5VGFnc0V4dGVuc2lvbnMuZ2V0Qm9keVRhZ3ModGhpcy5odG1sKTtcclxuICB9XHJcblxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5yZWNhbGN1bGF0ZUJvZHlUYWdzKCk7XHJcblxyXG4gICAgdGhpcy50YWdzID0gRGVmYXVsdFRhZ3MuZ2V0VGFncyh0aGlzLnVzZUh0bWxSYXcpO1xyXG4gICAgdGhpcy5zZWxlY3RlZFZhbHVlID0gdGhpcy50YWdzWzBdLnRhZztcclxuICB9XHJcbn1cclxuIiwiPGRpdiAqbmdJZj1cImlzTG9hZGluZ1wiPlxyXG4gICAgPGRpdj5cclxuICAgICAgICA8bWF0LXNwaW5uZXIgc3R5bGU9XCJtYXJnaW46MCBhdXRvO1wiPjwvbWF0LXNwaW5uZXI+XHJcbiAgICAgICAgPGRpdiBzdHlsZT1cInRleHQtYWxpZ246IGNlbnRlcjtcIj57e2xvYWRpbmdUZXh0fX08L2Rpdj5cclxuICAgIDwvZGl2PlxyXG4gICAgPGRpdiBzdHlsZT1cImhlaWdodDogMTBweDtcIj48L2Rpdj5cclxuPC9kaXY+XHJcblxyXG48ZGl2IFtoaWRkZW5dPVwiaXNMb2FkaW5nXCI+XHJcbiAgICA8ZGl2IGNka0Ryb3BMaXN0IChjZGtEcm9wTGlzdERyb3BwZWQpPVwiZHJvcCgkZXZlbnQpXCI+XHJcbiAgICAgICAgPGRpdiAqbmdGb3I9XCJsZXQgdGFnIG9mIGJvZHlUYWdzOyBsZXQgaSA9IGluZGV4XCIgY2RrRHJhZz5cclxuICAgICAgICAgICAgPG1hdC1jYXJkPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBqdXN0aWZ5LWNvbnRlbnQtYmV0d2VlblwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJleGFtcGxlLWhhbmRsZVwiIGNka0RyYWdIYW5kbGU+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgd2lkdGg9XCIyNHB4XCIgZmlsbD1cImN1cnJlbnRDb2xvclwiIHZpZXdCb3g9XCIwIDAgMjQgMjRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk0xMCA5aDRWNmgzbC01LTUtNSA1aDN2M3ptLTEgMUg2VjdsLTUgNSA1IDV2LTNoM3YtNHptMTQgMmwtNS01djNoLTN2NGgzdjNsNS01em0tOSAzaC00djNIN2w1IDUgNS01aC0zdi0zelwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9wYXRoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggZD1cIk0wIDBoMjR2MjRIMHpcIiBmaWxsPVwibm9uZVwiPjwvcGF0aD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPG1hdC1jaGlwLWxpc3QgYXJpYS1sYWJlbD1cIlRhZyBkaXNwbGF5IHZhbHVlXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bWF0LWNoaXAgY29sb3I9XCJwcmltYXJ5XCIgc2VsZWN0ZWQ+e3t0YWcudGFnRGVzY3JpcHRpb24uZGlzcGxheVZhbHVlfX08L21hdC1jaGlwPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L21hdC1jaGlwLWxpc3Q+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgIFxyXG4gICAgICAgICAgICAgICAgPGRpdiBzdHlsZT1cImhlaWdodDogMTVweDtcIj48L2Rpdj5cclxuICAgIFxyXG4gICAgICAgICAgICAgICAgPGNyb2NvLWh0bWwtbWFpbi1lZGl0b3ItYmxvY2sgW3RhZ109XCJ0YWdcIiBcclxuICAgICAgICAgICAgICAgICAgICAob25UYWdTYXZlZCk9XCJvblRhZ1NhdmVkSGFuZGxlcigkZXZlbnQpXCJcclxuICAgICAgICAgICAgICAgICAgICAob25UYWdSZW1vdmVkKT1cIm9uVGFnUmVtb3ZlZEhhbmRsZXIoaSlcIj5cclxuICAgICAgICAgICAgICAgIDwvY3JvY28taHRtbC1tYWluLWVkaXRvci1ibG9jaz5cclxuICAgICAgICAgICAgPC9tYXQtY2FyZD5cclxuICAgIFxyXG4gICAgICAgICAgICA8ZGl2IHN0eWxlPVwiaGVpZ2h0OiAxMHB4O1wiPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG48L2Rpdj5cclxuXHJcblxyXG48ZGl2IFtoaWRkZW5dPVwiaXNMb2FkaW5nXCI+XHJcbiAgICA8bWF0LWNhcmQ+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cInJvdyBkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyXCI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtMTJcIj5cclxuICAgICAgICAgICAgICAgIDxtYXQtZm9ybS1maWVsZCBjbGFzcz1cInctMTAwXCIgYXBwZWFyYW5jZT1cImZpbGxcIj5cclxuICAgICAgICAgICAgICAgICAgICA8bWF0LWxhYmVsPtCS0YvQsdC10YDQuNGC0LUg0YLQtdCzPC9tYXQtbGFiZWw+XHJcbiAgICAgICAgICAgICAgICAgICAgPG1hdC1zZWxlY3QgWyhuZ01vZGVsKV09XCJzZWxlY3RlZFZhbHVlXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxtYXQtb3B0aW9uICpuZ0Zvcj1cImxldCB0YWcgb2YgdGFnc1wiIFt2YWx1ZV09XCJ0YWcudGFnXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7e3RhZy5kaXNwbGF5VmFsdWV9fVxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L21hdC1vcHRpb24+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9tYXQtc2VsZWN0PlxyXG4gICAgICAgICAgICAgICAgPC9tYXQtZm9ybS1maWVsZD5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtMTJcIj5cclxuICAgICAgICAgICAgICAgIDxidXR0b24gKGNsaWNrKT1cImFkZFRhZygpXCIgY2xhc3M9XCJ3LTEwMFwiIG1hdC1zdHJva2VkLWJ1dHRvbj5cclxuICAgICAgICAgICAgICAgICAgICDQlNC+0LHQsNCy0LjRgtGMINGC0LXQs1xyXG4gICAgICAgICAgICAgICAgPC9idXR0b24+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgPC9tYXQtY2FyZD5cclxuXHJcbiAgICA8ZGl2IHN0eWxlPVwiaGVpZ2h0OiAxMHB4O1wiPlxyXG4gICAgPC9kaXY+XHJcbjwvZGl2PlxyXG5cclxuPGRpdiBbaGlkZGVuXT1cImlzTG9hZGluZ1wiPlxyXG4gICAgPG1hdC1jYXJkPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJyb3cgZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlclwiPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLTEyXCI+XHJcbiAgICAgICAgICAgICAgICA8Y3JvY28tYWRkLWZpbGVzLWJ0biBcclxuICAgICAgICAgICAgICAgICAgICAoZmlsZXNUYWdzUmVhZHkpPVwiZmlsZXNUYWdzUmVhZHlIYW5kbGVyKCRldmVudClcIlxyXG4gICAgICAgICAgICAgICAgICAgIChwb3N0RmlsZXNTdGFydGVkKT1cInBvc3RGaWxlc1N0YXJ0ZWRFdmVudEhhbmRsZXIoJGV2ZW50KVwiXHJcbiAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJ3LTEwMFwiPlxyXG4gICAgICAgICAgICAgICAgPC9jcm9jby1hZGQtZmlsZXMtYnRuPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgIDwvbWF0LWNhcmQ+XHJcblxyXG4gICAgPGRpdiBzdHlsZT1cImhlaWdodDogMTBweDtcIj5cclxuICAgIDwvZGl2PlxyXG48L2Rpdj4iXX0=
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
import { Component, EventEmitter, Input, Output } from '@angular/core';
|
|
2
|
+
import { ImageMethods } from '../../extensions/ImageMethods';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "@angular/forms";
|
|
5
|
+
import * as i2 from "../../services/files-query.service";
|
|
6
|
+
import * as i3 from "@ng-select/ng-select";
|
|
7
|
+
export class FileIdSelectComponent {
|
|
8
|
+
constructor(fb, _fileService) {
|
|
9
|
+
this.fb = fb;
|
|
10
|
+
this._fileService = _fileService;
|
|
11
|
+
this.labelText = "Поиск файлов";
|
|
12
|
+
this.loading = false;
|
|
13
|
+
this.files = [];
|
|
14
|
+
this.onFileIdChanged = new EventEmitter();
|
|
15
|
+
this.form = this.fb.group({
|
|
16
|
+
fileName: '',
|
|
17
|
+
});
|
|
18
|
+
}
|
|
19
|
+
onModelChanged(fileId) {
|
|
20
|
+
this.onFileIdChanged.emit(fileId);
|
|
21
|
+
}
|
|
22
|
+
getSrc(fileId) {
|
|
23
|
+
return ImageMethods.buildSmallUrl(fileId);
|
|
24
|
+
}
|
|
25
|
+
ngOnInit() {
|
|
26
|
+
this.loadFiles();
|
|
27
|
+
}
|
|
28
|
+
loadFiles() {
|
|
29
|
+
this.loading = true;
|
|
30
|
+
this._fileService.getFiles({
|
|
31
|
+
count: 10,
|
|
32
|
+
offSet: 0,
|
|
33
|
+
fileName: null,
|
|
34
|
+
q: this.q
|
|
35
|
+
}).subscribe(data => {
|
|
36
|
+
this.files = [...data.list];
|
|
37
|
+
this.loading = false;
|
|
38
|
+
});
|
|
39
|
+
}
|
|
40
|
+
onSearchChanged(q) {
|
|
41
|
+
this.q = q.term;
|
|
42
|
+
this.loadFiles();
|
|
43
|
+
}
|
|
44
|
+
ngOnChanges(changes) {
|
|
45
|
+
this.loadFiles();
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
FileIdSelectComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: FileIdSelectComponent, deps: [{ token: i1.FormBuilder }, { token: i2.FilesQueryService }], target: i0.ɵɵFactoryTarget.Component });
|
|
49
|
+
FileIdSelectComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: FileIdSelectComponent, selector: "croco-html-file-id-select", inputs: { labelText: "labelText", fileId: "fileId" }, outputs: { fileId: "fileId", onFileIdChanged: "onFileIdChanged" }, usesOnChanges: true, ngImport: i0, template: "<form [formGroup]=\"form\">\r\n <div class=\"form-group\">\r\n <label for=\"fileName\">{{labelText}}</label>\r\n <ng-select [(ngModel)]=\"fileId\" (ngModelChange)=\"onModelChanged($event)\"\r\n [items]=\"files\"\r\n #select\r\n bindLabel=\"fileName\"\r\n (search)=\"onSearchChanged($event)\"\r\n [loading]=\"loading\"\r\n [loadingText]=\"'\u0417\u0430\u0433\u0440\u0443\u0436\u0430\u044E \u0444\u0430\u0439\u043B\u044B'\"\r\n dropdownPosition=\"auto\"\r\n bindValue=\"fileId\"\r\n labelForId=\"fileName\"\r\n placeholder=\"\u0412\u044B\u0431\u0440\u0430\u0442\u044C \u0444\u0430\u0439\u043B\"\r\n [virtualScroll]=\"true\"\r\n formControlName=\"fileName\">\r\n <ng-template ng-option-tmp let-item=\"item\" let-index=\"index\" let-search=\"searchTerm\">\r\n <div>\r\n <img class=\"mx-auto d-block img-fluid\" [src]=\"getSrc(item.fileId)\"/>\r\n </div>\r\n <div>\r\n <span class=\"h5\">\u0424\u0430\u0439\u043B: </span>\r\n <span class=\"h5\" [ngOptionHighlight]=\"search\"><b>{{item.fileName}}</b></span>\r\n </div>\r\n <div>\r\n <small>\r\n <span>\r\n \u0418\u0434\u0435\u043D\u0442\u0438\u0444\u0438\u043A\u0430\u0442\u043E\u0440 \u0444\u0430\u0439\u043B\u0430: <b>{{item.fileId}}</b>\r\n </span>\r\n </small>\r\n </div>\r\n </ng-template>\r\n </ng-select>\r\n </div>\r\n</form>\r\n\r\n<div>\r\n \u0418\u0434\u0435\u043D\u0442\u0438\u0444\u0438\u043A\u0430\u0442\u043E\u0440 \u0444\u0430\u0439\u043B\u0430: {{fileId}}\r\n</div>\r\n", styles: [""], components: [{ type: i3.NgSelectComponent, selector: "ng-select", inputs: ["markFirst", "dropdownPosition", "loading", "closeOnSelect", "hideSelected", "selectOnTab", "bufferAmount", "selectableGroup", "selectableGroupAsModel", "searchFn", "trackByFn", "clearOnBackspace", "labelForId", "inputAttrs", "readonly", "searchWhileComposing", "minTermLength", "editableSearchTerm", "keyDownFn", "multiple", "addTag", "searchable", "clearable", "isOpen", "items", "compareWith", "clearSearchOnAdd", "bindLabel", "placeholder", "notFoundText", "typeToSearchText", "addTagText", "loadingText", "clearAllText", "virtualScroll", "openOnEnter", "appendTo", "bindValue", "appearance", "maxSelectedItems", "groupBy", "groupValue", "tabIndex", "typeahead"], outputs: ["blur", "focus", "change", "open", "close", "search", "clear", "add", "remove", "scroll", "scrollToEnd"] }], directives: [{ type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { type: i3.ɵf, selector: "[ng-option-tmp]" }] });
|
|
50
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: FileIdSelectComponent, decorators: [{
|
|
51
|
+
type: Component,
|
|
52
|
+
args: [{ selector: 'croco-html-file-id-select', template: "<form [formGroup]=\"form\">\r\n <div class=\"form-group\">\r\n <label for=\"fileName\">{{labelText}}</label>\r\n <ng-select [(ngModel)]=\"fileId\" (ngModelChange)=\"onModelChanged($event)\"\r\n [items]=\"files\"\r\n #select\r\n bindLabel=\"fileName\"\r\n (search)=\"onSearchChanged($event)\"\r\n [loading]=\"loading\"\r\n [loadingText]=\"'\u0417\u0430\u0433\u0440\u0443\u0436\u0430\u044E \u0444\u0430\u0439\u043B\u044B'\"\r\n dropdownPosition=\"auto\"\r\n bindValue=\"fileId\"\r\n labelForId=\"fileName\"\r\n placeholder=\"\u0412\u044B\u0431\u0440\u0430\u0442\u044C \u0444\u0430\u0439\u043B\"\r\n [virtualScroll]=\"true\"\r\n formControlName=\"fileName\">\r\n <ng-template ng-option-tmp let-item=\"item\" let-index=\"index\" let-search=\"searchTerm\">\r\n <div>\r\n <img class=\"mx-auto d-block img-fluid\" [src]=\"getSrc(item.fileId)\"/>\r\n </div>\r\n <div>\r\n <span class=\"h5\">\u0424\u0430\u0439\u043B: </span>\r\n <span class=\"h5\" [ngOptionHighlight]=\"search\"><b>{{item.fileName}}</b></span>\r\n </div>\r\n <div>\r\n <small>\r\n <span>\r\n \u0418\u0434\u0435\u043D\u0442\u0438\u0444\u0438\u043A\u0430\u0442\u043E\u0440 \u0444\u0430\u0439\u043B\u0430: <b>{{item.fileId}}</b>\r\n </span>\r\n </small>\r\n </div>\r\n </ng-template>\r\n </ng-select>\r\n </div>\r\n</form>\r\n\r\n<div>\r\n \u0418\u0434\u0435\u043D\u0442\u0438\u0444\u0438\u043A\u0430\u0442\u043E\u0440 \u0444\u0430\u0439\u043B\u0430: {{fileId}}\r\n</div>\r\n", styles: [""] }]
|
|
53
|
+
}], ctorParameters: function () { return [{ type: i1.FormBuilder }, { type: i2.FilesQueryService }]; }, propDecorators: { labelText: [{
|
|
54
|
+
type: Input
|
|
55
|
+
}], fileId: [{
|
|
56
|
+
type: Input
|
|
57
|
+
}, {
|
|
58
|
+
type: Output
|
|
59
|
+
}], onFileIdChanged: [{
|
|
60
|
+
type: Output
|
|
61
|
+
}] } });
|
|
62
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS1pZC1zZWxlY3QuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY3JvY28taHRtbC9zcmMvbGliL2NvbXBvbmVudHMvZmlsZS1pZC1zZWxlY3QvZmlsZS1pZC1zZWxlY3QuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY3JvY28taHRtbC9zcmMvbGliL2NvbXBvbmVudHMvZmlsZS1pZC1zZWxlY3QvZmlsZS1pZC1zZWxlY3QuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFxQixNQUFNLEVBQWlCLE1BQU0sZUFBZSxDQUFDO0FBRXpHLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQzs7Ozs7QUFZN0QsTUFBTSxPQUFPLHFCQUFxQjtJQW1COUIsWUFDWSxFQUFlLEVBQ2YsWUFBK0I7UUFEL0IsT0FBRSxHQUFGLEVBQUUsQ0FBYTtRQUNmLGlCQUFZLEdBQVosWUFBWSxDQUFtQjtRQWhCM0MsY0FBUyxHQUFHLGNBQWMsQ0FBQTtRQU0xQixZQUFPLEdBQUcsS0FBSyxDQUFDO1FBR2hCLFVBQUssR0FBeUIsRUFBRSxDQUFDO1FBR2pDLG9CQUFlLEdBQUcsSUFBSSxZQUFZLEVBQVUsQ0FBQztRQUt6QyxJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDO1lBQ3RCLFFBQVEsRUFBRSxFQUFFO1NBQ2YsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVELGNBQWMsQ0FBQyxNQUFjO1FBQ3pCLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ3RDLENBQUM7SUFFRCxNQUFNLENBQUMsTUFBYztRQUNqQixPQUFPLFlBQVksQ0FBQyxhQUFhLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDOUMsQ0FBQztJQUVELFFBQVE7UUFDSixJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7SUFDckIsQ0FBQztJQUVNLFNBQVM7UUFDWixJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQztRQUNwQixJQUFJLENBQUMsWUFBWSxDQUFDLFFBQVEsQ0FBQztZQUN2QixLQUFLLEVBQUUsRUFBRTtZQUNULE1BQU0sRUFBRSxDQUFDO1lBQ1QsUUFBUSxFQUFFLElBQUk7WUFDZCxDQUFDLEVBQUUsSUFBSSxDQUFDLENBQUM7U0FDWixDQUFDLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFO1lBQ2hCLElBQUksQ0FBQyxLQUFLLEdBQUcsQ0FBQyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUM1QixJQUFJLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQztRQUN6QixDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7SUFFRCxlQUFlLENBQUMsQ0FBaUM7UUFDN0MsSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDO1FBQ2hCLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztJQUNyQixDQUFDO0lBRUQsV0FBVyxDQUFDLE9BQXNCO1FBQzlCLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztJQUNyQixDQUFDOzttSEEzRFEscUJBQXFCO3VHQUFyQixxQkFBcUIsK01DZGxDLHU2REF1Q0E7NEZEekJhLHFCQUFxQjtrQkFMakMsU0FBUzsrQkFDSSwyQkFBMkI7a0lBU3JDLFNBQVM7c0JBRFIsS0FBSztnQkFLTixNQUFNO3NCQUZMLEtBQUs7O3NCQUNMLE1BQU07Z0JBU1AsZUFBZTtzQkFEZCxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkNoYW5nZXMsIE9uSW5pdCwgT3V0cHV0LCBTaW1wbGVDaGFuZ2VzIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEZvcm1CdWlsZGVyLCBGb3JtR3JvdXAgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IEltYWdlTWV0aG9kcyB9IGZyb20gJy4uLy4uL2V4dGVuc2lvbnMvSW1hZ2VNZXRob2RzJztcclxuaW1wb3J0IHsgRmlsZU5hbWVBbmRJZE1vZGVsLCBGaWxlc1F1ZXJ5U2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL2ZpbGVzLXF1ZXJ5LnNlcnZpY2UnO1xyXG5cclxuZXhwb3J0IGludGVyZmFjZSBTZWFyY2hRdWVzdGlvbnNGb3JtRGF0YXtcclxuICAgIHE6IHN0cmluZztcclxufVxyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgICBzZWxlY3RvcjogJ2Nyb2NvLWh0bWwtZmlsZS1pZC1zZWxlY3QnLFxyXG4gICAgdGVtcGxhdGVVcmw6ICcuL2ZpbGUtaWQtc2VsZWN0LmNvbXBvbmVudC5odG1sJyxcclxuICAgIHN0eWxlVXJsczogWycuL2ZpbGUtaWQtc2VsZWN0LmNvbXBvbmVudC5jc3MnXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgRmlsZUlkU2VsZWN0Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkNoYW5nZXMge1xyXG5cclxuICAgIHE6IHN0cmluZztcclxuXHJcbiAgICBASW5wdXQoKVxyXG4gICAgbGFiZWxUZXh0ID0gXCLQn9C+0LjRgdC6INGE0LDQudC70L7QslwiXHJcblxyXG4gICAgQElucHV0KClcclxuICAgIEBPdXRwdXQoKVxyXG4gICAgZmlsZUlkOiBudW1iZXI7XHJcblxyXG4gICAgbG9hZGluZyA9IGZhbHNlO1xyXG5cclxuICAgIGZvcm06IEZvcm1Hcm91cDtcclxuICAgIGZpbGVzOiBGaWxlTmFtZUFuZElkTW9kZWxbXSA9IFtdO1xyXG5cclxuICAgIEBPdXRwdXQoKVxyXG4gICAgb25GaWxlSWRDaGFuZ2VkID0gbmV3IEV2ZW50RW1pdHRlcjxudW1iZXI+KCk7XHJcblxyXG4gICAgY29uc3RydWN0b3IoXHJcbiAgICAgICAgcHJpdmF0ZSBmYjogRm9ybUJ1aWxkZXIsXHJcbiAgICAgICAgcHJpdmF0ZSBfZmlsZVNlcnZpY2U6IEZpbGVzUXVlcnlTZXJ2aWNlKSB7XHJcbiAgICAgICAgdGhpcy5mb3JtID0gdGhpcy5mYi5ncm91cCh7XHJcbiAgICAgICAgICAgIGZpbGVOYW1lOiAnJyxcclxuICAgICAgICB9KTtcclxuICAgIH1cclxuXHJcbiAgICBvbk1vZGVsQ2hhbmdlZChmaWxlSWQ6IG51bWJlcil7XHJcbiAgICAgICAgdGhpcy5vbkZpbGVJZENoYW5nZWQuZW1pdChmaWxlSWQpO1xyXG4gICAgfVxyXG5cclxuICAgIGdldFNyYyhmaWxlSWQ6IG51bWJlcil7XHJcbiAgICAgICAgcmV0dXJuIEltYWdlTWV0aG9kcy5idWlsZFNtYWxsVXJsKGZpbGVJZCk7XHJcbiAgICB9XHJcblxyXG4gICAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5sb2FkRmlsZXMoKTtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgbG9hZEZpbGVzKCkge1xyXG4gICAgICAgIHRoaXMubG9hZGluZyA9IHRydWU7XHJcbiAgICAgICAgdGhpcy5fZmlsZVNlcnZpY2UuZ2V0RmlsZXMoe1xyXG4gICAgICAgICAgICBjb3VudDogMTAsXHJcbiAgICAgICAgICAgIG9mZlNldDogMCxcclxuICAgICAgICAgICAgZmlsZU5hbWU6IG51bGwsXHJcbiAgICAgICAgICAgIHE6IHRoaXMucVxyXG4gICAgICAgIH0pLnN1YnNjcmliZShkYXRhID0+IHtcclxuICAgICAgICAgICAgdGhpcy5maWxlcyA9IFsuLi5kYXRhLmxpc3RdO1xyXG4gICAgICAgICAgICB0aGlzLmxvYWRpbmcgPSBmYWxzZTtcclxuICAgICAgICB9KTtcclxuICAgIH1cclxuXHJcbiAgICBvblNlYXJjaENoYW5nZWQocToge3Rlcm06IHN0cmluZywgaXRlbXM6b2JqZWN0W119KXtcclxuICAgICAgICB0aGlzLnEgPSBxLnRlcm07XHJcbiAgICAgICAgdGhpcy5sb2FkRmlsZXMoKTtcclxuICAgIH1cclxuXHJcbiAgICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKSB7XHJcbiAgICAgICAgdGhpcy5sb2FkRmlsZXMoKTtcclxuICAgIH1cclxufVxyXG4iLCI8Zm9ybSBbZm9ybUdyb3VwXT1cImZvcm1cIj5cclxuICAgIDxkaXYgY2xhc3M9XCJmb3JtLWdyb3VwXCI+XHJcbiAgICAgICAgPGxhYmVsIGZvcj1cImZpbGVOYW1lXCI+e3tsYWJlbFRleHR9fTwvbGFiZWw+XHJcbiAgICAgICAgPG5nLXNlbGVjdCBbKG5nTW9kZWwpXT1cImZpbGVJZFwiIChuZ01vZGVsQ2hhbmdlKT1cIm9uTW9kZWxDaGFuZ2VkKCRldmVudClcIlxyXG4gICAgICAgICAgICAgICAgICAgW2l0ZW1zXT1cImZpbGVzXCJcclxuICAgICAgICAgICAgICAgICAgICNzZWxlY3RcclxuICAgICAgICAgICAgICAgICAgIGJpbmRMYWJlbD1cImZpbGVOYW1lXCJcclxuICAgICAgICAgICAgICAgICAgIChzZWFyY2gpPVwib25TZWFyY2hDaGFuZ2VkKCRldmVudClcIlxyXG4gICAgICAgICAgICAgICAgICAgW2xvYWRpbmddPVwibG9hZGluZ1wiXHJcbiAgICAgICAgICAgICAgICAgICBbbG9hZGluZ1RleHRdPVwiJ9CX0LDQs9GA0YPQttCw0Y4g0YTQsNC50LvRiydcIlxyXG4gICAgICAgICAgICAgICAgICAgZHJvcGRvd25Qb3NpdGlvbj1cImF1dG9cIlxyXG4gICAgICAgICAgICAgICAgICAgYmluZFZhbHVlPVwiZmlsZUlkXCJcclxuICAgICAgICAgICAgICAgICAgIGxhYmVsRm9ySWQ9XCJmaWxlTmFtZVwiXHJcbiAgICAgICAgICAgICAgICAgICBwbGFjZWhvbGRlcj1cItCS0YvQsdGA0LDRgtGMINGE0LDQudC7XCJcclxuICAgICAgICAgICAgICAgICAgIFt2aXJ0dWFsU2Nyb2xsXT1cInRydWVcIlxyXG4gICAgICAgICAgICAgICAgICAgZm9ybUNvbnRyb2xOYW1lPVwiZmlsZU5hbWVcIj5cclxuICAgICAgICAgICAgPG5nLXRlbXBsYXRlIG5nLW9wdGlvbi10bXAgbGV0LWl0ZW09XCJpdGVtXCIgbGV0LWluZGV4PVwiaW5kZXhcIiBsZXQtc2VhcmNoPVwic2VhcmNoVGVybVwiPlxyXG4gICAgICAgICAgICAgICAgPGRpdj5cclxuICAgICAgICAgICAgICAgICAgICA8aW1nIGNsYXNzPVwibXgtYXV0byBkLWJsb2NrIGltZy1mbHVpZFwiIFtzcmNdPVwiZ2V0U3JjKGl0ZW0uZmlsZUlkKVwiLz5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPGRpdj5cclxuICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImg1XCI+0KTQsNC50Ls6IDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImg1XCIgW25nT3B0aW9uSGlnaGxpZ2h0XT1cInNlYXJjaFwiPjxiPnt7aXRlbS5maWxlTmFtZX19PC9iPjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPGRpdj5cclxuICAgICAgICAgICAgICAgICAgICA8c21hbGw+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAg0JjQtNC10L3RgtC40YTQuNC60LDRgtC+0YAg0YTQsNC50LvQsDogPGI+e3tpdGVtLmZpbGVJZH19PC9iPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9zbWFsbD5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgICAgIDwvbmctc2VsZWN0PlxyXG4gICAgPC9kaXY+XHJcbjwvZm9ybT5cclxuXHJcbjxkaXY+XHJcbiAgICDQmNC00LXQvdGC0LjRhNC40LrQsNGC0L7RgCDRhNCw0LnQu9CwOiB7e2ZpbGVJZH19XHJcbjwvZGl2PlxyXG4iXX0=
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
export * from './add-files-btn/add-files-btn.component';
|
|
2
|
+
export * from './editor/';
|
|
3
|
+
export * from './file-id-select/file-id-select.component';
|
|
4
|
+
export * from './upload-files-btn/upload-files-btn.component';
|
|
5
|
+
export * from './xml-tags';
|
|
6
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jcm9jby1odG1sL3NyYy9saWIvY29tcG9uZW50cy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLHlDQUF5QyxDQUFBO0FBQ3ZELGNBQWMsV0FBVyxDQUFBO0FBQ3pCLGNBQWMsMkNBQTJDLENBQUE7QUFDekQsY0FBYywrQ0FBK0MsQ0FBQTtBQUM3RCxjQUFjLFlBQVksQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vYWRkLWZpbGVzLWJ0bi9hZGQtZmlsZXMtYnRuLmNvbXBvbmVudCdcclxuZXhwb3J0ICogZnJvbSAnLi9lZGl0b3IvJ1xyXG5leHBvcnQgKiBmcm9tICcuL2ZpbGUtaWQtc2VsZWN0L2ZpbGUtaWQtc2VsZWN0LmNvbXBvbmVudCdcclxuZXhwb3J0ICogZnJvbSAnLi91cGxvYWQtZmlsZXMtYnRuL3VwbG9hZC1maWxlcy1idG4uY29tcG9uZW50J1xyXG5leHBvcnQgKiBmcm9tICcuL3htbC10YWdzJ1xyXG4iXX0=
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import { Component, EventEmitter, Input, Output, ViewChild } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
import * as i1 from "../../services/file-upload.service";
|
|
4
|
+
import * as i2 from "@angular/material/button";
|
|
5
|
+
export class UploadFilesBtnComponent {
|
|
6
|
+
constructor(_fileUploadService) {
|
|
7
|
+
this._fileUploadService = _fileUploadService;
|
|
8
|
+
this.extAccepts = "*/*";
|
|
9
|
+
this.isMultiple = true;
|
|
10
|
+
this.btnText = "Загрузить файлы";
|
|
11
|
+
this.createLocalCopiesNow = false;
|
|
12
|
+
this.hidden = false;
|
|
13
|
+
this.postFilesStarted = new EventEmitter();
|
|
14
|
+
this.onFilesUploaded = new EventEmitter();
|
|
15
|
+
}
|
|
16
|
+
handleFileInput(files) {
|
|
17
|
+
this.postFilesStarted.emit({
|
|
18
|
+
filesCount: files.length,
|
|
19
|
+
createLocalCopiesNow: this.createLocalCopiesNow
|
|
20
|
+
});
|
|
21
|
+
this._fileUploadService.postFiles(files, this.createLocalCopiesNow).subscribe(data => {
|
|
22
|
+
this.onFilesUploaded.emit(data);
|
|
23
|
+
});
|
|
24
|
+
}
|
|
25
|
+
clickFileInput() {
|
|
26
|
+
this.fileInput.nativeElement.click();
|
|
27
|
+
}
|
|
28
|
+
ngOnInit() {
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
UploadFilesBtnComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: UploadFilesBtnComponent, deps: [{ token: i1.FileUploadService }], target: i0.ɵɵFactoryTarget.Component });
|
|
32
|
+
UploadFilesBtnComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: UploadFilesBtnComponent, selector: "app-upload-files-btn", inputs: { extAccepts: "extAccepts", isMultiple: "isMultiple", btnText: "btnText", createLocalCopiesNow: "createLocalCopiesNow", hidden: "hidden" }, outputs: { postFilesStarted: "postFilesStarted", onFilesUploaded: "onFilesUploaded" }, viewQueries: [{ propertyName: "fileInput", first: true, predicate: ["filesInput"], descendants: true }], ngImport: i0, template: "<button [hidden]=\"hidden\" mat-raised-button color=\"primary\" (click)=\"filesInput.click()\">{{btnText}}</button>\r\n<input [hidden]=\"true\" [accept]=\"extAccepts\" [multiple]=\"isMultiple\" type=\"file\" #filesInput (change)=\"handleFileInput($event.target.files)\" />", styles: [""], components: [{ type: i2.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }] });
|
|
33
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: UploadFilesBtnComponent, decorators: [{
|
|
34
|
+
type: Component,
|
|
35
|
+
args: [{ selector: 'app-upload-files-btn', template: "<button [hidden]=\"hidden\" mat-raised-button color=\"primary\" (click)=\"filesInput.click()\">{{btnText}}</button>\r\n<input [hidden]=\"true\" [accept]=\"extAccepts\" [multiple]=\"isMultiple\" type=\"file\" #filesInput (change)=\"handleFileInput($event.target.files)\" />", styles: [""] }]
|
|
36
|
+
}], ctorParameters: function () { return [{ type: i1.FileUploadService }]; }, propDecorators: { fileInput: [{
|
|
37
|
+
type: ViewChild,
|
|
38
|
+
args: ['filesInput']
|
|
39
|
+
}], extAccepts: [{
|
|
40
|
+
type: Input
|
|
41
|
+
}], isMultiple: [{
|
|
42
|
+
type: Input
|
|
43
|
+
}], btnText: [{
|
|
44
|
+
type: Input
|
|
45
|
+
}], createLocalCopiesNow: [{
|
|
46
|
+
type: Input
|
|
47
|
+
}], hidden: [{
|
|
48
|
+
type: Input
|
|
49
|
+
}], postFilesStarted: [{
|
|
50
|
+
type: Output
|
|
51
|
+
}], onFilesUploaded: [{
|
|
52
|
+
type: Output
|
|
53
|
+
}] } });
|
|
54
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXBsb2FkLWZpbGVzLWJ0bi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jcm9jby1odG1sL3NyYy9saWIvY29tcG9uZW50cy91cGxvYWQtZmlsZXMtYnRuL3VwbG9hZC1maWxlcy1idG4uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY3JvY28taHRtbC9zcmMvbGliL2NvbXBvbmVudHMvdXBsb2FkLWZpbGVzLWJ0bi91cGxvYWQtZmlsZXMtYnRuLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQWMsWUFBWSxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7O0FBYXRHLE1BQU0sT0FBTyx1QkFBdUI7SUFFbEMsWUFBb0Isa0JBQXFDO1FBQXJDLHVCQUFrQixHQUFsQixrQkFBa0IsQ0FBbUI7UUFJekQsZUFBVSxHQUFXLEtBQUssQ0FBQztRQUczQixlQUFVLEdBQVksSUFBSSxDQUFDO1FBRzNCLFlBQU8sR0FBVyxpQkFBaUIsQ0FBQztRQUdwQyx5QkFBb0IsR0FBRyxLQUFLLENBQUM7UUFHN0IsV0FBTSxHQUFZLEtBQUssQ0FBQztRQUd4QixxQkFBZ0IsR0FBRyxJQUFJLFlBQVksRUFBc0IsQ0FBQztRQUcxRCxvQkFBZSxHQUFHLElBQUksWUFBWSxFQUErQixDQUFDO0lBdEJMLENBQUM7SUF3QjlELGVBQWUsQ0FBQyxLQUFlO1FBQzdCLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUM7WUFDekIsVUFBVSxFQUFDLEtBQUssQ0FBQyxNQUFNO1lBQ3ZCLG9CQUFvQixFQUFFLElBQUksQ0FBQyxvQkFBb0I7U0FDaEQsQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLGtCQUFrQixDQUFDLFNBQVMsQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLG9CQUFvQixDQUFDLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFO1lBQ25GLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ2xDLENBQUMsQ0FBQyxDQUFBO0lBQ0osQ0FBQztJQUVELGNBQWM7UUFDWixJQUFJLENBQUMsU0FBUyxDQUFDLGFBQWEsQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUN2QyxDQUFDO0lBRUQsUUFBUTtJQUNSLENBQUM7O3FIQTFDVSx1QkFBdUI7eUdBQXZCLHVCQUF1QixnWkNicEMsa1JBQytJOzRGRFlsSSx1QkFBdUI7a0JBTG5DLFNBQVM7K0JBQ0Usc0JBQXNCO3dHQU9DLFNBQVM7c0JBQXpDLFNBQVM7dUJBQUMsWUFBWTtnQkFHdkIsVUFBVTtzQkFEVCxLQUFLO2dCQUlOLFVBQVU7c0JBRFQsS0FBSztnQkFJTixPQUFPO3NCQUROLEtBQUs7Z0JBSU4sb0JBQW9CO3NCQURuQixLQUFLO2dCQUlOLE1BQU07c0JBREwsS0FBSztnQkFJTixnQkFBZ0I7c0JBRGYsTUFBTTtnQkFJUCxlQUFlO3NCQURkLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEVsZW1lbnRSZWYsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uSW5pdCwgT3V0cHV0LCBWaWV3Q2hpbGQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQmFzZUFwaVJlc3BvbnNlV2l0aEZpbGVzSWRzLCBGaWxlVXBsb2FkU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL2ZpbGUtdXBsb2FkLnNlcnZpY2UnO1xyXG5cclxuZXhwb3J0IGludGVyZmFjZSBGaWxlUG9zdGluZ1N0YXJ0ZWQge1xyXG4gIGZpbGVzQ291bnQ6IG51bWJlcjtcclxuICBjcmVhdGVMb2NhbENvcGllc05vdzpib29sZWFuO1xyXG59XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2FwcC11cGxvYWQtZmlsZXMtYnRuJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vdXBsb2FkLWZpbGVzLWJ0bi5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vdXBsb2FkLWZpbGVzLWJ0bi5jb21wb25lbnQuY3NzJ11cclxufSlcclxuZXhwb3J0IGNsYXNzIFVwbG9hZEZpbGVzQnRuQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuXHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBfZmlsZVVwbG9hZFNlcnZpY2U6IEZpbGVVcGxvYWRTZXJ2aWNlKSB7IH1cclxuICBAVmlld0NoaWxkKCdmaWxlc0lucHV0JykgcHJpdmF0ZSBmaWxlSW5wdXQhOiBFbGVtZW50UmVmPEhUTUxJbnB1dEVsZW1lbnQ+O1xyXG5cclxuICBASW5wdXQoKVxyXG4gIGV4dEFjY2VwdHM6IHN0cmluZyA9IFwiKi8qXCI7XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgaXNNdWx0aXBsZTogYm9vbGVhbiA9IHRydWU7XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgYnRuVGV4dDogc3RyaW5nID0gXCLQl9Cw0LPRgNGD0LfQuNGC0Ywg0YTQsNC50LvRi1wiO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIGNyZWF0ZUxvY2FsQ29waWVzTm93ID0gZmFsc2U7XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgaGlkZGVuOiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gIEBPdXRwdXQoKVxyXG4gIHBvc3RGaWxlc1N0YXJ0ZWQgPSBuZXcgRXZlbnRFbWl0dGVyPEZpbGVQb3N0aW5nU3RhcnRlZD4oKTtcclxuXHJcbiAgQE91dHB1dCgpXHJcbiAgb25GaWxlc1VwbG9hZGVkID0gbmV3IEV2ZW50RW1pdHRlcjxCYXNlQXBpUmVzcG9uc2VXaXRoRmlsZXNJZHM+KCk7XHJcblxyXG4gIGhhbmRsZUZpbGVJbnB1dChmaWxlczogRmlsZUxpc3QpIHtcclxuICAgIHRoaXMucG9zdEZpbGVzU3RhcnRlZC5lbWl0KHtcclxuICAgICAgZmlsZXNDb3VudDpmaWxlcy5sZW5ndGgsXHJcbiAgICAgIGNyZWF0ZUxvY2FsQ29waWVzTm93OiB0aGlzLmNyZWF0ZUxvY2FsQ29waWVzTm93XHJcbiAgICB9KTtcclxuXHJcbiAgICB0aGlzLl9maWxlVXBsb2FkU2VydmljZS5wb3N0RmlsZXMoZmlsZXMsIHRoaXMuY3JlYXRlTG9jYWxDb3BpZXNOb3cpLnN1YnNjcmliZShkYXRhID0+IHtcclxuICAgICAgdGhpcy5vbkZpbGVzVXBsb2FkZWQuZW1pdChkYXRhKTtcclxuICAgIH0pXHJcbiAgfVxyXG5cclxuICBjbGlja0ZpbGVJbnB1dCgpe1xyXG4gICAgdGhpcy5maWxlSW5wdXQubmF0aXZlRWxlbWVudC5jbGljaygpO1xyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKSB7XHJcbiAgfVxyXG59XHJcbiIsIjxidXR0b24gW2hpZGRlbl09XCJoaWRkZW5cIiBtYXQtcmFpc2VkLWJ1dHRvbiBjb2xvcj1cInByaW1hcnlcIiAoY2xpY2spPVwiZmlsZXNJbnB1dC5jbGljaygpXCI+e3tidG5UZXh0fX08L2J1dHRvbj5cclxuPGlucHV0IFtoaWRkZW5dPVwidHJ1ZVwiIFthY2NlcHRdPVwiZXh0QWNjZXB0c1wiIFttdWx0aXBsZV09XCJpc011bHRpcGxlXCIgdHlwZT1cImZpbGVcIiAjZmlsZXNJbnB1dCAoY2hhbmdlKT1cImhhbmRsZUZpbGVJbnB1dCgkZXZlbnQudGFyZ2V0LmZpbGVzKVwiIC8+Il19
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export * from './xml-tag-external-video/xml-tag-external-video.component';
|
|
2
|
+
export * from './xml-tag-header-inner-text-view/xml-tag-header-inner-text-view.component';
|
|
3
|
+
export * from './xml-tag-header-text-view/xml-tag-header-text-view.component';
|
|
4
|
+
export * from './xml-tag-html-view/xml-tag-html-view.component';
|
|
5
|
+
export * from './xml-tag-rich-text-view/xml-tag-rich-text-view.component';
|
|
6
|
+
export * from './xml-tag-table-view/xml-tag-table-view.component';
|
|
7
|
+
export * from './xml-tag-text-view/xml-tag-text-view.component';
|
|
8
|
+
export * from './xml-tag-view/xml-tag-view.component';
|
|
9
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jcm9jby1odG1sL3NyYy9saWIvY29tcG9uZW50cy94bWwtdGFncy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLDJEQUEyRCxDQUFBO0FBQ3pFLGNBQWMsMkVBQTJFLENBQUE7QUFDekYsY0FBYywrREFBK0QsQ0FBQTtBQUM3RSxjQUFjLGlEQUFpRCxDQUFBO0FBQy9ELGNBQWMsMkRBQTJELENBQUE7QUFDekUsY0FBYyxtREFBbUQsQ0FBQTtBQUNqRSxjQUFjLGlEQUFpRCxDQUFBO0FBQy9ELGNBQWMsdUNBQXVDLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL3htbC10YWctZXh0ZXJuYWwtdmlkZW8veG1sLXRhZy1leHRlcm5hbC12aWRlby5jb21wb25lbnQnXHJcbmV4cG9ydCAqIGZyb20gJy4veG1sLXRhZy1oZWFkZXItaW5uZXItdGV4dC12aWV3L3htbC10YWctaGVhZGVyLWlubmVyLXRleHQtdmlldy5jb21wb25lbnQnXHJcbmV4cG9ydCAqIGZyb20gJy4veG1sLXRhZy1oZWFkZXItdGV4dC12aWV3L3htbC10YWctaGVhZGVyLXRleHQtdmlldy5jb21wb25lbnQnXHJcbmV4cG9ydCAqIGZyb20gJy4veG1sLXRhZy1odG1sLXZpZXcveG1sLXRhZy1odG1sLXZpZXcuY29tcG9uZW50J1xyXG5leHBvcnQgKiBmcm9tICcuL3htbC10YWctcmljaC10ZXh0LXZpZXcveG1sLXRhZy1yaWNoLXRleHQtdmlldy5jb21wb25lbnQnXHJcbmV4cG9ydCAqIGZyb20gJy4veG1sLXRhZy10YWJsZS12aWV3L3htbC10YWctdGFibGUtdmlldy5jb21wb25lbnQnXHJcbmV4cG9ydCAqIGZyb20gJy4veG1sLXRhZy10ZXh0LXZpZXcveG1sLXRhZy10ZXh0LXZpZXcuY29tcG9uZW50J1xyXG5leHBvcnQgKiBmcm9tICcuL3htbC10YWctdmlldy94bWwtdGFnLXZpZXcuY29tcG9uZW50J1xyXG4iXX0=
|
package/esm2020/lib/components/xml-tags/xml-tag-external-video/xml-tag-external-video.component.mjs
ADDED
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import { Component, Input } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
import * as i1 from "@angular/platform-browser";
|
|
4
|
+
import * as i2 from "@angular/common";
|
|
5
|
+
export class XmlTagExternalVideoComponent {
|
|
6
|
+
constructor(_domSanitizer) {
|
|
7
|
+
this._domSanitizer = _domSanitizer;
|
|
8
|
+
}
|
|
9
|
+
getYouTubeId(youtubeLink) {
|
|
10
|
+
//https://www.youtube.com/watch?v=l3KfbfkxJOU
|
|
11
|
+
if (youtubeLink.includes("watch?v=")) {
|
|
12
|
+
var url = new URL(youtubeLink);
|
|
13
|
+
return url.searchParams.get("v");
|
|
14
|
+
}
|
|
15
|
+
//https://youtu.be/jzBneaWSswY
|
|
16
|
+
let bits = youtubeLink.split('/');
|
|
17
|
+
return bits[bits.length - 1];
|
|
18
|
+
}
|
|
19
|
+
getWidgetLink(youtubeLink) {
|
|
20
|
+
let id = this.getYouTubeId(youtubeLink);
|
|
21
|
+
let result = `https://www.youtube.com/embed/${id}?controls=0`;
|
|
22
|
+
this.widgetUrl = this._domSanitizer.bypassSecurityTrustResourceUrl(result);
|
|
23
|
+
return result;
|
|
24
|
+
}
|
|
25
|
+
ngOnInit() {
|
|
26
|
+
if (this.data != null) {
|
|
27
|
+
this.tagData = this.data.data;
|
|
28
|
+
}
|
|
29
|
+
let youtubeWidgetLink = this.getWidgetLink(this.tagData.link);
|
|
30
|
+
this.widgetUrl = this._domSanitizer.bypassSecurityTrustResourceUrl(youtubeWidgetLink);
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
XmlTagExternalVideoComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: XmlTagExternalVideoComponent, deps: [{ token: i1.DomSanitizer }], target: i0.ɵɵFactoryTarget.Component });
|
|
34
|
+
XmlTagExternalVideoComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: XmlTagExternalVideoComponent, selector: "croco-html-xml-tag-external-video", inputs: { data: "data", tagData: "tagData" }, ngImport: i0, template: "<div class=\"d-flex justify-content-center\">\r\n <div *ngIf=\"widgetUrl\" class=\"y-video\">\r\n <iframe width=\"100%\" height=\"100%\" [src]=\"widgetUrl\"\r\n title=\"YouTube video player\" frameborder=\"0\"\r\n allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture\"\r\n allowfullscreen></iframe>\r\n </div>\r\n</div>", styles: ["@media only screen and (min-width: 769px){.y-video{width:640px;height:360px;margin:0 auto}}@media only screen and (max-width: 768px){.y-video{width:560px;height:315px;margin:0 auto}}\n"], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
|
|
35
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: XmlTagExternalVideoComponent, decorators: [{
|
|
36
|
+
type: Component,
|
|
37
|
+
args: [{ selector: 'croco-html-xml-tag-external-video', template: "<div class=\"d-flex justify-content-center\">\r\n <div *ngIf=\"widgetUrl\" class=\"y-video\">\r\n <iframe width=\"100%\" height=\"100%\" [src]=\"widgetUrl\"\r\n title=\"YouTube video player\" frameborder=\"0\"\r\n allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture\"\r\n allowfullscreen></iframe>\r\n </div>\r\n</div>", styles: ["@media only screen and (min-width: 769px){.y-video{width:640px;height:360px;margin:0 auto}}@media only screen and (max-width: 768px){.y-video{width:560px;height:315px;margin:0 auto}}\n"] }]
|
|
38
|
+
}], ctorParameters: function () { return [{ type: i1.DomSanitizer }]; }, propDecorators: { data: [{
|
|
39
|
+
type: Input
|
|
40
|
+
}], tagData: [{
|
|
41
|
+
type: Input
|
|
42
|
+
}] } });
|
|
43
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoieG1sLXRhZy1leHRlcm5hbC12aWRlby5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jcm9jby1odG1sL3NyYy9saWIvY29tcG9uZW50cy94bWwtdGFncy94bWwtdGFnLWV4dGVybmFsLXZpZGVvL3htbC10YWctZXh0ZXJuYWwtdmlkZW8uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY3JvY28taHRtbC9zcmMvbGliL2NvbXBvbmVudHMveG1sLXRhZ3MveG1sLXRhZy1leHRlcm5hbC12aWRlby94bWwtdGFnLWV4dGVybmFsLXZpZGVvLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFVLE1BQU0sZUFBZSxDQUFDOzs7O0FBVXpELE1BQU0sT0FBTyw0QkFBNEI7SUFtQ3ZDLFlBQW9CLGFBQTJCO1FBQTNCLGtCQUFhLEdBQWIsYUFBYSxDQUFjO0lBQUksQ0FBQztJQXpCcEQsWUFBWSxDQUFDLFdBQWtCO1FBRTdCLDZDQUE2QztRQUM3QyxJQUFHLFdBQVcsQ0FBQyxRQUFRLENBQUMsVUFBVSxDQUFDLEVBQUM7WUFDbEMsSUFBSSxHQUFHLEdBQUcsSUFBSSxHQUFHLENBQUMsV0FBVyxDQUFDLENBQUM7WUFDL0IsT0FBTyxHQUFHLENBQUMsWUFBWSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQztTQUNsQztRQUVELDhCQUE4QjtRQUM5QixJQUFJLElBQUksR0FBRyxXQUFXLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFBO1FBQ2pDLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUM7SUFDL0IsQ0FBQztJQUVELGFBQWEsQ0FBQyxXQUFrQjtRQUU5QixJQUFJLEVBQUUsR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBRXhDLElBQUksTUFBTSxHQUFHLGlDQUFpQyxFQUFFLGFBQWEsQ0FBQztRQUU5RCxJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsOEJBQThCLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDM0UsT0FBTyxNQUFNLENBQUM7SUFDaEIsQ0FBQztJQU1ELFFBQVE7UUFDTixJQUFHLElBQUksQ0FBQyxJQUFJLElBQUksSUFBSSxFQUFDO1lBQ25CLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUE0QixDQUFDO1NBQ3ZEO1FBRUQsSUFBSSxpQkFBaUIsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDOUQsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLDhCQUE4QixDQUFDLGlCQUFpQixDQUFDLENBQUM7SUFDeEYsQ0FBQzs7MEhBNUNVLDRCQUE0Qjs4R0FBNUIsNEJBQTRCLHVIQ1Z6QywyWkFPTTs0RkRHTyw0QkFBNEI7a0JBTHhDLFNBQVM7K0JBQ0UsbUNBQW1DO21HQU83QyxJQUFJO3NCQURILEtBQUs7Z0JBSU4sT0FBTztzQkFETixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IERvbVNhbml0aXplciwgU2FmZVJlc291cmNlVXJsIH0gZnJvbSAnQGFuZ3VsYXIvcGxhdGZvcm0tYnJvd3Nlcic7XHJcbmltcG9ydCB7IEludGVyZmFjZUJsb2NrIH0gZnJvbSBcIi4uLy4uLy4uL2V4dGVuc2lvbnMvSW50ZXJmYWNlQmxvY2tcIjtcclxuaW1wb3J0IHsgRXh0ZXJuYWxWaWRlb1RhZ0RhdGEgfSBmcm9tICcuLi8uLi8uLi9leHRlbnNpb25zL1ZpZGVvTWV0aG9kcyc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2Nyb2NvLWh0bWwteG1sLXRhZy1leHRlcm5hbC12aWRlbycsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3htbC10YWctZXh0ZXJuYWwtdmlkZW8uY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL3htbC10YWctZXh0ZXJuYWwtdmlkZW8uY29tcG9uZW50LmNzcyddXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBYbWxUYWdFeHRlcm5hbFZpZGVvQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuXHJcbiAgQElucHV0KClcclxuICBkYXRhOiBJbnRlcmZhY2VCbG9jaztcclxuXHJcbiAgQElucHV0KClcclxuICB0YWdEYXRhOiBFeHRlcm5hbFZpZGVvVGFnRGF0YTtcclxuXHJcbiAgd2lkZ2V0VXJsOiBTYWZlUmVzb3VyY2VVcmw7XHJcblxyXG4gIGdldFlvdVR1YmVJZCh5b3V0dWJlTGluazpzdHJpbmcpe1xyXG5cclxuICAgIC8vaHR0cHM6Ly93d3cueW91dHViZS5jb20vd2F0Y2g/dj1sM0tmYmZreEpPVVxyXG4gICAgaWYoeW91dHViZUxpbmsuaW5jbHVkZXMoXCJ3YXRjaD92PVwiKSl7XHJcbiAgICAgIHZhciB1cmwgPSBuZXcgVVJMKHlvdXR1YmVMaW5rKTtcclxuICAgICAgcmV0dXJuIHVybC5zZWFyY2hQYXJhbXMuZ2V0KFwidlwiKTtcclxuICAgIH1cclxuXHJcbiAgICAvL2h0dHBzOi8veW91dHUuYmUvanpCbmVhV1Nzd1lcclxuICAgIGxldCBiaXRzID0geW91dHViZUxpbmsuc3BsaXQoJy8nKVxyXG4gICAgcmV0dXJuIGJpdHNbYml0cy5sZW5ndGggLSAxXTtcclxuICB9XHJcblxyXG4gIGdldFdpZGdldExpbmsoeW91dHViZUxpbms6c3RyaW5nKXtcclxuXHJcbiAgICBsZXQgaWQgPSB0aGlzLmdldFlvdVR1YmVJZCh5b3V0dWJlTGluayk7XHJcblxyXG4gICAgbGV0IHJlc3VsdCA9IGBodHRwczovL3d3dy55b3V0dWJlLmNvbS9lbWJlZC8ke2lkfT9jb250cm9scz0wYDtcclxuXHJcbiAgICB0aGlzLndpZGdldFVybCA9IHRoaXMuX2RvbVNhbml0aXplci5ieXBhc3NTZWN1cml0eVRydXN0UmVzb3VyY2VVcmwocmVzdWx0KTtcclxuICAgIHJldHVybiByZXN1bHQ7XHJcbiAgfVxyXG5cclxuXHJcblxyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgX2RvbVNhbml0aXplcjogRG9tU2FuaXRpemVyKSB7IH1cclxuXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICBpZih0aGlzLmRhdGEgIT0gbnVsbCl7XHJcbiAgICAgIHRoaXMudGFnRGF0YSA9IHRoaXMuZGF0YS5kYXRhIGFzIEV4dGVybmFsVmlkZW9UYWdEYXRhO1xyXG4gICAgfVxyXG5cclxuICAgIGxldCB5b3V0dWJlV2lkZ2V0TGluayA9IHRoaXMuZ2V0V2lkZ2V0TGluayh0aGlzLnRhZ0RhdGEubGluayk7XHJcbiAgICB0aGlzLndpZGdldFVybCA9IHRoaXMuX2RvbVNhbml0aXplci5ieXBhc3NTZWN1cml0eVRydXN0UmVzb3VyY2VVcmwoeW91dHViZVdpZGdldExpbmspO1xyXG4gIH1cclxuXHJcblxyXG5cclxufVxyXG4iLCI8ZGl2IGNsYXNzPVwiZC1mbGV4IGp1c3RpZnktY29udGVudC1jZW50ZXJcIj5cclxuICAgIDxkaXYgKm5nSWY9XCJ3aWRnZXRVcmxcIiBjbGFzcz1cInktdmlkZW9cIj5cclxuICAgICAgICA8aWZyYW1lIHdpZHRoPVwiMTAwJVwiIGhlaWdodD1cIjEwMCVcIiBbc3JjXT1cIndpZGdldFVybFwiXHJcbiAgICAgICAgICAgIHRpdGxlPVwiWW91VHViZSB2aWRlbyBwbGF5ZXJcIiBmcmFtZWJvcmRlcj1cIjBcIlxyXG4gICAgICAgICAgICBhbGxvdz1cImFjY2VsZXJvbWV0ZXI7IGF1dG9wbGF5OyBjbGlwYm9hcmQtd3JpdGU7IGVuY3J5cHRlZC1tZWRpYTsgZ3lyb3Njb3BlOyBwaWN0dXJlLWluLXBpY3R1cmVcIlxyXG4gICAgICAgICAgICBhbGxvd2Z1bGxzY3JlZW4+PC9pZnJhbWU+XHJcbiAgICA8L2Rpdj5cclxuPC9kaXY+Il19
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { Component, Input } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
import * as i1 from "@angular/common";
|
|
4
|
+
export class XmlTagHeaderInnerTextViewComponent {
|
|
5
|
+
constructor() { }
|
|
6
|
+
ngOnInit() {
|
|
7
|
+
}
|
|
8
|
+
}
|
|
9
|
+
XmlTagHeaderInnerTextViewComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: XmlTagHeaderInnerTextViewComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
10
|
+
XmlTagHeaderInnerTextViewComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: XmlTagHeaderInnerTextViewComponent, selector: "croco-html-xml-tag-header-inner-text-view", inputs: { item: "item" }, ngImport: i0, template: "<h1 *ngIf=\"item.type === 'h1'\" \r\n [innerHtml]=\"item.data.html\">\r\n</h1>\r\n<h2 *ngIf=\"item.type === 'h2'\" \r\n [innerHtml]=\"item.data.html\">\r\n</h2>\r\n<h3 *ngIf=\"item.type === 'h3'\" \r\n [innerHtml]=\"item.data.html\">\r\n</h3>\r\n<h4 *ngIf=\"item.type === 'h4'\" \r\n [innerHtml]=\"item.data.html\">\r\n</h4>\r\n<h5 *ngIf=\"item.type === 'h5'\" \r\n [innerHtml]=\"item.data.html\">\r\n</h5>\r\n<h6 *ngIf=\"item.type === 'h6'\" \r\n [innerHtml]=\"item.data.html\">\r\n</h6>", styles: [""], directives: [{ type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
|
|
11
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: XmlTagHeaderInnerTextViewComponent, decorators: [{
|
|
12
|
+
type: Component,
|
|
13
|
+
args: [{ selector: 'croco-html-xml-tag-header-inner-text-view', template: "<h1 *ngIf=\"item.type === 'h1'\" \r\n [innerHtml]=\"item.data.html\">\r\n</h1>\r\n<h2 *ngIf=\"item.type === 'h2'\" \r\n [innerHtml]=\"item.data.html\">\r\n</h2>\r\n<h3 *ngIf=\"item.type === 'h3'\" \r\n [innerHtml]=\"item.data.html\">\r\n</h3>\r\n<h4 *ngIf=\"item.type === 'h4'\" \r\n [innerHtml]=\"item.data.html\">\r\n</h4>\r\n<h5 *ngIf=\"item.type === 'h5'\" \r\n [innerHtml]=\"item.data.html\">\r\n</h5>\r\n<h6 *ngIf=\"item.type === 'h6'\" \r\n [innerHtml]=\"item.data.html\">\r\n</h6>", styles: [""] }]
|
|
14
|
+
}], ctorParameters: function () { return []; }, propDecorators: { item: [{
|
|
15
|
+
type: Input
|
|
16
|
+
}] } });
|
|
17
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoieG1sLXRhZy1oZWFkZXItaW5uZXItdGV4dC12aWV3LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Nyb2NvLWh0bWwvc3JjL2xpYi9jb21wb25lbnRzL3htbC10YWdzL3htbC10YWctaGVhZGVyLWlubmVyLXRleHQtdmlldy94bWwtdGFnLWhlYWRlci1pbm5lci10ZXh0LXZpZXcuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY3JvY28taHRtbC9zcmMvbGliL2NvbXBvbmVudHMveG1sLXRhZ3MveG1sLXRhZy1oZWFkZXItaW5uZXItdGV4dC12aWV3L3htbC10YWctaGVhZGVyLWlubmVyLXRleHQtdmlldy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBVSxNQUFNLGVBQWUsQ0FBQzs7O0FBUXpELE1BQU0sT0FBTyxrQ0FBa0M7SUFLN0MsZ0JBQWdCLENBQUM7SUFFakIsUUFBUTtJQUNSLENBQUM7O2dJQVJVLGtDQUFrQztvSEFBbEMsa0NBQWtDLDJHQ1IvQyw0ZkFpQks7NEZEVFEsa0NBQWtDO2tCQUw5QyxTQUFTOytCQUNFLDJDQUEyQzswRUFPckQsSUFBSTtzQkFESCxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEdlbmVyaWNUZXh0VGFnIH0gZnJvbSAnLi4vLi4vLi4vZXh0ZW5zaW9ucy9UZXh0U2ltcGxlTWV0aG9kcyc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2Nyb2NvLWh0bWwteG1sLXRhZy1oZWFkZXItaW5uZXItdGV4dC12aWV3JyxcclxuICB0ZW1wbGF0ZVVybDogJy4veG1sLXRhZy1oZWFkZXItaW5uZXItdGV4dC12aWV3LmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi94bWwtdGFnLWhlYWRlci1pbm5lci10ZXh0LXZpZXcuY29tcG9uZW50LmNzcyddXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBYbWxUYWdIZWFkZXJJbm5lclRleHRWaWV3Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuXHJcbiAgQElucHV0KClcclxuICBpdGVtOiBHZW5lcmljVGV4dFRhZztcclxuXHJcbiAgY29uc3RydWN0b3IoKSB7IH1cclxuXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgfVxyXG5cclxufVxyXG4iLCI8aDEgKm5nSWY9XCJpdGVtLnR5cGUgPT09ICdoMSdcIiBcclxuICAgIFtpbm5lckh0bWxdPVwiaXRlbS5kYXRhLmh0bWxcIj5cclxuPC9oMT5cclxuPGgyICpuZ0lmPVwiaXRlbS50eXBlID09PSAnaDInXCIgXHJcbiAgICBbaW5uZXJIdG1sXT1cIml0ZW0uZGF0YS5odG1sXCI+XHJcbjwvaDI+XHJcbjxoMyAqbmdJZj1cIml0ZW0udHlwZSA9PT0gJ2gzJ1wiIFxyXG4gICAgW2lubmVySHRtbF09XCJpdGVtLmRhdGEuaHRtbFwiPlxyXG48L2gzPlxyXG48aDQgKm5nSWY9XCJpdGVtLnR5cGUgPT09ICdoNCdcIiBcclxuICAgIFtpbm5lckh0bWxdPVwiaXRlbS5kYXRhLmh0bWxcIj5cclxuPC9oND5cclxuPGg1ICpuZ0lmPVwiaXRlbS50eXBlID09PSAnaDUnXCIgXHJcbiAgICBbaW5uZXJIdG1sXT1cIml0ZW0uZGF0YS5odG1sXCI+XHJcbjwvaDU+XHJcbjxoNiAqbmdJZj1cIml0ZW0udHlwZSA9PT0gJ2g2J1wiIFxyXG4gICAgW2lubmVySHRtbF09XCJpdGVtLmRhdGEuaHRtbFwiPlxyXG48L2g2PiJdfQ==
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { Component, Input } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
import * as i1 from "../xml-tag-header-inner-text-view/xml-tag-header-inner-text-view.component";
|
|
4
|
+
import * as i2 from "@angular/common";
|
|
5
|
+
export class XmlTagHeaderTextViewComponent {
|
|
6
|
+
constructor() { }
|
|
7
|
+
ngOnInit() {
|
|
8
|
+
}
|
|
9
|
+
}
|
|
10
|
+
XmlTagHeaderTextViewComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: XmlTagHeaderTextViewComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
11
|
+
XmlTagHeaderTextViewComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: XmlTagHeaderTextViewComponent, selector: "croco-html-xml-tag-header-text-view", inputs: { item: "item" }, ngImport: i0, template: "<div *ngIf=\"item.data.validationResult.isSucceeded && item.data.horizontalAlignment === 'left'\" style=\"text-align: left;\">\r\n <span *ngIf=\"item.data.html.length === 0 || !item.data.html\"> </span>\r\n <croco-html-xml-tag-header-inner-text-view *ngIf=\"item.data.html.length > 0\" [item]=\"item\">\r\n </croco-html-xml-tag-header-inner-text-view>\r\n</div>\r\n\r\n<div *ngIf=\"item.data.validationResult.isSucceeded && item.data.horizontalAlignment === 'right'\" style=\"text-align: right;\">\r\n <span *ngIf=\"item.data.html.length === 0 || !item.data.html\"> </span>\r\n <croco-html-xml-tag-header-inner-text-view *ngIf=\"item.data.html.length > 0\" [item]=\"item\">\r\n </croco-html-xml-tag-header-inner-text-view>\r\n</div>\r\n\r\n<div *ngIf=\"item.data.validationResult.isSucceeded && item.data.horizontalAlignment === 'center'\" style=\"text-align: center;\">\r\n <span *ngIf=\"item.data.html.length === 0 || !item.data.html\"> </span>\r\n\r\n <croco-html-xml-tag-header-inner-text-view *ngIf=\"item.data.html.length > 0\" [item]=\"item\">\r\n </croco-html-xml-tag-header-inner-text-view>\r\n</div>\r\n\r\n<div *ngIf=\"!item.data.validationResult.isSucceeded\" class=\"red\" style=\"margin-top: 10px;\" >\r\n <h4>\u0414\u043E\u043F\u0443\u0449\u0435\u043D\u0430 \u043E\u0448\u0438\u0431\u043A\u0430 \u0432 \u0442\u0435\u0433\u0435 <text></h4>\r\n <span>\r\n {{item.data.validationResult.message}}\r\n </span>\r\n</div>", styles: [""], components: [{ type: i1.XmlTagHeaderInnerTextViewComponent, selector: "croco-html-xml-tag-header-inner-text-view", inputs: ["item"] }], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
|
|
12
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: XmlTagHeaderTextViewComponent, decorators: [{
|
|
13
|
+
type: Component,
|
|
14
|
+
args: [{ selector: 'croco-html-xml-tag-header-text-view', template: "<div *ngIf=\"item.data.validationResult.isSucceeded && item.data.horizontalAlignment === 'left'\" style=\"text-align: left;\">\r\n <span *ngIf=\"item.data.html.length === 0 || !item.data.html\"> </span>\r\n <croco-html-xml-tag-header-inner-text-view *ngIf=\"item.data.html.length > 0\" [item]=\"item\">\r\n </croco-html-xml-tag-header-inner-text-view>\r\n</div>\r\n\r\n<div *ngIf=\"item.data.validationResult.isSucceeded && item.data.horizontalAlignment === 'right'\" style=\"text-align: right;\">\r\n <span *ngIf=\"item.data.html.length === 0 || !item.data.html\"> </span>\r\n <croco-html-xml-tag-header-inner-text-view *ngIf=\"item.data.html.length > 0\" [item]=\"item\">\r\n </croco-html-xml-tag-header-inner-text-view>\r\n</div>\r\n\r\n<div *ngIf=\"item.data.validationResult.isSucceeded && item.data.horizontalAlignment === 'center'\" style=\"text-align: center;\">\r\n <span *ngIf=\"item.data.html.length === 0 || !item.data.html\"> </span>\r\n\r\n <croco-html-xml-tag-header-inner-text-view *ngIf=\"item.data.html.length > 0\" [item]=\"item\">\r\n </croco-html-xml-tag-header-inner-text-view>\r\n</div>\r\n\r\n<div *ngIf=\"!item.data.validationResult.isSucceeded\" class=\"red\" style=\"margin-top: 10px;\" >\r\n <h4>\u0414\u043E\u043F\u0443\u0449\u0435\u043D\u0430 \u043E\u0448\u0438\u0431\u043A\u0430 \u0432 \u0442\u0435\u0433\u0435 <text></h4>\r\n <span>\r\n {{item.data.validationResult.message}}\r\n </span>\r\n</div>", styles: [""] }]
|
|
15
|
+
}], ctorParameters: function () { return []; }, propDecorators: { item: [{
|
|
16
|
+
type: Input
|
|
17
|
+
}] } });
|
|
18
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoieG1sLXRhZy1oZWFkZXItdGV4dC12aWV3LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Nyb2NvLWh0bWwvc3JjL2xpYi9jb21wb25lbnRzL3htbC10YWdzL3htbC10YWctaGVhZGVyLXRleHQtdmlldy94bWwtdGFnLWhlYWRlci10ZXh0LXZpZXcuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY3JvY28taHRtbC9zcmMvbGliL2NvbXBvbmVudHMveG1sLXRhZ3MveG1sLXRhZy1oZWFkZXItdGV4dC12aWV3L3htbC10YWctaGVhZGVyLXRleHQtdmlldy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBVSxNQUFNLGVBQWUsQ0FBQzs7OztBQVF6RCxNQUFNLE9BQU8sNkJBQTZCO0lBS3hDLGdCQUFnQixDQUFDO0lBRWpCLFFBQVE7SUFDUixDQUFDOzsySEFSVSw2QkFBNkI7K0dBQTdCLDZCQUE2QixxR0NSMUMsMDlDQXdCTTs0RkRoQk8sNkJBQTZCO2tCQUx6QyxTQUFTOytCQUNFLHFDQUFxQzswRUFPL0MsSUFBSTtzQkFESCxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEdlbmVyaWNUZXh0VGFnIH0gZnJvbSAnLi4vLi4vLi4vZXh0ZW5zaW9ucy9UZXh0U2ltcGxlTWV0aG9kcyc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2Nyb2NvLWh0bWwteG1sLXRhZy1oZWFkZXItdGV4dC12aWV3JyxcclxuICB0ZW1wbGF0ZVVybDogJy4veG1sLXRhZy1oZWFkZXItdGV4dC12aWV3LmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi94bWwtdGFnLWhlYWRlci10ZXh0LXZpZXcuY29tcG9uZW50LmNzcyddXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBYbWxUYWdIZWFkZXJUZXh0Vmlld0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgaXRlbTogR2VuZXJpY1RleHRUYWc7XHJcblxyXG4gIGNvbnN0cnVjdG9yKCkgeyB9XHJcblxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gIH1cclxuXHJcbn1cclxuIiwiPGRpdiAqbmdJZj1cIml0ZW0uZGF0YS52YWxpZGF0aW9uUmVzdWx0LmlzU3VjY2VlZGVkICYmIGl0ZW0uZGF0YS5ob3Jpem9udGFsQWxpZ25tZW50ID09PSAnbGVmdCdcIiBzdHlsZT1cInRleHQtYWxpZ246IGxlZnQ7XCI+XHJcbiAgICA8c3BhbiAqbmdJZj1cIml0ZW0uZGF0YS5odG1sLmxlbmd0aCA9PT0gMCB8fCAhaXRlbS5kYXRhLmh0bWxcIj4mbmJzcDs8L3NwYW4+XHJcbiAgICA8Y3JvY28taHRtbC14bWwtdGFnLWhlYWRlci1pbm5lci10ZXh0LXZpZXcgKm5nSWY9XCJpdGVtLmRhdGEuaHRtbC5sZW5ndGggPiAwXCIgIFtpdGVtXT1cIml0ZW1cIj5cclxuICAgIDwvY3JvY28taHRtbC14bWwtdGFnLWhlYWRlci1pbm5lci10ZXh0LXZpZXc+XHJcbjwvZGl2PlxyXG5cclxuPGRpdiAqbmdJZj1cIml0ZW0uZGF0YS52YWxpZGF0aW9uUmVzdWx0LmlzU3VjY2VlZGVkICYmIGl0ZW0uZGF0YS5ob3Jpem9udGFsQWxpZ25tZW50ID09PSAncmlnaHQnXCIgc3R5bGU9XCJ0ZXh0LWFsaWduOiByaWdodDtcIj5cclxuICAgIDxzcGFuICpuZ0lmPVwiaXRlbS5kYXRhLmh0bWwubGVuZ3RoID09PSAwIHx8ICFpdGVtLmRhdGEuaHRtbFwiPiZuYnNwOzwvc3Bhbj5cclxuICAgIDxjcm9jby1odG1sLXhtbC10YWctaGVhZGVyLWlubmVyLXRleHQtdmlldyAqbmdJZj1cIml0ZW0uZGF0YS5odG1sLmxlbmd0aCA+IDBcIiAgW2l0ZW1dPVwiaXRlbVwiPlxyXG4gICAgPC9jcm9jby1odG1sLXhtbC10YWctaGVhZGVyLWlubmVyLXRleHQtdmlldz5cclxuPC9kaXY+XHJcblxyXG48ZGl2ICpuZ0lmPVwiaXRlbS5kYXRhLnZhbGlkYXRpb25SZXN1bHQuaXNTdWNjZWVkZWQgJiYgaXRlbS5kYXRhLmhvcml6b250YWxBbGlnbm1lbnQgPT09ICdjZW50ZXInXCIgc3R5bGU9XCJ0ZXh0LWFsaWduOiBjZW50ZXI7XCI+XHJcbiAgICA8c3BhbiAqbmdJZj1cIml0ZW0uZGF0YS5odG1sLmxlbmd0aCA9PT0gMCB8fCAhaXRlbS5kYXRhLmh0bWxcIj4mbmJzcDs8L3NwYW4+XHJcblxyXG4gICAgPGNyb2NvLWh0bWwteG1sLXRhZy1oZWFkZXItaW5uZXItdGV4dC12aWV3ICpuZ0lmPVwiaXRlbS5kYXRhLmh0bWwubGVuZ3RoID4gMFwiICBbaXRlbV09XCJpdGVtXCI+XHJcbiAgICA8L2Nyb2NvLWh0bWwteG1sLXRhZy1oZWFkZXItaW5uZXItdGV4dC12aWV3PlxyXG48L2Rpdj5cclxuXHJcbjxkaXYgKm5nSWY9XCIhaXRlbS5kYXRhLnZhbGlkYXRpb25SZXN1bHQuaXNTdWNjZWVkZWRcIiBjbGFzcz1cInJlZFwiIHN0eWxlPVwibWFyZ2luLXRvcDogMTBweDtcIiA+XHJcbiAgICA8aDQ+0JTQvtC/0YPRidC10L3QsCDQvtGI0LjQsdC60LAg0LIg0YLQtdCz0LUgJmx0O3RleHQmZ3Q7PC9oND5cclxuICAgIDxzcGFuPlxyXG4gICAgICAgIHt7aXRlbS5kYXRhLnZhbGlkYXRpb25SZXN1bHQubWVzc2FnZX19XHJcbiAgICA8L3NwYW4+XHJcbjwvZGl2PiJdfQ==
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { Component, Input } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
export class XmlTagHtmlViewComponent {
|
|
4
|
+
constructor() {
|
|
5
|
+
this.html = "";
|
|
6
|
+
}
|
|
7
|
+
}
|
|
8
|
+
XmlTagHtmlViewComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: XmlTagHtmlViewComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
9
|
+
XmlTagHtmlViewComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: XmlTagHtmlViewComponent, selector: "croco-html-xml-tag-html-view", inputs: { html: "html" }, ngImport: i0, template: "<div class=\"col\" [innerHTML]=\"html\">\r\n \r\n</div>", styles: [""] });
|
|
10
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: XmlTagHtmlViewComponent, decorators: [{
|
|
11
|
+
type: Component,
|
|
12
|
+
args: [{ selector: 'croco-html-xml-tag-html-view', template: "<div class=\"col\" [innerHTML]=\"html\">\r\n \r\n</div>", styles: [""] }]
|
|
13
|
+
}], ctorParameters: function () { return []; }, propDecorators: { html: [{
|
|
14
|
+
type: Input
|
|
15
|
+
}] } });
|
|
16
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoieG1sLXRhZy1odG1sLXZpZXcuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY3JvY28taHRtbC9zcmMvbGliL2NvbXBvbmVudHMveG1sLXRhZ3MveG1sLXRhZy1odG1sLXZpZXcveG1sLXRhZy1odG1sLXZpZXcuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY3JvY28taHRtbC9zcmMvbGliL2NvbXBvbmVudHMveG1sLXRhZ3MveG1sLXRhZy1odG1sLXZpZXcveG1sLXRhZy1odG1sLXZpZXcuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBT2pELE1BQU0sT0FBTyx1QkFBdUI7SUFFbEM7UUFHQSxTQUFJLEdBQVcsRUFBRSxDQUFDO0lBSEYsQ0FBQzs7cUhBRk4sdUJBQXVCO3lHQUF2Qix1QkFBdUIsOEZDUHBDLDREQUVNOzRGREtPLHVCQUF1QjtrQkFMbkMsU0FBUzsrQkFDRSw4QkFBOEI7MEVBU3hDLElBQUk7c0JBREgsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnY3JvY28taHRtbC14bWwtdGFnLWh0bWwtdmlldycsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3htbC10YWctaHRtbC12aWV3LmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi94bWwtdGFnLWh0bWwtdmlldy5jb21wb25lbnQuY3NzJ11cclxufSlcclxuZXhwb3J0IGNsYXNzIFhtbFRhZ0h0bWxWaWV3Q29tcG9uZW50IHtcclxuXHJcbiAgY29uc3RydWN0b3IoKSB7IH1cclxuXHJcbiAgQElucHV0KClcclxuICBodG1sOiBzdHJpbmcgPSBcIlwiO1xyXG59XHJcbiIsIjxkaXYgY2xhc3M9XCJjb2xcIiBbaW5uZXJIVE1MXT1cImh0bWxcIj5cclxuICAgIFxyXG48L2Rpdj4iXX0=
|
package/esm2020/lib/components/xml-tags/xml-tag-rich-text-view/xml-tag-rich-text-view.component.mjs
ADDED
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { Component, Input } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
import * as i1 from "@angular/common";
|
|
4
|
+
import * as i2 from "../../../pipes/RichTextToHtmlPipe";
|
|
5
|
+
export class XmlTagRichTextViewComponent {
|
|
6
|
+
constructor() {
|
|
7
|
+
this.richTextData = null;
|
|
8
|
+
}
|
|
9
|
+
ngOnInit() {
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
XmlTagRichTextViewComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: XmlTagRichTextViewComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
13
|
+
XmlTagRichTextViewComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: XmlTagRichTextViewComponent, selector: "croco-html-xml-tag-rich-text-view", inputs: { richTextData: "richTextData" }, ngImport: i0, template: "<div *ngIf=\"richTextData\" [innerHtml]=\"richTextData | richTextToHtml\">\r\n</div>", styles: [""], directives: [{ type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], pipes: { "richTextToHtml": i2.RichTextToHtmlPipe } });
|
|
14
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: XmlTagRichTextViewComponent, decorators: [{
|
|
15
|
+
type: Component,
|
|
16
|
+
args: [{ selector: 'croco-html-xml-tag-rich-text-view', template: "<div *ngIf=\"richTextData\" [innerHtml]=\"richTextData | richTextToHtml\">\r\n</div>", styles: [""] }]
|
|
17
|
+
}], ctorParameters: function () { return []; }, propDecorators: { richTextData: [{
|
|
18
|
+
type: Input
|
|
19
|
+
}] } });
|
|
20
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoieG1sLXRhZy1yaWNoLXRleHQtdmlldy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jcm9jby1odG1sL3NyYy9saWIvY29tcG9uZW50cy94bWwtdGFncy94bWwtdGFnLXJpY2gtdGV4dC12aWV3L3htbC10YWctcmljaC10ZXh0LXZpZXcuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY3JvY28taHRtbC9zcmMvbGliL2NvbXBvbmVudHMveG1sLXRhZ3MveG1sLXRhZy1yaWNoLXRleHQtdmlldy94bWwtdGFnLXJpY2gtdGV4dC12aWV3LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFVLE1BQU0sZUFBZSxDQUFDOzs7O0FBUXpELE1BQU0sT0FBTywyQkFBMkI7SUFLdEM7UUFGQSxpQkFBWSxHQUFpQixJQUFJLENBQUM7SUFFbEIsQ0FBQztJQUVqQixRQUFRO0lBQ1IsQ0FBQzs7eUhBUlUsMkJBQTJCOzZHQUEzQiwyQkFBMkIsbUhDUnhDLHNGQUNNOzRGRE9PLDJCQUEyQjtrQkFMdkMsU0FBUzsrQkFDRSxtQ0FBbUM7MEVBTzdDLFlBQVk7c0JBRFgsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBSaWNoVGV4dERhdGEgfSBmcm9tICcuLi8uLi8uLi9leHRlbnNpb25zL1RleHRNZXRob2RzJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnY3JvY28taHRtbC14bWwtdGFnLXJpY2gtdGV4dC12aWV3JyxcclxuICB0ZW1wbGF0ZVVybDogJy4veG1sLXRhZy1yaWNoLXRleHQtdmlldy5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4veG1sLXRhZy1yaWNoLXRleHQtdmlldy5jb21wb25lbnQuY3NzJ11cclxufSlcclxuZXhwb3J0IGNsYXNzIFhtbFRhZ1JpY2hUZXh0Vmlld0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcmljaFRleHREYXRhOiBSaWNoVGV4dERhdGEgPSBudWxsO1xyXG5cclxuICBjb25zdHJ1Y3RvcigpIHsgfVxyXG5cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICB9XHJcbiAgXHJcbn1cclxuIiwiPGRpdiAqbmdJZj1cInJpY2hUZXh0RGF0YVwiIFtpbm5lckh0bWxdPVwicmljaFRleHREYXRhIHwgcmljaFRleHRUb0h0bWxcIj5cclxuPC9kaXY+Il19
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { Component, Input } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
import * as i1 from "@angular/material/table";
|
|
4
|
+
import * as i2 from "@angular/common";
|
|
5
|
+
export class XmlTagTableViewComponent {
|
|
6
|
+
constructor() {
|
|
7
|
+
this.displayedColumns = [];
|
|
8
|
+
}
|
|
9
|
+
}
|
|
10
|
+
XmlTagTableViewComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: XmlTagTableViewComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
11
|
+
XmlTagTableViewComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: XmlTagTableViewComponent, selector: "croco-html-xml-tag-table-view", inputs: { displayedColumns: "displayedColumns", data: "data" }, ngImport: i0, template: "<table mat-table [dataSource]=\"data\" class=\"mat-elevation-z8 w-100 example-container\">\r\n <ng-container [matColumnDef]=\"column\" *ngFor=\"let column of displayedColumns\">\r\n <th mat-header-cell *matHeaderCellDef> {{column}} </th>\r\n <td mat-cell *matCellDef=\"let element\"> {{element[column]}} </td>\r\n </ng-container>\r\n\r\n <tr mat-header-row *matHeaderRowDef=\"displayedColumns\"></tr>\r\n <tr mat-row *matRowDef=\"let row; columns: displayedColumns;\"></tr>\r\n</table>", styles: [""], components: [{ type: i1.MatTable, selector: "mat-table, table[mat-table]", exportAs: ["matTable"] }, { type: i1.MatHeaderRow, selector: "mat-header-row, tr[mat-header-row]", exportAs: ["matHeaderRow"] }, { type: i1.MatRow, selector: "mat-row, tr[mat-row]", exportAs: ["matRow"] }], directives: [{ type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i1.MatColumnDef, selector: "[matColumnDef]", inputs: ["sticky", "matColumnDef"] }, { type: i1.MatHeaderCellDef, selector: "[matHeaderCellDef]" }, { type: i1.MatHeaderCell, selector: "mat-header-cell, th[mat-header-cell]" }, { type: i1.MatCellDef, selector: "[matCellDef]" }, { type: i1.MatCell, selector: "mat-cell, td[mat-cell]" }, { type: i1.MatHeaderRowDef, selector: "[matHeaderRowDef]", inputs: ["matHeaderRowDef", "matHeaderRowDefSticky"] }, { type: i1.MatRowDef, selector: "[matRowDef]", inputs: ["matRowDefColumns", "matRowDefWhen"] }] });
|
|
12
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: XmlTagTableViewComponent, decorators: [{
|
|
13
|
+
type: Component,
|
|
14
|
+
args: [{ selector: 'croco-html-xml-tag-table-view', template: "<table mat-table [dataSource]=\"data\" class=\"mat-elevation-z8 w-100 example-container\">\r\n <ng-container [matColumnDef]=\"column\" *ngFor=\"let column of displayedColumns\">\r\n <th mat-header-cell *matHeaderCellDef> {{column}} </th>\r\n <td mat-cell *matCellDef=\"let element\"> {{element[column]}} </td>\r\n </ng-container>\r\n\r\n <tr mat-header-row *matHeaderRowDef=\"displayedColumns\"></tr>\r\n <tr mat-row *matRowDef=\"let row; columns: displayedColumns;\"></tr>\r\n</table>", styles: [""] }]
|
|
15
|
+
}], propDecorators: { displayedColumns: [{
|
|
16
|
+
type: Input
|
|
17
|
+
}], data: [{
|
|
18
|
+
type: Input
|
|
19
|
+
}] } });
|
|
20
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoieG1sLXRhZy10YWJsZS12aWV3LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Nyb2NvLWh0bWwvc3JjL2xpYi9jb21wb25lbnRzL3htbC10YWdzL3htbC10YWctdGFibGUtdmlldy94bWwtdGFnLXRhYmxlLXZpZXcuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY3JvY28taHRtbC9zcmMvbGliL2NvbXBvbmVudHMveG1sLXRhZ3MveG1sLXRhZy10YWJsZS12aWV3L3htbC10YWctdGFibGUtdmlldy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQzs7OztBQU9qRCxNQUFNLE9BQU8sd0JBQXdCO0lBTHJDO1FBUUUscUJBQWdCLEdBQWEsRUFBRSxDQUFDO0tBSWpDOztzSEFQWSx3QkFBd0I7MEdBQXhCLHdCQUF3QixxSUNQckMsaWdCQVFROzRGRERLLHdCQUF3QjtrQkFMcEMsU0FBUzsrQkFDRSwrQkFBK0I7OEJBT3pDLGdCQUFnQjtzQkFEZixLQUFLO2dCQUlOLElBQUk7c0JBREgsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnY3JvY28taHRtbC14bWwtdGFnLXRhYmxlLXZpZXcnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi94bWwtdGFnLXRhYmxlLXZpZXcuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL3htbC10YWctdGFibGUtdmlldy5jb21wb25lbnQuY3NzJ11cclxufSlcclxuZXhwb3J0IGNsYXNzIFhtbFRhZ1RhYmxlVmlld0NvbXBvbmVudCB7XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgZGlzcGxheWVkQ29sdW1uczogc3RyaW5nW10gPSBbXTtcclxuXHJcbiAgQElucHV0KClcclxuICBkYXRhOiBvYmplY3Q7XHJcbn1cclxuIiwiPHRhYmxlIG1hdC10YWJsZSBbZGF0YVNvdXJjZV09XCJkYXRhXCIgY2xhc3M9XCJtYXQtZWxldmF0aW9uLXo4IHctMTAwIGV4YW1wbGUtY29udGFpbmVyXCI+XHJcbiAgICA8bmctY29udGFpbmVyIFttYXRDb2x1bW5EZWZdPVwiY29sdW1uXCIgKm5nRm9yPVwibGV0IGNvbHVtbiBvZiBkaXNwbGF5ZWRDb2x1bW5zXCI+XHJcbiAgICAgICAgPHRoIG1hdC1oZWFkZXItY2VsbCAqbWF0SGVhZGVyQ2VsbERlZj4ge3tjb2x1bW59fSA8L3RoPlxyXG4gICAgICAgIDx0ZCBtYXQtY2VsbCAqbWF0Q2VsbERlZj1cImxldCBlbGVtZW50XCI+IHt7ZWxlbWVudFtjb2x1bW5dfX0gPC90ZD5cclxuICAgIDwvbmctY29udGFpbmVyPlxyXG5cclxuICAgIDx0ciBtYXQtaGVhZGVyLXJvdyAqbWF0SGVhZGVyUm93RGVmPVwiZGlzcGxheWVkQ29sdW1uc1wiPjwvdHI+XHJcbiAgICA8dHIgbWF0LXJvdyAqbWF0Um93RGVmPVwibGV0IHJvdzsgY29sdW1uczogZGlzcGxheWVkQ29sdW1ucztcIj48L3RyPlxyXG48L3RhYmxlPiJdfQ==
|