@dignite-ng/expand.ck-editor 3.0.0-rc.3 → 3.0.0-rc.30
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/README.md +117 -13
- package/esm2022/config/ck-editor-config.module.mjs +1 -1
- package/esm2022/config/dignite-ng-expand.ck-editor-config.mjs +1 -1
- package/esm2022/config/enums/index.mjs +1 -1
- package/esm2022/config/enums/route-names.mjs +1 -1
- package/esm2022/config/providers/index.mjs +1 -1
- package/esm2022/config/providers/route.provider.mjs +1 -1
- package/esm2022/config/public-api.mjs +1 -1
- package/esm2022/dignite-ng-expand.ck-editor.mjs +1 -1
- package/esm2022/lib/adapter/ckEditorUpload.mjs +1 -1
- package/esm2022/lib/adapter/index.mjs +1 -1
- package/esm2022/lib/ck-editor-routing.module.mjs +1 -1
- package/esm2022/lib/ck-editor.module.mjs +5 -2
- package/esm2022/lib/dynamic-form/ck-editor/ck-editor-config.component.mjs +12 -7
- package/esm2022/lib/dynamic-form/ck-editor/ck-editor-config.mjs +3 -1
- package/esm2022/lib/dynamic-form/ck-editor/ck-editor-control.component.mjs +25 -10
- package/esm2022/lib/dynamic-form/ck-editor/ck-editor-view.component.mjs +39 -0
- package/esm2022/lib/dynamic-form/ck-editor/ckEditorUpload.mjs +1 -1
- package/esm2022/lib/dynamic-form/ck-editor/index.mjs +2 -1
- package/esm2022/lib/dynamic-form/form-control-group.mjs +3 -2
- package/esm2022/lib/dynamic-form/index.mjs +1 -1
- package/esm2022/lib/enums/ck-editor-mode.enum.mjs +8 -0
- package/esm2022/lib/enums/languages-map.mjs +1 -1
- package/esm2022/lib/interfaces/form-config-interfaces.mjs +1 -1
- package/esm2022/lib/interfaces/index.mjs +1 -1
- package/esm2022/lib/object/ck-editor-object.mjs +341 -340
- package/esm2022/lib/services/index.mjs +1 -1
- package/esm2022/lib/services/set-ck-editor-configs.service.mjs +5 -3
- package/esm2022/public-api.mjs +2 -1
- package/fesm2022/dignite-ng-expand.ck-editor-config.mjs.map +1 -1
- package/fesm2022/dignite-ng-expand.ck-editor.mjs +425 -360
- package/fesm2022/dignite-ng-expand.ck-editor.mjs.map +1 -1
- package/lib/ck-editor.module.d.ts +6 -5
- package/lib/dynamic-form/ck-editor/ck-editor-config.component.d.ts +3 -0
- package/lib/dynamic-form/ck-editor/ck-editor-config.d.ts +2 -0
- package/lib/dynamic-form/ck-editor/ck-editor-control.component.d.ts +2 -0
- package/lib/dynamic-form/ck-editor/ck-editor-view.component.d.ts +17 -0
- package/lib/dynamic-form/ck-editor/index.d.ts +1 -0
- package/lib/enums/ck-editor-mode.enum.d.ts +5 -0
- package/lib/object/ck-editor-object.d.ts +4 -8
- package/package.json +12 -10
- package/public-api.d.ts +1 -0
package/README.md
CHANGED
|
@@ -1,24 +1,128 @@
|
|
|
1
|
-
|
|
1
|
+
## ℹ️ Description
|
|
2
2
|
|
|
3
|
-
This
|
|
3
|
+
ABP Framework is a complete open-source infrastructure to create modern web applications by following the best practices and conventions of software development. This package is a part of the [ABP Framework](https://abp.io) and contains client-side files.
|
|
4
|
+
For more information, check out the below links:
|
|
4
5
|
|
|
5
|
-
|
|
6
|
+
🔗Official Website: https://abp.io
|
|
6
7
|
|
|
7
|
-
|
|
8
|
-
> Note: Don't forget to add `--project ck-editor` or else it will be added to the default project in your `angular.json` file.
|
|
8
|
+
🔗Commercial Demo: https://abp.io/demo
|
|
9
9
|
|
|
10
|
-
|
|
10
|
+
🔗GitHub Repository: https://github.com/abpframework/abp
|
|
11
11
|
|
|
12
|
-
|
|
12
|
+
🔗Official Theme: https://www.LeptonTheme.com
|
|
13
13
|
|
|
14
|
-
|
|
14
|
+
🔗Documentation: https://abp.io/docs/latest/
|
|
15
15
|
|
|
16
|
-
|
|
16
|
+
🔗Community: https://abp.io/community/
|
|
17
17
|
|
|
18
|
-
|
|
18
|
+
🔗Blog: https://abp.io/blog/
|
|
19
19
|
|
|
20
|
-
|
|
20
|
+
🔗Books: https://abp.io/books
|
|
21
21
|
|
|
22
|
-
|
|
22
|
+
🔗Twitter: https://twitter.com/abpframework
|
|
23
23
|
|
|
24
|
-
|
|
24
|
+
🔗Discord: https://abp.io/community/discord
|
|
25
|
+
|
|
26
|
+
🔗Stackoverflow: https://stackoverflow.com/questions/tagged/abp
|
|
27
|
+
|
|
28
|
+
🔗YouTube: https://www.youtube.com/@Volosoft
|
|
29
|
+
|
|
30
|
+
|
|
31
|
+
## 🤔 Why ABP Platform?
|
|
32
|
+
|
|
33
|
+
Why should you use the ABP.IO Platform instead of creating a new solution from scratch?
|
|
34
|
+
|
|
35
|
+
You can find the answer here 👉🏻 [Why ABP Platform?](https://abp.io/docs/latest/others/why-abp-platform)
|
|
36
|
+
|
|
37
|
+
|
|
38
|
+
## 🚀 Key Features of the ABP Framework
|
|
39
|
+
|
|
40
|
+
🟡 Modularity
|
|
41
|
+
|
|
42
|
+
🟡 Multi-Tenancy
|
|
43
|
+
|
|
44
|
+
🟡 Bootstrap Tag Helpers
|
|
45
|
+
|
|
46
|
+
🟡 Dynamic Forms
|
|
47
|
+
|
|
48
|
+
🟡 Authentication
|
|
49
|
+
|
|
50
|
+
🟡 Authorization
|
|
51
|
+
|
|
52
|
+
🟡 Distributed Event Bus
|
|
53
|
+
|
|
54
|
+
🟡 BLOB Storing
|
|
55
|
+
|
|
56
|
+
🟡 Text Templating
|
|
57
|
+
|
|
58
|
+
🟡 Tooling: ABP CLI
|
|
59
|
+
|
|
60
|
+
🟡 Cross-Cutting Concerns
|
|
61
|
+
|
|
62
|
+
🟡 Bundling & Minification
|
|
63
|
+
|
|
64
|
+
🟡 Virtual File System
|
|
65
|
+
|
|
66
|
+
🟡 Theming
|
|
67
|
+
|
|
68
|
+
🟡 Background Jobs
|
|
69
|
+
|
|
70
|
+
🟡 DDD Infrastructure
|
|
71
|
+
|
|
72
|
+
🟡 Auto REST APIs
|
|
73
|
+
|
|
74
|
+
🟡 Dynamic Client Proxies
|
|
75
|
+
|
|
76
|
+
🟡 Multiple Database Providers
|
|
77
|
+
|
|
78
|
+
🟡 Data filtering
|
|
79
|
+
|
|
80
|
+
🟡 Test Infrastructure
|
|
81
|
+
|
|
82
|
+
🟡 Audit Logging
|
|
83
|
+
|
|
84
|
+
🟡 Object to Object Mapping
|
|
85
|
+
|
|
86
|
+
🟡 Email & SMS Abstractions
|
|
87
|
+
|
|
88
|
+
🟡 Localization
|
|
89
|
+
|
|
90
|
+
🟡 Setting Management
|
|
91
|
+
|
|
92
|
+
🟡 Extension Methods
|
|
93
|
+
|
|
94
|
+
🟡 Aspect Oriented Programming
|
|
95
|
+
|
|
96
|
+
🟡 Dependency Injection
|
|
97
|
+
|
|
98
|
+
|
|
99
|
+
## 🧐 How It Works?
|
|
100
|
+
|
|
101
|
+
The following page explains how you use the ABP.IO Platform as a .NET developer 👉 [How it works?](https://abp.io/how-it-works)
|
|
102
|
+
|
|
103
|
+
|
|
104
|
+
### 📘 Supported Database Providers
|
|
105
|
+
|
|
106
|
+
🔵 Entity Framework Core
|
|
107
|
+
|
|
108
|
+
🔵 MongoDB
|
|
109
|
+
|
|
110
|
+
🔵 Dapper
|
|
111
|
+
|
|
112
|
+
|
|
113
|
+
### 🎴 Supported UI Frameworks
|
|
114
|
+
|
|
115
|
+
🔵 Angular
|
|
116
|
+
|
|
117
|
+
🔵 Razor Pages
|
|
118
|
+
|
|
119
|
+
🔵 Blazor Web Assembly
|
|
120
|
+
|
|
121
|
+
🔵 Blazor Server
|
|
122
|
+
|
|
123
|
+
🔵 MAUI with Blazor Hybrid
|
|
124
|
+
|
|
125
|
+
|
|
126
|
+
## 📫 Bug & Support
|
|
127
|
+
|
|
128
|
+
Support for open-source ABP Framework client-side packages is available at [GitHub Issues](https://github.com/abpframework/abp/issues), and the commercial support is available at [abp.io/support](https://abp.io/support/questions).
|
|
@@ -15,4 +15,4 @@ export class CkEditorConfigModule {
|
|
|
15
15
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.5", ngImport: i0, type: CkEditorConfigModule, decorators: [{
|
|
16
16
|
type: NgModule
|
|
17
17
|
}] });
|
|
18
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
18
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2stZWRpdG9yLWNvbmZpZy5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jay1lZGl0b3IvY29uZmlnL3NyYy9jay1lZGl0b3ItY29uZmlnLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQXVCLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM5RCxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQzs7QUFHdkUsTUFBTSxPQUFPLG9CQUFvQjtJQUMvQixNQUFNLENBQUMsT0FBTztRQUNaLE9BQU87WUFDTCxRQUFRLEVBQUUsb0JBQW9CO1lBQzlCLFNBQVMsRUFBRSxDQUFDLHlCQUF5QixDQUFDO1NBQ3ZDLENBQUM7SUFDSixDQUFDOzhHQU5VLG9CQUFvQjsrR0FBcEIsb0JBQW9COytHQUFwQixvQkFBb0I7OzJGQUFwQixvQkFBb0I7a0JBRGhDLFFBQVEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBNb2R1bGVXaXRoUHJvdmlkZXJzLCBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBja19lZGl0b3JfUk9VVEVfUFJPVklERVJTIH0gZnJvbSAnLi9wcm92aWRlcnMvcm91dGUucHJvdmlkZXInO1xyXG5cclxuQE5nTW9kdWxlKClcclxuZXhwb3J0IGNsYXNzIENrRWRpdG9yQ29uZmlnTW9kdWxlIHtcclxuICBzdGF0aWMgZm9yUm9vdCgpOiBNb2R1bGVXaXRoUHJvdmlkZXJzPENrRWRpdG9yQ29uZmlnTW9kdWxlPiB7XHJcbiAgICByZXR1cm4ge1xyXG4gICAgICBuZ01vZHVsZTogQ2tFZGl0b3JDb25maWdNb2R1bGUsXHJcbiAgICAgIHByb3ZpZGVyczogW2NrX2VkaXRvcl9ST1VURV9QUk9WSURFUlNdLFxyXG4gICAgfTtcclxuICB9XHJcbn1cclxuIl19
|
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
* Generated bundle index. Do not edit.
|
|
3
3
|
*/
|
|
4
4
|
export * from './public-api';
|
|
5
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlnbml0ZS1uZy1leHBhbmQuY2stZWRpdG9yLWNvbmZpZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NrLWVkaXRvci9jb25maWcvc3JjL2RpZ25pdGUtbmctZXhwYW5kLmNrLWVkaXRvci1jb25maWcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLGNBQWMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogR2VuZXJhdGVkIGJ1bmRsZSBpbmRleC4gRG8gbm90IGVkaXQuXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9wdWJsaWMtYXBpJztcbiJdfQ==
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export * from './route-names';
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jay1lZGl0b3IvY29uZmlnL3NyYy9lbnVtcy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLGVBQWUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vcm91dGUtbmFtZXMnO1xyXG4iXX0=
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGUtbmFtZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jay1lZGl0b3IvY29uZmlnL3NyYy9lbnVtcy9yb3V0ZS1uYW1lcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiXHJcbmV4cG9ydCBjb25zdCBlbnVtIGVDa0VkaXRvclJvdXRlTmFtZXMge1xyXG4gXHJcbiAgQ2tFZGl0b3JEZW1vID0gXCJDay1FZGl0b3IgRGVtb1wiLFxyXG4gIFxyXG59XHJcbiJdfQ==
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export * from './route.provider';
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jay1lZGl0b3IvY29uZmlnL3NyYy9wcm92aWRlcnMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxrQkFBa0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vcm91dGUucHJvdmlkZXInO1xyXG4iXX0=
|
|
@@ -21,4 +21,4 @@ export function configureRoutes(routesService) {
|
|
|
21
21
|
]);
|
|
22
22
|
};
|
|
23
23
|
}
|
|
24
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
24
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGUucHJvdmlkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jay1lZGl0b3IvY29uZmlnL3NyYy9wcm92aWRlcnMvcm91dGUucHJvdmlkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFlLGFBQWEsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUMxRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBR2hELE1BQU0sQ0FBQyxNQUFNLHlCQUF5QixHQUFHO0lBQ3ZDO1FBQ0UsT0FBTyxFQUFFLGVBQWU7UUFDeEIsVUFBVSxFQUFFLGVBQWU7UUFDM0IsSUFBSSxFQUFFLENBQUMsYUFBYSxDQUFDO1FBQ3JCLEtBQUssRUFBRSxJQUFJO0tBQ1o7Q0FDRixDQUFDO0FBRUYsTUFBTSxVQUFVLGVBQWUsQ0FBQyxhQUE0QjtJQUMxRCxPQUFPLEdBQUcsRUFBRTtRQUNWLGFBQWEsQ0FBQyxHQUFHLENBQUM7WUFDaEI7Z0JBQ0UsSUFBSSxFQUFFLGlCQUFpQjtnQkFDdkIsSUFBSSx5REFBaUM7Z0JBQ3JDLFNBQVMsRUFBRSwwQkFBMEI7Z0JBQ3JDLE1BQU0sNkNBQXlCO2dCQUMvQixLQUFLLEVBQUUsQ0FBQzthQUNUO1NBQ0YsQ0FBQyxDQUFDO0lBQ0wsQ0FBQyxDQUFDO0FBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGVMYXlvdXRUeXBlLCBSb3V0ZXNTZXJ2aWNlIH0gZnJvbSAnQGFicC9uZy5jb3JlJztcclxuaW1wb3J0IHsgQVBQX0lOSVRJQUxJWkVSIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IGVDa0VkaXRvclJvdXRlTmFtZXMgfSBmcm9tICcuLi9lbnVtcyc7XHJcblxyXG5leHBvcnQgY29uc3QgY2tfZWRpdG9yX1JPVVRFX1BST1ZJREVSUyA9IFtcclxuICB7XHJcbiAgICBwcm92aWRlOiBBUFBfSU5JVElBTElaRVIsXHJcbiAgICB1c2VGYWN0b3J5OiBjb25maWd1cmVSb3V0ZXMsXHJcbiAgICBkZXBzOiBbUm91dGVzU2VydmljZV0sXHJcbiAgICBtdWx0aTogdHJ1ZSxcclxuICB9LFxyXG5dO1xyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGNvbmZpZ3VyZVJvdXRlcyhyb3V0ZXNTZXJ2aWNlOiBSb3V0ZXNTZXJ2aWNlKSB7XHJcbiAgcmV0dXJuICgpID0+IHtcclxuICAgIHJvdXRlc1NlcnZpY2UuYWRkKFtcclxuICAgICAge1xyXG4gICAgICAgIHBhdGg6ICcvY2stZWRpdG9yL2RvbWUnLFxyXG4gICAgICAgIG5hbWU6ZUNrRWRpdG9yUm91dGVOYW1lcy5Da0VkaXRvckRlbW8sXHJcbiAgICAgICAgaWNvbkNsYXNzOiAnZmFzIGZhIGZhLWZpbGUtYXJjaGl2ZS1vJyxcclxuICAgICAgICBsYXlvdXQ6IGVMYXlvdXRUeXBlLmFwcGxpY2F0aW9uLFxyXG4gICAgICAgIG9yZGVyOiA5LFxyXG4gICAgICB9LFxyXG4gICAgXSk7XHJcbiAgfTtcclxufVxyXG4iXX0=
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
export * from './enums';
|
|
2
2
|
export * from './ck-editor-config.module';
|
|
3
3
|
export * from './providers';
|
|
4
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
4
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NrLWVkaXRvci9jb25maWcvc3JjL3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxTQUFTLENBQUM7QUFDeEIsY0FBYywyQkFBMkIsQ0FBQztBQUMxQyxjQUFjLGFBQWEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vZW51bXMnO1xyXG5leHBvcnQgKiBmcm9tICcuL2NrLWVkaXRvci1jb25maWcubW9kdWxlJztcclxuZXhwb3J0ICogZnJvbSAnLi9wcm92aWRlcnMnO1xyXG4iXX0=
|
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
* Generated bundle index. Do not edit.
|
|
3
3
|
*/
|
|
4
4
|
export * from './public-api';
|
|
5
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlnbml0ZS1uZy1leHBhbmQuY2stZWRpdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcGFja2FnZXMvY2stZWRpdG9yL3NyYy9kaWduaXRlLW5nLWV4cGFuZC5jay1lZGl0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLGNBQWMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogR2VuZXJhdGVkIGJ1bmRsZSBpbmRleC4gRG8gbm90IGVkaXQuXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9wdWJsaWMtYXBpJztcbiJdfQ==
|
|
@@ -58,4 +58,4 @@ export class isBase64UploadAdapter {
|
|
|
58
58
|
});
|
|
59
59
|
}
|
|
60
60
|
}
|
|
61
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
61
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2tFZGl0b3JVcGxvYWQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jay1lZGl0b3Ivc3JjL2xpYi9hZGFwdGVyL2NrRWRpdG9yVXBsb2FkLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE1BQU0sT0FBTyxxQkFBcUI7SUFRaEMsWUFBWSxLQU1YO1FBYk0sV0FBTSxHQUFHLElBQUksVUFBVSxFQUFFLENBQUM7UUFNakMsV0FBTSxHQUFZLEtBQUssQ0FBQztRQTJEeEIsZUFBVSxHQUFHLENBQUMsS0FBVSxFQUFFLE1BQTZCLEVBQUUsRUFBRSxDQUN6RCxJQUFJLENBQUMsV0FBVyxDQUFDLE9BQU8sQ0FDdEI7WUFDRSxNQUFNLEVBQUUsTUFBTTtZQUNkLEdBQUcsRUFBRSwwQkFBMEI7WUFDL0IsTUFBTSxFQUFFO2dCQUNOLGFBQWEsRUFBRSxLQUFLLENBQUMsYUFBYTtnQkFDbEMsUUFBUSxFQUFFLEtBQUssQ0FBQyxRQUFRO2dCQUN4QixXQUFXLEVBQUUsS0FBSyxDQUFDLFdBQVc7Z0JBQzlCLFFBQVEsRUFBRSxLQUFLLENBQUMsUUFBUTthQUN6QjtZQUNELElBQUksRUFBRSxLQUFLLENBQUMsSUFBSTtTQUNqQixFQUNELEVBQUUsT0FBTyxFQUFFLGNBQWMsRUFBRSxHQUFHLE1BQU0sRUFBRSxDQUN2QyxDQUFDO1FBakVGLElBQUksQ0FBQyxNQUFNLEdBQUcsS0FBSyxDQUFDLE1BQU0sQ0FBQztRQUMzQixJQUFJLENBQUMsbUJBQW1CLEdBQUcsS0FBSyxDQUFDLG1CQUFtQixDQUFDO1FBQ3JELElBQUksQ0FBQyxXQUFXLEdBQUcsS0FBSyxDQUFDLFdBQVcsQ0FBQztRQUNyQyxJQUFJLENBQUMsV0FBVyxHQUFHLEtBQUssQ0FBQyxXQUFXLENBQUM7UUFDckMsSUFBSSxDQUFDLFdBQVcsR0FBRyxLQUFLLENBQUMsV0FBVyxDQUFDO0lBQ3ZDLENBQUM7SUFDTSxNQUFNO1FBQ1gsT0FBTyxJQUFJLE9BQU8sQ0FBQyxDQUFDLE9BQU8sRUFBRSxNQUFNLEVBQUUsRUFBRTtZQUNyQyxNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDO1lBRTNCLElBQUksSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO2dCQUNoQixNQUFNLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxFQUFFLEdBQUcsRUFBRTtvQkFDbkMsT0FBTyxDQUFDLEVBQUUsT0FBTyxFQUFFLE1BQU0sQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDO2dCQUN0QyxDQUFDLENBQUMsQ0FBQztnQkFFSCxNQUFNLENBQUMsZ0JBQWdCLENBQUMsT0FBTyxFQUFFLEdBQUcsQ0FBQyxFQUFFO29CQUNyQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUM7Z0JBQ2QsQ0FBQyxDQUFDLENBQUM7Z0JBRUgsTUFBTSxDQUFDLGdCQUFnQixDQUFDLE9BQU8sRUFBRSxHQUFHLEVBQUU7b0JBQ3BDLE1BQU0sRUFBRSxDQUFDO2dCQUNYLENBQUMsQ0FBQyxDQUFDO2dCQUVILElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLElBQVUsRUFBRSxFQUFFO29CQUNuQyxNQUFNLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxDQUFDO2dCQUM3QixDQUFDLENBQUMsQ0FBQztZQUNMLENBQUM7aUJBQU0sQ0FBQztnQkFDTixJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUFVLEVBQUUsRUFBRTtvQkFDbkMsSUFBSSxRQUFRLEdBQUcsSUFBSSxRQUFRLEVBQUUsQ0FBQztvQkFDOUIsUUFBUSxDQUFDLE1BQU0sQ0FBQyxNQUFNLEVBQUUsSUFBSSxFQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztvQkFDekMsSUFBSSxDQUFDLFVBQVUsQ0FBQzt3QkFDZCxJQUFJLEVBQUUsUUFBUTt3QkFDZCxhQUFhLEVBQUUsSUFBSSxDQUFDLG1CQUFtQjt3QkFDdkMsbUJBQW1CO3dCQUNuQixlQUFlO3FCQUNoQixDQUFDLENBQUMsU0FBUyxDQUNWLENBQUMsUUFBYSxFQUFFLEVBQUU7d0JBQ2hCLElBQUksUUFBUSxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsT0FBTyxDQUFDLHNCQUFzQixDQUFDLENBQUM7d0JBQ2hFLE1BQU0sV0FBVyxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsY0FBYyxFQUFFLENBQUM7d0JBQ3RELElBQUksTUFBTSxHQUFHLEdBQUcsV0FBVyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyw0QkFBNEIsSUFBSSxDQUFDLG1CQUFtQixJQUFJLFFBQVEsQ0FBQyxRQUFRLGFBQWEsUUFBUSxFQUFFLENBQUM7d0JBQzdJLE9BQU8sQ0FBQyxFQUFFLE9BQU8sRUFBRSxNQUFNLEVBQUUsQ0FBQyxDQUFDO29CQUMvQixDQUFDLEVBQ0QsS0FBSyxDQUFDLEVBQUU7d0JBQ04sTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO29CQUNoQixDQUFDLENBQ0YsQ0FBQztnQkFDSixDQUFDLENBQUMsQ0FBQztZQUNMLENBQUM7UUFDSCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7Q0FpQkYiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb25maWdTdGF0ZVNlcnZpY2UsIEVudmlyb25tZW50U2VydmljZSwgUmVzdCwgUmVzdFNlcnZpY2UgfSBmcm9tICdAYWJwL25nLmNvcmUnO1xyXG5cclxuZXhwb3J0IGNsYXNzIGlzQmFzZTY0VXBsb2FkQWRhcHRlciB7XHJcbiAgcHVibGljIHJlYWRlciA9IG5ldyBGaWxlUmVhZGVyKCk7XHJcbiAgY29uZmlnU3RhdGU6IENvbmZpZ1N0YXRlU2VydmljZTtcclxuICBlbnZpcm9ubWVudDogRW52aXJvbm1lbnRTZXJ2aWNlO1xyXG4gIHJlc3RTZXJ2aWNlOiBSZXN0U2VydmljZTtcclxuICBsb2FkZXI6IGFueTtcclxuICBJbWFnZXNDb250YWluZXJOYW1lOiBhbnk7XHJcbiAgQmFzZTY0OiBib29sZWFuID0gZmFsc2U7XHJcbiAgY29uc3RydWN0b3IoaW5wdXQ6IHtcclxuICAgIGxvYWRlcjogYW55O1xyXG4gICAgSW1hZ2VzQ29udGFpbmVyTmFtZTogYW55O1xyXG4gICAgcmVzdFNlcnZpY2U6IGFueTtcclxuICAgIGNvbmZpZ1N0YXRlOiBhbnk7XHJcbiAgICBlbnZpcm9ubWVudDogYW55O1xyXG4gIH0pIHtcclxuICAgIHRoaXMubG9hZGVyID0gaW5wdXQubG9hZGVyO1xyXG4gICAgdGhpcy5JbWFnZXNDb250YWluZXJOYW1lID0gaW5wdXQuSW1hZ2VzQ29udGFpbmVyTmFtZTtcclxuICAgIHRoaXMucmVzdFNlcnZpY2UgPSBpbnB1dC5yZXN0U2VydmljZTtcclxuICAgIHRoaXMuY29uZmlnU3RhdGUgPSBpbnB1dC5jb25maWdTdGF0ZTtcclxuICAgIHRoaXMuZW52aXJvbm1lbnQgPSBpbnB1dC5lbnZpcm9ubWVudDtcclxuICB9XHJcbiAgcHVibGljIHVwbG9hZCgpIHtcclxuICAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XHJcbiAgICAgIGNvbnN0IHJlYWRlciA9IHRoaXMucmVhZGVyO1xyXG5cclxuICAgICAgaWYgKHRoaXMuQmFzZTY0KSB7XHJcbiAgICAgICAgcmVhZGVyLmFkZEV2ZW50TGlzdGVuZXIoJ2xvYWQnLCAoKSA9PiB7XHJcbiAgICAgICAgICByZXNvbHZlKHsgZGVmYXVsdDogcmVhZGVyLnJlc3VsdCB9KTtcclxuICAgICAgICB9KTtcclxuXHJcbiAgICAgICAgcmVhZGVyLmFkZEV2ZW50TGlzdGVuZXIoJ2Vycm9yJywgZXJyID0+IHtcclxuICAgICAgICAgIHJlamVjdChlcnIpO1xyXG4gICAgICAgIH0pO1xyXG5cclxuICAgICAgICByZWFkZXIuYWRkRXZlbnRMaXN0ZW5lcignYWJvcnQnLCAoKSA9PiB7XHJcbiAgICAgICAgICByZWplY3QoKTtcclxuICAgICAgICB9KTtcclxuXHJcbiAgICAgICAgdGhpcy5sb2FkZXIuZmlsZS50aGVuKChmaWxlOiBCbG9iKSA9PiB7XHJcbiAgICAgICAgICByZWFkZXIucmVhZEFzRGF0YVVSTChmaWxlKTtcclxuICAgICAgICB9KTtcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICB0aGlzLmxvYWRlci5maWxlLnRoZW4oKGZpbGU6IEZpbGUpID0+IHtcclxuICAgICAgICAgIHZhciBmb3JtRGF0YSA9IG5ldyBGb3JtRGF0YSgpO1xyXG4gICAgICAgICAgZm9ybURhdGEuYXBwZW5kKCdmaWxlJywgZmlsZSwgZmlsZS5uYW1lKTtcclxuICAgICAgICAgIHRoaXMuY3JlYXRlRmlsZSh7XHJcbiAgICAgICAgICAgIGZpbGU6IGZvcm1EYXRhLFxyXG4gICAgICAgICAgICBjb250YWluZXJOYW1lOiB0aGlzLkltYWdlc0NvbnRhaW5lck5hbWUsXHJcbiAgICAgICAgICAgIC8vIGRpcmVjdG9yeUlkOiAnJyxcclxuICAgICAgICAgICAgLy8gZW50aXR5SWQ6ICcnXHJcbiAgICAgICAgICB9KS5zdWJzY3JpYmUoXHJcbiAgICAgICAgICAgIChyZXNwb25zZTogYW55KSA9PiB7XHJcbiAgICAgICAgICAgICAgbGV0IHRlbmFudElkID0gdGhpcy5jb25maWdTdGF0ZS5nZXREZWVwKCdjdXJyZW50VXNlci50ZW5hbnRJZCcpO1xyXG4gICAgICAgICAgICAgIGNvbnN0IGVudmlyb25tZW50ID0gdGhpcy5lbnZpcm9ubWVudC5nZXRFbnZpcm9ubWVudCgpO1xyXG4gICAgICAgICAgICAgIGxldCBpbWdVcmwgPSBgJHtlbnZpcm9ubWVudC5hcGlzLmRlZmF1bHQudXJsfS9hcGkvZmlsZS1leHBsb3Jlci9maWxlcy8ke3RoaXMuSW1hZ2VzQ29udGFpbmVyTmFtZX0vJHtyZXNwb25zZS5ibG9iTmFtZX0/X190ZW5hbnQ9JHt0ZW5hbnRJZH1gO1xyXG4gICAgICAgICAgICAgIHJlc29sdmUoeyBkZWZhdWx0OiBpbWdVcmwgfSk7XHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIGVycm9yID0+IHtcclxuICAgICAgICAgICAgICByZWplY3QoZXJyb3IpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICApO1xyXG4gICAgICAgIH0pO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIGNyZWF0ZUZpbGUgPSAoaW5wdXQ6IGFueSwgY29uZmlnPzogUGFydGlhbDxSZXN0LkNvbmZpZz4pID0+XHJcbiAgICB0aGlzLnJlc3RTZXJ2aWNlLnJlcXVlc3Q8YW55LCBhbnk+KFxyXG4gICAgICB7XHJcbiAgICAgICAgbWV0aG9kOiAnUE9TVCcsXHJcbiAgICAgICAgdXJsOiAnL2FwaS9maWxlLWV4cGxvcmVyL2ZpbGVzJyxcclxuICAgICAgICBwYXJhbXM6IHtcclxuICAgICAgICAgIGNvbnRhaW5lck5hbWU6IGlucHV0LmNvbnRhaW5lck5hbWUsXHJcbiAgICAgICAgICBjZWxsTmFtZTogaW5wdXQuY2VsbE5hbWUsXHJcbiAgICAgICAgICBkaXJlY3RvcnlJZDogaW5wdXQuZGlyZWN0b3J5SWQsXHJcbiAgICAgICAgICBlbnRpdHlJZDogaW5wdXQuZW50aXR5SWQsXHJcbiAgICAgICAgfSxcclxuICAgICAgICBib2R5OiBpbnB1dC5maWxlLFxyXG4gICAgICB9LFxyXG4gICAgICB7IGFwaU5hbWU6ICdGaWxlRXhwbG9yZXInLCAuLi5jb25maWcgfVxyXG4gICAgKTtcclxufVxyXG4iXX0=
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export * from './ckEditorUpload';
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jay1lZGl0b3Ivc3JjL2xpYi9hZGFwdGVyL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsa0JBQWtCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2NrRWRpdG9yVXBsb2FkJzsiXX0=
|
|
@@ -15,4 +15,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.5", ngImpor
|
|
|
15
15
|
exports: [RouterModule],
|
|
16
16
|
}]
|
|
17
17
|
}] });
|
|
18
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
18
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2stZWRpdG9yLXJvdXRpbmcubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY2stZWRpdG9yL3NyYy9saWIvY2stZWRpdG9yLXJvdXRpbmcubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFlBQVksRUFBVSxNQUFNLGlCQUFpQixDQUFDOzs7QUFFdkQsTUFBTSxNQUFNLEdBQVcsRUFBRSxDQUFBO0FBTXpCLE1BQU0sT0FBTyxxQkFBcUI7OEdBQXJCLHFCQUFxQjsrR0FBckIscUJBQXFCLHdDQUZ0QixZQUFZOytHQUVYLHFCQUFxQixZQUh0QixZQUFZLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxFQUM3QixZQUFZOzsyRkFFWCxxQkFBcUI7a0JBSmpDLFFBQVE7bUJBQUM7b0JBQ1IsT0FBTyxFQUFFLENBQUMsWUFBWSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsQ0FBQztvQkFDeEMsT0FBTyxFQUFFLENBQUMsWUFBWSxDQUFDO2lCQUN4QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBSb3V0ZXJNb2R1bGUsIFJvdXRlcyB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5cbmNvbnN0IHJvdXRlczogUm91dGVzID0gW11cblxuQE5nTW9kdWxlKHtcbiAgaW1wb3J0czogW1JvdXRlck1vZHVsZS5mb3JDaGlsZChyb3V0ZXMpXSxcbiAgZXhwb3J0czogW1JvdXRlck1vZHVsZV0sXG59KVxuZXhwb3J0IGNsYXNzIENrRWRpdG9yUm91dGluZ01vZHVsZSB7IH1cbiJdfQ==
|
|
@@ -4,11 +4,13 @@ import { CoreModule } from '@abp/ng.core';
|
|
|
4
4
|
import { ThemeSharedModule } from '@abp/ng.theme.shared';
|
|
5
5
|
import { CkEditorConfigComponent, CkEditorControlComponent } from './dynamic-form';
|
|
6
6
|
import { CKEditorModule } from '@ckeditor/ckeditor5-angular';
|
|
7
|
+
import { CkEditorViewComponent } from './dynamic-form/ck-editor/ck-editor-view.component';
|
|
7
8
|
import * as i0 from "@angular/core";
|
|
8
9
|
export class CkEditorModule {
|
|
9
10
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.5", ngImport: i0, type: CkEditorModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
10
11
|
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.1.5", ngImport: i0, type: CkEditorModule, declarations: [CkEditorControlComponent,
|
|
11
|
-
CkEditorConfigComponent
|
|
12
|
+
CkEditorConfigComponent,
|
|
13
|
+
CkEditorViewComponent], imports: [CoreModule,
|
|
12
14
|
ThemeSharedModule,
|
|
13
15
|
CkEditorRoutingModule,
|
|
14
16
|
CKEditorModule] }); }
|
|
@@ -23,6 +25,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.5", ngImpor
|
|
|
23
25
|
declarations: [
|
|
24
26
|
CkEditorControlComponent,
|
|
25
27
|
CkEditorConfigComponent,
|
|
28
|
+
CkEditorViewComponent,
|
|
26
29
|
],
|
|
27
30
|
imports: [
|
|
28
31
|
CoreModule,
|
|
@@ -32,4 +35,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.5", ngImpor
|
|
|
32
35
|
],
|
|
33
36
|
}]
|
|
34
37
|
}] });
|
|
35
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
38
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2stZWRpdG9yLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NrLWVkaXRvci9zcmMvbGliL2NrLWVkaXRvci5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUV6QyxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUNuRSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQzFDLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3pELE9BQU8sRUFBRSx1QkFBdUIsRUFBRSx3QkFBd0IsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ25GLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUM3RCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxtREFBbUQsQ0FBQzs7QUFnQjFGLE1BQU0sT0FBTyxjQUFjOzhHQUFkLGNBQWM7K0dBQWQsY0FBYyxpQkFadkIsd0JBQXdCO1lBQ3hCLHVCQUF1QjtZQUN2QixxQkFBcUIsYUFHckIsVUFBVTtZQUNWLGlCQUFpQjtZQUNqQixxQkFBcUI7WUFDckIsY0FBYzsrR0FJTCxjQUFjLFlBUHZCLFVBQVU7WUFDVixpQkFBaUI7WUFDakIscUJBQXFCO1lBQ3JCLGNBQWM7OzJGQUlMLGNBQWM7a0JBZDFCLFFBQVE7bUJBQUM7b0JBQ1IsWUFBWSxFQUFFO3dCQUNaLHdCQUF3Qjt3QkFDeEIsdUJBQXVCO3dCQUN2QixxQkFBcUI7cUJBQ3RCO29CQUNELE9BQU8sRUFBRTt3QkFDUCxVQUFVO3dCQUNWLGlCQUFpQjt3QkFDakIscUJBQXFCO3dCQUNyQixjQUFjO3FCQUNmO2lCQUVGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgQ2tFZGl0b3JSb3V0aW5nTW9kdWxlIH0gZnJvbSAnLi9jay1lZGl0b3Itcm91dGluZy5tb2R1bGUnO1xuaW1wb3J0IHsgQ29yZU1vZHVsZSB9IGZyb20gJ0BhYnAvbmcuY29yZSc7XG5pbXBvcnQgeyBUaGVtZVNoYXJlZE1vZHVsZSB9IGZyb20gJ0BhYnAvbmcudGhlbWUuc2hhcmVkJztcbmltcG9ydCB7IENrRWRpdG9yQ29uZmlnQ29tcG9uZW50LCBDa0VkaXRvckNvbnRyb2xDb21wb25lbnQgfSBmcm9tICcuL2R5bmFtaWMtZm9ybSc7XG5pbXBvcnQgeyBDS0VkaXRvck1vZHVsZSB9IGZyb20gJ0Bja2VkaXRvci9ja2VkaXRvcjUtYW5ndWxhcic7XG5pbXBvcnQgeyBDa0VkaXRvclZpZXdDb21wb25lbnQgfSBmcm9tICcuL2R5bmFtaWMtZm9ybS9jay1lZGl0b3IvY2stZWRpdG9yLXZpZXcuY29tcG9uZW50JztcblxuQE5nTW9kdWxlKHtcbiAgZGVjbGFyYXRpb25zOiBbXG4gICAgQ2tFZGl0b3JDb250cm9sQ29tcG9uZW50LFxuICAgIENrRWRpdG9yQ29uZmlnQ29tcG9uZW50LFxuICAgIENrRWRpdG9yVmlld0NvbXBvbmVudCxcbiAgXSxcbiAgaW1wb3J0czogW1xuICAgIENvcmVNb2R1bGUsXG4gICAgVGhlbWVTaGFyZWRNb2R1bGUsXG4gICAgQ2tFZGl0b3JSb3V0aW5nTW9kdWxlLFxuICAgIENLRWRpdG9yTW9kdWxlLFxuICBdLFxuXG59KVxuZXhwb3J0IGNsYXNzIENrRWRpdG9yTW9kdWxlIHsgfVxuIl19
|
|
@@ -1,12 +1,17 @@
|
|
|
1
|
-
import { ChangeDetectorRef, Component, inject, Input, ViewChild } from '@angular/core';
|
|
1
|
+
import { ChangeDetectorRef, Component, ElementRef, inject, Input, ViewChild } from '@angular/core';
|
|
2
|
+
import { FormBuilder, FormGroup } from '@angular/forms';
|
|
2
3
|
import { CkEditorConfig } from './ck-editor-config';
|
|
4
|
+
import { CkEditorModeEnum, CkEditorModeEnumOptions } from '../../enums/ck-editor-mode.enum';
|
|
3
5
|
import * as i0 from "@angular/core";
|
|
4
6
|
import * as i1 from "@angular/forms";
|
|
5
|
-
import * as i2 from "@
|
|
6
|
-
import * as i3 from "@
|
|
7
|
+
import * as i2 from "@angular/common";
|
|
8
|
+
import * as i3 from "@abp/ng.core";
|
|
9
|
+
import * as i4 from "@ngx-validate/core";
|
|
7
10
|
export class CkEditorConfigComponent {
|
|
8
11
|
constructor(fb) {
|
|
9
12
|
this.fb = fb;
|
|
13
|
+
this.CkEditorModeEnum = CkEditorModeEnum;
|
|
14
|
+
this.CkEditorModeEnumOptions = CkEditorModeEnumOptions;
|
|
10
15
|
this.cdr = inject(ChangeDetectorRef);
|
|
11
16
|
}
|
|
12
17
|
set Entity(v) {
|
|
@@ -21,7 +26,7 @@ export class CkEditorConfigComponent {
|
|
|
21
26
|
this._type = v;
|
|
22
27
|
// this.dataLoaded()
|
|
23
28
|
}
|
|
24
|
-
//
|
|
29
|
+
//
|
|
25
30
|
get formConfiguration() {
|
|
26
31
|
return this._Entity.get('formConfiguration');
|
|
27
32
|
}
|
|
@@ -44,11 +49,11 @@ export class CkEditorConfigComponent {
|
|
|
44
49
|
});
|
|
45
50
|
}
|
|
46
51
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.5", ngImport: i0, type: CkEditorConfigComponent, deps: [{ token: i1.FormBuilder }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
47
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.1.5", type: CkEditorConfigComponent, selector: "ck-editor-config", inputs: { Entity: "Entity", selected: "selected", type: "type" }, viewQueries: [{ propertyName: "submitclick", first: true, predicate: ["submitclick"], descendants: true, static: true }], ngImport: i0, template: "<form [formGroup]=\"_Entity\">\n <div formGroupName=\"formConfiguration\">\n <div class=\"mb-3\">\n <label class=\"form-label\">{{'DigniteAbpDynamicFormsCkEditor::ImagesContainerName' | abpLocalization}}</label>\n <input type=\"text\" class=\"form-control\" formControlName=\"Ckeditor.ImagesContainerName\">\n </div>\n <div class=\"mb-3\">\n <label class=\"form-label\">{{'DigniteAbpDynamicFormsCkEditor::InitialContent' | abpLocalization}}</label>\n <input type=\"text\" class=\"form-control\" formControlName=\"Ckeditor.InitialContent\">\n </div>\n <button type=\"submit\" (abpInit)=\"submitclick?.nativeElement?.click()\" style=\"display: none;\"\n #submitclick></button>\n </div>\n</form>", styles: [""], dependencies: [{ kind: "directive", type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: i1.FormGroupName, selector: "[formGroupName]", inputs: ["formGroupName"] }, { kind: "directive", type:
|
|
52
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.1.5", type: CkEditorConfigComponent, selector: "ck-editor-config", inputs: { Entity: "Entity", selected: "selected", type: "type" }, viewQueries: [{ propertyName: "submitclick", first: true, predicate: ["submitclick"], descendants: true, static: true }], ngImport: i0, template: "<form [formGroup]=\"_Entity\">\n <div formGroupName=\"formConfiguration\">\n <div class=\"mb-3\">\n <label class=\"form-label\">{{'DigniteAbpDynamicFormsCkEditor::EditorMode' | abpLocalization}}</label>\n <!-- <input type=\"text\" class=\"form-control\" formControlName=\"Ckeditor.Mode\"> -->\n <select class=\"form-select\" formControlName=\"Ckeditor.Mode\" >\n <ng-container *ngFor=\"let item of CkEditorModeEnumOptions\">\n <option [value]=\"item.value\">{{'DigniteAbpDynamicFormsCkEditor::EditorMode.' + item.key|abpLocalization}}</option>\n </ng-container>\n </select>\n </div>\n <div class=\"mb-3\">\n <label class=\"form-label\">{{'DigniteAbpDynamicFormsCkEditor::ImagesContainerName' | abpLocalization}}</label>\n <input type=\"text\" class=\"form-control\" formControlName=\"Ckeditor.ImagesContainerName\">\n </div>\n <div class=\"mb-3\">\n <label class=\"form-label\">{{'DigniteAbpDynamicFormsCkEditor::InitialContent' | abpLocalization}}</label>\n <input type=\"text\" class=\"form-control\" formControlName=\"Ckeditor.InitialContent\">\n </div>\n <button type=\"submit\" (abpInit)=\"submitclick?.nativeElement?.click()\" style=\"display: none;\"\n #submitclick></button>\n </div>\n</form>", styles: [""], dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i1.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.SelectControlValueAccessor, selector: "select:not([multiple])[formControlName],select:not([multiple])[formControl],select:not([multiple])[ngModel]", inputs: ["compareWith"] }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: i1.FormGroupName, selector: "[formGroupName]", inputs: ["formGroupName"] }, { kind: "directive", type: i3.InitDirective, selector: "[abpInit]", outputs: ["abpInit"] }, { kind: "directive", type: i4.ValidationGroupDirective, selector: "[formGroup],[formGroupName]", exportAs: ["validationGroup"] }, { kind: "directive", type: i4.ValidationDirective, selector: "[formControl],[formControlName]", exportAs: ["validationDirective"] }, { kind: "pipe", type: i3.LocalizationPipe, name: "abpLocalization" }] }); }
|
|
48
53
|
}
|
|
49
54
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.5", ngImport: i0, type: CkEditorConfigComponent, decorators: [{
|
|
50
55
|
type: Component,
|
|
51
|
-
args: [{ selector: 'ck-editor-config', template: "<form [formGroup]=\"_Entity\">\n <div formGroupName=\"formConfiguration\">\n <div class=\"mb-3\">\n <label class=\"form-label\">{{'DigniteAbpDynamicFormsCkEditor::ImagesContainerName' | abpLocalization}}</label>\n <input type=\"text\" class=\"form-control\" formControlName=\"Ckeditor.ImagesContainerName\">\n </div>\n <div class=\"mb-3\">\n <label class=\"form-label\">{{'DigniteAbpDynamicFormsCkEditor::InitialContent' | abpLocalization}}</label>\n <input type=\"text\" class=\"form-control\" formControlName=\"Ckeditor.InitialContent\">\n </div>\n <button type=\"submit\" (abpInit)=\"submitclick?.nativeElement?.click()\" style=\"display: none;\"\n #submitclick></button>\n </div>\n</form>" }]
|
|
56
|
+
args: [{ selector: 'ck-editor-config', template: "<form [formGroup]=\"_Entity\">\n <div formGroupName=\"formConfiguration\">\n <div class=\"mb-3\">\n <label class=\"form-label\">{{'DigniteAbpDynamicFormsCkEditor::EditorMode' | abpLocalization}}</label>\n <!-- <input type=\"text\" class=\"form-control\" formControlName=\"Ckeditor.Mode\"> -->\n <select class=\"form-select\" formControlName=\"Ckeditor.Mode\" >\n <ng-container *ngFor=\"let item of CkEditorModeEnumOptions\">\n <option [value]=\"item.value\">{{'DigniteAbpDynamicFormsCkEditor::EditorMode.' + item.key|abpLocalization}}</option>\n </ng-container>\n </select>\n </div>\n <div class=\"mb-3\">\n <label class=\"form-label\">{{'DigniteAbpDynamicFormsCkEditor::ImagesContainerName' | abpLocalization}}</label>\n <input type=\"text\" class=\"form-control\" formControlName=\"Ckeditor.ImagesContainerName\">\n </div>\n <div class=\"mb-3\">\n <label class=\"form-label\">{{'DigniteAbpDynamicFormsCkEditor::InitialContent' | abpLocalization}}</label>\n <input type=\"text\" class=\"form-control\" formControlName=\"Ckeditor.InitialContent\">\n </div>\n <button type=\"submit\" (abpInit)=\"submitclick?.nativeElement?.click()\" style=\"display: none;\"\n #submitclick></button>\n </div>\n</form>" }]
|
|
52
57
|
}], ctorParameters: () => [{ type: i1.FormBuilder }], propDecorators: { Entity: [{
|
|
53
58
|
type: Input
|
|
54
59
|
}], selected: [{
|
|
@@ -59,4 +64,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.5", ngImpor
|
|
|
59
64
|
type: ViewChild,
|
|
60
65
|
args: ['submitclick', { static: true }]
|
|
61
66
|
}] } });
|
|
62
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
67
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2stZWRpdG9yLWNvbmZpZy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jay1lZGl0b3Ivc3JjL2xpYi9keW5hbWljLWZvcm0vY2stZWRpdG9yL2NrLWVkaXRvci1jb25maWcuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY2stZWRpdG9yL3NyYy9saWIvZHluYW1pYy1mb3JtL2NrLWVkaXRvci9jay1lZGl0b3ItY29uZmlnLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25HLE9BQU8sRUFBRSxXQUFXLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDeEQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ3BELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSx1QkFBdUIsRUFBRSxNQUFNLGlDQUFpQyxDQUFDOzs7Ozs7QUFPNUYsTUFBTSxPQUFPLHVCQUF1QjtJQUNsQyxZQUFvQixFQUFlO1FBQWYsT0FBRSxHQUFGLEVBQUUsQ0FBYTtRQUVuQyxxQkFBZ0IsR0FBRyxnQkFBZ0IsQ0FBQztRQUNwQyw0QkFBdUIsR0FBRyx1QkFBdUIsQ0FBQztRQStCMUMsUUFBRyxHQUFHLE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO0lBbENGLENBQUM7SUFPdkMsSUFDVyxNQUFNLENBQUMsQ0FBd0I7UUFDeEMsSUFBSSxDQUFDLE9BQU8sR0FBRyxDQUFDLENBQUM7UUFDakIsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO0lBQ3BCLENBQUM7SUFJRCxJQUNXLFFBQVEsQ0FBQyxDQUFNO1FBQ3hCLElBQUksQ0FBQyxTQUFTLEdBQUcsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUV6QixvQkFBb0I7SUFDdEIsQ0FBQztJQUdELElBQ1csSUFBSSxDQUFDLENBQU07UUFDcEIsSUFBSSxDQUFDLEtBQUssR0FBRyxDQUFDLENBQUM7UUFDZixvQkFBb0I7SUFDdEIsQ0FBQztJQUNELEVBQUU7SUFDRixJQUFJLGlCQUFpQjtRQUNuQixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLG1CQUFtQixDQUFjLENBQUM7SUFDNUQsQ0FBQztJQUlELEtBQUssQ0FBQyxVQUFVO1FBQ2QsSUFBSSxJQUFJLENBQUMsT0FBTyxJQUFJLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUMvQixNQUFNLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztZQUN2QixJQUFJLENBQUMsR0FBRyxDQUFDLGFBQWEsRUFBRSxDQUFDLENBQUMsV0FBVztZQUNyQyxJQUFJLENBQUMsV0FBVyxFQUFFLGFBQWEsRUFBRSxLQUFLLEVBQUUsQ0FBQztRQUMzQyxDQUFDO0lBQ0gsQ0FBQztJQUVELFNBQVM7UUFDUCxPQUFPLElBQUksT0FBTyxDQUFDLENBQUMsT0FBTyxFQUFFLE9BQU8sRUFBRSxFQUFFO1lBQ3RDLElBQUksQ0FBQyxPQUFPLENBQUMsVUFBVSxDQUFDLG1CQUFtQixFQUFFLElBQUksQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLElBQUksY0FBYyxFQUFFLENBQUMsQ0FBQyxDQUFDO1lBQ2xGLElBQUksSUFBSSxDQUFDLFNBQVMsSUFBSSxJQUFJLENBQUMsU0FBUyxDQUFDLGVBQWUsSUFBSSxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7Z0JBQ25FLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxVQUFVLENBQUM7b0JBQ2hDLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxpQkFBaUI7aUJBQ3BDLENBQUMsQ0FBQztZQUNMLENBQUM7WUFDRCxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDaEIsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDOzhHQXREVSx1QkFBdUI7a0dBQXZCLHVCQUF1QixvUENWcEMsNjNDQXNCTzs7MkZEWk0sdUJBQXVCO2tCQUxuQyxTQUFTOytCQUNFLGtCQUFrQjtnRkFhakIsTUFBTTtzQkFEaEIsS0FBSztnQkFTSyxRQUFRO3NCQURsQixLQUFLO2dCQVNLLElBQUk7c0JBRGQsS0FBSztnQkFTc0MsV0FBVztzQkFBdEQsU0FBUzt1QkFBQyxhQUFhLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0b3JSZWYsIENvbXBvbmVudCwgRWxlbWVudFJlZiwgaW5qZWN0LCBJbnB1dCwgVmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb3JtQnVpbGRlciwgRm9ybUdyb3VwIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgQ2tFZGl0b3JDb25maWcgfSBmcm9tICcuL2NrLWVkaXRvci1jb25maWcnO1xuaW1wb3J0IHsgQ2tFZGl0b3JNb2RlRW51bSwgQ2tFZGl0b3JNb2RlRW51bU9wdGlvbnMgfSBmcm9tICcuLi8uLi9lbnVtcy9jay1lZGl0b3ItbW9kZS5lbnVtJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnY2stZWRpdG9yLWNvbmZpZycsXG4gIHRlbXBsYXRlVXJsOiAnLi9jay1lZGl0b3ItY29uZmlnLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vY2stZWRpdG9yLWNvbmZpZy5jb21wb25lbnQuc2NzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBDa0VkaXRvckNvbmZpZ0NvbXBvbmVudCB7XG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgZmI6IEZvcm1CdWlsZGVyKSB7fVxuXG4gIENrRWRpdG9yTW9kZUVudW0gPSBDa0VkaXRvck1vZGVFbnVtO1xuICBDa0VkaXRvck1vZGVFbnVtT3B0aW9ucyA9IENrRWRpdG9yTW9kZUVudW1PcHRpb25zO1xuXG4gIC8qKuihqOWNleWunuS9kyAqL1xuICBfRW50aXR5OiBGb3JtR3JvdXAgfCB1bmRlZmluZWQ7XG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXQgRW50aXR5KHY6IEZvcm1Hcm91cCB8IHVuZGVmaW5lZCkge1xuICAgIHRoaXMuX0VudGl0eSA9IHY7XG4gICAgdGhpcy5kYXRhTG9hZGVkKCk7XG4gIH1cblxuICAvKirpgInmi6nnmoTooajljZXkv6Hmga8gKi9cbiAgX3NlbGVjdGVkOiBhbnk7XG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXQgc2VsZWN0ZWQodjogYW55KSB7XG4gICAgdGhpcy5fc2VsZWN0ZWQgPSB2IHx8ICcnO1xuXG4gICAgLy8gdGhpcy5kYXRhTG9hZGVkKClcbiAgfVxuICAvKirooajljZXmjqfku7bnsbvlnosgKi9cbiAgX3R5cGU6IGFueTtcbiAgQElucHV0KClcbiAgcHVibGljIHNldCB0eXBlKHY6IGFueSkge1xuICAgIHRoaXMuX3R5cGUgPSB2O1xuICAgIC8vIHRoaXMuZGF0YUxvYWRlZCgpXG4gIH1cbiAgLy9cbiAgZ2V0IGZvcm1Db25maWd1cmF0aW9uKCkge1xuICAgIHJldHVybiB0aGlzLl9FbnRpdHkuZ2V0KCdmb3JtQ29uZmlndXJhdGlvbicpIGFzIEZvcm1Hcm91cDtcbiAgfVxuICBAVmlld0NoaWxkKCdzdWJtaXRjbGljaycsIHsgc3RhdGljOiB0cnVlIH0pIHN1Ym1pdGNsaWNrOiBFbGVtZW50UmVmO1xuXG4gIHByaXZhdGUgY2RyID0gaW5qZWN0KENoYW5nZURldGVjdG9yUmVmKTtcbiAgYXN5bmMgZGF0YUxvYWRlZCgpIHtcbiAgICBpZiAodGhpcy5fRW50aXR5ICYmIHRoaXMuX3R5cGUpIHtcbiAgICAgIGF3YWl0IHRoaXMuQWZ0ZXJJbml0KCk7XG4gICAgICB0aGlzLmNkci5kZXRlY3RDaGFuZ2VzKCk7IC8vIOaJi+WKqOinpuWPkeWPmOabtOajgOa1i1xuICAgICAgdGhpcy5zdWJtaXRjbGljaz8ubmF0aXZlRWxlbWVudD8uY2xpY2soKTtcbiAgICB9XG4gIH1cblxuICBBZnRlckluaXQoKSB7XG4gICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlLCByZWplY3RzKSA9PiB7XG4gICAgICB0aGlzLl9FbnRpdHkuc2V0Q29udHJvbCgnZm9ybUNvbmZpZ3VyYXRpb24nLCB0aGlzLmZiLmdyb3VwKG5ldyBDa0VkaXRvckNvbmZpZygpKSk7XG4gICAgICBpZiAodGhpcy5fc2VsZWN0ZWQgJiYgdGhpcy5fc2VsZWN0ZWQuZm9ybUNvbnRyb2xOYW1lID09IHRoaXMuX3R5cGUpIHtcbiAgICAgICAgdGhpcy5mb3JtQ29uZmlndXJhdGlvbi5wYXRjaFZhbHVlKHtcbiAgICAgICAgICAuLi50aGlzLl9zZWxlY3RlZC5mb3JtQ29uZmlndXJhdGlvbixcbiAgICAgICAgfSk7XG4gICAgICB9XG4gICAgICByZXNvbHZlKHRydWUpO1xuICAgIH0pO1xuICB9XG59XG4iLCI8Zm9ybSBbZm9ybUdyb3VwXT1cIl9FbnRpdHlcIj5cbiAgICA8ZGl2IGZvcm1Hcm91cE5hbWU9XCJmb3JtQ29uZmlndXJhdGlvblwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwibWItM1wiPlxuICAgICAgICAgICAgPGxhYmVsIGNsYXNzPVwiZm9ybS1sYWJlbFwiPnt7J0RpZ25pdGVBYnBEeW5hbWljRm9ybXNDa0VkaXRvcjo6RWRpdG9yTW9kZScgfCBhYnBMb2NhbGl6YXRpb259fTwvbGFiZWw+XG4gICAgICAgICAgICA8IS0tIDxpbnB1dCB0eXBlPVwidGV4dFwiIGNsYXNzPVwiZm9ybS1jb250cm9sXCIgZm9ybUNvbnRyb2xOYW1lPVwiQ2tlZGl0b3IuTW9kZVwiPiAtLT5cbiAgICAgICAgICAgIDxzZWxlY3QgY2xhc3M9XCJmb3JtLXNlbGVjdFwiIGZvcm1Db250cm9sTmFtZT1cIkNrZWRpdG9yLk1vZGVcIiA+XG4gICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgaXRlbSBvZiBDa0VkaXRvck1vZGVFbnVtT3B0aW9uc1wiPlxuICAgICAgICAgICAgICAgICAgICA8b3B0aW9uIFt2YWx1ZV09XCJpdGVtLnZhbHVlXCI+e3snRGlnbml0ZUFicER5bmFtaWNGb3Jtc0NrRWRpdG9yOjpFZGl0b3JNb2RlLicgKyBpdGVtLmtleXxhYnBMb2NhbGl6YXRpb259fTwvb3B0aW9uPlxuICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgPC9zZWxlY3Q+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwibWItM1wiPlxuICAgICAgICAgICAgPGxhYmVsIGNsYXNzPVwiZm9ybS1sYWJlbFwiPnt7J0RpZ25pdGVBYnBEeW5hbWljRm9ybXNDa0VkaXRvcjo6SW1hZ2VzQ29udGFpbmVyTmFtZScgfCBhYnBMb2NhbGl6YXRpb259fTwvbGFiZWw+XG4gICAgICAgICAgICA8aW5wdXQgdHlwZT1cInRleHRcIiBjbGFzcz1cImZvcm0tY29udHJvbFwiIGZvcm1Db250cm9sTmFtZT1cIkNrZWRpdG9yLkltYWdlc0NvbnRhaW5lck5hbWVcIj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJtYi0zXCI+XG4gICAgICAgICAgICA8bGFiZWwgY2xhc3M9XCJmb3JtLWxhYmVsXCI+e3snRGlnbml0ZUFicER5bmFtaWNGb3Jtc0NrRWRpdG9yOjpJbml0aWFsQ29udGVudCcgfCBhYnBMb2NhbGl6YXRpb259fTwvbGFiZWw+XG4gICAgICAgICAgICA8aW5wdXQgdHlwZT1cInRleHRcIiBjbGFzcz1cImZvcm0tY29udHJvbFwiIGZvcm1Db250cm9sTmFtZT1cIkNrZWRpdG9yLkluaXRpYWxDb250ZW50XCI+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8YnV0dG9uIHR5cGU9XCJzdWJtaXRcIiAoYWJwSW5pdCk9XCJzdWJtaXRjbGljaz8ubmF0aXZlRWxlbWVudD8uY2xpY2soKVwiIHN0eWxlPVwiZGlzcGxheTogbm9uZTtcIlxuICAgICAgICAgICAgI3N1Ym1pdGNsaWNrPjwvYnV0dG9uPlxuICAgIDwvZGl2PlxuPC9mb3JtPiJdfQ==
|
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
export class CkEditorConfig {
|
|
2
2
|
constructor(data) {
|
|
3
|
+
/**类型 */
|
|
4
|
+
this['Ckeditor.Mode'] = ['', []];
|
|
3
5
|
/**文件容器名称 */
|
|
4
6
|
// placeholder: any = new FormControl('', Validators.required);
|
|
5
7
|
this['Ckeditor.ImagesContainerName'] = ['', []];
|
|
@@ -15,4 +17,4 @@ export class CkEditorConfig {
|
|
|
15
17
|
}
|
|
16
18
|
}
|
|
17
19
|
}
|
|
18
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
20
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2stZWRpdG9yLWNvbmZpZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NrLWVkaXRvci9zcmMvbGliL2R5bmFtaWMtZm9ybS9jay1lZGl0b3IvY2stZWRpdG9yLWNvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxNQUFNLE9BQU8sY0FBYztJQVd2QixZQUFZLElBQXFCO1FBVGpDLFFBQVE7UUFDUixxQkFBZSxHQUFRLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQ2hDLFlBQVk7UUFDWiwrREFBK0Q7UUFDL0Qsb0NBQThCLEdBQVEsQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFDN0MsUUFBUTtRQUNWLCtEQUErRDtRQUMvRCwrQkFBeUIsR0FBUSxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMsQ0FBQztRQUd0QyxJQUFJLElBQUksRUFBRSxDQUFDO1lBQ1AsS0FBSyxNQUFNLEdBQUcsSUFBSSxJQUFJLEVBQUUsQ0FBQztnQkFDckIsSUFBSSxJQUFJLENBQUMsY0FBYyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUM7b0JBQzNCLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7Z0JBQzFCLENBQUM7WUFDTCxDQUFDO1FBQ0wsQ0FBQztJQUdMLENBQUM7Q0FDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEZvcm1Db250cm9sLCBWYWxpZGF0b3JzIH0gZnJvbSBcIkBhbmd1bGFyL2Zvcm1zXCI7XHJcblxyXG5leHBvcnQgY2xhc3MgQ2tFZGl0b3JDb25maWcge1xyXG5cclxuICAgIC8qKuexu+WeiyAqL1xyXG4gICAgJ0NrZWRpdG9yLk1vZGUnOiBhbnkgPSBbJycsIFtdXTtcclxuICAgIC8qKuaWh+S7tuWuueWZqOWQjeensCAqL1xyXG4gICAgLy8gcGxhY2Vob2xkZXI6IGFueSA9IG5ldyBGb3JtQ29udHJvbCgnJywgVmFsaWRhdG9ycy5yZXF1aXJlZCk7XHJcbiAgICAnQ2tlZGl0b3IuSW1hZ2VzQ29udGFpbmVyTmFtZSc6IGFueSA9IFsnJywgW11dO1xyXG4gICAgICAvKirlpJrpgIkgKi9cclxuICAgIC8vIHBsYWNlaG9sZGVyOiBhbnkgPSBuZXcgRm9ybUNvbnRyb2woJycsIFZhbGlkYXRvcnMucmVxdWlyZWQpO1xyXG4gICAgJ0NrZWRpdG9yLkluaXRpYWxDb250ZW50JzogYW55ID0gWycnLCBbXV07XHJcblxyXG4gICAgY29uc3RydWN0b3IoZGF0YT86IENrRWRpdG9yQ29uZmlnKSB7XHJcbiAgICAgICAgaWYgKGRhdGEpIHtcclxuICAgICAgICAgICAgZm9yIChjb25zdCBrZXkgaW4gZGF0YSkge1xyXG4gICAgICAgICAgICAgICAgaWYgKGRhdGEuaGFzT3duUHJvcGVydHkoa2V5KSkge1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXNba2V5XSA9IGRhdGFba2V5XTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcblxyXG4gICAgfVxyXG59Il19
|
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
import { ConfigStateService, LazyLoadService, LOADING_STRATEGY, RestService, SubscriptionService, } from '@abp/ng.core';
|
|
2
|
-
import { ChangeDetectorRef, Component, Input, ViewChild, inject } from '@angular/core';
|
|
2
|
+
import { ChangeDetectorRef, Component, ElementRef, Input, ViewChild, inject } from '@angular/core';
|
|
3
3
|
import { FormBuilder, Validators } from '@angular/forms';
|
|
4
4
|
import { isBase64UploadAdapter } from './ckEditorUpload';
|
|
5
5
|
import { SetCkEditorConfigsService } from '../../services';
|
|
6
|
+
import { CkEditorModeEnum } from '../../enums/ck-editor-mode.enum';
|
|
6
7
|
import * as i0 from "@angular/core";
|
|
7
8
|
import * as i1 from "@angular/common";
|
|
8
9
|
import * as i2 from "@angular/forms";
|
|
@@ -16,6 +17,7 @@ export class CkEditorControlComponent {
|
|
|
16
17
|
this.ckEditorValue = '';
|
|
17
18
|
/**系统语言 */
|
|
18
19
|
this.currentCulture = this.config.getOne('localization')?.currentCulture?.name;
|
|
20
|
+
this.CkEditorModeEnum = CkEditorModeEnum;
|
|
19
21
|
this.fb = inject(FormBuilder);
|
|
20
22
|
/**字段配置列表 */
|
|
21
23
|
this._fields = '';
|
|
@@ -26,7 +28,6 @@ export class CkEditorControlComponent {
|
|
|
26
28
|
this.invalidfeedback = false;
|
|
27
29
|
/**图片容器名称 */
|
|
28
30
|
this.imagesContainerName = '';
|
|
29
|
-
this.loadckeditor();
|
|
30
31
|
}
|
|
31
32
|
onReady(editor) {
|
|
32
33
|
let _this = this;
|
|
@@ -52,7 +53,7 @@ export class CkEditorControlComponent {
|
|
|
52
53
|
this.dataLoaded();
|
|
53
54
|
}
|
|
54
55
|
get extraProperties() {
|
|
55
|
-
return this._entity
|
|
56
|
+
return this._entity?.get('extraProperties');
|
|
56
57
|
}
|
|
57
58
|
get ckeditorInput() {
|
|
58
59
|
return this.extraProperties.get(this._fields.field.name);
|
|
@@ -65,18 +66,35 @@ export class CkEditorControlComponent {
|
|
|
65
66
|
this._selected || this._fields.field.formConfiguration['Ckeditor.InitialContent'];
|
|
66
67
|
this.setckeditorInput(this.ckEditorValue);
|
|
67
68
|
this.cdr.detectChanges(); // 手动触发变更检测
|
|
69
|
+
await this.loadckeditor();
|
|
68
70
|
this.submitclick?.nativeElement?.click();
|
|
69
71
|
}
|
|
70
72
|
}
|
|
71
73
|
loadckeditor() {
|
|
72
74
|
let _that = this;
|
|
75
|
+
let formConfiguration = this._fields.field.formConfiguration;
|
|
73
76
|
return new Promise(async (resolve) => {
|
|
74
77
|
await import('ckeditor5').then(async (res) => {
|
|
75
78
|
this.loadStyle();
|
|
76
|
-
|
|
79
|
+
if (formConfiguration['Ckeditor.Mode'] == CkEditorModeEnum.Simple) {
|
|
80
|
+
_that.Editor = res.InlineEditor;
|
|
81
|
+
}
|
|
82
|
+
else if (formConfiguration['Ckeditor.Mode'] == CkEditorModeEnum.Classic) {
|
|
83
|
+
_that.Editor = res.ClassicEditor;
|
|
84
|
+
}
|
|
85
|
+
else {
|
|
86
|
+
formConfiguration['Ckeditor.Mode'] = CkEditorModeEnum.Simple;
|
|
87
|
+
_that.Editor = res.InlineEditor;
|
|
88
|
+
}
|
|
77
89
|
let configs = await _that._SetCkEditorConfigsService.get({
|
|
78
90
|
language: _that.currentCulture,
|
|
91
|
+
type: formConfiguration['Ckeditor.Mode']
|
|
79
92
|
});
|
|
93
|
+
if (!this.imagesContainerName) {
|
|
94
|
+
if (configs?.toolbar?.items?.indexOf('insertImage') != -1) {
|
|
95
|
+
configs?.toolbar?.items?.splice(configs?.toolbar?.items?.indexOf('insertImage'), 1);
|
|
96
|
+
}
|
|
97
|
+
}
|
|
80
98
|
_that.ckOptions = configs;
|
|
81
99
|
});
|
|
82
100
|
resolve(true);
|
|
@@ -103,18 +121,15 @@ export class CkEditorControlComponent {
|
|
|
103
121
|
this.extraProperties.setControl(this._fields.field.name, newControl);
|
|
104
122
|
this.imagesContainerName =
|
|
105
123
|
this._fields.field.formConfiguration['Ckeditor.ImagesContainerName'];
|
|
106
|
-
if (!this.imagesContainerName) {
|
|
107
|
-
this.ckOptions?.toolbar?.items?.splice(this.ckOptions?.toolbar?.items?.indexOf('insertImage'), 1);
|
|
108
|
-
}
|
|
109
124
|
resolve(true);
|
|
110
125
|
});
|
|
111
126
|
}
|
|
112
127
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.5", ngImport: i0, type: CkEditorControlComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
113
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.1.5", type: CkEditorControlComponent, selector: "ck-editor-control", inputs: { fields: "fields", parentFiledName: "parentFiledName", selected: "selected", entity: "entity" }, viewQueries: [{ propertyName: "submitclick", first: true, predicate: ["submitclick"], descendants: true, static: true }], ngImport: i0, template: "<form [formGroup]=\"_entity\">\n <div formGroupName=\"extraProperties\">\n <div class=\"mb-3\">\n <label class=\"form-label\" *ngIf=\"_fields.displayName\">{{ _fields.displayName }}</label>\n <ng-container *ngIf=\"ckOptions\">\n
|
|
128
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.1.5", type: CkEditorControlComponent, selector: "ck-editor-control", inputs: { fields: "fields", parentFiledName: "parentFiledName", selected: "selected", entity: "entity" }, viewQueries: [{ propertyName: "submitclick", first: true, predicate: ["submitclick"], descendants: true, static: true }], ngImport: i0, template: "<form [formGroup]=\"_entity\">\n <div formGroupName=\"extraProperties\">\n <div class=\"mb-3\">\n <label class=\"form-label\" *ngIf=\"_fields.displayName\">{{ _fields.displayName }}</label>\n <ng-container *ngIf=\"ckOptions\">\n <ckeditor class=\"form-textarea\" [editor]=\"Editor\" *ngIf=\"Editor\" [config]=\"ckOptions\" (ready)=\"onReady($event)\"\n [formControlName]=\"_fields.field.name\">\n </ckeditor>\n </ng-container>\n <small class=\"form-text text-muted d-block\"\n *ngIf=\"_fields.field.description\">{{_fields.field.description}}</small>\n </div>\n </div>\n <button type=\"submit\" style=\"display: none;\" #submitclick></button>\n</form>", styles: ["@charset \"UTF-8\";:root .ck.ck-editor__editable_inline{min-height:160px!important}.ck.ck-editor__main>.ck-editor__editable{background:var(--bs-body-bg)!important}.ck.ck-toolbar,.ck.ck-button.ck-list-item-button,.ck.ck-button.ck-list-item-button.ck-on,.ck.ck-dropdown__panel{background:var(--bs-body-bg)!important}.ck.ck-editor__editable_inline{border-color:var(--ck-color-base-border)!important}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: i2.FormGroupName, selector: "[formGroupName]", inputs: ["formGroupName"] }, { kind: "directive", type: i3.ValidationGroupDirective, selector: "[formGroup],[formGroupName]", exportAs: ["validationGroup"] }, { kind: "directive", type: i3.ValidationDirective, selector: "[formControl],[formControlName]", exportAs: ["validationDirective"] }, { kind: "component", type: i4.CKEditorComponent, selector: "ckeditor", inputs: ["editor", "config", "data", "tagName", "watchdog", "editorWatchdogConfig", "disableTwoWayDataBinding", "disabled"], outputs: ["ready", "change", "blur", "focus", "error"] }] }); }
|
|
114
129
|
}
|
|
115
130
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.5", ngImport: i0, type: CkEditorControlComponent, decorators: [{
|
|
116
131
|
type: Component,
|
|
117
|
-
args: [{ selector: 'ck-editor-control', template: "<form [formGroup]=\"_entity\">\n <div formGroupName=\"extraProperties\">\n <div class=\"mb-3\">\n <label class=\"form-label\" *ngIf=\"_fields.displayName\">{{ _fields.displayName }}</label>\n <ng-container *ngIf=\"ckOptions\">\n
|
|
132
|
+
args: [{ selector: 'ck-editor-control', template: "<form [formGroup]=\"_entity\">\n <div formGroupName=\"extraProperties\">\n <div class=\"mb-3\">\n <label class=\"form-label\" *ngIf=\"_fields.displayName\">{{ _fields.displayName }}</label>\n <ng-container *ngIf=\"ckOptions\">\n <ckeditor class=\"form-textarea\" [editor]=\"Editor\" *ngIf=\"Editor\" [config]=\"ckOptions\" (ready)=\"onReady($event)\"\n [formControlName]=\"_fields.field.name\">\n </ckeditor>\n </ng-container>\n <small class=\"form-text text-muted d-block\"\n *ngIf=\"_fields.field.description\">{{_fields.field.description}}</small>\n </div>\n </div>\n <button type=\"submit\" style=\"display: none;\" #submitclick></button>\n</form>", styles: ["@charset \"UTF-8\";:root .ck.ck-editor__editable_inline{min-height:160px!important}.ck.ck-editor__main>.ck-editor__editable{background:var(--bs-body-bg)!important}.ck.ck-toolbar,.ck.ck-button.ck-list-item-button,.ck.ck-button.ck-list-item-button.ck-on,.ck.ck-dropdown__panel{background:var(--bs-body-bg)!important}.ck.ck-editor__editable_inline{border-color:var(--ck-color-base-border)!important}\n"] }]
|
|
118
133
|
}], ctorParameters: () => [], propDecorators: { fields: [{
|
|
119
134
|
type: Input
|
|
120
135
|
}], parentFiledName: [{
|
|
@@ -127,4 +142,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.5", ngImpor
|
|
|
127
142
|
type: ViewChild,
|
|
128
143
|
args: ['submitclick', { static: true }]
|
|
129
144
|
}] } });
|
|
130
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2stZWRpdG9yLWNvbnRyb2wuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2stZWRpdG9yL3NyYy9saWIvZHluYW1pYy1mb3JtL2NrLWVkaXRvci9jay1lZGl0b3ItY29udHJvbC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jay1lZGl0b3Ivc3JjL2xpYi9keW5hbWljLWZvcm0vY2stZWRpdG9yL2NrLWVkaXRvci1jb250cm9sLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxrQkFBa0IsRUFDbEIsZUFBZSxFQUNmLGdCQUFnQixFQUNoQixXQUFXLEVBQ1gsbUJBQW1CLEdBQ3BCLE1BQU0sY0FBYyxDQUFDO0FBQ3RCLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxTQUFTLEVBQWMsS0FBSyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkcsT0FBTyxFQUFFLFdBQVcsRUFBYSxVQUFVLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNwRSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUN6RCxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7Ozs7O0FBTzNELE1BQU0sT0FBTyx3QkFBd0I7SUFRbkM7UUFQUSxXQUFNLEdBQXVCLE1BQU0sQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO1FBQ3hELGlCQUFZLEdBQWdCLE1BQU0sQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUN4RCxpQkFBaUI7UUFDakIsa0JBQWEsR0FBUSxFQUFFLENBQUM7UUFDeEIsVUFBVTtRQUNWLG1CQUFjLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsY0FBYyxDQUFDLEVBQUUsY0FBYyxFQUFFLElBQUksQ0FBQztRQW1CbEUsT0FBRSxHQUFHLE1BQU0sQ0FB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QyxFQUNuRSxlQUFlLENBQ2hCLENBQUM7WUFDRixJQUFJLENBQUMsZUFBZSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxJQUFJLEVBQUUsVUFBVSxDQUFDLENBQUM7WUFDckUsSUFBSSxDQUFDLG1CQUFtQjtnQkFDdEIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsaUJBQWlCLENBQUMsOEJBQThCLENBQUMsQ0FBQztZQUV2RSxJQUFJLENBQUMsSUFBSSxDQUFDLG1CQUFtQixFQUFFLENBQUM7Z0JBQzlCLElBQUksQ0FBQyxTQUFTLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLENBQ3BDLElBQUksQ0FBQyxTQUFTLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRSxPQUFPLENBQUMsYUFBYSxDQUFDLEVBQ3RELENBQUMsQ0FDRixDQUFDO1lBQ0osQ0FBQztZQUNELE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNoQixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7OEdBcElVLHdCQUF3QjtrR0FBeEIsd0JBQXdCLDZSQ2pCckMsMHZCQWVPOzsyRkRFTSx3QkFBd0I7a0JBTHBDLFNBQVM7K0JBQ0UsbUJBQW1CO3dEQWtDbEIsTUFBTTtzQkFEaEIsS0FBSztnQkFRSyxlQUFlO3NCQUR6QixLQUFLO2dCQU9LLFFBQVE7c0JBRGxCLEtBQUs7Z0JBT0ssTUFBTTtzQkFEaEIsS0FBSztnQkFLc0MsV0FBVztzQkFBdEQsU0FBUzt1QkFBQyxhQUFhLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ29uZmlnU3RhdGVTZXJ2aWNlLFxuICBMYXp5TG9hZFNlcnZpY2UsXG4gIExPQURJTkdfU1RSQVRFR1ksXG4gIFJlc3RTZXJ2aWNlLFxuICBTdWJzY3JpcHRpb25TZXJ2aWNlLFxufSBmcm9tICdAYWJwL25nLmNvcmUnO1xuaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0b3JSZWYsIENvbXBvbmVudCwgRWxlbWVudFJlZiwgSW5wdXQsIFZpZXdDaGlsZCwgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb3JtQnVpbGRlciwgRm9ybUdyb3VwLCBWYWxpZGF0b3JzIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgaXNCYXNlNjRVcGxvYWRBZGFwdGVyIH0gZnJvbSAnLi9ja0VkaXRvclVwbG9hZCc7XG5pbXBvcnQgeyBTZXRDa0VkaXRvckNvbmZpZ3NTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdjay1lZGl0b3ItY29udHJvbCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9jay1lZGl0b3ItY29udHJvbC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2NrLWVkaXRvci1jb250cm9sLmNvbXBvbmVudC5zY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIENrRWRpdG9yQ29udHJvbENvbXBvbmVudCB7XG4gIHByaXZhdGUgY29uZmlnOiBDb25maWdTdGF0ZVNlcnZpY2UgPSBpbmplY3QoQ29uZmlnU3RhdGVTZXJ2aWNlKTtcbiAgcHJpdmF0ZSBfcmVzdFNlcnZpY2U6IFJlc3RTZXJ2aWNlID0gaW5qZWN0KFJlc3RTZXJ2aWNlKTtcbiAgLyoqY2stRWRpdG9y55qE5YC8ICovXG4gIGNrRWRpdG9yVmFsdWU6IGFueSA9ICcnO1xuICAvKirns7vnu5/or63oqIAgKi9cbiAgY3VycmVudEN1bHR1cmUgPSB0aGlzLmNvbmZpZy5nZXRPbmUoJ2xvY2FsaXphdGlvbicpPy5jdXJyZW50Q3VsdHVyZT8ubmFtZTtcblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICB0aGlzLmxvYWRja2VkaXRvcigpO1xuICB9XG4gIHB1YmxpYyBvblJlYWR5KGVkaXRvcikge1xuICAgIGxldCBfdGhpcyA9IHRoaXM7XG4gICAgZWRpdG9yLnBsdWdpbnMuZ2V0KCdGaWxlUmVwb3NpdG9yeScpLmNyZWF0ZVVwbG9hZEFkYXB0ZXIgPSBmdW5jdGlvbiAobG9hZGVyOiBhbnkpIHtcbiAgICAgIHJldHVybiBuZXcgaXNCYXNlNjRVcGxvYWRBZGFwdGVyKGxvYWRlciwgX3RoaXMuaW1hZ2VzQ29udGFpbmVyTmFtZSwgX3RoaXMuX3Jlc3RTZXJ2aWNlKTtcbiAgICB9O1xuICB9XG5cbiAgLyoqY2stZWRpdG9y6YWN572uICovXG4gIGNrT3B0aW9uczogYW55O1xuICAvKirlr4zmlofmnKzlhoXlrrnmlLnlj5ggKi9cbiAgY2tFZGl0b3JDaGFuZ2UoZXZlbnQpIHtcbiAgICB0aGlzLnNldGNrZWRpdG9ySW5wdXQoZXZlbnQpO1xuICB9XG5cbiAgcHJpdmF0ZSBmYiA9IGluamVjdChGb3JtQnVpbGRlcik7XG5cbiAgLyoq5a2X5q616YWN572u5YiX6KGoICovXG4gIF9maWVsZHM6IGFueSA9ICcnO1xuICBASW5wdXQoKVxuICBwdWJsaWMgc2V0IGZpZWxkcyh2OiBhbnkpIHtcbiAgICB0aGlzLl9maWVsZHMgPSB2O1xuICB9XG5cbiAgLyoq54i257qn5a2X5q615ZCN56ew77yM55So5LqO5Li66KGo5Y2V6K6+572u5o6n5Lu26LWL5YC8ICovXG4gIF9wYXJlbnRGaWxlZE5hbWU6IGFueTtcbiAgQElucHV0KClcbiAgcHVibGljIHNldCBwYXJlbnRGaWxlZE5hbWUodjogYW55KSB7XG4gICAgdGhpcy5fcGFyZW50RmlsZWROYW1lID0gdjtcbiAgfVxuICAvKirniLbnuqflrZfmrrXlkI3np7DvvIznlKjkuo7kuLrooajljZXorr7nva7mjqfku7botYvlgLwgKi9cbiAgX3NlbGVjdGVkOiBhbnk7XG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXQgc2VsZWN0ZWQodjogYW55KSB7XG4gICAgdGhpcy5fc2VsZWN0ZWQgPSB2O1xuICB9XG4gIC8qKuihqOWNleWunuS9kyAqL1xuICBfZW50aXR5OiBGb3JtR3JvdXAgfCB1bmRlZmluZWQ7XG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXQgZW50aXR5KHY6IGFueSkge1xuICAgIHRoaXMuX2VudGl0eSA9IHY7XG4gICAgdGhpcy5kYXRhTG9hZGVkKCk7XG4gIH1cbiAgQFZpZXdDaGlsZCgnc3VibWl0Y2xpY2snLCB7IHN0YXRpYzogdHJ1ZSB9KSBzdWJtaXRjbGljazogRWxlbWVudFJlZjtcblxuICBnZXQgZXh0cmFQcm9wZXJ0aWVzKCkge1xuICAgIHJldHVybiB0aGlzLl9lbnRpdHkuZ2V0KCdleHRyYVByb3BlcnRpZXMnKSBhcyBGb3JtR3JvdXA7XG4gIH1cbiAgZ2V0IGNrZWRpdG9ySW5wdXQoKSB7XG4gICAgcmV0dXJuIHRoaXMuZXh0cmFQcm9wZXJ0aWVzLmdldCh0aGlzLl9maWVsZHMuZmllbGQubmFtZSkgYXMgRm9ybUdyb3VwO1xuICB9XG4gIHByaXZhdGUgY2RyID0gaW5qZWN0KENoYW5nZURldGVjdG9yUmVmKTtcbiAgLyoq5pWw5o2u5Yqg6L295a6M5oiQICovXG4gIGFzeW5jIGRhdGFMb2FkZWQoKSB7XG4gICAgaWYgKHRoaXMuX2ZpZWxkcyAmJiB0aGlzLl9lbnRpdHkpIHtcbiAgICAgIGF3YWl0IHRoaXMuQWZ0ZXJJbml0KCk7XG4gICAgICB0aGlzLmNrRWRpdG9yVmFsdWUgPVxuICAgICAgICB0aGlzLl9zZWxlY3RlZCB8fCB0aGlzLl9maWVsZHMuZmllbGQuZm9ybUNvbmZpZ3VyYXRpb25bJ0NrZWRpdG9yLkluaXRpYWxDb250ZW50J107XG4gICAgICB0aGlzLnNldGNrZWRpdG9ySW5wdXQodGhpcy5ja0VkaXRvclZhbHVlKTtcbiAgICAgIHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKTsgLy8g5omL5Yqo6Kem5Y+R5Y+Y5pu05qOA5rWLXG4gICAgICB0aGlzLnN1Ym1pdGNsaWNrPy5uYXRpdmVFbGVtZW50Py5jbGljaygpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgX1NldENrRWRpdG9yQ29uZmlnc1NlcnZpY2UgPSBpbmplY3QoU2V0Q2tFZGl0b3JDb25maWdzU2VydmljZSk7XG4gIHB1YmxpYyBFZGl0b3I6IGFueTtcbiAgbG9hZGNrZWRpdG9yKCkge1xuICAgIGxldCBfdGhhdCA9IHRoaXM7XG4gICAgcmV0dXJuIG5ldyBQcm9taXNlKGFzeW5jIHJlc29sdmUgPT4ge1xuICAgICAgYXdhaXQgaW1wb3J0KCdja2VkaXRvcjUnKS50aGVuKGFzeW5jIHJlcyA9PiB7XG4gICAgICAgIHRoaXMubG9hZFN0eWxlKCk7XG4gICAgICAgIF90aGF0LkVkaXRvciA9IHJlcy5DbGFzc2ljRWRpdG9yO1xuICAgICAgICBsZXQgY29uZmlncyA9IGF3YWl0IF90aGF0Ll9TZXRDa0VkaXRvckNvbmZpZ3NTZXJ2aWNlLmdldCh7XG4gICAgICAgICAgbGFuZ3VhZ2U6IF90aGF0LmN1cnJlbnRDdWx0dXJlLFxuICAgICAgICB9KTtcbiAgICAgICAgX3RoYXQuY2tPcHRpb25zID0gY29uZmlncztcbiAgICAgIH0pO1xuICAgICAgcmVzb2x2ZSh0cnVlKTtcbiAgICB9KTtcbiAgfVxuICBwcml2YXRlIGxhenlMb2FkU2VydmljZSA9IGluamVjdChMYXp5TG9hZFNlcnZpY2UpO1xuICBwcml2YXRlIHN1YnNjcmlwdGlvblNlcnZpY2UgPSBpbmplY3QoU3Vic2NyaXB0aW9uU2VydmljZSk7XG4gIHByaXZhdGUgbG9hZFN0eWxlKCkge1xuICAgIGNvbnN0IGxvYWRlZCQgPSB0aGlzLmxhenlMb2FkU2VydmljZS5sb2FkKFxuICAgICAgTE9BRElOR19TVFJBVEVHWS5BcHBlbmRBbm9ueW1vdXNTdHlsZVRvSGVhZCgnY2tlZGl0b3I1LmNzcycpXG4gICAgKTtcbiAgICB0aGlzLnN1YnNjcmlwdGlvblNlcnZpY2UuYWRkT25lKGxvYWRlZCQpO1xuICB9XG5cbiAgaW52YWxpZGZlZWRiYWNrID0gZmFsc2U7XG4gIC8v6K6+572u5YC8XG4gIHNldGNrZWRpdG9ySW5wdXQodmFsKSB7XG4gICAgdGhpcy5pbnZhbGlkZmVlZGJhY2sgPSB0cnVlO1xuICAgIHRoaXMuY2tlZGl0b3JJbnB1dC5wYXRjaFZhbHVlKHZhbCk7XG4gIH1cblxuICAvKirlm77niYflrrnlmajlkI3np7AgKi9cbiAgaW1hZ2VzQ29udGFpbmVyTmFtZTogYW55ID0gJyc7XG4gIEFmdGVySW5pdCgpIHtcbiAgICByZXR1cm4gbmV3IFByb21pc2UocmVzb2x2ZSA9PiB7XG4gICAgICBsZXQgVmFsaWRhdG9yc0FycmF5ID0gW107XG4gICAgICBpZiAodGhpcy5fZmllbGRzLnJlcXVpcmVkKSB7XG4gICAgICAgIFZhbGlkYXRvcnNBcnJheS5wdXNoKFZhbGlkYXRvcnMucmVxdWlyZWQpO1xuICAgICAgfVxuICAgICAgbGV0IG5ld0NvbnRyb2wgPSB0aGlzLmZiLmNvbnRyb2woXG4gICAgICAgIHRoaXMuX3NlbGVjdGVkXG4gICAgICAgICAgPyB0aGlzLl9zZWxlY3RlZFxuICAgICAgICAgIDogdGhpcy5fZmllbGRzLmZpZWxkLmZvcm1Db25maWd1cmF0aW9uWydDa2VkaXRvci5Jbml0aWFsQ29udGVudCddLFxuICAgICAgICBWYWxpZGF0b3JzQXJyYXlcbiAgICAgICk7XG4gICAgICB0aGlzLmV4dHJhUHJvcGVydGllcy5zZXRDb250cm9sKHRoaXMuX2ZpZWxkcy5maWVsZC5uYW1lLCBuZXdDb250cm9sKTtcbiAgICAgIHRoaXMuaW1hZ2VzQ29udGFpbmVyTmFtZSA9XG4gICAgICAgIHRoaXMuX2ZpZWxkcy5maWVsZC5mb3JtQ29uZmlndXJhdGlvblsnQ2tlZGl0b3IuSW1hZ2VzQ29udGFpbmVyTmFtZSddO1xuXG4gICAgICBpZiAoIXRoaXMuaW1hZ2VzQ29udGFpbmVyTmFtZSkge1xuICAgICAgICB0aGlzLmNrT3B0aW9ucz8udG9vbGJhcj8uaXRlbXM/LnNwbGljZShcbiAgICAgICAgICB0aGlzLmNrT3B0aW9ucz8udG9vbGJhcj8uaXRlbXM/LmluZGV4T2YoJ2luc2VydEltYWdlJyksXG4gICAgICAgICAgMVxuICAgICAgICApO1xuICAgICAgfVxuICAgICAgcmVzb2x2ZSh0cnVlKTtcbiAgICB9KTtcbiAgfVxufVxuIiwiPGZvcm0gW2Zvcm1Hcm91cF09XCJfZW50aXR5XCI+XG4gICAgPGRpdiBmb3JtR3JvdXBOYW1lPVwiZXh0cmFQcm9wZXJ0aWVzXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJtYi0zXCI+XG4gICAgICAgICAgICA8bGFiZWwgY2xhc3M9XCJmb3JtLWxhYmVsXCIgKm5nSWY9XCJfZmllbGRzLmRpc3BsYXlOYW1lXCI+e3sgX2ZpZWxkcy5kaXNwbGF5TmFtZSB9fTwvbGFiZWw+XG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiY2tPcHRpb25zXCI+XG5cbiAgICAgICAgICAgICAgICA8Y2tlZGl0b3IgW2VkaXRvcl09XCJFZGl0b3JcIiAqbmdJZj1cIkVkaXRvclwiIFtjb25maWddPVwiY2tPcHRpb25zXCIgKHJlYWR5KT1cIm9uUmVhZHkoJGV2ZW50KVwiXG4gICAgICAgICAgICAgICAgICAgIFtmb3JtQ29udHJvbE5hbWVdPVwiX2ZpZWxkcy5maWVsZC5uYW1lXCI+XG4gICAgICAgICAgICAgICAgPC9ja2VkaXRvcj5cbiAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgPHNtYWxsIGNsYXNzPVwiZm9ybS10ZXh0IHRleHQtbXV0ZWQgZC1ibG9ja1wiXG4gICAgICAgICAgICAgICAgKm5nSWY9XCJfZmllbGRzLmZpZWxkLmRlc2NyaXB0aW9uXCI+e3tfZmllbGRzLmZpZWxkLmRlc2NyaXB0aW9ufX08L3NtYWxsPlxuICAgICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgICA8YnV0dG9uIHR5cGU9XCJzdWJtaXRcIiBzdHlsZT1cImRpc3BsYXk6IG5vbmU7XCIgI3N1Ym1pdGNsaWNrPjwvYnV0dG9uPlxuPC9mb3JtPiJdfQ==
|
|
145
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2stZWRpdG9yLWNvbnRyb2wuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY2stZWRpdG9yL3NyYy9saWIvZHluYW1pYy1mb3JtL2NrLWVkaXRvci9jay1lZGl0b3ItY29udHJvbC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jay1lZGl0b3Ivc3JjL2xpYi9keW5hbWljLWZvcm0vY2stZWRpdG9yL2NrLWVkaXRvci1jb250cm9sLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxrQkFBa0IsRUFDbEIsZUFBZSxFQUNmLGdCQUFnQixFQUNoQixXQUFXLEVBQ1gsbUJBQW1CLEdBQ3BCLE1BQU0sY0FBYyxDQUFDO0FBQ3RCLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25HLE9BQU8sRUFBRSxXQUFXLEVBQWEsVUFBVSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDcEUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDekQsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDM0QsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0saUNBQWlDLENBQUM7Ozs7OztBQVFuRSxNQUFNLE9BQU8sd0JBQXdCO0lBVW5DO1FBVFEsV0FBTSxHQUF1QixNQUFNLENBQUMsa0JBQWtCLENBQUMsQ0FBQztRQUN4RCxpQkFBWSxHQUFnQixNQUFNLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDeEQsaUJBQWlCO1FBQ2pCLGtCQUFhLEdBQVEsRUFBRSxDQUFDO1FBQ3hCLFVBQVU7UUFDVixtQkFBYyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFD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Q0FBQyxDQUFDO1lBQ3JFLElBQUksQ0FBQyxtQkFBbUI7Z0JBQ3RCLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLGlCQUFpQixDQUFDLDhCQUE4QixDQUFDLENBQUM7WUFHdkUsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ2hCLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzs4R0FqSlUsd0JBQXdCO2tHQUF4Qix3QkFBd0IsNlJDbkJyQyxneEJBY087OzJGREtNLHdCQUF3QjtrQkFMcEMsU0FBUzsrQkFDRSxtQkFBbUI7d0RBa0NsQixNQUFNO3NCQURoQixLQUFLO2dCQVFLLGVBQWU7c0JBRHpCLEtBQUs7Z0JBT0ssUUFBUTtzQkFEbEIsS0FBSztnQkFPSyxNQUFNO3NCQURoQixLQUFLO2dCQUtzQyxXQUFXO3NCQUF0RCxTQUFTO3VCQUFDLGFBQWEsRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDb25maWdTdGF0ZVNlcnZpY2UsXG4gIExhenlMb2FkU2VydmljZSxcbiAgTE9BRElOR19TVFJBVEVHWSxcbiAgUmVzdFNlcnZpY2UsXG4gIFN1YnNjcmlwdGlvblNlcnZpY2UsXG59IGZyb20gJ0BhYnAvbmcuY29yZSc7XG5pbXBvcnQgeyBDaGFuZ2VEZXRlY3RvclJlZiwgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBJbnB1dCwgVmlld0NoaWxkLCBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZvcm1CdWlsZGVyLCBGb3JtR3JvdXAsIFZhbGlkYXRvcnMgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBpc0Jhc2U2NFVwbG9hZEFkYXB0ZXIgfSBmcm9tICcuL2NrRWRpdG9yVXBsb2FkJztcbmltcG9ydCB7IFNldENrRWRpdG9yQ29uZmlnc1NlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcyc7XG5pbXBvcnQgeyBDa0VkaXRvck1vZGVFbnVtIH0gZnJvbSAnLi4vLi4vZW51bXMvY2stZWRpdG9yLW1vZGUuZW51bSc7XG5cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnY2stZWRpdG9yLWNvbnRyb2wnLFxuICB0ZW1wbGF0ZVVybDogJy4vY2stZWRpdG9yLWNvbnRyb2wuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9jay1lZGl0b3ItY29udHJvbC5jb21wb25lbnQuc2NzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBDa0VkaXRvckNvbnRyb2xDb21wb25lbnQge1xuICBwcml2YXRlIGNvbmZpZzogQ29uZmlnU3RhdGVTZXJ2aWNlID0gaW5qZWN0KENvbmZpZ1N0YXRlU2VydmljZSk7XG4gIHByaXZhdGUgX3Jlc3RTZXJ2aWNlOiBSZXN0U2VydmljZSA9IGluamVjdChSZXN0U2VydmljZSk7XG4gIC8qKmNrLUVkaXRvcueahOWAvCAqL1xuICBja0VkaXRvclZhbHVlOiBhbnkgPSAnJztcbiAgLyoq57O757uf6K+t6KiAICovXG4gIGN1cnJlbnRDdWx0dXJlID0gdGhpcy5jb25maWcuZ2V0T25lKCdsb2NhbGl6YXRpb24nKT8uY3VycmVudEN1bHR1cmU/Lm5hbWU7XG5cbiAgQ2tFZGl0b3JNb2RlRW51bSA9IENrRWRpdG9yTW9kZUVudW07XG5cbiAgY29uc3RydWN0b3IoKSB7fVxuICBwdWJsaWMgb25SZWFkeShlZGl0b3IpIHtcbiAgICBsZXQgX3RoaXMgPSB0aGlzO1xuICAgIGVkaXRvci5wbHVnaW5zLmdldCgnRmlsZVJlcG9zaXRvcnknKS5jcmVhdGVVcGxvYWRBZGFwdGVyID0gZnVuY3Rpb24gKGxvYWRlcjogYW55KSB7XG4gICAgICByZXR1cm4gbmV3IGlzQmFzZTY0VXBsb2FkQWRhcHRlcihsb2FkZXIsIF90aGlzLmltYWdlc0NvbnRhaW5lck5hbWUsIF90aGlzLl9yZXN0U2VydmljZSk7XG4gICAgfTtcbiAgfVxuXG4gIC8qKmNrLWVkaXRvcumFjee9riAqL1xuICBja09wdGlvbnM6IGFueTtcbiAgLyoq5a+M5paH5pys5YaF5a655pS55Y+YICovXG4gIGNrRWRpdG9yQ2hhbmdlKGV2ZW50KSB7XG4gICAgdGhpcy5zZXRja2VkaXRvcklucHV0KGV2ZW50KTtcbiAgfVxuXG4gIHByaXZhdGUgZmIgPSBpbmplY3QoRm9ybUJ1aWxkZXIpO1xuXG4gIC8qKuWtl+autemFjee9ruWIl+ihqCAqL1xuICBfZmllbGRzOiBhbnkgPSAnJztcbiAgQElucHV0KClcbiAgcHVibGljIHNldCBmaWVsZHModjogYW55KSB7XG4gICAgdGhpcy5fZmllbGRzID0gdjtcbiAgfVxuXG4gIC8qKueItue6p+Wtl+auteWQjeensO+8jOeUqOS6juS4uuihqOWNleiuvue9ruaOp+S7tui1i+WAvCAqL1xuICBfcGFyZW50RmlsZWROYW1lOiBhbnk7XG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXQgcGFyZW50RmlsZWROYW1lKHY6IGFueSkge1xuICAgIHRoaXMuX3BhcmVudEZpbGVkTmFtZSA9IHY7XG4gIH1cbiAgLyoq54i257qn5a2X5q615ZCN56ew77yM55So5LqO5Li66KGo5Y2V6K6+572u5o6n5Lu26LWL5YC8ICovXG4gIF9zZWxlY3RlZDogYW55O1xuICBASW5wdXQoKVxuICBwdWJsaWMgc2V0IHNlbGVjdGVkKHY6IGFueSkge1xuICAgIHRoaXMuX3NlbGVjdGVkID0gdjtcbiAgfVxuICAvKirooajljZXlrp7kvZMgKi9cbiAgX2VudGl0eTogRm9ybUdyb3VwIHwgdW5kZWZpbmVkO1xuICBASW5wdXQoKVxuICBwdWJsaWMgc2V0IGVudGl0eSh2OiBhbnkpIHtcbiAgICB0aGlzLl9lbnRpdHkgPSB2O1xuICAgIHRoaXMuZGF0YUxvYWRlZCgpO1xuICB9XG4gIEBWaWV3Q2hpbGQoJ3N1Ym1pdGNsaWNrJywgeyBzdGF0aWM6IHRydWUgfSkgc3VibWl0Y2xpY2s6IEVsZW1lbnRSZWY7XG5cbiAgZ2V0IGV4dHJhUHJvcGVydGllcygpIHtcbiAgICByZXR1cm4gdGhpcy5fZW50aXR5Py5nZXQoJ2V4dHJhUHJvcGVydGllcycpIGFzIEZvcm1Hcm91cDtcbiAgfVxuICBnZXQgY2tlZGl0b3JJbnB1dCgpIHtcbiAgICByZXR1cm4gdGhpcy5leHRyYVByb3BlcnRpZXMuZ2V0KHRoaXMuX2ZpZWxkcy5maWVsZC5uYW1lKSBhcyBGb3JtR3JvdXA7XG4gIH1cbiAgcHJpdmF0ZSBjZHIgPSBpbmplY3QoQ2hhbmdlRGV0ZWN0b3JSZWYpO1xuICAvKirmlbDmja7liqDovb3lrozmiJAgKi9cbiAgYXN5bmMgZGF0YUxvYWRlZCgpIHtcbiAgICBpZiAodGhpcy5fZmllbGRzICYmIHRoaXMuX2VudGl0eSkge1xuICAgICAgYXdhaXQgdGhpcy5BZnRlckluaXQoKTtcbiAgICAgIHRoaXMuY2tFZGl0b3JWYWx1ZSA9XG4gICAgICAgIHRoaXMuX3NlbGVjdGVkIHx8IHRoaXMuX2ZpZWxkcy5maWVsZC5mb3JtQ29uZmlndXJhdGlvblsnQ2tlZGl0b3IuSW5pdGlhbENvbnRlbnQnXTtcbiAgICAgIHRoaXMuc2V0Y2tlZGl0b3JJbnB1dCh0aGlzLmNrRWRpdG9yVmFsdWUpO1xuICAgICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpOyAvLyDmiYvliqjop6blj5Hlj5jmm7Tmo4DmtYtcbiAgICAgIGF3YWl0IHRoaXMubG9hZGNrZWRpdG9yKCk7XG4gICAgICB0aGlzLnN1Ym1pdGNsaWNrPy5uYXRpdmVFbGVtZW50Py5jbGljaygpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgX1NldENrRWRpdG9yQ29uZmlnc1NlcnZpY2UgPSBpbmplY3QoU2V0Q2tFZGl0b3JDb25maWdzU2VydmljZSk7XG4gIHB1YmxpYyBFZGl0b3I6IGFueTtcbiAgbG9hZGNrZWRpdG9yKCkge1xuICAgIGxldCBfdGhhdCA9IHRoaXM7XG4gICAgbGV0IGZvcm1Db25maWd1cmF0aW9uPXRoaXMuX2ZpZWxkcy5maWVsZC5mb3JtQ29uZmlndXJhdGlvbjtcbiAgICByZXR1cm4gbmV3IFByb21pc2UoYXN5bmMgcmVzb2x2ZSA9PiB7XG4gICAgICBhd2FpdCBpbXBvcnQoJ2NrZWRpdG9yNScpLnRoZW4oYXN5bmMgcmVzID0+IHtcbiAgICAgICAgdGhpcy5sb2FkU3R5bGUoKTtcbiAgICAgICAgaWYoZm9ybUNvbmZpZ3VyYXRpb25bJ0NrZWRpdG9yLk1vZGUnXT09Q2tFZGl0b3JNb2RlRW51bS5TaW1wbGUpe1xuICAgICAgICAgIF90aGF0LkVkaXRvciA9IHJlcy5JbmxpbmVFZGl0b3I7XG4gICAgICAgIH0gZWxzZSBpZihmb3JtQ29uZmlndXJhdGlvblsnQ2tlZGl0b3IuTW9kZSddPT1Da0VkaXRvck1vZGVFbnVtLkNsYXNzaWMpe1xuICAgICAgICAgIF90aGF0LkVkaXRvciA9IHJlcy5DbGFzc2ljRWRpdG9yO1xuICAgICAgICB9ZWxzZXtcbiAgICAgICAgICBmb3JtQ29uZmlndXJhdGlvblsnQ2tlZGl0b3IuTW9kZSddPUNrRWRpdG9yTW9kZUVudW0uU2ltcGxlO1xuICAgICAgICAgIF90aGF0LkVkaXRvciA9IHJlcy5JbmxpbmVFZGl0b3I7XG4gICAgICAgIH1cbiAgICAgICAgbGV0IGNvbmZpZ3M6YW55ID0gYXdhaXQgX3RoYXQuX1NldENrRWRpdG9yQ29uZmlnc1NlcnZpY2UuZ2V0KHtcbiAgICAgICAgICBsYW5ndWFnZTogX3RoYXQuY3VycmVudEN1bHR1cmUsXG4gICAgICAgICAgdHlwZTpmb3JtQ29uZmlndXJhdGlvblsnQ2tlZGl0b3IuTW9kZSddXG4gICAgICAgIH0pO1xuICAgICAgICBpZiAoIXRoaXMuaW1hZ2VzQ29udGFpbmVyTmFtZSkge1xuICAgICAgICAgIGlmKGNvbmZpZ3M/LnRvb2xiYXI/Lml0ZW1zPy5pbmRleE9mKCdpbnNlcnRJbWFnZScpIT0tMSl7XG4gICAgICAgICAgICBjb25maWdzPy50b29sYmFyPy5pdGVtcz8uc3BsaWNlKFxuICAgICAgICAgICAgICBjb25maWdzPy50b29sYmFyPy5pdGVtcz8uaW5kZXhPZignaW5zZXJ0SW1hZ2UnKSxcbiAgICAgICAgICAgICAgMVxuICAgICAgICAgICAgKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgX3RoYXQuY2tPcHRpb25zID0gY29uZmlncztcbiAgICAgIH0pO1xuICAgICAgcmVzb2x2ZSh0cnVlKTtcbiAgICB9KTtcbiAgfVxuICBwcml2YXRlIGxhenlMb2FkU2VydmljZSA9IGluamVjdChMYXp5TG9hZFNlcnZpY2UpO1xuICBwcml2YXRlIHN1YnNjcmlwdGlvblNlcnZpY2UgPSBpbmplY3QoU3Vic2NyaXB0aW9uU2VydmljZSk7XG4gIHByaXZhdGUgbG9hZFN0eWxlKCkge1xuICAgIGNvbnN0IGxvYWRlZCQgPSB0aGlzLmxhenlMb2FkU2VydmljZS5sb2FkKFxuICAgICAgTE9BRElOR19TVFJBVEVHWS5BcHBlbmRBbm9ueW1vdXNTdHlsZVRvSGVhZCgnY2tlZGl0b3I1LmNzcycpXG4gICAgKTtcbiAgICB0aGlzLnN1YnNjcmlwdGlvblNlcnZpY2UuYWRkT25lKGxvYWRlZCQpO1xuICB9XG5cbiAgaW52YWxpZGZlZWRiYWNrID0gZmFsc2U7XG4gIC8v6K6+572u5YC8XG4gIHNldGNrZWRpdG9ySW5wdXQodmFsKSB7XG4gICAgdGhpcy5pbnZhbGlkZmVlZGJhY2sgPSB0cnVlO1xuICAgIHRoaXMuY2tlZGl0b3JJbnB1dC5wYXRjaFZhbHVlKHZhbCk7XG4gIH1cblxuICAvKirlm77niYflrrnlmajlkI3np7AgKi9cbiAgaW1hZ2VzQ29udGFpbmVyTmFtZTogYW55ID0gJyc7XG4gIEFmdGVySW5pdCgpIHtcbiAgICByZXR1cm4gbmV3IFByb21pc2UocmVzb2x2ZSA9PiB7XG4gICAgICBsZXQgVmFsaWRhdG9yc0FycmF5OmFueVtdID0gW107XG4gICAgICBpZiAodGhpcy5fZmllbGRzLnJlcXVpcmVkKSB7XG4gICAgICAgIFZhbGlkYXRvcnNBcnJheS5wdXNoKFZhbGlkYXRvcnMucmVxdWlyZWQpO1xuICAgICAgfVxuICAgICAgbGV0IG5ld0NvbnRyb2wgPSB0aGlzLmZiLmNvbnRyb2woXG4gICAgICAgIHRoaXMuX3NlbGVjdGVkXG4gICAgICAgICAgPyB0aGlzLl9zZWxlY3RlZFxuICAgICAgICAgIDogdGhpcy5fZmllbGRzLmZpZWxkLmZvcm1Db25maWd1cmF0aW9uWydDa2VkaXRvci5Jbml0aWFsQ29udGVudCddLFxuICAgICAgICBWYWxpZGF0b3JzQXJyYXlcbiAgICAgICk7XG4gICAgICB0aGlzLmV4dHJhUHJvcGVydGllcy5zZXRDb250cm9sKHRoaXMuX2ZpZWxkcy5maWVsZC5uYW1lLCBuZXdDb250cm9sKTtcbiAgICAgIHRoaXMuaW1hZ2VzQ29udGFpbmVyTmFtZSA9XG4gICAgICAgIHRoaXMuX2ZpZWxkcy5maWVsZC5mb3JtQ29uZmlndXJhdGlvblsnQ2tlZGl0b3IuSW1hZ2VzQ29udGFpbmVyTmFtZSddO1xuXG4gICAgXG4gICAgICByZXNvbHZlKHRydWUpO1xuICAgIH0pO1xuICB9XG59XG4iLCI8Zm9ybSBbZm9ybUdyb3VwXT1cIl9lbnRpdHlcIj5cbiAgICA8ZGl2IGZvcm1Hcm91cE5hbWU9XCJleHRyYVByb3BlcnRpZXNcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cIm1iLTNcIj5cbiAgICAgICAgICAgIDxsYWJlbCBjbGFzcz1cImZvcm0tbGFiZWxcIiAqbmdJZj1cIl9maWVsZHMuZGlzcGxheU5hbWVcIj57eyBfZmllbGRzLmRpc3BsYXlOYW1lIH19PC9sYWJlbD5cbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJja09wdGlvbnNcIj5cbiAgICAgICAgICAgICAgICA8Y2tlZGl0b3IgY2xhc3M9XCJmb3JtLXRleHRhcmVhXCIgW2VkaXRvcl09XCJFZGl0b3JcIiAqbmdJZj1cIkVkaXRvclwiIFtjb25maWddPVwiY2tPcHRpb25zXCIgKHJlYWR5KT1cIm9uUmVhZHkoJGV2ZW50KVwiXG4gICAgICAgICAgICAgICAgICAgIFtmb3JtQ29udHJvbE5hbWVdPVwiX2ZpZWxkcy5maWVsZC5uYW1lXCI+XG4gICAgICAgICAgICAgICAgPC9ja2VkaXRvcj5cbiAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgPHNtYWxsIGNsYXNzPVwiZm9ybS10ZXh0IHRleHQtbXV0ZWQgZC1ibG9ja1wiXG4gICAgICAgICAgICAgICAgKm5nSWY9XCJfZmllbGRzLmZpZWxkLmRlc2NyaXB0aW9uXCI+e3tfZmllbGRzLmZpZWxkLmRlc2NyaXB0aW9ufX08L3NtYWxsPlxuICAgICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgICA8YnV0dG9uIHR5cGU9XCJzdWJtaXRcIiBzdHlsZT1cImRpc3BsYXk6IG5vbmU7XCIgI3N1Ym1pdGNsaWNrPjwvYnV0dG9uPlxuPC9mb3JtPiJdfQ==
|