@myrmidon/cadmus-part-codicology-decorations 0.0.2

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.
Files changed (34) hide show
  1. package/README.md +50 -0
  2. package/esm2020/lib/cadmus-part-codicology-decorations.module.mjs +171 -0
  3. package/esm2020/lib/cod-decoration/cod-decoration.component.mjs +383 -0
  4. package/esm2020/lib/cod-decoration-artist/cod-decoration-artist.component.mjs +209 -0
  5. package/esm2020/lib/cod-decoration-artist-style/cod-decoration-artist-style.component.mjs +98 -0
  6. package/esm2020/lib/cod-decoration-element/cod-decoration-element.component.mjs +425 -0
  7. package/esm2020/lib/cod-decorations-part/cod-decorations-part.component.mjs +286 -0
  8. package/esm2020/lib/cod-decorations-part-feature/cod-decorations-part-feature.component.mjs +45 -0
  9. package/esm2020/lib/cod-decorations-part-feature/edit-cod-decorations-part.query.mjs +16 -0
  10. package/esm2020/lib/cod-decorations-part-feature/edit-cod-decorations-part.service.mjs +18 -0
  11. package/esm2020/lib/cod-decorations-part-feature/edit-cod-decorations-part.store.mjs +27 -0
  12. package/esm2020/lib/cod-decorations-part.mjs +821 -0
  13. package/esm2020/lib/text-or-entry-selector/text-or-entry-selector.component.mjs +91 -0
  14. package/esm2020/myrmidon-cadmus-part-codicology-decorations.mjs +5 -0
  15. package/esm2020/public-api.mjs +13 -0
  16. package/fesm2015/myrmidon-cadmus-part-codicology-decorations.mjs +2528 -0
  17. package/fesm2015/myrmidon-cadmus-part-codicology-decorations.mjs.map +1 -0
  18. package/fesm2020/myrmidon-cadmus-part-codicology-decorations.mjs +2507 -0
  19. package/fesm2020/myrmidon-cadmus-part-codicology-decorations.mjs.map +1 -0
  20. package/lib/cadmus-part-codicology-decorations.module.d.ts +39 -0
  21. package/lib/cod-decoration/cod-decoration.component.d.ts +115 -0
  22. package/lib/cod-decoration-artist/cod-decoration-artist.component.d.ts +51 -0
  23. package/lib/cod-decoration-artist-style/cod-decoration-artist-style.component.d.ts +36 -0
  24. package/lib/cod-decoration-element/cod-decoration-element.component.d.ts +128 -0
  25. package/lib/cod-decorations-part/cod-decorations-part.component.d.ts +61 -0
  26. package/lib/cod-decorations-part-feature/cod-decorations-part-feature.component.d.ts +13 -0
  27. package/lib/cod-decorations-part-feature/edit-cod-decorations-part.query.d.ts +8 -0
  28. package/lib/cod-decorations-part-feature/edit-cod-decorations-part.service.d.ts +9 -0
  29. package/lib/cod-decorations-part-feature/edit-cod-decorations-part.store.d.ts +10 -0
  30. package/lib/cod-decorations-part.d.ts +834 -0
  31. package/lib/text-or-entry-selector/text-or-entry-selector.component.d.ts +45 -0
  32. package/myrmidon-cadmus-part-codicology-decorations.d.ts +5 -0
  33. package/package.json +43 -0
  34. package/public-api.d.ts +9 -0
package/README.md ADDED
@@ -0,0 +1,50 @@
1
+ # CadmusPartCodicologyDecorations
2
+
3
+ This library was generated with [Angular CLI](https://github.com/angular/angular-cli) version 13.2.0.
4
+
5
+ Decoration was derived from Itinera decorations with these changes in the model:
6
+
7
+ - `CodDecorationArtist`: completely changed.
8
+ - `CodDecorationElement`:
9
+ - (+) `instanceCount`
10
+ - (/) `gildings`: string[] instead of gilding: string
11
+ - (/) `techniques`: string[] instead of technique: string
12
+ - (/) `tools`: string[] instead of tool: string
13
+ - (/) `positions`: string[] instead of position: string
14
+ - (X) `imageId` replaced with:
15
+ - (+) `images`: CodImage[]
16
+ - `CodDecoration`:
17
+ - (=) `id` renamed into `eid` and made optional
18
+ - (X) `date` and (X) `place` replaced with:
19
+ - (+) `chronotopes`
20
+ - (X) `artist` replaced with:
21
+ - (+) `artists`
22
+
23
+ This part editor has an adaptive UI, which changes according to parameters provided in its thesauri. The thesaurus with ID `cod-decoration-element-types` defines all the types of decoration elements (e.g. illustration, ornamentation, initials, etc.). The UI adapts to the selected element type.
24
+
25
+ This adaptation has different types:
26
+
27
+ - some thesauri lists get filtered according to the selected type. Filtering happens by virtue of a convention: all the IDs in the list starting with a prefix equal to the element type ID plus a dot are targeted to that specific type. So, if a type ID is `ill` for illustration, one of the dependent thesauri reporting the element's typologies has entries whose ID start with `ill.` and thus target only the illustration type. When a user selects the illustration type, the dependent thesaurus entries get filtered to show only those relevant for it. The dependent thesauri are:
28
+ - `cod-decoration-element-flags`
29
+ - `cod-decoration-element-colors`
30
+ - `cod-decoration-element-gildings`
31
+ - `cod-decoration-element-techniques`
32
+ - `cod-decoration-element-positions`
33
+ - `cod-decoration-element-tools`
34
+ - `cod-decoration-element-typologies`
35
+
36
+ - some controls get completely hidden. Which controls are to be hidden for which element type is defined in thesaurus `cod-decoration-type-hidden`, having an entry for each element type with the same ID; its value is a space-delimited list of control identifiers:
37
+ - `colors`
38
+ - `gildings`
39
+ - `lineHeight`
40
+ - `positions`
41
+ - `subject`
42
+ - `techniques`
43
+ - `textRelation`
44
+ - `tools`
45
+
46
+ - some lists may allow for user-defined (unbound) entries. A list allowing this contains a special entry with ID equal to the element type ID + `.-` and an empty value. This may happen for:
47
+ - gildings
48
+ - techniques
49
+ - positions
50
+ - tools
@@ -0,0 +1,171 @@
1
+ import { CommonModule } from '@angular/common';
2
+ import { NgModule } from '@angular/core';
3
+ import { FormsModule, ReactiveFormsModule } from '@angular/forms';
4
+ import { MatButtonModule } from '@angular/material/button';
5
+ import { MatCardModule } from '@angular/material/card';
6
+ import { MatCheckboxModule } from '@angular/material/checkbox';
7
+ import { MatExpansionModule } from '@angular/material/expansion';
8
+ import { MatIconModule } from '@angular/material/icon';
9
+ import { MatInputModule } from '@angular/material/input';
10
+ import { MatSelectModule } from '@angular/material/select';
11
+ import { MatTabsModule } from '@angular/material/tabs';
12
+ import { MatTooltipModule } from '@angular/material/tooltip';
13
+ import { MonacoEditorModule } from 'ngx-monaco-editor';
14
+ import { NgToolsModule } from '@myrmidon/ng-tools';
15
+ import { NgMatToolsModule } from '@myrmidon/ng-mat-tools';
16
+ import { CadmusCodicologyUiModule } from '@myrmidon/cadmus-codicology-ui';
17
+ import { CadmusMatPhysicalSizeModule } from '@myrmidon/cadmus-mat-physical-size';
18
+ import { CadmusRefsAssertionModule } from '@myrmidon/cadmus-refs-assertion';
19
+ import { CadmusRefsAssertedChronotopeModule } from '@myrmidon/cadmus-refs-asserted-chronotope';
20
+ import { CadmusRefsDocReferencesModule } from '@myrmidon/cadmus-refs-doc-references';
21
+ import { CadmusRefsExternalIdsModule } from '@myrmidon/cadmus-refs-external-ids';
22
+ import { CadmusRefsHistoricalDateModule } from '@myrmidon/cadmus-refs-historical-date';
23
+ import { CadmusStateModule } from '@myrmidon/cadmus-state';
24
+ import { CadmusUiModule } from '@myrmidon/cadmus-ui';
25
+ import { CadmusUiPgModule } from '@myrmidon/cadmus-ui-pg';
26
+ import { CadmusCodLocationModule } from '@myrmidon/cadmus-cod-location';
27
+ import { CadmusUiFlagsPickerModule } from '@myrmidon/cadmus-ui-flags-picker';
28
+ import { CodDecorationElementComponent } from './cod-decoration-element/cod-decoration-element.component';
29
+ import { TextOrEntrySelectorComponent } from './text-or-entry-selector/text-or-entry-selector.component';
30
+ import { CodDecorationArtistStyleComponent } from './cod-decoration-artist-style/cod-decoration-artist-style.component';
31
+ import { CodDecorationArtistComponent } from './cod-decoration-artist/cod-decoration-artist.component';
32
+ import { CodDecorationComponent } from './cod-decoration/cod-decoration.component';
33
+ import { CodDecorationsPartComponent } from './cod-decorations-part/cod-decorations-part.component';
34
+ import { CodDecorationsPartFeatureComponent } from './cod-decorations-part-feature/cod-decorations-part-feature.component';
35
+ import * as i0 from "@angular/core";
36
+ export class CadmusPartCodicologyDecorationsModule {
37
+ }
38
+ CadmusPartCodicologyDecorationsModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: CadmusPartCodicologyDecorationsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
39
+ CadmusPartCodicologyDecorationsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: CadmusPartCodicologyDecorationsModule, declarations: [CodDecorationElementComponent,
40
+ TextOrEntrySelectorComponent,
41
+ CodDecorationArtistStyleComponent,
42
+ CodDecorationArtistComponent,
43
+ CodDecorationComponent,
44
+ CodDecorationsPartComponent,
45
+ CodDecorationsPartFeatureComponent], imports: [CommonModule,
46
+ FormsModule,
47
+ ReactiveFormsModule,
48
+ // material
49
+ MatButtonModule,
50
+ MatCardModule,
51
+ MatCheckboxModule,
52
+ MatExpansionModule,
53
+ MatIconModule,
54
+ MatInputModule,
55
+ MatSelectModule,
56
+ MatTabsModule,
57
+ MatTooltipModule,
58
+ // monaco
59
+ MonacoEditorModule,
60
+ // general
61
+ NgToolsModule,
62
+ NgMatToolsModule,
63
+ // cadmus
64
+ CadmusStateModule,
65
+ CadmusUiModule,
66
+ CadmusUiPgModule,
67
+ CadmusMatPhysicalSizeModule,
68
+ CadmusRefsAssertedChronotopeModule,
69
+ CadmusRefsAssertionModule,
70
+ CadmusRefsDocReferencesModule,
71
+ CadmusRefsExternalIdsModule,
72
+ CadmusRefsHistoricalDateModule,
73
+ CadmusUiFlagsPickerModule,
74
+ CadmusCodLocationModule,
75
+ CadmusCodicologyUiModule], exports: [CodDecorationElementComponent,
76
+ TextOrEntrySelectorComponent,
77
+ CodDecorationArtistStyleComponent,
78
+ CodDecorationArtistComponent,
79
+ CodDecorationComponent,
80
+ CodDecorationsPartComponent,
81
+ CodDecorationsPartFeatureComponent] });
82
+ CadmusPartCodicologyDecorationsModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: CadmusPartCodicologyDecorationsModule, imports: [[
83
+ CommonModule,
84
+ FormsModule,
85
+ ReactiveFormsModule,
86
+ // material
87
+ MatButtonModule,
88
+ MatCardModule,
89
+ MatCheckboxModule,
90
+ MatExpansionModule,
91
+ MatIconModule,
92
+ MatInputModule,
93
+ MatSelectModule,
94
+ MatTabsModule,
95
+ MatTooltipModule,
96
+ // monaco
97
+ MonacoEditorModule,
98
+ // general
99
+ NgToolsModule,
100
+ NgMatToolsModule,
101
+ // cadmus
102
+ CadmusStateModule,
103
+ CadmusUiModule,
104
+ CadmusUiPgModule,
105
+ CadmusMatPhysicalSizeModule,
106
+ CadmusRefsAssertedChronotopeModule,
107
+ CadmusRefsAssertionModule,
108
+ CadmusRefsDocReferencesModule,
109
+ CadmusRefsExternalIdsModule,
110
+ CadmusRefsHistoricalDateModule,
111
+ CadmusUiFlagsPickerModule,
112
+ CadmusCodLocationModule,
113
+ CadmusCodicologyUiModule,
114
+ ]] });
115
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: CadmusPartCodicologyDecorationsModule, decorators: [{
116
+ type: NgModule,
117
+ args: [{
118
+ declarations: [
119
+ CodDecorationElementComponent,
120
+ TextOrEntrySelectorComponent,
121
+ CodDecorationArtistStyleComponent,
122
+ CodDecorationArtistComponent,
123
+ CodDecorationComponent,
124
+ CodDecorationsPartComponent,
125
+ CodDecorationsPartFeatureComponent,
126
+ ],
127
+ imports: [
128
+ CommonModule,
129
+ FormsModule,
130
+ ReactiveFormsModule,
131
+ // material
132
+ MatButtonModule,
133
+ MatCardModule,
134
+ MatCheckboxModule,
135
+ MatExpansionModule,
136
+ MatIconModule,
137
+ MatInputModule,
138
+ MatSelectModule,
139
+ MatTabsModule,
140
+ MatTooltipModule,
141
+ // monaco
142
+ MonacoEditorModule,
143
+ // general
144
+ NgToolsModule,
145
+ NgMatToolsModule,
146
+ // cadmus
147
+ CadmusStateModule,
148
+ CadmusUiModule,
149
+ CadmusUiPgModule,
150
+ CadmusMatPhysicalSizeModule,
151
+ CadmusRefsAssertedChronotopeModule,
152
+ CadmusRefsAssertionModule,
153
+ CadmusRefsDocReferencesModule,
154
+ CadmusRefsExternalIdsModule,
155
+ CadmusRefsHistoricalDateModule,
156
+ CadmusUiFlagsPickerModule,
157
+ CadmusCodLocationModule,
158
+ CadmusCodicologyUiModule,
159
+ ],
160
+ exports: [
161
+ CodDecorationElementComponent,
162
+ TextOrEntrySelectorComponent,
163
+ CodDecorationArtistStyleComponent,
164
+ CodDecorationArtistComponent,
165
+ CodDecorationComponent,
166
+ CodDecorationsPartComponent,
167
+ CodDecorationsPartFeatureComponent,
168
+ ],
169
+ }]
170
+ }] });
171
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FkbXVzLXBhcnQtY29kaWNvbG9neS1kZWNvcmF0aW9ucy5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9teXJtaWRvbi9jYWRtdXMtcGFydC1jb2RpY29sb2d5LWRlY29yYXRpb25zL3NyYy9saWIvY2FkbXVzLXBhcnQtY29kaWNvbG9neS1kZWNvcmF0aW9ucy5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFdBQVcsRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRWxFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDL0QsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDakUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDM0QsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBRTdELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBRXZELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUNuRCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx3QkFBd0Is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QUM5Qix5QkFBeUI7WUFDekIsdUJBQXVCO1lBQ3ZCLHdCQUF3QjtTQUN6QjsyRkFXVSxxQ0FBcUM7a0JBckRqRCxRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBRTt3QkFDWiw2QkFBNkI7d0JBQzdCLDRCQUE0Qjt3QkFDNUIsaUNBQWlDO3dCQUNqQyw0QkFBNEI7d0JBQzVCLHNCQUFzQjt3QkFDdEIsMkJBQTJCO3dCQUMzQixrQ0FBa0M7cUJBQ25DO29CQUNELE9BQU8sRUFBRTt3QkFDUCxZQUFZO3dCQUNaLFdBQVc7d0JBQ1gsbUJBQW1CO3dCQUNuQixXQUFXO3dCQUNYLGVBQWU7d0JBQ2YsYUFBYTt3QkFDYixpQkFBaUI7d0JBQ2pCLGtCQUFrQjt3QkFDbEIsYUFBYTt3QkFDYixjQUFjO3dCQUNkLGVBQWU7d0JBQ2YsYUFBYTt3QkFDYixnQkFBZ0I7d0JBQ2hCLFNBQVM7d0JBQ1Qsa0JBQWtCO3dCQUNsQixVQUFVO3dCQUNWLGFBQWE7d0JBQ2IsZ0JBQWdCO3dCQUNoQixTQUFTO3dCQUNULGlCQUFpQjt3QkFDakIsY0FBYzt3QkFDZCxnQkFBZ0I7d0JBQ2hCLDJCQUEyQjt3QkFDM0Isa0NBQWtDO3dCQUNsQyx5QkFBeUI7d0JBQ3pCLDZCQUE2Qjt3QkFDN0IsMkJBQTJCO3dCQUMzQiw4QkFBOEI7d0JBQzlCLHlCQUF5Qjt3QkFDekIsdUJBQXVCO3dCQUN2Qix3QkFBd0I7cUJBQ3pCO29CQUNELE9BQU8sRUFBRTt3QkFDUCw2QkFBNkI7d0JBQzdCLDRCQUE0Qjt3QkFDNUIsaUNBQWlDO3dCQUNqQyw0QkFBNEI7d0JBQzVCLHNCQUFzQjt3QkFDdEIsMkJBQTJCO3dCQUMzQixrQ0FBa0M7cUJBQ25DO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb3Jtc01vZHVsZSwgUmVhY3RpdmVGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcblxuaW1wb3J0IHsgTWF0QnV0dG9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvYnV0dG9uJztcbmltcG9ydCB7IE1hdENhcmRNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9jYXJkJztcbmltcG9ydCB7IE1hdENoZWNrYm94TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvY2hlY2tib3gnO1xuaW1wb3J0IHsgTWF0RXhwYW5zaW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZXhwYW5zaW9uJztcbmltcG9ydCB7IE1hdEljb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pY29uJztcbmltcG9ydCB7IE1hdElucHV0TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaW5wdXQnO1xuaW1wb3J0IHsgTWF0U2VsZWN0TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvc2VsZWN0JztcbmltcG9ydCB7IE1hdFRhYnNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC90YWJzJztcbmltcG9ydCB7IE1hdFRvb2x0aXBNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC90b29sdGlwJztcblxuaW1wb3J0IHsgTW9uYWNvRWRpdG9yTW9kdWxlIH0gZnJvbSAnbmd4LW1vbmFjby1lZGl0b3InO1xuXG5pbXBvcnQgeyBOZ1Rvb2xzTW9kdWxlIH0gZnJvbSAnQG15cm1pZG9uL25nLXRvb2xzJztcbmltcG9ydCB7IE5nTWF0VG9vbHNNb2R1bGUgfSBmcm9tICdAbXlybWlkb24vbmctbWF0LXRvb2xzJztcbmltcG9ydCB7IENhZG11c0NvZGljb2xvZ3lVaU1vZHVsZSB9IGZyb20gJ0BteXJtaWRvbi9jYWRtdXMtY29kaWNvbG9neS11aSc7XG5pbXBvcnQgeyBDYWRtdXNNYXRQaHlzaWNhbFNpemVNb2R1bGUgfSBmcm9tICdAbXlybWlkb24vY2FkbXVzLW1hdC1waHlzaWNhbC1zaXplJztcbmltcG9ydCB7IENhZG11c1JlZnNBc3NlcnRpb25Nb2R1bGUgfSBmcm9tICdAbXlybWlkb24vY2FkbXVzLXJlZnMtYXNzZXJ0aW9uJztcbmltcG9ydCB7IENhZG11c1JlZnNBc3NlcnRlZENocm9ub3RvcGVNb2R1bGUgfSBmcm9tICdAbXlybWlkb24vY2FkbXVzLXJlZnMtYXNzZXJ0ZWQtY2hyb25vdG9wZSc7XG5pbXBvcnQgeyBDYWRtdXNSZWZzRG9jUmVmZXJlbmNlc01vZHVsZSB9IGZyb20gJ0BteXJtaWRvbi9jYWRtdXMtcmVmcy1kb2MtcmVmZXJlbmNlcyc7XG5pbXBvcnQgeyBDYWRtdXNSZWZzRXh0ZXJuYWxJZHNNb2R1bGUgfSBmcm9tICdAbXlybWlkb24vY2FkbXVzLXJlZnMtZXh0ZXJuYWwtaWRzJztcbmltcG9ydCB7IENhZG11c1JlZnNIaXN0b3JpY2FsRGF0ZU1vZHVsZSB9IGZyb20gJ0BteXJtaWRvbi9jYWRtdXMtcmVmcy1oaXN0b3JpY2FsLWRhdGUnO1xuaW1wb3J0IHsgQ2FkbXVzU3RhdGVNb2R1bGUgfSBmcm9tICdAbXlybWlkb24vY2FkbXVzLXN0YXRlJztcbmltcG9ydCB7IENhZG11c1VpTW9kdWxlIH0gZnJvbSAnQG15cm1pZG9uL2NhZG11cy11aSc7XG5pbXBvcnQgeyBDYWRtdXNVaVBnTW9kdWxlIH0gZnJvbSAnQG15cm1pZG9uL2NhZG11cy11aS1wZyc7XG5pbXBvcnQgeyBDYWRtdXNDb2RMb2NhdGlvbk1vZHVsZSB9IGZyb20gJ0BteXJtaWRvbi9jYWRtdXMtY29kLWxvY2F0aW9uJztcbmltcG9ydCB7IENhZG11c1VpRmxhZ3NQaWNrZXJNb2R1bGUgfSBmcm9tICdAbXlybWlkb24vY2FkbXVzLXVpLWZsYWdzLXBpY2tlcic7XG5cbmltcG9ydCB7IENvZERlY29yYXRpb25FbGVtZW50Q29tcG9uZW50IH0gZnJvbSAnLi9jb2QtZGVjb3JhdGlvbi1lbGVtZW50L2NvZC1kZWNvcmF0aW9uLWVsZW1lbnQuY29tcG9uZW50JztcbmltcG9ydCB7IFRleHRPckVudHJ5U2VsZWN0b3JDb21wb25lbnQgfSBmcm9tICcuL3RleHQtb3ItZW50cnktc2VsZWN0b3IvdGV4dC1vci1lbnRyeS1zZWxlY3Rvci5jb21wb25lbnQnO1xuaW1wb3J0IHsgQ29kRGVjb3JhdGlvbkFydGlzdFN0eWxlQ29tcG9uZW50IH0gZnJvbSAnLi9jb2QtZGVjb3JhdGlvbi1hcnRpc3Qtc3R5bGUvY29kLWRlY29yYXRpb24tYXJ0aXN0LXN0eWxlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBDb2REZWNvcmF0aW9uQXJ0aXN0Q29tcG9uZW50IH0gZnJvbSAnLi9jb2QtZGVjb3JhdGlvbi1hcnRpc3QvY29kLWRlY29yYXRpb24tYXJ0aXN0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBDb2REZWNvcmF0aW9uQ29tcG9uZW50IH0gZnJvbSAnLi9jb2QtZGVjb3JhdGlvbi9jb2QtZGVjb3JhdGlvbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgQ29kRGVjb3JhdGlvbnNQYXJ0Q29tcG9uZW50IH0gZnJvbSAnLi9jb2QtZGVjb3JhdGlvbnMtcGFydC9jb2QtZGVjb3JhdGlvbnMtcGFydC5jb21wb25lbnQnO1xuaW1wb3J0IHsgQ29kRGVjb3JhdGlvbnNQYXJ0RmVhdHVyZUNvbXBvbmVudCB9IGZyb20gJy4vY29kLWRlY29yYXRpb25zLXBhcnQtZmVhdHVyZS9jb2QtZGVjb3JhdGlvbnMtcGFydC1mZWF0dXJlLmNvbXBvbmVudCc7XG5cbkBOZ01vZHVsZSh7XG4gIGRlY2xhcmF0aW9uczogW1xuICAgIENvZERlY29yYXRpb25FbGVtZW50Q29tcG9uZW50LFxuICAgIFRleHRPckVudHJ5U2VsZWN0b3JDb21wb25lbnQsXG4gICAgQ29kRGVjb3JhdGlvbkFydGlzdFN0eWxlQ29tcG9uZW50LFxuICAgIENvZERlY29yYXRpb25BcnRpc3RDb21wb25lbnQsXG4gICAgQ29kRGVjb3JhdGlvbkNvbXBvbmVudCxcbiAgICBDb2REZWNvcmF0aW9uc1BhcnRDb21wb25lbnQsXG4gICAgQ29kRGVjb3JhdGlvbnNQYXJ0RmVhdHVyZUNvbXBvbmVudCxcbiAgXSxcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZSxcbiAgICBGb3Jtc01vZHVsZSxcbiAgICBSZWFjdGl2ZUZvcm1zTW9kdWxlLFxuICAgIC8vIG1hdGVyaWFsXG4gICAgTWF0QnV0dG9uTW9kdWxlLFxuICAgIE1hdENhcmRNb2R1bGUsXG4gICAgTWF0Q2hlY2tib3hNb2R1bGUsXG4gICAgTWF0RXhwYW5zaW9uTW9kdWxlLFxuICAgIE1hdEljb25Nb2R1bGUsXG4gICAgTWF0SW5wdXRNb2R1bGUsXG4gICAgTWF0U2VsZWN0TW9kdWxlLFxuICAgIE1hdFRhYnNNb2R1bGUsXG4gICAgTWF0VG9vbHRpcE1vZHVsZSxcbiAgICAvLyBtb25hY29cbiAgICBNb25hY29FZGl0b3JNb2R1bGUsXG4gICAgLy8gZ2VuZXJhbFxuICAgIE5nVG9vbHNNb2R1bGUsXG4gICAgTmdNYXRUb29sc01vZHVsZSxcbiAgICAvLyBjYWRtdXNcbiAgICBDYWRtdXNTdGF0ZU1vZHVsZSxcbiAgICBDYWRtdXNVaU1vZHVsZSxcbiAgICBDYWRtdXNVaVBnTW9kdWxlLFxuICAgIENhZG11c01hdFBoeXNpY2FsU2l6ZU1vZHVsZSxcbiAgICBDYWRtdXNSZWZzQXNzZXJ0ZWRDaHJvbm90b3BlTW9kdWxlLFxuICAgIENhZG11c1JlZnNBc3NlcnRpb25Nb2R1bGUsXG4gICAgQ2FkbXVzUmVmc0RvY1JlZmVyZW5jZXNNb2R1bGUsXG4gICAgQ2FkbXVzUmVmc0V4dGVybmFsSWRzTW9kdWxlLFxuICAgIENhZG11c1JlZnNIaXN0b3JpY2FsRGF0ZU1vZHVsZSxcbiAgICBDYWRtdXNVaUZsYWdzUGlja2VyTW9kdWxlLFxuICAgIENhZG11c0NvZExvY2F0aW9uTW9kdWxlLFxuICAgIENhZG11c0NvZGljb2xvZ3lVaU1vZHVsZSxcbiAgXSxcbiAgZXhwb3J0czogW1xuICAgIENvZERlY29yYXRpb25FbGVtZW50Q29tcG9uZW50LFxuICAgIFRleHRPckVudHJ5U2VsZWN0b3JDb21wb25lbnQsXG4gICAgQ29kRGVjb3JhdGlvbkFydGlzdFN0eWxlQ29tcG9uZW50LFxuICAgIENvZERlY29yYXRpb25BcnRpc3RDb21wb25lbnQsXG4gICAgQ29kRGVjb3JhdGlvbkNvbXBvbmVudCxcbiAgICBDb2REZWNvcmF0aW9uc1BhcnRDb21wb25lbnQsXG4gICAgQ29kRGVjb3JhdGlvbnNQYXJ0RmVhdHVyZUNvbXBvbmVudCxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgQ2FkbXVzUGFydENvZGljb2xvZ3lEZWNvcmF0aW9uc01vZHVsZSB7fVxuIl19