@syncfusion/ej2-angular-pdfviewer 31.2.12 → 31.2.13
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/CHANGELOG.md +3573 -2057
- package/README.md +98 -101
- package/esm2020/src/document-editor/documenteditor-all.module.mjs +134 -0
- package/esm2020/src/document-editor/documenteditor.component.mjs +311 -0
- package/esm2020/src/document-editor/documenteditor.module.mjs +25 -0
- package/esm2020/src/document-editor-container/documenteditorcontainer-all.module.mjs +32 -0
- package/esm2020/src/document-editor-container/documenteditorcontainer.component.mjs +73 -0
- package/esm2020/src/document-editor-container/documenteditorcontainer.module.mjs +25 -0
- package/esm2020/src/index.mjs +8 -5
- package/esm2020/syncfusion-ej2-angular-documenteditor.mjs +5 -0
- package/fesm2015/syncfusion-ej2-angular-documenteditor.mjs +584 -0
- package/fesm2015/syncfusion-ej2-angular-documenteditor.mjs.map +1 -0
- package/fesm2020/syncfusion-ej2-angular-documenteditor.mjs +584 -0
- package/fesm2020/syncfusion-ej2-angular-documenteditor.mjs.map +1 -0
- package/package.json +2 -2
- package/schematics/collection.json +14 -10
- package/schematics/generators/documenteditorcontainer-default/index.d.ts +3 -0
- package/schematics/generators/documenteditorcontainer-default/index.js +8 -0
- package/schematics/generators/documenteditorcontainer-default/index.ts +8 -0
- package/schematics/generators/documenteditorcontainer-default/sample-details.d.ts +5 -0
- package/schematics/generators/documenteditorcontainer-default/sample-details.js +8 -0
- package/schematics/generators/documenteditorcontainer-default/sample-details.ts +5 -0
- package/schematics/generators/documenteditorcontainer-default/samples/__path__/__name@dasherize@if-flat__/__name@dasherize__.component.css +3 -0
- package/schematics/generators/documenteditorcontainer-default/samples/__path__/__name@dasherize@if-flat__/__name@dasherize__.component.html +8 -0
- package/schematics/generators/documenteditorcontainer-default/samples/__path__/__name@dasherize@if-flat__/__name@dasherize__.component.ts +25 -0
- package/schematics/generators/documenteditorcontainer-default/samples/__path__/__name@dasherize@if-flat__/assets/data.ts +1423 -0
- package/schematics/generators/documenteditorcontainer-default/schema.d.ts +3 -0
- package/schematics/generators/documenteditorcontainer-default/schema.js +2 -0
- package/schematics/generators/documenteditorcontainer-default/schema.json +125 -0
- package/schematics/generators/documenteditorcontainer-default/schema.ts +3 -0
- package/schematics/ng-add/index.js +1 -1
- package/schematics/ng-add/index.ts +10 -10
- package/schematics/ng-add/schema.json +34 -34
- package/schematics/ng-add/schema.ts +30 -30
- package/schematics/tsconfig.json +25 -25
- package/schematics/utils/lib-details.d.ts +4 -4
- package/schematics/utils/lib-details.js +3 -2
- package/schematics/utils/lib-details.ts +4 -4
- package/src/document-editor/documenteditor-all.module.d.ts +48 -0
- package/src/document-editor/documenteditor.component.d.ts +58 -0
- package/src/document-editor/documenteditor.module.d.ts +11 -0
- package/src/document-editor-container/documenteditorcontainer-all.module.d.ts +14 -0
- package/src/document-editor-container/documenteditorcontainer.component.d.ts +48 -0
- package/src/document-editor-container/documenteditorcontainer.module.d.ts +11 -0
- package/src/index.d.ts +7 -4
- package/styles/bds-lite.css +1 -1
- package/styles/bds-lite.scss +1 -1
- package/styles/bds.css +1 -1
- package/styles/bds.scss +2 -1
- package/styles/bootstrap-dark-lite.css +1 -1
- package/styles/bootstrap-dark-lite.scss +1 -1
- package/styles/bootstrap-dark.css +1 -1
- package/styles/bootstrap-dark.scss +2 -1
- package/styles/bootstrap-lite.css +1 -1
- package/styles/bootstrap-lite.scss +1 -1
- package/styles/bootstrap.css +1 -1
- package/styles/bootstrap.scss +2 -1
- package/styles/bootstrap4-lite.css +1 -1
- package/styles/bootstrap4-lite.scss +1 -1
- package/styles/bootstrap4.css +1 -1
- package/styles/bootstrap4.scss +2 -1
- package/styles/bootstrap5-dark-lite.css +1 -1
- package/styles/bootstrap5-dark-lite.scss +1 -1
- package/styles/bootstrap5-dark.css +1 -1
- package/styles/bootstrap5-dark.scss +2 -1
- package/styles/bootstrap5-lite.css +1 -1
- package/styles/bootstrap5-lite.scss +1 -1
- package/styles/bootstrap5.3-lite.css +1 -1
- package/styles/bootstrap5.3-lite.scss +1 -1
- package/styles/bootstrap5.3.css +1 -1
- package/styles/bootstrap5.3.scss +2 -1
- package/styles/bootstrap5.css +1 -1
- package/styles/bootstrap5.scss +2 -1
- package/styles/document-editor/bds.css +1 -0
- package/styles/document-editor/bds.scss +1 -0
- package/styles/document-editor/bootstrap-dark.css +1 -0
- package/styles/document-editor/bootstrap-dark.scss +1 -0
- package/styles/document-editor/bootstrap.css +1 -0
- package/styles/document-editor/bootstrap.scss +1 -0
- package/styles/document-editor/bootstrap4.css +1 -0
- package/styles/document-editor/bootstrap4.scss +1 -0
- package/styles/document-editor/bootstrap5-dark.css +1 -0
- package/styles/document-editor/bootstrap5-dark.scss +1 -0
- package/styles/document-editor/bootstrap5.3.css +1 -0
- package/styles/document-editor/bootstrap5.3.scss +1 -0
- package/styles/document-editor/bootstrap5.css +1 -0
- package/styles/document-editor/bootstrap5.scss +1 -0
- package/styles/document-editor/fabric-dark.css +1 -0
- package/styles/document-editor/fabric-dark.scss +1 -0
- package/styles/document-editor/fabric.css +1 -0
- package/styles/document-editor/fabric.scss +1 -0
- package/styles/document-editor/fluent-dark.css +1 -0
- package/styles/document-editor/fluent-dark.scss +1 -0
- package/styles/document-editor/fluent.css +1 -0
- package/styles/document-editor/fluent.scss +1 -0
- package/styles/document-editor/fluent2.css +1 -0
- package/styles/document-editor/fluent2.scss +1 -0
- package/styles/document-editor/highcontrast-light.css +1 -0
- package/styles/document-editor/highcontrast-light.scss +1 -0
- package/styles/document-editor/highcontrast.css +1 -0
- package/styles/document-editor/highcontrast.scss +1 -0
- package/styles/document-editor/material-dark.css +1 -0
- package/styles/document-editor/material-dark.scss +1 -0
- package/styles/document-editor/material.css +1 -0
- package/styles/document-editor/material.scss +1 -0
- package/styles/document-editor/material3-dark.css +1 -0
- package/styles/document-editor/material3-dark.scss +2 -0
- package/styles/document-editor/material3.css +1 -0
- package/styles/document-editor/material3.scss +2 -0
- package/styles/document-editor/tailwind-dark.css +1 -0
- package/styles/document-editor/tailwind-dark.scss +1 -0
- package/styles/document-editor/tailwind.css +1 -0
- package/styles/document-editor/tailwind.scss +1 -0
- package/styles/document-editor/tailwind3.css +1 -0
- package/styles/document-editor/tailwind3.scss +1 -0
- package/styles/document-editor-container/bds.css +1 -0
- package/styles/document-editor-container/bds.scss +1 -0
- package/styles/document-editor-container/bootstrap-dark.css +1 -0
- package/styles/document-editor-container/bootstrap-dark.scss +1 -0
- package/styles/document-editor-container/bootstrap.css +1 -0
- package/styles/document-editor-container/bootstrap.scss +1 -0
- package/styles/document-editor-container/bootstrap4.css +1 -0
- package/styles/document-editor-container/bootstrap4.scss +1 -0
- package/styles/document-editor-container/bootstrap5-dark.css +1 -0
- package/styles/document-editor-container/bootstrap5-dark.scss +1 -0
- package/styles/document-editor-container/bootstrap5.3.css +1 -0
- package/styles/document-editor-container/bootstrap5.3.scss +1 -0
- package/styles/document-editor-container/bootstrap5.css +1 -0
- package/styles/document-editor-container/bootstrap5.scss +1 -0
- package/styles/document-editor-container/fabric-dark.css +1 -0
- package/styles/document-editor-container/fabric-dark.scss +1 -0
- package/styles/document-editor-container/fabric.css +1 -0
- package/styles/document-editor-container/fabric.scss +1 -0
- package/styles/document-editor-container/fluent-dark.css +1 -0
- package/styles/document-editor-container/fluent-dark.scss +1 -0
- package/styles/document-editor-container/fluent.css +1 -0
- package/styles/document-editor-container/fluent.scss +1 -0
- package/styles/document-editor-container/fluent2.css +1 -0
- package/styles/document-editor-container/fluent2.scss +1 -0
- package/styles/document-editor-container/highcontrast-light.css +1 -0
- package/styles/document-editor-container/highcontrast-light.scss +1 -0
- package/styles/document-editor-container/highcontrast.css +1 -0
- package/styles/document-editor-container/highcontrast.scss +1 -0
- package/styles/document-editor-container/material-dark.css +1 -0
- package/styles/document-editor-container/material-dark.scss +1 -0
- package/styles/document-editor-container/material.css +1 -0
- package/styles/document-editor-container/material.scss +1 -0
- package/styles/document-editor-container/material3-dark.css +1 -0
- package/styles/document-editor-container/material3-dark.scss +2 -0
- package/styles/document-editor-container/material3.css +1 -0
- package/styles/document-editor-container/material3.scss +2 -0
- package/styles/document-editor-container/tailwind-dark.css +1 -0
- package/styles/document-editor-container/tailwind-dark.scss +1 -0
- package/styles/document-editor-container/tailwind.css +1 -0
- package/styles/document-editor-container/tailwind.scss +1 -0
- package/styles/document-editor-container/tailwind3.css +1 -0
- package/styles/document-editor-container/tailwind3.scss +1 -0
- package/styles/fabric-dark-lite.css +1 -1
- package/styles/fabric-dark-lite.scss +1 -1
- package/styles/fabric-dark.css +1 -1
- package/styles/fabric-dark.scss +2 -1
- package/styles/fabric-lite.css +1 -1
- package/styles/fabric-lite.scss +1 -1
- package/styles/fabric.css +1 -1
- package/styles/fabric.scss +2 -1
- package/styles/fluent-dark-lite.css +1 -1
- package/styles/fluent-dark-lite.scss +1 -1
- package/styles/fluent-dark.css +1 -1
- package/styles/fluent-dark.scss +2 -1
- package/styles/fluent-lite.css +1 -1
- package/styles/fluent-lite.scss +1 -1
- package/styles/fluent.css +1 -1
- package/styles/fluent.scss +2 -1
- package/styles/fluent2-lite.css +1 -1
- package/styles/fluent2-lite.scss +1 -1
- package/styles/fluent2.css +1 -1
- package/styles/fluent2.scss +2 -1
- package/styles/highcontrast-light-lite.css +1 -1
- package/styles/highcontrast-light-lite.scss +1 -1
- package/styles/highcontrast-light.css +1 -1
- package/styles/highcontrast-light.scss +2 -1
- package/styles/highcontrast-lite.css +1 -1
- package/styles/highcontrast-lite.scss +1 -1
- package/styles/highcontrast.css +1 -1
- package/styles/highcontrast.scss +2 -1
- package/styles/material-dark-lite.css +1 -1
- package/styles/material-dark-lite.scss +1 -1
- package/styles/material-dark.css +1 -1
- package/styles/material-dark.scss +2 -1
- package/styles/material-lite.css +1 -1
- package/styles/material-lite.scss +1 -1
- package/styles/material.css +1 -1
- package/styles/material.scss +2 -1
- package/styles/material3-dark-lite.css +1 -1
- package/styles/material3-dark-lite.scss +1 -1
- package/styles/material3-dark.css +1 -1
- package/styles/material3-dark.scss +2 -1
- package/styles/material3-lite.css +1 -1
- package/styles/material3-lite.scss +1 -1
- package/styles/material3.css +1 -1
- package/styles/material3.scss +2 -1
- package/styles/tailwind-dark-lite.css +1 -1
- package/styles/tailwind-dark-lite.scss +1 -1
- package/styles/tailwind-dark.css +1 -1
- package/styles/tailwind-dark.scss +2 -1
- package/styles/tailwind-lite.css +1 -1
- package/styles/tailwind-lite.scss +1 -1
- package/styles/tailwind.css +1 -1
- package/styles/tailwind.scss +2 -1
- package/styles/tailwind3-lite.css +1 -1
- package/styles/tailwind3-lite.scss +1 -1
- package/styles/tailwind3.css +1 -1
- package/styles/tailwind3.scss +2 -1
- package/{syncfusion-ej2-angular-pdfviewer.d.ts → syncfusion-ej2-angular-documenteditor.d.ts} +1 -1
- package/esm2020/src/pdfviewer/pdfviewer-all.module.mjs +0 -65
- package/esm2020/src/pdfviewer/pdfviewer.component.mjs +0 -150
- package/esm2020/src/pdfviewer/pdfviewer.module.mjs +0 -25
- package/esm2020/syncfusion-ej2-angular-pdfviewer.mjs +0 -5
- package/fesm2015/syncfusion-ej2-angular-pdfviewer.mjs +0 -239
- package/fesm2015/syncfusion-ej2-angular-pdfviewer.mjs.map +0 -1
- package/fesm2020/syncfusion-ej2-angular-pdfviewer.mjs +0 -239
- package/fesm2020/syncfusion-ej2-angular-pdfviewer.mjs.map +0 -1
- package/src/pdfviewer/pdfviewer-all.module.d.ts +0 -25
- package/src/pdfviewer/pdfviewer.component.d.ts +0 -108
- package/src/pdfviewer/pdfviewer.module.d.ts +0 -11
- package/styles/pdfviewer/bds.css +0 -1
- package/styles/pdfviewer/bds.scss +0 -1
- package/styles/pdfviewer/bootstrap-dark.css +0 -1
- package/styles/pdfviewer/bootstrap-dark.scss +0 -1
- package/styles/pdfviewer/bootstrap.css +0 -1
- package/styles/pdfviewer/bootstrap.scss +0 -1
- package/styles/pdfviewer/bootstrap4.css +0 -1
- package/styles/pdfviewer/bootstrap4.scss +0 -1
- package/styles/pdfviewer/bootstrap5-dark.css +0 -1
- package/styles/pdfviewer/bootstrap5-dark.scss +0 -1
- package/styles/pdfviewer/bootstrap5.3.css +0 -1
- package/styles/pdfviewer/bootstrap5.3.scss +0 -1
- package/styles/pdfviewer/bootstrap5.css +0 -1
- package/styles/pdfviewer/bootstrap5.scss +0 -1
- package/styles/pdfviewer/fabric-dark.css +0 -1
- package/styles/pdfviewer/fabric-dark.scss +0 -1
- package/styles/pdfviewer/fabric.css +0 -1
- package/styles/pdfviewer/fabric.scss +0 -1
- package/styles/pdfviewer/fluent-dark.css +0 -1
- package/styles/pdfviewer/fluent-dark.scss +0 -1
- package/styles/pdfviewer/fluent.css +0 -1
- package/styles/pdfviewer/fluent.scss +0 -1
- package/styles/pdfviewer/fluent2.css +0 -1
- package/styles/pdfviewer/fluent2.scss +0 -1
- package/styles/pdfviewer/highcontrast-light.css +0 -1
- package/styles/pdfviewer/highcontrast-light.scss +0 -1
- package/styles/pdfviewer/highcontrast.css +0 -1
- package/styles/pdfviewer/highcontrast.scss +0 -1
- package/styles/pdfviewer/material-dark.css +0 -1
- package/styles/pdfviewer/material-dark.scss +0 -1
- package/styles/pdfviewer/material.css +0 -1
- package/styles/pdfviewer/material.scss +0 -1
- package/styles/pdfviewer/material3-dark.css +0 -1
- package/styles/pdfviewer/material3-dark.scss +0 -2
- package/styles/pdfviewer/material3.css +0 -1
- package/styles/pdfviewer/material3.scss +0 -2
- package/styles/pdfviewer/tailwind-dark.css +0 -1
- package/styles/pdfviewer/tailwind-dark.scss +0 -1
- package/styles/pdfviewer/tailwind.css +0 -1
- package/styles/pdfviewer/tailwind.scss +0 -1
- package/styles/pdfviewer/tailwind3.css +0 -1
- package/styles/pdfviewer/tailwind3.scss +0 -1
package/README.md
CHANGED
|
@@ -1,15 +1,19 @@
|
|
|
1
|
-
# Angular
|
|
1
|
+
# Angular DOCX Editor Component
|
|
2
2
|
|
|
3
|
-
The
|
|
3
|
+
The [Angular DOCX Editor](https://www.syncfusion.com/docx-editor-sdk/angular-docx-editor?utm_source=npm&utm_medium=listing&utm_campaign=angular-word-processor-npm) component is a feature rich UI component with document editing capabilities like Microsoft Word. Also known as the document editor, it is used to create, edit, view, and print Word documents. It provides all the common Word processing features including editing text, formatting content, resizing images and tables, finding and replacing text, bookmarks, tables of contents, track changes, commenting, restrict editing, printing, importing and exporting Word documents.
|
|
4
|
+
|
|
5
|
+
An example [DOCX Editor server-side Web API projects for ASP.NET MVC, ASP.NET Core, and Java is available in GitHub](https://github.com/SyncfusionExamples/EJ2-DocumentEditor-WebServices?utm_source=npm&utm_medium=listing&utm_campaign=angular-word-processor-npm) which contains all the mandatory Web APIs for opening Word documents, paste with formatting, restrict editing, spell-checking, and saving documents other than SFDT/DOCX format. Apart from these operations, all the user interactions and editing operations run purely in the client-side provides much faster editing experience to the users.
|
|
6
|
+
|
|
7
|
+
Syncfusion provides a predefined [DOCX Editor server docker image](https://hub.docker.com/r/syncfusion/word-processor-server?utm_source=npm&utm_medium=listing&utm_campaign=angular-word-processor-npm) targeting ASP.NET Core 2.1 framework. You can directly pull this docker image and deploy it in server on the go. You can also create own docker image by customizing the existing [docker project from GitHub](https://github.com/SyncfusionExamples/Word-Processor-Server-Docker?utm_source=npm&utm_medium=listing&utm_campaign=angular-word-processor-npm).
|
|
4
8
|
|
|
5
9
|
<p align="center">
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
10
|
+
<a href="https://help.syncfusion.com/document-processing/word/word-processor/angular/getting-started?utm_source=npm&utm_medium=listing&utm_campaign=angular-word-processor-npm">Getting Started</a> .
|
|
11
|
+
<a href="https://document.syncfusion.com/demos/docx-editor/angular/#/tailwind3/document-editor/default?utm_source=npm&utm_medium=listing&utm_campaign=angular-word-processor-npm#">Online demos</a> .
|
|
12
|
+
<a href="https://www.syncfusion.com/docx-editor-sdk/angular-docx-editor?utm_source=npm&utm_medium=listing&utm_campaign=angular-word-processor-npm">Learn more</a>
|
|
9
13
|
</p>
|
|
10
14
|
|
|
11
15
|
<p align="center">
|
|
12
|
-
|
|
16
|
+
<img src="https://raw.githubusercontent.com/SyncfusionExamples/nuget-img/master/angular/angular-word-processor.png" alt="Angular DOCX Editor Component">
|
|
13
17
|
</p>
|
|
14
18
|
|
|
15
19
|
<p align="center">
|
|
@@ -23,134 +27,125 @@ Trusted by the world's leading companies
|
|
|
23
27
|
|
|
24
28
|
### Create an Angular Application
|
|
25
29
|
|
|
26
|
-
|
|
30
|
+
To create an example **Angular** app use the following commands.
|
|
27
31
|
|
|
28
32
|
```bash
|
|
29
|
-
|
|
33
|
+
git clone https://github.com/angular/quickstart.git quickstart
|
|
34
|
+
cd quickstart
|
|
35
|
+
npm install
|
|
30
36
|
```
|
|
31
37
|
|
|
32
|
-
|
|
38
|
+
### Adding Syncfusion DOCX Editor package
|
|
33
39
|
|
|
34
|
-
|
|
35
|
-
ng new my-app
|
|
36
|
-
cd my-app
|
|
37
|
-
```
|
|
38
|
-
|
|
39
|
-
### Adding Syncfusion® PDF Viewer package
|
|
40
|
-
|
|
41
|
-
All Syncfusion® Angular packages are available in [npmjs.com](https://www.npmjs.com/~syncfusionorg). To install the Angular PDF Viewer package, use the following command.
|
|
40
|
+
All Syncfusion Angular packages are published in [npmjs.com](https://www.npmjs.com/~syncfusionorg) registry. To install Angular Document editor package, use the following command.
|
|
42
41
|
|
|
43
42
|
```bash
|
|
44
|
-
|
|
43
|
+
npm install @syncfusion/ej2-angular-documenteditor --save
|
|
45
44
|
```
|
|
46
45
|
|
|
47
|
-
|
|
46
|
+
### Adding CSS references for DOCX Editor
|
|
48
47
|
|
|
49
|
-
|
|
50
|
-
* Imports the `PdfViewerModule` in your application module `app.module.ts`.
|
|
51
|
-
* Registers the Syncfusion® UI default theme (material) in the `angular.json` file.
|
|
48
|
+
Add CSS references needed for Document editor in the **src/styles/styles.css** file.
|
|
52
49
|
|
|
53
|
-
|
|
50
|
+
```html
|
|
51
|
+
@import '../../node_modules/@syncfusion/ej2-base/styles/material.css';
|
|
52
|
+
@import '../../node_modules/@syncfusion/ej2-buttons/styles/material.css';
|
|
53
|
+
@import '../../node_modules/@syncfusion/ej2-inputs/styles/material.css';
|
|
54
|
+
@import '../../node_modules/@syncfusion/ej2-popups/styles/material.css';
|
|
55
|
+
@import '../../node_modules/@syncfusion/ej2-lists/styles/material.css';
|
|
56
|
+
@import '../../node_modules/@syncfusion/ej2-navigations/styles/material.css';
|
|
57
|
+
@import '../../node_modules/@syncfusion/ej2-splitbuttons/styles/material.css';
|
|
58
|
+
@import '../../node_modules/@syncfusion/ej2-dropdowns/styles/material.css';
|
|
59
|
+
@import '../../node_modules/@syncfusion/ej2-angular-documenteditor/styles/material.css';
|
|
60
|
+
```
|
|
54
61
|
|
|
55
|
-
###
|
|
62
|
+
### Registering DocumentEditorContainer module
|
|
56
63
|
|
|
57
|
-
|
|
64
|
+
Import DocumentEditorContainer module into Angular application(app.module.ts) from the package @syncfusion/ej2-angular-documenteditor [src/app/app.module.ts].
|
|
58
65
|
|
|
59
|
-
```
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
@
|
|
69
|
-
|
|
66
|
+
```typescript
|
|
67
|
+
import { NgModule } from '@angular/core';
|
|
68
|
+
import { BrowserModule } from '@angular/platform-browser';
|
|
69
|
+
import { DocumentEditorContainerModule } from '@syncfusion/ej2-angular-documenteditor';
|
|
70
|
+
import { AppComponent } from './default.component';
|
|
71
|
+
|
|
72
|
+
/**
|
|
73
|
+
* Module
|
|
74
|
+
*/
|
|
75
|
+
@NgModule({
|
|
76
|
+
imports: [
|
|
77
|
+
BrowserModule,
|
|
78
|
+
DocumentEditorContainerModule
|
|
79
|
+
],
|
|
80
|
+
declarations: [AppComponent],
|
|
81
|
+
bootstrap: [AppComponent]
|
|
82
|
+
})
|
|
83
|
+
export class AppModule { }
|
|
70
84
|
```
|
|
71
85
|
|
|
72
|
-
|
|
86
|
+
## Add DOCX Editor component
|
|
73
87
|
|
|
74
|
-
|
|
88
|
+
Modify the template in [src/app/app.component.ts] file to render the Document Editor component.
|
|
89
|
+
Add the Angular Document Editor by using <ejs-documenteditorcontainer> selector in template section of the **app.component.ts** file.
|
|
75
90
|
|
|
76
91
|
```typescript
|
|
77
|
-
import { Component,
|
|
78
|
-
import {
|
|
79
|
-
PdfViewerComponent,
|
|
80
|
-
LinkAnnotationService,
|
|
81
|
-
BookmarkViewService,
|
|
82
|
-
MagnificationService,
|
|
83
|
-
ThumbnailViewService,
|
|
84
|
-
ToolbarService,
|
|
85
|
-
NavigationService,
|
|
86
|
-
TextSearchService,
|
|
87
|
-
TextSelectionService,
|
|
88
|
-
PrintService,
|
|
89
|
-
AnnotationService,
|
|
90
|
-
FormFieldsService,
|
|
91
|
-
FormDesignerService
|
|
92
|
-
} from '@syncfusion/ej2-angular-pdfviewer';
|
|
92
|
+
import { Component, OnInit } from '@angular/core';
|
|
93
|
+
import { ToolbarService } from '@syncfusion/ej2-angular-documenteditor';
|
|
93
94
|
|
|
94
95
|
@Component({
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
[documentPath]='document'
|
|
100
|
-
style="height:640px;display:block">
|
|
101
|
-
</ejs-pdfviewer>
|
|
102
|
-
</div>`,
|
|
103
|
-
encapsulation: ViewEncapsulation.None,
|
|
104
|
-
providers: [
|
|
105
|
-
LinkAnnotationService,
|
|
106
|
-
BookmarkViewService,
|
|
107
|
-
MagnificationService,
|
|
108
|
-
ThumbnailViewService,
|
|
109
|
-
ToolbarService,
|
|
110
|
-
NavigationService,
|
|
111
|
-
TextSearchService,
|
|
112
|
-
TextSelectionService,
|
|
113
|
-
PrintService,
|
|
114
|
-
AnnotationService,
|
|
115
|
-
FormFieldsService,
|
|
116
|
-
FormDesignerService
|
|
117
|
-
],
|
|
96
|
+
selector: 'app-container',
|
|
97
|
+
// specifies the template string for the DocumentEditorContainer component
|
|
98
|
+
template: `<ejs-documenteditorcontainer serviceUrl="https://document.syncfusion.com/web-services/docx-editor/api/documenteditor/" [enableToolbar]=true> </ejs-documenteditorcontainer>`,
|
|
99
|
+
providers: [ToolbarService]
|
|
118
100
|
})
|
|
119
101
|
export class AppComponent implements OnInit {
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
ngOnInit(): void {
|
|
124
|
-
}
|
|
102
|
+
|
|
103
|
+
ngOnInit(): void {
|
|
104
|
+
}
|
|
125
105
|
}
|
|
126
106
|
```
|
|
127
107
|
|
|
108
|
+
> The web API ('https://document.syncfusion.com/web-services/docx-editor/api/documenteditor/') is created specifically for our online demos. You should host web API on your side, refer the [web service documentation](https://help.syncfusion.com/document-processing/word/word-processor/angular/web-services/core?utm_source=npm&utm_medium=listing&utm_campaign=angular-word-processor-npm) for more information.
|
|
109
|
+
|
|
128
110
|
## Supported frameworks
|
|
129
111
|
|
|
130
|
-
|
|
112
|
+
The Angular DOCX Editor (Document Editor) component is also offered in the following list of frameworks.
|
|
131
113
|
|
|
132
|
-
| [<img src="https://ej2.syncfusion.com/github/images/js.svg" height="50" />](https://www.syncfusion.com/
|
|
114
|
+
| [<img src="https://ej2.syncfusion.com/github/images/js.svg" height="50" />](https://www.syncfusion.com/docx-editor-sdk/javascript-docx-editor?utm_medium=listing&utm_source=github)<br/> [JavaScript](https://www.syncfusion.com/docx-editor-sdk/javascript-docx-editor?utm_medium=listing&utm_source=github) | [<img src="https://ej2.syncfusion.com/github/images/react.svg" height="50" />](https://www.syncfusion.com/docx-editor-sdk/react-docx-editor?utm_medium=listing&utm_source=github)<br/> [React](https://www.syncfusion.com/docx-editor-sdk/react-docx-editor?utm_medium=listing&utm_source=github) | [<img src="https://ej2.syncfusion.com/github/images/vue.svg" height="50" />](https://www.syncfusion.com/docx-editor-sdk/vue-docx-editor?utm_medium=listing&utm_source=github)<br/> [Vue](https://www.syncfusion.com/docx-editor-sdk/vue-docx-editor?utm_medium=listing&utm_source=github) | [<img src="https://ej2.syncfusion.com/github/images/netcore.svg" height="50" />](https://www.syncfusion.com/docx-editor-sdk/asp-net-core-docx-editor?utm_medium=listing&utm_source=github)<br/> [ASP.NET Core](https://www.syncfusion.com/docx-editor-sdk/asp-net-core-docx-editor?utm_medium=listing&utm_source=github) | [<img src="https://ej2.syncfusion.com/github/images/netmvc.svg" height="50" />](https://www.syncfusion.com/docx-editor-sdk/asp-net-mvc-docx-editor?utm_medium=listing&utm_source=github)<br/> [ASP.NET MVC](https://www.syncfusion.com/docx-editor-sdk/asp-net-mvc-docx-editor?utm_medium=listing&utm_source=github) |
|
|
133
115
|
| :-----: | :-----: | :-----: | :-----: | :-----: |
|
|
134
116
|
|
|
117
|
+
## Showcase samples
|
|
118
|
+
|
|
119
|
+
* Expense Tracker - [Source](https://github.com/syncfusion/ej2-showcase-angular-expensetracker?utm_source=npm&utm_medium=listing&utm_campaign=angular-word-processor-npm), [Live Demo](https://ej2.syncfusion.com/showcase/angular/expensetracker/#/dashboard?utm_source=npm&utm_medium=listing&utm_campaign=angular-word-processor-npm)
|
|
120
|
+
* Loan Calculator - [Source](https://github.com/syncfusion/ej2-sample-ng-loancalculator?utm_source=npm&utm_medium=listing&utm_campaign=angular-word-processor-npm), [Live Demo](https://ej2.syncfusion.com/showcase/angular/loancalculator/?utm_source=npm&utm_medium=listing&utm_campaign=angular-word-processor-npm)
|
|
121
|
+
* Fitness Tracker - [Source](https://github.com/SyncfusionExamples/showcase-angular-health-tracker-dashboard-demo), [Live Demo](https://ej2.syncfusion.com/showcase/angular/fitness-tracker-app/)
|
|
122
|
+
|
|
135
123
|
## Key features
|
|
136
124
|
|
|
137
|
-
* [
|
|
138
|
-
*
|
|
139
|
-
*
|
|
140
|
-
*
|
|
141
|
-
*
|
|
142
|
-
*
|
|
143
|
-
* [
|
|
144
|
-
* [
|
|
145
|
-
* [
|
|
146
|
-
* [
|
|
147
|
-
*
|
|
125
|
+
* [Document Authoring](https://document.syncfusion.com/demos/docx-editor/angular/?utm_source=npm&utm_medium=listing&utm_campaign=angular-word-processor-npm#/tailwind3/document-editor/default) - Allows to create a document with supported elements and formatting options.
|
|
126
|
+
* Supported elements - Supports document elements like text, inline image, table, hyperlink, fields, bookmark, table of contents, footnote and endnote, section, header, and footer.
|
|
127
|
+
* Styles - Supports character and paragraph styles.
|
|
128
|
+
* Editing - Supports all the common editing and formatting operations.
|
|
129
|
+
* History - Supports options to perform undo redo operations.
|
|
130
|
+
* Find and replace - Provides support to find and replace text within the document.
|
|
131
|
+
* [Track changes](https://document.syncfusion.com/demos/docx-editor/angular/?utm_source=npm&utm_medium=listing&utm_campaign=angular-word-processor-npm#/tailwind3/document-editor/track-changes) - Suppports tracking the content insertion and deletion.
|
|
132
|
+
* [Commenting](https://document.syncfusion.com/demos/docx-editor/angular/?utm_source=npm&utm_medium=listing&utm_campaign=angular-word-processor-npm#/tailwind3/document-editor/comments) - Supports adding a comment, replying to an existing comment or mark as resolved and more.
|
|
133
|
+
* [Form filling](https://document.syncfusion.com/demos/docx-editor/angular/?utm_source=npm&utm_medium=listing&utm_campaign=angular-word-processor-npm#/tailwind3/document-editor/form-fields) - Supports designing fillable forms in Word document and fill the forms.
|
|
134
|
+
* [Restrict editng](https://document.syncfusion.com/demos/docx-editor/angular/?utm_source=npm&utm_medium=listing&utm_campaign=angular-word-processor-npm#/tailwind3/document-editor/document-protection) - Supports restricting edit permission for a region in Word document and control what type of changes can be made to the document .
|
|
135
|
+
* Export - Provides the options to export the documents in the client-side as `Syncfusion Document Text (*.sfdt)` and `Word document (*.docx)`. With server-side library, exporting as other formats can be achieved.
|
|
136
|
+
* Import - Provides the options to import the native `Syncfusion Document Text (*.sfdt)` format documents in the client-side. With server-side library, importing other formats can be achieved.
|
|
137
|
+
* Print - Provides the options to print the documents.
|
|
138
|
+
* Clipboard - Provides support to cut, copy, and paste rich text contents within the component. Also allows pasting simple text from other applications. Paste rich text from other applications using server-side library.
|
|
139
|
+
* User interface - Provides intuitive user friendly interface to perform various operations.
|
|
140
|
+
* Context menu - Provides context menu.
|
|
141
|
+
* Dialog - Provides dialog for inserting elements such as hyperlink, table and formatting such as font, paragraph, list, style, table.
|
|
142
|
+
* Options pane - Provides options pane to perform find and replace operations.
|
|
148
143
|
|
|
149
144
|
## Resources
|
|
150
145
|
|
|
151
146
|
* [Theme Studio](https://ej2.syncfusion.com/themestudio/)
|
|
152
|
-
* [What's New](https://www.syncfusion.com/products/whatsnew/
|
|
153
|
-
* [Road Map](https://www.syncfusion.com/products/roadmap/
|
|
147
|
+
* [What's New](https://www.syncfusion.com/products/whatsnew/docx-editor-sdk?utm_medium=listing&utm_source=github)
|
|
148
|
+
* [Road Map](https://www.syncfusion.com/products/roadmap/docx-editor-sdk)
|
|
154
149
|
* [E-Books](https://www.syncfusion.com/succinctly-free-ebooks?searchkey=angular&type=all)
|
|
155
150
|
|
|
156
151
|
## Support
|
|
@@ -158,14 +153,14 @@ PDF Viewer component is also offered in the following list of frameworks.
|
|
|
158
153
|
Product support is available through the following mediums.
|
|
159
154
|
|
|
160
155
|
* [Support ticket](https://support.syncfusion.com/support/tickets/create) - Guaranteed Response in 24 hours | Unlimited tickets | Holiday support
|
|
161
|
-
* [Community forum](https://www.syncfusion.com/forums/
|
|
156
|
+
* [Community forum](https://www.syncfusion.com/forums/angular-js2?utm_source=npm&utm_medium=listing&utm_campaign=angular-word-processor-npm)
|
|
162
157
|
* [GitHub issues](https://github.com/syncfusion/ej2-angular-ui-components/issues/new)
|
|
163
|
-
* [Request feature or report bug](https://www.syncfusion.com/feedback/
|
|
158
|
+
* [Request feature or report bug](https://www.syncfusion.com/feedback/angular?utm_source=npm&utm_medium=listing&utm_campaign=angular-word-processor-npm)
|
|
164
159
|
* Live chat
|
|
165
160
|
|
|
166
161
|
## Changelog
|
|
167
162
|
|
|
168
|
-
Check the changelog [here](https://github.com/syncfusion/ej2-angular-ui-components/blob/master/components/
|
|
163
|
+
Check the changelog [here](https://github.com/syncfusion/ej2-angular-ui-components/blob/master/components/documenteditor/CHANGELOG.md?utm_source=npm&utm_medium=listing&utm_campaign=angular-word-processor-npm). Get minor improvements and bug fixes every week to stay up to date with frequent updates.
|
|
169
164
|
|
|
170
165
|
## License and copyright
|
|
171
166
|
|
|
@@ -173,4 +168,6 @@ Check the changelog [here](https://github.com/syncfusion/ej2-angular-ui-componen
|
|
|
173
168
|
|
|
174
169
|
> A free community [license](https://www.syncfusion.com/products/communitylicense) is also available for companies and individuals whose organizations have less than $1 million USD in annual gross revenue and five or fewer developers.
|
|
175
170
|
|
|
176
|
-
|
|
171
|
+
See [LICENSE FILE](https://github.com/syncfusion/ej2-angular-ui-components/blob/master/license?utm_source=npm&utm_medium=listing&utm_campaign=angular-word-processor-npm) for more info.
|
|
172
|
+
|
|
173
|
+
© Copyright 2025 Syncfusion<sup>®</sup> Inc. All Rights Reserved. The Syncfusion<sup>®</sup> Essential Studio<sup>®</sup> license and copyright applies to this distribution.
|
|
@@ -0,0 +1,134 @@
|
|
|
1
|
+
import { NgModule } from '@angular/core';
|
|
2
|
+
import { CommonModule } from '@angular/common';
|
|
3
|
+
import { DocumentEditorModule } from './documenteditor.module';
|
|
4
|
+
import { Print, SfdtExport, WordExport, TextExport, Selection, Search, Editor, EditorHistory, OptionsPane, ContextMenu, ImageResizer, HyperlinkDialog, TableDialog, BookmarkDialog, TableOfContentsDialog, PageSetupDialog, ParagraphDialog, ListDialog, StyleDialog, StylesDialog, BulletsAndNumberingDialog, FontDialog, TablePropertiesDialog, BordersAndShadingDialog, TableOptionsDialog, CellOptionsDialog, SpellChecker, SpellCheckDialog, CollaborativeEditing, ColumnsDialog, CollaborativeEditingHandler, Optimized, TabDialog, TextFormFieldDialog, DropDownFormFieldDialog, CheckBoxFormFieldDialog } from '@syncfusion/ej2-documenteditor';
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
export const PrintService = { provide: 'DocumentEditorPrint', useValue: Print };
|
|
7
|
+
export const SfdtExportService = { provide: 'DocumentEditorSfdtExport', useValue: SfdtExport };
|
|
8
|
+
export const WordExportService = { provide: 'DocumentEditorWordExport', useValue: WordExport };
|
|
9
|
+
export const TextExportService = { provide: 'DocumentEditorTextExport', useValue: TextExport };
|
|
10
|
+
export const SelectionService = { provide: 'DocumentEditorSelection', useValue: Selection };
|
|
11
|
+
export const SearchService = { provide: 'DocumentEditorSearch', useValue: Search };
|
|
12
|
+
export const EditorService = { provide: 'DocumentEditorEditor', useValue: Editor };
|
|
13
|
+
export const EditorHistoryService = { provide: 'DocumentEditorEditorHistory', useValue: EditorHistory };
|
|
14
|
+
export const OptionsPaneService = { provide: 'DocumentEditorOptionsPane', useValue: OptionsPane };
|
|
15
|
+
export const ContextMenuService = { provide: 'DocumentEditorContextMenu', useValue: ContextMenu };
|
|
16
|
+
export const ImageResizerService = { provide: 'DocumentEditorImageResizer', useValue: ImageResizer };
|
|
17
|
+
export const HyperlinkDialogService = { provide: 'DocumentEditorHyperlinkDialog', useValue: HyperlinkDialog };
|
|
18
|
+
export const TableDialogService = { provide: 'DocumentEditorTableDialog', useValue: TableDialog };
|
|
19
|
+
export const BookmarkDialogService = { provide: 'DocumentEditorBookmarkDialog', useValue: BookmarkDialog };
|
|
20
|
+
export const TableOfContentsDialogService = { provide: 'DocumentEditorTableOfContentsDialog', useValue: TableOfContentsDialog };
|
|
21
|
+
export const PageSetupDialogService = { provide: 'DocumentEditorPageSetupDialog', useValue: PageSetupDialog };
|
|
22
|
+
export const ParagraphDialogService = { provide: 'DocumentEditorParagraphDialog', useValue: ParagraphDialog };
|
|
23
|
+
export const ListDialogService = { provide: 'DocumentEditorListDialog', useValue: ListDialog };
|
|
24
|
+
export const StyleDialogService = { provide: 'DocumentEditorStyleDialog', useValue: StyleDialog };
|
|
25
|
+
export const StylesDialogService = { provide: 'DocumentEditorStylesDialog', useValue: StylesDialog };
|
|
26
|
+
export const BulletsAndNumberingDialogService = { provide: 'DocumentEditorBulletsAndNumberingDialog', useValue: BulletsAndNumberingDialog };
|
|
27
|
+
export const FontDialogService = { provide: 'DocumentEditorFontDialog', useValue: FontDialog };
|
|
28
|
+
export const TablePropertiesDialogService = { provide: 'DocumentEditorTablePropertiesDialog', useValue: TablePropertiesDialog };
|
|
29
|
+
export const BordersAndShadingDialogService = { provide: 'DocumentEditorBordersAndShadingDialog', useValue: BordersAndShadingDialog };
|
|
30
|
+
export const TableOptionsDialogService = { provide: 'DocumentEditorTableOptionsDialog', useValue: TableOptionsDialog };
|
|
31
|
+
export const CellOptionsDialogService = { provide: 'DocumentEditorCellOptionsDialog', useValue: CellOptionsDialog };
|
|
32
|
+
export const SpellCheckerService = { provide: 'DocumentEditorSpellChecker', useValue: SpellChecker };
|
|
33
|
+
export const SpellCheckDialogService = { provide: 'DocumentEditorSpellCheckDialog', useValue: SpellCheckDialog };
|
|
34
|
+
export const CollaborativeEditingService = { provide: 'DocumentEditorCollaborativeEditing', useValue: CollaborativeEditing };
|
|
35
|
+
export const ColumnsDialogService = { provide: 'DocumentEditorColumnsDialog', useValue: ColumnsDialog };
|
|
36
|
+
export const CollaborativeEditingHandlerService = { provide: 'DocumentEditorCollaborativeEditingHandler', useValue: CollaborativeEditingHandler };
|
|
37
|
+
export const OptimizedService = { provide: 'DocumentEditorOptimized', useValue: Optimized };
|
|
38
|
+
export const TabDialogService = { provide: 'DocumentEditorTabDialog', useValue: TabDialog };
|
|
39
|
+
export const TextFormFieldDialogService = { provide: 'DocumentEditorTextFormFieldDialog', useValue: TextFormFieldDialog };
|
|
40
|
+
export const DropDownFormFieldDialogService = { provide: 'DocumentEditorDropDownFormFieldDialog', useValue: DropDownFormFieldDialog };
|
|
41
|
+
export const CheckBoxFormFieldDialogService = { provide: 'DocumentEditorCheckBoxFormFieldDialog', useValue: CheckBoxFormFieldDialog };
|
|
42
|
+
/**
|
|
43
|
+
* NgModule definition for the DocumentEditor component with providers.
|
|
44
|
+
*/
|
|
45
|
+
export class DocumentEditorAllModule {
|
|
46
|
+
}
|
|
47
|
+
DocumentEditorAllModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: DocumentEditorAllModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
48
|
+
DocumentEditorAllModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: DocumentEditorAllModule, imports: [CommonModule, DocumentEditorModule], exports: [DocumentEditorModule] });
|
|
49
|
+
DocumentEditorAllModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: DocumentEditorAllModule, providers: [
|
|
50
|
+
PrintService,
|
|
51
|
+
SfdtExportService,
|
|
52
|
+
WordExportService,
|
|
53
|
+
TextExportService,
|
|
54
|
+
SelectionService,
|
|
55
|
+
SearchService,
|
|
56
|
+
EditorService,
|
|
57
|
+
EditorHistoryService,
|
|
58
|
+
OptionsPaneService,
|
|
59
|
+
ContextMenuService,
|
|
60
|
+
ImageResizerService,
|
|
61
|
+
HyperlinkDialogService,
|
|
62
|
+
TableDialogService,
|
|
63
|
+
BookmarkDialogService,
|
|
64
|
+
TableOfContentsDialogService,
|
|
65
|
+
PageSetupDialogService,
|
|
66
|
+
ParagraphDialogService,
|
|
67
|
+
ListDialogService,
|
|
68
|
+
StyleDialogService,
|
|
69
|
+
StylesDialogService,
|
|
70
|
+
BulletsAndNumberingDialogService,
|
|
71
|
+
FontDialogService,
|
|
72
|
+
TablePropertiesDialogService,
|
|
73
|
+
BordersAndShadingDialogService,
|
|
74
|
+
TableOptionsDialogService,
|
|
75
|
+
CellOptionsDialogService,
|
|
76
|
+
SpellCheckerService,
|
|
77
|
+
SpellCheckDialogService,
|
|
78
|
+
CollaborativeEditingService,
|
|
79
|
+
ColumnsDialogService,
|
|
80
|
+
CollaborativeEditingHandlerService,
|
|
81
|
+
OptimizedService,
|
|
82
|
+
TabDialogService,
|
|
83
|
+
TextFormFieldDialogService,
|
|
84
|
+
DropDownFormFieldDialogService,
|
|
85
|
+
CheckBoxFormFieldDialogService
|
|
86
|
+
], imports: [[CommonModule, DocumentEditorModule], DocumentEditorModule] });
|
|
87
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: DocumentEditorAllModule, decorators: [{
|
|
88
|
+
type: NgModule,
|
|
89
|
+
args: [{
|
|
90
|
+
imports: [CommonModule, DocumentEditorModule],
|
|
91
|
+
exports: [
|
|
92
|
+
DocumentEditorModule
|
|
93
|
+
],
|
|
94
|
+
providers: [
|
|
95
|
+
PrintService,
|
|
96
|
+
SfdtExportService,
|
|
97
|
+
WordExportService,
|
|
98
|
+
TextExportService,
|
|
99
|
+
SelectionService,
|
|
100
|
+
SearchService,
|
|
101
|
+
EditorService,
|
|
102
|
+
EditorHistoryService,
|
|
103
|
+
OptionsPaneService,
|
|
104
|
+
ContextMenuService,
|
|
105
|
+
ImageResizerService,
|
|
106
|
+
HyperlinkDialogService,
|
|
107
|
+
TableDialogService,
|
|
108
|
+
BookmarkDialogService,
|
|
109
|
+
TableOfContentsDialogService,
|
|
110
|
+
PageSetupDialogService,
|
|
111
|
+
ParagraphDialogService,
|
|
112
|
+
ListDialogService,
|
|
113
|
+
StyleDialogService,
|
|
114
|
+
StylesDialogService,
|
|
115
|
+
BulletsAndNumberingDialogService,
|
|
116
|
+
FontDialogService,
|
|
117
|
+
TablePropertiesDialogService,
|
|
118
|
+
BordersAndShadingDialogService,
|
|
119
|
+
TableOptionsDialogService,
|
|
120
|
+
CellOptionsDialogService,
|
|
121
|
+
SpellCheckerService,
|
|
122
|
+
SpellCheckDialogService,
|
|
123
|
+
CollaborativeEditingService,
|
|
124
|
+
ColumnsDialogService,
|
|
125
|
+
CollaborativeEditingHandlerService,
|
|
126
|
+
OptimizedService,
|
|
127
|
+
TabDialogService,
|
|
128
|
+
TextFormFieldDialogService,
|
|
129
|
+
DropDownFormFieldDialogService,
|
|
130
|
+
CheckBoxFormFieldDialogService
|
|
131
|
+
]
|
|
132
|
+
}]
|
|
133
|
+
}] });
|
|
134
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9jdW1lbnRlZGl0b3ItYWxsLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9kb2N1bWVudC1lZGl0b3IvZG9jdW1lbnRlZGl0b3ItYWxsLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFpQixNQUFNLGVBQWUsQ0FBQztBQUN4RCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFL0MsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDL0QsT0FBTyxFQUFDLEtBQUssRUFBRSxVQUFVLEVBQUUsVUFBVSxFQUFFLFVBQVUsRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxhQUFhLEVBQUUsV0FBVyxFQUFFLFdBQVcsRUFBRSxZQUFZLEVBQUUsZUFBZSxFQUFFLFdBQVcsRUFBRSxjQUFjLEVBQUUscUJBQXFCLEVBQUUsZUFBZSxFQUFFLGVBQWUsRUFBRSxVQUFVLEVBQUUsV0FBVyxFQUFFLFlBQVksRUFBRSx5QkFBeUIsRUFBRSxVQUFVLEVBQUUscUJBQXFCLEVBQUUsdUJBQXVCLEVBQUUsa0JBQWtCLEVBQUUsaUJBQWlCLEVBQUUsWUFBWSxFQUFFLGdCQUFnQixFQUFFLG9CQUFvQixFQUFFLGFBQWEsRUFBRSwyQkFBMkIsRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLG1CQUFtQixFQUFFLHVCQUF1QixFQUFFLHVCQUF1QixFQUFDLE1BQU0sZ0NBQWdDLENBQUE7O0FBR3JuQixNQUFNLENBQUMsTUFBTSxZQUFZLEdBQWtCLEVBQUUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLFFBQVEsRUFBRSxLQUFLLEVBQUMsQ0FBQztBQUM5RixNQUFNLENBQUMsTUFBTSxpQkFBaUIsR0FBa0IsRUFBRSxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsUUFBUSxFQUFFLFVBQVUsRUFBQyxDQUFDO0FBQzdHLE1BQU0sQ0FBQyxN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QU8sRUFBRSxDQUFDLFlBQVksRUFBRSxvQkFBb0IsQ0FBQztvQkFDN0MsT0FBTyxFQUFFO3dCQUNMLG9CQUFvQjtxQkFDdkI7b0JBQ0QsU0FBUyxFQUFDO3dCQUNOLFlBQVk7d0JBQ1osaUJBQWlCO3dCQUNqQixpQkFBaUI7d0JBQ2pCLGlCQUFpQjt3QkFDakIsZ0JBQWdCO3dCQUNoQixhQUFhO3dCQUNiLGFBQWE7d0JBQ2Isb0JBQW9CO3dCQUNwQixrQkFBa0I7d0JBQ2xCLGtCQUFrQjt3QkFDbEIsbUJBQW1CO3dCQUNuQixzQkFBc0I7d0JBQ3RCLGtCQUFrQjt3QkFDbEIscUJBQXFCO3dCQUNyQiw0QkFBNEI7d0JBQzVCLHNCQUFzQjt3QkFDdEIsc0JBQXNCO3dCQUN0QixpQkFBaUI7d0JBQ2pCLGtCQUFrQjt3QkFDbEIsbUJBQW1CO3dCQUNuQixnQ0FBZ0M7d0JBQ2hDLGlCQUFpQjt3QkFDakIsNEJBQTRCO3dCQUM1Qiw4QkFBOEI7d0JBQzlCLHlCQUF5Qjt3QkFDekIsd0JBQXdCO3dCQUN4QixtQkFBbUI7d0JBQ25CLHVCQUF1Qjt3QkFDdkIsMkJBQTJCO3dCQUMzQixvQkFBb0I7d0JBQ3BCLGtDQUFrQzt3QkFDbEMsZ0JBQWdCO3dCQUNoQixnQkFBZ0I7d0JBQ2hCLDBCQUEwQjt3QkFDMUIsOEJBQThCO3dCQUM5Qiw4QkFBOEI7cUJBQ2pDO2lCQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUsIFZhbHVlUHJvdmlkZXIgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBEb2N1bWVudEVkaXRvckNvbXBvbmVudCB9IGZyb20gJy4vZG9jdW1lbnRlZGl0b3IuY29tcG9uZW50JztcbmltcG9ydCB7IERvY3VtZW50RWRpdG9yTW9kdWxlIH0gZnJvbSAnLi9kb2N1bWVudGVkaXRvci5tb2R1bGUnO1xuaW1wb3J0IHtQcmludCwgU2ZkdEV4cG9ydCwgV29yZEV4cG9ydCwgVGV4dEV4cG9ydCwgU2VsZWN0aW9uLCBTZWFyY2gsIEVkaXRvciwgRWRpdG9ySGlzdG9yeSwgT3B0aW9uc1BhbmUsIENvbnRleHRNZW51LCBJbWFnZVJlc2l6ZXIsIEh5cGVybGlua0RpYWxvZywgVGFibGVEaWFsb2csIEJvb2ttYXJrRGlhbG9nLCBUYWJsZU9mQ29udGVudHNEaWFsb2csIFBhZ2VTZXR1cERpYWxvZywgUGFyYWdyYXBoRGlhbG9nLCBMaXN0RGlhbG9nLCBTdHlsZURpYWxvZywgU3R5bGVzRGlhbG9nLCBCdWxsZXRzQW5kTnVtYmVyaW5nRGlhbG9nLCBGb250RGlhbG9nLCBUYWJsZVByb3BlcnRpZXNEaWFsb2csIEJvcmRlcnNBbmRTaGFkaW5nRGlhbG9nLCBUYWJsZU9wdGlvbnNEaWFsb2csIENlbGxPcHRpb25zRGlhbG9nLCBTcGVsbENoZWNrZXIsIFNwZWxsQ2hlY2tEaWFsb2csIENvbGxhYm9yYXRpdmVFZGl0aW5nLCBDb2x1bW5zRGlhbG9nLCBDb2xsYWJvcmF0aXZlRWRpdGluZ0hhbmRsZXIsIE9wdGltaXplZCwgVGFiRGlhbG9nLCBUZXh0Rm9ybUZpZWxkRGlhbG9nLCBEcm9wRG93bkZvcm1GaWVsZERpYWxvZywgQ2hlY2tCb3hGb3JtRmllbGREaWFsb2d9IGZyb20gJ0BzeW5jZnVzaW9uL2VqMi1kb2N1bWVudGVkaXRvcidcblxuXG5leHBvcnQgY29uc3QgUHJpbnRTZXJ2aWNlOiBWYWx1ZVByb3ZpZGVyID0geyBwcm92aWRlOiAnRG9jdW1lbnRFZGl0b3JQcmludCcsIHVzZVZhbHVlOiBQcmludH07XG5leHBvcnQgY29uc3QgU2ZkdEV4cG9ydFNlcnZpY2U6IFZhbHVlUHJvdmlkZXIgPSB7IHByb3ZpZGU6ICdEb2N1bWVudEVkaXRvclNmZHRFeHBvcnQnLCB1c2VWYWx1ZTogU2ZkdEV4cG9ydH07XG5leHBvcnQgY29uc3QgV29yZEV4cG9ydFNlcnZpY2U6IFZhbHVlUHJvdmlkZXIgPSB7IHByb3ZpZGU6ICdEb2N1bWVudEVkaXRvcldvcmRFeHBvcnQnLCB1c2VWYWx1ZTogV29yZEV4cG9ydH07XG5leHBvcnQgY29uc3QgVGV4dEV4cG9ydFNlcnZpY2U6IFZhbHVlUHJvdmlkZXIgPSB7IHByb3ZpZGU6ICdEb2N1bWVudEVkaXRvclRleHRFeHBvcnQnLCB1c2VWYWx1ZTogVGV4dEV4cG9ydH07XG5leHBvcnQgY29uc3QgU2VsZWN0aW9uU2VydmljZTogVmFsdWVQcm92aWRlciA9IHsgcHJvdmlkZTogJ0RvY3VtZW50RWRpdG9yU2VsZWN0aW9uJywgdXNlVmFsdWU6IFNlbGVjdGlvbn07XG5leHBvcnQgY29uc3QgU2VhcmNoU2VydmljZTogVmFsdWVQcm92aWRlciA9IHsgcHJvdmlkZTogJ0RvY3VtZW50RWRpdG9yU2VhcmNoJywgdXNlVmFsdWU6IFNlYXJjaH07XG5leHBvcnQgY29uc3QgRWRpdG9yU2VydmljZTogVmFsdWVQcm92aWRlciA9IHsgcHJvdmlkZTogJ0RvY3VtZW50RWRpdG9yRWRpdG9yJywgdXNlVmFsdWU6IEVkaXRvcn07XG5leHBvcnQgY29uc3QgRWRpdG9ySGlzdG9yeVNlcnZpY2U6IFZhbHVlUHJvdmlkZXIgPSB7IHByb3ZpZGU6ICdEb2N1bWVudEVkaXRvckVkaXRvckhpc3RvcnknLCB1c2VWYWx1ZTogRWRpdG9ySGlzdG9yeX07XG5leHBvcnQgY29uc3QgT3B0aW9uc1BhbmVTZXJ2aWNlOiBWYWx1ZVByb3ZpZGVyID0geyBwcm92aWRlOiAnRG9jdW1lbnRFZGl0b3JPcHRpb25zUGFuZScsIHVzZVZhbHVlOiBPcHRpb25zUGFuZX07XG5leHBvcnQgY29uc3QgQ29udGV4dE1lbnVTZXJ2aWNlOiBWYWx1ZVByb3ZpZGVyID0geyBwcm92aWRlOiAnRG9jdW1lbnRFZGl0b3JDb250ZXh0TWVudScsIHVzZVZhbHVlOiBDb250ZXh0TWVudX07XG5leHBvcnQgY29uc3QgSW1hZ2VSZXNpemVyU2VydmljZTogVmFsdWVQcm92aWRlciA9IHsgcHJvdmlkZTogJ0RvY3VtZW50RWRpdG9ySW1hZ2VSZXNpemVyJywgdXNlVmFsdWU6IEltYWdlUmVzaXplcn07XG5leHBvcnQgY29uc3QgSHlwZXJsaW5rRGlhbG9nU2VydmljZTogVmFsdWVQcm92aWRlciA9IHsgcHJvdmlkZTogJ0RvY3VtZW50RWRpdG9ySHlwZXJsaW5rRGlhbG9nJywgdXNlVmFsdWU6IEh5cGVybGlua0RpYWxvZ307XG5leHBvcnQgY29uc3QgVGFibGVEaWFsb2dTZXJ2aWNlOiBWYWx1ZVByb3ZpZGVyID0geyBwcm92aWRlOiAnRG9jdW1lbnRFZGl0b3JUYWJsZURpYWxvZycsIHVzZVZhbHVlOiBUYWJsZURpYWxvZ307XG5leHBvcnQgY29uc3QgQm9va21hcmtEaWFsb2dTZXJ2aWNlOiBWYWx1ZVByb3ZpZGVyID0geyBwcm92aWRlOiAnRG9jdW1lbnRFZGl0b3JCb29rbWFya0RpYWxvZycsIHVzZVZhbHVlOiBCb29rbWFya0RpYWxvZ307XG5leHBvcnQgY29uc3QgVGFibGVPZkNvbnRlbnRzRGlhbG9nU2VydmljZTogVmFsdWVQcm92aWRlciA9IHsgcHJvdmlkZTogJ0RvY3VtZW50RWRpdG9yVGFibGVPZkNvbnRlbnRzRGlhbG9nJywgdXNlVmFsdWU6IFRhYmxlT2ZDb250ZW50c0RpYWxvZ307XG5leHBvcnQgY29uc3QgUGFnZVNldHVwRGlhbG9nU2VydmljZTogVmFsdWVQcm92aWRlciA9IHsgcHJvdmlkZTogJ0RvY3VtZW50RWRpdG9yUGFnZVNldHVwRGlhbG9nJywgdXNlVmFsdWU6IFBhZ2VTZXR1cERpYWxvZ307XG5leHBvcnQgY29uc3QgUGFyYWdyYXBoRGlhbG9nU2VydmljZTogVmFsdWVQcm92aWRlciA9IHsgcHJvdmlkZTogJ0RvY3VtZW50RWRpdG9yUGFyYWdyYXBoRGlhbG9nJywgdXNlVmFsdWU6IFBhcmFncmFwaERpYWxvZ307XG5leHBvcnQgY29uc3QgTGlzdERpYWxvZ1NlcnZpY2U6IFZhbHVlUHJvdmlkZXIgPSB7IHByb3ZpZGU6ICdEb2N1bWVudEVkaXRvckxpc3REaWFsb2cnLCB1c2VWYWx1ZTogTGlzdERpYWxvZ307XG5leHBvcnQgY29uc3QgU3R5bGVEaWFsb2dTZXJ2aWNlOiBWYWx1ZVByb3ZpZGVyID0geyBwcm92aWRlOiAnRG9jdW1lbnRFZGl0b3JTdHlsZURpYWxvZycsIHVzZVZhbHVlOiBTdHlsZURpYWxvZ307XG5leHBvcnQgY29uc3QgU3R5bGVzRGlhbG9nU2VydmljZTogVmFsdWVQcm92aWRlciA9IHsgcHJvdmlkZTogJ0RvY3VtZW50RWRpdG9yU3R5bGVzRGlhbG9nJywgdXNlVmFsdWU6IFN0eWxlc0RpYWxvZ307XG5leHBvcnQgY29uc3QgQnVsbGV0c0FuZE51bWJlcmluZ0RpYWxvZ1NlcnZpY2U6IFZhbHVlUHJvdmlkZXIgPSB7IHByb3ZpZGU6ICdEb2N1bWVudEVkaXRvckJ1bGxldHNBbmROdW1iZXJpbmdEaWFsb2cnLCB1c2VWYWx1ZTogQnVsbGV0c0FuZE51bWJlcmluZ0RpYWxvZ307XG5leHBvcnQgY29uc3QgRm9udERpYWxvZ1NlcnZpY2U6IFZhbHVlUHJvdmlkZXIgPSB7IHByb3ZpZGU6ICdEb2N1bWVudEVkaXRvckZvbnREaWFsb2cnLCB1c2VWYWx1ZTogRm9udERpYWxvZ307XG5leHBvcnQgY29uc3QgVGFibGVQcm9wZXJ0aWVzRGlhbG9nU2VydmljZTogVmFsdWVQcm92aWRlciA9IHsgcHJvdmlkZTogJ0RvY3VtZW50RWRpdG9yVGFibGVQcm9wZXJ0aWVzRGlhbG9nJywgdXNlVmFsdWU6IFRhYmxlUHJvcGVydGllc0RpYWxvZ307XG5leHBvcnQgY29uc3QgQm9yZGVyc0FuZFNoYWRpbmdEaWFsb2dTZXJ2aWNlOiBWYWx1ZVByb3ZpZGVyID0geyBwcm92aWRlOiAnRG9jdW1lbnRFZGl0b3JCb3JkZXJzQW5kU2hhZGluZ0RpYWxvZycsIHVzZVZhbHVlOiBCb3JkZXJzQW5kU2hhZGluZ0RpYWxvZ307XG5leHBvcnQgY29uc3QgVGFibGVPcHRpb25zRGlhbG9nU2VydmljZTogVmFsdWVQcm92aWRlciA9IHsgcHJvdmlkZTogJ0RvY3VtZW50RWRpdG9yVGFibGVPcHRpb25zRGlhbG9nJywgdXNlVmFsdWU6IFRhYmxlT3B0aW9uc0RpYWxvZ307XG5leHBvcnQgY29uc3QgQ2VsbE9wdGlvbnNEaWFsb2dTZXJ2aWNlOiBWYWx1ZVByb3ZpZGVyID0geyBwcm92aWRlOiAnRG9jdW1lbnRFZGl0b3JDZWxsT3B0aW9uc0RpYWxvZycsIHVzZVZhbHVlOiBDZWxsT3B0aW9uc0RpYWxvZ307XG5leHBvcnQgY29uc3QgU3BlbGxDaGVja2VyU2VydmljZTogVmFsdWVQcm92aWRlciA9IHsgcHJvdmlkZTogJ0RvY3VtZW50RWRpdG9yU3BlbGxDaGVja2VyJywgdXNlVmFsdWU6IFNwZWxsQ2hlY2tlcn07XG5leHBvcnQgY29uc3QgU3BlbGxDaGVja0RpYWxvZ1NlcnZpY2U6IFZhbHVlUHJvdmlkZXIgPSB7IHByb3ZpZGU6ICdEb2N1bWVudEVkaXRvclNwZWxsQ2hlY2tEaWFsb2cnLCB1c2VWYWx1ZTogU3BlbGxDaGVja0RpYWxvZ307XG5leHBvcnQgY29uc3QgQ29sbGFib3JhdGl2ZUVkaXRpbmdTZXJ2aWNlOiBWYWx1ZVByb3ZpZGVyID0geyBwcm92aWRlOiAnRG9jdW1lbnRFZGl0b3JDb2xsYWJvcmF0aXZlRWRpdGluZycsIHVzZVZhbHVlOiBDb2xsYWJvcmF0aXZlRWRpdGluZ307XG5leHBvcnQgY29uc3QgQ29sdW1uc0RpYWxvZ1NlcnZpY2U6IFZhbHVlUHJvdmlkZXIgPSB7IHByb3ZpZGU6ICdEb2N1bWVudEVkaXRvckNvbHVtbnNEaWFsb2cnLCB1c2VWYWx1ZTogQ29sdW1uc0RpYWxvZ307XG5leHBvcnQgY29uc3QgQ29sbGFib3JhdGl2ZUVkaXRpbmdIYW5kbGVyU2VydmljZTogVmFsdWVQcm92aWRlciA9IHsgcHJvdmlkZTogJ0RvY3VtZW50RWRpdG9yQ29sbGFib3JhdGl2ZUVkaXRpbmdIYW5kbGVyJywgdXNlVmFsdWU6IENvbGxhYm9yYXRpdmVFZGl0aW5nSGFuZGxlcn07XG5leHBvcnQgY29uc3QgT3B0aW1pemVkU2VydmljZTogVmFsdWVQcm92aWRlciA9IHsgcHJvdmlkZTogJ0RvY3VtZW50RWRpdG9yT3B0aW1pemVkJywgdXNlVmFsdWU6IE9wdGltaXplZH07XG5leHBvcnQgY29uc3QgVGFiRGlhbG9nU2VydmljZTogVmFsdWVQcm92aWRlciA9IHsgcHJvdmlkZTogJ0RvY3VtZW50RWRpdG9yVGFiRGlhbG9nJywgdXNlVmFsdWU6IFRhYkRpYWxvZ307XG5leHBvcnQgY29uc3QgVGV4dEZvcm1GaWVsZERpYWxvZ1NlcnZpY2U6IFZhbHVlUHJvdmlkZXIgPSB7IHByb3ZpZGU6ICdEb2N1bWVudEVkaXRvclRleHRGb3JtRmllbGREaWFsb2cnLCB1c2VWYWx1ZTogVGV4dEZvcm1GaWVsZERpYWxvZ307XG5leHBvcnQgY29uc3QgRHJvcERvd25Gb3JtRmllbGREaWFsb2dTZXJ2aWNlOiBWYWx1ZVByb3ZpZGVyID0geyBwcm92aWRlOiAnRG9jdW1lbnRFZGl0b3JEcm9wRG93bkZvcm1GaWVsZERpYWxvZycsIHVzZVZhbHVlOiBEcm9wRG93bkZvcm1GaWVsZERpYWxvZ307XG5leHBvcnQgY29uc3QgQ2hlY2tCb3hGb3JtRmllbGREaWFsb2dTZXJ2aWNlOiBWYWx1ZVByb3ZpZGVyID0geyBwcm92aWRlOiAnRG9jdW1lbnRFZGl0b3JDaGVja0JveEZvcm1GaWVsZERpYWxvZycsIHVzZVZhbHVlOiBDaGVja0JveEZvcm1GaWVsZERpYWxvZ307XG5cbi8qKlxuICogTmdNb2R1bGUgZGVmaW5pdGlvbiBmb3IgdGhlIERvY3VtZW50RWRpdG9yIGNvbXBvbmVudCB3aXRoIHByb3ZpZGVycy5cbiAqL1xuQE5nTW9kdWxlKHtcbiAgICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBEb2N1bWVudEVkaXRvck1vZHVsZV0sXG4gICAgZXhwb3J0czogW1xuICAgICAgICBEb2N1bWVudEVkaXRvck1vZHVsZVxuICAgIF0sXG4gICAgcHJvdmlkZXJzOltcbiAgICAgICAgUHJpbnRTZXJ2aWNlLFxuICAgICAgICBTZmR0RXhwb3J0U2VydmljZSxcbiAgICAgICAgV29yZEV4cG9ydFNlcnZpY2UsXG4gICAgICAgIFRleHRFeHBvcnRTZXJ2aWNlLFxuICAgICAgICBTZWxlY3Rpb25TZXJ2aWNlLFxuICAgICAgICBTZWFyY2hTZXJ2aWNlLFxuICAgICAgICBFZGl0b3JTZXJ2aWNlLFxuICAgICAgICBFZGl0b3JIaXN0b3J5U2VydmljZSxcbiAgICAgICAgT3B0aW9uc1BhbmVTZXJ2aWNlLFxuICAgICAgICBDb250ZXh0TWVudVNlcnZpY2UsXG4gICAgICAgIEltYWdlUmVzaXplclNlcnZpY2UsXG4gICAgICAgIEh5cGVybGlua0RpYWxvZ1NlcnZpY2UsXG4gICAgICAgIFRhYmxlRGlhbG9nU2VydmljZSxcbiAgICAgICAgQm9va21hcmtEaWFsb2dTZXJ2aWNlLFxuICAgICAgICBUYWJsZU9mQ29udGVudHNEaWFsb2dTZXJ2aWNlLFxuICAgICAgICBQYWdlU2V0dXBEaWFsb2dTZXJ2aWNlLFxuICAgICAgICBQYXJhZ3JhcGhEaWFsb2dTZXJ2aWNlLFxuICAgICAgICBMaXN0RGlhbG9nU2VydmljZSxcbiAgICAgICAgU3R5bGVEaWFsb2dTZXJ2aWNlLFxuICAgICAgICBTdHlsZXNEaWFsb2dTZXJ2aWNlLFxuICAgICAgICBCdWxsZXRzQW5kTnVtYmVyaW5nRGlhbG9nU2VydmljZSxcbiAgICAgICAgRm9udERpYWxvZ1NlcnZpY2UsXG4gICAgICAgIFRhYmxlUHJvcGVydGllc0RpYWxvZ1NlcnZpY2UsXG4gICAgICAgIEJvcmRlcnNBbmRTaGFkaW5nRGlhbG9nU2VydmljZSxcbiAgICAgICAgVGFibGVPcHRpb25zRGlhbG9nU2VydmljZSxcbiAgICAgICAgQ2VsbE9wdGlvbnNEaWFsb2dTZXJ2aWNlLFxuICAgICAgICBTcGVsbENoZWNrZXJTZXJ2aWNlLFxuICAgICAgICBTcGVsbENoZWNrRGlhbG9nU2VydmljZSxcbiAgICAgICAgQ29sbGFib3JhdGl2ZUVkaXRpbmdTZXJ2aWNlLFxuICAgICAgICBDb2x1bW5zRGlhbG9nU2VydmljZSxcbiAgICAgICAgQ29sbGFib3JhdGl2ZUVkaXRpbmdIYW5kbGVyU2VydmljZSxcbiAgICAgICAgT3B0aW1pemVkU2VydmljZSxcbiAgICAgICAgVGFiRGlhbG9nU2VydmljZSxcbiAgICAgICAgVGV4dEZvcm1GaWVsZERpYWxvZ1NlcnZpY2UsXG4gICAgICAgIERyb3BEb3duRm9ybUZpZWxkRGlhbG9nU2VydmljZSxcbiAgICAgICAgQ2hlY2tCb3hGb3JtRmllbGREaWFsb2dTZXJ2aWNlXG4gICAgXVxufSlcbmV4cG9ydCBjbGFzcyBEb2N1bWVudEVkaXRvckFsbE1vZHVsZSB7IH0iXX0=
|