@dangl/angular-ava 1.1.2-beta0049 → 1.1.2-beta0055

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 (54) hide show
  1. package/README.md +26 -8
  2. package/fesm2022/dangl-angular-ava.mjs +63 -556
  3. package/fesm2022/dangl-angular-ava.mjs.map +1 -1
  4. package/lib/ava-tree/tree/components/ava-tree/ava-tree.component.d.ts +1 -1
  5. package/lib/ava-tree/tree/components/list-structure/list-structure.component.d.ts +1 -1
  6. package/lib/ava-tree/tree/components/table-structure/table-structure.component.d.ts +1 -1
  7. package/lib/ava-tree/tree/components/tree-item/tree-item.component.d.ts +1 -1
  8. package/lib/ava-tree/tree/components/tree-node/tree-node.component.d.ts +1 -1
  9. package/lib/ava-tree/tree/components/tree-structure/tree-structure.component.d.ts +1 -1
  10. package/lib/ava-tree/tree/directives/save-changing-view.directive.d.ts +1 -1
  11. package/lib/ava-tree/tree/pipes/element-icon-name.pipe.d.ts +1 -1
  12. package/lib/ava-tree/tree/pipes/element-item-number.pipe.d.ts +1 -1
  13. package/lib/ava-tree/tree/pipes/element-text.pipe.d.ts +1 -1
  14. package/lib/ava-tree/tree/pipes/group-child-elements.pipe.d.ts +1 -1
  15. package/package.json +1 -3
  16. package/public-api.d.ts +1 -2
  17. package/esm2022/dangl-angular-ava.mjs +0 -5
  18. package/esm2022/lib/angular-ava.module.mjs +0 -91
  19. package/esm2022/lib/ava-tree/invoice/invoice-display/invoice-display.component.mjs +0 -123
  20. package/esm2022/lib/ava-tree/tree/components/ava-tree/ava-tree.component.mjs +0 -449
  21. package/esm2022/lib/ava-tree/tree/components/list-structure/list-structure.component.mjs +0 -41
  22. package/esm2022/lib/ava-tree/tree/components/table-structure/table-structure.component.mjs +0 -110
  23. package/esm2022/lib/ava-tree/tree/components/tree-item/tree-item.component.mjs +0 -102
  24. package/esm2022/lib/ava-tree/tree/components/tree-node/tree-node.component.mjs +0 -53
  25. package/esm2022/lib/ava-tree/tree/components/tree-structure/tree-structure.component.mjs +0 -33
  26. package/esm2022/lib/ava-tree/tree/constants/defaultFilters.mjs +0 -23
  27. package/esm2022/lib/ava-tree/tree/constants/defaultTextWordInvoice.mjs +0 -77
  28. package/esm2022/lib/ava-tree/tree/constants/defaultTextWords.mjs +0 -29
  29. package/esm2022/lib/ava-tree/tree/constants/defaults.mjs +0 -4
  30. package/esm2022/lib/ava-tree/tree/constants/index.mjs +0 -6
  31. package/esm2022/lib/ava-tree/tree/directives/save-changing-view.directive.mjs +0 -47
  32. package/esm2022/lib/ava-tree/tree/model/ava-models.mjs +0 -206
  33. package/esm2022/lib/ava-tree/tree/model/context-menu-data.model.mjs +0 -2
  34. package/esm2022/lib/ava-tree/tree/model/function-view-line.model.mjs +0 -2
  35. package/esm2022/lib/ava-tree/tree/model/index.mjs +0 -5
  36. package/esm2022/lib/ava-tree/tree/model/invoice-models.mjs +0 -45
  37. package/esm2022/lib/ava-tree/tree/model/invoice-words.model.mjs +0 -2
  38. package/esm2022/lib/ava-tree/tree/model/selecting.model.mjs +0 -2
  39. package/esm2022/lib/ava-tree/tree/model/tableColumnType.mjs +0 -2
  40. package/esm2022/lib/ava-tree/tree/model/tree-mode.model.mjs +0 -7
  41. package/esm2022/lib/ava-tree/tree/pipes/element-icon-name.pipe.mjs +0 -27
  42. package/esm2022/lib/ava-tree/tree/pipes/element-item-number.pipe.mjs +0 -23
  43. package/esm2022/lib/ava-tree/tree/pipes/element-text.pipe.mjs +0 -39
  44. package/esm2022/lib/ava-tree/tree/pipes/group-child-elements.pipe.mjs +0 -20
  45. package/esm2022/lib/ava-tree/tree/pipes/invoice-attachment-mime-type.pipe.mjs +0 -34
  46. package/esm2022/lib/ava-tree/tree/services/expand-parent-group.service.mjs +0 -32
  47. package/esm2022/lib/ava-tree/tree/services/flat-elements.service.mjs +0 -96
  48. package/esm2022/lib/ava-tree/tree/services/keyboard-operation.service.mjs +0 -116
  49. package/esm2022/lib/ava-tree/tree/services/select-element.service.mjs +0 -41
  50. package/esm2022/lib/ava-tree/tree/services/tree-node-selection.service.mjs +0 -133
  51. package/esm2022/lib/ava-tree/tree/services/tree-words.service.mjs +0 -21
  52. package/esm2022/lib/version.mjs +0 -10
  53. package/esm2022/public-api.mjs +0 -10
  54. package/lib/angular-ava.module.d.ts +0 -27
@@ -1,5 +0,0 @@
1
- import { ExchangePhaseDto, ItemNumberSchemaTierTypeDto, ItemNumberTypeDto, OriginDto, PriceRoundingModeDto, PriceTypeDto } from './ava-models';
2
- import { InvoiceType, AttachmentMimeType, VatCategory } from './invoice-models';
3
- import { ModeViewType } from './tree-mode.model';
4
- export { ModeViewType, ExchangePhaseDto, ItemNumberSchemaTierTypeDto, ItemNumberTypeDto, OriginDto, PriceRoundingModeDto, PriceTypeDto, InvoiceType, AttachmentMimeType, VatCategory };
5
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLWF2YS9zcmMvbGliL2F2YS10cmVlL3RyZWUvbW9kZWwvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLGdCQUFnQixFQUloQiwyQkFBMkIsRUFDM0IsaUJBQWlCLEVBRWpCLFNBQVMsRUFFVCxvQkFBb0IsRUFDcEIsWUFBWSxFQUliLE1BQU0sY0FBYyxDQUFDO0FBR3RCLE9BQU8sRUFDTCxXQUFXLEVBV1gsa0JBQWtCLEVBRWxCLFdBQVcsRUFXWixNQUFNLGtCQUFrQixDQUFDO0FBSTFCLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUVqRCxPQUFPLEVBVUwsWUFBWSxFQUtaLGdCQUFnQixFQUNoQiwyQkFBMkIsRUFDM0IsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxvQkFBb0IsRUFDcEIsWUFBWSxFQUVaLFdBQVcsRUFXWCxrQkFBa0IsRUFFbEIsV0FBVyxFQVdaLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBFeGNoYW5nZVBoYXNlRHRvLFxuICBFeGVjdXRpb25EZXNjcmlwdGlvbkR0byxcbiAgSUVsZW1lbnREdG8sXG4gIEl0ZW1OdW1iZXJEdG8sXG4gIEl0ZW1OdW1iZXJTY2hlbWFUaWVyVHlwZUR0byxcbiAgSXRlbU51bWJlclR5cGVEdG8sXG4gIE5vdGVUZXh0RHRvLFxuICBPcmlnaW5EdG8sXG4gIFBvc2l0aW9uRHRvLFxuICBQcmljZVJvdW5kaW5nTW9kZUR0byxcbiAgUHJpY2VUeXBlRHRvLFxuICBQcm9qZWN0RHRvLFxuICBTZXJ2aWNlU3BlY2lmaWNhdGlvbkR0byxcbiAgU2VydmljZVNwZWNpZmljYXRpb25Hcm91cER0b1xufSBmcm9tICcuL2F2YS1tb2RlbHMnO1xuaW1wb3J0IHsgQ29udGV4dE1lbnVEYXRhVHlwZSB9IGZyb20gJy4vY29udGV4dC1tZW51LWRhdGEubW9kZWwnO1xuaW1wb3J0IHsgSUZ1bmN0aW9uVmlld0xpbmUsIElWaWV3TGluZSB9IGZyb20gJy4vZnVuY3Rpb24tdmlldy1saW5lLm1vZGVsJztcbmltcG9ydCB7XG4gIEludm9pY2VUeXBlLFxuICBSZWZlcmVuY2VzLFxuICBQcmV2aW91c0ludm9pY2UsXG4gIE9yZ2FuaXphdGlvbixcbiAgUGF5ZWUsXG4gIEludm9pY2VOb3RlLFxuICBJbnZvaWNlUGVyaW9kLFxuICBJbnZvaWNlVG90YWxzLFxuICBQYXltZW50SW5zdHJ1Y3Rpb25zLFxuICBQYXltZW50TWVhbnMsXG4gIFN1cHBvcnRpbmdEb2N1bWVudCxcbiAgQXR0YWNobWVudE1pbWVUeXBlLFxuICBWYXRCcmVha2Rvd24sXG4gIFZhdENhdGVnb3J5LFxuICBJbnZvaWNlQWxsb3dhbmNlLFxuICBJbnZvaWNlQ2hhcmdlLFxuICBJbnZvaWNlTGluZUl0ZW0sXG4gIExpbmVJdGVtQWxsb3dhbmNlLFxuICBMaW5lSXRlbUNoYXJnZSxcbiAgTGluZUl0ZW1QcmljZURldGFpbCxcbiAgTGluZUl0ZW1WYXRJbmZvcm1hdGlvbixcbiAgTGluZUl0ZW1JbmZvcm1hdGlvbixcbiAgTGluZUl0ZW1BdHRyaWJ1dGUsXG4gIEludm9pY2Vcbn0gZnJvbSAnLi9pbnZvaWNlLW1vZGVscyc7XG5pbXBvcnQgeyBJVGV4dFdvcmRJbnZvaWNlIH0gZnJvbSAnLi9pbnZvaWNlLXdvcmRzLm1vZGVsJztcbmltcG9ydCB7IFNlbGVjdGVkRWxlbWVudCB9IGZyb20gJy4vc2VsZWN0aW5nLm1vZGVsJztcbmltcG9ydCB7IFRhYmxlQ29sdW1uVHlwZSB9IGZyb20gJy4vdGFibGVDb2x1bW5UeXBlJztcbmltcG9ydCB7IE1vZGVWaWV3VHlwZSB9IGZyb20gJy4vdHJlZS1tb2RlLm1vZGVsJztcblxuZXhwb3J0IHtcbiAgUHJvamVjdER0byxcbiAgU2VydmljZVNwZWNpZmljYXRpb25EdG8sXG4gIElFbGVtZW50RHRvLFxuICBQb3NpdGlvbkR0byxcbiAgRXhlY3V0aW9uRGVzY3JpcHRpb25EdG8sXG4gIE5vdGVUZXh0RHRvLFxuICBTZXJ2aWNlU3BlY2lmaWNhdGlvbkdyb3VwRHRvLFxuICBJdGVtTnVtYmVyRHRvLFxuICBTZWxlY3RlZEVsZW1lbnQsXG4gIE1vZGVWaWV3VHlwZSxcbiAgVGFibGVDb2x1bW5UeXBlLFxuICBJRnVuY3Rpb25WaWV3TGluZSxcbiAgSVZpZXdMaW5lLFxuICBDb250ZXh0TWVudURhdGFUeXBlLFxuICBFeGNoYW5nZVBoYXNlRHRvLFxuICBJdGVtTnVtYmVyU2NoZW1hVGllclR5cGVEdG8sXG4gIEl0ZW1OdW1iZXJUeXBlRHRvLFxuICBPcmlnaW5EdG8sXG4gIFByaWNlUm91bmRpbmdNb2RlRHRvLFxuICBQcmljZVR5cGVEdG8sXG4gIElUZXh0V29yZEludm9pY2UsXG4gIEludm9pY2VUeXBlLFxuICBSZWZlcmVuY2VzLFxuICBQcmV2aW91c0ludm9pY2UsXG4gIE9yZ2FuaXphdGlvbixcbiAgUGF5ZWUsXG4gIEludm9pY2VOb3RlLFxuICBJbnZvaWNlUGVyaW9kLFxuICBJbnZvaWNlVG90YWxzLFxuICBQYXltZW50SW5zdHJ1Y3Rpb25zLFxuICBQYXltZW50TWVhbnMsXG4gIFN1cHBvcnRpbmdEb2N1bWVudCxcbiAgQXR0YWNobWVudE1pbWVUeXBlLFxuICBWYXRCcmVha2Rvd24sXG4gIFZhdENhdGVnb3J5LFxuICBJbnZvaWNlQWxsb3dhbmNlLFxuICBJbnZvaWNlQ2hhcmdlLFxuICBJbnZvaWNlTGluZUl0ZW0sXG4gIExpbmVJdGVtQWxsb3dhbmNlLFxuICBMaW5lSXRlbUNoYXJnZSxcbiAgTGluZUl0ZW1QcmljZURldGFpbCxcbiAgTGluZUl0ZW1WYXRJbmZvcm1hdGlvbixcbiAgTGluZUl0ZW1JbmZvcm1hdGlvbixcbiAgTGluZUl0ZW1BdHRyaWJ1dGUsXG4gIEludm9pY2Vcbn07XG4iXX0=
@@ -1,45 +0,0 @@
1
- /** Type of the invoice */
2
- export var InvoiceType;
3
- (function (InvoiceType) {
4
- InvoiceType[InvoiceType["PartialInvoice"] = 326] = "PartialInvoice";
5
- InvoiceType[InvoiceType["CommercialInvoice"] = 380] = "CommercialInvoice";
6
- InvoiceType[InvoiceType["CreditNote"] = 381] = "CreditNote";
7
- InvoiceType[InvoiceType["CorrectedInvoice"] = 384] = "CorrectedInvoice";
8
- InvoiceType[InvoiceType["SelfBilledInvoice"] = 389] = "SelfBilledInvoice";
9
- InvoiceType[InvoiceType["PartialConstructionInvoice"] = 875] = "PartialConstructionInvoice";
10
- InvoiceType[InvoiceType["PartialFinalConstructionInvoice"] = 876] = "PartialFinalConstructionInvoice";
11
- InvoiceType[InvoiceType["FinalConstructionInvoice"] = 877] = "FinalConstructionInvoice";
12
- })(InvoiceType || (InvoiceType = {}));
13
- /** Describes a mime type of a document */
14
- export var AttachmentMimeType;
15
- (function (AttachmentMimeType) {
16
- AttachmentMimeType[AttachmentMimeType["Unknown"] = 0] = "Unknown";
17
- AttachmentMimeType[AttachmentMimeType["Pdf"] = 1] = "Pdf";
18
- AttachmentMimeType[AttachmentMimeType["Png"] = 2] = "Png";
19
- AttachmentMimeType[AttachmentMimeType["Jpeg"] = 3] = "Jpeg";
20
- AttachmentMimeType[AttachmentMimeType["Csv"] = 4] = "Csv";
21
- AttachmentMimeType[AttachmentMimeType["Excel"] = 5] = "Excel";
22
- AttachmentMimeType[AttachmentMimeType["OpenOfficeSpreadsheet"] = 6] = "OpenOfficeSpreadsheet";
23
- })(AttachmentMimeType || (AttachmentMimeType = {}));
24
- /** The category used in a VatBreakdown"/> */
25
- export var VatCategory;
26
- (function (VatCategory) {
27
- VatCategory[VatCategory["Unknown"] = 0] = "Unknown";
28
- VatCategory[VatCategory["StandardRate"] = 1] = "StandardRate";
29
- VatCategory[VatCategory["ZeroRatedGoods"] = 2] = "ZeroRatedGoods";
30
- VatCategory[VatCategory["ExemptFromTax"] = 3] = "ExemptFromTax";
31
- VatCategory[VatCategory["VatReverseCharge"] = 4] = "VatReverseCharge";
32
- VatCategory[VatCategory["VatExemptReverseCharge"] = 5] = "VatExemptReverseCharge";
33
- VatCategory[VatCategory["FreeExportItem"] = 6] = "FreeExportItem";
34
- VatCategory[VatCategory["ServicesOutsideScopeOfTaxation"] = 7] = "ServicesOutsideScopeOfTaxation";
35
- VatCategory[VatCategory["CanaryIslandsGeneralIndirectTax"] = 8] = "CanaryIslandsGeneralIndirectTax";
36
- VatCategory[VatCategory["TaxInCeutaAndMelilla"] = 9] = "TaxInCeutaAndMelilla";
37
- })(VatCategory || (VatCategory = {}));
38
- /** This enum represents the source of an invoice, e.g. from which format it was imported */
39
- export var SourceType;
40
- (function (SourceType) {
41
- SourceType[SourceType["Self"] = 0] = "Self";
42
- SourceType[SourceType["Ubl"] = 1] = "Ubl";
43
- SourceType[SourceType["Cii"] = 2] = "Cii";
44
- })(SourceType || (SourceType = {}));
45
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW52b2ljZS1tb2RlbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLWF2YS9zcmMvbGliL2F2YS10cmVlL3RyZWUvbW9kZWwvaW52b2ljZS1tb2RlbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBMkRBLDBCQUEwQjtBQUMxQixNQUFNLENBQU4sSUFBWSxXQVNYO0FBVEQsV0FBWSxXQUFXO0lBQ25CLG1FQUFvQixDQUFBO0lBQ3BCLHlFQUF1QixDQUFBO0lBQ3ZCLDJEQUFnQixDQUFBO0lBQ2hCLHVFQUFzQixDQUFBO0lBQ3RCLHlFQUF1QixDQUFBO0lBQ3ZCLDJGQUFnQyxDQUFBO0lBQ2hDLHFHQUFxQyxDQUFBO0lBQ3JDLHVGQUE4QixDQUFBO0FBQ2xDLENBQUMsRUFUVyxXQUFXLEtBQVgsV0FBVyxRQVN0QjtBQTRKRCwwQ0FBMEM7QUFDMUMsTUFBTSxDQUFOLElBQVksa0JBUVg7QUFSRCxXQUFZLGtCQUFrQjtJQUMxQixpRUFBVyxDQUFBO0lBQ1gseURBQU8sQ0FBQTtJQUNQLHlEQUFPLENBQUE7SUFDUCwyREFBUSxDQUFBO0lBQ1IseURBQU8sQ0FBQTtJQUNQLDZEQUFTLENBQUE7SUFDVCw2RkFBeUIsQ0FBQTtBQUM3QixDQUFDLEVBUlcsa0JBQWtCLEtBQWxCLGtCQUFrQixRQVE3QjtBQXFCRCw2Q0FBNkM7QUFDN0MsTUFBTSxDQUFOLElBQVksV0FXWDtBQVhELFdBQVksV0FBVztJQUNuQixtREFBVyxDQUFBO0lBQ1gsNkRBQWdCLENBQUE7SUFDaEIsaUVBQWtCLENBQUE7SUFDbEIsK0RBQWlCLENBQUE7SUFDakIscUVBQW9CLENBQUE7SUFDcEIsaUZBQTBCLENBQUE7SUFDMUIsaUVBQWtCLENBQUE7SUFDbEIsaUdBQWtDLENBQUE7SUFDbEMsbUdBQW1DLENBQUE7SUFDbkMsNkVBQXdCLENBQUE7QUFDNUIsQ0FBQyxFQVhXLFdBQVcsS0FBWCxXQUFXLFFBV3RCO0FBc0tELDRGQUE0RjtBQUM1RixNQUFNLENBQU4sSUFBWSxVQUlYO0FBSkQsV0FBWSxVQUFVO0lBQ2xCLDJDQUFRLENBQUE7SUFDUix5Q0FBTyxDQUFBO0lBQ1AseUNBQU8sQ0FBQTtBQUNYLENBQUMsRUFKVyxVQUFVLEtBQVYsVUFBVSxRQUlyQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFByb2plY3REdG8gfSBmcm9tIFwiLi9hdmEtbW9kZWxzXCI7XG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIDxhdXRvLWdlbmVyYXRlZD5cbi8vICAgICBHZW5lcmF0ZWQgdXNpbmcgdGhlIE5Td2FnIHRvb2xjaGFpbiB2MTQuMS4wLjAgKE5Kc29uU2NoZW1hIHYxMS4wLjIuMCAoTmV3dG9uc29mdC5Kc29uIHYxMy4wLjAuMCkpIChodHRwOi8vTlN3YWcub3JnKVxuLy8gPC9hdXRvLWdlbmVyYXRlZD5cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vKiB0c2xpbnQ6ZGlzYWJsZSAqL1xuLyogZXNsaW50LWRpc2FibGUgKi9cbi8vIFJlU2hhcnBlciBkaXNhYmxlIEluY29uc2lzdGVudE5hbWluZ1xuXG4vKiogVGhpcyBjbGFzcyByZXByZXNlbnRzIGFuIGludm9pY2UgKi9cbmV4cG9ydCBpbnRlcmZhY2UgSW52b2ljZSB7XG4gICAgLyoqIFRoZSBudW1iZXIgb2YgdGhlIGludm9pY2UgKi9cbiAgICBpbnZvaWNlTnVtYmVyPzogc3RyaW5nIHwgdW5kZWZpbmVkO1xuICAgIC8qKiBUaGUgZGF0ZSBvZiB0aGUgaW52b2ljZSAqL1xuICAgIGludm9pY2VEYXRlPzogRGF0ZSB8IHVuZGVmaW5lZDtcbiAgICAvKiogVGhlIHR5cGUgb2YgdGhlIGludm9pY2UgKi9cbiAgICBpbnZvaWNlVHlwZT86IEludm9pY2VUeXBlIHwgdW5kZWZpbmVkO1xuICAgIC8qKiBUaGUgdGhyZWUgbGV0dGVyIElTTyBjdXJyZW5jeSBjb2RlICovXG4gICAgY3VycmVuY3lDb2RlPzogc3RyaW5nIHwgdW5kZWZpbmVkO1xuICAgIC8qKiBVbnRpbCB3aGVuIHRoZSBwYXltZW50IGlzIGR1ZSAqL1xuICAgIHBheW1lbnREdWVEYXRlPzogRGF0ZSB8IHVuZGVmaW5lZDtcbiAgICAvKiogQW4gb2JqZWN0IGhvbGRpbmcgcmVmZXJlbmNlIHVzZWQgaW4gdGhpcyBpbnZvaWNlICovXG4gICAgcmVmZXJlbmNlcz86IFJlZmVyZW5jZXMgfCB1bmRlZmluZWQ7XG4gICAgLyoqIEEgdGV4dCBkZXNjcmlwdGlvbiBvZiBwYXltZW50IHRlcm1zLCBlLmcuIGNhc2ggZGlzY291bnRzIG9yIHBheW1lbnQgY29uZGl0aW9ucyAqL1xuICAgIHBheW1lbnRUZXJtcz86IHN0cmluZyB8IHVuZGVmaW5lZDtcbiAgICAvKiogSW4gY2FzZSBvZiBwYXJ0aWFsIG9mIGZpbmFsIGludm9pY2VzLCBpdCdzIHBvc3NpYmxlIHRvIHJlZmVyZW5jZSB0aGUgcHJldmlvdXMgaW52b2ljZSBudW1iZXJzICovXG4gICAgcHJldmlvdXNJbnZvaWNlcz86IFByZXZpb3VzSW52b2ljZVtdIHwgdW5kZWZpbmVkO1xuICAgIC8qKiBJbmZvcm1hdGlvbiBhYm91dCB0aGUgYnV5ZXIgKi9cbiAgICBidXllcj86IE9yZ2FuaXphdGlvbiB8IHVuZGVmaW5lZDtcbiAgICAvKiogSW5mb3JtYXRpb24gYWJvdXQgdGhlIHNlbGxlciAqL1xuICAgIHNlbGxlcj86IE9yZ2FuaXphdGlvbiB8IHVuZGVmaW5lZDtcbiAgICAvKiogQSBwYXllZSBpcyBzb21lb25lIHdobyByZWNlaXZlcyB0aGUgcGF5bWVudCB0aGF0IGlzIGRpZmZlcmVudCBmcm9tIHRoZSBzZWxsZXIgKi9cbiAgICBwYXllZT86IFBheWVlIHwgdW5kZWZpbmVkO1xuICAgIC8qKiBJZiBwcmVzZW50LCB0aGlzIGlzIGFuIHVuc3RydWN0dXJlZCB0ZXh0IHRoYXQgY2FuIGJlIHVzZWQgdG8gZ2l2ZSBhZGRpdGlvbmFsIGluZm9ybWF0aW9uXG5hYm91dCB0aGUgaW52b2ljZS4gKi9cbiAgICBpbnZvaWNlTm90ZXM/OiBJbnZvaWNlTm90ZVtdIHwgdW5kZWZpbmVkO1xuICAgIC8qKiBUaGUgcGVyaW9kIGR1cmluZyB3aGljaCB0aGUgc2VydmljZXMgb3IgZ29vZHMgd2VyZSBkZWxpdmVyZWQgKi9cbiAgICBpbnZvaWNlUGVyaW9kPzogSW52b2ljZVBlcmlvZCB8IHVuZGVmaW5lZDtcbiAgICAvKiogVG90YWxzIGZvciB0aGUgaW52b2ljZSAqL1xuICAgIHRvdGFscz86IEludm9pY2VUb3RhbHMgfCB1bmRlZmluZWQ7XG4gICAgLyoqIEluc3RydWN0aW9ucyBob3cgdG8gcGVyZm9ybSB0aGUgcGF5bWVudCAqL1xuICAgIHBheW1lbnRJbnN0cnVjdGlvbnM/OiBQYXltZW50SW5zdHJ1Y3Rpb25zIHwgdW5kZWZpbmVkO1xuICAgIC8qKiBBdHRhY2hlZCBkb2N1bWVudHMgdG8gdGhlIGludm9pY2UgKi9cbiAgICBkb2N1bWVudHM/OiBTdXBwb3J0aW5nRG9jdW1lbnRbXSB8IHVuZGVmaW5lZDtcbiAgICAvKiogVGhpcyBpcyB1c2VkIHRvIGxpc3QgVkFUIGJ5IGNhdGVnb3J5LCBlLmcuIGZvciBpbnZvaWNlc1xud2hlcmUgcGFydHMgYXJlIGluIGRpZmZlcmVudCBWQVQgY2F0ZWdvcmllcyAqL1xuICAgIHZhdEJyZWFrZG93bj86IFZhdEJyZWFrZG93bltdIHwgdW5kZWZpbmVkO1xuICAgIC8qKiBBbGxvd2FuY2VzIC8gZGVkdWN0aW9ucyBvbiB0aGUgaW52b2ljZSAqL1xuICAgIGFsbG93YW5jZXM/OiBJbnZvaWNlQWxsb3dhbmNlW10gfCB1bmRlZmluZWQ7XG4gICAgLyoqIENoYXJnZXMgLyBhZGRpdGlvbmFsIGNvc3RzIG9uIHRoZSBpbnZvaWNlICovXG4gICAgY2hhcmdlcz86IEludm9pY2VDaGFyZ2VbXSB8IHVuZGVmaW5lZDtcbiAgICAvKiogU2luZ2xlIGxpbmUgaXRlbXMgaW4gdGhlIGludm9pY2UgKi9cbiAgICBsaW5lSXRlbXM/OiBJbnZvaWNlTGluZUl0ZW1bXSB8IHVuZGVmaW5lZDtcbiAgICAvKiogVGhlIHNvdXJjZSB0eXBlIGZyb20gd2hpY2ggdGhlIGludm9pY2Ugd2FzIGNyZWF0ZWQgKi9cbiAgICBzb3VyY2VUeXBlPzogU291cmNlVHlwZSB8IHVuZGVmaW5lZDtcbn1cblxuLyoqIFR5cGUgb2YgdGhlIGludm9pY2UgKi9cbmV4cG9ydCBlbnVtIEludm9pY2VUeXBlIHtcbiAgICBQYXJ0aWFsSW52b2ljZSA9IDMyNixcbiAgICBDb21tZXJjaWFsSW52b2ljZSA9IDM4MCxcbiAgICBDcmVkaXROb3RlID0gMzgxLFxuICAgIENvcnJlY3RlZEludm9pY2UgPSAzODQsXG4gICAgU2VsZkJpbGxlZEludm9pY2UgPSAzODksXG4gICAgUGFydGlhbENvbnN0cnVjdGlvbkludm9pY2UgPSA4NzUsXG4gICAgUGFydGlhbEZpbmFsQ29uc3RydWN0aW9uSW52b2ljZSA9IDg3NixcbiAgICBGaW5hbENvbnN0cnVjdGlvbkludm9pY2UgPSA4NzcsXG59XG5cbi8qKiBUaGlzIGNsYXNzIGhvbGRzIHR5cGljYWwgcmVmZXJlbmNlcyB1c2VkIGluIGFuIGludm9pY2UgKi9cbmV4cG9ydCBpbnRlcmZhY2UgUmVmZXJlbmNlcyB7XG4gICAgLyoqIEFuIGludGVybmFsIHJlZmVyZW5jZSB1c2VkIGJ5IHRoZSBidXllciwgdGhpcyBjYW4gYWxzbyBiZSB1c2VkIGFzIHRoZVxuJ0xlaXR3ZWctSUQnIGluIEdlcm1hbnkgKi9cbiAgICBidXllclJlZmVyZW5jZT86IHN0cmluZyB8IHVuZGVmaW5lZDtcbiAgICAvKiogUmVmZXJlbmNlIHRvIGEgcHJvamVjdCAqL1xuICAgIHByb2plY3RSZWZlcmVuY2U/OiBzdHJpbmcgfCB1bmRlZmluZWQ7XG4gICAgLyoqIFJlZmVyZW5jZSB0byBhIGNvbnRyYWN0ICovXG4gICAgY29udHJhY3RSZWZlcmVuY2U/OiBzdHJpbmcgfCB1bmRlZmluZWQ7XG4gICAgLyoqIFJlZmVyZW5jZSB0byBhIHB1cmNoYXNlIG9yZGVyIGNyZWF0ZWQgYnkgdGhlIGJ1eWVyICovXG4gICAgcHVyY2hhc2VPcmRlclJlZmVyZW5jZT86IHN0cmluZyB8IHVuZGVmaW5lZDtcbiAgICAvKiogUmVmZXJlbmNlIHRvIGEgc2FsZXMgb3JkZXIgY3JlYXRlZCBieSB0aGUgc2VsbGVyICovXG4gICAgc2FsZXNPcmRlclJlZmVyZW5jZT86IHN0cmluZyB8IHVuZGVmaW5lZDtcbiAgICAvKiogUmVmZXJlbmNlIHRvIGEgZGVsaXZlcnkgbm90ZSAqL1xuICAgIHJlY2VpdmluZ0FkdmljZVJlZmVyZW5jZT86IHN0cmluZyB8IHVuZGVmaW5lZDtcbiAgICAvKiogUmVmZXJlbmNlIHRvIGEgZGlzcGF0Y2ggYWR2aWNlICovXG4gICAgZGlzcGF0Y2hBZHZpY2VSZWZlcmVuY2U/OiBzdHJpbmcgfCB1bmRlZmluZWQ7XG4gICAgLyoqIFJlZmVyZW5jZSB0byBhIHRlbmRlciBvciBsb3QgKi9cbiAgICB0ZW5kZXJPckxvdFJlZmVyZW5jZT86IHN0cmluZyB8IHVuZGVmaW5lZDtcbiAgICAvKiogUmVmZXJlbmNlIHRvIGEgY3VzdG9tIGl0ZW0sIGUuZy4gYSBwaG9uZSBudW1iZXIsIHBlcnNvbixcbmNvbnRyYWN0IG9yIGFueXRoaW5nIHRoYXQgd291bGQgaWRlbnRpZnkgdGhlIGludm9pY2UgaW4gdGhlIGJ1eWVyJ3Mgc3lzdGVtICovXG4gICAgaW52b2ljZWRPYmplY3RJZGVudGlmaWVyPzogc3RyaW5nIHwgdW5kZWZpbmVkO1xufVxuXG4vKiogUmVmZXJlbmNlcyB0byBwcmV2aW91cyBpbnZvaWNlcyAqL1xuZXhwb3J0IGludGVyZmFjZSBQcmV2aW91c0ludm9pY2Uge1xuICAgIC8qKiBUaGUgZGF0ZSBvZiB0aGUgcHJldmlvdXMgaW52b2ljZSAqL1xuICAgIGludm9pY2VEYXRlPzogRGF0ZSB8IHVuZGVmaW5lZDtcbiAgICAvKiogVGhlIG51bWJlciBvZiB0aGUgcHJldmlvdXMgaW52b2ljZSAqL1xuICAgIGludm9pY2VOdW1iZXI/OiBzdHJpbmcgfCB1bmRlZmluZWQ7XG59XG5cbi8qKiBSZXByZXNlbnRzIGFuIG9yZ2FuaXphdGlvbiwgZS5nLiBhIGJ1eWVyIG9yIGEgc2VsbGVyICovXG5leHBvcnQgaW50ZXJmYWNlIE9yZ2FuaXphdGlvbiB7XG4gICAgLyoqIFRoZSBpZGVudGlmaWVyIG9mIHRoZSBvcmdhbml6YXRpb24gKi9cbiAgICBpZGVudGlmaWVyPzogc3RyaW5nIHwgdW5kZWZpbmVkO1xuICAgIC8qKiBUaGUgbmFtZSBvZiB0aGUgb3JnYW5pemF0aW9uICovXG4gICAgbmFtZT86IHN0cmluZyB8IHVuZGVmaW5lZDtcbiAgICAvKiogQSByZWdpc3RyYXRpb24gbnVtYmVyLCBlLmcuIGEgSGFuZGVsc3JlZ2lzdGVybnVtbWVyIGluIEdlcm1hbnkgKi9cbiAgICByZWdpc3RyYXRpb25OdW1iZXI/OiBzdHJpbmcgfCB1bmRlZmluZWQ7XG4gICAgLyoqIFRoZSBWQVQgSUQgZm9yIHRoZSBvcmdhbml6YXRpb24gKi9cbiAgICB2YXRJZD86IHN0cmluZyB8IHVuZGVmaW5lZDtcbiAgICAvKiogVGhlIHRheCBJRCBmb3IgdGhlIG9yZ2FuaXphdGlvbiAqL1xuICAgIHRheElkPzogc3RyaW5nIHwgdW5kZWZpbmVkO1xuICAgIC8qKiBBbiBlbWFpbCBhZGRyZXNzIGZvciB0aGUgb3JnYW5pemF0aW9uICovXG4gICAgZW1haWw/OiBzdHJpbmcgfCB1bmRlZmluZWQ7XG4gICAgLyoqIFRoZSBuYW1lIG9mIGEgY29udGFjdCBwZXJzb24gKi9cbiAgICBjb250YWN0UGVyc29uTmFtZT86IHN0cmluZyB8IHVuZGVmaW5lZDtcbiAgICAvKiogVGhlIHBob25lIG9mIGEgY29udGFjdCBwZXJzb24gKi9cbiAgICBjb250YWN0UGVyc29uUGhvbmU/OiBzdHJpbmcgfCB1bmRlZmluZWQ7XG4gICAgLyoqIFRoZSBlbWFpbCBvZiBhIGNvbnRhY3QgcGVyc29uICovXG4gICAgY29udGFjdFBlcnNvbkVtYWlsPzogc3RyaW5nIHwgdW5kZWZpbmVkO1xuICAgIC8qKiBUaGUgYWRkcmVzcyBvZiB0aGUgb3JnYW5pemF0aW9uICovXG4gICAgYWRkcmVzcz86IHN0cmluZyB8IHVuZGVmaW5lZDtcbiAgICAvKiogVGhlIGNpdHkgb2YgdGhlIG9yZ2FuaXphdGlvbiAqL1xuICAgIGNpdHk/OiBzdHJpbmcgfCB1bmRlZmluZWQ7XG4gICAgLyoqIFRoZSB6aXAgY29kZSBvZiB0aGUgb3JnYW5pemF0aW9uICovXG4gICAgemlwQ29kZT86IHN0cmluZyB8IHVuZGVmaW5lZDtcbiAgICAvKiogVGhlIElTTyAzMTY2LTEgMiBsZXR0ZXIgY291bnRyeSBjb2RlICovXG4gICAgY291bnRyeUNvZGU/OiBzdHJpbmcgfCB1bmRlZmluZWQ7XG4gICAgLyoqIFRoZSBzdGF0ZSBvZiB0aGUgb3JnYW5pemF0aW9uLCBlLmcuIGEgZmVkZXJhbCBzdGF0ZSBpbiBHZXJtYW55ICovXG4gICAgc3RhdGU/OiBzdHJpbmcgfCB1bmRlZmluZWQ7XG59XG5cbi8qKiBSZXByZXNlbnRzIGEgcGF5ZWUsIG1lYW5pbmcgc29tZW9uZSB0aGF0IHJlY2VpdmVzIHRoZSBwYXltZW50ICovXG5leHBvcnQgaW50ZXJmYWNlIFBheWVlIHtcbiAgICAvKiogVGhlIG5hbWUgb2YgdGhlIHBheWVlICovXG4gICAgbmFtZT86IHN0cmluZyB8IHVuZGVmaW5lZDtcbiAgICAvKiogVGhlIGlkZW50aWZpZXIgb2YgdGhlIHBheWVlICovXG4gICAgaWRlbnRpZmllcj86IHN0cmluZyB8IHVuZGVmaW5lZDtcbiAgICAvKiogQSByZWdpc3RlcmVkIGlkZW50aWZpZXIgZm9yIHRoZSBwYXllZSwgZS5nLiBhIFZBVCBJRFxub3IgVGF4IElEICovXG4gICAgbGVnYWxSZWdpc3RyYXRpb25JZGVudGlmaWVyPzogc3RyaW5nIHwgdW5kZWZpbmVkO1xufVxuXG4vKiogUmVwcmVzZW50cyBhIG5vdGUgLyB0ZXh0IGluIGFuIGludm9pY2UgKi9cbmV4cG9ydCBpbnRlcmZhY2UgSW52b2ljZU5vdGUge1xuICAgIC8qKiBTaG9ydCBzdW1tYXJ5IC8gaGVhZGluZyAqL1xuICAgIHNob3J0VGV4dD86IHN0cmluZyB8IHVuZGVmaW5lZDtcbiAgICAvKiogRXhwbGFuYXRpb24gb2YgdGhpcyBub3RlICovXG4gICAgbG9uZ1RleHQ/OiBzdHJpbmcgfCB1bmRlZmluZWQ7XG59XG5cbi8qKiBSZXByZXNlbnRzIGFuIGludm9pY2UgcGVyaW9kIHdpdGggc3RhcnQgYW5kIGVuZCBkYXRlcyAqL1xuZXhwb3J0IGludGVyZmFjZSBJbnZvaWNlUGVyaW9kIHtcbiAgICAvKiogVGhlIHN0YXJ0IGRhdGUgKi9cbiAgICBzdGFydD86IERhdGUgfCB1bmRlZmluZWQ7XG4gICAgLyoqIFRoZSBlbmQgZGF0ZSAqL1xuICAgIGVuZD86IERhdGUgfCB1bmRlZmluZWQ7XG59XG5cbi8qKiBUb3RhbHMgZm9yIHRoZSBpbnZvaWNlICovXG5leHBvcnQgaW50ZXJmYWNlIEludm9pY2VUb3RhbHMge1xuICAgIC8qKiBTdW0gb2YgYWxsIGludm9pY2UgaXRlbXMgaW4gbmV0LiAqL1xuICAgIHRvdGFsTmV0PzogbnVtYmVyIHwgdW5kZWZpbmVkO1xuICAgIC8qKiBUaGlzIGlzIHRoZSBzdW0gb2YgYWxsIGFsbG93YW5jZXMgKGUuZy4gZGVkdWN0aW9ucyBvciB3aXRoaGVsZCB0YXgpIGluIHRoZSBpbnZvaWNlICovXG4gICAgdG90YWxBbGxvd2FuY2VzPzogbnVtYmVyIHwgdW5kZWZpbmVkO1xuICAgIC8qKiBUaGlzIGlzIHRoZSBzdW0gb2YgYWxsIGNoYXJnZXMgaW4gdGhlIGludm9pY2UsIGV4Y2VwdCBWQVQuIEZvciBleGFtcGxlLCBsYXRlXG5mZWVzIG9yIHN1cmNoYXJnZXMuICovXG4gICAgdG90YWxDaGFyZ2VzPzogbnVtYmVyIHwgdW5kZWZpbmVkO1xuICAgIC8qKiBUaGlzIGlzIHRoZSB0b3RhbCBuZXQgdmFsdWUgb2YgdGhlIGludm9pY2UgYWZ0ZXIgYXBwbGllZCBhbGxvd2FuY2VzIGFuZCBjaGFyZ2VzLFxubWVhbmluZyB0aGUgYWN0dWFsIG5ldCBzdW0gdG8gYmUgcGFpZC4gKi9cbiAgICB0b3RhbEFmdGVyRGVkdWN0aW9ucz86IG51bWJlciB8IHVuZGVmaW5lZDtcbiAgICAvKiogVGhlIHRvdGFsIGFtb3VudCBvZiBWQVQgaW4gdGhlIGludm9pY2UuICovXG4gICAgdG90YWxWYXRBbW91bnQ/OiBudW1iZXIgfCB1bmRlZmluZWQ7XG4gICAgLyoqIFRoZSB0b3RhbCBncm9zcyBhbW91bnQgb2YgdGhlIGludm9pY2UsIGluY2x1ZGluZyBhbGwgdGF4ZXMgYW5kIGRlZHVjdGlvbnMuICovXG4gICAgdG90YWxHcm9zcz86IG51bWJlciB8IHVuZGVmaW5lZDtcbiAgICAvKiogVGhlIHRvdGFsIGFtb3VudCB0aGF0IGhhcyBhbHJlYWR5IGJlZW4gcGFpZCBmb3IgdGhpcyBpbnZvaWNlLCBlLmcuIHVzZWQgd2hlblxucHJldmlvdXMgaW52b2ljZSBzdW1zIGFyZSBpbmNsdWRlZCBoZXJlIHRoYXQgaGF2ZSBhbHJlYWR5IGJlZW4gcGFpZC4gKi9cbiAgICBhbHJlYWR5UGFpZFRvdGFsPzogbnVtYmVyIHwgdW5kZWZpbmVkO1xuICAgIC8qKiBUaGUgc3VtIHRoYXQgbmVlZHMgdG8gYmUgcGFpZCBmb3IgdGhpcyBpbnZvaWNlLiBUaGlzIGlzIHRoZSB0b3RhbCBncm9zcyBhbW91bnRcbm1pbnVzIHRoZSBhbHJlYWR5IHBhaWQgYW1vdW50LiAqL1xuICAgIHRvdGFsVG9CZVBhaWQ/OiBudW1iZXIgfCB1bmRlZmluZWQ7XG59XG5cbi8qKiBJbnN0cnVjdGlvbnMgaG93IHBheW1lbnQgZm9yIGFuIGludm9pY2Ugc2hvdWxkIGJlIHByb3ZpZGVkLiAqL1xuZXhwb3J0IGludGVyZmFjZSBQYXltZW50SW5zdHJ1Y3Rpb25zIHtcbiAgICAvKiogQWRkaXRpb25hbCB0ZXh0IHRvIGRlc2NyaWJlIHRoZSBwYXltZW50IGluc3RydWN0aW9ucy4gKi9cbiAgICBkZXNjcmlwdGlvbj86IHN0cmluZyB8IHVuZGVmaW5lZDtcbiAgICAvKiogVGhpcyBzaG91bGQgYmUgYSBjb2RlIGFjY29yZGluZyB0byBVTi9FQ0UgNDQ2MVxudG8gaWRlbnRpZnkgdGhlIHR5cGUgb2YgcGF5bWVudC4gRm9yIGV4YW1wbGUsIGNvZGUgXCI1OFwiIG1lYW5zIFNFUEEgQ3JlZGl0IFRyYW5zZmVyLFxuYW5kIGNvZGUgXCIzMFwiIG1lYW5zIG5vbi1TRVBBIENyZWRpdCBUcmFuc2Zlci4gKi9cbiAgICBwYXltZW50VHlwZUNvZGU/OiBzdHJpbmcgfCB1bmRlZmluZWQ7XG4gICAgLyoqIEEgbGlzdCBvZiBwYXltZW50IG1lYW5zIHRoYXQgY2FuIGJlIHVzZWQgdG8gcGF5IHRoZSBpbnZvaWNlLiAqL1xuICAgIHBheW1lbnRNZWFucz86IFBheW1lbnRNZWFuc1tdIHwgdW5kZWZpbmVkO1xufVxuXG4vKiogUmVwcmVzZW50cyBhIHBheW1lbnQgbWVhbnMgZm9yIGFuIGludm9pY2UgKi9cbmV4cG9ydCBpbnRlcmZhY2UgUGF5bWVudE1lYW5zIHtcbiAgICAvKiogVGhpcyBpcyB0eXBpY2FsbHkgdGhlIElCQU4gb3IgYWNjb3VudCBudW1iZXIgKi9cbiAgICBhY2NvdW50SWRlbnRpZmllcj86IHN0cmluZyB8IHVuZGVmaW5lZDtcbiAgICAvKiogVGhlIG5hbWUgZm9yIHRoZSBhY2NvdW50LCB0eXBpY2FsbHkgdGhlIG5hbWUgb2YgdGhlIG93bmVyIGZvclxuYSBiYW5rIGFjY291bnQuICovXG4gICAgYWNjb3VudE5hbWU/OiBzdHJpbmcgfCB1bmRlZmluZWQ7XG4gICAgLyoqIFRoaXMgY2FuIGJlIHRoZSBCSUMgKi9cbiAgICBzZXJ2aWNlUHJvdmlkZXJJZGVudGlmaWVyPzogc3RyaW5nIHwgdW5kZWZpbmVkO1xufVxuXG4vKiogUmVwcmVzZW50cyBhIGRvY3VtZW50IC8gYXR0YWNobWVudCB0aGF0IGlzIGluY2x1ZGVkIHdpdGggdGhlIGludm9pY2UgKi9cbmV4cG9ydCBpbnRlcmZhY2UgU3VwcG9ydGluZ0RvY3VtZW50IHtcbiAgICAvKiogVGhpcyBpcyB0eXBpY2FsbHkgYW4gaWQgb3IgYSBuYW1lICovXG4gICAgZG9jdW1lbnRSZWZlcmVuY2U/OiBzdHJpbmcgfCB1bmRlZmluZWQ7XG4gICAgLyoqIEEgZGVzY3JpcHRpb24gb2YgdGhlIGRvY3VtZW50ICovXG4gICAgZGVzY3JpcHRpb24/OiBzdHJpbmcgfCB1bmRlZmluZWQ7XG4gICAgLyoqIEEgbGluayB0byB0aGUgZG9jdW1lbnQgaW4gY2FzZSB0aGlzIGlzIGFuIGV4dGVybmFsIHJlZmVyZW5jZSAqL1xuICAgIGV4dGVybmFsRG9jdW1lbnRVcmw/OiBzdHJpbmcgfCB1bmRlZmluZWQ7XG4gICAgLyoqIFRoZSBkb2N1bWVudCBpbiBiYXNlNjQgZW5jb2RlZCBmb3JtIGFzIGJpbmFyeSBkYXRhICovXG4gICAgZG9jdW1lbnRCYXNlNjQ/OiBzdHJpbmcgfCB1bmRlZmluZWQ7XG4gICAgLyoqIFRoaXMgc2hvdWxkIGJlIHByZXNlbnQgaWYgRG9jdW1lbnRCYXNlNjQgaXMgc2V0LiAqL1xuICAgIGZpbGVOYW1lPzogc3RyaW5nIHwgdW5kZWZpbmVkO1xuICAgIC8qKiBUaGUgdHlwZSBvZiB0aGUgZG9jdW1lbnQgKi9cbiAgICBkb2N1bWVudE1pbWVUeXBlPzogQXR0YWNobWVudE1pbWVUeXBlIHwgdW5kZWZpbmVkO1xufVxuXG4vKiogRGVzY3JpYmVzIGEgbWltZSB0eXBlIG9mIGEgZG9jdW1lbnQgKi9cbmV4cG9ydCBlbnVtIEF0dGFjaG1lbnRNaW1lVHlwZSB7XG4gICAgVW5rbm93biA9IDAsXG4gICAgUGRmID0gMSxcbiAgICBQbmcgPSAyLFxuICAgIEpwZWcgPSAzLFxuICAgIENzdiA9IDQsXG4gICAgRXhjZWwgPSA1LFxuICAgIE9wZW5PZmZpY2VTcHJlYWRzaGVldCA9IDYsXG59XG5cbi8qKiBEZXNjcmliZXMgdGhlIFZBVCBicmVha2Rvd24gZm9yIGFuIGludm9pY2UgaW4gYSBzaW5nbGUgVkFUIGNhdGVnb3J5ICovXG5leHBvcnQgaW50ZXJmYWNlIFZhdEJyZWFrZG93biB7XG4gICAgLyoqIFRoZSB0b3RhbCBuZXQgYW1vdW50IG9mIHRoaXMgVkFUIGNhdGVnb3J5ICovXG4gICAgbmV0VGF4YWJsZUFtb3VudD86IG51bWJlciB8IHVuZGVmaW5lZDtcbiAgICAvKiogVGhlIHRvdGFsIFZBVCAqL1xuICAgIHZhdEFtb3VudD86IG51bWJlciB8IHVuZGVmaW5lZDtcbiAgICAvKiogVGhlIGNhdGVnb3J5IG9mIHRoZSBWQVQgKi9cbiAgICB2YXRDYXRlZ29yeT86IFZhdENhdGVnb3J5IHwgdW5kZWZpbmVkO1xuICAgIC8qKiBUaGUgYWN0dWFsIHRheCByYXRlIGFzIGEgZGVjaW1hbCB2YWx1ZSxcbmUuZy4gMTklIHdvdWxkIGJlIDAuMTkgKi9cbiAgICB0YXhSYXRlPzogbnVtYmVyIHwgdW5kZWZpbmVkO1xuICAgIC8qKiBJZiB0aGUgVkFUIGlzIGV4ZW1wdCwgdGhlcmUgc2hvdWxkIGJlIGEgZGVzY3JpcHRpb24gaGVyZS5cbkZvciBleGFtcGxlLCBpbiByZXZlcnNlIGNoYXJnZSBzY2VuYXJpb3MsIHRoaXMgdGV4dFxuc2hvdWxkIGNvbnRhaW4gYSByZWZlcmVuY2UgdG8gXCJSZXZlcnNlIGNoYXJnZSBhY2NvcmRpbmcgdG8gLi4uXCIuICovXG4gICAgdmF0RXhlbXB0aW9uUmVhc29uVGV4dD86IHN0cmluZyB8IHVuZGVmaW5lZDtcbiAgICAvKiogQSBjb2RlIGZyb20gdGhlIFZBVCBleGVtcHRpb24gcmVhc29uIGNvZGUgbGlzdChWQVRFWCnigJwgKi9cbiAgICB2YXRFeGVtcHRpb25SZWFzb25Db2RlPzogc3RyaW5nIHwgdW5kZWZpbmVkO1xufVxuXG4vKiogVGhlIGNhdGVnb3J5IHVzZWQgaW4gYSBWYXRCcmVha2Rvd25cIi8+ICovXG5leHBvcnQgZW51bSBWYXRDYXRlZ29yeSB7XG4gICAgVW5rbm93biA9IDAsXG4gICAgU3RhbmRhcmRSYXRlID0gMSxcbiAgICBaZXJvUmF0ZWRHb29kcyA9IDIsXG4gICAgRXhlbXB0RnJvbVRheCA9IDMsXG4gICAgVmF0UmV2ZXJzZUNoYXJnZSA9IDQsXG4gICAgVmF0RXhlbXB0UmV2ZXJzZUNoYXJnZSA9IDUsXG4gICAgRnJlZUV4cG9ydEl0ZW0gPSA2LFxuICAgIFNlcnZpY2VzT3V0c2lkZVNjb3BlT2ZUYXhhdGlvbiA9IDcsXG4gICAgQ2FuYXJ5SXNsYW5kc0dlbmVyYWxJbmRpcmVjdFRheCA9IDgsXG4gICAgVGF4SW5DZXV0YUFuZE1lbGlsbGEgPSA5LFxufVxuXG4vKiogVGhpcyBkZXNjcmliZXMgYW4gYWxsb3dhbmNlIGluIGFuIGludm9pY2UsIHdoaWNoIGlzIGEgZGVkdWN0aW9uIGZyb20gdGhlIHRvdGFsIGFtb3VudCAqL1xuZXhwb3J0IGludGVyZmFjZSBJbnZvaWNlQWxsb3dhbmNlIHtcbiAgICAvKiogVGhlIG5ldCBhbW91bnQgb2YgdGhlIGFsbG93YW5jZSAqL1xuICAgIG5ldEFtb3VudD86IG51bWJlciB8IHVuZGVmaW5lZDtcbiAgICAvKiogSWYgdGhpcyBpcyBhIHJlbGF0aXZlIC8gcGVyY2VudGFnZSBhbGxvd2FuY2UsIHRoaXMgc2hvdWxkIGJlIHNldFxuYW5kIGdpdmUgdGhlIGJhc2UgYW1vdW50IHRoYXQgaXMgYmVpbmcgdXNlZCBmb3IgdGhlIGNhbGN1bGF0aW9uICovXG4gICAgcmVsYXRpdmVBbGxvd2FuY2VCYXNlQW1vdW50PzogbnVtYmVyIHwgdW5kZWZpbmVkO1xuICAgIC8qKiBJZiB0aGlzIGlzIGEgcmVsYXRpdmUgLyBwZXJjZW50YWdlIGFsbG93YW5jZSwgdGhpcyBzaG91bGQgYmUgc2V0XG5hbmQgYmUgZ2l2ZW4gaW4gZGVjaW1hbCByZXByZXNlbnRhdGlvbiwgbWVhbmluZyAxOSUgd291bGQgYmUgMC4xOSAqL1xuICAgIHJlbGF0aXZlQWxsb3dhbmNlUGVyY2VudGFnZT86IG51bWJlciB8IHVuZGVmaW5lZDtcbiAgICAvKiogVGhlIFZBVCBjYXRlZ29yeSBmb3IgdGhlIGFsbG93YW5jZSAqL1xuICAgIHZhdENhdGVnb3J5PzogVmF0Q2F0ZWdvcnkgfCB1bmRlZmluZWQ7XG4gICAgLyoqIFRoZSBhY3R1YWwgdGF4IHJhdGUgYXMgYSBkZWNpbWFsIHZhbHVlLFxubWVhbmluZyAxOSUgd291bGQgYmUgMC4xOSAqL1xuICAgIHZhdFJhdGU/OiBudW1iZXIgfCB1bmRlZmluZWQ7XG4gICAgLyoqIEEgZGVzY3JpcHRpb24gb2YgdGhlIGFsbG93YW5jZS4gKi9cbiAgICByZWFzb24/OiBzdHJpbmcgfCB1bmRlZmluZWQ7XG4gICAgLyoqIEEgcmVhc29uIGNvZGUgZm9yIHRoZSBhbGxvd2FuY2UgYWNjb3JkaW5nIHRvIFVOVERJRCA1MTg5LiAqL1xuICAgIHJlYXNvbkNvZGU/OiBzdHJpbmcgfCB1bmRlZmluZWQ7XG59XG5cbi8qKiBUaGlzIGRlc2NyaWJlcyBhbiBjaGFyZ2UgaW4gYW4gaW52b2ljZSwgd2hpY2ggaXMgYSBzdXJjaGFyZ2UgdG8gdGhlIHRvdGFsIGFtb3VudCAqL1xuZXhwb3J0IGludGVyZmFjZSBJbnZvaWNlQ2hhcmdlIHtcbiAgICAvKiogVGhlIG5ldCBhbW91bnQgb2YgdGhlIGNoYXJnZSAqL1xuICAgIG5ldEFtb3VudD86IG51bWJlciB8IHVuZGVmaW5lZDtcbiAgICAvKiogSWYgdGhpcyBpcyBhIHJlbGF0aXZlIC8gcGVyY2VudGFnZSBjaGFyZ2UsIHRoaXMgc2hvdWxkIGJlIHNldFxuYW5kIGdpdmUgdGhlIGJhc2UgYW1vdW50IHRoYXQgaXMgYmVpbmcgdXNlZCBmb3IgdGhlIGNhbGN1bGF0aW9uICovXG4gICAgcmVsYXRpdmVDaGFyZ2VCYXNlQW1vdW50PzogbnVtYmVyIHwgdW5kZWZpbmVkO1xuICAgIC8qKiBJZiB0aGlzIGlzIGEgcmVsYXRpdmUgLyBwZXJjZW50YWdlIGNoYXJnZSwgdGhpcyBzaG91bGQgYmUgc2V0XG5hbmQgYmUgZ2l2ZW4gaW4gZGVjaW1hbCByZXByZXNlbnRhdGlvbiwgbWVhbmluZyAxOSUgd291bGQgYmUgMC4xOSAqL1xuICAgIHJlbGF0aXZlQ2hhcmdlUGVyY2VudGFnZT86IG51bWJlciB8IHVuZGVmaW5lZDtcbiAgICAvKiogVGhlIFZBVCBjYXRlZ29yeSBmb3IgdGhlIGNoYXJnZSAqL1xuICAgIHZhdENhdGVnb3J5PzogVmF0Q2F0ZWdvcnkgfCB1bmRlZmluZWQ7XG4gICAgLyoqIFRoZSBhY3R1YWwgdGF4IHJhdGUgYXMgYSBkZWNpbWFsIHZhbHVlLFxubWVhbmluZyAxOSUgd291bGQgYmUgMC4xOSAqL1xuICAgIHZhdFJhdGU/OiBudW1iZXIgfCB1bmRlZmluZWQ7XG4gICAgLyoqIEEgZGVzY3JpcHRpb24gb2YgdGhlIGNoYXJnZS4gKi9cbiAgICByZWFzb24/OiBzdHJpbmcgfCB1bmRlZmluZWQ7XG4gICAgLyoqIEEgcmVhc29uIGNvZGUgZm9yIHRoZSBjaGFyZ2UgYWNjb3JkaW5nIHRvIFVOVERJRCA3MTYxLiAqL1xuICAgIHJlYXNvbkNvZGU/OiBzdHJpbmcgfCB1bmRlZmluZWQ7XG59XG5cbi8qKiBSZXByZXNlbnRzIGEgc2luZ2xlIGludm9pY2UgbGluZSBpdGVtICovXG5leHBvcnQgaW50ZXJmYWNlIEludm9pY2VMaW5lSXRlbSB7XG4gICAgLyoqIEFuIHVuaXF1ZSBpZGVudGlmaWVyIGZvciB0aGUgbGluZSBpdGVtICovXG4gICAgaWRlbnRpZmllcj86IHN0cmluZyB8IHVuZGVmaW5lZDtcbiAgICAvKiogQW4gdW5zdHJ1Y3R1cmVkIG5vdGUgdG8gY2xhc3NpZnkgbGluZSBpdGVtcyAqL1xuICAgIG5vdGU/OiBzdHJpbmcgfCB1bmRlZmluZWQ7XG4gICAgLyoqIEEgc2VsbGVyLWRlZmluZWQgb2JqZWN0IGlkZW50aWZpZXIgZm9yIHRoaXMgbGluZSBpdGVtLFxubWVhbmluZyBhbiBpZGVudGlmaWVyIGZvciB0aGUgYWN0dWFsIGxpbmUuIFRoaXMgY291bGQgYmVcbmEgbnVtYmVyaW5nIHNlcXVlbmNlIG9yIGEgcmVmZXJlbmNlIHRvIGEgcHJvZHVjdC4gKi9cbiAgICBvYmplY3RJZGVudGlmaWVyPzogc3RyaW5nIHwgdW5kZWZpbmVkO1xuICAgIC8qKiBUaGUgYWN0dWFsIGludm9pY2VkIHF1YW50aXR5IG9mIHRoZSBsaW5lIGl0ZW0gKi9cbiAgICBxdWFudGl0eT86IG51bWJlciB8IHVuZGVmaW5lZDtcbiAgICAvKiogQSBjb2RlIGZvciB0aGUgdW5pdCBvZiB0aGUgcXVhbnRpdHkuIFRoaXMgc2hvdWxkIGJlIGEgY29kZSBhcyBkZWZpbmVkXG5pbiBVTi9FQ0UgUmVjb21tZW5kYXRpb24gTm8uIDIwIOKAnkNvZGVzIGZvciBVbml0cyBvZiBNZWFzdXJlIFVzZWQgaW4gXG5JbnRlcm5hdGlvbmFsIFRyYWRl4oCcIHVuZCBVTi9FQ0UgUmVjb21tZW5kYXRpb24gTm8gMjEg4oCeQ29kZXMgZm9yIFBhc3NlbmdlcnMsXG5UeXBlcyBvZiBDYXJnbywgUGFja2FnZXMgYW5kIFBhY2thZ2luZyBNYXRlcmlhbHMod2l0aCBDb21wbGVtZW50YXJ5IENvZGVzIGZvciBQYWNrYWdlIE5hbWVzKSAqL1xuICAgIHVuaXRDb2RlPzogc3RyaW5nIHwgdW5kZWZpbmVkO1xuICAgIC8qKiBUaGUgbmV0IGFtb3VudCBmb3IgdGhpcyBsaW5lIGl0ZW0gKi9cbiAgICBuZXRBbW91bnQ/OiBudW1iZXIgfCB1bmRlZmluZWQ7XG4gICAgLyoqIEEgcmVmZXJlbmNlIHRvIGFuIGl0ZW0gaW4gdGhlIGJ1eWVycyBwdXJhY2hhc2Ugb3JkZXIgKi9cbiAgICBwdXJjaGFzZU9yZGVyUmVmZXJlbmNlPzogc3RyaW5nIHwgdW5kZWZpbmVkO1xuICAgIC8qKiBJbmZvcm1hdGlvbiBhYm91dCB0aGUgaW52b2ljZSBwZXJpb2QgZm9yIHRoaXMgbGluZSBpdGVtLiAqL1xuICAgIGxpbmVJdGVtUGVyaW9kPzogSW52b2ljZVBlcmlvZCB8IHVuZGVmaW5lZDtcbiAgICAvKiogQWxsb3dhbmNlcyBzcGVjaWZpYyB0byB0aGlzIGxpbmUgaXRlbSAqL1xuICAgIGFsbG93YW5jZXM/OiBMaW5lSXRlbUFsbG93YW5jZVtdIHwgdW5kZWZpbmVkO1xuICAgIC8qKiBjaGFyZ2VzIHNwZWNpZmljIHRvIHRoaXMgbGluZSBpdGVtICovXG4gICAgY2hhcmdlcz86IExpbmVJdGVtQ2hhcmdlW10gfCB1bmRlZmluZWQ7XG4gICAgLyoqIFByaWNlIGRldGFpbHMgZm9yIHRoaXMgbGluZSBpdGVtLiAqL1xuICAgIHByaWNlRGV0YWlscz86IExpbmVJdGVtUHJpY2VEZXRhaWwgfCB1bmRlZmluZWQ7XG4gICAgLyoqIFZBVCBpbmZvcm1hdGlvbiBmb3IgdGhpcyBsaW5lIGl0ZW0gKi9cbiAgICB2YXRJbmZvcm1hdGlvbj86IExpbmVJdGVtVmF0SW5mb3JtYXRpb25bXSB8IHVuZGVmaW5lZDtcbiAgICAvKiogSW5mb3JtYXRpb24gYWJvdXQgdGhpcyBsaW5lIGl0ZW0gKi9cbiAgICBpdGVtSW5mb3JtYXRpb24/OiBMaW5lSXRlbUluZm9ybWF0aW9uIHwgdW5kZWZpbmVkO1xuICAgIC8qKiBMaW5lIGl0ZW1zIGNhbiBiZSBuZXN0ZWQsIGluIHdoaWNoIGNhc2UgdGhpcyBwcm9wZXJ0eSBob2xkcyB0aGUgc3ViIGl0ZW1zICovXG4gICAgc3ViSXRlbXM/OiBJbnZvaWNlTGluZUl0ZW1bXSB8IHVuZGVmaW5lZDtcbn1cblxuLyoqIEFsbG93YW5jZSBmb3IgYSBzaW5nbGUgbGluZSBpdGVtICovXG5leHBvcnQgaW50ZXJmYWNlIExpbmVJdGVtQWxsb3dhbmNlIHtcbiAgICAvKiogVGhlIG5ldCBhbW91bnQgb2YgdGhlIGFsbG93YW5jZSAqL1xuICAgIG5ldEFtb3VudD86IG51bWJlciB8IHVuZGVmaW5lZDtcbiAgICAvKiogSWYgdGhpcyBpcyBhIHJlbGF0aXZlIC8gcGVyY2VudGFnZSBhbGxvd2FuY2UsIHRoaXMgc2hvdWxkIGJlIHNldFxuYW5kIGdpdmUgdGhlIGJhc2UgYW1vdW50IHRoYXQgaXMgYmVpbmcgdXNlZCBmb3IgdGhlIGNhbGN1bGF0aW9uICovXG4gICAgcmVsYXRpdmVBbGxvd2FuY2VCYXNlQW1vdW50PzogbnVtYmVyIHwgdW5kZWZpbmVkO1xuICAgIC8qKiBJZiB0aGlzIGlzIGEgcmVsYXRpdmUgLyBwZXJjZW50YWdlIGFsbG93YW5jZSwgdGhpcyBzaG91bGQgYmUgc2V0XG5hbmQgYmUgZ2l2ZW4gaW4gZGVjaW1hbCByZXByZXNlbnRhdGlvbiwgbWVhbmluZyAxOSUgd291bGQgYmUgMC4xOSAqL1xuICAgIHJlbGF0aXZlQWxsb3dhbmNlUGVyY2VudGFnZT86IG51bWJlciB8IHVuZGVmaW5lZDtcbiAgICAvKiogQSBkZXNjcmlwdGlvbiBvZiB0aGUgYWxsb3dhbmNlLiAqL1xuICAgIHJlYXNvbj86IHN0cmluZyB8IHVuZGVmaW5lZDtcbiAgICAvKiogQSByZWFzb24gY29kZSBmb3IgdGhlIGFsbG93YW5jZSBhY2NvcmRpbmcgdG8gVU5URElEIDUxODkuICovXG4gICAgcmVhc29uQ29kZT86IHN0cmluZyB8IHVuZGVmaW5lZDtcbn1cblxuLyoqIENoYXJnZSBmb3IgYSBzaW5nbGUgbGluZSBpdGVtICovXG5leHBvcnQgaW50ZXJmYWNlIExpbmVJdGVtQ2hhcmdlIHtcbiAgICAvKiogVGhlIG5ldCBhbW91bnQgb2YgdGhlIGNoYXJnZSAqL1xuICAgIG5ldEFtb3VudD86IG51bWJlciB8IHVuZGVmaW5lZDtcbiAgICAvKiogSWYgdGhpcyBpcyBhIHJlbGF0aXZlIC8gcGVyY2VudGFnZSBjaGFyZ2UsIHRoaXMgc2hvdWxkIGJlIHNldFxuYW5kIGdpdmUgdGhlIGJhc2UgYW1vdW50IHRoYXQgaXMgYmVpbmcgdXNlZCBmb3IgdGhlIGNhbGN1bGF0aW9uICovXG4gICAgcmVsYXRpdmVDaGFyZ2VCYXNlQW1vdW50PzogbnVtYmVyIHwgdW5kZWZpbmVkO1xuICAgIC8qKiBJZiB0aGlzIGlzIGEgcmVsYXRpdmUgLyBwZXJjZW50YWdlIGNoYXJnZSwgdGhpcyBzaG91bGQgYmUgc2V0XG5hbmQgYmUgZ2l2ZW4gaW4gZGVjaW1hbCByZXByZXNlbnRhdGlvbiwgbWVhbmluZyAxOSUgd291bGQgYmUgMC4xOSAqL1xuICAgIHJlbGF0aXZlQ2hhcmdlUGVyY2VudGFnZT86IG51bWJlciB8IHVuZGVmaW5lZDtcbiAgICAvKiogQSBkZXNjcmlwdGlvbiBvZiB0aGUgY2hhcmdlLiAqL1xuICAgIHJlYXNvbj86IHN0cmluZyB8IHVuZGVmaW5lZDtcbiAgICAvKiogQSByZWFzb24gY29kZSBmb3IgdGhlIGNoYXJnZSBhY2NvcmRpbmcgdG8gVU5URElEIDcxNjEuICovXG4gICAgcmVhc29uQ29kZT86IHN0cmluZyB8IHVuZGVmaW5lZDtcbn1cblxuLyoqIFByaWNlIGRldGFpbHMgYWJvdXQgYSBsaW5lIGl0ZW0gKi9cbmV4cG9ydCBpbnRlcmZhY2UgTGluZUl0ZW1QcmljZURldGFpbCB7XG4gICAgLyoqIFRoZSBuZXQgcHJpY2Ugb2YgdGhpcyBsaW5lIGl0ZW0gKi9cbiAgICBuZXRQcmljZT86IG51bWJlciB8IHVuZGVmaW5lZDtcbiAgICAvKiogQSBkaXNjb3VudCBmb3IgdGhpcyBsaW5lIGl0ZW0sIGdpdmVuIGFzIGFuIGFic29sdXRlIHZhbHVlLiBJdCBpcyBlc3NlbnRpYWxseSB0aGUgZGlmZmVyZW5jZSBiZXR3ZWVuIE5ldFByaWNlIChvciB0aGUgbGlzdCBwcmljZSlcbmFuZCB0aGUgYWN0dWFsIGludm9pY2VkIHByaWNlIEdyb3NzUHJpY2UuICovXG4gICAgYWJzb2x1dGVEaXNjb3VudFBlckl0ZW0/OiBudW1iZXIgfCB1bmRlZmluZWQ7XG4gICAgLyoqIFRoZSBncm9zcyBwcmljZSBvZiB0aGlzIGxpbmUgaXRlbSwgbWVhbmluZyB0aGUgcHJpY2Ugd2l0aG91dCB0YXhlc1xudGhhdCB3aWxsIGJlIGludm9pY2VkICovXG4gICAgZ3Jvc3NQcmljZT86IG51bWJlciB8IHVuZGVmaW5lZDtcbiAgICAvKiogVGhlIHF1YW50aXR5IGZvciB3aGljaCB0aGlzIHByaWNlIGlzIHZhbGlkICovXG4gICAgYmFzZVF1YW50aXR5PzogbnVtYmVyIHwgdW5kZWZpbmVkO1xuICAgIC8qKiBBIGNvZGUgcmVwcmVzZW50aW5nIHRoZSB1bml0IGZvciB0aGUgYmFzZSBxdWFudGl0eSAqL1xuICAgIGJhc2VRdWFudGl0eVVuaXRDb2RlPzogc3RyaW5nIHwgdW5kZWZpbmVkO1xufVxuXG4vKiogVkFUIGluZm9ybWF0aW9uIGZvciBhIHNpbmdsZSBsaW5lIGl0ZW0gKi9cbmV4cG9ydCBpbnRlcmZhY2UgTGluZUl0ZW1WYXRJbmZvcm1hdGlvbiB7XG4gICAgLyoqIFRoZSBWQVQgY2F0ZWdvcnkgZm9yIHRoZSBjaGFyZ2UgKi9cbiAgICB2YXRDYXRlZ29yeT86IFZhdENhdGVnb3J5IHwgdW5kZWZpbmVkO1xuICAgIC8qKiBUaGUgYWN0dWFsIHRheCByYXRlIGFzIGEgZGVjaW1hbCB2YWx1ZSxcbm1lYW5pbmcgMTklIHdvdWxkIGJlIDAuMTkgKi9cbiAgICB2YXRSYXRlPzogbnVtYmVyIHwgdW5kZWZpbmVkO1xufVxuXG4vKiogSW5mb3JtYXRpb24gYWJvdXQgYSBzaW5nbGUgbGluZSBpdGVtICovXG5leHBvcnQgaW50ZXJmYWNlIExpbmVJdGVtSW5mb3JtYXRpb24ge1xuICAgIC8qKiBBIG5hbWUgZm9yIHRoZSBsaW5lIGl0ZW0gKi9cbiAgICBuYW1lPzogc3RyaW5nIHwgdW5kZWZpbmVkO1xuICAgIC8qKiBBIGRlc2NyaXB0aW9uIGZvciB0aGUgbGluZSBpdGVtICovXG4gICAgZGVzY3JpcHRpb24/OiBzdHJpbmcgfCB1bmRlZmluZWQ7XG4gICAgLyoqIEFuIGlkZW50aWZpZXIgYXNzaWduZWQgYnkgdGhlIHNlbGxlciwgZS5nLiBhbiBpbnRlcm5hbCBhcnRpY2xlIG51bWJlciAqL1xuICAgIHNlbGxlcklkZW50aWZpZXI/OiBzdHJpbmcgfCB1bmRlZmluZWQ7XG4gICAgLyoqIEFuIGlkZW50aWZpZXIgYXNzaWduZWQgYnkgdGhlIGJ1eWVyLCBlLmcuIGFuIGludGVybmFsIGFydGljbGUgbnVtYmVyICovXG4gICAgYnV5ZXJJZGVudGlmaWVyPzogc3RyaW5nIHwgdW5kZWZpbmVkO1xuICAgIC8qKiBBIHN0YW5kYXJkIGlkZW50aWZpZXIgZm9yIHRoZSBsaW5lIGl0ZW0sIGUuZy4gYW4gRUFOIG9yIGEgR1RJTiAqL1xuICAgIHN0YW5kYXJkSWRlbnRpZmllcj86IHN0cmluZyB8IHVuZGVmaW5lZDtcbiAgICAvKiogQSBsaXN0IG9mIGNsYXNzaWZpY2F0aW9uIGlkZW50aWZpZXJzIGZvciB0aGUgbGluZSBpdGVtICovXG4gICAgY2xhc3NpZmljYXRpb25JZGVudGlmaWVycz86IHN0cmluZ1tdIHwgdW5kZWZpbmVkO1xuICAgIC8qKiBUaGUgb3JpZ2luIGNvdW50cnkgY29kZSBhY2NvcmRpbmcgdG8gSVNPIDMxNjYtMSBpbiAyIGxldHRlciBmb3JtYXQgKi9cbiAgICBjb3VudHJ5T2ZPcmlnaW4/OiBzdHJpbmcgfCB1bmRlZmluZWQ7XG4gICAgLyoqIE9wdGlvbmFsIGFkZGl0aW9uYWwgYXR0cmlidXRlcyBmb3IgdGhpcyBsaW5lIGl0ZW0gKi9cbiAgICBhdHRyaWJ1dGVzPzogTGluZUl0ZW1BdHRyaWJ1dGVbXSB8IHVuZGVmaW5lZDtcbn1cblxuLyoqIEEga2V5LXZhbHVlIHBhaXIgZm9yIGFkZGl0aW9uYWwgaW5mb3JtYXRpb24gKi9cbmV4cG9ydCBpbnRlcmZhY2UgTGluZUl0ZW1BdHRyaWJ1dGUge1xuICAgIC8qKiBUaGUga2V5IC8gbmFtZSBvZiB0aGUgYXR0cmlidXRlICovXG4gICAgbmFtZT86IHN0cmluZyB8IHVuZGVmaW5lZDtcbiAgICAvKiogVGhlIHZhbHVlIG9mIHRoZSBhdHRyaWJ1dGUgKi9cbiAgICB2YWx1ZT86IHN0cmluZyB8IHVuZGVmaW5lZDtcbn1cblxuLyoqIFRoaXMgZW51bSByZXByZXNlbnRzIHRoZSBzb3VyY2Ugb2YgYW4gaW52b2ljZSwgZS5nLiBmcm9tIHdoaWNoIGZvcm1hdCBpdCB3YXMgaW1wb3J0ZWQgKi9cbmV4cG9ydCBlbnVtIFNvdXJjZVR5cGUge1xuICAgIFNlbGYgPSAwLFxuICAgIFVibCA9IDEsXG4gICAgQ2lpID0gMixcbn1cblxuLyoqIFRoaXMgaXMgYSB3cmFwcGVyIGNsYXNzIHRoYXQgbWFwcyBEYW5nbC5BVkEgcHJvamVjdHMgYWxvbmcgd2l0aCBhZGRpdGlvbmFsIHJlcXVpcmVkIGluZm9ybWF0aW9uIHRvIGNyZWF0ZSBpbnZvaWNlcyAqL1xuZXhwb3J0IGludGVyZmFjZSBBdmFQcm9qZWN0V3JhcHBlciB7XG4gICAgLyoqIFRoZSBEYW5nbC5BVkEuUHJvamVjdCBmcm9tIHdoaWNoIHRvIGNvbnZlcnQgKi9cbiAgICBwcm9qZWN0PzogUHJvamVjdER0byB8IHVuZGVmaW5lZDtcbiAgICAvKiogVGhlIG51bWJlciBvZiB0aGUgaW52b2ljZSAqL1xuICAgIGludm9pY2VOdW1iZXI/OiBzdHJpbmcgfCB1bmRlZmluZWQ7XG4gICAgLyoqIEF0dGFjaGVkIGRvY3VtZW50cyB0byB0aGUgaW52b2ljZSAqL1xuICAgIGRvY3VtZW50cz86IFN1cHBvcnRpbmdEb2N1bWVudFtdIHwgdW5kZWZpbmVkO1xuICAgIC8qKiBUaGUgcGVyaW9kIGR1cmluZyB3aGljaCB0aGUgc2VydmljZXMgb3IgZ29vZHMgd2VyZSBkZWxpdmVyZWQgKi9cbiAgICBpbnZvaWNlUGVyaW9kPzogSW52b2ljZVBlcmlvZCB8IHVuZGVmaW5lZDtcbiAgICAvKiogSW5zdHJ1Y3Rpb25zIGhvdyB0byBwZXJmb3JtIHRoZSBwYXltZW50ICovXG4gICAgcGF5bWVudEluc3RydWN0aW9ucz86IFBheW1lbnRJbnN0cnVjdGlvbnMgfCB1bmRlZmluZWQ7XG4gICAgLyoqIFRoZSB0eXBlIG9mIHRoZSBpbnZvaWNlICovXG4gICAgaW52b2ljZVR5cGU/OiBJbnZvaWNlVHlwZSB8IHVuZGVmaW5lZDtcbiAgICAvKiogVW50aWwgd2hlbiB0aGUgcGF5bWVudCBpcyBkdWUgKi9cbiAgICBwYXltZW50RHVlRGF0ZT86IERhdGUgfCB1bmRlZmluZWQ7XG4gICAgLyoqIEEgdGV4dCBkZXNjcmlwdGlvbiBvZiBwYXltZW50IHRlcm1zLCBlLmcuIGNhc2ggZGlzY291bnRzIG9yIHBheW1lbnQgY29uZGl0aW9ucyAqL1xuICAgIHBheW1lbnRUZXJtcz86IHN0cmluZyB8IHVuZGVmaW5lZDtcbiAgICAvKiogSW4gY2FzZSBvZiBwYXJ0aWFsIG9mIGZpbmFsIGludm9pY2VzLCBpdCdzIHBvc3NpYmxlIHRvIHJlZmVyZW5jZSB0aGUgcHJldmlvdXMgaW52b2ljZSBudW1iZXJzICovXG4gICAgcHJldmlvdXNJbnZvaWNlcz86IFByZXZpb3VzSW52b2ljZVtdIHwgdW5kZWZpbmVkO1xuICAgIC8qKiBJZiBwYXJ0cyBvZiB0aGlzIGludm9pY2UgKG9yIG9mIHByZXZpb3VzIGludm9pY2VzKSBoYXZlIGFscmVhZHkgYmVlbiBwYWlkLFxudGhlbiB0aGlzIHByb3BlcnR5IGNhbiBiZSB1c2VkIHRvIHNwZWNpZnkgdGhhdCBzb21lIHBhcnRzIG9mIHRoZSBpbnZvaWNlXG5hcmUgYWxyZWFkeSBwYWlkIGFuZCB0aGlzIHdpbGwgYmUgZGVkdWN0ZWQgZnJvbSB0aGUgdG8gYmUgcGFpZCBhbW91bnQuICovXG4gICAgYWxyZWFkeVBhaWRUb3RhbEdyb3NzPzogbnVtYmVyIHwgdW5kZWZpbmVkO1xuICAgIC8qKiBBbiBvYmplY3QgaG9sZGluZyByZWZlcmVuY2UgdXNlZCBpbiB0aGlzIGludm9pY2UgKi9cbiAgICByZWZlcmVuY2VzPzogUmVmZXJlbmNlcyB8IHVuZGVmaW5lZDtcbn1cbiJdfQ==
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW52b2ljZS13b3Jkcy5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItYXZhL3NyYy9saWIvYXZhLXRyZWUvdHJlZS9tb2RlbC9pbnZvaWNlLXdvcmRzLm1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgaW50ZXJmYWNlIElUZXh0V29yZEludm9pY2Uge1xuICBpbnZvaWNlVGl0bGU/OiBzdHJpbmc7XG4gIHZhdElkPzogc3RyaW5nO1xuICBkZXRhaWxzSW52b2ljZU51bWJlcj86IHN0cmluZztcbiAgZGV0YWlsc0ludm9pY2VEYXRlPzogc3RyaW5nO1xuICBkZXRhaWxzUGF5bWVudER1ZURhdGU/OiBzdHJpbmc7XG4gIGRldGFpbHNDdXJyZW5jeUNvZGU/OiBzdHJpbmc7XG4gIGRldGFpbHNQYXltZW50VGVybXM/OiBzdHJpbmc7XG4gIHJlZmVyZW5jZXNUb3BpYz86IHN0cmluZztcbiAgcmVmZXJlbmNlc0J1eWVyUmVmZXJlbmNlPzogc3RyaW5nO1xuICByZWZlcmVuY2VzUHJvamVjdFJlZmVyZW5jZT86IHN0cmluZztcbiAgcmVmZXJlbmNlc0NvbnRyYWN0UmVmZXJlbmNlPzogc3RyaW5nO1xuICByZWZlcmVuY2VzUHVyY2hhc2VPcmRlclJlZmVyZW5jZT86IHN0cmluZztcbiAgcmVmZXJlbmNlc1NhbGVzT3JkZXJSZWZlcmVuY2U/OiBzdHJpbmc7XG4gIHJlZmVyZW5jZXNSZWNlaXZpbmdBZHZpY2VSZWZlcmVuY2U/OiBzdHJpbmc7XG4gIHJlZmVyZW5jZXNEaXNwYXRjaEFkdmljZVJlZmVyZW5jZT86IHN0cmluZztcbiAgcmVmZXJlbmNlc1RlbmRlck9yTG90UmVmZXJlbmNlPzogc3RyaW5nO1xuICByZWZlcmVuY2VzSW52b2ljZWRPYmplY3RJZGVudGlmaWVyPzogc3RyaW5nO1xuICB0YWJsZUhlYWREZXNjcmlwdGlvbj86IHN0cmluZztcbiAgdGFibGVIZWFkUXVhbnRpdHk/OiBzdHJpbmc7XG4gIHRhYmxlSGVhZFVuaXQ/OiBzdHJpbmc7XG4gIHRhYmxlSGVhZE5ldFByaWNlPzogc3RyaW5nO1xuICB0YWJsZUhlYWROZXRBbW91bnQ/OiBzdHJpbmc7XG4gIHRvdGFsc1RvcGljPzogc3RyaW5nO1xuICB0b3RhbHNUb3RhbE5ldD86IHN0cmluZztcbiAgdG90YWxzVG90YWxBbGxvd2FuY2VzPzogc3RyaW5nO1xuICB0b3RhbHNUb3RhbENoYXJnZXM/OiBzdHJpbmc7XG4gIHRvdGFsc1RvdGFsQWZ0ZXJEZWR1Y3Rpb25zPzogc3RyaW5nO1xuICB0b3RhbHNUb3RhbFZhdEFtb3VudD86IHN0cmluZztcbiAgdG90YWxzVG90YWxHcm9zcz86IHN0cmluZztcbiAgdG90YWxzQWxyZWFkeVBhaWRUb3RhbD86IHN0cmluZztcbiAgdG90YWxzVG90YWxUb0JlUGFpZD86IHN0cmluZztcbiAgaW5zdHJ1Y3Rpb25zVG9waWM/OiBzdHJpbmc7XG4gIGluc3RydWN0aW9uc0FjY291bnRJZGVudGlmaWVyPzogc3RyaW5nO1xuICBpbnN0cnVjdGlvbnNBY2NvdW50TmFtZT86IHN0cmluZztcbiAgaW5zdHJ1Y3Rpb25zU2VydmljZVByb3ZpZGVySWRlbnRpZmllcj86IHN0cmluZztcbiAgbm90ZXNUb3BpYz86IHN0cmluZztcbn1cbiJdfQ==
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0aW5nLm1vZGVsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci1hdmEvc3JjL2xpYi9hdmEtdHJlZS90cmVlL21vZGVsL3NlbGVjdGluZy5tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGludGVyZmFjZSBTZWxlY3RlZEVsZW1lbnQge1xuICBlbGVtZW50SWQ6IHN0cmluZztcbiAgY2hpbGRyZW4/OiBTZWxlY3RlZEVsZW1lbnRbXSB8IG51bGw7XG59XG5cbmV4cG9ydCB0eXBlIFNlbGVjdGluZ0VsZW1lbnRzVHlwZSA9IHtcbiAgZWxlbWVudElkOiBzdHJpbmc7XG4gIGNoaWxkcmVuPzogU2VsZWN0aW5nRWxlbWVudHNUeXBlW107XG4gIHBhcmVudD86IFNlbGVjdGluZ0VsZW1lbnRzVHlwZSB8IG51bGw7XG4gIGNoZWNrZWQ/OiBib29sZWFuO1xuICBpbmRldGVybWluYXRlPzogYm9vbGVhbjtcbn07XG5cbmV4cG9ydCB0eXBlIFNlbGVjdGluZ0VsZW1lbnRzT2JqZWN0VHlwZSA9IHtcbiAgW2VsZW1lbnRJZDogc3RyaW5nXTogU2VsZWN0aW5nRWxlbWVudHNUeXBlO1xufTtcbiJdfQ==
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGVDb2x1bW5UeXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci1hdmEvc3JjL2xpYi9hdmEtdHJlZS90cmVlL21vZGVsL3RhYmxlQ29sdW1uVHlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IHR5cGUgVGFibGVDb2x1bW5UeXBlID0ge1xuICBuYW1lOiBzdHJpbmc7XG4gIHRpdGxlOiBzdHJpbmc7XG4gIGFsaWduPzogc3RyaW5nO1xuICBudW1iZXJGb3JtYXQ/OiBzdHJpbmc7XG59O1xuIl19
@@ -1,7 +0,0 @@
1
- export var ModeViewType;
2
- (function (ModeViewType) {
3
- ModeViewType["Tree"] = "Tree";
4
- ModeViewType["List"] = "List";
5
- ModeViewType["Table"] = "Table";
6
- })(ModeViewType || (ModeViewType = {}));
7
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJlZS1tb2RlLm1vZGVsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci1hdmEvc3JjL2xpYi9hdmEtdHJlZS90cmVlL21vZGVsL3RyZWUtbW9kZS5tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLENBQU4sSUFBWSxZQUlYO0FBSkQsV0FBWSxZQUFZO0lBQ3RCLDZCQUFhLENBQUE7SUFDYiw2QkFBYSxDQUFBO0lBQ2IsK0JBQWUsQ0FBQTtBQUNqQixDQUFDLEVBSlcsWUFBWSxLQUFaLFlBQVksUUFJdkIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZW51bSBNb2RlVmlld1R5cGUge1xuICBUcmVlID0gJ1RyZWUnLFxuICBMaXN0ID0gJ0xpc3QnLFxuICBUYWJsZSA9ICdUYWJsZSdcbn1cbiJdfQ==
@@ -1,27 +0,0 @@
1
- import { Pipe } from '@angular/core';
2
- import * as i0 from "@angular/core";
3
- export class ElementIconNamePipe {
4
- transform(element) {
5
- switch (element.elementTypeDiscriminator) {
6
- case 'NoteTextDto':
7
- return 'subject';
8
- case 'ExecutionDescriptionDto':
9
- return 'event';
10
- case 'ServiceSpecificationGroupDto':
11
- return 'folder_open';
12
- case 'PositionDto':
13
- return 'add';
14
- default:
15
- return '';
16
- }
17
- }
18
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: ElementIconNamePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
19
- static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "18.1.0", ngImport: i0, type: ElementIconNamePipe, name: "elementIconName" }); }
20
- }
21
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: ElementIconNamePipe, decorators: [{
22
- type: Pipe,
23
- args: [{
24
- name: 'elementIconName'
25
- }]
26
- }] });
27
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxlbWVudC1pY29uLW5hbWUucGlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItYXZhL3NyYy9saWIvYXZhLXRyZWUvdHJlZS9waXBlcy9lbGVtZW50LWljb24tbmFtZS5waXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxJQUFJLEVBQWlCLE1BQU0sZUFBZSxDQUFDOztBQU9wRCxNQUFNLE9BQU8sbUJBQW1CO0lBQzlCLFNBQVMsQ0FBQyxPQUFvQjtRQUM1QixRQUFRLE9BQU8sQ0FBQyx3QkFBd0IsRUFBRSxDQUFDO1lBQ3pDLEtBQUssYUFBYTtnQkFDaEIsT0FBTyxTQUFTLENBQUM7WUFDbkIsS0FBSyx5QkFBeUI7Z0JBQzVCLE9BQU8sT0FBTyxDQUFDO1lBQ2pCLEtBQUssOEJBQThCO2dCQUNqQyxPQUFPLGFBQWEsQ0FBQztZQUN2QixLQUFLLGFBQWE7Z0JBQ2hCLE9BQU8sS0FBSyxDQUFDO1lBQ2Y7Z0JBQ0UsT0FBTyxFQUFFLENBQUM7UUFDZCxDQUFDO0lBQ0gsQ0FBQzs4R0FkVSxtQkFBbUI7NEdBQW5CLG1CQUFtQjs7MkZBQW5CLG1CQUFtQjtrQkFIL0IsSUFBSTttQkFBQztvQkFDSixJQUFJLEVBQUUsaUJBQWlCO2lCQUN4QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFBpcGUsIFBpcGVUcmFuc2Zvcm0gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgSUVsZW1lbnREdG8gfSBmcm9tICcuLi9tb2RlbCc7XG5cbkBQaXBlKHtcbiAgbmFtZTogJ2VsZW1lbnRJY29uTmFtZSdcbn0pXG5leHBvcnQgY2xhc3MgRWxlbWVudEljb25OYW1lUGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xuICB0cmFuc2Zvcm0oZWxlbWVudDogSUVsZW1lbnREdG8pOiBzdHJpbmcge1xuICAgIHN3aXRjaCAoZWxlbWVudC5lbGVtZW50VHlwZURpc2NyaW1pbmF0b3IpIHtcbiAgICAgIGNhc2UgJ05vdGVUZXh0RHRvJzpcbiAgICAgICAgcmV0dXJuICdzdWJqZWN0JztcbiAgICAgIGNhc2UgJ0V4ZWN1dGlvbkRlc2NyaXB0aW9uRHRvJzpcbiAgICAgICAgcmV0dXJuICdldmVudCc7XG4gICAgICBjYXNlICdTZXJ2aWNlU3BlY2lmaWNhdGlvbkdyb3VwRHRvJzpcbiAgICAgICAgcmV0dXJuICdmb2xkZXJfb3Blbic7XG4gICAgICBjYXNlICdQb3NpdGlvbkR0byc6XG4gICAgICAgIHJldHVybiAnYWRkJztcbiAgICAgIGRlZmF1bHQ6XG4gICAgICAgIHJldHVybiAnJztcbiAgICB9XG4gIH1cbn1cbiJdfQ==
@@ -1,23 +0,0 @@
1
- import { Pipe } from '@angular/core';
2
- import * as i0 from "@angular/core";
3
- export class ElementItemNumberPipe {
4
- transform(element) {
5
- switch (element.elementTypeDiscriminator) {
6
- case 'ServiceSpecificationGroupDto':
7
- return element.itemNumber?.stringRepresentation || '';
8
- case 'PositionDto':
9
- return element.itemNumber?.stringRepresentation || '';
10
- default:
11
- return '';
12
- }
13
- }
14
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: ElementItemNumberPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
15
- static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "18.1.0", ngImport: i0, type: ElementItemNumberPipe, name: "elementItemNumber" }); }
16
- }
17
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: ElementItemNumberPipe, decorators: [{
18
- type: Pipe,
19
- args: [{
20
- name: 'elementItemNumber'
21
- }]
22
- }] });
23
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxlbWVudC1pdGVtLW51bWJlci5waXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci1hdmEvc3JjL2xpYi9hdmEtdHJlZS90cmVlL3BpcGVzL2VsZW1lbnQtaXRlbS1udW1iZXIucGlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsSUFBSSxFQUFpQixNQUFNLGVBQWUsQ0FBQzs7QUFPcEQsTUFBTSxPQUFPLHFCQUFxQjtJQUNoQyxTQUFTLENBQUMsT0FBb0I7UUFDNUIsUUFBUSxPQUFPLENBQUMsd0JBQXdCLEVBQUUsQ0FBQztZQUN6QyxLQUFLLDhCQUE4QjtnQkFDakMsT0FBUSxPQUF3QyxDQUFDLFVBQVUsRUFBRSxvQkFBb0IsSUFBSSxFQUFFLENBQUM7WUFDMUYsS0FBSyxhQUFhO2dCQUNoQixPQUFRLE9BQXVCLENBQUMsVUFBVSxFQUFFLG9CQUFvQixJQUFJLEVBQUUsQ0FBQztZQUN6RTtnQkFDRSxPQUFPLEVBQUUsQ0FBQztRQUNkLENBQUM7SUFDSCxDQUFDOzhHQVZVLHFCQUFxQjs0R0FBckIscUJBQXFCOzsyRkFBckIscUJBQXFCO2tCQUhqQyxJQUFJO21CQUFDO29CQUNKLElBQUksRUFBRSxtQkFBbUI7aUJBQzFCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUGlwZSwgUGlwZVRyYW5zZm9ybSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBJRWxlbWVudER0bywgUG9zaXRpb25EdG8sIFNlcnZpY2VTcGVjaWZpY2F0aW9uR3JvdXBEdG8gfSBmcm9tICcuLi9tb2RlbCc7XG5cbkBQaXBlKHtcbiAgbmFtZTogJ2VsZW1lbnRJdGVtTnVtYmVyJ1xufSlcbmV4cG9ydCBjbGFzcyBFbGVtZW50SXRlbU51bWJlclBpcGUgaW1wbGVtZW50cyBQaXBlVHJhbnNmb3JtIHtcbiAgdHJhbnNmb3JtKGVsZW1lbnQ6IElFbGVtZW50RHRvKTogc3RyaW5nIHtcbiAgICBzd2l0Y2ggKGVsZW1lbnQuZWxlbWVudFR5cGVEaXNjcmltaW5hdG9yKSB7XG4gICAgICBjYXNlICdTZXJ2aWNlU3BlY2lmaWNhdGlvbkdyb3VwRHRvJzpcbiAgICAgICAgcmV0dXJuIChlbGVtZW50IGFzIFNlcnZpY2VTcGVjaWZpY2F0aW9uR3JvdXBEdG8pLml0ZW1OdW1iZXI/LnN0cmluZ1JlcHJlc2VudGF0aW9uIHx8ICcnO1xuICAgICAgY2FzZSAnUG9zaXRpb25EdG8nOlxuICAgICAgICByZXR1cm4gKGVsZW1lbnQgYXMgUG9zaXRpb25EdG8pLml0ZW1OdW1iZXI/LnN0cmluZ1JlcHJlc2VudGF0aW9uIHx8ICcnO1xuICAgICAgZGVmYXVsdDpcbiAgICAgICAgcmV0dXJuICcnO1xuICAgIH1cbiAgfVxufVxuIl19
@@ -1,39 +0,0 @@
1
- import { Pipe } from '@angular/core';
2
- import { Subject, takeUntil } from 'rxjs';
3
- import * as i0 from "@angular/core";
4
- import * as i1 from "../services/tree-words.service";
5
- export class ElementTextPipe {
6
- constructor(treeWordsService) {
7
- this.treeWordsService = treeWordsService;
8
- this.treeWords = {};
9
- this.$destroy = new Subject();
10
- this.treeWordsService?.getTreeWords.pipe(takeUntil(this.$destroy)).subscribe((words) => (this.treeWords = words));
11
- }
12
- ngOnDestroy() {
13
- this.$destroy.next(true);
14
- this.$destroy.complete();
15
- }
16
- transform(element) {
17
- switch (element.elementTypeDiscriminator) {
18
- case 'NoteTextDto':
19
- return element.shortText || this.treeWords.defaultNameNoteText || '';
20
- case 'ExecutionDescriptionDto':
21
- return `${element.identifier ? element.identifier + ' - ' : ''}${element.label || this.treeWords.defaultNameDescription || ''}`;
22
- case 'ServiceSpecificationGroupDto':
23
- return element.shortText || this.treeWords.defaultNameGroup || '';
24
- case 'PositionDto':
25
- return element.shortText || this.treeWords.defaultNamePosition || '';
26
- default:
27
- return '';
28
- }
29
- }
30
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: ElementTextPipe, deps: [{ token: i1.TreeWordsService }], target: i0.ɵɵFactoryTarget.Pipe }); }
31
- static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "18.1.0", ngImport: i0, type: ElementTextPipe, name: "elementText" }); }
32
- }
33
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: ElementTextPipe, decorators: [{
34
- type: Pipe,
35
- args: [{
36
- name: 'elementText'
37
- }]
38
- }], ctorParameters: () => [{ type: i1.TreeWordsService }] });
39
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxlbWVudC10ZXh0LnBpcGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLWF2YS9zcmMvbGliL2F2YS10cmVlL3RyZWUvcGlwZXMvZWxlbWVudC10ZXh0LnBpcGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFhLElBQUksRUFBaUIsTUFBTSxlQUFlLENBQUM7QUFFL0QsT0FBTyxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7OztBQVMxQyxNQUFNLE9BQU8sZUFBZTtJQUkxQixZQUFvQixnQkFBa0M7UUFBbEMscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQUh0RCxjQUFTLEdBQWUsRUFBRSxDQUFDO1FBQ25CLGFBQVEsR0FBRyxJQUFJLE9BQU8sRUFBVyxDQUFDO1FBR3hDLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxZQUFZLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLFNBQVMsR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDO0lBQ3BILENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDekIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUMzQixDQUFDO0lBRUQsU0FBUyxDQUFDLE9BQW9CO1FBQzVCLFFBQVEsT0FBTyxDQUFDLHdCQUF3QixFQUFFLENBQUM7WUFDekMsS0FBSyxhQUFhO2dCQUNoQixPQUFRLE9BQXVCLENBQUMsU0FBUyxJQUFJLElBQUksQ0FBQyxTQUFTLENBQUMsbUJBQW1CLElBQUksRUFBRSxDQUFDO1lBQ3hGLEtBQUsseUJBQXlCO2dCQUM1QixPQUFPLEdBQUksT0FBbUMsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFFLE9BQW1DLENBQUMsVUFBVSxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUMsRUFBRSxHQUNySCxPQUFtQyxDQUFDLEtBQUssSUFBSSxJQUFJLENBQUMsU0FBUyxDQUFDLHNCQUFzQixJQUFJLEVBQ3pGLEVBQUUsQ0FBQztZQUNMLEtBQUssOEJBQThCO2dCQUNqQyxPQUFRLE9BQXdDLENBQUMsU0FBUyxJQUFJLElBQUksQ0FBQyxTQUFTLENBQUMsZ0JBQWdCLElBQUksRUFBRSxDQUFDO1lBQ3RHLEtBQUssYUFBYTtnQkFDaEIsT0FBUSxPQUF1QixDQUFDLFNBQVMsSUFBSSxJQUFJLENBQUMsU0FBUyxDQUFDLG1CQUFtQixJQUFJLEVBQUUsQ0FBQztZQUN4RjtnQkFDRSxPQUFPLEVBQUUsQ0FBQztRQUNkLENBQUM7SUFDSCxDQUFDOzhHQTVCVSxlQUFlOzRHQUFmLGVBQWU7OzJGQUFmLGVBQWU7a0JBSDNCLElBQUk7bUJBQUM7b0JBQ0osSUFBSSxFQUFFLGFBQWE7aUJBQ3BCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgT25EZXN0cm95LCBQaXBlLCBQaXBlVHJhbnNmb3JtIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IFN1YmplY3QsIHRha2VVbnRpbCB9IGZyb20gJ3J4anMnO1xuXG5pbXBvcnQgeyBJVGV4dFdvcmRzIH0gZnJvbSAnLi4vY29uc3RhbnRzL2RlZmF1bHRUZXh0V29yZHMnO1xuaW1wb3J0IHsgRXhlY3V0aW9uRGVzY3JpcHRpb25EdG8sIElFbGVtZW50RHRvLCBOb3RlVGV4dER0bywgUG9zaXRpb25EdG8sIFNlcnZpY2VTcGVjaWZpY2F0aW9uR3JvdXBEdG8gfSBmcm9tICcuLi9tb2RlbCc7XG5pbXBvcnQgeyBUcmVlV29yZHNTZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvdHJlZS13b3Jkcy5zZXJ2aWNlJztcblxuQFBpcGUoe1xuICBuYW1lOiAnZWxlbWVudFRleHQnXG59KVxuZXhwb3J0IGNsYXNzIEVsZW1lbnRUZXh0UGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0sIE9uRGVzdHJveSB7XG4gIHRyZWVXb3JkczogSVRleHRXb3JkcyA9IHt9O1xuICBwcml2YXRlICRkZXN0cm95ID0gbmV3IFN1YmplY3Q8Ym9vbGVhbj4oKTtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHRyZWVXb3Jkc1NlcnZpY2U6IFRyZWVXb3Jkc1NlcnZpY2UpIHtcbiAgICB0aGlzLnRyZWVXb3Jkc1NlcnZpY2U/LmdldFRyZWVXb3Jkcy5waXBlKHRha2VVbnRpbCh0aGlzLiRkZXN0cm95KSkuc3Vic2NyaWJlKCh3b3JkcykgPT4gKHRoaXMudHJlZVdvcmRzID0gd29yZHMpKTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuJGRlc3Ryb3kubmV4dCh0cnVlKTtcbiAgICB0aGlzLiRkZXN0cm95LmNvbXBsZXRlKCk7XG4gIH1cblxuICB0cmFuc2Zvcm0oZWxlbWVudDogSUVsZW1lbnREdG8pOiBzdHJpbmcge1xuICAgIHN3aXRjaCAoZWxlbWVudC5lbGVtZW50VHlwZURpc2NyaW1pbmF0b3IpIHtcbiAgICAgIGNhc2UgJ05vdGVUZXh0RHRvJzpcbiAgICAgICAgcmV0dXJuIChlbGVtZW50IGFzIE5vdGVUZXh0RHRvKS5zaG9ydFRleHQgfHwgdGhpcy50cmVlV29yZHMuZGVmYXVsdE5hbWVOb3RlVGV4dCB8fCAnJztcbiAgICAgIGNhc2UgJ0V4ZWN1dGlvbkRlc2NyaXB0aW9uRHRvJzpcbiAgICAgICAgcmV0dXJuIGAkeyhlbGVtZW50IGFzIEV4ZWN1dGlvbkRlc2NyaXB0aW9uRHRvKS5pZGVudGlmaWVyID8gKGVsZW1lbnQgYXMgRXhlY3V0aW9uRGVzY3JpcHRpb25EdG8pLmlkZW50aWZpZXIgKyAnIC0gJyA6ICcnfSR7XG4gICAgICAgICAgKGVsZW1lbnQgYXMgRXhlY3V0aW9uRGVzY3JpcHRpb25EdG8pLmxhYmVsIHx8IHRoaXMudHJlZVdvcmRzLmRlZmF1bHROYW1lRGVzY3JpcHRpb24gfHwgJydcbiAgICAgICAgfWA7XG4gICAgICBjYXNlICdTZXJ2aWNlU3BlY2lmaWNhdGlvbkdyb3VwRHRvJzpcbiAgICAgICAgcmV0dXJuIChlbGVtZW50IGFzIFNlcnZpY2VTcGVjaWZpY2F0aW9uR3JvdXBEdG8pLnNob3J0VGV4dCB8fCB0aGlzLnRyZWVXb3Jkcy5kZWZhdWx0TmFtZUdyb3VwIHx8ICcnO1xuICAgICAgY2FzZSAnUG9zaXRpb25EdG8nOlxuICAgICAgICByZXR1cm4gKGVsZW1lbnQgYXMgUG9zaXRpb25EdG8pLnNob3J0VGV4dCB8fCB0aGlzLnRyZWVXb3Jkcy5kZWZhdWx0TmFtZVBvc2l0aW9uIHx8ICcnO1xuICAgICAgZGVmYXVsdDpcbiAgICAgICAgcmV0dXJuICcnO1xuICAgIH1cbiAgfVxufVxuIl19
@@ -1,20 +0,0 @@
1
- import { Pipe } from '@angular/core';
2
- import * as i0 from "@angular/core";
3
- export class GroupChildElementsPipe {
4
- transform(element) {
5
- if (element.elementTypeDiscriminator === 'ServiceSpecificationGroupDto') {
6
- return element?.elements || null;
7
- }
8
- return null;
9
- }
10
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: GroupChildElementsPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
11
- static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "18.1.0", ngImport: i0, type: GroupChildElementsPipe, name: "groupChildElements" }); }
12
- }
13
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: GroupChildElementsPipe, decorators: [{
14
- type: Pipe,
15
- args: [{
16
- name: 'groupChildElements',
17
- pure: true
18
- }]
19
- }] });
20
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JvdXAtY2hpbGQtZWxlbWVudHMucGlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItYXZhL3NyYy9saWIvYXZhLXRyZWUvdHJlZS9waXBlcy9ncm91cC1jaGlsZC1lbGVtZW50cy5waXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxJQUFJLEVBQWlCLE1BQU0sZUFBZSxDQUFDOztBQVFwRCxNQUFNLE9BQU8sc0JBQXNCO0lBQ2pDLFNBQVMsQ0FBQyxPQUFvQjtRQUM1QixJQUFJLE9BQU8sQ0FBQyx3QkFBd0IsS0FBSyw4QkFBOEIsRUFBRSxDQUFDO1lBQ3hFLE9BQVEsT0FBd0MsRUFBRSxRQUFRLElBQUksSUFBSSxDQUFDO1FBQ3JFLENBQUM7UUFFRCxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7OEdBUFUsc0JBQXNCOzRHQUF0QixzQkFBc0I7OzJGQUF0QixzQkFBc0I7a0JBSmxDLElBQUk7bUJBQUM7b0JBQ0osSUFBSSxFQUFFLG9CQUFvQjtvQkFDMUIsSUFBSSxFQUFFLElBQUk7aUJBQ1giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQaXBlLCBQaXBlVHJhbnNmb3JtIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IElFbGVtZW50RHRvLCBTZXJ2aWNlU3BlY2lmaWNhdGlvbkdyb3VwRHRvIH0gZnJvbSAnLi4vbW9kZWwnO1xuXG5AUGlwZSh7XG4gIG5hbWU6ICdncm91cENoaWxkRWxlbWVudHMnLFxuICBwdXJlOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIEdyb3VwQ2hpbGRFbGVtZW50c1BpcGUgaW1wbGVtZW50cyBQaXBlVHJhbnNmb3JtIHtcbiAgdHJhbnNmb3JtKGVsZW1lbnQ6IElFbGVtZW50RHRvKTogSUVsZW1lbnREdG9bXSB8IG51bGwge1xuICAgIGlmIChlbGVtZW50LmVsZW1lbnRUeXBlRGlzY3JpbWluYXRvciA9PT0gJ1NlcnZpY2VTcGVjaWZpY2F0aW9uR3JvdXBEdG8nKSB7XG4gICAgICByZXR1cm4gKGVsZW1lbnQgYXMgU2VydmljZVNwZWNpZmljYXRpb25Hcm91cER0byk/LmVsZW1lbnRzIHx8IG51bGw7XG4gICAgfVxuXG4gICAgcmV0dXJuIG51bGw7XG4gIH1cbn1cbiJdfQ==
@@ -1,34 +0,0 @@
1
- import { Pipe } from '@angular/core';
2
- import { AttachmentMimeType } from '../model';
3
- import * as i0 from "@angular/core";
4
- export class InvoiceAttachmentMimeTypePipe {
5
- transform(attachmentMimeType) {
6
- switch (attachmentMimeType) {
7
- case AttachmentMimeType.Pdf:
8
- return 'PDF';
9
- case AttachmentMimeType.Png:
10
- return 'PNG';
11
- case AttachmentMimeType.Jpeg:
12
- return 'JPEG';
13
- case AttachmentMimeType.Csv:
14
- return 'CSV';
15
- case AttachmentMimeType.Excel:
16
- return 'Excel';
17
- case AttachmentMimeType.OpenOfficeSpreadsheet:
18
- return 'Open Office Spreadsheet';
19
- case AttachmentMimeType.Unknown:
20
- default:
21
- return 'Unknown';
22
- }
23
- }
24
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: InvoiceAttachmentMimeTypePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
25
- static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "18.1.0", ngImport: i0, type: InvoiceAttachmentMimeTypePipe, isStandalone: true, name: "invoiceAttachmentMimeType" }); }
26
- }
27
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: InvoiceAttachmentMimeTypePipe, decorators: [{
28
- type: Pipe,
29
- args: [{
30
- name: 'invoiceAttachmentMimeType',
31
- standalone: true
32
- }]
33
- }] });
34
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW52b2ljZS1hdHRhY2htZW50LW1pbWUtdHlwZS5waXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci1hdmEvc3JjL2xpYi9hdmEtdHJlZS90cmVlL3BpcGVzL2ludm9pY2UtYXR0YWNobWVudC1taW1lLXR5cGUucGlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsSUFBSSxFQUFpQixNQUFNLGVBQWUsQ0FBQztBQUVwRCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxVQUFVLENBQUM7O0FBTTlDLE1BQU0sT0FBTyw2QkFBNkI7SUFDeEMsU0FBUyxDQUFDLGtCQUFzQztRQUM5QyxRQUFRLGtCQUFrQixFQUFFLENBQUM7WUFDM0IsS0FBSyxrQkFBa0IsQ0FBQyxHQUFHO2dCQUN6QixPQUFPLEtBQUssQ0FBQztZQUNmLEtBQUssa0JBQWtCLENBQUMsR0FBRztnQkFDekIsT0FBTyxLQUFLLENBQUM7WUFDZixLQUFLLGtCQUFrQixDQUFDLElBQUk7Z0JBQzFCLE9BQU8sTUFBTSxDQUFDO1lBQ2hCLEtBQUssa0JBQWtCLENBQUMsR0FBRztnQkFDekIsT0FBTyxLQUFLLENBQUM7WUFDZixLQUFLLGtCQUFrQixDQUFDLEtBQUs7Z0JBQzNCLE9BQU8sT0FBTyxDQUFDO1lBQ2pCLEtBQUssa0JBQWtCLENBQUMscUJBQXFCO2dCQUMzQyxPQUFPLHlCQUF5QixDQUFDO1lBRW5DLEtBQUssa0JBQWtCLENBQUMsT0FBTyxDQUFDO1lBQ2hDO2dCQUNFLE9BQU8sU0FBUyxDQUFDO1FBQ3JCLENBQUM7SUFDSCxDQUFDOzhHQXBCVSw2QkFBNkI7NEdBQTdCLDZCQUE2Qjs7MkZBQTdCLDZCQUE2QjtrQkFKekMsSUFBSTttQkFBQztvQkFDSixJQUFJLEVBQUUsMkJBQTJCO29CQUNqQyxVQUFVLEVBQUUsSUFBSTtpQkFDakIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQaXBlLCBQaXBlVHJhbnNmb3JtIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IEF0dGFjaG1lbnRNaW1lVHlwZSB9IGZyb20gJy4uL21vZGVsJztcblxuQFBpcGUoe1xuICBuYW1lOiAnaW52b2ljZUF0dGFjaG1lbnRNaW1lVHlwZScsXG4gIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgSW52b2ljZUF0dGFjaG1lbnRNaW1lVHlwZVBpcGUgaW1wbGVtZW50cyBQaXBlVHJhbnNmb3JtIHtcbiAgdHJhbnNmb3JtKGF0dGFjaG1lbnRNaW1lVHlwZTogQXR0YWNobWVudE1pbWVUeXBlKTogc3RyaW5nIHtcbiAgICBzd2l0Y2ggKGF0dGFjaG1lbnRNaW1lVHlwZSkge1xuICAgICAgY2FzZSBBdHRhY2htZW50TWltZVR5cGUuUGRmOlxuICAgICAgICByZXR1cm4gJ1BERic7XG4gICAgICBjYXNlIEF0dGFjaG1lbnRNaW1lVHlwZS5Qbmc6XG4gICAgICAgIHJldHVybiAnUE5HJztcbiAgICAgIGNhc2UgQXR0YWNobWVudE1pbWVUeXBlLkpwZWc6XG4gICAgICAgIHJldHVybiAnSlBFRyc7XG4gICAgICBjYXNlIEF0dGFjaG1lbnRNaW1lVHlwZS5Dc3Y6XG4gICAgICAgIHJldHVybiAnQ1NWJztcbiAgICAgIGNhc2UgQXR0YWNobWVudE1pbWVUeXBlLkV4Y2VsOlxuICAgICAgICByZXR1cm4gJ0V4Y2VsJztcbiAgICAgIGNhc2UgQXR0YWNobWVudE1pbWVUeXBlLk9wZW5PZmZpY2VTcHJlYWRzaGVldDpcbiAgICAgICAgcmV0dXJuICdPcGVuIE9mZmljZSBTcHJlYWRzaGVldCc7XG5cbiAgICAgIGNhc2UgQXR0YWNobWVudE1pbWVUeXBlLlVua25vd246XG4gICAgICBkZWZhdWx0OlxuICAgICAgICByZXR1cm4gJ1Vua25vd24nO1xuICAgIH1cbiAgfVxufVxuIl19
@@ -1,32 +0,0 @@
1
- export class ExpandParentGroupService {
2
- constructor() { }
3
- expandParentGroups(element, flatElements, expansionState) {
4
- if (!flatElements?.length) {
5
- return;
6
- }
7
- const listGroup = flatElements.filter((item) => item.elements?.length);
8
- if (!listGroup.length) {
9
- return;
10
- }
11
- const findAndExpandParent = (currentElement) => {
12
- for (const itemGroup of listGroup) {
13
- if (expansionState[itemGroup.id]) {
14
- continue;
15
- }
16
- if (itemGroup.elements?.find((item) => currentElement.id === item.id)) {
17
- expansionState[itemGroup.id] = true;
18
- return itemGroup;
19
- }
20
- }
21
- return null;
22
- };
23
- const expandRecursive = (innerElement) => {
24
- const parentGroup = findAndExpandParent(innerElement);
25
- if (parentGroup) {
26
- expandRecursive(parentGroup);
27
- }
28
- };
29
- expandRecursive(element);
30
- }
31
- }
32
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhwYW5kLXBhcmVudC1ncm91cC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci1hdmEvc3JjL2xpYi9hdmEtdHJlZS90cmVlL3NlcnZpY2VzL2V4cGFuZC1wYXJlbnQtZ3JvdXAuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxNQUFNLE9BQU8sd0JBQXdCO0lBQ25DLGdCQUFlLENBQUM7SUFFaEIsa0JBQWtCLENBQUMsT0FBb0IsRUFBRSxZQUFrQyxFQUFFLGNBQXlDO1FBQ3BILElBQUksQ0FBQyxZQUFZLEVBQUUsTUFBTSxFQUFFLENBQUM7WUFDMUIsT0FBTztRQUNULENBQUM7UUFFRCxNQUFNLFNBQVMsR0FBbUMsWUFBWSxDQUFDLE1BQU0sQ0FDbkUsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFFLElBQXFDLENBQUMsUUFBUSxFQUFFLE1BQU0sQ0FDbEUsQ0FBQztRQUVGLElBQUksQ0FBQyxTQUFTLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDdEIsT0FBTztRQUNULENBQUM7UUFFRCxNQUFNLG1CQUFtQixHQUFHLENBQUMsY0FBMkIsRUFBdUMsRUFBRTtZQUMvRixLQUFLLE1BQU0sU0FBUyxJQUFJLFNBQVMsRUFBRSxDQUFDO2dCQUNsQyxJQUFJLGNBQWMsQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQztvQkFDakMsU0FBUztnQkFDWCxDQUFDO2dCQUVELElBQUksU0FBUyxDQUFDLFFBQVEsRUFBRSxJQUFJLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLGNBQWMsQ0FBQyxFQUFFLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUM7b0JBQ3RFLGNBQWMsQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFDLEdBQUcsSUFBSSxDQUFDO29CQUNwQyxPQUFPLFNBQVMsQ0FBQztnQkFDbkIsQ0FBQztZQUNILENBQUM7WUFDRCxPQUFPLElBQUksQ0FBQztRQUNkLENBQUMsQ0FBQztRQUVGLE1BQU0sZUFBZSxHQUFHLENBQUMsWUFBeUIsRUFBUSxFQUFFO1lBQzFELE1BQU0sV0FBVyxHQUFHLG1CQUFtQixDQUFDLFlBQVksQ0FBQyxDQUFDO1lBQ3RELElBQUksV0FBVyxFQUFFLENBQUM7Z0JBQ2hCLGVBQWUsQ0FBQyxXQUFXLENBQUMsQ0FBQztZQUMvQixDQUFDO1FBQ0gsQ0FBQyxDQUFDO1FBRUYsZUFBZSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQzNCLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IElFbGVtZW50RHRvLCBTZXJ2aWNlU3BlY2lmaWNhdGlvbkdyb3VwRHRvIH0gZnJvbSAnLi4vbW9kZWwvYXZhLW1vZGVscyc7XG5cbmV4cG9ydCBjbGFzcyBFeHBhbmRQYXJlbnRHcm91cFNlcnZpY2Uge1xuICBjb25zdHJ1Y3RvcigpIHt9XG5cbiAgZXhwYW5kUGFyZW50R3JvdXBzKGVsZW1lbnQ6IElFbGVtZW50RHRvLCBmbGF0RWxlbWVudHM6IElFbGVtZW50RHRvW10gfCBudWxsLCBleHBhbnNpb25TdGF0ZTogeyBbaWQ6IHN0cmluZ106IGJvb2xlYW4gfSk6IHZvaWQge1xuICAgIGlmICghZmxhdEVsZW1lbnRzPy5sZW5ndGgpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjb25zdCBsaXN0R3JvdXA6IFNlcnZpY2VTcGVjaWZpY2F0aW9uR3JvdXBEdG9bXSA9IGZsYXRFbGVtZW50cy5maWx0ZXIoXG4gICAgICAoaXRlbSkgPT4gKGl0ZW0gYXMgU2VydmljZVNwZWNpZmljYXRpb25Hcm91cER0bykuZWxlbWVudHM/Lmxlbmd0aFxuICAgICk7XG5cbiAgICBpZiAoIWxpc3RHcm91cC5sZW5ndGgpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjb25zdCBmaW5kQW5kRXhwYW5kUGFyZW50ID0gKGN1cnJlbnRFbGVtZW50OiBJRWxlbWVudER0byk6IFNlcnZpY2VTcGVjaWZpY2F0aW9uR3JvdXBEdG8gfCBudWxsID0+IHtcbiAgICAgIGZvciAoY29uc3QgaXRlbUdyb3VwIG9mIGxpc3RHcm91cCkge1xuICAgICAgICBpZiAoZXhwYW5zaW9uU3RhdGVbaXRlbUdyb3VwLmlkXSkge1xuICAgICAgICAgIGNvbnRpbnVlO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKGl0ZW1Hcm91cC5lbGVtZW50cz8uZmluZCgoaXRlbSkgPT4gY3VycmVudEVsZW1lbnQuaWQgPT09IGl0ZW0uaWQpKSB7XG4gICAgICAgICAgZXhwYW5zaW9uU3RhdGVbaXRlbUdyb3VwLmlkXSA9IHRydWU7XG4gICAgICAgICAgcmV0dXJuIGl0ZW1Hcm91cDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfTtcblxuICAgIGNvbnN0IGV4cGFuZFJlY3Vyc2l2ZSA9IChpbm5lckVsZW1lbnQ6IElFbGVtZW50RHRvKTogdm9pZCA9PiB7XG4gICAgICBjb25zdCBwYXJlbnRHcm91cCA9IGZpbmRBbmRFeHBhbmRQYXJlbnQoaW5uZXJFbGVtZW50KTtcbiAgICAgIGlmIChwYXJlbnRHcm91cCkge1xuICAgICAgICBleHBhbmRSZWN1cnNpdmUocGFyZW50R3JvdXApO1xuICAgICAgfVxuICAgIH07XG5cbiAgICBleHBhbmRSZWN1cnNpdmUoZWxlbWVudCk7XG4gIH1cbn1cbiJdfQ==
@@ -1,96 +0,0 @@
1
- import { Injectable } from '@angular/core';
2
- import { ReplaySubject, of } from 'rxjs';
3
- import { DEFAULT_FILTERS } from '../constants';
4
- import * as i0 from "@angular/core";
5
- export class FlatElementsService {
6
- constructor() {
7
- this._flatElementsDto = [];
8
- this.flatElementsDtoSource = new ReplaySubject(1);
9
- this.flatElementsDto = this.flatElementsDtoSource.asObservable();
10
- this.functionView = null;
11
- this.listFilterFunc = DEFAULT_FILTERS;
12
- }
13
- setElementsDto(elementsDto) {
14
- this._flatElementsDto = FlatElementsService.getFlatElements(elementsDto);
15
- this.objectElementsDto = FlatElementsService.getObjectElements(this._flatElementsDto);
16
- this.flatElementsDtoSource.next(this._flatElementsDto);
17
- }
18
- static getFlatElements(container) {
19
- const flatElements = [];
20
- if (container.elements) {
21
- container.elements.forEach((e) => {
22
- flatElements.push(e);
23
- if (e.elementTypeDiscriminator === 'ServiceSpecificationGroupDto') {
24
- const group = e;
25
- flatElements.push(...this.getFlatElements(group));
26
- }
27
- });
28
- }
29
- return flatElements;
30
- }
31
- static getObjectElements(elements) {
32
- const objectElements = {};
33
- if (elements?.length) {
34
- elements.forEach((e) => {
35
- if (e?.id) {
36
- objectElements[e.id] = e;
37
- }
38
- });
39
- }
40
- return objectElements;
41
- }
42
- getOneElementById(id) {
43
- return of(id ? this.objectElementsDto?.[id] || null : null);
44
- }
45
- checkFilterValue(element, filterValue) {
46
- const cleanFilter = filterValue.trim().toLocaleLowerCase();
47
- for (const func of this.listFilterFunc) {
48
- if (func(element, cleanFilter)) {
49
- return true;
50
- }
51
- }
52
- return false;
53
- }
54
- jumpNextNode(delta, currentElement, conditionFunc) {
55
- if (!this._flatElementsDto.length || (conditionFunc && !this._flatElementsDto.find((item) => conditionFunc(item)))) {
56
- return null;
57
- }
58
- const startElement = currentElement || this._flatElementsDto[0];
59
- let nextIndex = this._flatElementsDto.findIndex((item) => startElement.id === item.id);
60
- if (currentElement) {
61
- nextIndex = this.getNextIndex(this._flatElementsDto.length, nextIndex, delta);
62
- }
63
- while (conditionFunc && !conditionFunc(this._flatElementsDto[nextIndex])) {
64
- nextIndex = this.getNextIndex(this._flatElementsDto.length, nextIndex, delta);
65
- }
66
- return this._flatElementsDto[nextIndex];
67
- }
68
- getNextIndex(length, index, delta) {
69
- let nextIndex = index + delta;
70
- nextIndex = nextIndex < 0 ? length - 1 : nextIndex;
71
- nextIndex = nextIndex > length - 1 ? 0 : nextIndex;
72
- return nextIndex;
73
- }
74
- getChangedView(id) {
75
- if (this.objectElementsDto) {
76
- const element = this.objectElementsDto[id];
77
- if (element && this.functionView?.length) {
78
- for (const objectView of this.functionView) {
79
- if (objectView.func(element)) {
80
- return objectView.view;
81
- }
82
- }
83
- }
84
- }
85
- return null;
86
- }
87
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: FlatElementsService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
88
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: FlatElementsService, providedIn: 'root' }); }
89
- }
90
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: FlatElementsService, decorators: [{
91
- type: Injectable,
92
- args: [{
93
- providedIn: 'root'
94
- }]
95
- }], ctorParameters: () => [] });
96
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmxhdC1lbGVtZW50cy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci1hdmEvc3JjL2xpYi9hdmEtdHJlZS90cmVlL3NlcnZpY2VzL2ZsYXQtZWxlbWVudHMuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTNDLE9BQU8sRUFBYyxhQUFhLEVBQUUsRUFBRSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRXJELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxjQUFjLENBQUM7O0FBTS9DLE1BQU0sT0FBTyxtQkFBbUI7SUFXOUI7UUFWUSxxQkFBZ0IsR0FBa0IsRUFBRSxDQUFDO1FBQ3JDLDBCQUFxQixHQUFHLElBQUksYUFBYSxDQUFnQixDQUFDLENBQUMsQ0FBQztRQUNwRSxvQkFBZSxHQUFHLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUk1RCxpQkFBWSxHQUErQixJQUFJLENBQUM7UUFFaEQsbUJBQWMsR0FBRyxlQUFlLENBQUM7SUFFbEIsQ0FBQztJQUVoQixjQUFjLENBQUMsV0FBb0M7UUFDakQsSUFBSSxDQUFDLGdCQUFnQixHQUFHLG1CQUFtQixDQUFDLGVBQWUsQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUN6RSxJQUFJLENBQUMsaUJBQWlCLEdBQUcsbUJBQW1CLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLENBQUM7UUFDdEYsSUFBSSxDQUFDLHFCQUFxQixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztJQUN6RCxDQUFDO0lBRU0sTUFBTSxDQUFDLGVBQWUsQ0FBQyxTQUE4QztRQUMxRSxNQUFNLFlBQVksR0FBa0IsRUFBRSxDQUFDO1FBRXZDLElBQUksU0FBUyxDQUFDLFFBQVEsRUFBRSxDQUFDO1lB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UUFDRCxPQUFPLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUMxQyxDQUFDO0lBRU8sWUFBWSxDQUFDLE1BQWMsRUFBRSxLQUFhLEVBQUUsS0FBYTtRQUMvRCxJQUFJLFNBQVMsR0FBRyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQzlCLFNBQVMsR0FBRyxTQUFTLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUM7UUFDbkQsU0FBUyxHQUFHLFNBQVMsR0FBRyxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQztRQUNuRCxPQUFPLFNBQVMsQ0FBQztJQUNuQixDQUFDO0lBRUQsY0FBYyxDQUFDLEVBQVU7UUFDdkIsSUFBSSxJQUFJLENBQUMsaUJBQWlCLEVBQUUsQ0FBQztZQUMzQixNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLENBQUM7WUFDM0MsSUFBSSxPQUFPLElBQUksSUFBSSxDQUFDLFlBQVksRUFBRSxNQUFNLEVBQUUsQ0FBQztnQkFDekMsS0FBSyxNQUFNLFVBQVUsSUFBSSxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7b0JBQzNDLElBQUksVUFBVSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDO3dCQUM3QixPQUFPLFVBQVUsQ0FBQyxJQUFJLENBQUM7b0JBQ3pCLENBQUM7Z0JBQ0gsQ0FBQztZQUNILENBQUM7UUFDSCxDQUFDO1FBRUQsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDOzhHQWhHVSxtQkFBbUI7a0hBQW5CLG1CQUFtQixjQUZsQixNQUFNOzsyRkFFUCxtQkFBbUI7a0JBSC9CLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBSZXBsYXlTdWJqZWN0LCBvZiB9IGZyb20gJ3J4anMnO1xuXG5pbXBvcnQgeyBERUZBVUxUX0ZJTFRFUlMgfSBmcm9tICcuLi9jb25zdGFudHMnO1xuaW1wb3J0IHsgSUVsZW1lbnREdG8sIElGdW5jdGlvblZpZXdMaW5lLCBJVmlld0xpbmUsIFNlcnZpY2VTcGVjaWZpY2F0aW9uRHRvLCBTZXJ2aWNlU3BlY2lmaWNhdGlvbkdyb3VwRHRvIH0gZnJvbSAnLi4vbW9kZWwnO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBGbGF0RWxlbWVudHNTZXJ2aWNlIHtcbiAgcHJpdmF0ZSBfZmxhdEVsZW1lbnRzRHRvOiBJRWxlbWVudER0b1tdID0gW107XG4gIHByaXZhdGUgZmxhdEVsZW1lbnRzRHRvU291cmNlID0gbmV3IFJlcGxheVN1YmplY3Q8SUVsZW1lbnREdG9bXT4oMSk7XG4gIGZsYXRFbGVtZW50c0R0byA9IHRoaXMuZmxhdEVsZW1lbnRzRHRvU291cmNlLmFzT2JzZXJ2YWJsZSgpO1xuXG4gIG9iamVjdEVsZW1lbnRzRHRvITogeyBbaWQ6IHN0cmluZ106IElFbGVtZW50RHRvIH07XG5cbiAgZnVuY3Rpb25WaWV3OiBJRnVuY3Rpb25WaWV3TGluZVtdIHwgbnVsbCA9IG51bGw7XG5cbiAgbGlzdEZpbHRlckZ1bmMgPSBERUZBVUxUX0ZJTFRFUlM7XG5cbiAgY29uc3RydWN0b3IoKSB7fVxuXG4gIHNldEVsZW1lbnRzRHRvKGVsZW1lbnRzRHRvOiBTZXJ2aWNlU3BlY2lmaWNhdGlvbkR0byk6IHZvaWQge1xuICAgIHRoaXMuX2ZsYXRFbGVtZW50c0R0byA9IEZsYXRFbGVtZW50c1NlcnZpY2UuZ2V0RmxhdEVsZW1lbnRzKGVsZW1lbnRzRHRvKTtcbiAgICB0aGlzLm9iamVjdEVsZW1lbnRzRHRvID0gRmxhdEVsZW1lbnRzU2VydmljZS5nZXRPYmplY3RFbGVtZW50cyh0aGlzLl9mbGF0RWxlbWVudHNEdG8pO1xuICAgIHRoaXMuZmxhdEVsZW1lbnRzRHRvU291cmNlLm5leHQodGhpcy5fZmxhdEVsZW1lbnRzRHRvKTtcbiAgfVxuXG4gIHB1YmxpYyBzdGF0aWMgZ2V0RmxhdEVsZW1lbnRzKGNvbnRhaW5lcjogeyBlbGVtZW50cz86IElFbGVtZW50RHRvW10gfCBudWxsIH0pOiBJRWxlbWVudER0b1tdIHtcbiAgICBjb25zdCBmbGF0RWxlbWVudHM6IElFbGVtZW50RHRvW10gPSBbXTtcblxuICAgIGlmIChjb250YWluZXIuZWxlbWVudHMpIHtcbiAgICAgIGNvbnRhaW5lci5lbGVtZW50cy5mb3JFYWNoKChlKSA9PiB7XG4gICAgICAgIGZsYXRFbGVtZW50cy5wdXNoKGUpO1xuICAgICAgICBpZiAoZS5lbGVtZW50VHlwZURpc2NyaW1pbmF0b3IgPT09ICdTZXJ2aWNlU3BlY2lmaWNhdGlvbkdyb3VwRHRvJykge1xuICAgICAgICAgIGNvbnN0IGdyb3VwID0gZSBhcyBTZXJ2aWNlU3BlY2lmaWNhdGlvbkdyb3VwRHRvO1xuICAgICAgICAgIGZsYXRFbGVtZW50cy5wdXNoKC4uLnRoaXMuZ2V0RmxhdEVsZW1lbnRzKGdyb3VwKSk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH1cblxuICAgIHJldHVybiBmbGF0RWxlbWVudHM7XG4gIH1cblxuICBwdWJsaWMgc3RhdGljIGdldE9iamVjdEVsZW1lbnRzKGVsZW1lbnRzOiBJRWxlbWVudER0b1tdKTogeyBbaWQ6IHN0cmluZ106IElFbGVtZW50RHRvIH0ge1xuICAgIGNvbnN0IG9iamVjdEVsZW1lbnRzOiB7IFtpZDogc3RyaW5nXTogSUVsZW1lbnREdG8gfSA9IHt9O1xuICAgIGlmIChlbGVtZW50cz8ubGVuZ3RoKSB7XG4gICAgICBlbGVtZW50cy5mb3JFYWNoKChlKSA9PiB7XG4gICAgICAgIGlmIChlPy5pZCkge1xuICAgICAgICAgIG9iamVjdEVsZW1lbnRzW2UuaWRdID0gZTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfVxuICAgIHJldHVybiBvYmplY3RFbGVtZW50cztcbiAgfVxuXG4gIGdldE9uZUVsZW1lbnRCeUlkKGlkOiBzdHJpbmcgfCBudWxsKTogT2JzZXJ2YWJsZTxJRWxlbWVudER0byB8IG51bGw+IHtcbiAgICByZXR1cm4gb2YoaWQgPyB0aGlzLm9iamVjdEVsZW1lbnRzRHRvPy5baWRdIHx8IG51bGwgOiBudWxsKTtcbiAgfVxuXG4gIGNoZWNrRmlsdGVyVmFsdWUoZWxlbWVudDogSUVsZW1lbnREdG8sIGZpbHRlclZhbHVlOiBzdHJpbmcpOiBib29sZWFuIHtcbiAgICBjb25zdCBjbGVhbkZpbHRlciA9IGZpbHRlclZhbHVlLnRyaW0oKS50b0xvY2FsZUxvd2VyQ2FzZSgpO1xuICAgIGZvciAoY29uc3QgZnVuYyBvZiB0aGlzLmxpc3RGaWx0ZXJGdW5jKSB7XG4gICAgICBpZiAoZnVuYyhlbGVtZW50LCBjbGVhbkZpbHRlcikpIHtcbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuXG4gIGp1bXBOZXh0Tm9kZShkZWx0YTogbnVtYmVyLCBjdXJyZW50RWxlbWVudDogSUVsZW1lbnREdG8gfCBudWxsLCBjb25kaXRpb25GdW5jPzogKGU6IElFbGVtZW50RHRvKSA9PiBib29sZWFuKTogSUVsZW1lbnREdG8gfCBudWxsIHtcbiAgICBpZiAoIXRoaXMuX2ZsYXRFbGVtZW50c0R0by5sZW5ndGggfHwgKGNvbmRpdGlvbkZ1bmMgJiYgIXRoaXMuX2ZsYXRFbGVtZW50c0R0by5maW5kKChpdGVtKSA9PiBjb25kaXRpb25GdW5jKGl0ZW0pKSkpIHtcbiAgICAgIHJldHVybiBudWxsO1xuICAgIH1cbiAgICBjb25zdCBzdGFydEVsZW1lbnQgPSBjdXJyZW50RWxlbWVudCB8fCB0aGlzLl9mbGF0RWxlbWVudHNEdG9bMF07XG4gICAgbGV0IG5leHRJbmRleCA9IHRoaXMuX2ZsYXRFbGVtZW50c0R0by5maW5kSW5kZXgoKGl0ZW0pID0+IHN0YXJ0RWxlbWVudC5pZCA9PT0gaXRlbS5pZCk7XG4gICAgaWYgKGN1cnJlbnRFbGVtZW50KSB7XG4gICAgICBuZXh0SW5kZXggPSB0aGlzLmdldE5leHRJbmRleCh0aGlzLl9mbGF0RWxlbWVudHNEdG8ubGVuZ3RoLCBuZXh0SW5kZXgsIGRlbHRhKTtcbiAgICB9XG4gICAgd2hpbGUgKGNvbmRpdGlvbkZ1bmMgJiYgIWNvbmRpdGlvbkZ1bmModGhpcy5fZmxhdEVsZW1lbnRzRHRvW25leHRJbmRleF0pKSB7XG4gICAgICBuZXh0SW5kZXggPSB0aGlzLmdldE5leHRJbmRleCh0aGlzLl9mbGF0RWxlbWVudHNEdG8ubGVuZ3RoLCBuZXh0SW5kZXgsIGRlbHRhKTtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXMuX2ZsYXRFbGVtZW50c0R0b1tuZXh0SW5kZXhdO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXROZXh0SW5kZXgobGVuZ3RoOiBudW1iZXIsIGluZGV4OiBudW1iZXIsIGRlbHRhOiBudW1iZXIpOiBudW1iZXIge1xuICAgIGxldCBuZXh0SW5kZXggPSBpbmRleCArIGRlbHRhO1xuICAgIG5leHRJbmRleCA9IG5leHRJbmRleCA8IDAgPyBsZW5ndGggLSAxIDogbmV4dEluZGV4O1xuICAgIG5leHRJbmRleCA9IG5leHRJbmRleCA+IGxlbmd0aCAtIDEgPyAwIDogbmV4dEluZGV4O1xuICAgIHJldHVybiBuZXh0SW5kZXg7XG4gIH1cblxuICBnZXRDaGFuZ2VkVmlldyhpZDogc3RyaW5nKTogSVZpZXdMaW5lIHwgbnVsbCB7XG4gICAgaWYgKHRoaXMub2JqZWN0RWxlbWVudHNEdG8pIHtcbiAgICAgIGNvbnN0IGVsZW1lbnQgPSB0aGlzLm9iamVjdEVsZW1lbnRzRHRvW2lkXTtcbiAgICAgIGlmIChlbGVtZW50ICYmIHRoaXMuZnVuY3Rpb25WaWV3Py5sZW5ndGgpIHtcbiAgICAgICAgZm9yIChjb25zdCBvYmplY3RWaWV3IG9mIHRoaXMuZnVuY3Rpb25WaWV3KSB7XG4gICAgICAgICAgaWYgKG9iamVjdFZpZXcuZnVuYyhlbGVtZW50KSkge1xuICAgICAgICAgICAgcmV0dXJuIG9iamVjdFZpZXcudmlldztcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gbnVsbDtcbiAgfVxufVxuIl19
@@ -1,116 +0,0 @@
1
- import { inject } from '@angular/core';
2
- import { FlatElementsService } from './flat-elements.service';
3
- import { SelectElementService } from './select-element.service';
4
- export var KeyboardOperationType;
5
- (function (KeyboardOperationType) {
6
- KeyboardOperationType["MoveSelectedPositionUp"] = "moveSelectedPositionUp";
7
- KeyboardOperationType["MoveSelectedPositionDown"] = "moveSelectedPositionDown";
8
- KeyboardOperationType["MoveChosenPositionDown"] = "moveChosenPositionDown";
9
- KeyboardOperationType["MoveChosenPositionUp"] = "moveChosenPositionUp";
10
- KeyboardOperationType["ClearChosenPosition"] = "clearChosenPosition";
11
- KeyboardOperationType["SelectChosenPosition"] = "selectChosenPosition";
12
- })(KeyboardOperationType || (KeyboardOperationType = {}));
13
- export class KeyboardOperationService {
14
- constructor() {
15
- this.defaultKeyboardOperationConfig = {
16
- operations: {
17
- moveSelectedPositionUp: { disabled: false, keyEvent: 'F11' },
18
- moveSelectedPositionDown: { disabled: false, keyEvent: 'F12' },
19
- moveChosenPositionDown: { disabled: false, keyEvent: 'ArrowDown' },
20
- moveChosenPositionUp: { disabled: false, keyEvent: 'ArrowUp' },
21
- clearChosenPosition: { disabled: false, keyEvent: 'Escape' },
22
- selectChosenPosition: { disabled: false, keyEvent: 'Enter' }
23
- }
24
- };
25
- this.flatElementsService = inject(FlatElementsService);
26
- this.selectElementService = inject(SelectElementService);
27
- this.currentConfig = { ...this.defaultKeyboardOperationConfig };
28
- }
29
- getConfig() {
30
- return this.currentConfig;
31
- }
32
- mergeConfigOperation(config) {
33
- this.currentConfig = this.deepMerge(this.currentConfig, config);
34
- }
35
- deepMerge(obj1, obj2) {
36
- const mergedConfig = { ...obj1 };
37
- for (const key in obj2) {
38
- if (Object.prototype.hasOwnProperty.call(obj2, key)) {
39
- if (Object.prototype.hasOwnProperty.call(mergedConfig, key) &&
40
- typeof mergedConfig[key] === 'object' &&
41
- mergedConfig[key] !== null &&
42
- typeof obj2[key] === 'object' &&
43
- obj2[key] !== null) {
44
- mergedConfig[key] = this.deepMerge(mergedConfig[key], obj2[key]);
45
- }
46
- else {
47
- mergedConfig[key] = obj2[key];
48
- }
49
- }
50
- }
51
- return mergedConfig;
52
- }
53
- handleKeyboardEvent(keyEvent, element) {
54
- let nextElement;
55
- if (this.currentConfig.operations.moveSelectedPositionUp?.keyEvent === keyEvent.key &&
56
- !this.currentConfig.operations.moveSelectedPositionUp?.disabled) {
57
- keyEvent.preventDefault();
58
- nextElement = this.flatElementsService.jumpNextNode(-1, element);
59
- this.selectElementService.setClickElement(nextElement);
60
- return {
61
- operation: KeyboardOperationType.MoveSelectedPositionUp,
62
- nextElement: nextElement
63
- };
64
- }
65
- if (this.currentConfig.operations.moveSelectedPositionDown?.keyEvent === keyEvent.key &&
66
- !this.currentConfig.operations.moveSelectedPositionDown?.disabled) {
67
- keyEvent.preventDefault();
68
- nextElement = this.flatElementsService.jumpNextNode(1, element);
69
- this.selectElementService.setClickElement(nextElement);
70
- return {
71
- operation: KeyboardOperationType.MoveSelectedPositionDown,
72
- nextElement: nextElement
73
- };
74
- }
75
- if (this.currentConfig.operations.moveChosenPositionDown?.keyEvent === keyEvent.key &&
76
- !this.currentConfig.operations.moveChosenPositionDown?.disabled) {
77
- keyEvent.preventDefault();
78
- nextElement = this.flatElementsService.jumpNextNode(1, element);
79
- this.selectElementService.setPreselectedElement(nextElement?.id === element?.id ? null : nextElement);
80
- return {
81
- operation: KeyboardOperationType.MoveChosenPositionDown,
82
- nextElement: nextElement
83
- };
84
- }
85
- if (this.currentConfig.operations.moveChosenPositionUp?.keyEvent === keyEvent.key &&
86
- !this.currentConfig.operations.moveChosenPositionUp?.disabled) {
87
- keyEvent.preventDefault();
88
- nextElement = this.flatElementsService.jumpNextNode(-1, element);
89
- this.selectElementService.setPreselectedElement(nextElement?.id === element?.id ? null : nextElement);
90
- return {
91
- operation: KeyboardOperationType.MoveChosenPositionUp,
92
- nextElement: nextElement
93
- };
94
- }
95
- if (this.currentConfig.operations.selectChosenPosition?.keyEvent === keyEvent.key &&
96
- !this.currentConfig.operations.selectChosenPosition?.disabled) {
97
- keyEvent.preventDefault();
98
- this.selectElementService.setClickElement(element);
99
- return {
100
- operation: KeyboardOperationType.SelectChosenPosition,
101
- nextElement: null
102
- };
103
- }
104
- if (this.currentConfig.operations.clearChosenPosition?.keyEvent === keyEvent.key &&
105
- !this.currentConfig.operations.clearChosenPosition?.disabled) {
106
- keyEvent.preventDefault();
107
- this.selectElementService.setPreselectedElement(null);
108
- return {
109
- operation: KeyboardOperationType.ClearChosenPosition,
110
- nextElement: null
111
- };
112
- }
113
- return null;
114
- }
115
- }
116
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5Ym9hcmQtb3BlcmF0aW9uLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLWF2YS9zcmMvbGliL2F2YS10cmVlL3RyZWUvc2VydmljZXMva2V5Ym9hcmQtb3BlcmF0aW9uLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUV2QyxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUM5RCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQVFoRSxNQUFNLENBQU4sSUFBWSxxQkFPWDtBQVBELFdBQVkscUJBQXFCO0lBQy9CLDBFQUFpRCxDQUFBO0lBQ2pELDhFQUFxRCxDQUFBO0lBQ3JELDBFQUFpRCxDQUFBO0lBQ2pELHNFQUE2QyxDQUFBO0lBQzdDLG9FQUEyQyxDQUFBO0lBQzNDLHNFQUE2QyxDQUFBO0FBQy9DLENBQUMsRUFQVyxxQkFBcUIsS0FBckIscUJBQXFCLFFBT2hDO0FBV0QsTUFBTSxPQUFPLHdCQUF3QjtJQWlCbkM7UUFoQlEsbUNBQThCLEdBQTZCO1lBQ2pFLFVBQVUsRUFBRTtnQkFDVixzQkFBc0IsRUFBRSxFQUFFLFFBQVEsRUFBRSxLQUFLLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBRTtnQkFDNUQsd0JBQXdCLEVBQUUsRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFFLFFBQVEsRUFBRSxLQUFLLEVBQUU7Z0JBQzlELHNCQUFzQixFQUFFLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBRSxRQUFRLEVBQUUsV0FBVyxFQUFFO2dCQUNsRSxvQkFBb0IsRUFBRSxFQUFFLFFBQVEsRUFBRSxLQUFLLEVBQUUsUUFBUSxFQUFFLFNBQVMsRUFBRTtnQkFDOUQsbUJBQW1CLEVBQUUsRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFFLFFBQVEs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dWxhci9jb3JlJztcblxuaW1wb3J0IHsgRmxhdEVsZW1lbnRzU2VydmljZSB9IGZyb20gJy4vZmxhdC1lbGVtZW50cy5zZXJ2aWNlJztcbmltcG9ydCB7IFNlbGVjdEVsZW1lbnRTZXJ2aWNlIH0gZnJvbSAnLi9zZWxlY3QtZWxlbWVudC5zZXJ2aWNlJztcblxuaW1wb3J0IHsgSUVsZW1lbnREdG8gfSBmcm9tICcuLi9tb2RlbC9hdmEtbW9kZWxzJztcblxuZXhwb3J0IGludGVyZmFjZSBJS2V5Ym9hcmRPcGVyYXRpb25Db25maWcge1xuICBvcGVyYXRpb25zOiBJS2V5Ym9hcmRPcGVyYXRpb25zO1xufVxuXG5leHBvcnQgZW51bSBLZXlib2FyZE9wZXJhdGlvblR5cGUge1xuICBNb3ZlU2VsZWN0ZWRQb3NpdGlvblVwID0gJ21vdmVTZWxlY3RlZFBvc2l0aW9uVXAnLFxuICBNb3ZlU2VsZWN0ZWRQb3NpdGlvbkRvd24gPSAnbW92ZVNlbGVjdGVkUG9zaXRpb25Eb3duJyxcbiAgTW92ZUNob3NlblBvc2l0aW9uRG93biA9ICdtb3ZlQ2hvc2VuUG9zaXRpb25Eb3duJyxcbiAgTW92ZUNob3NlblBvc2l0aW9uVXAgPSAnbW92ZUNob3NlblBvc2l0aW9uVXAnLFxuICBDbGVhckNob3NlblBvc2l0aW9uID0gJ2NsZWFyQ2hvc2VuUG9zaXRpb24nLFxuICBTZWxlY3RDaG9zZW5Qb3NpdGlvbiA9ICdzZWxlY3RDaG9zZW5Qb3NpdGlvbidcbn1cblxuZXhwb3J0IHR5cGUgSUtleWJvYXJkT3BlcmF0aW9ucyA9IHtcbiAgW2tleSBpbiBLZXlib2FyZE9wZXJhdGlvblR5cGVdPzogSUtleWJvYXJkT3BlcmF0aW9uO1xufTtcblxuZXhwb3J0IGludGVyZmFjZSBJS2V5Ym9hcmRPcGVyYXRpb24ge1xuICBkaXNhYmxlZD86IGJvb2xlYW47XG4gIGtleUV2ZW50Pzogc3RyaW5nO1xufVxuXG5leHBvcnQgY2xhc3MgS2V5Ym9hcmRPcGVyYXRpb25TZXJ2aWNlIHtcbiAgcHJpdmF0ZSBkZWZhdWx0S2V5Ym9hcmRPcGVyYXRpb25Db25maWc6IElLZXlib2FyZE9wZXJhdGlvbkNvbmZpZyA9IHtcbiAgICBvcGVyYXRpb25zOiB7XG4gICAgICBtb3ZlU2VsZWN0ZWRQb3NpdGlvblVwOiB7IGRpc2FibGVkOiBmYWxzZSwga2V5RXZlbnQ6ICdGMTEnIH0sXG4gICAgICBtb3ZlU2VsZWN0ZWRQb3NpdGlvbkRvd246IHsgZGlzYWJsZWQ6IGZhbHNlLCBrZXlFdmVudDogJ0YxMicgfSxcbiAgICAgIG1vdmVDaG9zZW5Qb3NpdGlvbkRvd246IHsgZGlzYWJsZWQ6IGZhbHNlLCBrZXlFdmVudDogJ0Fycm93RG93bicgfSxcbiAgICAgIG1vdmVDaG9zZW5Qb3NpdGlvblVwOiB7IGRpc2FibGVkOiBmYWxzZSwga2V5RXZlbnQ6ICdBcnJvd1VwJyB9LFxuICAgICAgY2xlYXJDaG9zZW5Qb3NpdGlvbjogeyBkaXNhYmxlZDogZmFsc2UsIGtleUV2ZW50OiAnRXNjYXBlJyB9LFxuICAgICAgc2VsZWN0Q2hvc2VuUG9zaXRpb246IHsgZGlzYWJsZWQ6IGZhbHNlLCBrZXlFdmVudDogJ0VudGVyJyB9XG4gICAgfVxuICB9O1xuXG4gIHByaXZhdGUgZmxhdEVsZW1lbnRzU2VydmljZSA9IGluamVjdChGbGF0RWxlbWVudHNTZXJ2aWNlKTtcbiAgcHJpdmF0ZSBzZWxlY3RFbGVtZW50U2VydmljZSA9IGluamVjdChTZWxlY3RFbGVtZW50U2VydmljZSk7XG5cbiAgcHJpdmF0ZSBjdXJyZW50Q29uZmlnID0geyAuLi50aGlzLmRlZmF1bHRLZXlib2FyZE9wZXJhdGlvbkNvbmZpZyB9O1xuXG4gIGNvbnN0cnVjdG9yKCkge31cblxuICBnZXRDb25maWcoKSB7XG4gICAgcmV0dXJuIHRoaXMuY3VycmVudENvbmZpZztcbiAgfVxuXG4gIG1lcmdlQ29uZmlnT3BlcmF0aW9uKGNvbmZpZzogSUtleWJvYXJkT3BlcmF0aW9uQ29uZmlnKSB7XG4gICAgdGhpcy5jdXJyZW50Q29uZmlnID0gdGhpcy5kZWVwTWVyZ2UodGhpcy5jdXJyZW50Q29uZmlnLCBjb25maWcpO1xuICB9XG5cbiAgcHJpdmF0ZSBkZWVwTWVyZ2U8VD4ob2JqMTogVCwgb2JqMjogVCk6IFQge1xuICAgIGNvbnN0IG1lcmdlZENvbmZpZzogVCA9IHsgLi4ub2JqMSB9O1xuXG4gICAgZm9yIChjb25zdCBrZXkgaW4gb2JqMikge1xuICAgICAgaWYgKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChvYmoyLCBrZXkpKSB7XG4gICAgICAgIGlmIChcbiAgICAgICAgICBPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwobWVyZ2VkQ29uZmlnLCBrZXkpICYmXG4gICAgICAgICAgdHlwZW9mIG1lcmdlZENvbmZpZ1trZXldID09PSAnb2JqZWN0JyAmJlxuICAgICAgICAgIG1lcmdlZENvbmZpZ1trZXldICE9PSBudWxsICYmXG4gICAgICAgICAgdHlwZW9mIG9iajJba2V5XSA9PT0gJ29iamVjdCcgJiZcbiAgICAgICAgICBvYmoyW2tleV0gIT09IG51bGxcbiAgICAgICAgKSB7XG4gICAgICAgICAgbWVyZ2VkQ29uZmlnW2tleV0gPSB0aGlzLmRlZXBNZXJnZShtZXJnZWRDb25maWdba2V5XSwgb2JqMltrZXldKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBtZXJnZWRDb25maWdba2V5XSA9IG9iajJba2V5XTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBtZXJnZWRDb25maWc7XG4gIH1cblxuICBoYW5kbGVLZXlib2FyZEV2ZW50KFxuICAgIGtleUV2ZW50OiBLZXlib2FyZEV2ZW50LFxuICAgIGVsZW1lbnQ6IElFbGVtZW50RHRvIHwgbnVsbFxuICApOiB7XG4gICAgb3BlcmF0aW9uOiBLZXlib2FyZE9wZXJhdGlvblR5cGU7XG4gICAgbmV4dEVsZW1lbnQ6IElFbGVtZW50RHRvIHwgbnVsbDtcbiAgfSB8IG51bGwge1xuICAgIGxldCBuZXh0RWxlbWVudDtcblxuICAgIGlmIChcbiAgICAgIHRoaXMuY3VycmVudENvbmZpZy5vcGVyYXRpb25zLm1vdmVTZWxlY3RlZFBvc2l0aW9uVXA/LmtleUV2ZW50ID09PSBrZXlFdmVudC5rZXkgJiZcbiAgICAgICF0aGlzLmN1cnJlbnRDb25maWcub3BlcmF0aW9ucy5tb3ZlU2VsZWN0ZWRQb3NpdGlvblVwPy5kaXNhYmxlZFxuICAgICkge1xuICAgICAga2V5RXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgIG5leHRFbGVtZW50ID0gdGhpcy5mbGF0RWxlbWVudHNTZXJ2aWNlLmp1bXBOZXh0Tm9kZSgtMSwgZWxlbWVudCk7XG4gICAgICB0aGlzLnNlbGVjdEVsZW1lbnRTZXJ2aWNlLnNldENsaWNrRWxlbWVudChuZXh0RWxlbWVudCk7XG4gICAgICByZXR1cm4ge1xuICAgICAgICBvcGVyYXRpb246IEtleWJvYXJkT3BlcmF0aW9uVHlwZS5Nb3ZlU2VsZWN0ZWRQb3NpdGlvblVwLFxuICAgICAgICBuZXh0RWxlbWVudDogbmV4dEVsZW1lbnRcbiAgICAgIH07XG4gICAgfVxuXG4gICAgaWYgKFxuICAgICAgdGhpcy5jdXJyZW50Q29uZmlnLm9wZXJhdGlvbnMubW92ZVNlbGVjdGVkUG9zaXRpb25Eb3duPy5rZXlFdmVudCA9PT0ga2V5RXZlbnQua2V5ICYmXG4gICAgICAhdGhpcy5jdXJyZW50Q29uZmlnLm9wZXJhdGlvbnMubW92ZVNlbGVjdGVkUG9zaXRpb25Eb3duPy5kaXNhYmxlZFxuICAgICkge1xuICAgICAga2V5RXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgIG5leHRFbGVtZW50ID0gdGhpcy5mbGF0RWxlbWVudHNTZXJ2aWNlLmp1bXBOZXh0Tm9kZSgxLCBlbGVtZW50KTtcbiAgICAgIHRoaXMuc2VsZWN0RWxlbWVudFNlcnZpY2Uuc2V0Q2xpY2tFbGVtZW50KG5leHRFbGVtZW50KTtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIG9wZXJhdGlvbjogS2V5Ym9hcmRPcGVyYXRpb25UeXBlLk1vdmVTZWxlY3RlZFBvc2l0aW9uRG93bixcbiAgICAgICAgbmV4dEVsZW1lbnQ6IG5leHRFbGVtZW50XG4gICAgICB9O1xuICAgIH1cblxuICAgIGlmIChcbiAgICAgIHRoaXMuY3VycmVudENvbmZpZy5vcGVyYXRpb25zLm1vdmVDaG9zZW5Qb3NpdGlvbkRvd24/LmtleUV2ZW50ID09PSBrZXlFdmVudC5rZXkgJiZcbiAgICAgICF0aGlzLmN1cnJlbnRDb25maWcub3BlcmF0aW9ucy5tb3ZlQ2hvc2VuUG9zaXRpb25Eb3duPy5kaXNhYmxlZFxuICAgICkge1xuICAgICAga2V5RXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgIG5leHRFbGVtZW50ID0gdGhpcy5mbGF0RWxlbWVudHNTZXJ2aWNlLmp1bXBOZXh0Tm9kZSgxLCBlbGVtZW50KTtcbiAgICAgIHRoaXMuc2VsZWN0RWxlbWVudFNlcnZpY2Uuc2V0UHJlc2VsZWN0ZWRFbGVtZW50KG5leHRFbGVtZW50Py5pZCA9PT0gZWxlbWVudD8uaWQgPyBudWxsIDogbmV4dEVsZW1lbnQpO1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgb3BlcmF0aW9uOiBLZXlib2FyZE9wZXJhdGlvblR5cGUuTW92ZUNob3NlblBvc2l0aW9uRG93bixcbiAgICAgICAgbmV4dEVsZW1lbnQ6IG5leHRFbGVtZW50XG4gICAgICB9O1xuICAgIH1cblxuICAgIGlmIChcbiAgICAgIHRoaXMuY3VycmVudENvbmZpZy5vcGVyYXRpb25zLm1vdmVDaG9zZW5Qb3NpdGlvblVwPy5rZXlFdmVudCA9PT0ga2V5RXZlbnQua2V5ICYmXG4gICAgICAhdGhpcy5jdXJyZW50Q29uZmlnLm9wZXJhdGlvbnMubW92ZUNob3NlblBvc2l0aW9uVXA/LmRpc2FibGVkXG4gICAgKSB7XG4gICAgICBrZXlFdmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgbmV4dEVsZW1lbnQgPSB0aGlzLmZsYXRFbGVtZW50c1NlcnZpY2UuanVtcE5leHROb2RlKC0xLCBlbGVtZW50KTtcbiAgICAgIHRoaXMuc2VsZWN0RWxlbWVudFNlcnZpY2Uuc2V0UHJlc2VsZWN0ZWRFbGVtZW50KG5leHRFbGVtZW50Py5pZCA9PT0gZWxlbWVudD8uaWQgPyBudWxsIDogbmV4dEVsZW1lbnQpO1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgb3BlcmF0aW9uOiBLZXlib2FyZE9wZXJhdGlvblR5cGUuTW92ZUNob3NlblBvc2l0aW9uVXAsXG4gICAgICAgIG5leHRFbGVtZW50OiBuZXh0RWxlbWVudFxuICAgICAgfTtcbiAgICB9XG5cbiAgICBpZiAoXG4gICAgICB0aGlzLmN1cnJlbnRDb25maWcub3BlcmF0aW9ucy5zZWxlY3RDaG9zZW5Qb3NpdGlvbj8ua2V5RXZlbnQgPT09IGtleUV2ZW50LmtleSAmJlxuICAgICAgIXRoaXMuY3VycmVudENvbmZpZy5vcGVyYXRpb25zLnNlbGVjdENob3NlblBvc2l0aW9uPy5kaXNhYmxlZFxuICAgICkge1xuICAgICAga2V5RXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgIHRoaXMuc2VsZWN0RWxlbWVudFNlcnZpY2Uuc2V0Q2xpY2tFbGVtZW50KGVsZW1lbnQpO1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgb3BlcmF0aW9uOiBLZXlib2FyZE9wZXJhdGlvblR5cGUuU2VsZWN0Q2hvc2VuUG9zaXRpb24sXG4gICAgICAgIG5leHRFbGVtZW50OiBudWxsXG4gICAgICB9O1xuICAgIH1cblxuICAgIGlmIChcbiAgICAgIHRoaXMuY3VycmVudENvbmZpZy5vcGVyYXRpb25zLmNsZWFyQ2hvc2VuUG9zaXRpb24/LmtleUV2ZW50ID09PSBrZXlFdmVudC5rZXkgJiZcbiAgICAgICF0aGlzLmN1cnJlbnRDb25maWcub3BlcmF0aW9ucy5jbGVhckNob3NlblBvc2l0aW9uPy5kaXNhYmxlZFxuICAgICkge1xuICAgICAga2V5RXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgIHRoaXMuc2VsZWN0RWxlbWVudFNlcnZpY2Uuc2V0UHJlc2VsZWN0ZWRFbGVtZW50KG51bGwpO1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgb3BlcmF0aW9uOiBLZXlib2FyZE9wZXJhdGlvblR5cGUuQ2xlYXJDaG9zZW5Qb3NpdGlvbixcbiAgICAgICAgbmV4dEVsZW1lbnQ6IG51bGxcbiAgICAgIH07XG4gICAgfVxuXG4gICAgcmV0dXJuIG51bGw7XG4gIH1cbn1cbiJdfQ==