@dignite-ng/expand.ck-editor 0.0.8 → 0.0.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/config/ck-editor-config.module.d.ts +8 -0
- package/config/enums/index.d.ts +1 -0
- package/config/enums/route-names.d.ts +3 -0
- package/config/index.d.ts +5 -0
- package/config/providers/index.d.ts +1 -0
- package/config/providers/route.provider.d.ts +8 -0
- package/config/public-api.d.ts +3 -0
- package/esm2022/config/ck-editor-config.module.mjs +18 -0
- package/esm2022/config/dignite-ng-expand.ck-editor-config.mjs +5 -0
- package/esm2022/config/enums/index.mjs +2 -0
- package/esm2022/config/enums/route-names.mjs +2 -0
- package/esm2022/config/providers/index.mjs +2 -0
- package/esm2022/config/providers/route.provider.mjs +24 -0
- package/esm2022/config/public-api.mjs +4 -0
- package/esm2022/lib/ck-editor-routing.module.mjs +6 -2
- package/esm2022/lib/ck-editor.module.mjs +5 -2
- package/esm2022/lib/components/dome/ck-editor-dome.component.mjs +75 -0
- package/esm2022/lib/dynamic-form/ck-editor/ck-editor-control.component.mjs +86 -77
- package/esm2022/lib/object/ck-editor-object.mjs +909 -0
- package/esm2022/public-api.mjs +2 -1
- package/fesm2022/dignite-ng-expand.ck-editor-config.mjs +47 -0
- package/fesm2022/dignite-ng-expand.ck-editor-config.mjs.map +1 -0
- package/fesm2022/dignite-ng-expand.ck-editor.mjs +1059 -112
- package/fesm2022/dignite-ng-expand.ck-editor.mjs.map +1 -1
- package/lib/ck-editor.module.d.ts +7 -6
- package/lib/components/dome/ck-editor-dome.component.d.ts +23 -0
- package/lib/dynamic-form/ck-editor/ck-editor-control.component.d.ts +0 -17
- package/lib/object/ck-editor-object.d.ts +29 -0
- package/package.json +9 -3
- package/public-api.d.ts +1 -0
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { ModuleWithProviders } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
export declare class CkEditorConfigModule {
|
|
4
|
+
static forRoot(): ModuleWithProviders<CkEditorConfigModule>;
|
|
5
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<CkEditorConfigModule, never>;
|
|
6
|
+
static ɵmod: i0.ɵɵNgModuleDeclaration<CkEditorConfigModule, never, never, never>;
|
|
7
|
+
static ɵinj: i0.ɵɵInjectorDeclaration<CkEditorConfigModule>;
|
|
8
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './route-names';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './route.provider';
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { RoutesService } from '@abp/ng.core';
|
|
2
|
+
export declare const ck_editor_ROUTE_PROVIDERS: {
|
|
3
|
+
provide: import("@angular/core").InjectionToken<readonly (() => import("rxjs").Observable<unknown> | Promise<unknown> | void)[]>;
|
|
4
|
+
useFactory: typeof configureRoutes;
|
|
5
|
+
deps: (typeof RoutesService)[];
|
|
6
|
+
multi: boolean;
|
|
7
|
+
}[];
|
|
8
|
+
export declare function configureRoutes(routesService: RoutesService): () => void;
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { NgModule } from '@angular/core';
|
|
2
|
+
import { ck_editor_ROUTE_PROVIDERS } from './providers/route.provider';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
export class CkEditorConfigModule {
|
|
5
|
+
static forRoot() {
|
|
6
|
+
return {
|
|
7
|
+
ngModule: CkEditorConfigModule,
|
|
8
|
+
providers: [ck_editor_ROUTE_PROVIDERS],
|
|
9
|
+
};
|
|
10
|
+
}
|
|
11
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.5", ngImport: i0, type: CkEditorConfigModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
12
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.1.5", ngImport: i0, type: CkEditorConfigModule });
|
|
13
|
+
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.1.5", ngImport: i0, type: CkEditorConfigModule });
|
|
14
|
+
}
|
|
15
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.5", ngImport: i0, type: CkEditorConfigModule, decorators: [{
|
|
16
|
+
type: NgModule
|
|
17
|
+
}] });
|
|
18
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2stZWRpdG9yLWNvbmZpZy5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9jay1lZGl0b3IvY29uZmlnL3NyYy9jay1lZGl0b3ItY29uZmlnLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQXVCLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM5RCxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQzs7QUFHdkUsTUFBTSxPQUFPLG9CQUFvQjtJQUMvQixNQUFNLENBQUMsT0FBTztRQUNaLE9BQU87WUFDTCxRQUFRLEVBQUUsb0JBQW9CO1lBQzlCLFNBQVMsRUFBRSxDQUFDLHlCQUF5QixDQUFDO1NBQ3ZDLENBQUM7SUFDSixDQUFDO3VHQU5VLG9CQUFvQjt3R0FBcEIsb0JBQW9CO3dHQUFwQixvQkFBb0I7OzJGQUFwQixvQkFBb0I7a0JBRGhDLFFBQVEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBNb2R1bGVXaXRoUHJvdmlkZXJzLCBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBja19lZGl0b3JfUk9VVEVfUFJPVklERVJTIH0gZnJvbSAnLi9wcm92aWRlcnMvcm91dGUucHJvdmlkZXInO1xyXG5cclxuQE5nTW9kdWxlKClcclxuZXhwb3J0IGNsYXNzIENrRWRpdG9yQ29uZmlnTW9kdWxlIHtcclxuICBzdGF0aWMgZm9yUm9vdCgpOiBNb2R1bGVXaXRoUHJvdmlkZXJzPENrRWRpdG9yQ29uZmlnTW9kdWxlPiB7XHJcbiAgICByZXR1cm4ge1xyXG4gICAgICBuZ01vZHVsZTogQ2tFZGl0b3JDb25maWdNb2R1bGUsXHJcbiAgICAgIHByb3ZpZGVyczogW2NrX2VkaXRvcl9ST1VURV9QUk9WSURFUlNdLFxyXG4gICAgfTtcclxuICB9XHJcbn1cclxuIl19
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Generated bundle index. Do not edit.
|
|
3
|
+
*/
|
|
4
|
+
export * from './public-api';
|
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlnbml0ZS1uZy1leHBhbmQuY2stZWRpdG9yLWNvbmZpZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2NrLWVkaXRvci9jb25maWcvc3JjL2RpZ25pdGUtbmctZXhwYW5kLmNrLWVkaXRvci1jb25maWcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLGNBQWMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogR2VuZXJhdGVkIGJ1bmRsZSBpbmRleC4gRG8gbm90IGVkaXQuXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9wdWJsaWMtYXBpJztcbiJdfQ==
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export * from './route-names';
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jay1lZGl0b3IvY29uZmlnL3NyYy9lbnVtcy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLGVBQWUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vcm91dGUtbmFtZXMnO1xyXG4iXX0=
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGUtbmFtZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jay1lZGl0b3IvY29uZmlnL3NyYy9lbnVtcy9yb3V0ZS1uYW1lcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiXHJcbmV4cG9ydCBjb25zdCBlbnVtIGVDa0VkaXRvclJvdXRlTmFtZXMge1xyXG4gXHJcbiAgQ2tFZGl0b3JEZW1vID0gXCJDay1FZGl0b3IgRGVtb1wiLFxyXG4gIFxyXG59XHJcbiJdfQ==
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export * from './route.provider';
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jay1lZGl0b3IvY29uZmlnL3NyYy9wcm92aWRlcnMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxrQkFBa0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vcm91dGUucHJvdmlkZXInO1xyXG4iXX0=
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { RoutesService } from '@abp/ng.core';
|
|
2
|
+
import { APP_INITIALIZER } from '@angular/core';
|
|
3
|
+
export const ck_editor_ROUTE_PROVIDERS = [
|
|
4
|
+
{
|
|
5
|
+
provide: APP_INITIALIZER,
|
|
6
|
+
useFactory: configureRoutes,
|
|
7
|
+
deps: [RoutesService],
|
|
8
|
+
multi: true,
|
|
9
|
+
},
|
|
10
|
+
];
|
|
11
|
+
export function configureRoutes(routesService) {
|
|
12
|
+
return () => {
|
|
13
|
+
routesService.add([
|
|
14
|
+
{
|
|
15
|
+
path: '/ck-editor/dome',
|
|
16
|
+
name: "Ck-Editor Demo" /* eCkEditorRouteNames.CkEditorDemo */,
|
|
17
|
+
iconClass: 'fas fa fa-file-archive-o',
|
|
18
|
+
layout: "application" /* eLayoutType.application */,
|
|
19
|
+
order: 9,
|
|
20
|
+
},
|
|
21
|
+
]);
|
|
22
|
+
};
|
|
23
|
+
}
|
|
24
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGUucHJvdmlkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jay1lZGl0b3IvY29uZmlnL3NyYy9wcm92aWRlcnMvcm91dGUucHJvdmlkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFlLGFBQWEsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUMxRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBR2hELE1BQU0sQ0FBQyxNQUFNLHlCQUF5QixHQUFHO0lBQ3ZDO1FBQ0UsT0FBTyxFQUFFLGVBQWU7UUFDeEIsVUFBVSxFQUFFLGVBQWU7UUFDM0IsSUFBSSxFQUFFLENBQUMsYUFBYSxDQUFDO1FBQ3JCLEtBQUssRUFBRSxJQUFJO0tBQ1o7Q0FDRixDQUFDO0FBRUYsTUFBTSxVQUFVLGVBQWUsQ0FBQyxhQUE0QjtJQUMxRCxPQUFPLEdBQUcsRUFBRTtRQUNWLGFBQWEsQ0FBQyxHQUFHLENBQUM7WUFDaEI7Z0JBQ0UsSUFBSSxFQUFFLGlCQUFpQjtnQkFDdkIsSUFBSSx5REFBaUM7Z0JBQ3JDLFNBQVMsRUFBRSwwQkFBMEI7Z0JBQ3JDLE1BQU0sNkNBQXlCO2dCQUMvQixLQUFLLEVBQUUsQ0FBQzthQUNUO1NBQ0YsQ0FBQyxDQUFDO0lBQ0wsQ0FBQyxDQUFDO0FBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGVMYXlvdXRUeXBlLCBSb3V0ZXNTZXJ2aWNlIH0gZnJvbSAnQGFicC9uZy5jb3JlJztcclxuaW1wb3J0IHsgQVBQX0lOSVRJQUxJWkVSIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IGVDa0VkaXRvclJvdXRlTmFtZXMgfSBmcm9tICcuLi9lbnVtcyc7XHJcblxyXG5leHBvcnQgY29uc3QgY2tfZWRpdG9yX1JPVVRFX1BST1ZJREVSUyA9IFtcclxuICB7XHJcbiAgICBwcm92aWRlOiBBUFBfSU5JVElBTElaRVIsXHJcbiAgICB1c2VGYWN0b3J5OiBjb25maWd1cmVSb3V0ZXMsXHJcbiAgICBkZXBzOiBbUm91dGVzU2VydmljZV0sXHJcbiAgICBtdWx0aTogdHJ1ZSxcclxuICB9LFxyXG5dO1xyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGNvbmZpZ3VyZVJvdXRlcyhyb3V0ZXNTZXJ2aWNlOiBSb3V0ZXNTZXJ2aWNlKSB7XHJcbiAgcmV0dXJuICgpID0+IHtcclxuICAgIHJvdXRlc1NlcnZpY2UuYWRkKFtcclxuICAgICAge1xyXG4gICAgICAgIHBhdGg6ICcvY2stZWRpdG9yL2RvbWUnLFxyXG4gICAgICAgIG5hbWU6ZUNrRWRpdG9yUm91dGVOYW1lcy5Da0VkaXRvckRlbW8sXHJcbiAgICAgICAgaWNvbkNsYXNzOiAnZmFzIGZhIGZhLWZpbGUtYXJjaGl2ZS1vJyxcclxuICAgICAgICBsYXlvdXQ6IGVMYXlvdXRUeXBlLmFwcGxpY2F0aW9uLFxyXG4gICAgICAgIG9yZGVyOiA5LFxyXG4gICAgICB9LFxyXG4gICAgXSk7XHJcbiAgfTtcclxufVxyXG4iXX0=
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
export * from './enums';
|
|
2
|
+
export * from './ck-editor-config.module';
|
|
3
|
+
export * from './providers';
|
|
4
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2NrLWVkaXRvci9jb25maWcvc3JjL3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxTQUFTLENBQUM7QUFDeEIsY0FBYywyQkFBMkIsQ0FBQztBQUMxQyxjQUFjLGFBQWEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vZW51bXMnO1xyXG5leHBvcnQgKiBmcm9tICcuL2NrLWVkaXRvci1jb25maWcubW9kdWxlJztcclxuZXhwb3J0ICogZnJvbSAnLi9wcm92aWRlcnMnO1xyXG4iXX0=
|
|
@@ -1,8 +1,12 @@
|
|
|
1
1
|
import { NgModule } from '@angular/core';
|
|
2
2
|
import { RouterModule } from '@angular/router';
|
|
3
|
+
import { CkEditorDomeComponent } from './components/dome/ck-editor-dome.component';
|
|
3
4
|
import * as i0 from "@angular/core";
|
|
4
5
|
import * as i1 from "@angular/router";
|
|
5
|
-
const routes = [
|
|
6
|
+
const routes = [{
|
|
7
|
+
path: 'dome',
|
|
8
|
+
component: CkEditorDomeComponent,
|
|
9
|
+
}];
|
|
6
10
|
export class CkEditorRoutingModule {
|
|
7
11
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.5", ngImport: i0, type: CkEditorRoutingModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
8
12
|
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.1.5", ngImport: i0, type: CkEditorRoutingModule, imports: [i1.RouterModule], exports: [RouterModule] });
|
|
@@ -15,4 +19,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.5", ngImpor
|
|
|
15
19
|
exports: [RouterModule],
|
|
16
20
|
}]
|
|
17
21
|
}] });
|
|
18
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
22
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2stZWRpdG9yLXJvdXRpbmcubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvY2stZWRpdG9yL3NyYy9saWIvY2stZWRpdG9yLXJvdXRpbmcubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFlBQVksRUFBVSxNQUFNLGlCQUFpQixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDRDQUE0QyxDQUFDOzs7QUFFbkYsTUFBTSxNQUFNLEdBQVcsQ0FBQztRQUN0QixJQUFJLEVBQUMsTUFBTTtRQUNYLFNBQVMsRUFBRSxxQkFBcUI7S0FDakMsQ0FBQyxDQUFBO0FBTUYsTUFBTSxPQUFPLHFCQUFxQjt1R0FBckIscUJBQXFCO3dHQUFyQixxQkFBcUIsd0NBRnRCLFlBQVk7d0dBRVgscUJBQXFCLFlBSHRCLFlBQVksQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLEVBQzdCLFlBQVk7OzJGQUVYLHFCQUFxQjtrQkFKakMsUUFBUTttQkFBQztvQkFDUixPQUFPLEVBQUUsQ0FBQyxZQUFZLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxDQUFDO29CQUN4QyxPQUFPLEVBQUUsQ0FBQyxZQUFZLENBQUM7aUJBQ3hCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFJvdXRlck1vZHVsZSwgUm91dGVzIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IENrRWRpdG9yRG9tZUNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9kb21lL2NrLWVkaXRvci1kb21lLmNvbXBvbmVudCc7XG5cbmNvbnN0IHJvdXRlczogUm91dGVzID0gW3tcbiAgcGF0aDonZG9tZScsXG4gIGNvbXBvbmVudDogQ2tFZGl0b3JEb21lQ29tcG9uZW50LFxufV1cblxuQE5nTW9kdWxlKHtcbiAgaW1wb3J0czogW1JvdXRlck1vZHVsZS5mb3JDaGlsZChyb3V0ZXMpXSxcbiAgZXhwb3J0czogW1JvdXRlck1vZHVsZV0sXG59KVxuZXhwb3J0IGNsYXNzIENrRWRpdG9yUm91dGluZ01vZHVsZSB7IH1cbiJdfQ==
|
|
@@ -5,11 +5,13 @@ import { FormsModule, ReactiveFormsModule } from '@angular/forms';
|
|
|
5
5
|
import { ThemeSharedModule } from '@abp/ng.theme.shared';
|
|
6
6
|
import { CkEditorConfigComponent, CkEditorControlComponent } from './dynamic-form';
|
|
7
7
|
import { CKEditorModule } from '@ckeditor/ckeditor5-angular';
|
|
8
|
+
import { CkEditorDomeComponent } from './components/dome/ck-editor-dome.component';
|
|
8
9
|
import * as i0 from "@angular/core";
|
|
9
10
|
export class CkEditorModule {
|
|
10
11
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.5", ngImport: i0, type: CkEditorModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
11
12
|
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.1.5", ngImport: i0, type: CkEditorModule, declarations: [CkEditorControlComponent,
|
|
12
|
-
CkEditorConfigComponent
|
|
13
|
+
CkEditorConfigComponent,
|
|
14
|
+
CkEditorDomeComponent], imports: [FormsModule,
|
|
13
15
|
CoreModule,
|
|
14
16
|
ThemeSharedModule,
|
|
15
17
|
ReactiveFormsModule,
|
|
@@ -28,6 +30,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.5", ngImpor
|
|
|
28
30
|
declarations: [
|
|
29
31
|
CkEditorControlComponent,
|
|
30
32
|
CkEditorConfigComponent,
|
|
33
|
+
CkEditorDomeComponent,
|
|
31
34
|
],
|
|
32
35
|
imports: [
|
|
33
36
|
FormsModule,
|
|
@@ -40,4 +43,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.5", ngImpor
|
|
|
40
43
|
exports: []
|
|
41
44
|
}]
|
|
42
45
|
}] });
|
|
43
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
46
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2stZWRpdG9yLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2NrLWVkaXRvci9zcmMvbGliL2NrLWVkaXRvci5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUV6QyxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUNuRSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQzFDLE9BQU8sRUFBRSxXQUFXLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNsRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN6RCxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNuRixPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDN0QsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sNENBQTRDLENBQUM7O0FBbUJuRixNQUFNLE9BQU8sY0FBYzt1R0FBZCxjQUFjO3dHQUFkLGNBQWMsaUJBZnZCLHdCQUF3QjtZQUN4Qix1QkFBdUI7WUFDdkIscUJBQXFCLGFBR3JCLFdBQVc7WUFDWCxVQUFVO1lBQ1YsaUJBQWlCO1lBQ2pCLG1CQUFtQjtZQUNuQixxQkFBcUI7WUFDckIsY0FBYzt3R0FLTCxjQUFjLFlBVnZCLFdBQVc7WUFDWCxVQUFVO1lBQ1YsaUJBQWlCO1lBQ2pCLG1CQUFtQjtZQUNuQixxQkFBcUI7WUFDckIsY0FBYzs7MkZBS0wsY0FBYztrQkFqQjFCLFFBQVE7bUJBQUM7b0JBQ1IsWUFBWSxFQUFFO3dCQUNaLHdCQUF3Qjt3QkFDeEIsdUJBQXVCO3dCQUN2QixxQkFBcUI7cUJBQ3RCO29CQUNELE9BQU8sRUFBRTt3QkFDUCxXQUFXO3dCQUNYLFVBQVU7d0JBQ1YsaUJBQWlCO3dCQUNqQixtQkFBbUI7d0JBQ25CLHFCQUFxQjt3QkFDckIsY0FBYztxQkFDZjtvQkFDRCxPQUFPLEVBQUUsRUFDUjtpQkFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IENrRWRpdG9yUm91dGluZ01vZHVsZSB9IGZyb20gJy4vY2stZWRpdG9yLXJvdXRpbmcubW9kdWxlJztcbmltcG9ydCB7IENvcmVNb2R1bGUgfSBmcm9tICdAYWJwL25nLmNvcmUnO1xuaW1wb3J0IHsgRm9ybXNNb2R1bGUsIFJlYWN0aXZlRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBUaGVtZVNoYXJlZE1vZHVsZSB9IGZyb20gJ0BhYnAvbmcudGhlbWUuc2hhcmVkJztcbmltcG9ydCB7IENrRWRpdG9yQ29uZmlnQ29tcG9uZW50LCBDa0VkaXRvckNvbnRyb2xDb21wb25lbnQgfSBmcm9tICcuL2R5bmFtaWMtZm9ybSc7XG5pbXBvcnQgeyBDS0VkaXRvck1vZHVsZSB9IGZyb20gJ0Bja2VkaXRvci9ja2VkaXRvcjUtYW5ndWxhcic7XG5pbXBvcnQgeyBDa0VkaXRvckRvbWVDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvZG9tZS9jay1lZGl0b3ItZG9tZS5jb21wb25lbnQnO1xuXG5ATmdNb2R1bGUoe1xuICBkZWNsYXJhdGlvbnM6IFtcbiAgICBDa0VkaXRvckNvbnRyb2xDb21wb25lbnQsXG4gICAgQ2tFZGl0b3JDb25maWdDb21wb25lbnQsXG4gICAgQ2tFZGl0b3JEb21lQ29tcG9uZW50LFxuICBdLFxuICBpbXBvcnRzOiBbXG4gICAgRm9ybXNNb2R1bGUsXG4gICAgQ29yZU1vZHVsZSxcbiAgICBUaGVtZVNoYXJlZE1vZHVsZSxcbiAgICBSZWFjdGl2ZUZvcm1zTW9kdWxlLFxuICAgIENrRWRpdG9yUm91dGluZ01vZHVsZSxcbiAgICBDS0VkaXRvck1vZHVsZVxuICBdLFxuICBleHBvcnRzOiBbXG4gIF1cbn0pXG5leHBvcnQgY2xhc3MgQ2tFZGl0b3JNb2R1bGUgeyB9XG4iXX0=
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
import { Component, inject } from '@angular/core';
|
|
2
|
+
// import '@ckeditor/ckeditor5-build-classic/build/translations/zh-cn';
|
|
3
|
+
// import '@ckeditor/ckeditor5-language/build/translations/zh-cn';
|
|
4
|
+
// import '@ckeditor/ckeditor5-language/build/translations/de-ch';
|
|
5
|
+
// import '@ckeditor/ckeditor5-language/build/translations/en-gb';
|
|
6
|
+
// import '@ckeditor/ckeditor5-language/build/translations/pt-br';
|
|
7
|
+
// import '@ckeditor/ckeditor5-language/build/translations/zh';
|
|
8
|
+
// import '@ckeditor/ckeditor5-language/build/translations/de';
|
|
9
|
+
// import '@ckeditor/ckeditor5-language/build/translations/ar';
|
|
10
|
+
// import '@ckeditor/ckeditor5-language/build/translations/cs';
|
|
11
|
+
// import '@ckeditor/ckeditor5-language/build/translations/hi';
|
|
12
|
+
// import '@ckeditor/ckeditor5-language/build/translations/fi';
|
|
13
|
+
// import '@ckeditor/ckeditor5-language/build/translations/hu';
|
|
14
|
+
// import '@ckeditor/ckeditor5-language/build/translations/fr';
|
|
15
|
+
// import '@ckeditor/ckeditor5-language/build/translations/it';
|
|
16
|
+
// import '@ckeditor/ckeditor5-language/build/translations/sk';
|
|
17
|
+
// import '@ckeditor/ckeditor5-language/build/translations/ja';
|
|
18
|
+
// import '@ckeditor/ckeditor5-language/build/translations/es';
|
|
19
|
+
// import '@ckeditor/ckeditor5-language/build/translations/vi';
|
|
20
|
+
// import premiumFeaturesTranslations from 'ckeditor5-premium-features/build/translations/zh-cn.js';
|
|
21
|
+
import { CkEditorTypesObject } from '../../object/ck-editor-object';
|
|
22
|
+
import { Bold, ClassicEditor, Essentials, Italic, Paragraph, Undo } from 'ckeditor5';
|
|
23
|
+
import { LanguagesMap } from '../../enums/languages-map';
|
|
24
|
+
import { ConfigStateService } from '@abp/ng.core';
|
|
25
|
+
import * as i0 from "@angular/core";
|
|
26
|
+
import * as i1 from "@angular/forms";
|
|
27
|
+
import * as i2 from "@angular/common";
|
|
28
|
+
import * as i3 from "@abp/ng.core";
|
|
29
|
+
import * as i4 from "@ckeditor/ckeditor5-angular";
|
|
30
|
+
export class CkEditorDomeComponent {
|
|
31
|
+
config = inject(ConfigStateService);
|
|
32
|
+
currentCulture = this.config.getOne('localization')?.currentCulture?.name;
|
|
33
|
+
// CkEditorTypesObject = CkEditorTypesObject
|
|
34
|
+
Editor = ClassicEditor;
|
|
35
|
+
_config = {
|
|
36
|
+
plugins: [Bold, Essentials, Italic, Paragraph, Undo],
|
|
37
|
+
toolbar: ['undo', 'redo', '|', 'bold', 'italic']
|
|
38
|
+
};
|
|
39
|
+
configType = 'default';
|
|
40
|
+
editorValue = '<p>12233</p>';
|
|
41
|
+
languagesMap = LanguagesMap;
|
|
42
|
+
/**切换类型 */
|
|
43
|
+
switchType(type) {
|
|
44
|
+
this.configType = type;
|
|
45
|
+
this._config_ck = '';
|
|
46
|
+
setTimeout(() => {
|
|
47
|
+
let configs = CkEditorTypesObject[type];
|
|
48
|
+
configs.language = this.languagesMap[this.currentCulture];
|
|
49
|
+
// configs.translations= [coreTranslations]
|
|
50
|
+
this._config_ck = configs;
|
|
51
|
+
}, 0);
|
|
52
|
+
}
|
|
53
|
+
clearconfig() {
|
|
54
|
+
this._config = null;
|
|
55
|
+
}
|
|
56
|
+
/**加载完成 */
|
|
57
|
+
ckReady(editor) {
|
|
58
|
+
const element = editor.ui.getEditableElement();
|
|
59
|
+
const parent = element.parentElement;
|
|
60
|
+
parent.insertBefore(editor.ui.view.toolbar.element, element);
|
|
61
|
+
}
|
|
62
|
+
/**内容改变 */
|
|
63
|
+
ckChange({ editor }) {
|
|
64
|
+
const data = editor.getData();
|
|
65
|
+
this.editorValue = data;
|
|
66
|
+
}
|
|
67
|
+
_config_ck = CkEditorTypesObject['full'];
|
|
68
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.5", ngImport: i0, type: CkEditorDomeComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
69
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.1.5", type: CkEditorDomeComponent, selector: "lib-ck-editor-dome", ngImport: i0, template: "<button class=\"btn btn-sm btn-primary mx-2 mb-2\" (click.stop)=\"switchType('easy')\">\u6781\u7B80</button>\r\n<button class=\"btn btn-sm btn-primary mx-2 mb-2\" (click.stop)=\"switchType('default')\">\u9ED8\u8BA4</button>\r\n<button class=\"btn btn-sm btn-primary mx-2 mb-2\" (click.stop)=\"switchType('standard')\">\u6807\u51C6</button>\r\n<button class=\"btn btn-sm btn-primary mx-2 mb-2\" (click.stop)=\"switchType('full')\">\u5B8C\u6574</button>\r\n\r\n<button class=\"btn btn-sm btn-primary mx-2 mb-2\" (click.stop)=\"clearconfig()\">\u6E05\u7A7A\u914D\u7F6E</button>\r\n\r\n<h3>\u81EA\u5B9A\u4E49\u914D\u7F6E</h3>\r\n<ckeditor #editor [editor]=\"Editor\" *ngIf=\"_config_ck\" [(ngModel)]=\"editorValue\" [config]=\"_config\" ></ckeditor>\r\n\r\n<h3>\u7C7B\u578B</h3>\r\n<ckeditor #editor [editor]=\"Editor\" *ngIf=\"_config_ck\" [(ngModel)]=\"editorValue\" [config]=\"_config_ck\" (change)=\"ckChange($event)\" (ready)=\"ckReady($event)\"></ckeditor>\r\n\r\n{{editorValue}}", styles: [""], dependencies: [{ kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.StopPropagationDirective, selector: "[click.stop]", outputs: ["click.stop"] }, { kind: "component", type: i4.CKEditorComponent, selector: "ckeditor", inputs: ["editor", "config", "data", "tagName", "watchdog", "editorWatchdogConfig", "disableTwoWayDataBinding", "disabled"], outputs: ["ready", "change", "blur", "focus", "error"] }] });
|
|
70
|
+
}
|
|
71
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.5", ngImport: i0, type: CkEditorDomeComponent, decorators: [{
|
|
72
|
+
type: Component,
|
|
73
|
+
args: [{ selector: 'lib-ck-editor-dome', template: "<button class=\"btn btn-sm btn-primary mx-2 mb-2\" (click.stop)=\"switchType('easy')\">\u6781\u7B80</button>\r\n<button class=\"btn btn-sm btn-primary mx-2 mb-2\" (click.stop)=\"switchType('default')\">\u9ED8\u8BA4</button>\r\n<button class=\"btn btn-sm btn-primary mx-2 mb-2\" (click.stop)=\"switchType('standard')\">\u6807\u51C6</button>\r\n<button class=\"btn btn-sm btn-primary mx-2 mb-2\" (click.stop)=\"switchType('full')\">\u5B8C\u6574</button>\r\n\r\n<button class=\"btn btn-sm btn-primary mx-2 mb-2\" (click.stop)=\"clearconfig()\">\u6E05\u7A7A\u914D\u7F6E</button>\r\n\r\n<h3>\u81EA\u5B9A\u4E49\u914D\u7F6E</h3>\r\n<ckeditor #editor [editor]=\"Editor\" *ngIf=\"_config_ck\" [(ngModel)]=\"editorValue\" [config]=\"_config\" ></ckeditor>\r\n\r\n<h3>\u7C7B\u578B</h3>\r\n<ckeditor #editor [editor]=\"Editor\" *ngIf=\"_config_ck\" [(ngModel)]=\"editorValue\" [config]=\"_config_ck\" (change)=\"ckChange($event)\" (ready)=\"ckReady($event)\"></ckeditor>\r\n\r\n{{editorValue}}" }]
|
|
74
|
+
}] });
|
|
75
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2stZWRpdG9yLWRvbWUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2stZWRpdG9yL3NyYy9saWIvY29tcG9uZW50cy9kb21lL2NrLWVkaXRvci1kb21lLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NrLWVkaXRvci9zcmMvbGliL2NvbXBvbmVudHMvZG9tZS9jay1lZGl0b3ItZG9tZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNsRCx1RUFBdUU7QUFDdkUsa0VBQWtFO0FBQ2xFLGtFQUFrRTtBQUNsRSxrRUFBa0U7QUFDbEUsa0VBQWtFO0FBQ2xFLCtEQUErRDtBQUMvRCwrREFBK0Q7QUFDL0QsK0RBQStEO0FBQy9ELCtEQUErRDtBQUMvRCwrREFBK0Q7QUFDL0QsK0RBQStEO0FBQy9ELCtEQUErRDtBQUMvRCwrREFBK0Q7QUFDL0QsK0RBQStEO0FBQy9ELCtEQUErRDtBQUMvRCwrREFBK0Q7QUFDL0QsK0RBQStEO0FBQy9ELCtEQUErRDtBQUUvRCxvR0FBb0c7QUFFcEcsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDcEUsT0FBTyxFQUFFLElBQUksRUFBRSxhQUFhLEVBQWlDLFVBQVUsRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUVwSCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDekQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sY0FBYyxDQUFDOzs7Ozs7QUFRbEQsTUFBTSxPQUFPLHFCQUFxQjtJQUN4QixNQUFNLEdBQXVCLE1BQU0sQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO0lBQ2hFLGNBQWMsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxjQUFjLENBQUMsRUFBRSxjQUFjLEVBQUUsSUFBSSxDQUFDO0lBQzFFLDRDQUE0QztJQUNyQyxNQUFNLEdBQUcsYUFBYSxDQUFDO0lBQzlCLE9BQU8sR0FBaUI7UUFDdEIsT0FBTyxFQUFFLENBQUMsSUFBSSxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFFLElBQUksQ0FBQztRQUNwRCxPQUFPLEVBQUUsQ0FBQyxNQUFNLEVBQUUsTUFBTSxFQUFFLEdBQUcsRUFBRSxNQUFNLEVBQUUsUUFBUSxDQUFDO0tBQ2pELENBQUE7SUFDRCxVQUFVLEdBQVEsU0FBUyxDQUFBO0lBRTNCLFdBQVcsR0FBUSxjQUFjLENBQUE7SUFFakMsWUFBWSxHQUFDLFlBQVksQ0FBQTtJQUN6QixVQUFVO0lBQ1YsVUFBVSxDQUFDLElBQWE7UUFDdEIsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUE7UUFDdEIsSUFBSSxDQUFDLFVBQVUsR0FBRyxFQUFFLENBQUE7UUFDcEIsVUFBVSxDQUFDLEdBQUcsRUFBRTtZQUNkLElBQUksT0FBTyxHQUFDLG1CQUFtQixDQUFDLElBQUksQ0FBQyxDQUFDO1lBQ3RDLE9BQU8sQ0FBQyxRQUFRLEdBQUUsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUM7WUFDekQsMkNBQTJDO1lBQzNDLElBQUksQ0FBQyxVQUFVLEdBQUcsT0FBTyxDQUFBO1FBQzNCLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQTtJQUNQLENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUE7SUFDckIsQ0FBQztJQUVELFVBQVU7SUFDVixPQUFPLENBQUMsTUFBdUI7UUFDN0IsTUFBTSxPQUFPLEdBQUcsTUFBTSxDQUFDLEVBQUUsQ0FBQyxrQkFBa0IsRUFBRyxDQUFDO1FBQ2hELE1BQU0sTUFBTSxHQUFHLE9BQU8sQ0FBQyxhQUFjLENBQUM7UUFFdEMsTUFBTSxDQUFDLFlBQVksQ0FDakIsTUFBTSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQVEsRUFDL0IsT0FBTyxDQUNSLENBQUM7SUFFSixDQUFDO0lBQ0QsVUFBVTtJQUNWLFFBQVEsQ0FBQyxFQUFFLE1BQU0sRUFBZTtRQUM5QixNQUFNLElBQUksR0FBRyxNQUFNLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDOUIsSUFBSSxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUE7SUFDekIsQ0FBQztJQUdELFVBQVUsR0FBUSxtQkFBbUIsQ0FBQyxNQUFNLENBQUMsQ0FBQzt1R0FoRG5DLHFCQUFxQjsyRkFBckIscUJBQXFCLDBEQ2xDbEMsMDlCQWFlOzsyRkRxQkYscUJBQXFCO2tCQUxqQyxTQUFTOytCQUNFLG9CQUFvQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbi8vIGltcG9ydCAnQGNrZWRpdG9yL2NrZWRpdG9yNS1idWlsZC1jbGFzc2ljL2J1aWxkL3RyYW5zbGF0aW9ucy96aC1jbic7XHJcbi8vIGltcG9ydCAnQGNrZWRpdG9yL2NrZWRpdG9yNS1sYW5ndWFnZS9idWlsZC90cmFuc2xhdGlvbnMvemgtY24nO1xyXG4vLyBpbXBvcnQgJ0Bja2VkaXRvci9ja2VkaXRvcjUtbGFuZ3VhZ2UvYnVpbGQvdHJhbnNsYXRpb25zL2RlLWNoJztcclxuLy8gaW1wb3J0ICdAY2tlZGl0b3IvY2tlZGl0b3I1LWxhbmd1YWdlL2J1aWxkL3RyYW5zbGF0aW9ucy9lbi1nYic7XHJcbi8vIGltcG9ydCAnQGNrZWRpdG9yL2NrZWRpdG9yNS1sYW5ndWFnZS9idWlsZC90cmFuc2xhdGlvbnMvcHQtYnInO1xyXG4vLyBpbXBvcnQgJ0Bja2VkaXRvci9ja2VkaXRvcjUtbGFuZ3VhZ2UvYnVpbGQvdHJhbnNsYXRpb25zL3poJztcclxuLy8gaW1wb3J0ICdAY2tlZGl0b3IvY2tlZGl0b3I1LWxhbmd1YWdlL2J1aWxkL3RyYW5zbGF0aW9ucy9kZSc7XHJcbi8vIGltcG9ydCAnQGNrZWRpdG9yL2NrZWRpdG9yNS1sYW5ndWFnZS9idWlsZC90cmFuc2xhdGlvbnMvYXInO1xyXG4vLyBpbXBvcnQgJ0Bja2VkaXRvci9ja2VkaXRvcjUtbGFuZ3VhZ2UvYnVpbGQvdHJhbnNsYXRpb25zL2NzJztcclxuLy8gaW1wb3J0ICdAY2tlZGl0b3IvY2tlZGl0b3I1LWxhbmd1YWdlL2J1aWxkL3RyYW5zbGF0aW9ucy9oaSc7XHJcbi8vIGltcG9ydCAnQGNrZWRpdG9yL2NrZWRpdG9yNS1sYW5ndWFnZS9idWlsZC90cmFuc2xhdGlvbnMvZmknO1xyXG4vLyBpbXBvcnQgJ0Bja2VkaXRvci9ja2VkaXRvcjUtbGFuZ3VhZ2UvYnVpbGQvdHJhbnNsYXRpb25zL2h1JztcclxuLy8gaW1wb3J0ICdAY2tlZGl0b3IvY2tlZGl0b3I1LWxhbmd1YWdlL2J1aWxkL3RyYW5zbGF0aW9ucy9mcic7XHJcbi8vIGltcG9ydCAnQGNrZWRpdG9yL2NrZWRpdG9yNS1sYW5ndWFnZS9idWlsZC90cmFuc2xhdGlvbnMvaXQnO1xyXG4vLyBpbXBvcnQgJ0Bja2VkaXRvci9ja2VkaXRvcjUtbGFuZ3VhZ2UvYnVpbGQvdHJhbnNsYXRpb25zL3NrJztcclxuLy8gaW1wb3J0ICdAY2tlZGl0b3IvY2tlZGl0b3I1LWxhbmd1YWdlL2J1aWxkL3RyYW5zbGF0aW9ucy9qYSc7XHJcbi8vIGltcG9ydCAnQGNrZWRpdG9yL2NrZWRpdG9yNS1sYW5ndWFnZS9idWlsZC90cmFuc2xhdGlvbnMvZXMnO1xyXG4vLyBpbXBvcnQgJ0Bja2VkaXRvci9ja2VkaXRvcjUtbGFuZ3VhZ2UvYnVpbGQvdHJhbnNsYXRpb25zL3ZpJztcclxuXHJcbi8vIGltcG9ydCBwcmVtaXVtRmVhdHVyZXNUcmFuc2xhdGlvbnMgZnJvbSAnY2tlZGl0b3I1LXByZW1pdW0tZmVhdHVyZXMvYnVpbGQvdHJhbnNsYXRpb25zL3poLWNuLmpzJztcclxuXHJcbmltcG9ydCB7IENrRWRpdG9yVHlwZXNPYmplY3QgfSBmcm9tICcuLi8uLi9vYmplY3QvY2stZWRpdG9yLW9iamVjdCc7XHJcbmltcG9ydCB7IEJvbGQsIENsYXNzaWNFZGl0b3IsIERlY291cGxlZEVkaXRvciwgRWRpdG9yQ29uZmlnLCBFc3NlbnRpYWxzLCBJdGFsaWMsIFBhcmFncmFwaCwgVW5kbyB9IGZyb20gJ2NrZWRpdG9yNSc7XHJcbmltcG9ydCB7IENoYW5nZUV2ZW50IH0gZnJvbSAnQGNrZWRpdG9yL2NrZWRpdG9yNS1hbmd1bGFyJztcclxuaW1wb3J0IHsgTGFuZ3VhZ2VzTWFwIH0gZnJvbSAnLi4vLi4vZW51bXMvbGFuZ3VhZ2VzLW1hcCc7XHJcbmltcG9ydCB7IENvbmZpZ1N0YXRlU2VydmljZSB9IGZyb20gJ0BhYnAvbmcuY29yZSc7XHJcblxyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdsaWItY2stZWRpdG9yLWRvbWUnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9jay1lZGl0b3ItZG9tZS5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmw6ICcuL2NrLWVkaXRvci1kb21lLmNvbXBvbmVudC5zY3NzJ1xyXG59KVxyXG5leHBvcnQgY2xhc3MgQ2tFZGl0b3JEb21lQ29tcG9uZW50IHtcclxuICBwcml2YXRlIGNvbmZpZzogQ29uZmlnU3RhdGVTZXJ2aWNlID0gaW5qZWN0KENvbmZpZ1N0YXRlU2VydmljZSk7XHJcbiAgY3VycmVudEN1bHR1cmUgPSB0aGlzLmNvbmZpZy5nZXRPbmUoJ2xvY2FsaXphdGlvbicpPy5jdXJyZW50Q3VsdHVyZT8ubmFtZTtcclxuICAvLyBDa0VkaXRvclR5cGVzT2JqZWN0ID0gQ2tFZGl0b3JUeXBlc09iamVjdFxyXG4gIHB1YmxpYyBFZGl0b3IgPSBDbGFzc2ljRWRpdG9yO1xyXG4gIF9jb25maWc6IEVkaXRvckNvbmZpZyA9IHtcclxuICAgIHBsdWdpbnM6IFtCb2xkLCBFc3NlbnRpYWxzLCBJdGFsaWMsIFBhcmFncmFwaCwgVW5kb10sXHJcbiAgICB0b29sYmFyOiBbJ3VuZG8nLCAncmVkbycsICd8JywgJ2JvbGQnLCAnaXRhbGljJ11cclxuICB9XHJcbiAgY29uZmlnVHlwZTogYW55ID0gJ2RlZmF1bHQnXHJcblxyXG4gIGVkaXRvclZhbHVlOiBhbnkgPSAnPHA+MTIyMzM8L3A+J1xyXG5cclxuICBsYW5ndWFnZXNNYXA9TGFuZ3VhZ2VzTWFwXHJcbiAgLyoq5YiH5o2i57G75Z6LICovXHJcbiAgc3dpdGNoVHlwZSh0eXBlPzogc3RyaW5nKSB7XHJcbiAgICB0aGlzLmNvbmZpZ1R5cGUgPSB0eXBlXHJcbiAgICB0aGlzLl9jb25maWdfY2sgPSAnJ1xyXG4gICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgIGxldCBjb25maWdzPUNrRWRpdG9yVHlwZXNPYmplY3RbdHlwZV07XHJcbiAgICAgIGNvbmZpZ3MubGFuZ3VhZ2U9IHRoaXMubGFuZ3VhZ2VzTWFwW3RoaXMuY3VycmVudEN1bHR1cmVdO1xyXG4gICAgICAvLyBjb25maWdzLnRyYW5zbGF0aW9ucz0gW2NvcmVUcmFuc2xhdGlvbnNdXHJcbiAgICAgIHRoaXMuX2NvbmZpZ19jayA9IGNvbmZpZ3NcclxuICAgIH0sIDApXHJcbiAgfVxyXG5cclxuICBjbGVhcmNvbmZpZygpIHtcclxuICAgIHRoaXMuX2NvbmZpZyA9IG51bGxcclxuICB9XHJcblxyXG4gIC8qKuWKoOi9veWujOaIkCAqL1xyXG4gIGNrUmVhZHkoZWRpdG9yOiBEZWNvdXBsZWRFZGl0b3IpOiB2b2lkIHtcclxuICAgIGNvbnN0IGVsZW1lbnQgPSBlZGl0b3IudWkuZ2V0RWRpdGFibGVFbGVtZW50KCkhO1xyXG4gICAgY29uc3QgcGFyZW50ID0gZWxlbWVudC5wYXJlbnRFbGVtZW50ITtcclxuXHJcbiAgICBwYXJlbnQuaW5zZXJ0QmVmb3JlKFxyXG4gICAgICBlZGl0b3IudWkudmlldy50b29sYmFyLmVsZW1lbnQhLFxyXG4gICAgICBlbGVtZW50XHJcbiAgICApO1xyXG5cclxuICB9XHJcbiAgLyoq5YaF5a655pS55Y+YICovXHJcbiAgY2tDaGFuZ2UoeyBlZGl0b3IgfTogQ2hhbmdlRXZlbnQpIHtcclxuICAgIGNvbnN0IGRhdGEgPSBlZGl0b3IuZ2V0RGF0YSgpO1xyXG4gICAgdGhpcy5lZGl0b3JWYWx1ZSA9IGRhdGFcclxuICB9XHJcblxyXG5cclxuICBfY29uZmlnX2NrOiBhbnkgPSBDa0VkaXRvclR5cGVzT2JqZWN0WydmdWxsJ107XHJcblxyXG5cclxuXHJcbn1cclxuIiwiPGJ1dHRvbiBjbGFzcz1cImJ0biBidG4tc20gYnRuLXByaW1hcnkgbXgtMiBtYi0yXCIgKGNsaWNrLnN0b3ApPVwic3dpdGNoVHlwZSgnZWFzeScpXCI+5p6B566APC9idXR0b24+XHJcbjxidXR0b24gY2xhc3M9XCJidG4gYnRuLXNtIGJ0bi1wcmltYXJ5IG14LTIgbWItMlwiIChjbGljay5zdG9wKT1cInN3aXRjaFR5cGUoJ2RlZmF1bHQnKVwiPum7mOiupDwvYnV0dG9uPlxyXG48YnV0dG9uIGNsYXNzPVwiYnRuIGJ0bi1zbSBidG4tcHJpbWFyeSBteC0yIG1iLTJcIiAoY2xpY2suc3RvcCk9XCJzd2l0Y2hUeXBlKCdzdGFuZGFyZCcpXCI+5qCH5YeGPC9idXR0b24+XHJcbjxidXR0b24gY2xhc3M9XCJidG4gYnRuLXNtIGJ0bi1wcmltYXJ5IG14LTIgbWItMlwiIChjbGljay5zdG9wKT1cInN3aXRjaFR5cGUoJ2Z1bGwnKVwiPuWujOaVtDwvYnV0dG9uPlxyXG5cclxuPGJ1dHRvbiBjbGFzcz1cImJ0biBidG4tc20gYnRuLXByaW1hcnkgbXgtMiBtYi0yXCIgKGNsaWNrLnN0b3ApPVwiY2xlYXJjb25maWcoKVwiPua4heepuumFjee9rjwvYnV0dG9uPlxyXG5cclxuPGgzPuiHquWumuS5iemFjee9rjwvaDM+XHJcbjxja2VkaXRvciAjZWRpdG9yICBbZWRpdG9yXT1cIkVkaXRvclwiICpuZ0lmPVwiX2NvbmZpZ19ja1wiIFsobmdNb2RlbCldPVwiZWRpdG9yVmFsdWVcIiBbY29uZmlnXT1cIl9jb25maWdcIiA+PC9ja2VkaXRvcj5cclxuXHJcbjxoMz7nsbvlnos8L2gzPlxyXG48Y2tlZGl0b3IgI2VkaXRvciAgW2VkaXRvcl09XCJFZGl0b3JcIiAqbmdJZj1cIl9jb25maWdfY2tcIiBbKG5nTW9kZWwpXT1cImVkaXRvclZhbHVlXCIgW2NvbmZpZ109XCJfY29uZmlnX2NrXCIgIChjaGFuZ2UpPVwiY2tDaGFuZ2UoJGV2ZW50KVwiIChyZWFkeSk9XCJja1JlYWR5KCRldmVudClcIj48L2NrZWRpdG9yPlxyXG5cclxue3tlZGl0b3JWYWx1ZX19Il19
|
|
@@ -1,25 +1,27 @@
|
|
|
1
1
|
import { ConfigStateService, RestService } from '@abp/ng.core';
|
|
2
|
-
import { Component, Input, ViewChild, inject
|
|
2
|
+
import { Component, Input, ViewChild, inject } from '@angular/core';
|
|
3
3
|
import { FormBuilder, Validators } from '@angular/forms';
|
|
4
|
-
import
|
|
5
|
-
import
|
|
6
|
-
import
|
|
7
|
-
import
|
|
8
|
-
import
|
|
9
|
-
import
|
|
10
|
-
import
|
|
11
|
-
import
|
|
12
|
-
import
|
|
13
|
-
import
|
|
14
|
-
import
|
|
15
|
-
import
|
|
16
|
-
import
|
|
17
|
-
import
|
|
18
|
-
import
|
|
19
|
-
import
|
|
20
|
-
import
|
|
4
|
+
// import '@ckeditor/ckeditor5-build-classic/build/translations/zh-cn';
|
|
5
|
+
// import '@ckeditor/ckeditor5-build-classic/build/translations/de-ch';
|
|
6
|
+
// import '@ckeditor/ckeditor5-build-classic/build/translations/en-gb';
|
|
7
|
+
// import '@ckeditor/ckeditor5-build-classic/build/translations/pt-br';
|
|
8
|
+
// import '@ckeditor/ckeditor5-build-classic/build/translations/zh';
|
|
9
|
+
// import '@ckeditor/ckeditor5-build-classic/build/translations/de';
|
|
10
|
+
// import '@ckeditor/ckeditor5-build-classic/build/translations/ar';
|
|
11
|
+
// import '@ckeditor/ckeditor5-build-classic/build/translations/cs';
|
|
12
|
+
// import '@ckeditor/ckeditor5-build-classic/build/translations/hi';
|
|
13
|
+
// import '@ckeditor/ckeditor5-build-classic/build/translations/fi';
|
|
14
|
+
// import '@ckeditor/ckeditor5-build-classic/build/translations/hu';
|
|
15
|
+
// import '@ckeditor/ckeditor5-build-classic/build/translations/fr';
|
|
16
|
+
// import '@ckeditor/ckeditor5-build-classic/build/translations/it';
|
|
17
|
+
// import '@ckeditor/ckeditor5-build-classic/build/translations/sk';
|
|
18
|
+
// import '@ckeditor/ckeditor5-build-classic/build/translations/ja';
|
|
19
|
+
// import '@ckeditor/ckeditor5-build-classic/build/translations/es';
|
|
20
|
+
// import '@ckeditor/ckeditor5-build-classic/build/translations/vi';
|
|
21
21
|
import { LanguagesMap } from '../../enums/languages-map';
|
|
22
22
|
import { isBase64UploadAdapter } from './ckEditorUpload';
|
|
23
|
+
import { ClassicEditor } from 'ckeditor5';
|
|
24
|
+
import { CkEditorTypesObject } from '../../object/ck-editor-object';
|
|
23
25
|
import * as i0 from "@angular/core";
|
|
24
26
|
import * as i1 from "@angular/forms";
|
|
25
27
|
import * as i2 from "@angular/common";
|
|
@@ -32,63 +34,66 @@ export class CkEditorControlComponent {
|
|
|
32
34
|
/**ck-Editor的值 */
|
|
33
35
|
ckEditorValue = '';
|
|
34
36
|
/**系统语言 */
|
|
35
|
-
currentCulture = this.config.getOne(
|
|
37
|
+
currentCulture = this.config.getOne('localization')?.currentCulture?.name;
|
|
36
38
|
/** 语言目录,匹配系统语言,设置ckeditor的语言 */
|
|
37
39
|
languagesMap = LanguagesMap;
|
|
38
|
-
Editor;
|
|
40
|
+
Editor = ClassicEditor;
|
|
39
41
|
constructor() {
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
this.ckOptions =
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
42
|
+
let configs = CkEditorTypesObject['default'];
|
|
43
|
+
configs.language = this.languagesMap[this.currentCulture],
|
|
44
|
+
this.ckOptions = configs;
|
|
45
|
+
// import('@ckeditor/ckeditor5-build-classic').then(res => {
|
|
46
|
+
// this.Editor = res.default
|
|
47
|
+
// this.ckOptions = {
|
|
48
|
+
// language: this.languagesMap[this.currentCulture],
|
|
49
|
+
// toolbar: {
|
|
50
|
+
// items: [
|
|
51
|
+
// 'heading', '|',
|
|
52
|
+
// 'bold', 'italic',
|
|
53
|
+
// 'link', '|',
|
|
54
|
+
// 'bulletedList', 'numberedList',
|
|
55
|
+
// 'insertTable', '|',
|
|
56
|
+
// 'uploadImage', '|',
|
|
57
|
+
// 'undo', 'redo'
|
|
58
|
+
// ],
|
|
59
|
+
// viewportTopOffset: 30,
|
|
60
|
+
// shouldNotGroupWhenFull: true
|
|
61
|
+
// },
|
|
62
|
+
// image: {
|
|
63
|
+
// toolbar: [
|
|
64
|
+
// 'imageStyle:alignLeft', 'imageStyle:alignCenter', 'imageStyle:alignRight',
|
|
65
|
+
// '|',
|
|
66
|
+
// 'resizeImage',
|
|
67
|
+
// '|',
|
|
68
|
+
// 'imageTextAlternative'
|
|
69
|
+
// ],
|
|
70
|
+
// styles: [
|
|
71
|
+
// 'alignLeft', 'alignCenter', 'alignRight'
|
|
72
|
+
// ],
|
|
73
|
+
// resizeOptions: [{
|
|
74
|
+
// name: 'resizeImage:original',
|
|
75
|
+
// label: 'Original',
|
|
76
|
+
// value: null
|
|
77
|
+
// },
|
|
78
|
+
// {
|
|
79
|
+
// name: 'resizeImage:25',
|
|
80
|
+
// label: '25%',
|
|
81
|
+
// value: '25'
|
|
82
|
+
// },
|
|
83
|
+
// {
|
|
84
|
+
// name: 'resizeImage:50',
|
|
85
|
+
// label: '50%',
|
|
86
|
+
// value: '50'
|
|
87
|
+
// },
|
|
88
|
+
// {
|
|
89
|
+
// name: 'resizeImage:75',
|
|
90
|
+
// label: '75%',
|
|
91
|
+
// value: '75'
|
|
92
|
+
// }
|
|
93
|
+
// ],
|
|
94
|
+
// },
|
|
95
|
+
// }
|
|
96
|
+
// })
|
|
92
97
|
}
|
|
93
98
|
onReady(editor) {
|
|
94
99
|
let _this = this;
|
|
@@ -140,7 +145,8 @@ export class CkEditorControlComponent {
|
|
|
140
145
|
await this.AfterInit();
|
|
141
146
|
// let fillingIn=this._selected||this._fields.field.formConfiguration['Ckeditor.InitialContent']
|
|
142
147
|
// this.Editor.setData(fillingIn);
|
|
143
|
-
this.ckEditorValue =
|
|
148
|
+
this.ckEditorValue =
|
|
149
|
+
this._selected || this._fields.field.formConfiguration['Ckeditor.InitialContent'];
|
|
144
150
|
this.setckeditorInput(this.ckEditorValue);
|
|
145
151
|
this.submitclick.nativeElement.click();
|
|
146
152
|
}
|
|
@@ -154,14 +160,17 @@ export class CkEditorControlComponent {
|
|
|
154
160
|
/**图片容器名称 */
|
|
155
161
|
imagesContainerName = '';
|
|
156
162
|
AfterInit() {
|
|
157
|
-
return new Promise(
|
|
163
|
+
return new Promise(resolve => {
|
|
158
164
|
let ValidatorsArray = [];
|
|
159
165
|
if (this._fields.required) {
|
|
160
166
|
ValidatorsArray.push(Validators.required);
|
|
161
167
|
}
|
|
162
|
-
let newControl = this.fb.control(this._selected
|
|
168
|
+
let newControl = this.fb.control(this._selected
|
|
169
|
+
? this._selected
|
|
170
|
+
: this._fields.field.formConfiguration['Ckeditor.InitialContent'], ValidatorsArray);
|
|
163
171
|
this.extraProperties.setControl(this._fields.field.name, newControl);
|
|
164
|
-
this.imagesContainerName =
|
|
172
|
+
this.imagesContainerName =
|
|
173
|
+
this._fields.field.formConfiguration['Ckeditor.ImagesContainerName'];
|
|
165
174
|
resolve(true);
|
|
166
175
|
});
|
|
167
176
|
}
|
|
@@ -183,4 +192,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.5", ngImpor
|
|
|
183
192
|
type: ViewChild,
|
|
184
193
|
args: ['submitclick', { static: true }]
|
|
185
194
|
}] } });
|
|
186
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2stZWRpdG9yLWNvbnRyb2wuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2stZWRpdG9yL3NyYy9saWIvZHluYW1pYy1mb3JtL2NrLWVkaXRvci9jay1lZGl0b3ItY29udHJvbC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jay1lZGl0b3Ivc3JjL2xpYi9keW5hbWljLWZvcm0vY2stZWRpdG9yL2NrLWVkaXRvci1jb250cm9sLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxXQUFXLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDL0QsT0FBTyxFQUFFLFNBQVMsRUFBZSxLQUFLLEVBQUUsU0FBUyxFQUFFLE1BQU0sR0FBRyxNQUFNLGVBQWUsQ0FBQztBQUNsRixPQUFPLEVBQUUsV0FBVyxFQUFhLFVBQVUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRXBFLE9BQU8sNERBQTRELENBQUM7QUFDcEUsT0FBTyw0REFBNEQsQ0FBQztBQUNwRSxPQUFPLDREQUE0RCxDQUFDO0FBQ3BFLE9BQU8sNERBQTRELENBQUM7QUFDcEUsT0FBTyx5REFBeUQsQ0FBQztBQUNqRSxPQUFPLHlEQUF5RCxDQUFDO0FBQ2pFLE9BQU8seURBQXlELENBQUM7QUFDakUsT0FBTyx5REFBeUQsQ0FBQztBQUNqRSxPQUFPLHlEQUF5RCxDQUFDO0FBQ2pFLE9BQU8seURBQXlELENBQUM7QUFDakUsT0FBTyx5REFBeUQsQ0FBQztBQUNqRSxPQUFPLHlEQUF5RCxDQUFDO0FBQ2pFLE9BQU8seURBQXlELENBQUM7QUFDakUsT0FBTyx5REFBeUQsQ0FBQztBQUNqRSxPQUFPLHlEQUF5RCxDQUFDO0FBQ2pFLE9BQU8seURBQXlELENBQUM7QUFDakUsT0FBTyx5REFBeUQsQ0FBQztBQUNqRSxPQUFPLEVBQUUsWUFBWSxFQUFF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QUMsOEJBQThCLENBQUMsQ0FBQTtZQUMvRixPQUFPLENBQUMsSUFBSSxDQUFDLENBQUE7UUFDZixDQUFDLENBQUMsQ0FBQTtJQUNKLENBQUM7dUdBeEpVLHdCQUF3QjsyRkFBeEIsd0JBQXdCLDZSQzdCckMsbzNCQWVPOzsyRkRjTSx3QkFBd0I7a0JBTHBDLFNBQVM7K0JBQ0UsbUJBQW1CO3dEQXlGbEIsTUFBTTtzQkFEaEIsS0FBSztnQkFTSyxNQUFNO3NCQURoQixLQUFLO2dCQVNLLGVBQWU7c0JBRHpCLEtBQUs7Z0JBUUssUUFBUTtzQkFEbEIsS0FBSztnQkFLc0MsV0FBVztzQkFBdEQsU0FBUzt1QkFBQyxhQUFhLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29uZmlnU3RhdGVTZXJ2aWNlLCBSZXN0U2VydmljZSB9IGZyb20gJ0BhYnAvbmcuY29yZSc7XG5pbXBvcnQgeyBDb21wb25lbnQsIEVsZW1lbnRSZWYsICBJbnB1dCwgVmlld0NoaWxkLCBpbmplY3QsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb3JtQnVpbGRlciwgRm9ybUdyb3VwLCBWYWxpZGF0b3JzIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuXG5pbXBvcnQgXCJAY2tlZGl0b3IvY2tlZGl0b3I1LWJ1aWxkLWNsYXNzaWMvYnVpbGQvdHJhbnNsYXRpb25zL3poLWNuXCI7XG5pbXBvcnQgXCJAY2tlZGl0b3IvY2tlZGl0b3I1LWJ1aWxkLWNsYXNzaWMvYnVpbGQvdHJhbnNsYXRpb25zL2RlLWNoXCI7XG5pbXBvcnQgXCJAY2tlZGl0b3IvY2tlZGl0b3I1LWJ1aWxkLWNsYXNzaWMvYnVpbGQvdHJhbnNsYXRpb25zL2VuLWdiXCI7XG5pbXBvcnQgXCJAY2tlZGl0b3IvY2tlZGl0b3I1LWJ1aWxkLWNsYXNzaWMvYnVpbGQvdHJhbnNsYXRpb25zL3B0LWJyXCI7XG5pbXBvcnQgXCJAY2tlZGl0b3IvY2tlZGl0b3I1LWJ1aWxkLWNsYXNzaWMvYnVpbGQvdHJhbnNsYXRpb25zL3poXCI7XG5pbXBvcnQgXCJAY2tlZGl0b3IvY2tlZGl0b3I1LWJ1aWxkLWNsYXNzaWMvYnVpbGQvdHJhbnNsYXRpb25zL2RlXCI7XG5pbXBvcnQgXCJAY2tlZGl0b3IvY2tlZGl0b3I1LWJ1aWxkLWNsYXNzaWMvYnVpbGQvdHJhbnNsYXRpb25zL2FyXCI7XG5pbXBvcnQgXCJAY2tlZGl0b3IvY2tlZGl0b3I1LWJ1aWxkLWNsYXNzaWMvYnVpbGQvdHJhbnNsYXRpb25zL2NzXCI7XG5pbXBvcnQgXCJAY2tlZGl0b3IvY2tlZGl0b3I1LWJ1aWxkLWNsYXNzaWMvYnVpbGQvdHJhbnNsYXRpb25zL2hpXCI7XG5pbXBvcnQgXCJAY2tlZGl0b3IvY2tlZGl0b3I1LWJ1aWxkLWNsYXNzaWMvYnVpbGQvdHJhbnNsYXRpb25zL2ZpXCI7XG5pbXBvcnQgXCJAY2tlZGl0b3IvY2tlZGl0b3I1LWJ1aWxkLWNsYXNzaWMvYnVpbGQvdHJhbnNsYXRpb25zL2h1XCI7XG5pbXBvcnQgXCJAY2tlZGl0b3IvY2tlZGl0b3I1LWJ1aWxkLWNsYXNzaWMvYnVpbGQvdHJhbnNsYXRpb25zL2ZyXCI7XG5pbXBvcnQgXCJAY2tlZGl0b3IvY2tlZGl0b3I1LWJ1aWxkLWNsYXNzaWMvYnVpbGQvdHJhbnNsYXRpb25zL2l0XCI7XG5pbXBvcnQgXCJAY2tlZGl0b3IvY2tlZGl0b3I1LWJ1aWxkLWNsYXNzaWMvYnVpbGQvdHJhbnNsYXRpb25zL3NrXCI7XG5pbXBvcnQgXCJAY2tlZGl0b3IvY2tlZGl0b3I1LWJ1aWxkLWNsYXNzaWMvYnVpbGQvdHJhbnNsYXRpb25zL2phXCI7XG5pbXBvcnQgXCJAY2tlZGl0b3IvY2tlZGl0b3I1LWJ1aWxkLWNsYXNzaWMvYnVpbGQvdHJhbnNsYXRpb25zL2VzXCI7XG5pbXBvcnQgXCJAY2tlZGl0b3IvY2tlZGl0b3I1LWJ1aWxkLWNsYXNzaWMvYnVpbGQvdHJhbnNsYXRpb25zL3ZpXCI7XG5pbXBvcnQgeyBMYW5ndWFnZXNNYXAgfSBmcm9tICcuLi8uLi9lbnVtcy9sYW5ndWFnZXMtbWFwJztcbmltcG9ydCB7IGlzQmFzZTY0VXBsb2FkQWRhcHRlciB9IGZyb20gJy4vY2tFZGl0b3JVcGxvYWQnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdjay1lZGl0b3ItY29udHJvbCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9jay1lZGl0b3ItY29udHJvbC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2NrLWVkaXRvci1jb250cm9sLmNvbXBvbmVudC5zY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIENrRWRpdG9yQ29udHJvbENvbXBvbmVudCB7XG4gIHByaXZhdGUgY29uZmlnOiBDb25maWdTdGF0ZVNlcnZpY2UgPSBpbmplY3QoQ29uZmlnU3RhdGVTZXJ2aWNlKVxuICBwcml2YXRlIF9yZXN0U2VydmljZTogUmVzdFNlcnZpY2UgPSBpbmplY3QoUmVzdFNlcnZpY2UpXG4gIC8qKmNrLUVkaXRvcueahOWAvCAqLyBcbiAgY2tFZGl0b3JWYWx1ZTogYW55ID0gJydcbiAgLyoq57O757uf6K+t6KiAICovXG4gIGN1cnJlbnRDdWx0dXJlID0gdGhpcy5jb25maWcuZ2V0T25lKFwibG9jYWxpemF0aW9uXCIpPy5jdXJyZW50Q3VsdHVyZT8ubmFtZTtcbiAgICAvKiog6K+t6KiA55uu5b2V77yM5Yy56YWN57O757uf6K+t6KiA77yM6K6+572uY2tlZGl0b3LnmoTor63oqIAgKi9cbiAgICBsYW5ndWFnZXNNYXA9TGFuZ3VhZ2VzTWFwXG5cbiAgcHVibGljIEVkaXRvcjogYW55O1xuICBjb25zdHJ1Y3RvcigpIHtcblxuICAgIGltcG9ydCgnQGNrZWRpdG9yL2NrZWRpdG9yNS1idWlsZC1jbGFzc2ljJykudGhlbihyZXMgPT4ge1xuICAgICAgdGhpcy5FZGl0b3IgPSByZXMuZGVmYXVsdFxuICAgICAgdGhpcy5ja09wdGlvbnMgPSB7XG4gICAgICAgIGxhbmd1YWdlOiB0aGlzLmxhbmd1YWdlc01hcFt0aGlzLmN1cnJlbnRDdWx0dXJlXSxcbiAgICAgICAgdG9vbGJhcjoge1xuICAgICAgICAgIGl0ZW1zOiBbXG4gICAgICAgICAgICAnaGVhZGluZycsICd8JyxcbiAgICAgICAgICAgICdib2xkJywgJ2l0YWxpYycsXG4gICAgICAgICAgICAnbGluaycsICd8JyxcbiAgICAgICAgICAgICdidWxsZXRlZExpc3QnLCAnbnVtYmVyZWRMaXN0JyxcbiAgICAgICAgICAgICdpbnNlcnRUYWJsZScsICd8JyxcbiAgICAgICAgICAgICd1cGxvYWRJbWFnZScsICd8JyxcbiAgICAgICAgICAgICd1bmRvJywgJ3JlZG8nXG4gICAgICAgICAgXSxcbiAgICAgICAgICB2aWV3cG9ydFRvcE9mZnNldDogMzAsXG4gICAgICAgICAgc2hvdWxkTm90R3JvdXBXaGVuRnVsbDogdHJ1ZVxuICAgICAgICB9LFxuICAgICAgICBpbWFnZToge1xuICAgICAgICAgIHRvb2xiYXI6IFtcbiAgICAgICAgICAgICdpbWFnZVN0eWxlOmFsaWduTGVmdCcsICdpbWFnZVN0eWxlOmFsaWduQ2VudGVyJywgJ2ltYWdlU3R5bGU6YWxpZ25SaWdodCcsXG4gICAgICAgICAgICAnfCcsXG4gICAgICAgICAgICAncmVzaXplSW1hZ2UnLFxuICAgICAgICAgICAgJ3wnLFxuICAgICAgICAgICAgJ2ltYWdlVGV4dEFsdGVybmF0aXZlJ1xuICAgICAgICAgIF0sXG4gICAgICAgICAgc3R5bGVzOiBbXG4gICAgICAgICAgICAnYWxpZ25MZWZ0JywgJ2FsaWduQ2VudGVyJywgJ2FsaWduUmlnaHQnXG4gICAgICAgICAgXSxcbiAgICAgICAgICByZXNpemVPcHRpb25zOiBbe1xuICAgICAgICAgICAgbmFtZTogJ3Jlc2l6ZUltYWdlOm9yaWdpbmFsJyxcbiAgICAgICAgICAgIGxhYmVsOiAnT3JpZ2luYWwnLFxuICAgICAgICAgICAgdmFsdWU6IG51bGxcbiAgICAgICAgICB9LFxuICAgICAgICAgIHtcbiAgICAgICAgICAgIG5hbWU6ICdyZXNpemVJbWFnZToyNScsXG4gICAgICAgICAgICBsYWJlbDogJzI1JScsXG4gICAgICAgICAgICB2YWx1ZTogJzI1J1xuICAgICAgICAgIH0sXG4gICAgICAgICAge1xuICAgICAgICAgICAgbmFtZTogJ3Jlc2l6ZUltYWdlOjUwJyxcbiAgICAgICAgICAgIGxhYmVsOiAnNTAlJyxcbiAgICAgICAgICAgIHZhbHVlOiAnNTAnXG4gICAgICAgICAgfSxcbiAgICAgICAgICB7XG4gICAgICAgICAgICBuYW1lOiAncmVzaXplSW1hZ2U6NzUnLFxuICAgICAgICAgICAgbGFiZWw6ICc3NSUnLFxuICAgICAgICAgICAgdmFsdWU6ICc3NSdcbiAgICAgICAgICB9XG4gICAgICAgICAgXSxcbiAgICAgICAgfSxcbiAgICAgIH1cbiAgICB9KVxuICB9XG4gIHB1YmxpYyBvblJlYWR5KGVkaXRvcil7XG4gICAgbGV0IF90aGlzPXRoaXNcbiAgICBlZGl0b3IucGx1Z2lucy5nZXQoJ0ZpbGVSZXBvc2l0b3J5JykuY3JlYXRlVXBsb2FkQWRhcHRlciA9IGZ1bmN0aW9uIChsb2FkZXI6IGFueSkge1xuICAgICAgcmV0dXJuIG5ldyBpc0Jhc2U2NFVwbG9hZEFkYXB0ZXIobG9hZGVyLCBfdGhpcy5pbWFnZXNDb250YWluZXJOYW1lLCBfdGhpcy5fcmVzdFNlcnZpY2UpO1xuICAgIH07XG4gIH1cblxuICAvKipjay1lZGl0b3LphY3nva4gKi9cbiAgY2tPcHRpb25zOiBhbnkgXG4gIC8qKuWvjOaWh+acrOWGheWuueaUueWPmCAqL1xuICBja0VkaXRvckNoYW5nZShldmVudCkge1xuICAgIHRoaXMuc2V0Y2tlZGl0b3JJbnB1dChldmVudClcbiAgfVxuXG4gIHByaXZhdGUgZmIgPSBpbmplY3QoRm9ybUJ1aWxkZXIpXG5cbiAgLyoq6KGo5Y2V5a6e5L2TICovXG4gIF9lbnRpdHk6IEZvcm1Hcm91cCB8IHVuZGVmaW5lZFxuICBASW5wdXQoKVxuICBwdWJsaWMgc2V0IGVudGl0eSh2OiBhbnkpIHtcbiAgICB0aGlzLl9lbnRpdHkgPSB2O1xuICAgIHRoaXMuZGF0YUxvYWRlZCgpXG4gIH1cblxuICAvKirlrZfmrrXphY3nva7liJfooaggKi9cbiAgX2ZpZWxkczogYW55ID0gJydcbiAgQElucHV0KClcbiAgcHVibGljIHNldCBmaWVsZHModjogYW55KSB7XG4gICAgdGhpcy5fZmllbGRzID0gdjtcbiAgICB0aGlzLmRhdGFMb2FkZWQoKVxuICB9XG5cbiAgLyoq54i257qn5a2X5q615ZCN56ew77yM55So5LqO5Li66KGo5Y2V6K6+572u5o6n5Lu26LWL5YC8ICovXG4gIF9wYXJlbnRGaWxlZE5hbWU6IGFueVxuICBASW5wdXQoKVxuICBwdWJsaWMgc2V0IHBhcmVudEZpbGVkTmFtZSh2OiBhbnkpIHtcbiAgICB0aGlzLl9wYXJlbnRGaWxlZE5hbWUgPSB2O1xuICAgIHRoaXMuZGF0YUxvYWRlZCgpXG4gIH1cbiAgLyoq54i257qn5a2X5q615ZCN56ew77yM55So5LqO5Li66KGo5Y2V6K6+572u5o6n5Lu26LWL5YC8ICovXG4gIF9zZWxlY3RlZDogYW55XG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXQgc2VsZWN0ZWQodjogYW55KSB7XG4gICAgdGhpcy5fc2VsZWN0ZWQgPSB2O1xuICAgIHRoaXMuZGF0YUxvYWRlZCgpXG4gIH1cbiAgQFZpZXdDaGlsZCgnc3VibWl0Y2xpY2snLCB7IHN0YXRpYzogdHJ1ZSB9KSBzdWJtaXRjbGljazogRWxlbWVudFJlZjtcblxuICBnZXQgZXh0cmFQcm9wZXJ0aWVzKCkge1xuICAgIHJldHVybiB0aGlzLl9lbnRpdHkuZ2V0KCdleHRyYVByb3BlcnRpZXMnKSBhcyBGb3JtR3JvdXBcbiAgfVxuICBnZXQgY2tlZGl0b3JJbnB1dCgpIHtcbiAgICByZXR1cm4gdGhpcy5leHRyYVByb3BlcnRpZXMuZ2V0KHRoaXMuX2ZpZWxkcy5maWVsZC5uYW1lKSBhcyBGb3JtR3JvdXBcbiAgfVxuICAvKirmlbDmja7liqDovb3lrozmiJAgKi9cbiAgYXN5bmMgZGF0YUxvYWRlZCgpIHtcbiAgICBpZiAodGhpcy5fZmllbGRzICYmIHRoaXMuX2VudGl0eSApIHtcbiAgICAgIGF3YWl0IHRoaXMuQWZ0ZXJJbml0KClcbiAgICAgIC8vIGxldCBmaWxsaW5nSW49dGhpcy5fc2VsZWN0ZWR8fHRoaXMuX2ZpZWxkcy5maWVsZC5mb3JtQ29uZmlndXJhdGlvblsnQ2tlZGl0b3IuSW5pdGlhbENvbnRlbnQnXVxuICAgICAgLy8gdGhpcy5FZGl0b3Iuc2V0RGF0YShmaWxsaW5nSW4pO1xuICAgICAgdGhpcy5ja0VkaXRvclZhbHVlPXRoaXMuX3NlbGVjdGVkfHx0aGlzLl9maWVsZHMuZmllbGQuZm9ybUNvbmZpZ3VyYXRpb25bJ0NrZWRpdG9yLkluaXRpYWxDb250ZW50J11cbiAgICAgIHRoaXMuc2V0Y2tlZGl0b3JJbnB1dCh0aGlzLmNrRWRpdG9yVmFsdWUpXG4gICAgICB0aGlzLnN1Ym1pdGNsaWNrLm5hdGl2ZUVsZW1lbnQuY2xpY2soKTtcbiAgICB9XG4gIH1cblxuICBpbnZhbGlkZmVlZGJhY2sgPSBmYWxzZVxuICAvL+iuvue9ruWAvFxuICBzZXRja2VkaXRvcklucHV0KHZhbCkge1xuICAgIHRoaXMuaW52YWxpZGZlZWRiYWNrID0gdHJ1ZVxuICAgIHRoaXMuY2tlZGl0b3JJbnB1dC5wYXRjaFZhbHVlKHZhbClcbiAgfVxuXG4gIC8qKuWbvueJh+WuueWZqOWQjeensCAqL1xuICBpbWFnZXNDb250YWluZXJOYW1lOiBhbnkgPSAnJ1xuICBBZnRlckluaXQoKSB7XG4gICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlKSA9PiB7XG4gICAgICBsZXQgVmFsaWRhdG9yc0FycmF5ID0gW11cbiAgICAgIGlmICh0aGlzLl9maWVsZHMucmVxdWlyZWQpIHtcbiAgICAgICAgVmFsaWRhdG9yc0FycmF5LnB1c2goVmFsaWRhdG9ycy5yZXF1aXJlZClcbiAgICAgIH1cbiAgICAgIGxldCBuZXdDb250cm9sID0gdGhpcy5mYi5jb250cm9sKHRoaXMuX3NlbGVjdGVkID8gdGhpcy5fc2VsZWN0ZWQgOiB0aGlzLl9maWVsZHMuZmllbGQuZm9ybUNvbmZpZ3VyYXRpb25bJ0NrZWRpdG9yLkluaXRpYWxDb250ZW50J10sIFZhbGlkYXRvcnNBcnJheSlcbiAgICAgIHRoaXMuZXh0cmFQcm9wZXJ0aWVzLnNldENvbnRyb2wodGhpcy5fZmllbGRzLmZpZWxkLm5hbWUsIG5ld0NvbnRyb2wpXG4gICAgICB0aGlzLmltYWdlc0NvbnRhaW5lck5hbWUgPSB0aGlzLl9maWVsZHMuZmllbGQuZm9ybUNvbmZpZ3VyYXRpb25bJ0NrZWRpdG9yLkltYWdlc0NvbnRhaW5lck5hbWUnXVxuICAgICAgcmVzb2x2ZSh0cnVlKVxuICAgIH0pXG4gIH1cbn1cbiIsIjxmb3JtIFtmb3JtR3JvdXBdPVwiX2VudGl0eVwiPlxuICAgIDxkaXYgZm9ybUdyb3VwTmFtZT1cImV4dHJhUHJvcGVydGllc1wiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwibWItMlwiPlxuICAgICAgICAgICAgPGxhYmVsIGNsYXNzPVwiZm9ybS1sYWJlbFwiICpuZ0lmPVwiX2ZpZWxkcy5kaXNwbGF5TmFtZVwiPnt7IF9maWVsZHMuZGlzcGxheU5hbWUgfX08L2xhYmVsPlxuICAgICAgICAgICAgPGNrZWRpdG9yIFtlZGl0b3JdPVwiRWRpdG9yXCIgKm5nSWY9XCJFZGl0b3JcIiBbY29uZmlnXT1cImNrT3B0aW9uc1wiIChyZWFkeSk9XCJvblJlYWR5KCRldmVudClcIiBbZm9ybUNvbnRyb2xOYW1lXT1cIl9maWVsZHMuZmllbGQubmFtZVwiPlxuICAgICAgICAgICAgPC9ja2VkaXRvcj5cbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJja2VkaXRvcklucHV0Py5lcnJvcnM/LnJlcXVpcmVkJiZpbnZhbGlkZmVlZGJhY2tcIj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidGV4dC1kYW5nZXIgXCI+XG4gICAgICAgICAgICAgICAgICAgIHt7J0RpZ25pdGVBYnBGb3Jtczo6VmFsaWRhdGU6UmVxdWlyZWQnIHwgYWJwTG9jYWxpemF0aW9uOicgJ319XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmb3JtLXRleHRcIiAqbmdJZj1cIl9maWVsZHMuZmllbGQuZGVzY3JpcHRpb25cIj57e19maWVsZHMuZmllbGQuZGVzY3JpcHRpb259fTwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgICA8YnV0dG9uIHR5cGU9XCJzdWJtaXRcIiBzdHlsZT1cImRpc3BsYXk6IG5vbmU7XCIgI3N1Ym1pdGNsaWNrPjwvYnV0dG9uPlxuPC9mb3JtPiJdfQ==
|
|
195
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2stZWRpdG9yLWNvbnRyb2wuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2stZWRpdG9yL3NyYy9saWIvZHluYW1pYy1mb3JtL2NrLWVkaXRvci9jay1lZGl0b3ItY29udHJvbC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jay1lZGl0b3Ivc3JjL2xpYi9keW5hbWljLWZvcm0vY2stZWRpdG9yL2NrLWVkaXRvci1jb250cm9sLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxXQUFXLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDL0QsT0FBTyxFQUFFLFNBQVMsRUFBYyxLQUFLLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNoRixPQUFPLEVBQUUsV0FBVyxFQUFhLFVBQVUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRXBFLHVFQUF1RTtBQUN2RSx1RUFBdUU7QUFDdkUsdUVBQXVFO0FBQ3ZFLHVFQUF1RTtBQUN2RSxvRUFBb0U7QUFDcEUsb0VBQW9FO0FBQ3BFLG9FQUFvRTtBQUNwRSxvRUFBb0U7QUFDcEUsb0VBQW9FO0FBQ3BFLG9FQUFvRTtBQUNwRSxvRUFBb0U7QUFDcEUsb0VBQW9FO0FBQ3BFLG9FQUFvRTtBQUNwRSxvRUFBb0U7QUFDcEUsb0VBQW9FO0FBQ3BFLG9FQUFvRTtBQUNwRSxvRUFBb0U7QUFDcEUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ3pELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ3pELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFDMUMsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sK0JBQStCLENBQUM7Ozs7Ozs7QUFPcEUsTUFBTSxPQUFP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QUF0RCxTQUFTO3VCQUFDLGFBQWEsRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb25maWdTdGF0ZVNlcnZpY2UsIFJlc3RTZXJ2aWNlIH0gZnJvbSAnQGFicC9uZy5jb3JlJztcbmltcG9ydCB7IENvbXBvbmVudCwgRWxlbWVudFJlZiwgSW5wdXQsIFZpZXdDaGlsZCwgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb3JtQnVpbGRlciwgRm9ybUdyb3VwLCBWYWxpZGF0b3JzIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuXG4vLyBpbXBvcnQgJ0Bja2VkaXRvci9ja2VkaXRvcjUtYnVpbGQtY2xhc3NpYy9idWlsZC90cmFuc2xhdGlvbnMvemgtY24nO1xuLy8gaW1wb3J0ICdAY2tlZGl0b3IvY2tlZGl0b3I1LWJ1aWxkLWNsYXNzaWMvYnVpbGQvdHJhbnNsYXRpb25zL2RlLWNoJztcbi8vIGltcG9ydCAnQGNrZWRpdG9yL2NrZWRpdG9yNS1idWlsZC1jbGFzc2ljL2J1aWxkL3RyYW5zbGF0aW9ucy9lbi1nYic7XG4vLyBpbXBvcnQgJ0Bja2VkaXRvci9ja2VkaXRvcjUtYnVpbGQtY2xhc3NpYy9idWlsZC90cmFuc2xhdGlvbnMvcHQtYnInO1xuLy8gaW1wb3J0ICdAY2tlZGl0b3IvY2tlZGl0b3I1LWJ1aWxkLWNsYXNzaWMvYnVpbGQvdHJhbnNsYXRpb25zL3poJztcbi8vIGltcG9ydCAnQGNrZWRpdG9yL2NrZWRpdG9yNS1idWlsZC1jbGFzc2ljL2J1aWxkL3RyYW5zbGF0aW9ucy9kZSc7XG4vLyBpbXBvcnQgJ0Bja2VkaXRvci9ja2VkaXRvcjUtYnVpbGQtY2xhc3NpYy9idWlsZC90cmFuc2xhdGlvbnMvYXInO1xuLy8gaW1wb3J0ICdAY2tlZGl0b3IvY2tlZGl0b3I1LWJ1aWxkLWNsYXNzaWMvYnVpbGQvdHJhbnNsYXRpb25zL2NzJztcbi8vIGltcG9ydCAnQGNrZWRpdG9yL2NrZWRpdG9yNS1idWlsZC1jbGFzc2ljL2J1aWxkL3RyYW5zbGF0aW9ucy9oaSc7XG4vLyBpbXBvcnQgJ0Bja2VkaXRvci9ja2VkaXRvcjUtYnVpbGQtY2xhc3NpYy9idWlsZC90cmFuc2xhdGlvbnMvZmknO1xuLy8gaW1wb3J0ICdAY2tlZGl0b3IvY2tlZGl0b3I1LWJ1aWxkLWNsYXNzaWMvYnVpbGQvdHJhbnNsYXRpb25zL2h1Jztcbi8vIGltcG9ydCAnQGNrZWRpdG9yL2NrZWRpdG9yNS1idWlsZC1jbGFzc2ljL2J1aWxkL3RyYW5zbGF0aW9ucy9mcic7XG4vLyBpbXBvcnQgJ0Bja2VkaXRvci9ja2VkaXRvcjUtYnVpbGQtY2xhc3NpYy9idWlsZC90cmFuc2xhdGlvbnMvaXQnO1xuLy8gaW1wb3J0ICdAY2tlZGl0b3IvY2tlZGl0b3I1LWJ1aWxkLWNsYXNzaWMvYnVpbGQvdHJhbnNsYXRpb25zL3NrJztcbi8vIGltcG9ydCAnQGNrZWRpdG9yL2NrZWRpdG9yNS1idWlsZC1jbGFzc2ljL2J1aWxkL3RyYW5zbGF0aW9ucy9qYSc7XG4vLyBpbXBvcnQgJ0Bja2VkaXRvci9ja2VkaXRvcjUtYnVpbGQtY2xhc3NpYy9idWlsZC90cmFuc2xhdGlvbnMvZXMnO1xuLy8gaW1wb3J0ICdAY2tlZGl0b3IvY2tlZGl0b3I1LWJ1aWxkLWNsYXNzaWMvYnVpbGQvdHJhbnNsYXRpb25zL3ZpJztcbmltcG9ydCB7IExhbmd1YWdlc01hcCB9IGZyb20gJy4uLy4uL2VudW1zL2xhbmd1YWdlcy1tYXAnO1xuaW1wb3J0IHsgaXNCYXNlNjRVcGxvYWRBZGFwdGVyIH0gZnJvbSAnLi9ja0VkaXRvclVwbG9hZCc7XG5pbXBvcnQgeyBDbGFzc2ljRWRpdG9yIH0gZnJvbSAnY2tlZGl0b3I1JztcbmltcG9ydCB7IENrRWRpdG9yVHlwZXNPYmplY3QgfSBmcm9tICcuLi8uLi9vYmplY3QvY2stZWRpdG9yLW9iamVjdCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2NrLWVkaXRvci1jb250cm9sJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2NrLWVkaXRvci1jb250cm9sLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vY2stZWRpdG9yLWNvbnRyb2wuY29tcG9uZW50LnNjc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgQ2tFZGl0b3JDb250cm9sQ29tcG9uZW50IHtcbiAgcHJpdmF0ZSBjb25maWc6IENvbmZpZ1N0YXRlU2VydmljZSA9IGluamVjdChDb25maWdTdGF0ZVNlcnZpY2UpO1xuICBwcml2YXRlIF9yZXN0U2VydmljZTogUmVzdFNlcnZpY2UgPSBpbmplY3QoUmVzdFNlcnZpY2UpO1xuICAvKipjay1FZGl0b3LnmoTlgLwgKi9cbiAgY2tFZGl0b3JWYWx1ZTogYW55ID0gJyc7XG4gIC8qKuezu+e7n+ivreiogCAqL1xuICBjdXJyZW50Q3VsdHVyZSA9IHRoaXMuY29uZmlnLmdldE9uZSgnbG9jYWxpemF0aW9uJyk/LmN1cnJlbnRDdWx0dXJlPy5uYW1lO1xuICAvKiog6K+t6KiA55uu5b2V77yM5Yy56YWN57O757uf6K+t6KiA77yM6K6+572uY2tlZGl0b3LnmoTor63oqIAgKi9cbiAgbGFuZ3VhZ2VzTWFwID0gTGFuZ3VhZ2VzTWFwO1xuXG4gIHB1YmxpYyBFZGl0b3I6IGFueSA9IENsYXNzaWNFZGl0b3I7XG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIGxldCBjb25maWdzPSBDa0VkaXRvclR5cGVzT2JqZWN0WydkZWZhdWx0J11cbiAgICBjb25maWdzLmxhbmd1YWdlPSB0aGlzLmxhbmd1YWdlc01hcFt0aGlzLmN1cnJlbnRDdWx0dXJlXSxcbiAgICB0aGlzLmNrT3B0aW9ucyA9Y29uZmlncztcbiAgICAvLyBpbXBvcnQoJ0Bja2VkaXRvci9ja2VkaXRvcjUtYnVpbGQtY2xhc3NpYycpLnRoZW4ocmVzID0+IHtcbiAgICAvLyAgIHRoaXMuRWRpdG9yID0gcmVzLmRlZmF1bHRcbiAgICAvLyAgIHRoaXMuY2tPcHRpb25zID0ge1xuICAgIC8vICAgICBsYW5ndWFnZTogdGhpcy5sYW5ndWFnZXNNYXBbdGhpcy5jdXJyZW50Q3VsdHVyZV0sXG4gICAgLy8gICAgIHRvb2xiYXI6IHtcbiAgICAvLyAgICAgICBpdGVtczogW1xuICAgIC8vICAgICAgICAgJ2hlYWRpbmcnLCAnfCcsXG4gICAgLy8gICAgICAgICAnYm9sZCcsICdpdGFsaWMnLFxuICAgIC8vICAgICAgICAgJ2xpbmsnLCAnfCcsXG4gICAgLy8gICAgICAgICAnYnVsbGV0ZWRMaXN0JywgJ251bWJlcmVkTGlzdCcsXG4gICAgLy8gICAgICAgICAnaW5zZXJ0VGFibGUnLCAnfCcsXG4gICAgLy8gICAgICAgICAndXBsb2FkSW1hZ2UnLCAnfCcsXG4gICAgLy8gICAgICAgICAndW5kbycsICdyZWRvJ1xuICAgIC8vICAgICAgIF0sXG4gICAgLy8gICAgICAgdmlld3BvcnRUb3BPZmZzZXQ6IDMwLFxuICAgIC8vICAgICAgIHNob3VsZE5vdEdyb3VwV2hlbkZ1bGw6IHRydWVcbiAgICAvLyAgICAgfSxcbiAgICAvLyAgICAgaW1hZ2U6IHtcbiAgICAvLyAgICAgICB0b29sYmFyOiBbXG4gICAgLy8gICAgICAgICAnaW1hZ2VTdHlsZTphbGlnbkxlZnQnLCAnaW1hZ2VTdHlsZTphbGlnbkNlbnRlcicsICdpbWFnZVN0eWxlOmFsaWduUmlnaHQnLFxuICAgIC8vICAgICAgICAgJ3wnLFxuICAgIC8vICAgICAgICAgJ3Jlc2l6ZUltYWdlJyxcbiAgICAvLyAgICAgICAgICd8JyxcbiAgICAvLyAgICAgICAgICdpbWFnZVRleHRBbHRlcm5hdGl2ZSdcbiAgICAvLyAgICAgICBdLFxuICAgIC8vICAgICAgIHN0eWxlczogW1xuICAgIC8vICAgICAgICAgJ2FsaWduTGVmdCcsICdhbGlnbkNlbnRlcicsICdhbGlnblJpZ2h0J1xuICAgIC8vICAgICAgIF0sXG4gICAgLy8gICAgICAgcmVzaXplT3B0aW9uczogW3tcbiAgICAvLyAgICAgICAgIG5hbWU6ICdyZXNpemVJbWFnZTpvcmlnaW5hbCcsXG4gICAgLy8gICAgICAgICBsYWJlbDogJ09yaWdpbmFsJyxcbiAgICAvLyAgICAgICAgIHZhbHVlOiBudWxsXG4gICAgLy8gICAgICAgfSxcbiAgICAvLyAgICAgICB7XG4gICAgLy8gICAgICAgICBuYW1lOiAncmVzaXplSW1hZ2U6MjUnLFxuICAgIC8vICAgICAgICAgbGFiZWw6ICcyNSUnLFxuICAgIC8vICAgICAgICAgdmFsdWU6ICcyNSdcbiAgICAvLyAgICAgICB9LFxuICAgIC8vICAgICAgIHtcbiAgICAvLyAgICAgICAgIG5hbWU6ICdyZXNpemVJbWFnZTo1MCcsXG4gICAgLy8gICAgICAgICBsYWJlbDogJzUwJScsXG4gICAgLy8gICAgICAgICB2YWx1ZTogJzUwJ1xuICAgIC8vICAgICAgIH0sXG4gICAgLy8gICAgICAge1xuICAgIC8vICAgICAgICAgbmFtZTogJ3Jlc2l6ZUltYWdlOjc1JyxcbiAgICAvLyAgICAgICAgIGxhYmVsOiAnNzUlJyxcbiAgICAvLyAgICAgICAgIHZhbHVlOiAnNzUnXG4gICAgLy8gICAgICAgfVxuICAgIC8vICAgICAgIF0sXG4gICAgLy8gICAgIH0sXG4gICAgLy8gICB9XG4gICAgLy8gfSlcbiAgfVxuICBwdWJsaWMgb25SZWFkeShlZGl0b3IpIHtcbiAgICBsZXQgX3RoaXMgPSB0aGlzO1xuICAgIGVkaXRvci5wbHVnaW5zLmdldCgnRmlsZVJlcG9zaXRvcnknKS5jcmVhdGVVcGxvYWRBZGFwdGVyID0gZnVuY3Rpb24gKGxvYWRlcjogYW55KSB7XG4gICAgICByZXR1cm4gbmV3IGlzQmFzZTY0VXBsb2FkQWRhcHRlcihsb2FkZXIsIF90aGlzLmltYWdlc0NvbnRhaW5lck5hbWUsIF90aGlzLl9yZXN0U2VydmljZSk7XG4gICAgfTtcbiAgfVxuXG4gIC8qKmNrLWVkaXRvcumFjee9riAqL1xuICBja09wdGlvbnM6IGFueTtcbiAgLyoq5a+M5paH5pys5YaF5a655pS55Y+YICovXG4gIGNrRWRpdG9yQ2hhbmdlKGV2ZW50KSB7XG4gICAgdGhpcy5zZXRja2VkaXRvcklucHV0KGV2ZW50KTtcbiAgfVxuXG4gIHByaXZhdGUgZmIgPSBpbmplY3QoRm9ybUJ1aWxkZXIpO1xuXG4gIC8qKuihqOWNleWunuS9kyAqL1xuICBfZW50aXR5OiBGb3JtR3JvdXAgfCB1bmRlZmluZWQ7XG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXQgZW50aXR5KHY6IGFueSkge1xuICAgIHRoaXMuX2VudGl0eSA9IHY7XG4gICAgdGhpcy5kYXRhTG9hZGVkKCk7XG4gIH1cblxuICAvKirlrZfmrrXphY3nva7liJfooaggKi9cbiAgX2ZpZWxkczogYW55ID0gJyc7XG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXQgZmllbGRzKHY6IGFueSkge1xuICAgIHRoaXMuX2ZpZWxkcyA9IHY7XG4gICAgdGhpcy5kYXRhTG9hZGVkKCk7XG4gIH1cblxuICAvKirniLbnuqflrZfmrrXlkI3np7DvvIznlKjkuo7kuLrooajljZXorr7nva7mjqfku7botYvlgLwgKi9cbiAgX3BhcmVudEZpbGVkTmFtZTogYW55O1xuICBASW5wdXQoKVxuICBwdWJsaWMgc2V0IHBhcmVudEZpbGVkTmFtZSh2OiBhbnkpIHtcbiAgICB0aGlzLl9wYXJlbnRGaWxlZE5hbWUgPSB2O1xuICAgIHRoaXMuZGF0YUxvYWRlZCgpO1xuICB9XG4gIC8qKueItue6p+Wtl+auteWQjeensO+8jOeUqOS6juS4uuihqOWNleiuvue9ruaOp+S7tui1i+WAvCAqL1xuICBfc2VsZWN0ZWQ6IGFueTtcbiAgQElucHV0KClcbiAgcHVibGljIHNldCBzZWxlY3RlZCh2OiBhbnkpIHtcbiAgICB0aGlzLl9zZWxlY3RlZCA9IHY7XG4gICAgdGhpcy5kYXRhTG9hZGVkKCk7XG4gIH1cbiAgQFZpZXdDaGlsZCgnc3VibWl0Y2xpY2snLCB7IHN0YXRpYzogdHJ1ZSB9KSBzdWJtaXRjbGljazogRWxlbWVudFJlZjtcblxuICBnZXQgZXh0cmFQcm9wZXJ0aWVzKCkge1xuICAgIHJldHVybiB0aGlzLl9lbnRpdHkuZ2V0KCdleHRyYVByb3BlcnRpZXMnKSBhcyBGb3JtR3JvdXA7XG4gIH1cbiAgZ2V0IGNrZWRpdG9ySW5wdXQoKSB7XG4gICAgcmV0dXJuIHRoaXMuZXh0cmFQcm9wZXJ0aWVzLmdldCh0aGlzLl9maWVsZHMuZmllbGQubmFtZSkgYXMgRm9ybUdyb3VwO1xuICB9XG4gIC8qKuaVsOaNruWKoOi9veWujOaIkCAqL1xuICBhc3luYyBkYXRhTG9hZGVkKCkge1xuICAgIGlmICh0aGlzLl9maWVsZHMgJiYgdGhpcy5fZW50aXR5KSB7XG4gICAgICBhd2FpdCB0aGlzLkFmdGVySW5pdCgpO1xuICAgICAgLy8gbGV0IGZpbGxpbmdJbj10aGlzLl9zZWxlY3RlZHx8dGhpcy5fZmllbGRzLmZpZWxkLmZvcm1Db25maWd1cmF0aW9uWydDa2VkaXRvci5Jbml0aWFsQ29udGVudCddXG4gICAgICAvLyB0aGlzLkVkaXRvci5zZXREYXRhKGZpbGxpbmdJbik7XG4gICAgICB0aGlzLmNrRWRpdG9yVmFsdWUgPVxuICAgICAgICB0aGlzLl9zZWxlY3RlZCB8fCB0aGlzLl9maWVsZHMuZmllbGQuZm9ybUNvbmZpZ3VyYXRpb25bJ0NrZWRpdG9yLkluaXRpYWxDb250ZW50J107XG4gICAgICB0aGlzLnNldGNrZWRpdG9ySW5wdXQodGhpcy5ja0VkaXRvclZhbHVlKTtcbiAgICAgIHRoaXMuc3VibWl0Y2xpY2submF0aXZlRWxlbWVudC5jbGljaygpO1xuICAgIH1cbiAgfVxuXG4gIGludmFsaWRmZWVkYmFjayA9IGZhbHNlO1xuICAvL+iuvue9ruWAvFxuICBzZXRja2VkaXRvcklucHV0KHZhbCkge1xuICAgIHRoaXMuaW52YWxpZGZlZWRiYWNrID0gdHJ1ZTtcbiAgICB0aGlzLmNrZWRpdG9ySW5wdXQucGF0Y2hWYWx1ZSh2YWwpO1xuICB9XG5cbiAgLyoq5Zu+54mH5a655Zmo5ZCN56ewICovXG4gIGltYWdlc0NvbnRhaW5lck5hbWU6IGFueSA9ICcnO1xuICBBZnRlckluaXQoKSB7XG4gICAgcmV0dXJuIG5ldyBQcm9taXNlKHJlc29sdmUgPT4ge1xuICAgICAgbGV0IFZhbGlkYXRvcnNBcnJheSA9IFtdO1xuICAgICAgaWYgKHRoaXMuX2ZpZWxkcy5yZXF1aXJlZCkge1xuICAgICAgICBWYWxpZGF0b3JzQXJyYXkucHVzaChWYWxpZGF0b3JzLnJlcXVpcmVkKTtcbiAgICAgIH1cbiAgICAgIGxldCBuZXdDb250cm9sID0gdGhpcy5mYi5jb250cm9sKFxuICAgICAgICB0aGlzLl9zZWxlY3RlZFxuICAgICAgICAgID8gdGhpcy5fc2VsZWN0ZWRcbiAgICAgICAgICA6IHRoaXMuX2ZpZWxkcy5maWVsZC5mb3JtQ29uZmlndXJhdGlvblsnQ2tlZGl0b3IuSW5pdGlhbENvbnRlbnQnXSxcbiAgICAgICAgVmFsaWRhdG9yc0FycmF5XG4gICAgICApO1xuICAgICAgdGhpcy5leHRyYVByb3BlcnRpZXMuc2V0Q29udHJvbCh0aGlzLl9maWVsZHMuZmllbGQubmFtZSwgbmV3Q29udHJvbCk7XG4gICAgICB0aGlzLmltYWdlc0NvbnRhaW5lck5hbWUgPVxuICAgICAgICB0aGlzLl9maWVsZHMuZmllbGQuZm9ybUNvbmZpZ3VyYXRpb25bJ0NrZWRpdG9yLkltYWdlc0NvbnRhaW5lck5hbWUnXTtcbiAgICAgIHJlc29sdmUodHJ1ZSk7XG4gICAgfSk7XG4gIH1cbn1cbiIsIjxmb3JtIFtmb3JtR3JvdXBdPVwiX2VudGl0eVwiPlxuICAgIDxkaXYgZm9ybUdyb3VwTmFtZT1cImV4dHJhUHJvcGVydGllc1wiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwibWItMlwiPlxuICAgICAgICAgICAgPGxhYmVsIGNsYXNzPVwiZm9ybS1sYWJlbFwiICpuZ0lmPVwiX2ZpZWxkcy5kaXNwbGF5TmFtZVwiPnt7IF9maWVsZHMuZGlzcGxheU5hbWUgfX08L2xhYmVsPlxuICAgICAgICAgICAgPGNrZWRpdG9yIFtlZGl0b3JdPVwiRWRpdG9yXCIgKm5nSWY9XCJFZGl0b3JcIiBbY29uZmlnXT1cImNrT3B0aW9uc1wiIChyZWFkeSk9XCJvblJlYWR5KCRldmVudClcIiBbZm9ybUNvbnRyb2xOYW1lXT1cIl9maWVsZHMuZmllbGQubmFtZVwiPlxuICAgICAgICAgICAgPC9ja2VkaXRvcj5cbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJja2VkaXRvcklucHV0Py5lcnJvcnM/LnJlcXVpcmVkJiZpbnZhbGlkZmVlZGJhY2tcIj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidGV4dC1kYW5nZXIgXCI+XG4gICAgICAgICAgICAgICAgICAgIHt7J0RpZ25pdGVBYnBGb3Jtczo6VmFsaWRhdGU6UmVxdWlyZWQnIHwgYWJwTG9jYWxpemF0aW9uOicgJ319XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmb3JtLXRleHRcIiAqbmdJZj1cIl9maWVsZHMuZmllbGQuZGVzY3JpcHRpb25cIj57e19maWVsZHMuZmllbGQuZGVzY3JpcHRpb259fTwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgICA8YnV0dG9uIHR5cGU9XCJzdWJtaXRcIiBzdHlsZT1cImRpc3BsYXk6IG5vbmU7XCIgI3N1Ym1pdGNsaWNrPjwvYnV0dG9uPlxuPC9mb3JtPiJdfQ==
|