@firestitch/html-editor 9.5.6 → 9.5.9
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/app/classes/plugin.d.ts +7 -7
- package/app/components/html-editor/html-editor.component.d.ts +54 -54
- package/app/components/html-renderer/html-renderer.component.d.ts +9 -9
- package/app/consts/paragraph-buttons.const.d.ts +1 -1
- package/app/consts/rich-buttons.const.d.ts +1 -1
- package/app/consts/text-buttons.const.d.ts +1 -1
- package/app/enums/default-plugin.enum.d.ts +14 -14
- package/app/fs-html-editor.module.d.ts +25 -25
- package/app/injects/config.inject.d.ts +3 -3
- package/app/interfaces/html-editor-config.d.ts +31 -31
- package/app/interfaces/plugin-button.d.ts +12 -12
- package/app/interfaces/plugin-config.d.ts +5 -5
- package/app/plugins/checklist.plugin.d.ts +7 -7
- package/app/plugins/code.plugin.d.ts +9 -9
- package/app/plugins/configs/mention-plugin.config.d.ts +13 -12
- package/app/plugins/configs/screen-record-plugin.config.d.ts +7 -7
- package/app/plugins/mention.plugin.d.ts +15 -12
- package/app/plugins/screen-record.plugin.d.ts +11 -11
- package/app/services/froala-loader.service.d.ts +17 -17
- package/app/utils/loader.d.ts +7 -7
- package/bundles/firestitch-html-editor.umd.js +1031 -1018
- package/bundles/firestitch-html-editor.umd.js.map +1 -1
- package/bundles/firestitch-html-editor.umd.min.js +2 -2
- package/bundles/firestitch-html-editor.umd.min.js.map +1 -1
- package/esm2015/app/classes/plugin.js +4 -4
- package/esm2015/app/components/html-editor/html-editor.component.js +444 -444
- package/esm2015/app/components/html-renderer/html-renderer.component.js +34 -34
- package/esm2015/app/consts/paragraph-buttons.const.js +8 -8
- package/esm2015/app/consts/rich-buttons.const.js +6 -6
- package/esm2015/app/consts/text-buttons.const.js +18 -18
- package/esm2015/app/fs-html-editor.module.js +56 -56
- package/esm2015/app/injects/config.inject.js +3 -3
- package/esm2015/app/plugins/checklist.plugin.js +34 -34
- package/esm2015/app/plugins/code.plugin.js +62 -62
- package/esm2015/app/plugins/configs/mention-plugin.config.js +1 -1
- package/esm2015/app/plugins/mention.plugin.js +87 -73
- package/esm2015/app/plugins/screen-record.plugin.js +91 -91
- package/esm2015/app/services/froala-loader.service.js +80 -80
- package/esm2015/app/utils/loader.js +82 -82
- package/esm2015/firestitch-html-editor.js +8 -8
- package/esm2015/public_api.js +11 -11
- package/esm5/app/classes/plugin.js +8 -8
- package/esm5/app/components/html-editor/html-editor.component.js +470 -470
- package/esm5/app/components/html-renderer/html-renderer.component.js +39 -39
- package/esm5/app/consts/paragraph-buttons.const.js +8 -8
- package/esm5/app/consts/rich-buttons.const.js +6 -6
- package/esm5/app/consts/text-buttons.const.js +18 -18
- package/esm5/app/fs-html-editor.module.js +61 -61
- package/esm5/app/injects/config.inject.js +3 -3
- package/esm5/app/plugins/checklist.plugin.js +40 -40
- package/esm5/app/plugins/code.plugin.js +69 -69
- package/esm5/app/plugins/configs/mention-plugin.config.js +1 -1
- package/esm5/app/plugins/mention.plugin.js +93 -79
- package/esm5/app/plugins/screen-record.plugin.js +105 -105
- package/esm5/app/services/froala-loader.service.js +95 -95
- package/esm5/app/utils/loader.js +82 -82
- package/esm5/firestitch-html-editor.js +8 -8
- package/esm5/public_api.js +11 -11
- package/fesm2015/firestitch-html-editor.js +950 -936
- package/fesm2015/firestitch-html-editor.js.map +1 -1
- package/fesm5/firestitch-html-editor.js +1030 -1016
- package/fesm5/firestitch-html-editor.js.map +1 -1
- package/firestitch-html-editor.d.ts +9 -9
- package/firestitch-html-editor.metadata.json +1 -1
- package/package.json +1 -1
- package/public_api.d.ts +16 -16
|
@@ -1,34 +1,34 @@
|
|
|
1
|
-
import { __decorate, __metadata } from "tslib";
|
|
2
|
-
import { DomSanitizer, SafeHtml } from '@angular/platform-browser';
|
|
3
|
-
import { ChangeDetectionStrategy, Component, Input, ChangeDetectorRef } from '@angular/core';
|
|
4
|
-
let FsHtmlRendererComponent = class FsHtmlRendererComponent {
|
|
5
|
-
constructor(sanitized, _cdRef) {
|
|
6
|
-
this.sanitized = sanitized;
|
|
7
|
-
this._cdRef = _cdRef;
|
|
8
|
-
}
|
|
9
|
-
set setHtml(html) {
|
|
10
|
-
this.trustedHtml = this.sanitized.bypassSecurityTrustHtml(html);
|
|
11
|
-
this._cdRef.markForCheck();
|
|
12
|
-
}
|
|
13
|
-
};
|
|
14
|
-
FsHtmlRendererComponent.ctorParameters = () => [
|
|
15
|
-
{ type: DomSanitizer },
|
|
16
|
-
{ type: ChangeDetectorRef }
|
|
17
|
-
];
|
|
18
|
-
__decorate([
|
|
19
|
-
Input('html'),
|
|
20
|
-
__metadata("design:type", Object),
|
|
21
|
-
__metadata("design:paramtypes", [Object])
|
|
22
|
-
], FsHtmlRendererComponent.prototype, "setHtml", null);
|
|
23
|
-
FsHtmlRendererComponent = __decorate([
|
|
24
|
-
Component({
|
|
25
|
-
selector: 'fs-html-renderer',
|
|
26
|
-
template: "<div class=\"fr-view fs-html-editor-default\" [innerHtml]=\"trustedHtml\"></div>\n",
|
|
27
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
28
|
-
styles: [""]
|
|
29
|
-
}),
|
|
30
|
-
__metadata("design:paramtypes", [DomSanitizer,
|
|
31
|
-
ChangeDetectorRef])
|
|
32
|
-
], FsHtmlRendererComponent);
|
|
33
|
-
export { FsHtmlRendererComponent };
|
|
34
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
1
|
+
import { __decorate, __metadata } from "tslib";
|
|
2
|
+
import { DomSanitizer, SafeHtml } from '@angular/platform-browser';
|
|
3
|
+
import { ChangeDetectionStrategy, Component, Input, ChangeDetectorRef } from '@angular/core';
|
|
4
|
+
let FsHtmlRendererComponent = class FsHtmlRendererComponent {
|
|
5
|
+
constructor(sanitized, _cdRef) {
|
|
6
|
+
this.sanitized = sanitized;
|
|
7
|
+
this._cdRef = _cdRef;
|
|
8
|
+
}
|
|
9
|
+
set setHtml(html) {
|
|
10
|
+
this.trustedHtml = this.sanitized.bypassSecurityTrustHtml(html || '');
|
|
11
|
+
this._cdRef.markForCheck();
|
|
12
|
+
}
|
|
13
|
+
};
|
|
14
|
+
FsHtmlRendererComponent.ctorParameters = () => [
|
|
15
|
+
{ type: DomSanitizer },
|
|
16
|
+
{ type: ChangeDetectorRef }
|
|
17
|
+
];
|
|
18
|
+
__decorate([
|
|
19
|
+
Input('html'),
|
|
20
|
+
__metadata("design:type", Object),
|
|
21
|
+
__metadata("design:paramtypes", [Object])
|
|
22
|
+
], FsHtmlRendererComponent.prototype, "setHtml", null);
|
|
23
|
+
FsHtmlRendererComponent = __decorate([
|
|
24
|
+
Component({
|
|
25
|
+
selector: 'fs-html-renderer',
|
|
26
|
+
template: "<div class=\"fr-view fs-html-editor-default\" [innerHtml]=\"trustedHtml\"></div>\n",
|
|
27
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
28
|
+
styles: [""]
|
|
29
|
+
}),
|
|
30
|
+
__metadata("design:paramtypes", [DomSanitizer,
|
|
31
|
+
ChangeDetectorRef])
|
|
32
|
+
], FsHtmlRendererComponent);
|
|
33
|
+
export { FsHtmlRendererComponent };
|
|
34
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaHRtbC1yZW5kZXJlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AZmlyZXN0aXRjaC9odG1sLWVkaXRvci8iLCJzb3VyY2VzIjpbImFwcC9jb21wb25lbnRzL2h0bWwtcmVuZGVyZXIvaHRtbC1yZW5kZXJlci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsUUFBUSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDbkUsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFTN0YsSUFBYSx1QkFBdUIsR0FBcEMsTUFBYSx1QkFBdUI7SUFTbEMsWUFDVSxTQUF1QixFQUN2QixNQUF5QjtRQUR6QixjQUFTLEdBQVQsU0FBUyxDQUFjO1FBQ3ZCLFdBQU0sR0FBTixNQUFNLENBQW1CO0lBQy9CLENBQUM7SUFWVSxJQUFXLE9BQU8sQ0FBQyxJQUFJO1FBQ3BDLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyx1QkFBdUIsQ0FBQyxJQUFJLElBQUksRUFBRSxDQUFDLENBQUM7UUFDdEUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUM3QixDQUFDO0NBU0YsQ0FBQTs7WUFKc0IsWUFBWTtZQUNmLGlCQUFpQjs7QUFUcEI7SUFBZCxLQUFLLENBQUMsTUFBTSxDQUFDOzs7c0RBR2I7QUFMVSx1QkFBdUI7SUFObkMsU0FBUyxDQUFDO1FBQ1QsUUFBUSxFQUFFLGtCQUFrQjtRQUM1Qiw4RkFBMkM7UUFFM0MsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07O0tBQ2hELENBQUM7cUNBV3FCLFlBQVk7UUFDZixpQkFBaUI7R0FYeEIsdUJBQXVCLENBY25DO1NBZFksdUJBQXVCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRG9tU2FuaXRpemVyLCBTYWZlSHRtbCB9IGZyb20gJ0Bhbmd1bGFyL3BsYXRmb3JtLWJyb3dzZXInO1xuaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgSW5wdXQsIENoYW5nZURldGVjdG9yUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZnMtaHRtbC1yZW5kZXJlcicsXG4gIHRlbXBsYXRlVXJsOiAnaHRtbC1yZW5kZXJlci5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWydodG1sLXJlbmRlcmVyLmNvbXBvbmVudC5zY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBGc0h0bWxSZW5kZXJlckNvbXBvbmVudCB7XG5cbiAgQElucHV0KCdodG1sJykgcHVibGljIHNldCBzZXRIdG1sKGh0bWwpIHtcbiAgICB0aGlzLnRydXN0ZWRIdG1sID0gdGhpcy5zYW5pdGl6ZWQuYnlwYXNzU2VjdXJpdHlUcnVzdEh0bWwoaHRtbCB8fCAnJyk7XG4gICAgdGhpcy5fY2RSZWYubWFya0ZvckNoZWNrKCk7XG4gIH1cblxuICBwdWJsaWMgdHJ1c3RlZEh0bWw6IFNhZmVIdG1sO1xuXG4gIHB1YmxpYyBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHNhbml0aXplZDogRG9tU2FuaXRpemVyLFxuICAgIHByaXZhdGUgX2NkUmVmOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgKSB7IH1cblxufVxuIl19
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
export const ParagraphButtons = [
|
|
2
|
-
'align',
|
|
3
|
-
'formatOL',
|
|
4
|
-
'formatUL',
|
|
5
|
-
'checklist',
|
|
6
|
-
'indent',
|
|
7
|
-
'outdent',
|
|
8
|
-
];
|
|
1
|
+
export const ParagraphButtons = [
|
|
2
|
+
'align',
|
|
3
|
+
'formatOL',
|
|
4
|
+
'formatUL',
|
|
5
|
+
'checklist',
|
|
6
|
+
'indent',
|
|
7
|
+
'outdent',
|
|
8
|
+
];
|
|
9
9
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFyYWdyYXBoLWJ1dHRvbnMuY29uc3QuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AZmlyZXN0aXRjaC9odG1sLWVkaXRvci8iLCJzb3VyY2VzIjpbImFwcC9jb25zdHMvcGFyYWdyYXBoLWJ1dHRvbnMuY29uc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFDLE1BQU0sZ0JBQWdCLEdBQUc7SUFDOUIsT0FBTztJQUNQLFVBQVU7SUFDVixVQUFVO0lBQ1YsV0FBVztJQUNYLFFBQVE7SUFDUixTQUFTO0NBQ1YsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjb25zdCBQYXJhZ3JhcGhCdXR0b25zID0gW1xuICAnYWxpZ24nLFxuICAnZm9ybWF0T0wnLFxuICAnZm9ybWF0VUwnLFxuICAnY2hlY2tsaXN0JyxcbiAgJ2luZGVudCcsXG4gICdvdXRkZW50Jyxcbl07XG4iXX0=
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
export const RichButtons = [
|
|
2
|
-
'insertTable',
|
|
3
|
-
'insertImage',
|
|
4
|
-
'insertLink',
|
|
5
|
-
'insertVideo',
|
|
6
|
-
];
|
|
1
|
+
export const RichButtons = [
|
|
2
|
+
'insertTable',
|
|
3
|
+
'insertImage',
|
|
4
|
+
'insertLink',
|
|
5
|
+
'insertVideo',
|
|
6
|
+
];
|
|
7
7
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmljaC1idXR0b25zLmNvbnN0LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGZpcmVzdGl0Y2gvaHRtbC1lZGl0b3IvIiwic291cmNlcyI6WyJhcHAvY29uc3RzL3JpY2gtYnV0dG9ucy5jb25zdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLENBQUMsTUFBTSxXQUFXLEdBQUc7SUFDekIsYUFBYTtJQUNiLGFBQWE7SUFDYixZQUFZO0lBQ1osYUFBYTtDQUNkLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY29uc3QgUmljaEJ1dHRvbnMgPSBbXG4gICdpbnNlcnRUYWJsZScsXG4gICdpbnNlcnRJbWFnZScsXG4gICdpbnNlcnRMaW5rJyxcbiAgJ2luc2VydFZpZGVvJyxcbl07XG4iXX0=
|
|
@@ -1,19 +1,19 @@
|
|
|
1
|
-
export const TextButtons = [
|
|
2
|
-
'paragraphFormat',
|
|
3
|
-
'code',
|
|
4
|
-
'bold',
|
|
5
|
-
'italic',
|
|
6
|
-
'underline',
|
|
7
|
-
'strikeThrough',
|
|
8
|
-
'subscript',
|
|
9
|
-
'superscript',
|
|
10
|
-
'fontFamily',
|
|
11
|
-
'fontSize',
|
|
12
|
-
'textColor',
|
|
13
|
-
'backgroundColor',
|
|
14
|
-
'inlineClass',
|
|
15
|
-
'inlineStyle',
|
|
16
|
-
'clearFormatting',
|
|
17
|
-
'quote',
|
|
18
|
-
];
|
|
1
|
+
export const TextButtons = [
|
|
2
|
+
'paragraphFormat',
|
|
3
|
+
'code',
|
|
4
|
+
'bold',
|
|
5
|
+
'italic',
|
|
6
|
+
'underline',
|
|
7
|
+
'strikeThrough',
|
|
8
|
+
'subscript',
|
|
9
|
+
'superscript',
|
|
10
|
+
'fontFamily',
|
|
11
|
+
'fontSize',
|
|
12
|
+
'textColor',
|
|
13
|
+
'backgroundColor',
|
|
14
|
+
'inlineClass',
|
|
15
|
+
'inlineStyle',
|
|
16
|
+
'clearFormatting',
|
|
17
|
+
'quote',
|
|
18
|
+
];
|
|
19
19
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dC1idXR0b25zLmNvbnN0LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGZpcmVzdGl0Y2gvaHRtbC1lZGl0b3IvIiwic291cmNlcyI6WyJhcHAvY29uc3RzL3RleHQtYnV0dG9ucy5jb25zdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLENBQUMsTUFBTSxXQUFXLEdBQUc7SUFDckIsaUJBQWlCO0lBQ2pCLE1BQU07SUFDTixNQUFNO0lBQ04sUUFBUTtJQUNSLFdBQVc7SUFDWCxlQUFlO0lBQ2YsV0FBVztJQUNYLGFBQWE7SUFDYixZQUFZO0lBQ1osVUFBVTtJQUNWLFdBQVc7SUFDWCxpQkFBaUI7SUFDakIsYUFBYTtJQUNiLGFBQWE7SUFDYixpQkFBaUI7SUFDakIsT0FBTztDQUNaLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY29uc3QgVGV4dEJ1dHRvbnMgPSBbXG4gICAgICAncGFyYWdyYXBoRm9ybWF0JyxcbiAgICAgICdjb2RlJyxcbiAgICAgICdib2xkJyxcbiAgICAgICdpdGFsaWMnLFxuICAgICAgJ3VuZGVybGluZScsXG4gICAgICAnc3RyaWtlVGhyb3VnaCcsXG4gICAgICAnc3Vic2NyaXB0JyxcbiAgICAgICdzdXBlcnNjcmlwdCcsXG4gICAgICAnZm9udEZhbWlseScsXG4gICAgICAnZm9udFNpemUnLFxuICAgICAgJ3RleHRDb2xvcicsXG4gICAgICAnYmFja2dyb3VuZENvbG9yJyxcbiAgICAgICdpbmxpbmVDbGFzcycsXG4gICAgICAnaW5saW5lU3R5bGUnLFxuICAgICAgJ2NsZWFyRm9ybWF0dGluZycsXG4gICAgICAncXVvdGUnLFxuXTtcbiJdfQ==
|
|
@@ -1,57 +1,57 @@
|
|
|
1
|
-
var FsHtmlEditorModule_1;
|
|
2
|
-
import { __decorate } from "tslib";
|
|
3
|
-
import { NgModule } from '@angular/core';
|
|
4
|
-
import { CommonModule } from '@angular/common';
|
|
5
|
-
import { FsSkeletonModule } from '@firestitch/skeleton';
|
|
6
|
-
import { FsHtmlEditorComponent } from './components/html-editor/html-editor.component';
|
|
7
|
-
import { FsHtmlRendererComponent } from './components/html-renderer/html-renderer.component';
|
|
8
|
-
import { FS_HTML_EDITOR_CONFIG, FS_HTML_EDITOR_DEFAULT_CONFIG } from './injects/config.inject';
|
|
9
|
-
let FsHtmlEditorModule = FsHtmlEditorModule_1 = class FsHtmlEditorModule {
|
|
10
|
-
static forRoot(config = {}) {
|
|
11
|
-
return {
|
|
12
|
-
ngModule: FsHtmlEditorModule_1,
|
|
13
|
-
providers: [
|
|
14
|
-
{ provide: FS_HTML_EDITOR_DEFAULT_CONFIG, useValue: config },
|
|
15
|
-
{
|
|
16
|
-
provide: FS_HTML_EDITOR_CONFIG,
|
|
17
|
-
useFactory: FsHtmlEditorConfigFactory,
|
|
18
|
-
deps: [FS_HTML_EDITOR_DEFAULT_CONFIG]
|
|
19
|
-
}
|
|
20
|
-
]
|
|
21
|
-
};
|
|
22
|
-
}
|
|
23
|
-
};
|
|
24
|
-
FsHtmlEditorModule = FsHtmlEditorModule_1 = __decorate([
|
|
25
|
-
NgModule({
|
|
26
|
-
imports: [
|
|
27
|
-
CommonModule,
|
|
28
|
-
FsSkeletonModule,
|
|
29
|
-
],
|
|
30
|
-
exports: [
|
|
31
|
-
FsHtmlEditorComponent,
|
|
32
|
-
FsHtmlRendererComponent,
|
|
33
|
-
],
|
|
34
|
-
declarations: [
|
|
35
|
-
FsHtmlEditorComponent,
|
|
36
|
-
FsHtmlRendererComponent,
|
|
37
|
-
],
|
|
38
|
-
})
|
|
39
|
-
], FsHtmlEditorModule);
|
|
40
|
-
export { FsHtmlEditorModule };
|
|
41
|
-
export function FsHtmlEditorConfigFactory(config) {
|
|
42
|
-
return Object.assign({ defaultPlugins: [
|
|
43
|
-
"align" /* Align */,
|
|
44
|
-
"colors" /* Colors */,
|
|
45
|
-
"image" /* Image */,
|
|
46
|
-
"link" /* Link */,
|
|
47
|
-
"lists" /* Lists */,
|
|
48
|
-
"paragraph_format" /* ParagraphFormat */,
|
|
49
|
-
"quote" /* Quote */,
|
|
50
|
-
"table" /* Table */,
|
|
51
|
-
"url" /* Url */,
|
|
52
|
-
"video" /* Video */,
|
|
53
|
-
"draggable" /* Draggable */,
|
|
54
|
-
"font_size" /* FontSize */,
|
|
55
|
-
] }, config);
|
|
56
|
-
}
|
|
1
|
+
var FsHtmlEditorModule_1;
|
|
2
|
+
import { __decorate } from "tslib";
|
|
3
|
+
import { NgModule } from '@angular/core';
|
|
4
|
+
import { CommonModule } from '@angular/common';
|
|
5
|
+
import { FsSkeletonModule } from '@firestitch/skeleton';
|
|
6
|
+
import { FsHtmlEditorComponent } from './components/html-editor/html-editor.component';
|
|
7
|
+
import { FsHtmlRendererComponent } from './components/html-renderer/html-renderer.component';
|
|
8
|
+
import { FS_HTML_EDITOR_CONFIG, FS_HTML_EDITOR_DEFAULT_CONFIG } from './injects/config.inject';
|
|
9
|
+
let FsHtmlEditorModule = FsHtmlEditorModule_1 = class FsHtmlEditorModule {
|
|
10
|
+
static forRoot(config = {}) {
|
|
11
|
+
return {
|
|
12
|
+
ngModule: FsHtmlEditorModule_1,
|
|
13
|
+
providers: [
|
|
14
|
+
{ provide: FS_HTML_EDITOR_DEFAULT_CONFIG, useValue: config },
|
|
15
|
+
{
|
|
16
|
+
provide: FS_HTML_EDITOR_CONFIG,
|
|
17
|
+
useFactory: FsHtmlEditorConfigFactory,
|
|
18
|
+
deps: [FS_HTML_EDITOR_DEFAULT_CONFIG]
|
|
19
|
+
}
|
|
20
|
+
]
|
|
21
|
+
};
|
|
22
|
+
}
|
|
23
|
+
};
|
|
24
|
+
FsHtmlEditorModule = FsHtmlEditorModule_1 = __decorate([
|
|
25
|
+
NgModule({
|
|
26
|
+
imports: [
|
|
27
|
+
CommonModule,
|
|
28
|
+
FsSkeletonModule,
|
|
29
|
+
],
|
|
30
|
+
exports: [
|
|
31
|
+
FsHtmlEditorComponent,
|
|
32
|
+
FsHtmlRendererComponent,
|
|
33
|
+
],
|
|
34
|
+
declarations: [
|
|
35
|
+
FsHtmlEditorComponent,
|
|
36
|
+
FsHtmlRendererComponent,
|
|
37
|
+
],
|
|
38
|
+
})
|
|
39
|
+
], FsHtmlEditorModule);
|
|
40
|
+
export { FsHtmlEditorModule };
|
|
41
|
+
export function FsHtmlEditorConfigFactory(config) {
|
|
42
|
+
return Object.assign({ defaultPlugins: [
|
|
43
|
+
"align" /* Align */,
|
|
44
|
+
"colors" /* Colors */,
|
|
45
|
+
"image" /* Image */,
|
|
46
|
+
"link" /* Link */,
|
|
47
|
+
"lists" /* Lists */,
|
|
48
|
+
"paragraph_format" /* ParagraphFormat */,
|
|
49
|
+
"quote" /* Quote */,
|
|
50
|
+
"table" /* Table */,
|
|
51
|
+
"url" /* Url */,
|
|
52
|
+
"video" /* Video */,
|
|
53
|
+
"draggable" /* Draggable */,
|
|
54
|
+
"font_size" /* FontSize */,
|
|
55
|
+
] }, config);
|
|
56
|
+
}
|
|
57
57
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnMtaHRtbC1lZGl0b3IubW9kdWxlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGZpcmVzdGl0Y2gvaHRtbC1lZGl0b3IvIiwic291cmNlcyI6WyJhcHAvZnMtaHRtbC1lZGl0b3IubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsT0FBTyxFQUF1QixRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDOUQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRS9DLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBRXhELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGdEQUFnRCxDQUFDO0FBQ3ZGLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLG9EQUFvRCxDQUFDO0FBRTdGLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSw2QkFBNkIsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBa0IvRixJQUFhLGtCQUFrQiwwQkFBL0IsTUFBYSxrQkFBa0I7SUFDN0IsTUFBTSxDQUFDLE9BQU8sQ0FBQyxTQUE2QixFQUFFO1FBQzVDLE9BQU87WUFDTCxRQUFRLEVBQUUsb0JBQWtCO1lBQzVCLFNBQVMsRUFBRTtnQkFDVCxFQUFFLE9BQU8sRUFBRSw2QkFBNkIsRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFO2dCQUM1RDtvQkFDRSxPQUFPLEVBQUUscUJBQXFCO29CQUM5QixVQUFVLEVBQUUseUJBQXlCO29CQUNyQyxJQUFJLEVBQUUsQ0FBQyw2QkFBNkIsQ0FBQztpQkFDdEM7YUFDRjtTQUNGLENBQUM7SUFDSixDQUFDO0NBQ0YsQ0FBQTtBQWRZLGtCQUFrQjtJQWQ5QixRQUFRLENBQUM7UUFDUixPQUFPLEVBQUU7WUFDUCxZQUFZO1lBQ1osZ0JBQWdCO1NBQ2pCO1FBQ0QsT0FBTyxFQUFFO1lBQ1AscUJBQXFCO1lBQ3JCLHVCQUF1QjtTQUN4QjtRQUNELFlBQVksRUFBRTtZQUNaLHFCQUFxQjtZQUNyQix1QkFBdUI7U0FDeEI7S0FDRixDQUFDO0dBQ1csa0JBQWtCLENBYzlCO1NBZFksa0JBQWtCO0FBZ0IvQixNQUFNLFVBQVUseUJBQXlCLENBQUMsTUFBMEI7SUFDbEUsdUJBQ0UsY0FBYyxFQUFFOzs7Ozs7Ozs7Ozs7O1NBYWYsSUFDRSxNQUFNLEVBQ1Q7QUFDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTW9kdWxlV2l0aFByb3ZpZGVycywgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5cbmltcG9ydCB7IEZzU2tlbGV0b25Nb2R1bGUgfSBmcm9tICdAZmlyZXN0aXRjaC9za2VsZXRvbic7XG5cbmltcG9ydCB7IEZzSHRtbEVkaXRvckNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9odG1sLWVkaXRvci9odG1sLWVkaXRvci5jb21wb25lbnQnO1xuaW1wb3J0IHsgRnNIdG1sUmVuZGVyZXJDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvaHRtbC1yZW5kZXJlci9odG1sLXJlbmRlcmVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBGc0h0bWxFZGl0b3JDb25maWcgfSBmcm9tICcuL2ludGVyZmFjZXMvaHRtbC1lZGl0b3ItY29uZmlnJztcbmltcG9ydCB7IEZTX0hUTUxfRURJVE9SX0NPTkZJRywgRlNfSFRNTF9FRElUT1JfREVGQVVMVF9DT05GSUcgfSBmcm9tICcuL2luamVjdHMvY29uZmlnLmluamVjdCc7XG5pbXBvcnQgeyBEZWZhdWx0UGx1Z2luIH0gZnJvbSAnLi9lbnVtcy9kZWZhdWx0LXBsdWdpbi5lbnVtJztcblxuXG5ATmdNb2R1bGUoe1xuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIEZzU2tlbGV0b25Nb2R1bGUsXG4gIF0sXG4gIGV4cG9ydHM6IFtcbiAgICBGc0h0bWxFZGl0b3JDb21wb25lbnQsXG4gICAgRnNIdG1sUmVuZGVyZXJDb21wb25lbnQsXG4gIF0sXG4gIGRlY2xhcmF0aW9uczogW1xuICAgIEZzSHRtbEVkaXRvckNvbXBvbmVudCxcbiAgICBGc0h0bWxSZW5kZXJlckNvbXBvbmVudCxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgRnNIdG1sRWRpdG9yTW9kdWxlIHtcbiAgc3RhdGljIGZvclJvb3QoY29uZmlnOiBGc0h0bWxFZGl0b3JDb25maWcgPSB7fSk6IE1vZHVsZVdpdGhQcm92aWRlcnM8RnNIdG1sRWRpdG9yTW9kdWxlPiB7XG4gICAgcmV0dXJuIHtcbiAgICAgIG5nTW9kdWxlOiBGc0h0bWxFZGl0b3JNb2R1bGUsXG4gICAgICBwcm92aWRlcnM6IFtcbiAgICAgICAgeyBwcm92aWRlOiBGU19IVE1MX0VESVRPUl9ERUZBVUxUX0NPTkZJRywgdXNlVmFsdWU6IGNvbmZpZyB9LFxuICAgICAgICB7XG4gICAgICAgICAgcHJvdmlkZTogRlNfSFRNTF9FRElUT1JfQ09ORklHLFxuICAgICAgICAgIHVzZUZhY3Rvcnk6IEZzSHRtbEVkaXRvckNvbmZpZ0ZhY3RvcnksXG4gICAgICAgICAgZGVwczogW0ZTX0hUTUxfRURJVE9SX0RFRkFVTFRfQ09ORklHXVxuICAgICAgICB9XG4gICAgICBdXG4gICAgfTtcbiAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gRnNIdG1sRWRpdG9yQ29uZmlnRmFjdG9yeShjb25maWc6IEZzSHRtbEVkaXRvckNvbmZpZykge1xuICByZXR1cm4ge1xuICAgIGRlZmF1bHRQbHVnaW5zOiBbXG4gICAgICBEZWZhdWx0UGx1Z2luLkFsaWduLFxuICAgICAgRGVmYXVsdFBsdWdpbi5Db2xvcnMsXG4gICAgICBEZWZhdWx0UGx1Z2luLkltYWdlLFxuICAgICAgRGVmYXVsdFBsdWdpbi5MaW5rLFxuICAgICAgRGVmYXVsdFBsdWdpbi5MaXN0cyxcbiAgICAgIERlZmF1bHRQbHVnaW4uUGFyYWdyYXBoRm9ybWF0LFxuICAgICAgRGVmYXVsdFBsdWdpbi5RdW90ZSxcbiAgICAgIERlZmF1bHRQbHVnaW4uVGFibGUsXG4gICAgICBEZWZhdWx0UGx1Z2luLlVybCxcbiAgICAgIERlZmF1bHRQbHVnaW4uVmlkZW8sXG4gICAgICBEZWZhdWx0UGx1Z2luLkRyYWdnYWJsZSxcbiAgICAgIERlZmF1bHRQbHVnaW4uRm9udFNpemUsXG4gICAgXSxcbiAgICAuLi5jb25maWdcbiAgfTtcbn1cbiJdfQ==
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { InjectionToken } from '@angular/core';
|
|
2
|
-
export const FS_HTML_EDITOR_DEFAULT_CONFIG = new InjectionToken('fs-html-editor.default-config');
|
|
3
|
-
export const FS_HTML_EDITOR_CONFIG = new InjectionToken('fs-html-editor.config');
|
|
1
|
+
import { InjectionToken } from '@angular/core';
|
|
2
|
+
export const FS_HTML_EDITOR_DEFAULT_CONFIG = new InjectionToken('fs-html-editor.default-config');
|
|
3
|
+
export const FS_HTML_EDITOR_CONFIG = new InjectionToken('fs-html-editor.config');
|
|
4
4
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlnLmluamVjdC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BmaXJlc3RpdGNoL2h0bWwtZWRpdG9yLyIsInNvdXJjZXMiOlsiYXBwL2luamVjdHMvY29uZmlnLmluamVjdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRS9DLE1BQU0sQ0FBQyxNQUFNLDZCQUE2QixHQUFHLElBQUksY0FBYyxDQUFRLCtCQUErQixDQUFDLENBQUM7QUFDeEcsTUFBTSxDQUFDLE1BQU0scUJBQXFCLEdBQUcsSUFBSSxjQUFjLENBQVEsdUJBQXVCLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGlvblRva2VuIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmV4cG9ydCBjb25zdCBGU19IVE1MX0VESVRPUl9ERUZBVUxUX0NPTkZJRyA9IG5ldyBJbmplY3Rpb25Ub2tlbjxhbnlbXT4oJ2ZzLWh0bWwtZWRpdG9yLmRlZmF1bHQtY29uZmlnJyk7XG5leHBvcnQgY29uc3QgRlNfSFRNTF9FRElUT1JfQ09ORklHID0gbmV3IEluamVjdGlvblRva2VuPGFueVtdPignZnMtaHRtbC1lZGl0b3IuY29uZmlnJyk7XG4iXX0=
|
|
@@ -1,35 +1,35 @@
|
|
|
1
|
-
import { Plugin } from '../classes/plugin';
|
|
2
|
-
export class ChecklistPlugin extends Plugin {
|
|
3
|
-
constructor(config = { name: 'checklist' }) {
|
|
4
|
-
super();
|
|
5
|
-
this.config = config;
|
|
6
|
-
this.config = Object.assign(Object.assign({}, config), { name: 'checklist', buttons: [
|
|
7
|
-
{
|
|
8
|
-
name: 'checklist',
|
|
9
|
-
svgPath: 'M8.4,10.3l-1.2,1.2l4,4L20,6.7l-1.2-1.2l-7.6,7.6L8.4,10.3z M18.2,18.2H5.8V5.8h8.9V4H5.8C4.8,4,4,4.8,4,5.8v12.4c0,1,0.8,1.8,1.8,1.8h12.4c1,0,1.8-0.8,1.8-1.8v-7.1h-1.8V18.2z',
|
|
10
|
-
click: (editor) => {
|
|
11
|
-
editor.html.insert('<ul class="checklist"><li></li></ul>');
|
|
12
|
-
}
|
|
13
|
-
}
|
|
14
|
-
] });
|
|
15
|
-
}
|
|
16
|
-
initialize() {
|
|
17
|
-
this.editor.events.on('click', (e) => {
|
|
18
|
-
const li = e.target;
|
|
19
|
-
if (li.nodeName === 'LI' && e.offsetX < 0) {
|
|
20
|
-
const items = [li, ...li.querySelectorAll('li')];
|
|
21
|
-
if (li.classList.contains('checked')) {
|
|
22
|
-
items.forEach((item) => {
|
|
23
|
-
item.classList.remove('checked');
|
|
24
|
-
});
|
|
25
|
-
}
|
|
26
|
-
else {
|
|
27
|
-
items.forEach((item) => {
|
|
28
|
-
item.classList.add('checked');
|
|
29
|
-
});
|
|
30
|
-
}
|
|
31
|
-
}
|
|
32
|
-
}, false);
|
|
33
|
-
}
|
|
34
|
-
}
|
|
1
|
+
import { Plugin } from '../classes/plugin';
|
|
2
|
+
export class ChecklistPlugin extends Plugin {
|
|
3
|
+
constructor(config = { name: 'checklist' }) {
|
|
4
|
+
super();
|
|
5
|
+
this.config = config;
|
|
6
|
+
this.config = Object.assign(Object.assign({}, config), { name: 'checklist', buttons: [
|
|
7
|
+
{
|
|
8
|
+
name: 'checklist',
|
|
9
|
+
svgPath: 'M8.4,10.3l-1.2,1.2l4,4L20,6.7l-1.2-1.2l-7.6,7.6L8.4,10.3z M18.2,18.2H5.8V5.8h8.9V4H5.8C4.8,4,4,4.8,4,5.8v12.4c0,1,0.8,1.8,1.8,1.8h12.4c1,0,1.8-0.8,1.8-1.8v-7.1h-1.8V18.2z',
|
|
10
|
+
click: (editor) => {
|
|
11
|
+
editor.html.insert('<ul class="checklist"><li></li></ul>');
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
] });
|
|
15
|
+
}
|
|
16
|
+
initialize() {
|
|
17
|
+
this.editor.events.on('click', (e) => {
|
|
18
|
+
const li = e.target;
|
|
19
|
+
if (li.nodeName === 'LI' && e.offsetX < 0) {
|
|
20
|
+
const items = [li, ...li.querySelectorAll('li')];
|
|
21
|
+
if (li.classList.contains('checked')) {
|
|
22
|
+
items.forEach((item) => {
|
|
23
|
+
item.classList.remove('checked');
|
|
24
|
+
});
|
|
25
|
+
}
|
|
26
|
+
else {
|
|
27
|
+
items.forEach((item) => {
|
|
28
|
+
item.classList.add('checked');
|
|
29
|
+
});
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
}, false);
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
35
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hlY2tsaXN0LnBsdWdpbi5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BmaXJlc3RpdGNoL2h0bWwtZWRpdG9yLyIsInNvdXJjZXMiOlsiYXBwL3BsdWdpbnMvY2hlY2tsaXN0LnBsdWdpbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFLM0MsTUFBTSxPQUFPLGVBQWdCLFNBQVEsTUFBTTtJQUV6QyxZQUEwQixTQUF1QixFQUFFLElBQUksRUFBRSxXQUFXLEVBQUU7UUFDcEUsS0FBSyxFQUFFLENBQUM7UUFEZ0IsV0FBTSxHQUFOLE1BQU0sQ0FBc0M7UUFFcEUsSUFBSSxDQUFDLE1BQU0sbUNBQ04sTUFBTSxLQUNULElBQUksRUFBRSxXQUFXLEVBQ2pCLE9BQU8sRUFBRTtnQkFDUDtvQkFDRSxJQUFJLEVBQUUsV0FBVztvQkFDakIsT0FBTyxFQUFFLDRLQUE0SztvQkFDckwsS0FBSyxFQUFFLENBQUMsTUFBTSxFQUFFLEVBQUU7d0JBQ2hCLE1BQU0sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLHNDQUFzQyxDQUFDLENBQUM7b0JBQzdELENBQUM7aUJBQ0Y7YUFDRixHQUNGLENBQUM7SUFDSixDQUFDO0lBRU0sVUFBVTtRQUNmLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRTtZQUNuQyxNQUFNLEVBQUUsR0FBRyxDQUFDLENBQUMsTUFBTSxDQUFDO1lBQ3BCLElBQUksRUFBRSxDQUFDLFFBQVEsS0FBSyxJQUFJLElBQUksQ0FBQyxDQUFDLE9BQU8sR0FBRyxDQUFDLEVBQUU7Z0JBRXpDLE1BQU0sS0FBSyxHQUFHLENBQUMsRUFBRSxFQUFFLEdBQUcsRUFBRSxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7Z0JBRWpELElBQUksRUFBRSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLEVBQUU7b0JBQ3BDLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRTt3QkFDckIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUM7b0JBQ25DLENBQUMsQ0FBQyxDQUFDO2lCQUNKO3FCQUFNO29CQUNMLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRTt3QkFDckIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUM7b0JBQ2hDLENBQUMsQ0FBQyxDQUFDO2lCQUNKO2FBQ0Y7UUFFSCxDQUFDLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDWixDQUFDO0NBRUYiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQbHVnaW4gfSBmcm9tICcuLi9jbGFzc2VzL3BsdWdpbic7XG5cbmltcG9ydCB7IFBsdWdpbkNvbmZpZyB9IGZyb20gJy4vLi4vaW50ZXJmYWNlcy9wbHVnaW4tY29uZmlnJztcblxuXG5leHBvcnQgY2xhc3MgQ2hlY2tsaXN0UGx1Z2luIGV4dGVuZHMgUGx1Z2luIHtcblxuICBwdWJsaWMgY29uc3RydWN0b3IocHVibGljIGNvbmZpZzogUGx1Z2luQ29uZmlnID0geyBuYW1lOiAnY2hlY2tsaXN0JyB9KSB7XG4gICAgc3VwZXIoKTtcbiAgICB0aGlzLmNvbmZpZyA9IHtcbiAgICAgIC4uLmNvbmZpZyxcbiAgICAgIG5hbWU6ICdjaGVja2xpc3QnLFxuICAgICAgYnV0dG9uczogW1xuICAgICAgICB7XG4gICAgICAgICAgbmFtZTogJ2NoZWNrbGlzdCcsXG4gICAgICAgICAgc3ZnUGF0aDogJ004LjQsMTAuM2wtMS4yLDEuMmw0LDRMMjAsNi43bC0xLjItMS4ybC03LjYsNy42TDguNCwxMC4zeiBNMTguMiwxOC4ySDUuOFY1LjhoOC45VjRINS44QzQuOCw0LDQsNC44LDQsNS44djEyLjRjMCwxLDAuOCwxLjgsMS44LDEuOGgxMi40YzEsMCwxLjgtMC44LDEuOC0xLjh2LTcuMWgtMS44VjE4LjJ6JyxcbiAgICAgICAgICBjbGljazogKGVkaXRvcikgPT4ge1xuICAgICAgICAgICAgZWRpdG9yLmh0bWwuaW5zZXJ0KCc8dWwgY2xhc3M9XCJjaGVja2xpc3RcIj48bGk+PC9saT48L3VsPicpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgXVxuICAgIH07XG4gIH1cblxuICBwdWJsaWMgaW5pdGlhbGl6ZSgpIHtcbiAgICB0aGlzLmVkaXRvci5ldmVudHMub24oJ2NsaWNrJywgKGUpID0+IHtcbiAgICAgIGNvbnN0IGxpID0gZS50YXJnZXQ7XG4gICAgICBpZiAobGkubm9kZU5hbWUgPT09ICdMSScgJiYgZS5vZmZzZXRYIDwgMCkge1xuXG4gICAgICAgIGNvbnN0IGl0ZW1zID0gW2xpLCAuLi5saS5xdWVyeVNlbGVjdG9yQWxsKCdsaScpXTtcblxuICAgICAgICBpZiAobGkuY2xhc3NMaXN0LmNvbnRhaW5zKCdjaGVja2VkJykpIHtcbiAgICAgICAgICBpdGVtcy5mb3JFYWNoKChpdGVtKSA9PiB7XG4gICAgICAgICAgICBpdGVtLmNsYXNzTGlzdC5yZW1vdmUoJ2NoZWNrZWQnKTtcbiAgICAgICAgICB9KTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBpdGVtcy5mb3JFYWNoKChpdGVtKSA9PiB7XG4gICAgICAgICAgICBpdGVtLmNsYXNzTGlzdC5hZGQoJ2NoZWNrZWQnKTtcbiAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgfSwgZmFsc2UpO1xuICB9XG5cbn1cbiJdfQ==
|
|
@@ -1,63 +1,63 @@
|
|
|
1
|
-
import { Plugin } from '../classes/plugin';
|
|
2
|
-
export class CodePlugin extends Plugin {
|
|
3
|
-
constructor(config = { name: 'code' }) {
|
|
4
|
-
super();
|
|
5
|
-
this.config = config;
|
|
6
|
-
this.config = Object.assign(Object.assign({}, config), { name: 'code', buttons: [
|
|
7
|
-
{
|
|
8
|
-
name: 'code',
|
|
9
|
-
svgPath: 'M8.9,7.3L4.2,12l4.7,4.7l1.1-1.1L6.4,12L10,8.4L8.9,7.3z M15.1,7.3L14,8.4l3.6,3.6L14,15.6l1.1,1.1l4.7-4.7L15.1,7.3z',
|
|
10
|
-
click: (editor) => {
|
|
11
|
-
const node = editor.selection.get();
|
|
12
|
-
const codeEl = this._getCodeEl(node.baseNode);
|
|
13
|
-
if (codeEl) {
|
|
14
|
-
codeEl.classList.remove('code');
|
|
15
|
-
}
|
|
16
|
-
else {
|
|
17
|
-
editor.html.insert('<p class="code">' + editor.selection.get().toString().replace(/\n{1,}/g, '<br>') + '</p>');
|
|
18
|
-
}
|
|
19
|
-
}
|
|
20
|
-
}
|
|
21
|
-
] });
|
|
22
|
-
}
|
|
23
|
-
initialize() {
|
|
24
|
-
this.editor.events.on('keydown', (e) => {
|
|
25
|
-
if (e.keyCode === 13) {
|
|
26
|
-
const selection = this.editor.selection.get();
|
|
27
|
-
if (selection && this._getCodeEl(selection.baseNode)) {
|
|
28
|
-
e.preventDefault();
|
|
29
|
-
e.stopPropagation();
|
|
30
|
-
e.stopImmediatePropagation();
|
|
31
|
-
let br = '<br>';
|
|
32
|
-
const base = selection.baseNode;
|
|
33
|
-
if (base.nodeName === '#text' && selection.baseOffset === base.length) {
|
|
34
|
-
if (!(base.nextSibling && base.nextSibling.nodeName === 'BR')) {
|
|
35
|
-
br += '<br>';
|
|
36
|
-
}
|
|
37
|
-
}
|
|
38
|
-
else {
|
|
39
|
-
const el = Array.from(base.childNodes).splice(selection.baseOffset - 1, 1).pop();
|
|
40
|
-
if (el && el.nodeName !== 'BR') {
|
|
41
|
-
br += '<br>';
|
|
42
|
-
}
|
|
43
|
-
}
|
|
44
|
-
this.editor.html.insert(br);
|
|
45
|
-
return false;
|
|
46
|
-
}
|
|
47
|
-
}
|
|
48
|
-
}, true);
|
|
49
|
-
}
|
|
50
|
-
destroy() { }
|
|
51
|
-
_getCodeEl(el) {
|
|
52
|
-
if (el) {
|
|
53
|
-
if (el.classList && el.classList.contains('code')) {
|
|
54
|
-
return el;
|
|
55
|
-
}
|
|
56
|
-
if (el.parentElement) {
|
|
57
|
-
return this._getCodeEl(el.parentElement);
|
|
58
|
-
}
|
|
59
|
-
}
|
|
60
|
-
return null;
|
|
61
|
-
}
|
|
62
|
-
}
|
|
1
|
+
import { Plugin } from '../classes/plugin';
|
|
2
|
+
export class CodePlugin extends Plugin {
|
|
3
|
+
constructor(config = { name: 'code' }) {
|
|
4
|
+
super();
|
|
5
|
+
this.config = config;
|
|
6
|
+
this.config = Object.assign(Object.assign({}, config), { name: 'code', buttons: [
|
|
7
|
+
{
|
|
8
|
+
name: 'code',
|
|
9
|
+
svgPath: 'M8.9,7.3L4.2,12l4.7,4.7l1.1-1.1L6.4,12L10,8.4L8.9,7.3z M15.1,7.3L14,8.4l3.6,3.6L14,15.6l1.1,1.1l4.7-4.7L15.1,7.3z',
|
|
10
|
+
click: (editor) => {
|
|
11
|
+
const node = editor.selection.get();
|
|
12
|
+
const codeEl = this._getCodeEl(node.baseNode);
|
|
13
|
+
if (codeEl) {
|
|
14
|
+
codeEl.classList.remove('code');
|
|
15
|
+
}
|
|
16
|
+
else {
|
|
17
|
+
editor.html.insert('<p class="code">' + editor.selection.get().toString().replace(/\n{1,}/g, '<br>') + '</p>');
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
] });
|
|
22
|
+
}
|
|
23
|
+
initialize() {
|
|
24
|
+
this.editor.events.on('keydown', (e) => {
|
|
25
|
+
if (e.keyCode === 13) {
|
|
26
|
+
const selection = this.editor.selection.get();
|
|
27
|
+
if (selection && this._getCodeEl(selection.baseNode)) {
|
|
28
|
+
e.preventDefault();
|
|
29
|
+
e.stopPropagation();
|
|
30
|
+
e.stopImmediatePropagation();
|
|
31
|
+
let br = '<br>';
|
|
32
|
+
const base = selection.baseNode;
|
|
33
|
+
if (base.nodeName === '#text' && selection.baseOffset === base.length) {
|
|
34
|
+
if (!(base.nextSibling && base.nextSibling.nodeName === 'BR')) {
|
|
35
|
+
br += '<br>';
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
else {
|
|
39
|
+
const el = Array.from(base.childNodes).splice(selection.baseOffset - 1, 1).pop();
|
|
40
|
+
if (el && el.nodeName !== 'BR') {
|
|
41
|
+
br += '<br>';
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
this.editor.html.insert(br);
|
|
45
|
+
return false;
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
}, true);
|
|
49
|
+
}
|
|
50
|
+
destroy() { }
|
|
51
|
+
_getCodeEl(el) {
|
|
52
|
+
if (el) {
|
|
53
|
+
if (el.classList && el.classList.contains('code')) {
|
|
54
|
+
return el;
|
|
55
|
+
}
|
|
56
|
+
if (el.parentElement) {
|
|
57
|
+
return this._getCodeEl(el.parentElement);
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
return null;
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
63
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29kZS5wbHVnaW4uanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AZmlyZXN0aXRjaC9odG1sLWVkaXRvci8iLCJzb3VyY2VzIjpbImFwcC9wbHVnaW5zL2NvZGUucGx1Z2luLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUszQyxNQUFNLE9BQU8sVUFBVyxTQUFRLE1BQU07SUFFcEMsWUFBMEIsU0FBdUIsRUFBRSxJQUFJLEVBQUUsTUFBTSxFQUFFO1FBQy9ELEtBQUssRUFBRSxDQUFDO1FBRGdCLFdBQU0sR0FBTixNQUFNLENBQWlDO1FBRS9ELElBQUksQ0FBQyxNQUFNLG1DQUNOLE1BQU0sS0FDVCxJQUFJLEVBQUUsTUFBTSxFQUNaLE9BQU8sRUFBRTtnQkFDUDtvQkFDRSxJQUFJLEVBQUUsTUFBTTtvQkFDWixPQUFPLEVBQUUsbUhBQW1IO29CQUM1SCxLQUFLLEVBQUUsQ0FBQyxNQUFNLEVBQUUsRUFBRTt3QkFDaEIsTUFBTSxJQUFJLEdBQUcsTUFBTSxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUUsQ0FBQzt3QkFDcEMsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7d0JBQzlDLElBQUksTUFBTSxFQUFFOzRCQUNWLE1BQU0sQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDO3lCQUNqQzs2QkFBTTs0QkFDTCxNQUFNLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxrQkFBa0IsR0FBRyxNQUFNLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRSxDQUFDLFFBQVEsRUFBRSxDQUFDLE9BQU8sQ0FBQyxTQUFTLEVBQUMsTUFBTSxDQUFDLEdBQUcsTUFBTSxDQUFDLENBQUM7eUJBQy9HO29CQUNILENBQUM7aUJBQ0Y7YUFDRixHQUNGLENBQUM7SUFDSixDQUFDO0lBRU0sVUFBVTtRQUNmLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxTQUFTLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRTtZQUNyQyxJQUFJLENBQUMsQ0FBQyxPQUFPLEtBQUssRUFBRSxFQUFFO2dCQUNwQixNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUUsQ0FBQztnQkFFOUMsSUFBSSxTQUFTLElBQUksSUFBSSxDQUFDLFVBQVUsQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLEVBQUU7b0JBQ3BELENBQUMsQ0FBQyxjQUFjLEVBQUUsQ0FBQztvQkFDbkIsQ0FBQyxDQUFDLGVBQWUsRUFBRSxDQUFDO29CQUNwQixDQUFDLENBQUMsd0JBQXdCLEVBQUUsQ0FBQztvQkFDN0IsSUFBSSxFQUFFLEdBQUcsTUFBTSxDQUFDO29CQUNoQixNQUFNLElBQUksR0FBRyxTQUFTLENBQUMsUUFBUSxDQUFDO29CQUNoQyxJQUFJLElBQUksQ0FBQyxRQUFRLEtBQUssT0FBTyxJQUFJLFNBQVMsQ0FBQyxVQUFVLEtBQUssSUFBSSxDQUFDLE1BQU0sRUFBRTt3QkFFckUsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLFdBQVcsSUFBSSxJQUFJLENBQUMsV0FBVyxDQUFDLFFBQVEsS0FBSyxJQUFJLENBQUMsRUFBRTs0QkFDN0QsRUFBRSxJQUFJLE1BQU0sQ0FBQzt5QkFDZDtxQkFDRjt5QkFBTTt3QkFDTCxNQUFNLEVBQUUsR0FBUSxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLFVBQVUsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsR0FBRyxFQUFFLENBQUM7d0JBQ3RGLElBQUksRUFBRSxJQUFJLEVBQUUsQ0FBQyxRQUFRLEtBQUssSUFBSSxFQUFFOzRCQUM5QixFQUFFLElBQUksTUFBTSxDQUFDO3lCQUNkO3FCQUNGO29CQUVELElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQztvQkFDNUIsT0FBTyxLQUFLLENBQUM7aUJBQ2Q7YUFDRjtRQUNILENBQUMsRUFBRSxJQUFJLENBQUMsQ0FBQztJQUNYLENBQUM7SUFFTSxPQUFPLEtBQUksQ0FBQztJQUVYLFVBQVUsQ0FBQyxFQUFFO1FBRW5CLElBQUksRUFBRSxFQUFFO1lBQ04sSUFBSSxFQUFFLENBQUMsU0FBUyxJQUFJLEVBQUUsQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxFQUFFO2dCQUNqRCxPQUFPLEVBQUUsQ0FBQzthQUNYO1lBRUQsSUFBSSxFQUFFLENBQUMsYUFBYSxFQUFFO2dCQUNwQixPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxDQUFDO2FBQzFDO1NBQ0Y7UUFFRCxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFBsdWdpbiB9IGZyb20gJy4uL2NsYXNzZXMvcGx1Z2luJztcblxuaW1wb3J0IHsgUGx1Z2luQ29uZmlnIH0gZnJvbSAnLi8uLi9pbnRlcmZhY2VzL3BsdWdpbi1jb25maWcnO1xuXG5cbmV4cG9ydCBjbGFzcyBDb2RlUGx1Z2luIGV4dGVuZHMgUGx1Z2luIHtcblxuICBwdWJsaWMgY29uc3RydWN0b3IocHVibGljIGNvbmZpZzogUGx1Z2luQ29uZmlnID0geyBuYW1lOiAnY29kZScgfSkge1xuICAgIHN1cGVyKCk7XG4gICAgdGhpcy5jb25maWcgPSB7XG4gICAgICAuLi5jb25maWcsXG4gICAgICBuYW1lOiAnY29kZScsXG4gICAgICBidXR0b25zOiBbXG4gICAgICAgIHtcbiAgICAgICAgICBuYW1lOiAnY29kZScsXG4gICAgICAgICAgc3ZnUGF0aDogJ004LjksNy4zTDQuMiwxMmw0LjcsNC43bDEuMS0xLjFMNi40LDEyTDEwLDguNEw4LjksNy4zeiBNMTUuMSw3LjNMMTQsOC40bDMuNiwzLjZMMTQsMTUuNmwxLjEsMS4xbDQuNy00LjdMMTUuMSw3LjN6JyxcbiAgICAgICAgICBjbGljazogKGVkaXRvcikgPT4ge1xuICAgICAgICAgICAgY29uc3Qgbm9kZSA9IGVkaXRvci5zZWxlY3Rpb24uZ2V0KCk7XG4gICAgICAgICAgICBjb25zdCBjb2RlRWwgPSB0aGlzLl9nZXRDb2RlRWwobm9kZS5iYXNlTm9kZSk7XG4gICAgICAgICAgICBpZiAoY29kZUVsKSB7XG4gICAgICAgICAgICAgIGNvZGVFbC5jbGFzc0xpc3QucmVtb3ZlKCdjb2RlJyk7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICBlZGl0b3IuaHRtbC5pbnNlcnQoJzxwIGNsYXNzPVwiY29kZVwiPicgKyBlZGl0b3Iuc2VsZWN0aW9uLmdldCgpLnRvU3RyaW5nKCkucmVwbGFjZSgvXFxuezEsfS9nLCc8YnI+JykgKyAnPC9wPicpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgXVxuICAgIH07XG4gIH1cblxuICBwdWJsaWMgaW5pdGlhbGl6ZSgpIHtcbiAgICB0aGlzLmVkaXRvci5ldmVudHMub24oJ2tleWRvd24nLCAoZSkgPT4ge1xuICAgICAgaWYgKGUua2V5Q29kZSA9PT0gMTMpIHtcbiAgICAgICAgY29uc3Qgc2VsZWN0aW9uID0gdGhpcy5lZGl0b3Iuc2VsZWN0aW9uLmdldCgpO1xuXG4gICAgICAgIGlmIChzZWxlY3Rpb24gJiYgdGhpcy5fZ2V0Q29kZUVsKHNlbGVjdGlvbi5iYXNlTm9kZSkpIHtcbiAgICAgICAgICBlLnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgICAgZS5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICAgICAgICBlLnN0b3BJbW1lZGlhdGVQcm9wYWdhdGlvbigpO1xuICAgICAgICAgIGxldCBiciA9ICc8YnI+JztcbiAgICAgICAgICBjb25zdCBiYXNlID0gc2VsZWN0aW9uLmJhc2VOb2RlO1xuICAgICAgICAgIGlmIChiYXNlLm5vZGVOYW1lID09PSAnI3RleHQnICYmIHNlbGVjdGlvbi5iYXNlT2Zmc2V0ID09PSBiYXNlLmxlbmd0aCkge1xuXG4gICAgICAgICAgICBpZiAoIShiYXNlLm5leHRTaWJsaW5nICYmIGJhc2UubmV4dFNpYmxpbmcubm9kZU5hbWUgPT09ICdCUicpKSB7XG4gICAgICAgICAgICAgIGJyICs9ICc8YnI+JztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgY29uc3QgZWw6IGFueSA9IEFycmF5LmZyb20oYmFzZS5jaGlsZE5vZGVzKS5zcGxpY2Uoc2VsZWN0aW9uLmJhc2VPZmZzZXQgLSAxLCAxKS5wb3AoKTtcbiAgICAgICAgICAgIGlmIChlbCAmJiBlbC5ub2RlTmFtZSAhPT0gJ0JSJykge1xuICAgICAgICAgICAgICBiciArPSAnPGJyPic7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgdGhpcy5lZGl0b3IuaHRtbC5pbnNlcnQoYnIpO1xuICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0sIHRydWUpO1xuICB9XG5cbiAgcHVibGljIGRlc3Ryb3koKSB7fVxuXG4gIHByaXZhdGUgX2dldENvZGVFbChlbCkge1xuXG4gICAgaWYgKGVsKSB7XG4gICAgICBpZiAoZWwuY2xhc3NMaXN0ICYmIGVsLmNsYXNzTGlzdC5jb250YWlucygnY29kZScpKSB7XG4gICAgICAgIHJldHVybiBlbDtcbiAgICAgIH1cblxuICAgICAgaWYgKGVsLnBhcmVudEVsZW1lbnQpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2dldENvZGVFbChlbC5wYXJlbnRFbGVtZW50KTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gbnVsbDtcbiAgfVxufVxuIl19
|
|
@@ -1 +1 @@
|
|
|
1
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVudGlvbi1wbHVnaW4uY29uZmlnLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGZpcmVzdGl0Y2gvaHRtbC1lZGl0b3IvIiwic291cmNlcyI6WyJhcHAvcGx1Z2lucy9jb25maWdzL21lbnRpb24tcGx1Z2luLmNvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUGx1Z2luQ29uZmlnIH0gZnJvbSAnLi8uLi8uLi9pbnRlcmZhY2VzL3BsdWdpbi1jb25maWcnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuXG5leHBvcnQgaW50ZXJmYWNlIE1lbnRpb25QbHVnaW5Db25maWcgZXh0ZW5kcyBQbHVnaW5Db25maWcge1xuICB0cmlnZ2VyPzogc3RyaW5nO1xuICBtZW51SXRlbVRlbXBsYXRlPzogKGRhdGE6IGFueSkgPT4gc3RyaW5nO1xuICBzZWxlY3RlZFRlbXBsYXRlPzogKGRhdGE6IGFueSkgPT4gc3RyaW5nO1xuICBmZXRjaDogKGtleW9yZD86IHN0cmluZykgPT4gT2JzZXJ2YWJsZTxhbnk+O1xuICBjb250YWluZXJDbGFzcz86IHN0cmluZztcbiAgbWVudUl0ZW1DbGFzcz86IHN0cmluZztcbiAgdG9vbHRpcD86IHN0cmluZztcbiAgaWNvblBhdGg/
|
|
1
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVudGlvbi1wbHVnaW4uY29uZmlnLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGZpcmVzdGl0Y2gvaHRtbC1lZGl0b3IvIiwic291cmNlcyI6WyJhcHAvcGx1Z2lucy9jb25maWdzL21lbnRpb24tcGx1Z2luLmNvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUGx1Z2luQ29uZmlnIH0gZnJvbSAnLi8uLi8uLi9pbnRlcmZhY2VzL3BsdWdpbi1jb25maWcnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuXG5leHBvcnQgaW50ZXJmYWNlIE1lbnRpb25QbHVnaW5Db25maWcgZXh0ZW5kcyBQbHVnaW5Db25maWcge1xuICB0cmlnZ2VyPzogc3RyaW5nO1xuICBtZW51SXRlbVRlbXBsYXRlPzogKGRhdGE6IGFueSkgPT4gc3RyaW5nO1xuICBzZWxlY3RlZFRlbXBsYXRlPzogKGRhdGE6IGFueSkgPT4gc3RyaW5nO1xuICBmZXRjaDogKGtleW9yZD86IHN0cmluZykgPT4gT2JzZXJ2YWJsZTxhbnk+O1xuICBjb250YWluZXJDbGFzcz86IHN0cmluZztcbiAgbWVudUl0ZW1DbGFzcz86IHN0cmluZztcbiAgdG9vbHRpcD86IHN0cmluZztcbiAgaWNvblBhdGg/OiBzdHJpbmc7XG4gIHNlbGVjdGVkPzogKGl0ZW06IGFueSkgPT4gdm9pZDtcbn1cbiJdfQ==
|