sk-front-lib 0.17.49 → 0.17.51
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/esm2020/lib/sk-byte.pipe.mjs +4 -4
- package/esm2020/lib/sk-date-time.pipe.mjs +4 -4
- package/esm2020/lib/sk-date.pipe.mjs +4 -4
- package/esm2020/lib/sk-front-lib.module.mjs +5 -5
- package/esm2020/lib/sk-keys.pipe.mjs +4 -4
- package/esm2020/lib/sk-time.pipe.mjs +4 -4
- package/fesm2015/sk-front-lib.mjs +19 -19
- package/fesm2015/sk-front-lib.mjs.map +1 -1
- package/fesm2020/sk-front-lib.mjs +19 -19
- package/fesm2020/sk-front-lib.mjs.map +1 -1
- package/lib/sk-byte.pipe.d.ts +1 -1
- package/lib/sk-date-time.pipe.d.ts +1 -1
- package/lib/sk-date.pipe.d.ts +1 -1
- package/lib/sk-keys.pipe.d.ts +1 -1
- package/lib/sk-time.pipe.d.ts +1 -1
- package/package.json +3 -67
- package/api/model/api-config.d.ts +0 -6
- package/api/model/api-pageable-param.d.ts +0 -11
- package/api/model/api-pageable.d.ts +0 -11
- package/api/model/api-response.d.ts +0 -8
- package/api/model/index.d.ts +0 -4
- package/api/package.json +0 -10
- package/api/public_api.d.ts +0 -3
- package/api/sk-api.module.d.ts +0 -12
- package/api/sk-api.service.d.ts +0 -34
- package/api/sk-front-lib-api.d.ts +0 -5
- package/article/package.json +0 -10
- package/article/public_api.d.ts +0 -6
- package/article/sk-article-editor-server.component.d.ts +0 -23
- package/article/sk-article-editor.component.d.ts +0 -27
- package/article/sk-article-server.module.d.ts +0 -10
- package/article/sk-article.module.d.ts +0 -9
- package/article/sk-article.service.d.ts +0 -96
- package/article/sk-froala-editor.directive.d.ts +0 -40
- package/article/sk-front-lib-article.d.ts +0 -5
- package/crud/package.json +0 -10
- package/crud/public_api.d.ts +0 -24
- package/crud/sk-account.service.d.ts +0 -16
- package/crud/sk-affiliate.service.d.ts +0 -38
- package/crud/sk-auth-admin.guard.d.ts +0 -13
- package/crud/sk-auth.guard.d.ts +0 -13
- package/crud/sk-auth.service.d.ts +0 -33
- package/crud/sk-board.service.d.ts +0 -21
- package/crud/sk-brand.service.d.ts +0 -19
- package/crud/sk-cart.service.d.ts +0 -72
- package/crud/sk-category.service.d.ts +0 -28
- package/crud/sk-comment.service.d.ts +0 -15
- package/crud/sk-config.service.d.ts +0 -13
- package/crud/sk-contact.service.d.ts +0 -15
- package/crud/sk-coupon.service.d.ts +0 -24
- package/crud/sk-document.service.d.ts +0 -51
- package/crud/sk-etc.service.d.ts +0 -12
- package/crud/sk-file.service.d.ts +0 -18
- package/crud/sk-front-lib-crud.d.ts +0 -5
- package/crud/sk-keyword.service.d.ts +0 -19
- package/crud/sk-order.service.d.ts +0 -45
- package/crud/sk-point.service.d.ts +0 -17
- package/crud/sk-product.service.d.ts +0 -84
- package/crud/sk-promotion.service.d.ts +0 -41
- package/crud/sk-search.service.d.ts +0 -12
- package/crud/sk-store.service.d.ts +0 -17
- package/crud/sk-user.service.d.ts +0 -25
- package/esm2020/api/model/api-config.mjs +0 -2
- package/esm2020/api/model/api-pageable-param.mjs +0 -29
- package/esm2020/api/model/api-pageable.mjs +0 -3
- package/esm2020/api/model/api-response.mjs +0 -3
- package/esm2020/api/model/index.mjs +0 -4
- package/esm2020/api/public_api.mjs +0 -4
- package/esm2020/api/sk-api.module.mjs +0 -35
- package/esm2020/api/sk-api.service.mjs +0 -145
- package/esm2020/api/sk-front-lib-api.mjs +0 -5
- package/esm2020/article/public_api.mjs +0 -7
- package/esm2020/article/sk-article-editor-server.component.mjs +0 -51
- package/esm2020/article/sk-article-editor.component.mjs +0 -93
- package/esm2020/article/sk-article-server.module.mjs +0 -33
- package/esm2020/article/sk-article.module.mjs +0 -32
- package/esm2020/article/sk-article.service.mjs +0 -248
- package/esm2020/article/sk-froala-editor.directive.mjs +0 -325
- package/esm2020/article/sk-front-lib-article.mjs +0 -5
- package/esm2020/crud/public_api.mjs +0 -25
- package/esm2020/crud/sk-account.service.mjs +0 -36
- package/esm2020/crud/sk-affiliate.service.mjs +0 -94
- package/esm2020/crud/sk-auth-admin.guard.mjs +0 -31
- package/esm2020/crud/sk-auth.guard.mjs +0 -31
- package/esm2020/crud/sk-auth.service.mjs +0 -67
- package/esm2020/crud/sk-board.service.mjs +0 -54
- package/esm2020/crud/sk-brand.service.mjs +0 -46
- package/esm2020/crud/sk-cart.service.mjs +0 -256
- package/esm2020/crud/sk-category.service.mjs +0 -63
- package/esm2020/crud/sk-comment.service.mjs +0 -43
- package/esm2020/crud/sk-config.service.mjs +0 -31
- package/esm2020/crud/sk-contact.service.mjs +0 -39
- package/esm2020/crud/sk-coupon.service.mjs +0 -62
- package/esm2020/crud/sk-document.service.mjs +0 -110
- package/esm2020/crud/sk-etc.service.mjs +0 -25
- package/esm2020/crud/sk-file.service.mjs +0 -37
- package/esm2020/crud/sk-front-lib-crud.mjs +0 -5
- package/esm2020/crud/sk-keyword.service.mjs +0 -46
- package/esm2020/crud/sk-order.service.mjs +0 -133
- package/esm2020/crud/sk-point.service.mjs +0 -45
- package/esm2020/crud/sk-product.service.mjs +0 -168
- package/esm2020/crud/sk-promotion.service.mjs +0 -84
- package/esm2020/crud/sk-search.service.mjs +0 -25
- package/esm2020/crud/sk-store.service.mjs +0 -47
- package/esm2020/crud/sk-user.service.mjs +0 -73
- package/esm2020/google-analytics/google-analytics-router.module.mjs +0 -30
- package/esm2020/google-analytics/google-analytics.module.mjs +0 -40
- package/esm2020/google-analytics/initializers/google-analytics-router.initializer.mjs +0 -24
- package/esm2020/google-analytics/initializers/google-analytics.initializer.mjs +0 -46
- package/esm2020/google-analytics/interfaces/google-analytics-command.mjs +0 -2
- package/esm2020/google-analytics/interfaces/google-analytics-settings.mjs +0 -2
- package/esm2020/google-analytics/public_api.mjs +0 -11
- package/esm2020/google-analytics/services/google-analytics.service.mjs +0 -223
- package/esm2020/google-analytics/sk-front-lib-google-analytics.mjs +0 -5
- package/esm2020/google-analytics/tokens/google-analytics-settings-token.mjs +0 -5
- package/esm2020/google-analytics/types/ga-action.type.mjs +0 -2
- package/esm2020/google-analytics/types/ga-bind.type.mjs +0 -2
- package/esm2020/image/public_api.mjs +0 -3
- package/esm2020/image/sk-front-lib-image.mjs +0 -5
- package/esm2020/image/sk-image.component.mjs +0 -262
- package/esm2020/image/sk-image.module.mjs +0 -43
- package/esm2020/model/lib/article.mjs +0 -11
- package/esm2020/model/lib/audit.mjs +0 -12
- package/esm2020/model/lib/auth.mjs +0 -2
- package/esm2020/model/lib/board.mjs +0 -21
- package/esm2020/model/lib/cart.mjs +0 -29
- package/esm2020/model/lib/comment.mjs +0 -25
- package/esm2020/model/lib/contact.mjs +0 -28
- package/esm2020/model/lib/coupon.mjs +0 -23
- package/esm2020/model/lib/document.mjs +0 -49
- package/esm2020/model/lib/etc.mjs +0 -57
- package/esm2020/model/lib/file.mjs +0 -8
- package/esm2020/model/lib/filetype.mjs +0 -179
- package/esm2020/model/lib/grid.mjs +0 -83
- package/esm2020/model/lib/nicepay.mjs +0 -81
- package/esm2020/model/lib/order.mjs +0 -106
- package/esm2020/model/lib/payment.mjs +0 -35
- package/esm2020/model/lib/point.mjs +0 -47
- package/esm2020/model/lib/product-series.mjs +0 -2
- package/esm2020/model/lib/product.mjs +0 -156
- package/esm2020/model/lib/promotion.mjs +0 -80
- package/esm2020/model/lib/shipping.mjs +0 -37
- package/esm2020/model/lib/tosspay.mjs +0 -61
- package/esm2020/model/lib/user.mjs +0 -61
- package/esm2020/model/public_api.mjs +0 -24
- package/esm2020/model/sk-front-lib-model.mjs +0 -5
- package/esm2020/search-address/dialog/dialog.component.mjs +0 -27
- package/esm2020/search-address/public_api.mjs +0 -4
- package/esm2020/search-address/sk-front-lib-search-address.mjs +0 -5
- package/esm2020/search-address/sk-search-address.directive.mjs +0 -41
- package/esm2020/search-address/sk-search-address.model.mjs +0 -8
- package/esm2020/search-address/sk-search-address.module.mjs +0 -52
- package/esm2020/search-address/sk-search-address.service.mjs +0 -65
- package/esm2020/uploader/public_api.mjs +0 -4
- package/esm2020/uploader/sk-front-lib-uploader.mjs +0 -5
- package/esm2020/uploader/sk-uploader-file-item.model.mjs +0 -95
- package/esm2020/uploader/sk-uploader.animation.mjs +0 -47
- package/esm2020/uploader/sk-uploader.class.mjs +0 -188
- package/esm2020/uploader/sk-uploader.component.mjs +0 -120
- package/esm2020/uploader/sk-uploader.directive.mjs +0 -44
- package/esm2020/uploader/sk-uploader.module.mjs +0 -62
- package/fesm2015/sk-front-lib-api.mjs +0 -218
- package/fesm2015/sk-front-lib-api.mjs.map +0 -1
- package/fesm2015/sk-front-lib-article.mjs +0 -762
- package/fesm2015/sk-front-lib-article.mjs.map +0 -1
- package/fesm2015/sk-front-lib-crud.mjs +0 -1529
- package/fesm2015/sk-front-lib-crud.mjs.map +0 -1
- package/fesm2015/sk-front-lib-google-analytics.mjs +0 -361
- package/fesm2015/sk-front-lib-google-analytics.mjs.map +0 -1
- package/fesm2015/sk-front-lib-image.mjs +0 -306
- package/fesm2015/sk-front-lib-image.mjs.map +0 -1
- package/fesm2015/sk-front-lib-model.mjs +0 -1171
- package/fesm2015/sk-front-lib-model.mjs.map +0 -1
- package/fesm2015/sk-front-lib-search-address.mjs +0 -188
- package/fesm2015/sk-front-lib-search-address.mjs.map +0 -1
- package/fesm2015/sk-front-lib-uploader.mjs +0 -551
- package/fesm2015/sk-front-lib-uploader.mjs.map +0 -1
- package/fesm2020/sk-front-lib-api.mjs +0 -216
- package/fesm2020/sk-front-lib-api.mjs.map +0 -1
- package/fesm2020/sk-front-lib-article.mjs +0 -771
- package/fesm2020/sk-front-lib-article.mjs.map +0 -1
- package/fesm2020/sk-front-lib-crud.mjs +0 -1525
- package/fesm2020/sk-front-lib-crud.mjs.map +0 -1
- package/fesm2020/sk-front-lib-google-analytics.mjs +0 -358
- package/fesm2020/sk-front-lib-google-analytics.mjs.map +0 -1
- package/fesm2020/sk-front-lib-image.mjs +0 -309
- package/fesm2020/sk-front-lib-image.mjs.map +0 -1
- package/fesm2020/sk-front-lib-model.mjs +0 -1171
- package/fesm2020/sk-front-lib-model.mjs.map +0 -1
- package/fesm2020/sk-front-lib-search-address.mjs +0 -186
- package/fesm2020/sk-front-lib-search-address.mjs.map +0 -1
- package/fesm2020/sk-front-lib-uploader.mjs +0 -549
- package/fesm2020/sk-front-lib-uploader.mjs.map +0 -1
- package/google-analytics/google-analytics-router.module.d.ts +0 -8
- package/google-analytics/google-analytics.module.d.ts +0 -10
- package/google-analytics/initializers/google-analytics-router.initializer.d.ts +0 -5
- package/google-analytics/initializers/google-analytics.initializer.d.ts +0 -4
- package/google-analytics/interfaces/google-analytics-command.d.ts +0 -4
- package/google-analytics/interfaces/google-analytics-settings.d.ts +0 -6
- package/google-analytics/package.json +0 -10
- package/google-analytics/public_api.d.ts +0 -10
- package/google-analytics/services/google-analytics.service.d.ts +0 -85
- package/google-analytics/sk-front-lib-google-analytics.d.ts +0 -5
- package/google-analytics/tokens/google-analytics-settings-token.d.ts +0 -3
- package/google-analytics/types/ga-action.type.d.ts +0 -1
- package/google-analytics/types/ga-bind.type.d.ts +0 -1
- package/image/package.json +0 -10
- package/image/public_api.d.ts +0 -3
- package/image/sk-front-lib-image.d.ts +0 -5
- package/image/sk-image.component.d.ts +0 -112
- package/image/sk-image.module.d.ts +0 -12
- package/model/lib/article.d.ts +0 -13
- package/model/lib/audit.d.ts +0 -13
- package/model/lib/auth.d.ts +0 -8
- package/model/lib/board.d.ts +0 -39
- package/model/lib/cart.d.ts +0 -45
- package/model/lib/comment.d.ts +0 -43
- package/model/lib/contact.d.ts +0 -40
- package/model/lib/coupon.d.ts +0 -116
- package/model/lib/document.d.ts +0 -104
- package/model/lib/etc.d.ts +0 -220
- package/model/lib/file.d.ts +0 -24
- package/model/lib/filetype.d.ts +0 -10
- package/model/lib/grid.d.ts +0 -97
- package/model/lib/nicepay.d.ts +0 -39
- package/model/lib/order.d.ts +0 -163
- package/model/lib/payment.d.ts +0 -32
- package/model/lib/point.d.ts +0 -30
- package/model/lib/product-series.d.ts +0 -25
- package/model/lib/product.d.ts +0 -309
- package/model/lib/promotion.d.ts +0 -169
- package/model/lib/shipping.d.ts +0 -44
- package/model/lib/tosspay.d.ts +0 -29
- package/model/lib/user.d.ts +0 -54
- package/model/package.json +0 -10
- package/model/public_api.d.ts +0 -23
- package/model/sk-front-lib-model.d.ts +0 -5
- package/search-address/dialog/dialog.component.d.ts +0 -13
- package/search-address/package.json +0 -10
- package/search-address/public_api.d.ts +0 -3
- package/search-address/sk-front-lib-search-address.d.ts +0 -5
- package/search-address/sk-search-address.directive.d.ts +0 -15
- package/search-address/sk-search-address.model.d.ts +0 -40
- package/search-address/sk-search-address.module.d.ts +0 -14
- package/search-address/sk-search-address.service.d.ts +0 -13
- package/uploader/package.json +0 -10
- package/uploader/public_api.d.ts +0 -4
- package/uploader/sk-front-lib-uploader.d.ts +0 -5
- package/uploader/sk-uploader-file-item.model.d.ts +0 -29
- package/uploader/sk-uploader.animation.d.ts +0 -1
- package/uploader/sk-uploader.class.d.ts +0 -47
- package/uploader/sk-uploader.component.d.ts +0 -28
- package/uploader/sk-uploader.directive.d.ts +0 -15
- package/uploader/sk-uploader.module.d.ts +0 -16
- /package/{sk-front-lib.d.ts → index.d.ts} +0 -0
|
@@ -1,93 +0,0 @@
|
|
|
1
|
-
import { Component, Input } from '@angular/core';
|
|
2
|
-
import { SkFile } from 'sk-front-lib/model';
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
import * as i1 from "sk-front-lib/api";
|
|
5
|
-
import * as i2 from "./sk-article.service";
|
|
6
|
-
import * as i3 from "./sk-froala-editor.directive";
|
|
7
|
-
export class SkArticleEditorComponent {
|
|
8
|
-
constructor(_apiService, _articleService) {
|
|
9
|
-
this._apiService = _apiService;
|
|
10
|
-
this._articleService = _articleService;
|
|
11
|
-
this.toolbarType = 'default';
|
|
12
|
-
this._initOptions();
|
|
13
|
-
}
|
|
14
|
-
// -----------------------------------------------------------------------------------------------------
|
|
15
|
-
// @ Accessors
|
|
16
|
-
// ------------------------------------------1-----------------------------------------------------------
|
|
17
|
-
// -----------------------------------------------------------------------------------------------------
|
|
18
|
-
// @ Lifecycle hooks
|
|
19
|
-
// -----------------------------------------------------------------------------------------------------
|
|
20
|
-
ngOnInit() {
|
|
21
|
-
}
|
|
22
|
-
ngOnChanges(changes) {
|
|
23
|
-
this._initData();
|
|
24
|
-
this._initOptions();
|
|
25
|
-
}
|
|
26
|
-
// -----------------------------------------------------------------------------------------------------
|
|
27
|
-
// @ Public methods
|
|
28
|
-
// -----------------------------------------------------------------------------------------------------
|
|
29
|
-
getData() {
|
|
30
|
-
return { content: this.content, images: this.images };
|
|
31
|
-
}
|
|
32
|
-
// -----------------------------------------------------------------------------------------------------
|
|
33
|
-
// @ Private methods
|
|
34
|
-
// -----------------------------------------------------------------------------------------------------
|
|
35
|
-
_initData() {
|
|
36
|
-
if (!this.article) {
|
|
37
|
-
return;
|
|
38
|
-
}
|
|
39
|
-
this.content = this.article.content;
|
|
40
|
-
this.images = this.article.images || [];
|
|
41
|
-
}
|
|
42
|
-
_initOptions() {
|
|
43
|
-
this.editorConfig = Object.assign({}, this._articleService.getBaseConfig(), {
|
|
44
|
-
requestHeaders: {
|
|
45
|
-
'Authorization': 'Bearer ' + this._apiService.getToken(),
|
|
46
|
-
'ngsw-bypass': 'true'
|
|
47
|
-
},
|
|
48
|
-
imageUploadParams: {
|
|
49
|
-
imageUrl: this._articleService.environment.apiServer + '/api/public/images/'
|
|
50
|
-
},
|
|
51
|
-
imageUploadParam: 'file',
|
|
52
|
-
imageUploadRemoteUrls: true,
|
|
53
|
-
imageUploadURL: this._articleService.environment.apiServer + '/external/froala/upload',
|
|
54
|
-
fileUploadParams: {
|
|
55
|
-
imageUrl: this._articleService.environment.apiServer + '/api/public/files/'
|
|
56
|
-
},
|
|
57
|
-
fileUploadParam: 'file',
|
|
58
|
-
fileUploadURL: this._articleService.environment.apiServer + '/external/froala/upload',
|
|
59
|
-
events: {
|
|
60
|
-
'image.inserted': ($img, response) => {
|
|
61
|
-
this._addImage(JSON.parse(response).file);
|
|
62
|
-
},
|
|
63
|
-
'image.removed': ($img) => {
|
|
64
|
-
console.log($img, $img.dataset);
|
|
65
|
-
for (let i = 0; i < $img.length; i++) {
|
|
66
|
-
this._removeImage(Number($img[i].dataset.id));
|
|
67
|
-
}
|
|
68
|
-
}
|
|
69
|
-
},
|
|
70
|
-
...this._articleService.getToolbar(this.toolbarType)
|
|
71
|
-
});
|
|
72
|
-
}
|
|
73
|
-
_addImage(file) {
|
|
74
|
-
this.images.push(new SkFile(file));
|
|
75
|
-
}
|
|
76
|
-
_removeImage(id) {
|
|
77
|
-
const index = this.images.findIndex(value => value.id === id);
|
|
78
|
-
if (index > -1) {
|
|
79
|
-
this.images.splice(index, 1);
|
|
80
|
-
}
|
|
81
|
-
}
|
|
82
|
-
}
|
|
83
|
-
SkArticleEditorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: SkArticleEditorComponent, deps: [{ token: i1.SkApiService }, { token: i2.SkArticleService }], target: i0.ɵɵFactoryTarget.Component });
|
|
84
|
-
SkArticleEditorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.2", type: SkArticleEditorComponent, selector: "sk-article-editor", inputs: { article: "article", toolbarType: "toolbarType" }, usesOnChanges: true, ngImport: i0, template: "<div [froalaEditor]=\"editorConfig\" [(froalaModel)]=\"content\"></div>\n", styles: [":host{position:relative;display:block}\n"], directives: [{ type: i3.SkFroalaEditorDirective, selector: "[froalaEditor]", inputs: ["froalaEditor", "froalaModel"], outputs: ["froalaModelChange", "froalaInit"], exportAs: ["froalaEditor"] }] });
|
|
85
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: SkArticleEditorComponent, decorators: [{
|
|
86
|
-
type: Component,
|
|
87
|
-
args: [{ selector: 'sk-article-editor', template: "<div [froalaEditor]=\"editorConfig\" [(froalaModel)]=\"content\"></div>\n", styles: [":host{position:relative;display:block}\n"] }]
|
|
88
|
-
}], ctorParameters: function () { return [{ type: i1.SkApiService }, { type: i2.SkArticleService }]; }, propDecorators: { article: [{
|
|
89
|
-
type: Input
|
|
90
|
-
}], toolbarType: [{
|
|
91
|
-
type: Input
|
|
92
|
-
}] } });
|
|
93
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2stYXJ0aWNsZS1lZGl0b3IuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvc2stZnJvbnQtbGliL2FydGljbGUvc3JjL3NrLWFydGljbGUtZWRpdG9yLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uL3Byb2plY3RzL3NrLWZyb250LWxpYi9hcnRpY2xlL3NyYy9zay1hcnRpY2xlLWVkaXRvci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBb0MsTUFBTSxlQUFlLENBQUM7QUFFbkYsT0FBTyxFQUFzQixNQUFNLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQzs7Ozs7QUFRaEUsTUFBTSxPQUFPLHdCQUF3QjtJQVVqQyxZQUFvQixXQUF5QixFQUN6QixlQUFpQztRQURqQyxnQkFBVyxHQUFYLFdBQVcsQ0FBYztRQUN6QixvQkFBZSxHQUFmLGVBQWUsQ0FBa0I7UUFSNUMsZ0JBQVcsR0FBVyxTQUFTLENBQUM7UUFTckMsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQ3hCLENBQUM7SUFFRCx3R0FBd0c7SUFDeEcsY0FBYztJQUNkLHlHQUF5RztJQUV6Ryx3R0FBd0c7SUFDeEcsb0JBQW9CO0lBQ3BCLHdHQUF3RztJQUV4RyxRQUFRO0lBQ1IsQ0FBQztJQUVELFdBQVcsQ0FBQyxPQUFzQjtRQUM5QixJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7UUFDakIsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQ3hCLENBQUM7SUFHRCx3R0FBd0c7SUFDeEcsbUJBQW1CO0lBQ25CLHdHQUF3RztJQUVqRyxPQUFPO1FBQ1YsT0FBTyxFQUFDLE9BQU8sRUFBRSxJQUFJLENBQUMsT0FBTyxFQUFFLE1BQU0sRUFBRSxJQUFJLENBQUMsTUFBTSxFQUFDLENBQUM7SUFDeEQsQ0FBQztJQUVELHdHQUF3RztJQUN4RyxvQkFBb0I7SUFDcEIs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bnQsIElucHV0LCBPbkNoYW5nZXMsIE9uSW5pdCwgU2ltcGxlQ2hhbmdlcyB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU2tBcGlTZXJ2aWNlIH0gZnJvbSAnc2stZnJvbnQtbGliL2FwaSc7XG5pbXBvcnQgeyBJU2tGaWxlLCBTa0FydGljbGUsIFNrRmlsZSB9IGZyb20gJ3NrLWZyb250LWxpYi9tb2RlbCc7XG5pbXBvcnQgeyBTa0FydGljbGVTZXJ2aWNlIH0gZnJvbSAnLi9zay1hcnRpY2xlLnNlcnZpY2UnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ3NrLWFydGljbGUtZWRpdG9yJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vc2stYXJ0aWNsZS1lZGl0b3IuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL3NrLWFydGljbGUtZWRpdG9yLmNvbXBvbmVudC5zY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgU2tBcnRpY2xlRWRpdG9yQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkNoYW5nZXMge1xuXG4gICAgQElucHV0KCkgYXJ0aWNsZTogU2tBcnRpY2xlO1xuICAgIEBJbnB1dCgpIHRvb2xiYXJUeXBlOiBzdHJpbmcgPSAnZGVmYXVsdCc7XG5cbiAgICBjb250ZW50OiBzdHJpbmc7XG4gICAgaW1hZ2VzOiBTa0ZpbGVbXTtcblxuICAgIGVkaXRvckNvbmZpZztcblxuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgX2FwaVNlcnZpY2U6IFNrQXBpU2VydmljZSxcbiAgICAgICAgICAgICAgICBwcml2YXRlIF9hcnRpY2xlU2VydmljZTogU2tBcnRpY2xlU2VydmljZSkge1xuICAgICAgICB0aGlzLl9pbml0T3B0aW9ucygpO1xuICAgIH1cblxuICAgIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgLy8gQCBBY2Nlc3NvcnNcbiAgICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0xLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuICAgIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgLy8gQCBMaWZlY3ljbGUgaG9va3NcbiAgICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4gICAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgfVxuXG4gICAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xuICAgICAgICB0aGlzLl9pbml0RGF0YSgpO1xuICAgICAgICB0aGlzLl9pbml0T3B0aW9ucygpO1xuICAgIH1cblxuXG4gICAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAvLyBAIFB1YmxpYyBtZXRob2RzXG4gICAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuICAgIHB1YmxpYyBnZXREYXRhKCk6IHsgY29udGVudDogc3RyaW5nLCBpbWFnZXM6IFNrRmlsZVtdIH0ge1xuICAgICAgICByZXR1cm4ge2NvbnRlbnQ6IHRoaXMuY29udGVudCwgaW1hZ2VzOiB0aGlzLmltYWdlc307XG4gICAgfVxuXG4gICAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAvLyBAIFByaXZhdGUgbWV0aG9kc1xuICAgIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuICAgIF9pbml0RGF0YSgpIHtcbiAgICAgICAgaWYgKCF0aGlzLmFydGljbGUpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuY29udGVudCA9IHRoaXMuYXJ0aWNsZS5jb250ZW50O1xuICAgICAgICB0aGlzLmltYWdlcyA9IHRoaXMuYXJ0aWNsZS5pbWFnZXMgfHwgW107XG4gICAgfVxuXG4gICAgX2luaXRPcHRpb25zKCkge1xuICAgICAgICB0aGlzLmVkaXRvckNvbmZpZyA9IE9iamVjdC5hc3NpZ24oe30sIHRoaXMuX2FydGljbGVTZXJ2aWNlLmdldEJhc2VDb25maWcoKSwge1xuICAgICAgICAgICAgcmVxdWVzdEhlYWRlcnM6IHtcbiAgICAgICAgICAgICAgICAnQXV0aG9yaXphdGlvbic6ICdCZWFyZXIgJyArIHRoaXMuX2FwaVNlcnZpY2UuZ2V0VG9rZW4oKSxcbiAgICAgICAgICAgICAgICAnbmdzdy1ieXBhc3MnOiAndHJ1ZSdcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBpbWFnZVVwbG9hZFBhcmFtczoge1xuICAgICAgICAgICAgICAgIGltYWdlVXJsOiB0aGlzLl9hcnRpY2xlU2VydmljZS5lbnZpcm9ubWVudC5hcGlTZXJ2ZXIgKyAnL2FwaS9wdWJsaWMvaW1hZ2VzLydcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBpbWFnZVVwbG9hZFBhcmFtOiAnZmlsZScsXG4gICAgICAgICAgICBpbWFnZVVwbG9hZFJlbW90ZVVybHM6IHRydWUsXG4gICAgICAgICAgICBpbWFnZVVwbG9hZFVSTDogdGhpcy5fYXJ0aWNsZVNlcnZpY2UuZW52aXJvbm1lbnQuYXBpU2VydmVyICsgJy9leHRlcm5hbC9mcm9hbGEvdXBsb2FkJyxcblxuICAgICAgICAgICAgZmlsZVVwbG9hZFBhcmFtczoge1xuICAgICAgICAgICAgICAgIGltYWdlVXJsOiB0aGlzLl9hcnRpY2xlU2VydmljZS5lbnZpcm9ubWVudC5hcGlTZXJ2ZXIgKyAnL2FwaS9wdWJsaWMvZmlsZXMvJ1xuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIGZpbGVVcGxvYWRQYXJhbTogJ2ZpbGUnLFxuICAgICAgICAgICAgZmlsZVVwbG9hZFVSTDogdGhpcy5fYXJ0aWNsZVNlcnZpY2UuZW52aXJvbm1lbnQuYXBpU2VydmVyICsgJy9leHRlcm5hbC9mcm9hbGEvdXBsb2FkJyxcblxuICAgICAgICAgICAgZXZlbnRzOiB7XG4gICAgICAgICAgICAgICAgJ2ltYWdlLmluc2VydGVkJzogKCRpbWcsIHJlc3BvbnNlKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuX2FkZEltYWdlKEpTT04ucGFyc2UocmVzcG9uc2UpLmZpbGUpO1xuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgJ2ltYWdlLnJlbW92ZWQnOiAoJGltZykgPT4ge1xuICAgICAgICAgICAgICAgICAgICBjb25zb2xlLmxvZygkaW1nLCAkaW1nLmRhdGFzZXQpO1xuICAgICAgICAgICAgICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8ICRpbWcubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuX3JlbW92ZUltYWdlKE51bWJlcigkaW1nW2ldLmRhdGFzZXQuaWQpKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAuLi50aGlzLl9hcnRpY2xlU2VydmljZS5nZXRUb29sYmFyKHRoaXMudG9vbGJhclR5cGUpXG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIF9hZGRJbWFnZShmaWxlOiBJU2tGaWxlKSB7XG4gICAgICAgIHRoaXMuaW1hZ2VzLnB1c2gobmV3IFNrRmlsZShmaWxlKSk7XG4gICAgfVxuXG4gICAgX3JlbW92ZUltYWdlKGlkOiBudW1iZXIpIHtcbiAgICAgICAgY29uc3QgaW5kZXggPSB0aGlzLmltYWdlcy5maW5kSW5kZXgodmFsdWUgPT4gdmFsdWUuaWQgPT09IGlkKTtcbiAgICAgICAgaWYgKGluZGV4ID4gLTEpIHtcbiAgICAgICAgICAgIHRoaXMuaW1hZ2VzLnNwbGljZShpbmRleCwgMSk7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCI8ZGl2IFtmcm9hbGFFZGl0b3JdPVwiZWRpdG9yQ29uZmlnXCIgWyhmcm9hbGFNb2RlbCldPVwiY29udGVudFwiPjwvZGl2PlxuIl19
|
|
@@ -1,33 +0,0 @@
|
|
|
1
|
-
import { CommonModule } from '@angular/common';
|
|
2
|
-
import { NgModule } from '@angular/core';
|
|
3
|
-
import { SkArticleEditorServerComponent } from './sk-article-editor-server.component';
|
|
4
|
-
import * as i0 from "@angular/core";
|
|
5
|
-
export class SkArticleServerModule {
|
|
6
|
-
static forRoot(environment) {
|
|
7
|
-
return {
|
|
8
|
-
ngModule: SkArticleServerModule,
|
|
9
|
-
providers: []
|
|
10
|
-
};
|
|
11
|
-
}
|
|
12
|
-
}
|
|
13
|
-
SkArticleServerModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: SkArticleServerModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
14
|
-
SkArticleServerModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: SkArticleServerModule, declarations: [SkArticleEditorServerComponent], imports: [CommonModule], exports: [SkArticleEditorServerComponent] });
|
|
15
|
-
SkArticleServerModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: SkArticleServerModule, providers: [], imports: [[
|
|
16
|
-
CommonModule
|
|
17
|
-
]] });
|
|
18
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: SkArticleServerModule, decorators: [{
|
|
19
|
-
type: NgModule,
|
|
20
|
-
args: [{
|
|
21
|
-
declarations: [
|
|
22
|
-
SkArticleEditorServerComponent,
|
|
23
|
-
],
|
|
24
|
-
imports: [
|
|
25
|
-
CommonModule
|
|
26
|
-
],
|
|
27
|
-
exports: [
|
|
28
|
-
SkArticleEditorServerComponent,
|
|
29
|
-
],
|
|
30
|
-
providers: []
|
|
31
|
-
}]
|
|
32
|
-
}] });
|
|
33
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2stYXJ0aWNsZS1zZXJ2ZXIubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvc2stZnJvbnQtbGliL2FydGljbGUvc3JjL3NrLWFydGljbGUtc2VydmVyLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUF1QixRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFOUQsT0FBTyxFQUFFLDhCQUE4QixFQUFFLE1BQU0sc0NBQXNDLENBQUM7O0FBZXRGLE1BQU0sT0FBTyxxQkFBcUI7SUFDOUIsTUFBTSxDQUFDLE9BQU8sQ0FBQyxXQUFXO1FBQ3RCLE9BQU87WUFDSCxRQUFRLEVBQUUscUJBQXFCO1lBQy9CLFNBQVMsRUFBRSxFQUFFO1NBQ2hCLENBQUM7SUFDTixDQUFDOztrSEFOUSxxQkFBcUI7bUhBQXJCLHFCQUFxQixpQkFYMUIsOEJBQThCLGFBRzlCLFlBQVksYUFHWiw4QkFBOEI7bUhBS3pCLHFCQUFxQixhQUhuQixFQUNWLFlBUFE7WUFDTCxZQUFZO1NBQ2Y7MkZBT1EscUJBQXFCO2tCQWJqQyxRQUFRO21CQUFDO29CQUNOLFlBQVksRUFBRTt3QkFDViw4QkFBOEI7cUJBQ2pDO29CQUNELE9BQU8sRUFBRTt3QkFDTCxZQUFZO3FCQUNmO29CQUNELE9BQU8sRUFBRTt3QkFDTCw4QkFBOEI7cUJBQ2pDO29CQUNELFNBQVMsRUFBRSxFQUNWO2lCQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IE1vZHVsZVdpdGhQcm92aWRlcnMsIE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IFNrQXJ0aWNsZUVkaXRvclNlcnZlckNvbXBvbmVudCB9IGZyb20gJy4vc2stYXJ0aWNsZS1lZGl0b3Itc2VydmVyLmNvbXBvbmVudCc7XG5cbkBOZ01vZHVsZSh7XG4gICAgZGVjbGFyYXRpb25zOiBbXG4gICAgICAgIFNrQXJ0aWNsZUVkaXRvclNlcnZlckNvbXBvbmVudCxcbiAgICBdLFxuICAgIGltcG9ydHM6IFtcbiAgICAgICAgQ29tbW9uTW9kdWxlXG4gICAgXSxcbiAgICBleHBvcnRzOiBbXG4gICAgICAgIFNrQXJ0aWNsZUVkaXRvclNlcnZlckNvbXBvbmVudCxcbiAgICBdLFxuICAgIHByb3ZpZGVyczogW1xuICAgIF1cbn0pXG5leHBvcnQgY2xhc3MgU2tBcnRpY2xlU2VydmVyTW9kdWxlIHtcbiAgICBzdGF0aWMgZm9yUm9vdChlbnZpcm9ubWVudCk6IE1vZHVsZVdpdGhQcm92aWRlcnM8U2tBcnRpY2xlU2VydmVyTW9kdWxlPiB7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICBuZ01vZHVsZTogU2tBcnRpY2xlU2VydmVyTW9kdWxlLFxuICAgICAgICAgICAgcHJvdmlkZXJzOiBbXVxuICAgICAgICB9O1xuICAgIH1cbn1cbiJdfQ==
|
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
import { CommonModule } from '@angular/common';
|
|
2
|
-
import { NgModule } from '@angular/core';
|
|
3
|
-
import { SkArticleEditorComponent } from './sk-article-editor.component';
|
|
4
|
-
import { SkFroalaEditorDirective } from './sk-froala-editor.directive';
|
|
5
|
-
import * as i0 from "@angular/core";
|
|
6
|
-
export class SkArticleModule {
|
|
7
|
-
}
|
|
8
|
-
SkArticleModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: SkArticleModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
9
|
-
SkArticleModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: SkArticleModule, declarations: [SkArticleEditorComponent,
|
|
10
|
-
SkFroalaEditorDirective], imports: [CommonModule], exports: [SkArticleEditorComponent,
|
|
11
|
-
SkFroalaEditorDirective] });
|
|
12
|
-
SkArticleModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: SkArticleModule, providers: [], imports: [[
|
|
13
|
-
CommonModule
|
|
14
|
-
]] });
|
|
15
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: SkArticleModule, decorators: [{
|
|
16
|
-
type: NgModule,
|
|
17
|
-
args: [{
|
|
18
|
-
declarations: [
|
|
19
|
-
SkArticleEditorComponent,
|
|
20
|
-
SkFroalaEditorDirective
|
|
21
|
-
],
|
|
22
|
-
imports: [
|
|
23
|
-
CommonModule
|
|
24
|
-
],
|
|
25
|
-
exports: [
|
|
26
|
-
SkArticleEditorComponent,
|
|
27
|
-
SkFroalaEditorDirective
|
|
28
|
-
],
|
|
29
|
-
providers: []
|
|
30
|
-
}]
|
|
31
|
-
}] });
|
|
32
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2stYXJ0aWNsZS5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9zay1mcm9udC1saWIvYXJ0aWNsZS9zcmMvc2stYXJ0aWNsZS5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFekMsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDekUsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sOEJBQThCLENBQUM7O0FBaUJ2RSxNQUFNLE9BQU8sZUFBZTs7NEdBQWYsZUFBZTs2R0FBZixlQUFlLGlCQWJwQix3QkFBd0I7UUFDeEIsdUJBQXVCLGFBR3ZCLFlBQVksYUFHWix3QkFBd0I7UUFDeEIsdUJBQXVCOzZHQUtsQixlQUFlLGFBSGIsRUFDVixZQVJRO1lBQ0wsWUFBWTtTQUNmOzJGQVFRLGVBQWU7a0JBZjNCLFFBQVE7bUJBQUM7b0JBQ04sWUFBWSxFQUFFO3dCQUNWLHdCQUF3Qjt3QkFDeEIsdUJBQXVCO3FCQUMxQjtvQkFDRCxPQUFPLEVBQUU7d0JBQ0wsWUFBWTtxQkFDZjtvQkFDRCxPQUFPLEVBQUU7d0JBQ0wsd0JBQXdCO3dCQUN4Qix1QkFBdUI7cUJBQzFCO29CQUNELFNBQVMsRUFBRSxFQUNWO2lCQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IFNrQXJ0aWNsZUVkaXRvckNvbXBvbmVudCB9IGZyb20gJy4vc2stYXJ0aWNsZS1lZGl0b3IuY29tcG9uZW50JztcbmltcG9ydCB7IFNrRnJvYWxhRWRpdG9yRGlyZWN0aXZlIH0gZnJvbSAnLi9zay1mcm9hbGEtZWRpdG9yLmRpcmVjdGl2ZSc7XG5cbkBOZ01vZHVsZSh7XG4gICAgZGVjbGFyYXRpb25zOiBbXG4gICAgICAgIFNrQXJ0aWNsZUVkaXRvckNvbXBvbmVudCxcbiAgICAgICAgU2tGcm9hbGFFZGl0b3JEaXJlY3RpdmVcbiAgICBdLFxuICAgIGltcG9ydHM6IFtcbiAgICAgICAgQ29tbW9uTW9kdWxlXG4gICAgXSxcbiAgICBleHBvcnRzOiBbXG4gICAgICAgIFNrQXJ0aWNsZUVkaXRvckNvbXBvbmVudCxcbiAgICAgICAgU2tGcm9hbGFFZGl0b3JEaXJlY3RpdmVcbiAgICBdLFxuICAgIHByb3ZpZGVyczogW1xuICAgIF1cbn0pXG5leHBvcnQgY2xhc3MgU2tBcnRpY2xlTW9kdWxlIHtcbn1cbiJdfQ==
|
|
@@ -1,248 +0,0 @@
|
|
|
1
|
-
import { Inject, Injectable } from '@angular/core';
|
|
2
|
-
import FroalaEditor from 'froala-editor';
|
|
3
|
-
import 'froala-editor/js/plugins.pkgd.min.js';
|
|
4
|
-
import * as i0 from "@angular/core";
|
|
5
|
-
export class SkArticleService {
|
|
6
|
-
constructor(environment) {
|
|
7
|
-
this.environment = environment;
|
|
8
|
-
this.initializeFroala();
|
|
9
|
-
}
|
|
10
|
-
initializeFroala() {
|
|
11
|
-
FroalaEditor.DefineIconTemplate('material_design', '<i class="material-icons">[NAME]</i>');
|
|
12
|
-
this.loadFontWeight();
|
|
13
|
-
this.registerShortcuts();
|
|
14
|
-
}
|
|
15
|
-
loadFontWeight() {
|
|
16
|
-
// Define an icon.
|
|
17
|
-
FroalaEditor.DefineIcon('font-weight', { NAME: 'format_size', template: 'material_design' });
|
|
18
|
-
// Define a dropdown button.
|
|
19
|
-
FroalaEditor.RegisterCommand('font-weight-drop', {
|
|
20
|
-
// Button title.
|
|
21
|
-
title: 'Font Weight',
|
|
22
|
-
// Mark the button as a dropdown.
|
|
23
|
-
type: 'dropdown',
|
|
24
|
-
// Specify the icon for the button.
|
|
25
|
-
// If this option is not specified, the button name will be used.
|
|
26
|
-
icon: 'font-weight',
|
|
27
|
-
// Options for the dropdown.
|
|
28
|
-
options: {
|
|
29
|
-
100: 'Thin',
|
|
30
|
-
300: 'Light',
|
|
31
|
-
400: 'Regular',
|
|
32
|
-
500: 'Medium',
|
|
33
|
-
700: 'Bold',
|
|
34
|
-
900: 'Black'
|
|
35
|
-
},
|
|
36
|
-
// If present, the options property will be ignored.
|
|
37
|
-
// It can be used to define a custom HTML for the dropdown.
|
|
38
|
-
// html: function () {
|
|
39
|
-
// // The current context is the editor instance.
|
|
40
|
-
// return '';
|
|
41
|
-
// },
|
|
42
|
-
// Save the dropdown action into undo stack.
|
|
43
|
-
undo: true,
|
|
44
|
-
// Focus inside the editor before callback.
|
|
45
|
-
focus: true,
|
|
46
|
-
// Refresh the button state after the callback.
|
|
47
|
-
refreshAfterCallback: true,
|
|
48
|
-
// Callback.
|
|
49
|
-
callback(cmd, val, params) {
|
|
50
|
-
this.format.removeStyle('font-weight');
|
|
51
|
-
this.format.applyStyle('font-weight', val);
|
|
52
|
-
},
|
|
53
|
-
// Called when the dropdown button state might have changed.
|
|
54
|
-
// refresh: function ($btn) {
|
|
55
|
-
// // The current context is the editor instance.
|
|
56
|
-
// console.log (this.selection.element());
|
|
57
|
-
// console.log(this);
|
|
58
|
-
// },
|
|
59
|
-
// Called when the dropdown is shown.
|
|
60
|
-
// refreshOnShow: function ($btn, $dropdown) {
|
|
61
|
-
// // The current context is the editor instance.
|
|
62
|
-
// console.log (this.selection.element());
|
|
63
|
-
// }
|
|
64
|
-
});
|
|
65
|
-
}
|
|
66
|
-
registerShortcuts() {
|
|
67
|
-
FroalaEditor.RegisterShortcut(49, 'paragraphFormat', 'H1', '1', false);
|
|
68
|
-
FroalaEditor.RegisterShortcut(50, 'paragraphFormat', 'H2', '2', false);
|
|
69
|
-
FroalaEditor.RegisterShortcut(51, 'paragraphFormat', 'H3', '3', false);
|
|
70
|
-
FroalaEditor.RegisterShortcut(52, 'paragraphFormat', 'N', '4', false);
|
|
71
|
-
FroalaEditor.RegisterShortcut(66, 'font-weight-drop', '700');
|
|
72
|
-
}
|
|
73
|
-
getBaseConfig() {
|
|
74
|
-
return {
|
|
75
|
-
key: 'Ig1A7vB2D2E2E1F1B4muvugzxmwA-7I-7A5B-21qrC-11A2B2C2A1C9B3B3C6E2C1==',
|
|
76
|
-
editorClass: 'sk-custom',
|
|
77
|
-
fontFamily: {
|
|
78
|
-
'Noto Sans KR, Noto Sans, Arial,Helvetica,sans-serif': 'Noto Sans',
|
|
79
|
-
'Roboto, Arial,Helvetica,sans-serif': 'Roboto',
|
|
80
|
-
'Georgia,serif': 'Georgia',
|
|
81
|
-
'Impact,Charcoal,sans-serif': 'Impact',
|
|
82
|
-
'Tahoma,Geneva,sans-serif': 'Tahoma',
|
|
83
|
-
'\'Times New Roman\',Times,serif': 'Times New Roman',
|
|
84
|
-
'Verdana,Geneva,sans-serif': 'Verdana'
|
|
85
|
-
},
|
|
86
|
-
imageDefaultWidth: 0,
|
|
87
|
-
// remove image manager
|
|
88
|
-
// imageInsertButtons: ['imageBack', '|', 'imageUpload', 'imageByURL', 'imageManager'],
|
|
89
|
-
imageInsertButtons: ['imageBack', '|', 'imageUpload', 'imageByURL'],
|
|
90
|
-
imageEditButtons: ['imageAlign', 'imageCaption', 'imageRemove', '|', 'imageLink', 'linkOpen', 'linkEdit', 'linkRemove', '-', 'imageDisplay', 'imageStyle', 'imageAlt', 'imageSize'],
|
|
91
|
-
imageAllowedTypes: ['jpeg', 'jpg', 'png', 'gif'],
|
|
92
|
-
// remove video upload
|
|
93
|
-
// ['videoBack', '|', 'videoByURL', 'videoEmbed', 'videoUpload']
|
|
94
|
-
videoInsertButtons: ['videoBack', '|', 'videoByURL', 'videoEmbed'],
|
|
95
|
-
videoUpload: false,
|
|
96
|
-
videoResponsive: true,
|
|
97
|
-
pastePlain: true,
|
|
98
|
-
pasteDeniedAttrs: ['class', 'id', 'style'],
|
|
99
|
-
pasteDeniedTags: ['div'],
|
|
100
|
-
wordPasteKeepFormatting: false,
|
|
101
|
-
imagePaste: false,
|
|
102
|
-
quickInsertEnabled: false,
|
|
103
|
-
paragraphFormat: {
|
|
104
|
-
H1: '대제목',
|
|
105
|
-
H2: '소제목',
|
|
106
|
-
H3: '문단 제목',
|
|
107
|
-
N: '본문'
|
|
108
|
-
},
|
|
109
|
-
// toolbarContainer: '.sk-custom-editor-toolbar',
|
|
110
|
-
toolbarSticky: false,
|
|
111
|
-
toolbarBottom: false,
|
|
112
|
-
attribution: false,
|
|
113
|
-
helpSets: [
|
|
114
|
-
{
|
|
115
|
-
title: 'Gearlounge Custom',
|
|
116
|
-
commands: [
|
|
117
|
-
{ val: 'OSkey1', desc: '대제목' },
|
|
118
|
-
{ val: 'OSkey2', desc: '소제목' },
|
|
119
|
-
{ val: 'OSkey3', desc: '문단 제목' },
|
|
120
|
-
{ val: 'OSkey4', desc: '본문' }
|
|
121
|
-
]
|
|
122
|
-
},
|
|
123
|
-
{
|
|
124
|
-
title: 'Inline Editor',
|
|
125
|
-
commands: [
|
|
126
|
-
{ val: 'OSkeyE', desc: 'Show the editor' }
|
|
127
|
-
]
|
|
128
|
-
},
|
|
129
|
-
{
|
|
130
|
-
title: 'Common actions',
|
|
131
|
-
commands: [
|
|
132
|
-
{ val: 'OSkeyC', desc: 'Copy' },
|
|
133
|
-
{ val: 'OSkeyX', desc: 'Cut' },
|
|
134
|
-
{ val: 'OSkeyV', desc: 'Paste' },
|
|
135
|
-
{ val: 'OSkeyZ', desc: 'Undo' },
|
|
136
|
-
{ val: 'OSkeyShift+Z', desc: 'Redo' },
|
|
137
|
-
{ val: 'OSkeyK', desc: 'Insert Link' },
|
|
138
|
-
{ val: 'OSkeyP', desc: 'Insert Image' }
|
|
139
|
-
]
|
|
140
|
-
},
|
|
141
|
-
{
|
|
142
|
-
title: 'Basic Formatting',
|
|
143
|
-
commands: [
|
|
144
|
-
{ val: 'OSkeyA', desc: 'Select All' },
|
|
145
|
-
{ val: 'OSkeyB', desc: 'Bold' },
|
|
146
|
-
{ val: 'OSkeyI', desc: 'Italic' },
|
|
147
|
-
{ val: 'OSkeyU', desc: 'Underline' },
|
|
148
|
-
{ val: 'OSkeyS', desc: 'Strikethrough' },
|
|
149
|
-
{ val: 'OSkey]', desc: 'Increase Indent' },
|
|
150
|
-
{ val: 'OSkey[', desc: 'Decrease Indent' }
|
|
151
|
-
]
|
|
152
|
-
},
|
|
153
|
-
{
|
|
154
|
-
title: 'Quote',
|
|
155
|
-
commands: [
|
|
156
|
-
{ val: 'OSkey\'', desc: 'Increase quote level' },
|
|
157
|
-
{ val: 'OSkeyShift+\'', desc: 'Decrease quote level' }
|
|
158
|
-
]
|
|
159
|
-
},
|
|
160
|
-
{
|
|
161
|
-
title: 'Image / Video',
|
|
162
|
-
commands: [
|
|
163
|
-
{ val: 'OSkey+', desc: 'Resize larger' },
|
|
164
|
-
{ val: 'OSkey-', desc: 'Resize smaller' }
|
|
165
|
-
]
|
|
166
|
-
},
|
|
167
|
-
{
|
|
168
|
-
title: 'Table',
|
|
169
|
-
commands: [
|
|
170
|
-
{ val: 'Alt+Space', desc: 'Select table cell' },
|
|
171
|
-
{ val: 'Shift+Left/Right arrow', desc: 'Extend selection one cell' },
|
|
172
|
-
{ val: 'Shift+Up/Down arrow', desc: 'Extend selection one row' }
|
|
173
|
-
]
|
|
174
|
-
},
|
|
175
|
-
{
|
|
176
|
-
title: 'Navigation',
|
|
177
|
-
commands: [
|
|
178
|
-
{ val: 'OSkey/', desc: 'Shortcuts' },
|
|
179
|
-
{ val: 'Alt+F10', desc: 'Focus popup / toolbar' },
|
|
180
|
-
{ val: 'Esc', desc: 'Return focus to previous position' }
|
|
181
|
-
]
|
|
182
|
-
}
|
|
183
|
-
],
|
|
184
|
-
};
|
|
185
|
-
}
|
|
186
|
-
getToolbar(type = 'default') {
|
|
187
|
-
if (type === 'default') {
|
|
188
|
-
return {
|
|
189
|
-
toolbarButtons: {
|
|
190
|
-
moreText: {
|
|
191
|
-
buttons: ['font-weight-drop', 'fontFamily', 'fontSize', 'textColor', 'clearFormatting', 'italic', 'strikeThrough', 'subscript', 'superscript', 'backgroundColor', 'inlineClass', 'inlineStyle'],
|
|
192
|
-
buttonsVisible: 5
|
|
193
|
-
},
|
|
194
|
-
moreParagraph: {
|
|
195
|
-
buttons: ['paragraphFormat', 'alignLeft', 'alignCenter', 'formatUL', 'quote', 'alignRight', 'alignJustify', 'formatOLSimple', 'formatOL', 'paragraphStyle', 'lineHeight', 'outdent', 'indent'],
|
|
196
|
-
buttonsVisible: 5
|
|
197
|
-
},
|
|
198
|
-
moreRich: {
|
|
199
|
-
buttons: ['insertLink', 'insertImage', 'insertVideo', 'insertHR', 'insertTable', 'emoticons', 'fontAwesome', 'specialCharacters', 'embedly', 'insertFile'],
|
|
200
|
-
buttonsVisible: 4
|
|
201
|
-
},
|
|
202
|
-
moreMisc: {
|
|
203
|
-
buttons: ['undo', 'redo', 'fullscreen', 'print', 'getPDF', 'spellChecker', 'selectAll', 'html', 'help'],
|
|
204
|
-
align: 'right',
|
|
205
|
-
buttonsVisible: 3
|
|
206
|
-
}
|
|
207
|
-
},
|
|
208
|
-
toolbarButtonsSm: {
|
|
209
|
-
moreText: {
|
|
210
|
-
buttons: ['font-weight-drop', 'underline', 'strikeThrough', 'subscript', 'superscript', 'fontFamily', 'fontSize', 'textColor', 'backgroundColor', 'inlineClass', 'inlineStyle', 'clearFormatting'],
|
|
211
|
-
buttonsVisible: 2
|
|
212
|
-
},
|
|
213
|
-
moreParagraph: {
|
|
214
|
-
buttons: ['alignLeft', 'alignCenter', 'formatOLSimple', 'alignRight', 'alignJustify', 'formatOL', 'formatUL', 'paragraphFormat', 'paragraphStyle', 'lineHeight', 'outdent', 'indent', 'quote'],
|
|
215
|
-
buttonsVisible: 2
|
|
216
|
-
},
|
|
217
|
-
moreRich: {
|
|
218
|
-
buttons: ['insertLink', 'insertImage', 'insertVideo', 'insertTable', 'emoticons', 'fontAwesome', 'specialCharacters', 'embedly', 'insertFile', 'insertHR'],
|
|
219
|
-
buttonsVisible: 2
|
|
220
|
-
},
|
|
221
|
-
moreMisc: {
|
|
222
|
-
buttons: ['undo', 'redo', 'fullscreen', 'print', 'getPDF', 'spellChecker', 'selectAll', 'html', 'help'],
|
|
223
|
-
align: 'right',
|
|
224
|
-
buttonsVisible: 2
|
|
225
|
-
}
|
|
226
|
-
},
|
|
227
|
-
};
|
|
228
|
-
}
|
|
229
|
-
else if (type === 'simple') {
|
|
230
|
-
return {
|
|
231
|
-
toolbarButtons: [['font-weight-drop', 'fontFamily', 'fontSize', 'textColor', 'clearFormatting'], ['paragraphFormat', 'alignLeft', 'alignCenter', 'formatUL', 'quote'], ['insertLink']],
|
|
232
|
-
toolbarButtonsSm: [['font-weight-drop', 'fontFamily', 'fontSize', 'textColor', 'clearFormatting'], ['paragraphFormat', 'alignLeft', 'alignCenter', 'formatUL', 'quote'], ['insertLink']],
|
|
233
|
-
};
|
|
234
|
-
}
|
|
235
|
-
}
|
|
236
|
-
}
|
|
237
|
-
SkArticleService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: SkArticleService, deps: [{ token: 'environment' }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
238
|
-
SkArticleService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: SkArticleService, providedIn: 'root' });
|
|
239
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: SkArticleService, decorators: [{
|
|
240
|
-
type: Injectable,
|
|
241
|
-
args: [{
|
|
242
|
-
providedIn: 'root'
|
|
243
|
-
}]
|
|
244
|
-
}], ctorParameters: function () { return [{ type: undefined, decorators: [{
|
|
245
|
-
type: Inject,
|
|
246
|
-
args: ['environment']
|
|
247
|
-
}] }]; } });
|
|
248
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2stYXJ0aWNsZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvc2stZnJvbnQtbGliL2FydGljbGUvc3JjL3NrLWFydGljbGUuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVuRCxPQUFPLFlBQVksTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxzQ0FBc0MsQ0FBQzs7QUFLOUMsTUFBTSxPQUFPLGdCQUFnQjtJQUV6QixZQUEwQyxXQUFnQjtRQUFoQixnQkFBVyxHQUFYLFdBQVcsQ0FBSztRQUN0RCxJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztJQUM1QixDQUFDO0lBRUQsZ0JBQWdCO1FBQ1osWUFBWSxDQUFDLGtCQUFrQixDQUFDLGlCQUFpQixFQUFFLHNDQUFzQyxDQUFDLENBQUM7UUFFM0YsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO1FBQ3RCLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO0lBQzdCLENBQUM7SUFFRCxjQUFjO1FBQ1Ysa0JBQWtCO1FBQ2xCLFlBQVksQ0FBQyxVQUFVLENBQUMsYUFBYSxFQUFFLEVBQUMsSUFBSSxFQUFFLGFBQWEsRUFBRSxRQUFRLEVBQUUsaUJBQWlCLEVBQUMsQ0FBQyxDQUFDO1FBRTNGLDRCQUE0QjtRQUM1QixZQUFZLENBQUMsZUFBZSxDQUFDLGtCQUFrQixFQUFFO1lBQzdDLGdCQUFnQjtZQUNoQixLQUFLLEVBQUUsYUFBYTtZQUVwQixpQ0FBaUM7WUFDakMsSUFBSSxFQUFFLFVBQVU7WUFFaEIsbUNBQW1DO1lBQ25DLGlFQUFpRTtZQUNqRSxJQUFJLEVBQUUsYUFBYTtZQUVuQiw0QkFBNEI7WUFDNUIsT0FBTyxFQUFFO2dCQUNMLEdBQUcsRUFBRSxNQUFNO2dCQUNYLEdBQUcsRUFBRSxPQUFPO2dCQUNaLEdBQUcsRUFBRSxTQUFTO2dC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bGFyL2NvcmUnO1xuXG5pbXBvcnQgRnJvYWxhRWRpdG9yIGZyb20gJ2Zyb2FsYS1lZGl0b3InO1xuaW1wb3J0ICdmcm9hbGEtZWRpdG9yL2pzL3BsdWdpbnMucGtnZC5taW4uanMnO1xuXG5ASW5qZWN0YWJsZSh7XG4gICAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIFNrQXJ0aWNsZVNlcnZpY2Uge1xuXG4gICAgY29uc3RydWN0b3IoQEluamVjdCgnZW52aXJvbm1lbnQnKSBwdWJsaWMgZW52aXJvbm1lbnQ6IGFueSkge1xuICAgICAgICB0aGlzLmluaXRpYWxpemVGcm9hbGEoKTtcbiAgICB9XG5cbiAgICBpbml0aWFsaXplRnJvYWxhKCkge1xuICAgICAgICBGcm9hbGFFZGl0b3IuRGVmaW5lSWNvblRlbXBsYXRlKCdtYXRlcmlhbF9kZXNpZ24nLCAnPGkgY2xhc3M9XCJtYXRlcmlhbC1pY29uc1wiPltOQU1FXTwvaT4nKTtcblxuICAgICAgICB0aGlzLmxvYWRGb250V2VpZ2h0KCk7XG4gICAgICAgIHRoaXMucmVnaXN0ZXJTaG9ydGN1dHMoKTtcbiAgICB9XG5cbiAgICBsb2FkRm9udFdlaWdodCgpIHtcbiAgICAgICAgLy8gRGVmaW5lIGFuIGljb24uXG4gICAgICAgIEZyb2FsYUVkaXRvci5EZWZpbmVJY29uKCdmb250LXdlaWdodCcsIHtOQU1FOiAnZm9ybWF0X3NpemUnLCB0ZW1wbGF0ZTogJ21hdGVyaWFsX2Rlc2lnbid9KTtcblxuICAgICAgICAvLyBEZWZpbmUgYSBkcm9wZG93biBidXR0b24uXG4gICAgICAgIEZyb2FsYUVkaXRvci5SZWdpc3RlckNvbW1hbmQoJ2ZvbnQtd2VpZ2h0LWRyb3AnLCB7XG4gICAgICAgICAgICAvLyBCdXR0b24gdGl0bGUuXG4gICAgICAgICAgICB0aXRsZTogJ0ZvbnQgV2VpZ2h0JyxcblxuICAgICAgICAgICAgLy8gTWFyayB0aGUgYnV0dG9uIGFzIGEgZHJvcGRvd24uXG4gICAgICAgICAgICB0eXBlOiAnZHJvcGRvd24nLFxuXG4gICAgICAgICAgICAvLyBTcGVjaWZ5IHRoZSBpY29uIGZvciB0aGUgYnV0dG9uLlxuICAgICAgICAgICAgLy8gSWYgdGhpcyBvcHRpb24gaXMgbm90IHNwZWNpZmllZCwgdGhlIGJ1dHRvbiBuYW1lIHdpbGwgYmUgdXNlZC5cbiAgICAgICAgICAgIGljb246ICdmb250LXdlaWdodCcsXG5cbiAgICAgICAgICAgIC8vIE9wdGlvbnMgZm9yIHRoZSBkcm9wZG93bi5cbiAgICAgICAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAxMDA6ICdUaGluJyxcbiAgICAgICAgICAgICAgICAzMDA6ICdMaWdodCcsXG4gICAgICAgICAgICAgICAgNDAwOiAnUmVndWxhcicsXG4gICAgICAgICAgICAgICAgNTAwOiAnTWVkaXVtJyxcbiAgICAgICAgICAgICAgICA3MDA6ICdCb2xkJyxcbiAgICAgICAgICAgICAgICA5MDA6ICdCbGFjaydcbiAgICAgICAgICAgIH0sXG5cbiAgICAgICAgICAgIC8vIElmIHByZXNlbnQsIHRoZSBvcHRpb25zIHByb3BlcnR5IHdpbGwgYmUgaWdub3JlZC5cbiAgICAgICAgICAgIC8vIEl0IGNhbiBiZSB1c2VkIHRvIGRlZmluZSBhIGN1c3RvbSBIVE1MIGZvciB0aGUgZHJvcGRvd24uXG4gICAgICAgICAgICAvLyBodG1sOiBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgICAvLyAgICAgLy8gVGhlIGN1cnJlbnQgY29udGV4dCBpcyB0aGUgZWRpdG9yIGluc3RhbmNlLlxuICAgICAgICAgICAgLy8gICAgIHJldHVybiAnJztcbiAgICAgICAgICAgIC8vIH0sXG5cbiAgICAgICAgICAgIC8vIFNhdmUgdGhlIGRyb3Bkb3duIGFjdGlvbiBpbnRvIHVuZG8gc3RhY2suXG4gICAgICAgICAgICB1bmRvOiB0cnVlLFxuXG4gICAgICAgICAgICAvLyBGb2N1cyBpbnNpZGUgdGhlIGVkaXRvciBiZWZvcmUgY2FsbGJhY2suXG4gICAgICAgICAgICBmb2N1czogdHJ1ZSxcblxuICAgICAgICAgICAgLy8gUmVmcmVzaCB0aGUgYnV0dG9uIHN0YXRlIGFmdGVyIHRoZSBjYWxsYmFjay5cbiAgICAgICAgICAgIHJlZnJlc2hBZnRlckNhbGxiYWNrOiB0cnVlLFxuXG4gICAgICAgICAgICAvLyBDYWxsYmFjay5cbiAgICAgICAgICAgIGNhbGxiYWNrKGNtZCwgdmFsLCBwYXJhbXMpIHtcbiAgICAgICAgICAgICAgICB0aGlzLmZvcm1hdC5yZW1vdmVTdHlsZSgnZm9udC13ZWlnaHQnKTtcbiAgICAgICAgICAgICAgICB0aGlzLmZvcm1hdC5hcHBseVN0eWxlKCdmb250LXdlaWdodCcsIHZhbCk7XG4gICAgICAgICAgICB9LFxuXG4gICAgICAgICAgICAvLyBDYWxsZWQgd2hlbiB0aGUgZHJvcGRvd24gYnV0dG9uIHN0YXRlIG1pZ2h0IGhhdmUgY2hhbmdlZC5cbiAgICAgICAgICAgIC8vIHJlZnJlc2g6IGZ1bmN0aW9uICgkYnRuKSB7XG4gICAgICAgICAgICAvLyAgICAgLy8gVGhlIGN1cnJlbnQgY29udGV4dCBpcyB0aGUgZWRpdG9yIGluc3RhbmNlLlxuICAgICAgICAgICAgLy8gICAgIGNvbnNvbGUubG9nICh0aGlzLnNlbGVjdGlvbi5lbGVtZW50KCkpO1xuICAgICAgICAgICAgLy8gICAgIGNvbnNvbGUubG9nKHRoaXMpO1xuICAgICAgICAgICAgLy8gfSxcblxuICAgICAgICAgICAgLy8gQ2FsbGVkIHdoZW4gdGhlIGRyb3Bkb3duIGlzIHNob3duLlxuICAgICAgICAgICAgLy8gcmVmcmVzaE9uU2hvdzogZnVuY3Rpb24gKCRidG4sICRkcm9wZG93bikge1xuICAgICAgICAgICAgLy8gICAgIC8vIFRoZSBjdXJyZW50IGNvbnRleHQgaXMgdGhlIGVkaXRvciBpbnN0YW5jZS5cbiAgICAgICAgICAgIC8vICAgICBjb25zb2xlLmxvZyAodGhpcy5zZWxlY3Rpb24uZWxlbWVudCgpKTtcbiAgICAgICAgICAgIC8vIH1cbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcmVnaXN0ZXJTaG9ydGN1dHMoKSB7XG4gICAgICAgIEZyb2FsYUVkaXRvci5SZWdpc3RlclNob3J0Y3V0KDQ5LCAncGFyYWdyYXBoRm9ybWF0JywgJ0gxJywgJzEnLCBmYWxzZSk7XG4gICAgICAgIEZyb2FsYUVkaXRvci5SZWdpc3RlclNob3J0Y3V0KDUwLCAncGFyYWdyYXBoRm9ybWF0JywgJ0gyJywgJzInLCBmYWxzZSk7XG4gICAgICAgIEZyb2FsYUVkaXRvci5SZWdpc3RlclNob3J0Y3V0KDUxLCAncGFyYWdyYXBoRm9ybWF0JywgJ0gzJywgJzMnLCBmYWxzZSk7XG4gICAgICAgIEZyb2FsYUVkaXRvci5SZWdpc3RlclNob3J0Y3V0KDUyLCAncGFyYWdyYXBoRm9ybWF0JywgJ04nLCAnNCcsIGZhbHNlKTtcbiAgICAgICAgRnJvYWxhRWRpdG9yLlJlZ2lzdGVyU2hvcnRjdXQoNjYsICdmb250LXdlaWdodC1kcm9wJywgJzcwMCcpO1xuICAgIH1cblxuICAgIGdldEJhc2VDb25maWcoKSB7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICBrZXk6ICdJZzFBN3ZCMkQyRTJFMUYxQjRtdXZ1Z3p4bXdBLTdJLTdBNUItMjFxckMtMTFBMkIyQzJBMUM5QjNCM0M2RTJDMT09JyxcbiAgICAgICAgICAgIGVkaXRvckNsYXNzOiAnc2stY3VzdG9tJyxcbiAgICAgICAgICAgIGZvbnRGYW1pbHk6IHtcbiAgICAgICAgICAgICAgICAnTm90byBTYW5zIEtSLCBOb3RvIFNhbnMsIEFyaWFsLEhlbHZldGljYSxzYW5zLXNlcmlmJzogJ05vdG8gU2FucycsXG4gICAgICAgICAgICAgICAgJ1JvYm90bywgQXJpYWwsSGVsdmV0aWNhLHNhbnMtc2VyaWYnOiAnUm9ib3RvJyxcbiAgICAgICAgICAgICAgICAnR2VvcmdpYSxzZXJpZic6ICdHZW9yZ2lhJyxcbiAgICAgICAgICAgICAgICAnSW1wYWN0LENoYXJjb2FsLHNhbnMtc2VyaWYnOiAnSW1wYWN0JyxcbiAgICAgICAgICAgICAgICAnVGFob21hLEdlbmV2YSxzYW5zLXNlcmlmJzogJ1RhaG9tYScsXG4gICAgICAgICAgICAgICAgJ1xcJ1RpbWVzIE5ldyBSb21hblxcJyxUaW1lcyxzZXJpZic6ICdUaW1lcyBOZXcgUm9tYW4nLFxuICAgICAgICAgICAgICAgICdWZXJkYW5hLEdlbmV2YSxzYW5zLXNlcmlmJzogJ1ZlcmRhbmEnXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgaW1hZ2VEZWZhdWx0V2lkdGg6IDAsXG4gICAgICAgICAgICAvLyByZW1vdmUgaW1hZ2UgbWFuYWdlclxuICAgICAgICAgICAgLy8gaW1hZ2VJbnNlcnRCdXR0b25zOiBbJ2ltYWdlQmFjaycsICd8JywgJ2ltYWdlVXBsb2FkJywgJ2ltYWdlQnlVUkwnLCAnaW1hZ2VNYW5hZ2VyJ10sXG4gICAgICAgICAgICBpbWFnZUluc2VydEJ1dHRvbnM6IFsnaW1hZ2VCYWNrJywgJ3wnLCAnaW1hZ2VVcGxvYWQnLCAnaW1hZ2VCeVVSTCddLFxuICAgICAgICAgICAgaW1hZ2VFZGl0QnV0dG9uczogWydpbWFnZUFsaWduJywgJ2ltYWdlQ2FwdGlvbicsICdpbWFnZVJlbW92ZScsICd8JywgJ2ltYWdlTGluaycsICdsaW5rT3BlbicsICdsaW5rRWRpdCcsICdsaW5rUmVtb3ZlJywgJy0nLCAnaW1hZ2VEaXNwbGF5JywgJ2ltYWdlU3R5bGUnLCAnaW1hZ2VBbHQnLCAnaW1hZ2VTaXplJ10sXG4gICAgICAgICAgICBpbWFnZUFsbG93ZWRUeXBlczogWydqcGVnJywgJ2pwZycsICdwbmcnLCAnZ2lmJ10sXG5cbiAgICAgICAgICAgIC8vIHJlbW92ZSB2aWRlbyB1cGxvYWRcbiAgICAgICAgICAgIC8vIFsndmlkZW9CYWNrJywgJ3wnLCAndmlkZW9CeVVSTCcsICd2aWRlb0VtYmVkJywgJ3ZpZGVvVXBsb2FkJ11cbiAgICAgICAgICAgIHZpZGVvSW5zZXJ0QnV0dG9uczogWyd2aWRlb0JhY2snLCAnfCcsICd2aWRlb0J5VVJMJywgJ3ZpZGVvRW1iZWQnXSxcbiAgICAgICAgICAgIHZpZGVvVXBsb2FkOiBmYWxzZSxcbiAgICAgICAgICAgIHZpZGVvUmVzcG9uc2l2ZTogdHJ1ZSxcblxuICAgICAgICAgICAgcGFzdGVQbGFpbjogdHJ1ZSxcbiAgICAgICAgICAgIHBhc3RlRGVuaWVkQXR0cnM6IFsnY2xhc3MnLCAnaWQnLCAnc3R5bGUnXSxcbiAgICAgICAgICAgIHBhc3RlRGVuaWVkVGFnczogWydkaXYnXSxcbiAgICAgICAgICAgIHdvcmRQYXN0ZUtlZXBGb3JtYXR0aW5nOiBmYWxzZSxcbiAgICAgICAgICAgIGltYWdlUGFzdGU6IGZhbHNlLFxuXG4gICAgICAgICAgICBxdWlja0luc2VydEVuYWJsZWQ6IGZhbHNlLFxuXG4gICAgICAgICAgICBwYXJhZ3JhcGhGb3JtYXQ6IHtcbiAgICAgICAgICAgICAgICBIMTogJ+uMgOygnOuqqScsXG4gICAgICAgICAgICAgICAgSDI6ICfshozsoJzrqqknLFxuICAgICAgICAgICAgICAgIEgzOiAn66y464uoIOygnOuqqScsXG4gICAgICAgICAgICAgICAgTjogJ+uzuOusuCdcbiAgICAgICAgICAgIH0sXG5cbiAgICAgICAgICAgIC8vIHRvb2xiYXJDb250YWluZXI6ICcuc2stY3VzdG9tLWVkaXRvci10b29sYmFyJyxcbiAgICAgICAgICAgIHRvb2xiYXJTdGlja3k6IGZhbHNlLFxuICAgICAgICAgICAgdG9vbGJhckJvdHRvbTogZmFsc2UsXG5cblxuICAgICAgICAgICAgYXR0cmlidXRpb246IGZhbHNlLFxuXG4gICAgICAgICAgICBoZWxwU2V0czogW1xuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgdGl0bGU6ICdHZWFybG91bmdlIEN1c3RvbScsXG4gICAgICAgICAgICAgICAgICAgIGNvbW1hbmRzOiBbXG4gICAgICAgICAgICAgICAgICAgICAgICB7dmFsOiAnT1NrZXkxJywgZGVzYzogJ+uMgOygnOuqqSd9LFxuICAgICAgICAgICAgICAgICAgICAgICAge3ZhbDogJ09Ta2V5MicsIGRlc2M6ICfshozsoJzrqqknfSxcbiAgICAgICAgICAgICAgICAgICAgICAgIHt2YWw6ICdPU2tleTMnLCBkZXNjOiAn66y464uoIOygnOuqqSd9LFxuICAgICAgICAgICAgICAgICAgICAgICAge3ZhbDogJ09Ta2V5NCcsIGRlc2M6ICfrs7jrrLgnfVxuICAgICAgICAgICAgICAgICAgICBdXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIHRpdGxlOiAnSW5saW5lIEVkaXRvcicsXG4gICAgICAgICAgICAgICAgICAgIGNvbW1hbmRzOiBbXG4gICAgICAgICAgICAgICAgICAgICAgICB7dmFsOiAnT1NrZXlFJywgZGVzYzogJ1Nob3cgdGhlIGVkaXRvcid9XG4gICAgICAgICAgICAgICAgICAgIF1cbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgdGl0bGU6ICdDb21tb24gYWN0aW9ucycsXG4gICAgICAgICAgICAgICAgICAgIGNvbW1hbmRzOiBbXG4gICAgICAgICAgICAgICAgICAgICAgICB7dmFsOiAnT1NrZXlDJywgZGVzYzogJ0NvcHknfSxcbiAgICAgICAgICAgICAgICAgICAgICAgIHt2YWw6ICdPU2tleVgnLCBkZXNjOiAnQ3V0J30sXG4gICAgICAgICAgICAgICAgICAgICAgICB7dmFsOiAnT1NrZXlWJywgZGVzYzogJ1Bhc3RlJ30sXG4gICAgICAgICAgICAgICAgICAgICAgICB7dmFsOiAnT1NrZXlaJywgZGVzYzogJ1VuZG8nfSxcbiAgICAgICAgICAgICAgICAgICAgICAgIHt2YWw6ICdPU2tleVNoaWZ0K1onLCBkZXNjOiAnUmVkbyd9LFxuICAgICAgICAgICAgICAgICAgICAgICAge3ZhbDogJ09Ta2V5SycsIGRlc2M6ICdJbnNlcnQgTGluayd9LFxuICAgICAgICAgICAgICAgICAgICAgICAge3ZhbDogJ09Ta2V5UCcsIGRlc2M6ICdJbnNlcnQgSW1hZ2UnfVxuICAgICAgICAgICAgICAgICAgICBdXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIHRpdGxlOiAnQmFzaWMgRm9ybWF0dGluZycsXG4gICAgICAgICAgICAgICAgICAgIGNvbW1hbmRzOiBbXG4gICAgICAgICAgICAgICAgICAgICAgICB7dmFsOiAnT1NrZXlBJywgZGVzYzogJ1NlbGVjdCBBbGwnfSxcbiAgICAgICAgICAgICAgICAgICAgICAgIHt2YWw6ICdPU2tleUInLCBkZXNjOiAnQm9sZCd9LFxuICAgICAgICAgICAgICAgICAgICAgICAge3ZhbDogJ09Ta2V5SScsIGRlc2M6ICdJdGFsaWMnfSxcbiAgICAgICAgICAgICAgICAgICAgICAgIHt2YWw6ICdPU2tleVUnLCBkZXNjOiAnVW5kZXJsaW5lJ30sXG4gICAgICAgICAgICAgICAgICAgICAgICB7dmFsOiAnT1NrZXlTJywgZGVzYzogJ1N0cmlrZXRocm91Z2gnfSxcbiAgICAgICAgICAgICAgICAgICAgICAgIHt2YWw6ICdPU2tleV0nLCBkZXNjOiAnSW5jcmVhc2UgSW5kZW50J30sXG4gICAgICAgICAgICAgICAgICAgICAgICB7dmFsOiAnT1NrZXlbJywgZGVzYzogJ0RlY3JlYXNlIEluZGVudCd9XG4gICAgICAgICAgICAgICAgICAgIF1cbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgdGl0bGU6ICdRdW90ZScsXG4gICAgICAgICAgICAgICAgICAgIGNvbW1hbmRzOiBbXG4gICAgICAgICAgICAgICAgICAgICAgICB7dmFsOiAnT1NrZXlcXCcnLCBkZXNjOiAnSW5jcmVhc2UgcXVvdGUgbGV2ZWwnfSxcbiAgICAgICAgICAgICAgICAgICAgICAgIHt2YWw6ICdPU2tleVNoaWZ0K1xcJycsIGRlc2M6ICdEZWNyZWFzZSBxdW90ZSBsZXZlbCd9XG4gICAgICAgICAgICAgICAgICAgIF1cbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgdGl0bGU6ICdJbWFnZSAvIFZpZGVvJyxcbiAgICAgICAgICAgICAgICAgICAgY29tbWFuZHM6IFtcbiAgICAgICAgICAgICAgICAgICAgICAgIHt2YWw6ICdPU2tleSsnLCBkZXNjOiAnUmVzaXplIGxhcmdlcid9LFxuICAgICAgICAgICAgICAgICAgICAgICAge3ZhbDogJ09Ta2V5LScsIGRlc2M6ICdSZXNpemUgc21hbGxlcid9XG4gICAgICAgICAgICAgICAgICAgIF1cbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgdGl0bGU6ICdUYWJsZScsXG4gICAgICAgICAgICAgICAgICAgIGNvbW1hbmRzOiBbXG4gICAgICAgICAgICAgICAgICAgICAgICB7dmFsOiAnQWx0K1NwYWNlJywgZGVzYzogJ1NlbGVjdCB0YWJsZSBjZWxsJ30sXG4gICAgICAgICAgICAgICAgICAgICAgICB7dmFsOiAnU2hpZnQrTGVmdC9SaWdodCBhcnJvdycsIGRlc2M6ICdFeHRlbmQgc2VsZWN0aW9uIG9uZSBjZWxsJ30sXG4gICAgICAgICAgICAgICAgICAgICAgICB7dmFsOiAnU2hpZnQrVXAvRG93biBhcnJvdycsIGRlc2M6ICdFeHRlbmQgc2VsZWN0aW9uIG9uZSByb3cnfVxuICAgICAgICAgICAgICAgICAgICBdXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIHRpdGxlOiAnTmF2aWdhdGlvbicsXG4gICAgICAgICAgICAgICAgICAgIGNvbW1hbmRzOiBbXG4gICAgICAgICAgICAgICAgICAgICAgICB7dmFsOiAnT1NrZXkvJywgZGVzYzogJ1Nob3J0Y3V0cyd9LFxuICAgICAgICAgICAgICAgICAgICAgICAge3ZhbDogJ0FsdCtGMTAnLCBkZXNjOiAnRm9jdXMgcG9wdXAgLyB0b29sYmFyJ30sXG4gICAgICAgICAgICAgICAgICAgICAgICB7dmFsOiAnRXNjJywgZGVzYzogJ1JldHVybiBmb2N1cyB0byBwcmV2aW91cyBwb3NpdGlvbid9XG4gICAgICAgICAgICAgICAgICAgIF1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICBdLFxuICAgICAgICB9O1xuICAgIH1cblxuICAgIGdldFRvb2xiYXIodHlwZTogc3RyaW5nID0gJ2RlZmF1bHQnKSB7XG4gICAgICAgIGlmICh0eXBlID09PSAnZGVmYXVsdCcpIHtcbiAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgdG9vbGJhckJ1dHRvbnM6IHtcbiAgICAgICAgICAgICAgICAgICAgbW9yZVRleHQ6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJ1dHRvbnM6IFsnZm9udC13ZWlnaHQtZHJvcCcsICdmb250RmFtaWx5JywgJ2ZvbnRTaXplJywgJ3RleHRDb2xvcicsICdjbGVhckZvcm1hdHRpbmcnLCAnaXRhbGljJywgJ3N0cmlrZVRocm91Z2gnLCAnc3Vic2NyaXB0JywgJ3N1cGVyc2NyaXB0JywgJ2JhY2tncm91bmRDb2xvcicsICdpbmxpbmVDbGFzcycsICdpbmxpbmVTdHlsZSddLFxuICAgICAgICAgICAgICAgICAgICAgICAgYnV0dG9uc1Zpc2libGU6IDVcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgbW9yZVBhcmFncmFwaDoge1xuICAgICAgICAgICAgICAgICAgICAgICAgYnV0dG9uczogWydwYXJhZ3JhcGhGb3JtYXQnLCAnYWxpZ25MZWZ0JywgJ2FsaWduQ2VudGVyJywgJ2Zvcm1hdFVMJywgJ3F1b3RlJywgJ2FsaWduUmlnaHQnLCAnYWxpZ25KdXN0aWZ5JywgJ2Zvcm1hdE9MU2ltcGxlJywgJ2Zvcm1hdE9MJywgJ3BhcmFncmFwaFN0eWxlJywgJ2xpbmVIZWlnaHQnLCAnb3V0ZGVudCcsICdpbmRlbnQnXSxcbiAgICAgICAgICAgICAgICAgICAgICAgIGJ1dHRvbnNWaXNpYmxlOiA1XG4gICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgIG1vcmVSaWNoOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBidXR0b25zOiBbJ2luc2VydExpbmsnLCAnaW5zZXJ0SW1hZ2UnLCAnaW5zZXJ0VmlkZW8nLCAnaW5zZXJ0SFInLCAnaW5zZXJ0VGFibGUnLCAnZW1vdGljb25zJywgJ2ZvbnRBd2Vzb21lJywgJ3NwZWNpYWxDaGFyYWN0ZXJzJywgJ2VtYmVkbHknLCAnaW5zZXJ0RmlsZSddLFxuICAgICAgICAgICAgICAgICAgICAgICAgYnV0dG9uc1Zpc2libGU6IDRcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgbW9yZU1pc2M6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJ1dHRvbnM6IFsndW5kbycsICdyZWRvJywgJ2Z1bGxzY3JlZW4nLCAncHJpbnQnLCAnZ2V0UERGJywgJ3NwZWxsQ2hlY2tlcicsICdzZWxlY3RBbGwnLCAnaHRtbCcsICdoZWxwJ10sXG4gICAgICAgICAgICAgICAgICAgICAgICBhbGlnbjogJ3JpZ2h0JyxcbiAgICAgICAgICAgICAgICAgICAgICAgIGJ1dHRvbnNWaXNpYmxlOiAzXG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIHRvb2xiYXJCdXR0b25zU206IHtcbiAgICAgICAgICAgICAgICAgICAgbW9yZVRleHQ6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJ1dHRvbnM6IFsnZm9udC13ZWlnaHQtZHJvcCcsICd1bmRlcmxpbmUnLCAnc3RyaWtlVGhyb3VnaCcsICdzdWJzY3JpcHQnLCAnc3VwZXJzY3JpcHQnLCAnZm9udEZhbWlseScsICdmb250U2l6ZScsICd0ZXh0Q29sb3InLCAnYmFja2dyb3VuZENvbG9yJywgJ2lubGluZUNsYXNzJywgJ2lubGluZVN0eWxlJywgJ2NsZWFyRm9ybWF0dGluZyddLFxuICAgICAgICAgICAgICAgICAgICAgICAgYnV0dG9uc1Zpc2libGU6IDJcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgbW9yZVBhcmFncmFwaDoge1xuICAgICAgICAgICAgICAgICAgICAgICAgYnV0dG9uczogWydhbGlnbkxlZnQnLCAnYWxpZ25DZW50ZXInLCAnZm9ybWF0T0xTaW1wbGUnLCAnYWxpZ25SaWdodCcsICdhbGlnbkp1c3RpZnknLCAnZm9ybWF0T0wnLCAnZm9ybWF0VUwnLCAncGFyYWdyYXBoRm9ybWF0JywgJ3BhcmFncmFwaFN0eWxlJywgJ2xpbmVIZWlnaHQnLCAnb3V0ZGVudCcsICdpbmRlbnQnLCAncXVvdGUnXSxcbiAgICAgICAgICAgICAgICAgICAgICAgIGJ1dHRvbnNWaXNpYmxlOiAyXG4gICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgIG1vcmVSaWNoOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBidXR0b25zOiBbJ2luc2VydExpbmsnLCAnaW5zZXJ0SW1hZ2UnLCAnaW5zZXJ0VmlkZW8nLCAnaW5zZXJ0VGFibGUnLCAnZW1vdGljb25zJywgJ2ZvbnRBd2Vzb21lJywgJ3NwZWNpYWxDaGFyYWN0ZXJzJywgJ2VtYmVkbHknLCAnaW5zZXJ0RmlsZScsICdpbnNlcnRIUiddLFxuICAgICAgICAgICAgICAgICAgICAgICAgYnV0dG9uc1Zpc2libGU6IDJcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgbW9yZU1pc2M6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJ1dHRvbnM6IFsndW5kbycsICdyZWRvJywgJ2Z1bGxzY3JlZW4nLCAncHJpbnQnLCAnZ2V0UERGJywgJ3NwZWxsQ2hlY2tlcicsICdzZWxlY3RBbGwnLCAnaHRtbCcsICdoZWxwJ10sXG4gICAgICAgICAgICAgICAgICAgICAgICBhbGlnbjogJ3JpZ2h0JyxcbiAgICAgICAgICAgICAgICAgICAgICAgIGJ1dHRvbnNWaXNpYmxlOiAyXG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfTtcbiAgICAgICAgfSBlbHNlIGlmICh0eXBlID09PSAnc2ltcGxlJykge1xuICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICB0b29sYmFyQnV0dG9uczogW1snZm9udC13ZWlnaHQtZHJvcCcsICdmb250RmFtaWx5JywgJ2ZvbnRTaXplJywgJ3RleHRDb2xvcicsICdjbGVhckZvcm1hdHRpbmcnXSwgWydwYXJhZ3JhcGhGb3JtYXQnLCAnYWxpZ25MZWZ0JywgJ2FsaWduQ2VudGVyJywgJ2Zvcm1hdFVMJywgJ3F1b3RlJ10sIFsnaW5zZXJ0TGluayddXSxcbiAgICAgICAgICAgICAgICB0b29sYmFyQnV0dG9uc1NtOiBbWydmb250LXdlaWdodC1kcm9wJywgJ2ZvbnRGYW1pbHknLCAnZm9udFNpemUnLCAndGV4dENvbG9yJywgJ2NsZWFyRm9ybWF0dGluZyddLCBbJ3BhcmFncmFwaEZvcm1hdCcsICdhbGlnbkxlZnQnLCAnYWxpZ25DZW50ZXInLCAnZm9ybWF0VUwnLCAncXVvdGUnXSwgWydpbnNlcnRMaW5rJ11dLFxuICAgICAgICAgICAgfTtcbiAgICAgICAgfVxuXG4gICAgfVxuXG5cbn1cbiJdfQ==
|