@bizdoc/core 1.13.21 → 1.13.25

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 (133) hide show
  1. package/assets/i18n/cldr-data/main/ar/ca-buddhist.json +530 -0
  2. package/assets/i18n/cldr-data/main/ar/ca-chinese.json +1254 -0
  3. package/assets/i18n/cldr-data/main/ar/ca-coptic.json +539 -0
  4. package/assets/i18n/cldr-data/main/ar/ca-dangi.json +1254 -0
  5. package/assets/i18n/cldr-data/main/ar/ca-ethiopic-amete-alem.json +536 -0
  6. package/assets/i18n/cldr-data/main/ar/ca-ethiopic.json +539 -0
  7. package/assets/i18n/cldr-data/main/ar/ca-generic.json +533 -0
  8. package/assets/i18n/cldr-data/main/ar/ca-gregorian.json +557 -0
  9. package/assets/i18n/cldr-data/main/ar/ca-hebrew.json +542 -0
  10. package/assets/i18n/cldr-data/main/ar/ca-indian.json +530 -0
  11. package/assets/i18n/cldr-data/main/ar/ca-islamic-civil.json +530 -0
  12. package/assets/i18n/cldr-data/main/ar/ca-islamic-rgsa.json +530 -0
  13. package/assets/i18n/cldr-data/main/ar/ca-islamic-tbla.json +530 -0
  14. package/assets/i18n/cldr-data/main/ar/ca-islamic-umalqura.json +530 -0
  15. package/assets/i18n/cldr-data/main/ar/ca-islamic.json +530 -0
  16. package/assets/i18n/cldr-data/main/ar/ca-japanese.json +1238 -0
  17. package/assets/i18n/cldr-data/main/ar/ca-persian.json +530 -0
  18. package/assets/i18n/cldr-data/main/ar/ca-roc.json +533 -0
  19. package/assets/i18n/cldr-data/main/ar/characters.json +52 -0
  20. package/assets/i18n/cldr-data/main/ar/currencies.json +2306 -0
  21. package/assets/i18n/cldr-data/main/ar/dateFields.json +1039 -0
  22. package/assets/i18n/cldr-data/main/ar/delimiters.json +18 -0
  23. package/assets/i18n/cldr-data/main/ar/languages.json +556 -0
  24. package/assets/i18n/cldr-data/main/ar/layout.json +18 -0
  25. package/assets/i18n/cldr-data/main/ar/listPatterns.json +68 -0
  26. package/assets/i18n/cldr-data/main/ar/localeDisplayNames.json +230 -0
  27. package/assets/i18n/cldr-data/main/ar/measurementSystemNames.json +19 -0
  28. package/assets/i18n/cldr-data/main/ar/numbers.json +511 -0
  29. package/assets/i18n/cldr-data/main/ar/posix.json +18 -0
  30. package/assets/i18n/cldr-data/main/ar/scripts.json +202 -0
  31. package/assets/i18n/cldr-data/main/ar/territories.json +324 -0
  32. package/assets/i18n/cldr-data/main/ar/timeZoneNames.json +2268 -0
  33. package/assets/i18n/cldr-data/main/ar/units.json +4587 -0
  34. package/assets/i18n/cldr-data/main/ar/variants.json +119 -0
  35. package/assets/i18n/cldr-data/main/de/ca-buddhist.json +530 -0
  36. package/assets/i18n/cldr-data/main/de/ca-chinese.json +1254 -0
  37. package/assets/i18n/cldr-data/main/de/ca-coptic.json +539 -0
  38. package/assets/i18n/cldr-data/main/de/ca-dangi.json +1254 -0
  39. package/assets/i18n/cldr-data/main/de/ca-ethiopic-amete-alem.json +536 -0
  40. package/assets/i18n/cldr-data/main/de/ca-ethiopic.json +539 -0
  41. package/assets/i18n/cldr-data/main/de/ca-generic.json +533 -0
  42. package/assets/i18n/cldr-data/main/de/ca-gregorian.json +551 -0
  43. package/assets/i18n/cldr-data/main/de/ca-hebrew.json +542 -0
  44. package/assets/i18n/cldr-data/main/de/ca-indian.json +530 -0
  45. package/assets/i18n/cldr-data/main/de/ca-islamic-civil.json +530 -0
  46. package/assets/i18n/cldr-data/main/de/ca-islamic-rgsa.json +530 -0
  47. package/assets/i18n/cldr-data/main/de/ca-islamic-tbla.json +530 -0
  48. package/assets/i18n/cldr-data/main/de/ca-islamic-umalqura.json +530 -0
  49. package/assets/i18n/cldr-data/main/de/ca-islamic.json +530 -0
  50. package/assets/i18n/cldr-data/main/de/ca-japanese.json +1238 -0
  51. package/assets/i18n/cldr-data/main/de/ca-persian.json +530 -0
  52. package/assets/i18n/cldr-data/main/de/ca-roc.json +533 -0
  53. package/assets/i18n/cldr-data/main/de/characters.json +52 -0
  54. package/assets/i18n/cldr-data/main/de/contextTransforms.json +18 -0
  55. package/assets/i18n/cldr-data/main/de/currencies.json +1932 -0
  56. package/assets/i18n/cldr-data/main/de/dateFields.json +679 -0
  57. package/assets/i18n/cldr-data/main/de/delimiters.json +18 -0
  58. package/assets/i18n/cldr-data/main/de/languages.json +640 -0
  59. package/assets/i18n/cldr-data/main/de/layout.json +18 -0
  60. package/assets/i18n/cldr-data/main/de/listPatterns.json +68 -0
  61. package/assets/i18n/cldr-data/main/de/localeDisplayNames.json +230 -0
  62. package/assets/i18n/cldr-data/main/de/measurementSystemNames.json +19 -0
  63. package/assets/i18n/cldr-data/main/de/numbers.json +155 -0
  64. package/assets/i18n/cldr-data/main/de/posix.json +18 -0
  65. package/assets/i18n/cldr-data/main/de/scripts.json +209 -0
  66. package/assets/i18n/cldr-data/main/de/territories.json +324 -0
  67. package/assets/i18n/cldr-data/main/de/timeZoneNames.json +2332 -0
  68. package/assets/i18n/cldr-data/main/de/units.json +2546 -0
  69. package/assets/i18n/cldr-data/main/de/variants.json +119 -0
  70. package/assets/i18n/cldr-data/main/ru/ca-buddhist.json +524 -0
  71. package/assets/i18n/cldr-data/main/ru/ca-chinese.json +1248 -0
  72. package/assets/i18n/cldr-data/main/ru/ca-coptic.json +533 -0
  73. package/assets/i18n/cldr-data/main/ru/ca-dangi.json +1248 -0
  74. package/assets/i18n/cldr-data/main/ru/ca-ethiopic-amete-alem.json +530 -0
  75. package/assets/i18n/cldr-data/main/ru/ca-ethiopic.json +533 -0
  76. package/assets/i18n/cldr-data/main/ru/ca-generic.json +527 -0
  77. package/assets/i18n/cldr-data/main/ru/ca-gregorian.json +546 -0
  78. package/assets/i18n/cldr-data/main/ru/ca-hebrew.json +536 -0
  79. package/assets/i18n/cldr-data/main/ru/ca-indian.json +524 -0
  80. package/assets/i18n/cldr-data/main/ru/ca-islamic-civil.json +524 -0
  81. package/assets/i18n/cldr-data/main/ru/ca-islamic-rgsa.json +524 -0
  82. package/assets/i18n/cldr-data/main/ru/ca-islamic-tbla.json +524 -0
  83. package/assets/i18n/cldr-data/main/ru/ca-islamic-umalqura.json +524 -0
  84. package/assets/i18n/cldr-data/main/ru/ca-islamic.json +524 -0
  85. package/assets/i18n/cldr-data/main/ru/ca-japanese.json +1232 -0
  86. package/assets/i18n/cldr-data/main/ru/ca-persian.json +524 -0
  87. package/assets/i18n/cldr-data/main/ru/ca-roc.json +527 -0
  88. package/assets/i18n/cldr-data/main/ru/characters.json +52 -0
  89. package/assets/i18n/cldr-data/main/ru/contextTransforms.json +62 -0
  90. package/assets/i18n/cldr-data/main/ru/currencies.json +2001 -0
  91. package/assets/i18n/cldr-data/main/ru/dateFields.json +859 -0
  92. package/assets/i18n/cldr-data/main/ru/delimiters.json +18 -0
  93. package/assets/i18n/cldr-data/main/ru/languages.json +557 -0
  94. package/assets/i18n/cldr-data/main/ru/layout.json +18 -0
  95. package/assets/i18n/cldr-data/main/ru/listPatterns.json +68 -0
  96. package/assets/i18n/cldr-data/main/ru/localeDisplayNames.json +230 -0
  97. package/assets/i18n/cldr-data/main/ru/measurementSystemNames.json +19 -0
  98. package/assets/i18n/cldr-data/main/ru/numbers.json +231 -0
  99. package/assets/i18n/cldr-data/main/ru/posix.json +18 -0
  100. package/assets/i18n/cldr-data/main/ru/scripts.json +209 -0
  101. package/assets/i18n/cldr-data/main/ru/territories.json +324 -0
  102. package/assets/i18n/cldr-data/main/ru/timeZoneNames.json +2317 -0
  103. package/assets/i18n/cldr-data/main/ru/units.json +3647 -0
  104. package/assets/i18n/cldr-data/main/ru/variants.json +119 -0
  105. package/esm2020/lib/compose/action/assign-action.component.mjs +2 -1
  106. package/esm2020/lib/compose/action/moveto-action.component.mjs +88 -0
  107. package/esm2020/lib/compose/attachments/preview/attachment-preview.component.mjs +6 -6
  108. package/esm2020/lib/core/controls/file.input.mjs +3 -3
  109. package/esm2020/lib/core/info/attachment-info.service.mjs +1 -1
  110. package/esm2020/lib/core/mailbox.service.mjs +3 -3
  111. package/esm2020/lib/core/session.service.mjs +12 -10
  112. package/esm2020/lib/core/translate.service.mjs +18 -10
  113. package/esm2020/lib/core/translations.mjs +15 -7
  114. package/esm2020/lib/cube/cube.service.mjs +1 -1
  115. package/esm2020/lib/cube/grid/spreadsheet.component.mjs +2 -2
  116. package/esm2020/lib/cube/matrix/table.component.mjs +5 -3
  117. package/esm2020/lib/cube/view.pane.component.mjs +3 -3
  118. package/esm2020/lib/reports/report.mobile.component.mjs +11 -3
  119. package/esm2020/lib/reports/report.pane.component.mjs +1 -1
  120. package/esm2020/lib/shared.module.mjs +5 -4
  121. package/fesm2015/bizdoc-core.mjs +181 -87
  122. package/fesm2015/bizdoc-core.mjs.map +1 -1
  123. package/fesm2020/bizdoc-core.mjs +181 -87
  124. package/fesm2020/bizdoc-core.mjs.map +1 -1
  125. package/lib/compose/action/moveto-action.component.d.ts +36 -0
  126. package/lib/core/mailbox.service.d.ts +1 -1
  127. package/lib/core/translate.service.d.ts +3 -0
  128. package/lib/core/translations.d.ts +14 -6
  129. package/lib/cube/cube.service.d.ts +1 -1
  130. package/lib/reports/report.mobile.component.d.ts +3 -0
  131. package/lib/reports/report.pane.component.d.ts +1 -1
  132. package/lib/shared.module.d.ts +112 -111
  133. package/package.json +11 -11
@@ -0,0 +1,119 @@
1
+ {
2
+ "main": {
3
+ "ru": {
4
+ "identity": {
5
+ "version": {
6
+ "_cldrVersion": "36"
7
+ },
8
+ "language": "ru"
9
+ },
10
+ "localeDisplayNames": {
11
+ "variants": {
12
+ "1901": "Традиционная немецкая орфография",
13
+ "1994": "Стандартизированная резьянская орфография",
14
+ "1996": "Правила немецкой орфографии установленные с 1996 года",
15
+ "1606NICT": "Поздне-средневековый французский до 1606 г.",
16
+ "1694ACAD": "1694ACAD",
17
+ "1959ACAD": "1959ACAD",
18
+ "ABL1943": "ABL1943",
19
+ "AKUAPEM": "AKUAPEM",
20
+ "ALALC97": "ALALC97",
21
+ "ALUKU": "ALUKU",
22
+ "AO1990": "AO1990",
23
+ "ARANES": "ARANES",
24
+ "AREVELA": "Восточно-армянский",
25
+ "AREVMDA": "Западно-армянский",
26
+ "ASANTE": "ASANTE",
27
+ "AUVERN": "AUVERN",
28
+ "BAKU1926": "Унифицированный тюрско-латинский алфавит",
29
+ "BALANKA": "BALANKA",
30
+ "BARLA": "BARLA",
31
+ "BASICENG": "BASICENG",
32
+ "BAUDDHA": "BAUDDHA",
33
+ "BISCAYAN": "BISCAYAN",
34
+ "BISKE": "BISKE",
35
+ "BOHORIC": "BOHORIC",
36
+ "BOONT": "BOONT",
37
+ "BORNHOLM": "BORNHOLM",
38
+ "CISAUP": "CISAUP",
39
+ "COLB1945": "COLB1945",
40
+ "CORNU": "CORNU",
41
+ "CREISS": "CREISS",
42
+ "DAJNKO": "DAJNKO",
43
+ "EKAVSK": "EKAVSK",
44
+ "EMODENG": "EMODENG",
45
+ "FONIPA": "Международный фонетический алфавит",
46
+ "FONKIRSH": "FONKIRSH",
47
+ "FONNAPA": "FONNAPA",
48
+ "FONUPA": "FONUPA",
49
+ "FONXSAMP": "FONXSAMP",
50
+ "GASCON": "GASCON",
51
+ "GRCLASS": "GRCLASS",
52
+ "GRITAL": "GRITAL",
53
+ "GRMISTR": "GRMISTR",
54
+ "HEPBURN": "HEPBURN",
55
+ "HOGNORSK": "HOGNORSK",
56
+ "HSISTEMO": "HSISTEMO",
57
+ "IJEKAVSK": "IJEKAVSK",
58
+ "ITIHASA": "ITIHASA",
59
+ "IVANCHOV": "IVANCHOV",
60
+ "JAUER": "JAUER",
61
+ "JYUTPING": "JYUTPING",
62
+ "KKCOR": "KKCOR",
63
+ "KOCIEWIE": "KOCIEWIE",
64
+ "KSCOR": "KSCOR",
65
+ "LAUKIKA": "LAUKIKA",
66
+ "LEMOSIN": "LEMOSIN",
67
+ "LENGADOC": "LENGADOC",
68
+ "LIPAW": "LIPAW",
69
+ "LUNA1918": "LUNA1918",
70
+ "METELKO": "METELKO",
71
+ "MONOTON": "Монотонный",
72
+ "NDYUKA": "NDYUKA",
73
+ "NEDIS": "NEDIS",
74
+ "NEWFOUND": "NEWFOUND",
75
+ "NICARD": "NICARD",
76
+ "NJIVA": "NJIVA",
77
+ "NULIK": "NULIK",
78
+ "OSOJS": "OSOJS",
79
+ "OXENDICT": "OXENDICT",
80
+ "PAHAWH2": "PAHAWH2",
81
+ "PAHAWH3": "PAHAWH3",
82
+ "PAHAWH4": "PAHAWH4",
83
+ "PAMAKA": "PAMAKA",
84
+ "PETR1708": "PETR1708",
85
+ "PINYIN": "Пиньинь",
86
+ "POLYTON": "Многотональный",
87
+ "POSIX": "Компьютерный",
88
+ "PROVENC": "PROVENC",
89
+ "PUTER": "PUTER",
90
+ "REVISED": "REVISED",
91
+ "RIGIK": "RIGIK",
92
+ "ROZAJ": "Резьянский",
93
+ "RUMGR": "RUMGR",
94
+ "SAAHO": "Сахо",
95
+ "SCOTLAND": "Англо-шотландский",
96
+ "SCOUSE": "SCOUSE",
97
+ "SIMPLE": "SIMPLE",
98
+ "SOLBA": "SOLBA",
99
+ "SOTAV": "SOTAV",
100
+ "SPANGLIS": "SPANGLIS",
101
+ "SURMIRAN": "SURMIRAN",
102
+ "SURSILV": "SURSILV",
103
+ "SUTSILV": "SUTSILV",
104
+ "TARASK": "Тарашкевица",
105
+ "UCCOR": "UCCOR",
106
+ "UCRCOR": "UCRCOR",
107
+ "ULSTER": "ULSTER",
108
+ "UNIFON": "UNIFON",
109
+ "VAIDIKA": "VAIDIKA",
110
+ "VALENCIA": "Валенсийский",
111
+ "VALLADER": "VALLADER",
112
+ "VIVARAUP": "VIVARAUP",
113
+ "WADEGILE": "Система Уэйда – Джайлза",
114
+ "XSISTEMO": "XSISTEMO"
115
+ }
116
+ }
117
+ }
118
+ }
119
+ }
@@ -70,6 +70,7 @@ let AssignActionComponent = class AssignActionComponent {
70
70
  }
71
71
  ngOnDestroy() {
72
72
  this._destroy.next();
73
+ this._destroy.complete();
73
74
  }
74
75
  };
75
76
  AssignActionComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.3", ngImport: i0, type: AssignActionComponent, deps: [{ token: i1.FormBuilder }, { token: i2.SessionService }, { token: i3.AccountService }], target: i0.ɵɵFactoryTarget.Component });
@@ -87,4 +88,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.3", ngImpor
87
88
  type: ViewChild,
88
89
  args: ['nameInput', { static: true, read: ElementRef }]
89
90
  }] } });
90
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXNzaWduLWFjdGlvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJyYXJpZXMvY29yZS9zcmMvbGliL2NvbXBvc2UvYWN0aW9uL2Fzc2lnbi1hY3Rpb24uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vbGlicmFyaWVzL2NvcmUvc3JjL2xpYi9jb21wb3NlL2FjdGlvbi9hc3NpZ24tYWN0aW9uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBcUIsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3BGLE9BQU8sRUFBZSxVQUFVLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUV6RCxPQUFPLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3JELE9BQU8sRUFBRSxZQUFZLEVBQWMsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3pELE9BQU8sRUFBRSxTQUFTLEVBQVUsR0FBRyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRW5FLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7Ozs7SUFZbEMscUJBQXFCLFNBQXJCLHFCQUFxQjtJQVloQyxZQUFvQixHQUFnQixFQUFVLFFBQXdCLEVBQVUsU0FBeUI7UUFBckYsUUFBRyxHQUFILEdBQUcsQ0FBYTtRQUFVLGFBQVEsR0FBUixRQUFRLENBQWdCO1FBQVUsY0FBUyxHQUFULFNBQVMsQ0FBZ0I7UUFYaEcsdUJBQWtCLEdBQWEsQ0FBQyxLQUFLLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFFOUMsU0FBSSxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDO1lBQzdCLE9BQU8sRUFBRSxJQUFJLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsVUFB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LEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsVUFBVSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBPbkRlc3Ryb3ksIE9uSW5pdCwgVmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEZvcm1CdWlsZGVyLCBWYWxpZGF0b3JzIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBNYXRBdXRvY29tcGxldGVTZWxlY3RlZEV2ZW50IH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvYXV0b2NvbXBsZXRlJztcclxuaW1wb3J0IHsgQ09NTUEsIEVOVEVSIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2tleWNvZGVzJztcclxuaW1wb3J0IHsgZGVib3VuY2VUaW1lLCBPYnNlcnZhYmxlLCBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IHRha2VVbnRpbCwgZmlsdGVyLCBtYXAsIHN3aXRjaE1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuaW1wb3J0IHsgaXNTdHJpbmcgfSBmcm9tICcuLi8uLi9jb3JlL2Z1bmN0aW9ucyc7XHJcbmltcG9ydCB7IEJpekRvYyB9IGZyb20gJy4uLy4uL2NvcmUvZGVjb3JhdG9ycyc7XHJcbmltcG9ydCB7IFVzZXJJbmZvIH0gZnJvbSAnLi4vLi4vY29yZS9tb2RlbHMnO1xyXG5pbXBvcnQgeyBBcmd1bWVudHNDb21wb25lbnQgfSBmcm9tICcuLi8uLi9jb3JlL2Jhc2UnO1xyXG5pbXBvcnQgeyBTZXNzaW9uU2VydmljZSB9IGZyb20gJy4uLy4uL2NvcmUvc2Vzc2lvbi5zZXJ2aWNlJztcclxuaW1wb3J0IHsgQWNjb3VudFNlcnZpY2UgfSBmcm9tICcuLi8uLi9jb3JlL2FjY291bnQuc2VydmljZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICB0ZW1wbGF0ZVVybDogJy4vYXNzaWduLWFjdGlvbi5jb21wb25lbnQuaHRtbCdcclxufSlcclxuQEJpekRvYyh7XHJcbiAgc2VsZWN0b3I6ICdiaXpkb2MtYWN0aW9uLWFzc2lnbidcclxufSlcclxuZXhwb3J0IGNsYXNzIEFzc2lnbkFjdGlvbkNvbXBvbmVudCBpbXBsZW1lbnRzIEFyZ3VtZW50c0NvbXBvbmVudCwgT25Jbml0LCBPbkRlc3Ryb3kge1xyXG4gIHJlYWRvbmx5IHNlcGFyYXRvcktleXNDb2RlczogbnVtYmVyW10gPSBbRU5URVIsIENPTU1BXTtcclxuICBAVmlld0NoaWxkKCduYW1lSW5wdXQnLCB7IHN0YXRpYzogdHJ1ZSwgcmVhZDogRWxlbWVudFJlZiB9KSBuYW1lSW5wdXQ6IEVsZW1lbnRSZWY8SFRNTElucHV0RWxlbWVudD47XHJcbiAgcmVhZG9ubHkgZm9ybSA9IHRoaXMuX2ZiLmdyb3VwKHtcclxuICAgIHVzZXJJZHM6IHRoaXMuX2ZiLmNvbnRyb2wobnVsbCwgVmFsaWRhdG9ycy5yZXF1aXJlZCksXHJcbiAgICBmeWk6IHRoaXMuX2ZiLmNvbnRyb2woZmFsc2UpLFxyXG4gICAgcm91bmR0cmlwOiB0aGlzLl9mYi5jb250cm9sKGZhbHNlKSxcclxuICAgIG5vdGU6IHRoaXMuX2ZiLmNvbnRyb2wobnVsbCwgVmFsaWRhdG9ycy5tYXhMZW5ndGgoMjAwKSlcclxuICB9KTtcclxuICByZWFkb25seSB1c2VySWRzID0gdGhpcy5fZmIuY29udHJvbChbXSk7XHJcbiAgdXNlcnMkOiBPYnNlcnZhYmxlPFVzZXJJbmZvW10+O1xyXG4gIHByaXZhdGUgX2Rlc3Ryb3kgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgX2ZiOiBGb3JtQnVpbGRlciwgcHJpdmF0ZSBfc2Vzc2lvbjogU2Vzc2lvblNlcnZpY2UsIHByaXZhdGUgX2FjY291bnRzOiBBY2NvdW50U2VydmljZSkge1xyXG4gIH1cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIGNvbnN0IG1lID0gdGhpcy5fc2Vzc2lvbi51c2VySWQ7XHJcbiAgICB0aGlzLnVzZXJzJCA9IHRoaXMudXNlcklkcy52YWx1ZUNoYW5nZXMuXHJcbiAgICAgIHBpcGUoXHJcbiAgICAgICAgZGVib3VuY2VUaW1lKDIwMCksXHJcbiAgICAgICAgdGFrZVVudGlsKHRoaXMuX2Rlc3Ryb3kpLFxyXG4gICAgICAgIHN3aXRjaE1hcCh2ID0+XHJcbiAgICAgICAgICB0aGlzLl9hY2NvdW50cy5maW5kQWxsKHYsIHsgdGFrZTogMjAgfSkuXHJcbiAgICAgICAgICAgIHBpcGUobWFwKHIgPT5cclxuICAgICAgICAgICAgICByLmZpbHRlcih1ID0+IHUuaWQgIT09IG1lKSkpKSk7XHJcbiAgfVxyXG4gIC8qKlxyXG4gICAqXHJcbiAgICogQHBhcmFtIGlucFxyXG4gICAqIEBwYXJhbSBldmVudFxyXG4gICAqL1xyXG4gIHVzZXJTZWxlY3RlZChpbnA6IEhUTUxJbnB1dEVsZW1lbnQsIGV2ZW50OiBNYXRBdXRvY29tcGxldGVTZWxlY3RlZEV2ZW50KTogdm9pZCB7XHJcbiAgICBjb25zdCB1c2VySWRzID0gdGhpcy5mb3JtLmNvbnRyb2xzWyd1c2VySWRzJ10udmFsdWUgYXMgc3RyaW5nW10gfHwgW107XHJcbiAgICB1c2VySWRzLnB1c2goZXZlbnQub3B0aW9uLnZhbHVlKTtcclxuICAgIHRoaXMuZm9ybS5jb250cm9sc1sndXNlcklkcyddLnNldFZhbHVlKHVzZXJJZHMpO1xyXG4gICAgaW5wLnZhbHVlID0gJyc7XHJcbiAgfVxyXG4gIC8qKlxyXG4gICAqXHJcbiAgICogQHBhcmFtIGlkXHJcbiAgICovXHJcbiAgcmVtb3ZlZChpZDogc3RyaW5nKTogdm9pZCB7XHJcbiAgICBjb25zdCB1c2VySWRzID0gdGhpcy5mb3JtLmNvbnRyb2xzWyd1c2VySWRzJ10udmFsdWUgYXMgc3RyaW5nW107XHJcblxyXG4gICAgY29uc3QgaW5kZXggPSB1c2VySWRzLmluZGV4T2YoaWQpO1xyXG5cclxuICAgIGlmICh1c2VySWRzLmxlbmd0aCA+IDEpIHtcclxuICAgICAgaW5kZXggPj0gMCAmJlxyXG4gICAgICAgIHVzZXJJZHMuc3BsaWNlKGluZGV4LCAxKTtcclxuXHJcbiAgICAgIHRoaXMuZm9ybS51cGRhdGVWYWx1ZUFuZFZhbGlkaXR5KCk7XHJcbiAgICB9XHJcbiAgICBlbHNlIFxyXG4gICAgICB0aGlzLmZvcm0uY29udHJvbHNbJ3VzZXJJZHMnXS5zZXRWYWx1ZShudWxsKTtcclxuICB9XHJcbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XHJcbiAgICB0aGlzLl9kZXN0cm95Lm5leHQoKTtcclxuICB9XHJcbn1cclxuIiwiPGZvcm0gYXV0b2NvbXBsZXRlPVwib2ZmXCIgZnhMYXlvdXQ9XCJjb2x1bW5cIiBbZm9ybUdyb3VwXT1cImZvcm1cIj5cclxuICA8bWF0LWZvcm0tZmllbGQ+XHJcbiAgICA8bWF0LWNoaXAtbGlzdCAjY2hpcExpc3QgW2F0dHIuYXJpYS1sYWJlbF09XCInQXNzaWduVG8nfHRyYW5zbGF0ZVwiPlxyXG4gICAgICA8bWF0LWNoaXAgKm5nRm9yPVwibGV0IHUgb2YgZm9ybS52YWx1ZS51c2VySWRzXCJcclxuICAgICAgICAgICAgICAgIFtzZWxlY3RhYmxlXT1cInRydWVcIlxyXG4gICAgICAgICAgICAgICAgW3JlbW92YWJsZV09XCJ0cnVlXCJcclxuICAgICAgICAgICAgICAgIChyZW1vdmVkKT1cInJlbW92ZWQodSlcIj5cclxuICAgICAgICB7e3UgfCB1c2VyTmFtZSB8IGFzeW5jIH19XHJcbiAgICAgICAgPG1hdC1pY29uIG1hdENoaXBSZW1vdmU+Y2FuY2VsPC9tYXQtaWNvbj5cclxuICAgICAgPC9tYXQtY2hpcD5cclxuICAgICAgPGlucHV0IHJlcXVpcmVkIFtwbGFjZWhvbGRlcl09XCInQXNzaWduVG8nfHRyYW5zbGF0ZVwiXHJcbiAgICAgICAgICAgICBbZm9ybUNvbnRyb2xdPXVzZXJJZHNcclxuICAgICAgICAgICAgIGNka0ZvY3VzSW5pdGlhbCBcclxuICAgICAgICAgICAgICNuYW1lSW5wdXRcclxuICAgICAgICAgICAgIFttYXRBdXRvY29tcGxldGVdPVwiYXV0b1wiXHJcbiAgICAgICAgICAgICBbbWF0Q2hpcElucHV0Rm9yXT1cImNoaXBMaXN0XCJcclxuICAgICAgICAgICAgIFttYXRDaGlwSW5wdXRTZXBhcmF0b3JLZXlDb2Rlc109XCJzZXBhcmF0b3JLZXlzQ29kZXNcIj5cclxuICAgIDwvbWF0LWNoaXAtbGlzdD5cclxuICAgIDxtYXQtYXV0b2NvbXBsZXRlICNhdXRvPVwibWF0QXV0b2NvbXBsZXRlXCIgKG9wdGlvblNlbGVjdGVkKT1cInVzZXJTZWxlY3RlZChuYW1lSW5wdXQsICRldmVudClcIj5cclxuICAgICAgPG1hdC1vcHRpb24gKm5nRm9yPVwibGV0IHUgb2YgdXNlcnMkIHwgYXN5bmNcIiBbdmFsdWVdPVwidS5pZFwiPlxyXG4gICAgICAgIHt7dS5uYW1lfX1cclxuICAgICAgICA8c3BhbiAqbmdJZj1cInUuZW1haWxcIj4mbmJzcDsgLSB7e3UuZW1haWx9fTwvc3Bhbj5cclxuICAgICAgPC9tYXQtb3B0aW9uPlxyXG4gICAgPC9tYXQtYXV0b2NvbXBsZXRlPlxyXG4gICAgPG1hdC1lcnJvciAqbmdJZj1cImZvcm0uY29udHJvbHMudXNlcklkcy5oYXNFcnJvcigncmVxdWlyZWQnKVwiPnt7J1JlcXVpcmVkJ3x0cmFuc2xhdGU6KCdBc3NpZ25Ubyd8dHJhbnNsYXRlKX19PC9tYXQtZXJyb3I+XHJcbiAgPC9tYXQtZm9ybS1maWVsZD5cclxuICA8bWF0LWNoZWNrYm94IGZvcm1Db250cm9sTmFtZT1meWk+IHt7ICdBc3NpZ25GWUknIHwgdHJhbnNsYXRlIH19PC9tYXQtY2hlY2tib3g+XHJcbiAgPCEtLTxtYXQtY2hlY2tib3ggZm9ybUNvbnRyb2xOYW1lPXJvdW5kdHJpcD4ge3sgJ0Fzc2lnblJvdW5kdHJpcCcgfCB0cmFuc2xhdGUgfX08L21hdC1jaGVja2JveD4tLT5cclxuICA8bWF0LWZvcm0tZmllbGQ+XHJcbiAgICA8dGV4dGFyZWEgbWF0SW5wdXQgY2RrVGV4dGFyZWFBdXRvc2l6ZSBmb3JtQ29udHJvbE5hbWU9XCJub3RlXCIgW3BsYWNlaG9sZGVyXT1cIidOb3RlJ3x0cmFuc2xhdGVcIiBtYXhsZW5ndGg9XCIyMDBcIj5cclxuICAgIDwvdGV4dGFyZWE+XHJcbiAgICA8bWF0LWhpbnQgYWxpZ249XCJlbmRcIj57e2Zvcm0uY29udHJvbHNbJ25vdGUnXS52YWx1ZT8ubGVuZ3RoIHx8IDB9fSAvIHt7MjAwfX08L21hdC1oaW50PlxyXG4gICAgPG1hdC1oaW50Pnt7J0Fzc2lnbk5vdGVIaW50J3wgdHJhbnNsYXRlfX08L21hdC1oaW50PlxyXG4gIDwvbWF0LWZvcm0tZmllbGQ+XHJcbjwvZm9ybT5cclxuIl19
91
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXNzaWduLWFjdGlvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJyYXJpZXMvY29yZS9zcmMvbGliL2NvbXBvc2UvYWN0aW9uL2Fzc2lnbi1hY3Rpb24uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vbGlicmFyaWVzL2NvcmUvc3JjL2xpYi9jb21wb3NlL2FjdGlvbi9hc3NpZ24tYWN0aW9uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBcUIsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3BGLE9BQU8sRUFBZSxVQUFVLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUV6RCxPQUFPLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3JELE9BQU8sRUFBRSxZQUFZLEVBQWMsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3pELE9BQU8sRUFBRSxTQUFTLEVBQUUsR0FBRyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzNELE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7Ozs7SUFZbEMscUJBQXFCLFNBQXJCLHFCQUFxQjtJQVloQyxZQUFvQixHQUFnQixFQUFVLFFBQXdCLEVBQVUsU0FBeUI7UUFBckYsUUFBRyxHQUFILEdBQUcsQ0FBYTtRQUFVLGFBQVEsR0FBUixRQUFRLENBQWdCO1FBQVUsY0FBUyxHQUFULFNBQVMsQ0FBZ0I7UUFYaEcsdUJBQWtCLEdBQWEsQ0FBQyxLQUFLLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFFOUMsU0FBSSxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDO1lBQzdCLE9BQU8sRUFBRSxJQUFJLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsVUFB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Ozs0SkFRb0QsU0FBUztzQkFBcEUsU0FBUzt1QkFBQyxXQUFXLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxVQUFVLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEVsZW1lbnRSZWYsIE9uRGVzdHJveSwgT25Jbml0LCBWaWV3Q2hpbGQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgRm9ybUJ1aWxkZXIsIFZhbGlkYXRvcnMgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IE1hdEF1dG9jb21wbGV0ZVNlbGVjdGVkRXZlbnQgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9hdXRvY29tcGxldGUnO1xyXG5pbXBvcnQgeyBDT01NQSwgRU5URVIgfSBmcm9tICdAYW5ndWxhci9jZGsva2V5Y29kZXMnO1xyXG5pbXBvcnQgeyBkZWJvdW5jZVRpbWUsIE9ic2VydmFibGUsIFN1YmplY3QgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgdGFrZVVudGlsLCBtYXAsIHN3aXRjaE1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuaW1wb3J0IHsgQml6RG9jIH0gZnJvbSAnLi4vLi4vY29yZS9kZWNvcmF0b3JzJztcclxuaW1wb3J0IHsgVXNlckluZm8gfSBmcm9tICcuLi8uLi9jb3JlL21vZGVscyc7XHJcbmltcG9ydCB7IEFyZ3VtZW50c0NvbXBvbmVudCB9IGZyb20gJy4uLy4uL2NvcmUvYmFzZSc7XHJcbmltcG9ydCB7IFNlc3Npb25TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vY29yZS9zZXNzaW9uLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBBY2NvdW50U2VydmljZSB9IGZyb20gJy4uLy4uL2NvcmUvYWNjb3VudC5zZXJ2aWNlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHRlbXBsYXRlVXJsOiAnLi9hc3NpZ24tYWN0aW9uLmNvbXBvbmVudC5odG1sJ1xyXG59KVxyXG5AQml6RG9jKHtcclxuICBzZWxlY3RvcjogJ2JpemRvYy1hY3Rpb24tYXNzaWduJ1xyXG59KVxyXG5leHBvcnQgY2xhc3MgQXNzaWduQWN0aW9uQ29tcG9uZW50IGltcGxlbWVudHMgQXJndW1lbnRzQ29tcG9uZW50LCBPbkluaXQsIE9uRGVzdHJveSB7XHJcbiAgcmVhZG9ubHkgc2VwYXJhdG9yS2V5c0NvZGVzOiBudW1iZXJbXSA9IFtFTlRFUiwgQ09NTUFdO1xyXG4gIEBWaWV3Q2hpbGQoJ25hbWVJbnB1dCcsIHsgc3RhdGljOiB0cnVlLCByZWFkOiBFbGVtZW50UmVmIH0pIG5hbWVJbnB1dDogRWxlbWVudFJlZjxIVE1MSW5wdXRFbGVtZW50PjtcclxuICByZWFkb25seSBmb3JtID0gdGhpcy5fZmIuZ3JvdXAoe1xyXG4gICAgdXNlcklkczogdGhpcy5fZmIuY29udHJvbChudWxsLCBWYWxpZGF0b3JzLnJlcXVpcmVkKSxcclxuICAgIGZ5aTogdGhpcy5fZmIuY29udHJvbChmYWxzZSksXHJcbiAgICByb3VuZHRyaXA6IHRoaXMuX2ZiLmNvbnRyb2woZmFsc2UpLFxyXG4gICAgbm90ZTogdGhpcy5fZmIuY29udHJvbChudWxsLCBWYWxpZGF0b3JzLm1heExlbmd0aCgyMDApKVxyXG4gIH0pO1xyXG4gIHJlYWRvbmx5IHVzZXJJZHMgPSB0aGlzLl9mYi5jb250cm9sKFtdKTtcclxuICB1c2VycyQ6IE9ic2VydmFibGU8VXNlckluZm9bXT47XHJcbiAgcHJpdmF0ZSBfZGVzdHJveSA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBfZmI6IEZvcm1CdWlsZGVyLCBwcml2YXRlIF9zZXNzaW9uOiBTZXNzaW9uU2VydmljZSwgcHJpdmF0ZSBfYWNjb3VudHM6IEFjY291bnRTZXJ2aWNlKSB7XHJcbiAgfVxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgY29uc3QgbWUgPSB0aGlzLl9zZXNzaW9uLnVzZXJJZDtcclxuICAgIHRoaXMudXNlcnMkID0gdGhpcy51c2VySWRzLnZhbHVlQ2hhbmdlcy5cclxuICAgICAgcGlwZShcclxuICAgICAgICBkZWJvdW5jZVRpbWUoMjAwKSxcclxuICAgICAgICB0YWtlVW50aWwodGhpcy5fZGVzdHJveSksXHJcbiAgICAgICAgc3dpdGNoTWFwKHYgPT5cclxuICAgICAgICAgIHRoaXMuX2FjY291bnRzLmZpbmRBbGwodiwgeyB0YWtlOiAyMCB9KS5cclxuICAgICAgICAgICAgcGlwZShtYXAociA9PlxyXG4gICAgICAgICAgICAgIHIuZmlsdGVyKHUgPT4gdS5pZCAhPT0gbWUpKSkpKTtcclxuICB9XHJcbiAgLyoqXHJcbiAgICpcclxuICAgKiBAcGFyYW0gaW5wXHJcbiAgICogQHBhcmFtIGV2ZW50XHJcbiAgICovXHJcbiAgdXNlclNlbGVjdGVkKGlucDogSFRNTElucHV0RWxlbWVudCwgZXZlbnQ6IE1hdEF1dG9jb21wbGV0ZVNlbGVjdGVkRXZlbnQpOiB2b2lkIHtcclxuICAgIGNvbnN0IHVzZXJJZHMgPSB0aGlzLmZvcm0uY29udHJvbHNbJ3VzZXJJZHMnXS52YWx1ZSBhcyBzdHJpbmdbXSB8fCBbXTtcclxuICAgIHVzZXJJZHMucHVzaChldmVudC5vcHRpb24udmFsdWUpO1xyXG4gICAgdGhpcy5mb3JtLmNvbnRyb2xzWyd1c2VySWRzJ10uc2V0VmFsdWUodXNlcklkcyk7XHJcbiAgICBpbnAudmFsdWUgPSAnJztcclxuICB9XHJcbiAgLyoqXHJcbiAgICpcclxuICAgKiBAcGFyYW0gaWRcclxuICAgKi9cclxuICByZW1vdmVkKGlkOiBzdHJpbmcpOiB2b2lkIHtcclxuICAgIGNvbnN0IHVzZXJJZHMgPSB0aGlzLmZvcm0uY29udHJvbHNbJ3VzZXJJZHMnXS52YWx1ZSBhcyBzdHJpbmdbXTtcclxuXHJcbiAgICBjb25zdCBpbmRleCA9IHVzZXJJZHMuaW5kZXhPZihpZCk7XHJcblxyXG4gICAgaWYgKHVzZXJJZHMubGVuZ3RoID4gMSkge1xyXG4gICAgICBpbmRleCA+PSAwICYmXHJcbiAgICAgICAgdXNlcklkcy5zcGxpY2UoaW5kZXgsIDEpO1xyXG5cclxuICAgICAgdGhpcy5mb3JtLnVwZGF0ZVZhbHVlQW5kVmFsaWRpdHkoKTtcclxuICAgIH1cclxuICAgIGVsc2UgXHJcbiAgICAgIHRoaXMuZm9ybS5jb250cm9sc1sndXNlcklkcyddLnNldFZhbHVlKG51bGwpO1xyXG4gIH1cclxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcclxuICAgIHRoaXMuX2Rlc3Ryb3kubmV4dCgpO1xyXG4gICAgdGhpcy5fZGVzdHJveS5jb21wbGV0ZSgpO1xyXG4gIH1cclxufVxyXG4iLCI8Zm9ybSBhdXRvY29tcGxldGU9XCJvZmZcIiBmeExheW91dD1cImNvbHVtblwiIFtmb3JtR3JvdXBdPVwiZm9ybVwiPlxyXG4gIDxtYXQtZm9ybS1maWVsZD5cclxuICAgIDxtYXQtY2hpcC1saXN0ICNjaGlwTGlzdCBbYXR0ci5hcmlhLWxhYmVsXT1cIidBc3NpZ25Ubyd8dHJhbnNsYXRlXCI+XHJcbiAgICAgIDxtYXQtY2hpcCAqbmdGb3I9XCJsZXQgdSBvZiBmb3JtLnZhbHVlLnVzZXJJZHNcIlxyXG4gICAgICAgICAgICAgICAgW3NlbGVjdGFibGVdPVwidHJ1ZVwiXHJcbiAgICAgICAgICAgICAgICBbcmVtb3ZhYmxlXT1cInRydWVcIlxyXG4gICAgICAgICAgICAgICAgKHJlbW92ZWQpPVwicmVtb3ZlZCh1KVwiPlxyXG4gICAgICAgIHt7dSB8IHVzZXJOYW1lIHwgYXN5bmMgfX1cclxuICAgICAgICA8bWF0LWljb24gbWF0Q2hpcFJlbW92ZT5jYW5jZWw8L21hdC1pY29uPlxyXG4gICAgICA8L21hdC1jaGlwPlxyXG4gICAgICA8aW5wdXQgcmVxdWlyZWQgW3BsYWNlaG9sZGVyXT1cIidBc3NpZ25Ubyd8dHJhbnNsYXRlXCJcclxuICAgICAgICAgICAgIFtmb3JtQ29udHJvbF09dXNlcklkc1xyXG4gICAgICAgICAgICAgY2RrRm9jdXNJbml0aWFsIFxyXG4gICAgICAgICAgICAgI25hbWVJbnB1dFxyXG4gICAgICAgICAgICAgW21hdEF1dG9jb21wbGV0ZV09XCJhdXRvXCJcclxuICAgICAgICAgICAgIFttYXRDaGlwSW5wdXRGb3JdPVwiY2hpcExpc3RcIlxyXG4gICAgICAgICAgICAgW21hdENoaXBJbnB1dFNlcGFyYXRvcktleUNvZGVzXT1cInNlcGFyYXRvcktleXNDb2Rlc1wiPlxyXG4gICAgPC9tYXQtY2hpcC1saXN0PlxyXG4gICAgPG1hdC1hdXRvY29tcGxldGUgI2F1dG89XCJtYXRBdXRvY29tcGxldGVcIiAob3B0aW9uU2VsZWN0ZWQpPVwidXNlclNlbGVjdGVkKG5hbWVJbnB1dCwgJGV2ZW50KVwiPlxyXG4gICAgICA8bWF0LW9wdGlvbiAqbmdGb3I9XCJsZXQgdSBvZiB1c2VycyQgfCBhc3luY1wiIFt2YWx1ZV09XCJ1LmlkXCI+XHJcbiAgICAgICAge3t1Lm5hbWV9fVxyXG4gICAgICAgIDxzcGFuICpuZ0lmPVwidS5lbWFpbFwiPiZuYnNwOyAtIHt7dS5lbWFpbH19PC9zcGFuPlxyXG4gICAgICA8L21hdC1vcHRpb24+XHJcbiAgICA8L21hdC1hdXRvY29tcGxldGU+XHJcbiAgICA8bWF0LWVycm9yICpuZ0lmPVwiZm9ybS5jb250cm9scy51c2VySWRzLmhhc0Vycm9yKCdyZXF1aXJlZCcpXCI+e3snUmVxdWlyZWQnfHRyYW5zbGF0ZTooJ0Fzc2lnblRvJ3x0cmFuc2xhdGUpfX08L21hdC1lcnJvcj5cclxuICA8L21hdC1mb3JtLWZpZWxkPlxyXG4gIDxtYXQtY2hlY2tib3ggZm9ybUNvbnRyb2xOYW1lPWZ5aT4ge3sgJ0Fzc2lnbkZZSScgfCB0cmFuc2xhdGUgfX08L21hdC1jaGVja2JveD5cclxuICA8IS0tPG1hdC1jaGVja2JveCBmb3JtQ29udHJvbE5hbWU9cm91bmR0cmlwPiB7eyAnQXNzaWduUm91bmR0cmlwJyB8IHRyYW5zbGF0ZSB9fTwvbWF0LWNoZWNrYm94Pi0tPlxyXG4gIDxtYXQtZm9ybS1maWVsZD5cclxuICAgIDx0ZXh0YXJlYSBtYXRJbnB1dCBjZGtUZXh0YXJlYUF1dG9zaXplIGZvcm1Db250cm9sTmFtZT1cIm5vdGVcIiBbcGxhY2Vob2xkZXJdPVwiJ05vdGUnfHRyYW5zbGF0ZVwiIG1heGxlbmd0aD1cIjIwMFwiPlxyXG4gICAgPC90ZXh0YXJlYT5cclxuICAgIDxtYXQtaGludCBhbGlnbj1cImVuZFwiPnt7Zm9ybS5jb250cm9sc1snbm90ZSddLnZhbHVlPy5sZW5ndGggfHwgMH19IC8ge3syMDB9fTwvbWF0LWhpbnQ+XHJcbiAgICA8bWF0LWhpbnQ+e3snQXNzaWduTm90ZUhpbnQnfCB0cmFuc2xhdGV9fTwvbWF0LWhpbnQ+XHJcbiAgPC9tYXQtZm9ybS1maWVsZD5cclxuPC9mb3JtPlxyXG4iXX0=
@@ -0,0 +1,88 @@
1
+ import { __decorate } from "tslib";
2
+ import { Component, ElementRef, ViewChild } from '@angular/core';
3
+ import { Validators } from '@angular/forms';
4
+ import { COMMA, ENTER } from '@angular/cdk/keycodes';
5
+ import { debounceTime, Subject } from 'rxjs';
6
+ import { takeUntil, map, switchMap } from 'rxjs/operators';
7
+ import { BizDoc } from '../../core/decorators';
8
+ import * as i0 from "@angular/core";
9
+ import * as i1 from "@angular/forms";
10
+ import * as i2 from "../../core/session.service";
11
+ import * as i3 from "../../core/account.service";
12
+ import * as i4 from "@angular/material/form-field";
13
+ import * as i5 from "@angular/material/chips";
14
+ import * as i6 from "@angular/material/icon";
15
+ import * as i7 from "@angular/material/autocomplete";
16
+ import * as i8 from "@angular/material/core";
17
+ import * as i9 from "@angular/flex-layout/flex";
18
+ import * as i10 from "@angular/common";
19
+ import * as i11 from "@angular/material/input";
20
+ import * as i12 from "@angular/cdk/text-field";
21
+ import * as i13 from "../../core/pipes/translate.pipe";
22
+ import * as i14 from "../../core/pipes/user-name.pipe";
23
+ let MoveToActionComponent = class MoveToActionComponent {
24
+ constructor(_fb, _session, _accounts) {
25
+ this._fb = _fb;
26
+ this._session = _session;
27
+ this._accounts = _accounts;
28
+ this.separatorKeysCodes = [ENTER, COMMA];
29
+ this.form = this._fb.group({
30
+ userIds: this._fb.control(null, Validators.required),
31
+ note: this._fb.control(null, Validators.maxLength(200))
32
+ });
33
+ this.userIds = this._fb.control([]);
34
+ this._destroy = new Subject();
35
+ }
36
+ ngOnInit() {
37
+ const me = this._session.userId;
38
+ this.users$ = this.userIds.valueChanges.
39
+ pipe(debounceTime(200), takeUntil(this._destroy), switchMap(v => this._accounts.findAll(v, { take: 20 }).
40
+ pipe(map(r => r.filter(u => u.id !== me)))));
41
+ }
42
+ /**
43
+ *
44
+ * @param inp
45
+ * @param event
46
+ */
47
+ userSelected(inp, event) {
48
+ const userIds = this.form.controls['userIds'].value || [];
49
+ userIds.push(event.option.value);
50
+ this.form.controls['userIds'].setValue(userIds);
51
+ inp.value = '';
52
+ }
53
+ /**
54
+ *
55
+ * @param id
56
+ */
57
+ removed(id) {
58
+ const userIds = this.form.controls['userIds'].value;
59
+ const index = userIds.indexOf(id);
60
+ if (userIds.length > 1) {
61
+ index >= 0 &&
62
+ userIds.splice(index, 1);
63
+ this.form.updateValueAndValidity();
64
+ }
65
+ else
66
+ this.form.controls['userIds'].setValue(null);
67
+ }
68
+ ngOnDestroy() {
69
+ this._destroy.next();
70
+ this._destroy.complete();
71
+ }
72
+ };
73
+ MoveToActionComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.3", ngImport: i0, type: MoveToActionComponent, deps: [{ token: i1.FormBuilder }, { token: i2.SessionService }, { token: i3.AccountService }], target: i0.ɵɵFactoryTarget.Component });
74
+ MoveToActionComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.3", type: MoveToActionComponent, selector: "ng-component", viewQueries: [{ propertyName: "nameInput", first: true, predicate: ["nameInput"], descendants: true, read: ElementRef, static: true }], ngImport: i0, template: "<form autocomplete=\"off\" fxLayout=\"column\" [formGroup]=\"form\">\r\n <mat-form-field>\r\n <mat-chip-list #chipList [attr.aria-label]=\"'AssignTo'|translate\">\r\n <mat-chip *ngFor=\"let u of form.value.userIds\"\r\n [selectable]=\"true\"\r\n [removable]=\"true\"\r\n (removed)=\"removed(u)\">\r\n {{u | userName | async }}\r\n <mat-icon matChipRemove>cancel</mat-icon>\r\n </mat-chip>\r\n <input required [placeholder]=\"'AssignTo'|translate\"\r\n [formControl]=userIds\r\n cdkFocusInitial \r\n #nameInput\r\n [matAutocomplete]=\"auto\"\r\n [matChipInputFor]=\"chipList\"\r\n [matChipInputSeparatorKeyCodes]=\"separatorKeysCodes\">\r\n </mat-chip-list>\r\n <mat-autocomplete #auto=\"matAutocomplete\" (optionSelected)=\"userSelected(nameInput, $event)\">\r\n <mat-option *ngFor=\"let u of users$ | async\" [value]=\"u.id\">\r\n {{u.name}}\r\n <span *ngIf=\"u.email\">&nbsp; - {{u.email}}</span>\r\n </mat-option>\r\n </mat-autocomplete>\r\n <mat-error *ngIf=\"form.controls.userIds.hasError('required')\">{{'Required'|translate:('AssignTo'|translate)}}</mat-error>\r\n </mat-form-field>\r\n <mat-form-field>\r\n <textarea matInput cdkTextareaAutosize formControlName=\"note\" [placeholder]=\"'Note'|translate\" maxlength=\"200\">\r\n </textarea>\r\n <mat-hint align=\"end\">{{form.controls['note'].value?.length || 0}} / {{200}}</mat-hint>\r\n <mat-hint>{{'AssignNoteHint'| translate}}</mat-hint>\r\n </mat-form-field>\r\n</form>\r\n", components: [{ type: i4.MatFormField, selector: "mat-form-field", inputs: ["color", "appearance", "hideRequiredMarker", "hintLabel", "floatLabel"], exportAs: ["matFormField"] }, { type: i5.MatChipList, selector: "mat-chip-list", inputs: ["errorStateMatcher", "multiple", "compareWith", "value", "required", "placeholder", "disabled", "aria-orientation", "selectable", "tabIndex"], outputs: ["change", "valueChange"], exportAs: ["matChipList"] }, { type: i6.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { type: i7.MatAutocomplete, selector: "mat-autocomplete", inputs: ["disableRipple"], exportAs: ["matAutocomplete"] }, { type: i8.MatOption, selector: "mat-option", exportAs: ["matOption"] }], directives: [{ type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i9.DefaultLayoutDirective, selector: " [fxLayout], [fxLayout.xs], [fxLayout.sm], [fxLayout.md], [fxLayout.lg], [fxLayout.xl], [fxLayout.lt-sm], [fxLayout.lt-md], [fxLayout.lt-lg], [fxLayout.lt-xl], [fxLayout.gt-xs], [fxLayout.gt-sm], [fxLayout.gt-md], [fxLayout.gt-lg]", inputs: ["fxLayout", "fxLayout.xs", "fxLayout.sm", "fxLayout.md", "fxLayout.lg", "fxLayout.xl", "fxLayout.lt-sm", "fxLayout.lt-md", "fxLayout.lt-lg", "fxLayout.lt-xl", "fxLayout.gt-xs", "fxLayout.gt-sm", "fxLayout.gt-md", "fxLayout.gt-lg"] }, { type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { type: i10.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i5.MatChip, selector: "mat-basic-chip, [mat-basic-chip], mat-chip, [mat-chip]", inputs: ["color", "disableRipple", "tabIndex", "selected", "value", "selectable", "disabled", "removable"], outputs: ["selectionChange", "destroyed", "removed"], exportAs: ["matChip"] }, { type: i5.MatChipRemove, selector: "[matChipRemove]" }, { type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { type: i7.MatAutocompleteTrigger, selector: "input[matAutocomplete], textarea[matAutocomplete]", exportAs: ["matAutocompleteTrigger"] }, { type: i5.MatChipInput, selector: "input[matChipInputFor]", inputs: ["matChipInputFor", "matChipInputAddOnBlur", "matChipInputSeparatorKeyCodes", "placeholder", "id", "disabled"], outputs: ["matChipInputTokenEnd"], exportAs: ["matChipInput", "matChipInputFor"] }, { type: i1.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { type: i10.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i4.MatError, selector: "mat-error", inputs: ["id"] }, { type: i11.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { type: i12.CdkTextareaAutosize, selector: "textarea[cdkTextareaAutosize]", inputs: ["cdkAutosizeMinRows", "cdkAutosizeMaxRows", "cdkTextareaAutosize", "placeholder"], exportAs: ["cdkTextareaAutosize"] }, { type: i1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { type: i1.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { type: i4.MatHint, selector: "mat-hint", inputs: ["align", "id"] }], pipes: { "translate": i13.TranslatePipe, "async": i10.AsyncPipe, "userName": i14.UserNamePipe } });
75
+ MoveToActionComponent = __decorate([
76
+ BizDoc({
77
+ selector: 'bizdoc-action-moveto'
78
+ })
79
+ ], MoveToActionComponent);
80
+ export { MoveToActionComponent };
81
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.3", ngImport: i0, type: MoveToActionComponent, decorators: [{
82
+ type: Component,
83
+ args: [{ template: "<form autocomplete=\"off\" fxLayout=\"column\" [formGroup]=\"form\">\r\n <mat-form-field>\r\n <mat-chip-list #chipList [attr.aria-label]=\"'AssignTo'|translate\">\r\n <mat-chip *ngFor=\"let u of form.value.userIds\"\r\n [selectable]=\"true\"\r\n [removable]=\"true\"\r\n (removed)=\"removed(u)\">\r\n {{u | userName | async }}\r\n <mat-icon matChipRemove>cancel</mat-icon>\r\n </mat-chip>\r\n <input required [placeholder]=\"'AssignTo'|translate\"\r\n [formControl]=userIds\r\n cdkFocusInitial \r\n #nameInput\r\n [matAutocomplete]=\"auto\"\r\n [matChipInputFor]=\"chipList\"\r\n [matChipInputSeparatorKeyCodes]=\"separatorKeysCodes\">\r\n </mat-chip-list>\r\n <mat-autocomplete #auto=\"matAutocomplete\" (optionSelected)=\"userSelected(nameInput, $event)\">\r\n <mat-option *ngFor=\"let u of users$ | async\" [value]=\"u.id\">\r\n {{u.name}}\r\n <span *ngIf=\"u.email\">&nbsp; - {{u.email}}</span>\r\n </mat-option>\r\n </mat-autocomplete>\r\n <mat-error *ngIf=\"form.controls.userIds.hasError('required')\">{{'Required'|translate:('AssignTo'|translate)}}</mat-error>\r\n </mat-form-field>\r\n <mat-form-field>\r\n <textarea matInput cdkTextareaAutosize formControlName=\"note\" [placeholder]=\"'Note'|translate\" maxlength=\"200\">\r\n </textarea>\r\n <mat-hint align=\"end\">{{form.controls['note'].value?.length || 0}} / {{200}}</mat-hint>\r\n <mat-hint>{{'AssignNoteHint'| translate}}</mat-hint>\r\n </mat-form-field>\r\n</form>\r\n" }]
84
+ }], ctorParameters: function () { return [{ type: i1.FormBuilder }, { type: i2.SessionService }, { type: i3.AccountService }]; }, propDecorators: { nameInput: [{
85
+ type: ViewChild,
86
+ args: ['nameInput', { static: true, read: ElementRef }]
87
+ }] } });
88
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW92ZXRvLWFjdGlvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJyYXJpZXMvY29yZS9zcmMvbGliL2NvbXBvc2UvYWN0aW9uL21vdmV0by1hY3Rpb24uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vbGlicmFyaWVzL2NvcmUvc3JjL2xpYi9jb21wb3NlL2FjdGlvbi9tb3ZldG8tYWN0aW9uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBcUIsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3BGLE9BQU8sRUFBZSxVQUFVLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUV6RCxPQUFPLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3JELE9BQU8sRUFBRSxZQUFZLEVBQWMsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3pELE9BQU8sRUFBRSxTQUFTLEVBQUUsR0FBRyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzNELE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7OztJQVlsQyxxQkFBcUIsU0FBckIscUJBQXFCO0lBVWhDLFlBQW9CLEdBQWdCLEVBQVUsUUFBd0IsRUFBVSxTQUF5QjtRQUFyRixRQUFHLEdBQUgsR0FBRyxDQUFhO1FBQVUsYUFBUSxHQUFSLFFBQVEsQ0FBZ0I7UUFBVSxjQUFTLEdBQVQsU0FBUyxDQUFnQjtRQVRoRyx1QkFBa0IsR0FBYSxDQUFDLEtBQUssRUFBRSxLQUFLLENBQUMsQ0FBQztRQUU5QyxTQUFJLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUM7WUFDN0IsT0FBTyxFQUFFLElBQUksQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRSxVQUFVLENBQUMsUUFBUSxDQUFDO1lBQ3BELElBQUksRUFBRSxJQUFJLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsVUFBVSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsQ0FBQztTQUN4RCxDQUFDLENBQUM7UUFDTSxZQUFPLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLENBQUM7UUFFaEMsYUFBUSxHQUFHLElBQUksT0FBTyxFQUFRLENBQUM7SUFFdkMsQ0FBQztJQUNELFFBQVE7UUFDTixNQUFNLEVBQUUsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQztRQUNoQyxJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsWUFBWTtZQUNyQyxJQUFJLENBQ0YsWUFBWSxDQUFDLEdBQUcsQ0FBQyxFQUNqQixTQUFTLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxFQUN4QixTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FDWixJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxDQUFDLEVBQUUsRUFBRSxJQUFJLEVBQUUsRUFBRSxFQUFFLENBQUM7WUFDckMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUNYLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDM0MsQ0FBQztJQUNEOzs7O09BSUc7SUFDSCxZQUFZLENBQUMsR0FBcUIsRUFBRSxLQUFtQztRQUNyRSxNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxTQUFTLENBQUMsQ0FBQyxLQUFpQixJQUFJLEVBQUUsQ0FBQztRQUN0RSxPQUFPLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDakMsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ2hELEdBQUcsQ0FBQyxLQUFLLEdBQUcsRUFBRSxDQUFDO0lBQ2pCLENBQUM7SUFDRDs7O09BR0c7SUFDSCxPQUFPLENBQUMsRUFBVTtRQUNoQixNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxTQUFTLENBQUMsQ0FBQyxLQUFpQixDQUFDO1FBRWhFLE1BQU0sS0FBSyxHQUFHLE9BQU8sQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLENBQUM7UUFFbEMsSUFBSSxPQUFPLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRTtZQUN0QixLQUFLLElBQUksQ0FBQztnQkFDUixPQUFPLENBQUMsTUFBTSxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FBQztZQUUzQixJQUFJLENBQUMsSUFBSSxDQUFDLHNCQUFzQixFQUFFLENBQUM7U0FDcEM7O1lBRUMsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ2pELENBQUM7SUFDRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUNyQixJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQzNCLENBQUM7Q0FDRixDQUFBO2tIQXhEWSxxQkFBcUI7c0dBQXJCLHFCQUFxQix1SUFFYyxVQUFVLDJDQ3BCMUQsd21EQWlDQTtBRGZhLHFCQUFxQjtJQUhqQyxNQUFNLENBQUM7UUFDTixRQUFRLEVBQUUsc0JBQXNCO0tBQ2pDLENBQUM7R0FDVyxxQkFBcUIsQ0F3RGpDO1NBeERZLHFCQUFxQjsyRkFBckIscUJBQXFCO2tCQU5qQyxTQUFTOzs0SkFRb0QsU0FBUztzQkFBcEUsU0FBUzt1QkFBQyxXQUFXLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxVQUFVLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEVsZW1lbnRSZWYsIE9uRGVzdHJveSwgT25Jbml0LCBWaWV3Q2hpbGQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgRm9ybUJ1aWxkZXIsIFZhbGlkYXRvcnMgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IE1hdEF1dG9jb21wbGV0ZVNlbGVjdGVkRXZlbnQgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9hdXRvY29tcGxldGUnO1xyXG5pbXBvcnQgeyBDT01NQSwgRU5URVIgfSBmcm9tICdAYW5ndWxhci9jZGsva2V5Y29kZXMnO1xyXG5pbXBvcnQgeyBkZWJvdW5jZVRpbWUsIE9ic2VydmFibGUsIFN1YmplY3QgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgdGFrZVVudGlsLCBtYXAsIHN3aXRjaE1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuaW1wb3J0IHsgQml6RG9jIH0gZnJvbSAnLi4vLi4vY29yZS9kZWNvcmF0b3JzJztcclxuaW1wb3J0IHsgVXNlckluZm8gfSBmcm9tICcuLi8uLi9jb3JlL21vZGVscyc7XHJcbmltcG9ydCB7IEFyZ3VtZW50c0NvbXBvbmVudCB9IGZyb20gJy4uLy4uL2NvcmUvYmFzZSc7XHJcbmltcG9ydCB7IFNlc3Npb25TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vY29yZS9zZXNzaW9uLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBBY2NvdW50U2VydmljZSB9IGZyb20gJy4uLy4uL2NvcmUvYWNjb3VudC5zZXJ2aWNlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHRlbXBsYXRlVXJsOiAnLi9tb3ZldG8tYWN0aW9uLmNvbXBvbmVudC5odG1sJ1xyXG59KVxyXG5AQml6RG9jKHtcclxuICBzZWxlY3RvcjogJ2JpemRvYy1hY3Rpb24tbW92ZXRvJ1xyXG59KVxyXG5leHBvcnQgY2xhc3MgTW92ZVRvQWN0aW9uQ29tcG9uZW50IGltcGxlbWVudHMgQXJndW1lbnRzQ29tcG9uZW50LCBPbkluaXQsIE9uRGVzdHJveSB7XHJcbiAgcmVhZG9ubHkgc2VwYXJhdG9yS2V5c0NvZGVzOiBudW1iZXJbXSA9IFtFTlRFUiwgQ09NTUFdO1xyXG4gIEBWaWV3Q2hpbGQoJ25hbWVJbnB1dCcsIHsgc3RhdGljOiB0cnVlLCByZWFkOiBFbGVtZW50UmVmIH0pIG5hbWVJbnB1dDogRWxlbWVudFJlZjxIVE1MSW5wdXRFbGVtZW50PjtcclxuICByZWFkb25seSBmb3JtID0gdGhpcy5fZmIuZ3JvdXAoe1xyXG4gICAgdXNlcklkczogdGhpcy5fZmIuY29udHJvbChudWxsLCBWYWxpZGF0b3JzLnJlcXVpcmVkKSxcclxuICAgIG5vdGU6IHRoaXMuX2ZiLmNvbnRyb2wobnVsbCwgVmFsaWRhdG9ycy5tYXhMZW5ndGgoMjAwKSlcclxuICB9KTtcclxuICByZWFkb25seSB1c2VySWRzID0gdGhpcy5fZmIuY29udHJvbChbXSk7XHJcbiAgdXNlcnMkOiBPYnNlcnZhYmxlPFVzZXJJbmZvW10+O1xyXG4gIHByaXZhdGUgX2Rlc3Ryb3kgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgX2ZiOiBGb3JtQnVpbGRlciwgcHJpdmF0ZSBfc2Vzc2lvbjogU2Vzc2lvblNlcnZpY2UsIHByaXZhdGUgX2FjY291bnRzOiBBY2NvdW50U2VydmljZSkge1xyXG4gIH1cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIGNvbnN0IG1lID0gdGhpcy5fc2Vzc2lvbi51c2VySWQ7XHJcbiAgICB0aGlzLnVzZXJzJCA9IHRoaXMudXNlcklkcy52YWx1ZUNoYW5nZXMuXHJcbiAgICAgIHBpcGUoXHJcbiAgICAgICAgZGVib3VuY2VUaW1lKDIwMCksXHJcbiAgICAgICAgdGFrZVVudGlsKHRoaXMuX2Rlc3Ryb3kpLFxyXG4gICAgICAgIHN3aXRjaE1hcCh2ID0+XHJcbiAgICAgICAgICB0aGlzLl9hY2NvdW50cy5maW5kQWxsKHYsIHsgdGFrZTogMjAgfSkuXHJcbiAgICAgICAgICAgIHBpcGUobWFwKHIgPT5cclxuICAgICAgICAgICAgICByLmZpbHRlcih1ID0+IHUuaWQgIT09IG1lKSkpKSk7XHJcbiAgfVxyXG4gIC8qKlxyXG4gICAqXHJcbiAgICogQHBhcmFtIGlucFxyXG4gICAqIEBwYXJhbSBldmVudFxyXG4gICAqL1xyXG4gIHVzZXJTZWxlY3RlZChpbnA6IEhUTUxJbnB1dEVsZW1lbnQsIGV2ZW50OiBNYXRBdXRvY29tcGxldGVTZWxlY3RlZEV2ZW50KTogdm9pZCB7XHJcbiAgICBjb25zdCB1c2VySWRzID0gdGhpcy5mb3JtLmNvbnRyb2xzWyd1c2VySWRzJ10udmFsdWUgYXMgc3RyaW5nW10gfHwgW107XHJcbiAgICB1c2VySWRzLnB1c2goZXZlbnQub3B0aW9uLnZhbHVlKTtcclxuICAgIHRoaXMuZm9ybS5jb250cm9sc1sndXNlcklkcyddLnNldFZhbHVlKHVzZXJJZHMpO1xyXG4gICAgaW5wLnZhbHVlID0gJyc7XHJcbiAgfVxyXG4gIC8qKlxyXG4gICAqXHJcbiAgICogQHBhcmFtIGlkXHJcbiAgICovXHJcbiAgcmVtb3ZlZChpZDogc3RyaW5nKTogdm9pZCB7XHJcbiAgICBjb25zdCB1c2VySWRzID0gdGhpcy5mb3JtLmNvbnRyb2xzWyd1c2VySWRzJ10udmFsdWUgYXMgc3RyaW5nW107XHJcblxyXG4gICAgY29uc3QgaW5kZXggPSB1c2VySWRzLmluZGV4T2YoaWQpO1xyXG5cclxuICAgIGlmICh1c2VySWRzLmxlbmd0aCA+IDEpIHtcclxuICAgICAgaW5kZXggPj0gMCAmJlxyXG4gICAgICAgIHVzZXJJZHMuc3BsaWNlKGluZGV4LCAxKTtcclxuXHJcbiAgICAgIHRoaXMuZm9ybS51cGRhdGVWYWx1ZUFuZFZhbGlkaXR5KCk7XHJcbiAgICB9XHJcbiAgICBlbHNlIFxyXG4gICAgICB0aGlzLmZvcm0uY29udHJvbHNbJ3VzZXJJZHMnXS5zZXRWYWx1ZShudWxsKTtcclxuICB9XHJcbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XHJcbiAgICB0aGlzLl9kZXN0cm95Lm5leHQoKTtcclxuICAgIHRoaXMuX2Rlc3Ryb3kuY29tcGxldGUoKTtcclxuICB9XHJcbn1cclxuIiwiPGZvcm0gYXV0b2NvbXBsZXRlPVwib2ZmXCIgZnhMYXlvdXQ9XCJjb2x1bW5cIiBbZm9ybUdyb3VwXT1cImZvcm1cIj5cclxuICA8bWF0LWZvcm0tZmllbGQ+XHJcbiAgICA8bWF0LWNoaXAtbGlzdCAjY2hpcExpc3QgW2F0dHIuYXJpYS1sYWJlbF09XCInQXNzaWduVG8nfHRyYW5zbGF0ZVwiPlxyXG4gICAgICA8bWF0LWNoaXAgKm5nRm9yPVwibGV0IHUgb2YgZm9ybS52YWx1ZS51c2VySWRzXCJcclxuICAgICAgICAgICAgICAgIFtzZWxlY3RhYmxlXT1cInRydWVcIlxyXG4gICAgICAgICAgICAgICAgW3JlbW92YWJsZV09XCJ0cnVlXCJcclxuICAgICAgICAgICAgICAgIChyZW1vdmVkKT1cInJlbW92ZWQodSlcIj5cclxuICAgICAgICB7e3UgfCB1c2VyTmFtZSB8IGFzeW5jIH19XHJcbiAgICAgICAgPG1hdC1pY29uIG1hdENoaXBSZW1vdmU+Y2FuY2VsPC9tYXQtaWNvbj5cclxuICAgICAgPC9tYXQtY2hpcD5cclxuICAgICAgPGlucHV0IHJlcXVpcmVkIFtwbGFjZWhvbGRlcl09XCInQXNzaWduVG8nfHRyYW5zbGF0ZVwiXHJcbiAgICAgICAgICAgICBbZm9ybUNvbnRyb2xdPXVzZXJJZHNcclxuICAgICAgICAgICAgIGNka0ZvY3VzSW5pdGlhbCBcclxuICAgICAgICAgICAgICNuYW1lSW5wdXRcclxuICAgICAgICAgICAgIFttYXRBdXRvY29tcGxldGVdPVwiYXV0b1wiXHJcbiAgICAgICAgICAgICBbbWF0Q2hpcElucHV0Rm9yXT1cImNoaXBMaXN0XCJcclxuICAgICAgICAgICAgIFttYXRDaGlwSW5wdXRTZXBhcmF0b3JLZXlDb2Rlc109XCJzZXBhcmF0b3JLZXlzQ29kZXNcIj5cclxuICAgIDwvbWF0LWNoaXAtbGlzdD5cclxuICAgIDxtYXQtYXV0b2NvbXBsZXRlICNhdXRvPVwibWF0QXV0b2NvbXBsZXRlXCIgKG9wdGlvblNlbGVjdGVkKT1cInVzZXJTZWxlY3RlZChuYW1lSW5wdXQsICRldmVudClcIj5cclxuICAgICAgPG1hdC1vcHRpb24gKm5nRm9yPVwibGV0IHUgb2YgdXNlcnMkIHwgYXN5bmNcIiBbdmFsdWVdPVwidS5pZFwiPlxyXG4gICAgICAgIHt7dS5uYW1lfX1cclxuICAgICAgICA8c3BhbiAqbmdJZj1cInUuZW1haWxcIj4mbmJzcDsgLSB7e3UuZW1haWx9fTwvc3Bhbj5cclxuICAgICAgPC9tYXQtb3B0aW9uPlxyXG4gICAgPC9tYXQtYXV0b2NvbXBsZXRlPlxyXG4gICAgPG1hdC1lcnJvciAqbmdJZj1cImZvcm0uY29udHJvbHMudXNlcklkcy5oYXNFcnJvcigncmVxdWlyZWQnKVwiPnt7J1JlcXVpcmVkJ3x0cmFuc2xhdGU6KCdBc3NpZ25Ubyd8dHJhbnNsYXRlKX19PC9tYXQtZXJyb3I+XHJcbiAgPC9tYXQtZm9ybS1maWVsZD5cclxuICA8bWF0LWZvcm0tZmllbGQ+XHJcbiAgICA8dGV4dGFyZWEgbWF0SW5wdXQgY2RrVGV4dGFyZWFBdXRvc2l6ZSBmb3JtQ29udHJvbE5hbWU9XCJub3RlXCIgW3BsYWNlaG9sZGVyXT1cIidOb3RlJ3x0cmFuc2xhdGVcIiBtYXhsZW5ndGg9XCIyMDBcIj5cclxuICAgIDwvdGV4dGFyZWE+XHJcbiAgICA8bWF0LWhpbnQgYWxpZ249XCJlbmRcIj57e2Zvcm0uY29udHJvbHNbJ25vdGUnXS52YWx1ZT8ubGVuZ3RoIHx8IDB9fSAvIHt7MjAwfX08L21hdC1oaW50PlxyXG4gICAgPG1hdC1oaW50Pnt7J0Fzc2lnbk5vdGVIaW50J3wgdHJhbnNsYXRlfX08L21hdC1oaW50PlxyXG4gIDwvbWF0LWZvcm0tZmllbGQ+XHJcbjwvZm9ybT5cclxuIl19
@@ -34,7 +34,7 @@ export class AttachmentPreview {
34
34
  this._afterClosed = new Subject();
35
35
  this.dir = _directionality.value;
36
36
  this.isImage = isImage(this.data.file.contentType);
37
- this.objectData = sanitizer.bypassSecurityTrustResourceUrl(this._url());
37
+ this.objectData = sanitizer.bypassSecurityTrustResourceUrl(this._url(true));
38
38
  this.beforeClose().subscribe(() => this.slideDown = 'leave');
39
39
  }
40
40
  resize() {
@@ -52,8 +52,8 @@ export class AttachmentPreview {
52
52
  download() {
53
53
  location.assign(this._url());
54
54
  }
55
- _url() {
56
- return this._service.formatDownloadUrl(this.data.documentId, this.data.file.id);
55
+ _url(inline) {
56
+ return this._service.formatDownloadUrl(this.data.documentId, this.data.file.id, inline);
57
57
  }
58
58
  rotate() {
59
59
  const elem = (this.isImage ? this.img : this.obj).nativeElement;
@@ -96,7 +96,7 @@ export class AttachmentPreview {
96
96
  }
97
97
  }
98
98
  AttachmentPreview.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.3", ngImport: i0, type: AttachmentPreview, deps: [{ token: i1.Directionality }, { token: i0.Renderer2 }, { token: FILE_PREVIEW_DIALOG_DATA }, { token: i2.DomSanitizer }, { token: i3.MailboxService }, { token: i4.OverlayRef }], target: i0.ɵɵFactoryTarget.Component });
99
- AttachmentPreview.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.3", type: AttachmentPreview, selector: "bizdoc-attachment-preview", host: { listeners: { "document:resize": "resize()", "document:keydown.escape": "close()" } }, viewQueries: [{ propertyName: "obj", first: true, predicate: ["obj"], descendants: true }, { propertyName: "img", first: true, predicate: ["img"], descendants: true, static: true }], ngImport: i0, template: "<div class=\"overlay-content\" [@slideContent]=\"animationState\" (@slideContent.start)=\"onAnimationStart($event)\"\r\n [dir]=\"dir\" (@slideContent.done)=\"onAnimationDone($event)\">\r\n <div class=\"toolbar-wrapper\" fxLayout=\"row\" [@slideDown]=\"slideDown\" *ngIf=\"!loading\">\r\n <button mat-icon-button (click)=\"close()\" bizdocTooltip=\"{{'Back' | translate}}\"><mat-icon class=\"mat-icon-rtl-mirror\">keyboard_arrow_left</mat-icon></button>\r\n <span class=\"mat-body-1\">{{data.file.fileName}}</span>\r\n <span class=\"divider\"></span>\r\n <button mat-icon-button (click)=\"rotate()\" bizdocTooltip=\"{{'Rotate' | translate }}\"><mat-icon>screen_rotation</mat-icon></button>\r\n <button mat-icon-button (click)=\"download()\" bizdocTooltip=\"{{'Download' | translate}}\"><mat-icon>save_alt</mat-icon></button>\r\n </div>\r\n <div class=\"spinner-wrapper\" *ngIf=\"loading\">\r\n <mat-spinner></mat-spinner>\r\n </div>\r\n <object (load)=\"onLoad($event)\" [data]=\"objectData\" [type]=\"data.file.contentType\" *ngIf=\"!isImage\" #obj></object>\r\n <img *ngIf=\"isImage\" (load)=\"onLoad($event)\" [style.opacity]=\"loading ? 0 : 1\" [@fade]=\"loading ? 'fadeOut' : 'fadeIn'\" [src]=\"objectData\" #img>\r\n</div>\r\n", styles: [":host{display:flex;flex-direction:column;align-items:center}.spinner-wrapper{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:-1}img{width:100%;max-width:500px;height:auto}.overlay-content{padding:1em}.overlay-content .toolbar-wrapper{align-items:center;color:#f5f5f5}.divider{flex:1 1 auto}\n"], components: [{ type: i5.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { type: i6.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { type: i7.MatSpinner, selector: "mat-spinner", inputs: ["color"] }], directives: [{ type: i1.Dir, selector: "[dir]", inputs: ["dir"], outputs: ["dirChange"], exportAs: ["dir"] }, { type: i8.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i9.DefaultLayoutDirective, selector: " [fxLayout], [fxLayout.xs], [fxLayout.sm], [fxLayout.md], [fxLayout.lg], [fxLayout.xl], [fxLayout.lt-sm], [fxLayout.lt-md], [fxLayout.lt-lg], [fxLayout.lt-xl], [fxLayout.gt-xs], [fxLayout.gt-sm], [fxLayout.gt-md], [fxLayout.gt-lg]", inputs: ["fxLayout", "fxLayout.xs", "fxLayout.sm", "fxLayout.md", "fxLayout.lg", "fxLayout.xl", "fxLayout.lt-sm", "fxLayout.lt-md", "fxLayout.lt-lg", "fxLayout.lt-xl", "fxLayout.gt-xs", "fxLayout.gt-sm", "fxLayout.gt-md", "fxLayout.gt-lg"] }, { type: i10.TooltipDirective, selector: "[bizdocTooltip]", inputs: ["bizdocTooltip", "bizdocTooltipTemplate", "bizdocTooltipContext", "bizdocTooltipPosition", "bizdocTooltipDuration", "bizdocTooltipDisabled"] }], pipes: { "translate": i11.TranslatePipe }, animations: [
99
+ AttachmentPreview.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.3", type: AttachmentPreview, selector: "bizdoc-attachment-preview", host: { listeners: { "document:resize": "resize()", "document:keydown.escape": "close()" } }, viewQueries: [{ propertyName: "obj", first: true, predicate: ["obj"], descendants: true }, { propertyName: "img", first: true, predicate: ["img"], descendants: true, static: true }], ngImport: i0, template: "<div class=\"overlay-content\" [@slideContent]=\"animationState\" (@slideContent.start)=\"onAnimationStart($event)\"\r\n [dir]=\"dir\" (@slideContent.done)=\"onAnimationDone($event)\">\r\n <div class=\"toolbar-wrapper\" fxLayout=\"row\" [@slideDown]=\"slideDown\" *ngIf=\"!loading\">\r\n <button mat-icon-button (click)=\"close()\" bizdocTooltip=\"{{'Back' | translate}}\"><mat-icon class=\"mat-icon-rtl-mirror\">keyboard_arrow_left</mat-icon></button>\r\n <span class=\"mat-body-1\">{{data.file.fileName}}</span>\r\n <span class=\"divider\"></span>\r\n <button mat-icon-button (click)=\"rotate()\" bizdocTooltip=\"{{'Rotate' | translate }}\"><mat-icon>screen_rotation</mat-icon></button>\r\n <button mat-icon-button (click)=\"download()\" bizdocTooltip=\"{{'Download' | translate}}\"><mat-icon>save_alt</mat-icon></button>\r\n </div>\r\n <div class=\"spinner-wrapper\" *ngIf=\"loading\">\r\n <mat-spinner></mat-spinner>\r\n </div>\r\n <object (load)=\"onLoad($event)\" [data]=\"objectData\" [type]=\"data.file.contentType\" *ngIf=\"!isImage\" #obj width=\"250\"\r\n height=\"200\">\r\n </object>\r\n <img *ngIf=\"isImage\" (load)=\"onLoad($event)\" [style.opacity]=\"loading ? 0 : 1\" [@fade]=\"loading ? 'fadeOut' : 'fadeIn'\" [src]=\"objectData\" #img>\r\n</div>\r\n", styles: [":host{display:flex;flex-direction:column;align-items:center}.spinner-wrapper{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:-1}img{width:100%;max-width:500px;height:auto}.overlay-content{padding:1em}.overlay-content .toolbar-wrapper{align-items:center;color:#f5f5f5}.divider{flex:1 1 auto}\n"], components: [{ type: i5.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { type: i6.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { type: i7.MatSpinner, selector: "mat-spinner", inputs: ["color"] }], directives: [{ type: i1.Dir, selector: "[dir]", inputs: ["dir"], outputs: ["dirChange"], exportAs: ["dir"] }, { type: i8.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i9.DefaultLayoutDirective, selector: " [fxLayout], [fxLayout.xs], [fxLayout.sm], [fxLayout.md], [fxLayout.lg], [fxLayout.xl], [fxLayout.lt-sm], [fxLayout.lt-md], [fxLayout.lt-lg], [fxLayout.lt-xl], [fxLayout.gt-xs], [fxLayout.gt-sm], [fxLayout.gt-md], [fxLayout.gt-lg]", inputs: ["fxLayout", "fxLayout.xs", "fxLayout.sm", "fxLayout.md", "fxLayout.lg", "fxLayout.xl", "fxLayout.lt-sm", "fxLayout.lt-md", "fxLayout.lt-lg", "fxLayout.lt-xl", "fxLayout.gt-xs", "fxLayout.gt-sm", "fxLayout.gt-md", "fxLayout.gt-lg"] }, { type: i10.TooltipDirective, selector: "[bizdocTooltip]", inputs: ["bizdocTooltip", "bizdocTooltipTemplate", "bizdocTooltipContext", "bizdocTooltipPosition", "bizdocTooltipDuration", "bizdocTooltipDisabled"] }], pipes: { "translate": i11.TranslatePipe }, animations: [
100
100
  trigger('fade', [
101
101
  state('fadeOut', style({ opacity: 0 })),
102
102
  state('fadeIn', style({ opacity: 1 })),
@@ -135,7 +135,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.3", ngImpor
135
135
  state('leave', style({ transform: 'translate3d(0, 25%, 0)', opacity: 0 })),
136
136
  transition('* => *', animate(ANIMATION_TIMINGS)),
137
137
  ])
138
- ], template: "<div class=\"overlay-content\" [@slideContent]=\"animationState\" (@slideContent.start)=\"onAnimationStart($event)\"\r\n [dir]=\"dir\" (@slideContent.done)=\"onAnimationDone($event)\">\r\n <div class=\"toolbar-wrapper\" fxLayout=\"row\" [@slideDown]=\"slideDown\" *ngIf=\"!loading\">\r\n <button mat-icon-button (click)=\"close()\" bizdocTooltip=\"{{'Back' | translate}}\"><mat-icon class=\"mat-icon-rtl-mirror\">keyboard_arrow_left</mat-icon></button>\r\n <span class=\"mat-body-1\">{{data.file.fileName}}</span>\r\n <span class=\"divider\"></span>\r\n <button mat-icon-button (click)=\"rotate()\" bizdocTooltip=\"{{'Rotate' | translate }}\"><mat-icon>screen_rotation</mat-icon></button>\r\n <button mat-icon-button (click)=\"download()\" bizdocTooltip=\"{{'Download' | translate}}\"><mat-icon>save_alt</mat-icon></button>\r\n </div>\r\n <div class=\"spinner-wrapper\" *ngIf=\"loading\">\r\n <mat-spinner></mat-spinner>\r\n </div>\r\n <object (load)=\"onLoad($event)\" [data]=\"objectData\" [type]=\"data.file.contentType\" *ngIf=\"!isImage\" #obj></object>\r\n <img *ngIf=\"isImage\" (load)=\"onLoad($event)\" [style.opacity]=\"loading ? 0 : 1\" [@fade]=\"loading ? 'fadeOut' : 'fadeIn'\" [src]=\"objectData\" #img>\r\n</div>\r\n", styles: [":host{display:flex;flex-direction:column;align-items:center}.spinner-wrapper{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:-1}img{width:100%;max-width:500px;height:auto}.overlay-content{padding:1em}.overlay-content .toolbar-wrapper{align-items:center;color:#f5f5f5}.divider{flex:1 1 auto}\n"] }]
138
+ ], template: "<div class=\"overlay-content\" [@slideContent]=\"animationState\" (@slideContent.start)=\"onAnimationStart($event)\"\r\n [dir]=\"dir\" (@slideContent.done)=\"onAnimationDone($event)\">\r\n <div class=\"toolbar-wrapper\" fxLayout=\"row\" [@slideDown]=\"slideDown\" *ngIf=\"!loading\">\r\n <button mat-icon-button (click)=\"close()\" bizdocTooltip=\"{{'Back' | translate}}\"><mat-icon class=\"mat-icon-rtl-mirror\">keyboard_arrow_left</mat-icon></button>\r\n <span class=\"mat-body-1\">{{data.file.fileName}}</span>\r\n <span class=\"divider\"></span>\r\n <button mat-icon-button (click)=\"rotate()\" bizdocTooltip=\"{{'Rotate' | translate }}\"><mat-icon>screen_rotation</mat-icon></button>\r\n <button mat-icon-button (click)=\"download()\" bizdocTooltip=\"{{'Download' | translate}}\"><mat-icon>save_alt</mat-icon></button>\r\n </div>\r\n <div class=\"spinner-wrapper\" *ngIf=\"loading\">\r\n <mat-spinner></mat-spinner>\r\n </div>\r\n <object (load)=\"onLoad($event)\" [data]=\"objectData\" [type]=\"data.file.contentType\" *ngIf=\"!isImage\" #obj width=\"250\"\r\n height=\"200\">\r\n </object>\r\n <img *ngIf=\"isImage\" (load)=\"onLoad($event)\" [style.opacity]=\"loading ? 0 : 1\" [@fade]=\"loading ? 'fadeOut' : 'fadeIn'\" [src]=\"objectData\" #img>\r\n</div>\r\n", styles: [":host{display:flex;flex-direction:column;align-items:center}.spinner-wrapper{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:-1}img{width:100%;max-width:500px;height:auto}.overlay-content{padding:1em}.overlay-content .toolbar-wrapper{align-items:center;color:#f5f5f5}.divider{flex:1 1 auto}\n"] }]
139
139
  }], ctorParameters: function () { return [{ type: i1.Directionality }, { type: i0.Renderer2 }, { type: undefined, decorators: [{
140
140
  type: Inject,
141
141
  args: [FILE_PREVIEW_DIALOG_DATA]
@@ -152,4 +152,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.3", ngImpor
152
152
  type: HostListener,
153
153
  args: ['document:keydown.escape', []]
154
154
  }] } });
155
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXR0YWNobWVudC1wcmV2aWV3LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnJhcmllcy9jb3JlL3NyYy9saWIvY29tcG9zZS9hdHRhY2htZW50cy9wcmV2aWV3L2F0dGFjaG1lbnQtcHJldmlldy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJyYXJpZXMvY29yZS9zcmMvbGliL2NvbXBvc2UvYXR0YWNobWVudHMvcHJldmlldy9hdHRhY2htZW50LXByZXZpZXcuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxjQUFjLEVBQUUsTUFBTSxFQUFFLFlBQVksRUFBRSxZQUFZLEVBQVUsU0FBUyxFQUF3QyxNQUFNLGVBQWUsQ0FBQztBQUd2SixPQUFPLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFFLE9BQU8sRUFBa0IsTUFBTSxxQkFBcUIsQ0FBQztBQUNqRyxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzlDLE9BQU8sRUFBYyxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFHM0MsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLHlCQUF5QixDQUFDOzs7Ozs7Ozs7Ozs7O0FBR2xELE1BQU0sQ0FBQyxNQUFNLHdCQUF3QixHQUFHLElBQUksY0FBYyxDQUFjLDBCQUEwQixDQUFDLENBQUM7QUFFcEcsTUFBTSxpQkFBaUIsR0FBRyx3Q0FBd0MsQ0FBQztBQTBCbkUsa0NBQWtDO0FBQ2xDLE1BQU0sT0FBTyxpQkFBaUI7SUFhNUIsOEJBQThCO0lBQzlCLFlBQVksZUFBK0IsRUFDakMsU0FBb0IsRUFBMkMsSUFBaUIsRUFDeEYsU0FBdUIsRUFDZixRQUF3QixFQUN4QixXQUF1QjtRQUh2QixjQUFTLEdBQVQsU0FBUyxDQUFXO1FBQTJD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QUMsQ0FBQzs0QkFDeEQsS0FBSyxDQUFDLE9BQU8sRUFBRSxLQUFLLENBQUMsRUFBRSxTQUFTLEVBQUUsd0JBQXdCLEVBQUUsT0FBTyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUM7NEJBQzFFLFVBQVUsQ0FBQyxRQUFRLEVBQUUsT0FBTyxDQUFDLGlCQUFpQixDQUFDLENBQUM7eUJBQ2pELENBQUM7cUJBQ0g7OzBCQWtCZ0MsTUFBTTsyQkFBQyx3QkFBd0I7NkhBZDNCLEdBQUc7c0JBQXZDLFNBQVM7dUJBQUMsS0FBSyxFQUFFLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRTtnQkFDQyxHQUFHO3NCQUF0QyxTQUFTO3VCQUFDLEtBQUssRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUU7Z0JBdUJsQyxNQUFNO3NCQURMLFlBQVk7dUJBQUMsaUJBQWlCLEVBQUUsRUFBRTtnQkFvQ25DLEtBQUs7c0JBREosWUFBWTt1QkFBQyx5QkFBeUIsRUFBRSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbmplY3Rpb25Ub2tlbiwgSW5qZWN0LCBIb3N0TGlzdGVuZXIsIEV2ZW50RW1pdHRlciwgT25Jbml0LCBWaWV3Q2hpbGQsIEVsZW1lbnRSZWYsIEFmdGVyVmlld0luaXQsIFJlbmRlcmVyMiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBPdmVybGF5UmVmIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL292ZXJsYXknO1xyXG5pbXBvcnQgeyBBdHRhY2htZW50IH0gZnJvbSAnLi4vLi4vLi4vY29yZS9tb2RlbHMnO1xyXG5pbXBvcnQgeyB0cmlnZ2VyLCBzdGF0ZSwgdHJhbnNpdGlvbiwgc3R5bGUsIGFuaW1hdGUsIEFuaW1hdGlvbkV2ZW50IH0gZnJvbSAnQGFuZ3VsYXIvYW5pbWF0aW9ucyc7XHJcbmltcG9ydCB7IHRha2UsIGZpbHRlciB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBEb21TYW5pdGl6ZXIsIFNhZmVVcmwgfSBmcm9tICdAYW5ndWxhci9wbGF0Zm9ybS1icm93c2VyJztcclxuaW1wb3J0IHsgRGlyZWN0aW9uYWxpdHksIERpcmVjdGlvbiB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9iaWRpJztcclxuaW1wb3J0IHsgaXNJbWFnZSB9IGZyb20gJy4uLy4uLy4uL2NvcmUvZnVuY3Rpb25zJztcclxuaW1wb3J0IHsgTWFpbGJveFNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9jb3JlL21haWxib3guc2VydmljZSc7XHJcblxyXG5leHBvcnQgY29uc3QgRklMRV9QUkVWSUVXX0RJQUxPR19EQVRBID0gbmV3IEluamVjdGlvblRva2VuPFByZXZpZXdEYXRhPignRklMRV9QUkVWSUVXX0RJQUxPR19EQVRBJyk7XHJcblxyXG5jb25zdCBBTklNQVRJT05fVElNSU5HUyA9ICc0MDBtcyBjdWJpYy1iZXppZXIoMC4yNSwgMC44LCAwLjI1LCAxKSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2JpemRvYy1hdHRhY2htZW50LXByZXZpZXcnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9hdHRhY2htZW50LXByZXZpZXcuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2F0dGFjaG1lbnQtcHJldmlldy5jb21wb25lbnQuc2NzcyddLFxyXG4gIGFuaW1hdGlvbnM6IFtcclxuICAgIHRyaWdnZXIoJ2ZhZGUnLCBbXHJcbiAgICAgIHN0YXRlKCdmYWRlT3V0Jywgc3R5bGUoeyBvcGFjaXR5OiAwIH0pKSxcclxuICAgICAgc3RhdGUoJ2ZhZGVJbicsIHN0eWxlKHsgb3BhY2l0eTogMSB9KSksXHJcbiAgICAgIHRyYW5zaXRpb24oJyogPT4gZmFkZUluJywgYW5pbWF0ZShBTklNQVRJT05fVElNSU5HUykpXHJcbiAgICBdKSxcclxuICAgIHRyaWdnZXIoJ3NsaWRlRG93bicsIFtcclxuICAgICAgc3RhdGUoJ3ZvaWQnLCBzdHlsZSh7IHRyYW5zZm9ybTogJ3RyYW5zbGF0ZVkoLTEwMCUpJyB9KSksXHJcbiAgICAgIHN0YXRlKCdlbnRlcicsIHN0eWxlKHsgdHJhbnNmb3JtOiAndHJhbnNsYXRlWSgwKScgfSkpLFxyXG4gICAgICBzdGF0ZSgnbGVhdmUnLCBzdHlsZSh7IHRyYW5zZm9ybTogJ3RyYW5zbGF0ZVkoLTEwMCUpJyB9KSksXHJcbiAgICAgIHRyYW5zaXRpb24oJyogPT4gKicsIGFuaW1hdGUoJzQwMG1zIGN1YmljLWJlemllcigwLjI1LCAwLjgsIDAuMjUsIDEpJykpXHJcbiAgICBdKSxcclxuICAgIHRyaWdnZXIoJ3NsaWRlQ29udGVudCcsIFtcclxuICAgICAgc3RhdGUoJ3ZvaWQnLCBzdHlsZSh7IHRyYW5zZm9ybTogJ3RyYW5zbGF0ZTNkKDAsIDI1JSwgMCkgc2NhbGUoMC45KScsIG9wYWNpdHk6IDAgfSkpLFxyXG4gICAgICBzdGF0ZSgnZW50ZXInLCBzdHlsZSh7IHRyYW5zZm9ybTogJ25vbmUnLCBvcGFjaXR5OiAxIH0pKSxcclxuICAgICAgc3RhdGUoJ2xlYXZlJywgc3R5bGUoeyB0cmFuc2Zvcm06ICd0cmFuc2xhdGUzZCgwLCAyNSUsIDApJywgb3BhY2l0eTogMCB9KSksXHJcbiAgICAgIHRyYW5zaXRpb24oJyogPT4gKicsIGFuaW1hdGUoQU5JTUFUSU9OX1RJTUlOR1MpKSxcclxuICAgIF0pXHJcbiAgXVxyXG59KVxyXG4vKiogYXR0YWNobWVudC1wcmV2aWV3IGNvbXBvbmVudCovXHJcbmV4cG9ydCBjbGFzcyBBdHRhY2htZW50UHJldmlldyBpbXBsZW1lbnRzIE9uSW5pdCwgQWZ0ZXJWaWV3SW5pdCB7XHJcbiAgQFZpZXdDaGlsZCgnb2JqJywgeyBzdGF0aWM6IGZhbHNlIH0pIG9iajogRWxlbWVudFJlZjtcclxuICBAVmlld0NoaWxkKCdpbWcnLCB7IHN0YXRpYzogdHJ1ZSB9KSBpbWc6IEVsZW1lbnRSZWY7XHJcbiAgb2JqZWN0RGF0YTogU2FmZVVybDtcclxuICBsb2FkaW5nID0gdHJ1ZTtcclxuICBkaXI6IERpcmVjdGlvbjtcclxuICBpc0ltYWdlOiBib29sZWFuO1xyXG4gIGFuaW1hdGlvblN0YXRlOiAndm9pZCcgfCAnZW50ZXInIHwgJ2xlYXZlJyA9ICdlbnRlcic7XHJcbiAgc2xpZGVEb3duOiAnZW50ZXInIHwgJ2xlYXZlJyB8ICd2b2lkJyA9ICdlbnRlcic7XHJcbiAgcmVhZG9ubHkgYW5pbWF0aW9uU3RhdGVDaGFuZ2VkID0gbmV3IEV2ZW50RW1pdHRlcjxBbmltYXRpb25FdmVudD4oKTtcclxuICBwcml2YXRlIF9kZWcgPSAwO1xyXG4gIHByaXZhdGUgcmVhZG9ubHkgX2JlZm9yZUNsb3NlID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcclxuICBwcml2YXRlIHJlYWRvbmx5IF9hZnRlckNsb3NlZCA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XHJcbiAgLyoqIGF0dGFjaG1lbnQtcHJldmlldyBjdG9yICovXHJcbiAgY29uc3RydWN0b3IoX2RpcmVjdGlvbmFsaXR5OiBEaXJlY3Rpb25hbGl0eSxcclxuICAgIHByaXZhdGUgX3JlbmRlcmVyOiBSZW5kZXJlcjIsIEBJbmplY3QoRklMRV9QUkVWSUVXX0RJQUxPR19EQVRBKSBwdWJsaWMgZGF0YTogUHJldmlld0RhdGEsXHJcbiAgICBzYW5pdGl6ZXI6IERvbVNhbml0aXplcixcclxuICAgIHByaXZhdGUgX3NlcnZpY2U6IE1haWxib3hTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBfb3ZlcmxheVJlZjogT3ZlcmxheVJlZikge1xyXG4gICAgdGhpcy5kaXIgPSBfZGlyZWN0aW9uYWxpdHkudmFsdWU7XHJcbiAgICB0aGlzLmlzSW1hZ2UgPSBpc0ltYWdlKHRoaXMuZGF0YS5maWxlLmNvbnRlbnRUeXBlKTtcclxuICAgIHRoaXMub2JqZWN0RGF0YSA9IHNhbml0aXplci5ieXBhc3NTZWN1cml0eVRydXN0UmVzb3VyY2VVcmwodGhpcy5fdXJsKCkpO1xyXG4gICAgdGhpcy5iZWZvcmVDbG9zZSgpLnN1YnNjcmliZSgoKSA9PiB0aGlzLnNsaWRlRG93biA9ICdsZWF2ZScpO1xyXG4gIH1cclxuICBASG9zdExpc3RlbmVyKCdkb2N1bWVudDpyZXNpemUnLCBbXSlcclxuICByZXNpemUoKSB7XHJcbiAgICBpZiAoIXRoaXMuaXNJbWFnZSkge1xyXG4gICAgICB0aGlzLl9yZW5kZXJlci5zZXRTdHlsZSh0aGlzLm9iai5uYXRpdmVFbGVtZW50LCAnbWluLXdpZHRoJywgYCR7d2luZG93LmlubmVyV2lkdGh9cHhgKTtcclxuICAgICAgdGhpcy5fcmVuZGVyZXIuc2V0U3R5bGUodGhpcy5vYmoubmF0aXZlRWxlbWVudCwgJ21pbi1oZWlnaHQnLCBgJHt3aW5kb3cuaW5uZXJIZWlnaHR9cHhgKVxyXG4gICAgfVxyXG4gIH1cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIHRoaXMuX292ZXJsYXlSZWYuYmFja2Ryb3BDbGljaygpLnN1YnNjcmliZSgoKSA9PiB0aGlzLmNsb3NlKCkpO1xyXG4gIH1cclxuICBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLnJlc2l6ZSgpO1xyXG4gIH1cclxuICBkb3dubG9hZCgpIHtcclxuICAgIGxvY2F0aW9uLmFzc2lnbih0aGlzLl91cmwoKSk7XHJcbiAgfVxyXG4gIHByaXZhdGUgX3VybCgpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIHRoaXMuX3NlcnZpY2UuZm9ybWF0RG93bmxvYWRVcmwodGhpcy5kYXRhLmRvY3VtZW50SWQsIHRoaXMuZGF0YS5maWxlLmlkKTtcclxuICB9XHJcblxyXG4gIHJvdGF0ZSgpIHtcclxuICAgIGNvbnN0IGVsZW0gPSAodGhpcy5pc0ltYWdlID8gdGhpcy5pbWcgOiB0aGlzLm9iaikubmF0aXZlRWxlbWVudDtcclxuICAgIHRoaXMuX2RlZyA9IHRoaXMuX2RlZyA9PT0gMjcwID8gMCA6IHRoaXMuX2RlZyArIDkwO1xyXG4gICAgZWxlbS5zdHlsZS50cmFuc2Zvcm0gPSBgcm90YXRlKCR7dGhpcy5fZGVnfWRlZylgO1xyXG4gIH1cclxuICBvbkxvYWQoX2V2dDogRXZlbnQpIHtcclxuICAgIHRoaXMubG9hZGluZyA9IGZhbHNlO1xyXG4gIH1cclxuICBhZnRlckNsb3NlZCgpOiBPYnNlcnZhYmxlPHZvaWQ+IHtcclxuICAgIHJldHVybiB0aGlzLl9hZnRlckNsb3NlZC5hc09ic2VydmFibGUoKTtcclxuICB9XHJcblxyXG4gIGJlZm9yZUNsb3NlKCk6IE9ic2VydmFibGU8dm9pZD4ge1xyXG4gICAgcmV0dXJuIHRoaXMuX2JlZm9yZUNsb3NlLmFzT2JzZXJ2YWJsZSgpO1xyXG4gIH1cclxuICBASG9zdExpc3RlbmVyKCdkb2N1bWVudDprZXlkb3duLmVzY2FwZScsIFtdKVxyXG4gIGNsb3NlKCk6IHZvaWQge1xyXG4gICAgLy8gTGlzdGVuIGZvciBhbmltYXRpb24gJ3N0YXJ0JyBldmVudHNcclxuICAgIHRoaXMuYW5pbWF0aW9uU3RhdGVDaGFuZ2VkLnBpcGUoXHJcbiAgICAgIGZpbHRlcihldmVudCA9PiBldmVudC5waGFzZU5hbWUgPT09ICdzdGFydCcpLFxyXG4gICAgICB0YWtlKDEpXHJcbiAgICApLnN1YnNjcmliZSgoKSA9PiB7XHJcbiAgICAgIHRoaXMuX2JlZm9yZUNsb3NlLm5leHQoKTtcclxuICAgICAgdGhpcy5fYmVmb3JlQ2xvc2UuY29tcGxldGUoKTtcclxuICAgICAgdGhpcy5fb3ZlcmxheVJlZi5kZXRhY2hCYWNrZHJvcCgpO1xyXG4gICAgfSk7XHJcblxyXG4gICAgLy8gTGlzdGVuIGZvciBhbmltYXRpb24gJ2RvbmUnIGV2ZW50c1xyXG4gICAgdGhpcy5hbmltYXRpb25TdGF0ZUNoYW5nZWQucGlwZShcclxuICAgICAgZmlsdGVyKGV2ZW50ID0+IGV2ZW50LnBoYXNlTmFtZSA9PT0gJ2RvbmUnICYmIGV2ZW50LnRvU3RhdGUgPT09ICdsZWF2ZScpLFxyXG4gICAgICB0YWtlKDEpXHJcbiAgICApLnN1YnNjcmliZSgoKSA9PiB7XHJcbiAgICAgIHRoaXMuX292ZXJsYXlSZWYuZGlzcG9zZSgpO1xyXG4gICAgICB0aGlzLl9hZnRlckNsb3NlZC5uZXh0KCk7XHJcbiAgICAgIHRoaXMuX2FmdGVyQ2xvc2VkLmNvbXBsZXRlKCk7XHJcbiAgICB9KTtcclxuXHJcbiAgICAvLyBTdGFydCBleGl0IGFuaW1hdGlvblxyXG4gICAgdGhpcy5zdGFydEV4aXRBbmltYXRpb24oKTtcclxuICB9XHJcbiAgb25BbmltYXRpb25TdGFydChldmVudDogQW5pbWF0aW9uRXZlbnQpIHtcclxuICAgIHRoaXMuYW5pbWF0aW9uU3RhdGVDaGFuZ2VkLmVtaXQoZXZlbnQpO1xyXG4gIH1cclxuXHJcbiAgb25BbmltYXRpb25Eb25lKGV2ZW50OiBBbmltYXRpb25FdmVudCkge1xyXG4gICAgdGhpcy5hbmltYXRpb25TdGF0ZUNoYW5nZWQuZW1pdChldmVudCk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHN0YXJ0RXhpdEFuaW1hdGlvbigpIHtcclxuICAgIHRoaXMuYW5pbWF0aW9uU3RhdGUgPSAnbGVhdmUnO1xyXG4gIH1cclxufVxyXG5leHBvcnQgaW50ZXJmYWNlIFByZXZpZXdEYXRhIHtcclxuICBkb2N1bWVudElkOiBudW1iZXI7XHJcbiAgZmlsZTogQXR0YWNobWVudDtcclxufVxyXG4iLCI8ZGl2IGNsYXNzPVwib3ZlcmxheS1jb250ZW50XCIgW0BzbGlkZUNvbnRlbnRdPVwiYW5pbWF0aW9uU3RhdGVcIiAoQHNsaWRlQ29udGVudC5zdGFydCk9XCJvbkFuaW1hdGlvblN0YXJ0KCRldmVudClcIlxyXG4gW2Rpcl09XCJkaXJcIiAoQHNsaWRlQ29udGVudC5kb25lKT1cIm9uQW5pbWF0aW9uRG9uZSgkZXZlbnQpXCI+XHJcbiAgPGRpdiBjbGFzcz1cInRvb2xiYXItd3JhcHBlclwiIGZ4TGF5b3V0PVwicm93XCIgW0BzbGlkZURvd25dPVwic2xpZGVEb3duXCIgKm5nSWY9XCIhbG9hZGluZ1wiPlxyXG4gICAgPGJ1dHRvbiBtYXQtaWNvbi1idXR0b24gKGNsaWNrKT1cImNsb3NlKClcIiBiaXpkb2NUb29sdGlwPVwie3snQmFjaycgfCB0cmFuc2xhdGV9fVwiPjxtYXQtaWNvbiBjbGFzcz1cIm1hdC1pY29uLXJ0bC1taXJyb3JcIj5rZXlib2FyZF9hcnJvd19sZWZ0PC9tYXQtaWNvbj48L2J1dHRvbj5cclxuICAgIDxzcGFuIGNsYXNzPVwibWF0LWJvZHktMVwiPnt7ZGF0YS5maWxlLmZpbGVOYW1lfX08L3NwYW4+XHJcbiAgICA8c3BhbiBjbGFzcz1cImRpdmlkZXJcIj48L3NwYW4+XHJcbiAgICA8YnV0dG9uIG1hdC1pY29uLWJ1dHRvbiAoY2xpY2spPVwicm90YXRlKClcIiBiaXpkb2NUb29sdGlwPVwie3snUm90YXRlJyB8IHRyYW5zbGF0ZSB9fVwiPjxtYXQtaWNvbj5zY3JlZW5fcm90YXRpb248L21hdC1pY29uPjwvYnV0dG9uPlxyXG4gICAgPGJ1dHRvbiBtYXQtaWNvbi1idXR0b24gKGNsaWNrKT1cImRvd25sb2FkKClcIiBiaXpkb2NUb29sdGlwPVwie3snRG93bmxvYWQnIHwgdHJhbnNsYXRlfX1cIj48bWF0LWljb24+c2F2ZV9hbHQ8L21hdC1pY29uPjwvYnV0dG9uPlxyXG4gIDwvZGl2PlxyXG4gIDxkaXYgY2xhc3M9XCJzcGlubmVyLXdyYXBwZXJcIiAqbmdJZj1cImxvYWRpbmdcIj5cclxuICAgIDxtYXQtc3Bpbm5lcj48L21hdC1zcGlubmVyPlxyXG4gIDwvZGl2PlxyXG4gIDxvYmplY3QgKGxvYWQpPVwib25Mb2FkKCRldmVudClcIiBbZGF0YV09XCJvYmplY3REYXRhXCIgW3R5cGVdPVwiZGF0YS5maWxlLmNvbnRlbnRUeXBlXCIgKm5nSWY9XCIhaXNJbWFnZVwiICNvYmo+PC9vYmplY3Q+XHJcbiAgPGltZyAqbmdJZj1cImlzSW1hZ2VcIiAobG9hZCk9XCJvbkxvYWQoJGV2ZW50KVwiIFtzdHlsZS5vcGFjaXR5XT1cImxvYWRpbmcgPyAwIDogMVwiIFtAZmFkZV09XCJsb2FkaW5nID8gJ2ZhZGVPdXQnIDogJ2ZhZGVJbidcIiBbc3JjXT1cIm9iamVjdERhdGFcIiAjaW1nPlxyXG48L2Rpdj5cclxuIl19
155
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXR0YWNobWVudC1wcmV2aWV3LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnJhcmllcy9jb3JlL3NyYy9saWIvY29tcG9zZS9hdHRhY2htZW50cy9wcmV2aWV3L2F0dGFjaG1lbnQtcHJldmlldy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJyYXJpZXMvY29yZS9zcmMvbGliL2NvbXBvc2UvYXR0YWNobWVudHMvcHJldmlldy9hdHRhY2htZW50LXByZXZpZXcuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxjQUFjLEVBQUUsTUFBTSxFQUFFLFlBQVksRUFBRSxZQUFZLEVBQVUsU0FBUyxFQUF3QyxNQUFNLGVBQWUsQ0FBQztBQUd2SixPQUFPLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFFLE9BQU8sRUFBa0IsTUFBTSxxQkFBcUIsQ0FBQztBQUNqRyxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzlDLE9BQU8sRUFBYyxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFHM0MsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLHlCQUF5QixDQUFDOzs7Ozs7Ozs7Ozs7O0FBR2xELE1BQU0sQ0FBQyxNQUFNLHdCQUF3QixHQUFHLElBQUksY0FBYyxDQUFjLDBCQUEwQixDQUFDLENBQUM7QUFFcEcsTUFBTSxpQkFBaUIsR0FBRyx3Q0FBd0MsQ0FBQztBQTBCbkUsa0NBQWtDO0FBQ2xDLE1BQU0sT0FBTyxpQkFBaUI7SUFhNUIsOEJBQThCO0lBQzlCLFlBQVksZUFBK0IsRUFDakMsU0FBb0IsRUFBMkMsSUFBaUIsRUFDeEYsU0FBdUIsRUFDZixRQUF3QixFQUN4QixXQUF1QjtRQUh2QixjQUFTLEdBQVQsU0FBUyxDQUFXO1FBQTJD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LE1BQU0sRUFBRSxPQUFPLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQzs0QkFDeEQsS0FBSyxDQUFDLE9BQU8sRUFBRSxLQUFLLENBQUMsRUFBRSxTQUFTLEVBQUUsd0JBQXdCLEVBQUUsT0FBTyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUM7NEJBQzFFLFVBQVUsQ0FBQyxRQUFRLEVBQUUsT0FBTyxDQUFDLGlCQUFpQixDQUFDLENBQUM7eUJBQ2pELENBQUM7cUJBQ0g7OzBCQWtCZ0MsTUFBTTsyQkFBQyx3QkFBd0I7NkhBZDNCLEdBQUc7c0JBQXZDLFNBQVM7dUJBQUMsS0FBSyxFQUFFLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRTtnQkFDQyxHQUFHO3NCQUF0QyxTQUFTO3VCQUFDLEtBQUssRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUU7Z0JBdUJsQyxNQUFNO3NCQURMLFlBQVk7dUJBQUMsaUJBQWlCLEVBQUUsRUFBRTtnQkFvQ25DLEtBQUs7c0JBREosWUFBWTt1QkFBQyx5QkFBeUIsRUFBRSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbmplY3Rpb25Ub2tlbiwgSW5qZWN0LCBIb3N0TGlzdGVuZXIsIEV2ZW50RW1pdHRlciwgT25Jbml0LCBWaWV3Q2hpbGQsIEVsZW1lbnRSZWYsIEFmdGVyVmlld0luaXQsIFJlbmRlcmVyMiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBPdmVybGF5UmVmIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL292ZXJsYXknO1xyXG5pbXBvcnQgeyBBdHRhY2htZW50IH0gZnJvbSAnLi4vLi4vLi4vY29yZS9tb2RlbHMnO1xyXG5pbXBvcnQgeyB0cmlnZ2VyLCBzdGF0ZSwgdHJhbnNpdGlvbiwgc3R5bGUsIGFuaW1hdGUsIEFuaW1hdGlvbkV2ZW50IH0gZnJvbSAnQGFuZ3VsYXIvYW5pbWF0aW9ucyc7XHJcbmltcG9ydCB7IHRha2UsIGZpbHRlciB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBEb21TYW5pdGl6ZXIsIFNhZmVVcmwgfSBmcm9tICdAYW5ndWxhci9wbGF0Zm9ybS1icm93c2VyJztcclxuaW1wb3J0IHsgRGlyZWN0aW9uYWxpdHksIERpcmVjdGlvbiB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9iaWRpJztcclxuaW1wb3J0IHsgaXNJbWFnZSB9IGZyb20gJy4uLy4uLy4uL2NvcmUvZnVuY3Rpb25zJztcclxuaW1wb3J0IHsgTWFpbGJveFNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9jb3JlL21haWxib3guc2VydmljZSc7XHJcblxyXG5leHBvcnQgY29uc3QgRklMRV9QUkVWSUVXX0RJQUxPR19EQVRBID0gbmV3IEluamVjdGlvblRva2VuPFByZXZpZXdEYXRhPignRklMRV9QUkVWSUVXX0RJQUxPR19EQVRBJyk7XHJcblxyXG5jb25zdCBBTklNQVRJT05fVElNSU5HUyA9ICc0MDBtcyBjdWJpYy1iZXppZXIoMC4yNSwgMC44LCAwLjI1LCAxKSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2JpemRvYy1hdHRhY2htZW50LXByZXZpZXcnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9hdHRhY2htZW50LXByZXZpZXcuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2F0dGFjaG1lbnQtcHJldmlldy5jb21wb25lbnQuc2NzcyddLFxyXG4gIGFuaW1hdGlvbnM6IFtcclxuICAgIHRyaWdnZXIoJ2ZhZGUnLCBbXHJcbiAgICAgIHN0YXRlKCdmYWRlT3V0Jywgc3R5bGUoeyBvcGFjaXR5OiAwIH0pKSxcclxuICAgICAgc3RhdGUoJ2ZhZGVJbicsIHN0eWxlKHsgb3BhY2l0eTogMSB9KSksXHJcbiAgICAgIHRyYW5zaXRpb24oJyogPT4gZmFkZUluJywgYW5pbWF0ZShBTklNQVRJT05fVElNSU5HUykpXHJcbiAgICBdKSxcclxuICAgIHRyaWdnZXIoJ3NsaWRlRG93bicsIFtcclxuICAgICAgc3RhdGUoJ3ZvaWQnLCBzdHlsZSh7IHRyYW5zZm9ybTogJ3RyYW5zbGF0ZVkoLTEwMCUpJyB9KSksXHJcbiAgICAgIHN0YXRlKCdlbnRlcicsIHN0eWxlKHsgdHJhbnNmb3JtOiAndHJhbnNsYXRlWSgwKScgfSkpLFxyXG4gICAgICBzdGF0ZSgnbGVhdmUnLCBzdHlsZSh7IHRyYW5zZm9ybTogJ3RyYW5zbGF0ZVkoLTEwMCUpJyB9KSksXHJcbiAgICAgIHRyYW5zaXRpb24oJyogPT4gKicsIGFuaW1hdGUoJzQwMG1zIGN1YmljLWJlemllcigwLjI1LCAwLjgsIDAuMjUsIDEpJykpXHJcbiAgICBdKSxcclxuICAgIHRyaWdnZXIoJ3NsaWRlQ29udGVudCcsIFtcclxuICAgICAgc3RhdGUoJ3ZvaWQnLCBzdHlsZSh7IHRyYW5zZm9ybTogJ3RyYW5zbGF0ZTNkKDAsIDI1JSwgMCkgc2NhbGUoMC45KScsIG9wYWNpdHk6IDAgfSkpLFxyXG4gICAgICBzdGF0ZSgnZW50ZXInLCBzdHlsZSh7IHRyYW5zZm9ybTogJ25vbmUnLCBvcGFjaXR5OiAxIH0pKSxcclxuICAgICAgc3RhdGUoJ2xlYXZlJywgc3R5bGUoeyB0cmFuc2Zvcm06ICd0cmFuc2xhdGUzZCgwLCAyNSUsIDApJywgb3BhY2l0eTogMCB9KSksXHJcbiAgICAgIHRyYW5zaXRpb24oJyogPT4gKicsIGFuaW1hdGUoQU5JTUFUSU9OX1RJTUlOR1MpKSxcclxuICAgIF0pXHJcbiAgXVxyXG59KVxyXG4vKiogYXR0YWNobWVudC1wcmV2aWV3IGNvbXBvbmVudCovXHJcbmV4cG9ydCBjbGFzcyBBdHRhY2htZW50UHJldmlldyBpbXBsZW1lbnRzIE9uSW5pdCwgQWZ0ZXJWaWV3SW5pdCB7XHJcbiAgQFZpZXdDaGlsZCgnb2JqJywgeyBzdGF0aWM6IGZhbHNlIH0pIG9iajogRWxlbWVudFJlZjtcclxuICBAVmlld0NoaWxkKCdpbWcnLCB7IHN0YXRpYzogdHJ1ZSB9KSBpbWc6IEVsZW1lbnRSZWY7XHJcbiAgb2JqZWN0RGF0YTogU2FmZVVybDtcclxuICBsb2FkaW5nID0gdHJ1ZTtcclxuICBkaXI6IERpcmVjdGlvbjtcclxuICBpc0ltYWdlOiBib29sZWFuO1xyXG4gIGFuaW1hdGlvblN0YXRlOiAndm9pZCcgfCAnZW50ZXInIHwgJ2xlYXZlJyA9ICdlbnRlcic7XHJcbiAgc2xpZGVEb3duOiAnZW50ZXInIHwgJ2xlYXZlJyB8ICd2b2lkJyA9ICdlbnRlcic7XHJcbiAgcmVhZG9ubHkgYW5pbWF0aW9uU3RhdGVDaGFuZ2VkID0gbmV3IEV2ZW50RW1pdHRlcjxBbmltYXRpb25FdmVudD4oKTtcclxuICBwcml2YXRlIF9kZWcgPSAwO1xyXG4gIHByaXZhdGUgcmVhZG9ubHkgX2JlZm9yZUNsb3NlID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcclxuICBwcml2YXRlIHJlYWRvbmx5IF9hZnRlckNsb3NlZCA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XHJcbiAgLyoqIGF0dGFjaG1lbnQtcHJldmlldyBjdG9yICovXHJcbiAgY29uc3RydWN0b3IoX2RpcmVjdGlvbmFsaXR5OiBEaXJlY3Rpb25hbGl0eSxcclxuICAgIHByaXZhdGUgX3JlbmRlcmVyOiBSZW5kZXJlcjIsIEBJbmplY3QoRklMRV9QUkVWSUVXX0RJQUxPR19EQVRBKSBwdWJsaWMgZGF0YTogUHJldmlld0RhdGEsXHJcbiAgICBzYW5pdGl6ZXI6IERvbVNhbml0aXplcixcclxuICAgIHByaXZhdGUgX3NlcnZpY2U6IE1haWxib3hTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBfb3ZlcmxheVJlZjogT3ZlcmxheVJlZikge1xyXG4gICAgdGhpcy5kaXIgPSBfZGlyZWN0aW9uYWxpdHkudmFsdWU7XHJcbiAgICB0aGlzLmlzSW1hZ2UgPSBpc0ltYWdlKHRoaXMuZGF0YS5maWxlLmNvbnRlbnRUeXBlKTtcclxuICAgIHRoaXMub2JqZWN0RGF0YSA9IHNhbml0aXplci5ieXBhc3NTZWN1cml0eVRydXN0UmVzb3VyY2VVcmwodGhpcy5fdXJsKHRydWUpKTtcclxuICAgIHRoaXMuYmVmb3JlQ2xvc2UoKS5zdWJzY3JpYmUoKCkgPT4gdGhpcy5zbGlkZURvd24gPSAnbGVhdmUnKTtcclxuICB9XHJcbiAgQEhvc3RMaXN0ZW5lcignZG9jdW1lbnQ6cmVzaXplJywgW10pXHJcbiAgcmVzaXplKCkge1xyXG4gICAgaWYgKCF0aGlzLmlzSW1hZ2UpIHtcclxuICAgICAgdGhpcy5fcmVuZGVyZXIuc2V0U3R5bGUodGhpcy5vYmoubmF0aXZlRWxlbWVudCwgJ21pbi13aWR0aCcsIGAke3dpbmRvdy5pbm5lcldpZHRofXB4YCk7XHJcbiAgICAgIHRoaXMuX3JlbmRlcmVyLnNldFN0eWxlKHRoaXMub2JqLm5hdGl2ZUVsZW1lbnQsICdtaW4taGVpZ2h0JywgYCR7d2luZG93LmlubmVySGVpZ2h0fXB4YClcclxuICAgIH1cclxuICB9XHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLl9vdmVybGF5UmVmLmJhY2tkcm9wQ2xpY2soKS5zdWJzY3JpYmUoKCkgPT4gdGhpcy5jbG9zZSgpKTtcclxuICB9XHJcbiAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5yZXNpemUoKTtcclxuICB9XHJcbiAgZG93bmxvYWQoKSB7XHJcbiAgICBsb2NhdGlvbi5hc3NpZ24odGhpcy5fdXJsKCkpO1xyXG4gIH1cclxuICBwcml2YXRlIF91cmwoaW5saW5lPzogYm9vbGVhbik6IHN0cmluZyB7XHJcbiAgICByZXR1cm4gdGhpcy5fc2VydmljZS5mb3JtYXREb3dubG9hZFVybCh0aGlzLmRhdGEuZG9jdW1lbnRJZCwgdGhpcy5kYXRhLmZpbGUuaWQsIGlubGluZSk7XHJcbiAgfVxyXG5cclxuICByb3RhdGUoKSB7XHJcbiAgICBjb25zdCBlbGVtID0gKHRoaXMuaXNJbWFnZSA/IHRoaXMuaW1nIDogdGhpcy5vYmopLm5hdGl2ZUVsZW1lbnQ7XHJcbiAgICB0aGlzLl9kZWcgPSB0aGlzLl9kZWcgPT09IDI3MCA/IDAgOiB0aGlzLl9kZWcgKyA5MDtcclxuICAgIGVsZW0uc3R5bGUudHJhbnNmb3JtID0gYHJvdGF0ZSgke3RoaXMuX2RlZ31kZWcpYDtcclxuICB9XHJcbiAgb25Mb2FkKF9ldnQ6IEV2ZW50KSB7XHJcbiAgICB0aGlzLmxvYWRpbmcgPSBmYWxzZTtcclxuICB9XHJcbiAgYWZ0ZXJDbG9zZWQoKTogT2JzZXJ2YWJsZTx2b2lkPiB7XHJcbiAgICByZXR1cm4gdGhpcy5fYWZ0ZXJDbG9zZWQuYXNPYnNlcnZhYmxlKCk7XHJcbiAgfVxyXG5cclxuICBiZWZvcmVDbG9zZSgpOiBPYnNlcnZhYmxlPHZvaWQ+IHtcclxuICAgIHJldHVybiB0aGlzLl9iZWZvcmVDbG9zZS5hc09ic2VydmFibGUoKTtcclxuICB9XHJcbiAgQEhvc3RMaXN0ZW5lcignZG9jdW1lbnQ6a2V5ZG93bi5lc2NhcGUnLCBbXSlcclxuICBjbG9zZSgpOiB2b2lkIHtcclxuICAgIC8vIExpc3RlbiBmb3IgYW5pbWF0aW9uICdzdGFydCcgZXZlbnRzXHJcbiAgICB0aGlzLmFuaW1hdGlvblN0YXRlQ2hhbmdlZC5waXBlKFxyXG4gICAgICBmaWx0ZXIoZXZlbnQgPT4gZXZlbnQucGhhc2VOYW1lID09PSAnc3RhcnQnKSxcclxuICAgICAgdGFrZSgxKVxyXG4gICAgKS5zdWJzY3JpYmUoKCkgPT4ge1xyXG4gICAgICB0aGlzLl9iZWZvcmVDbG9zZS5uZXh0KCk7XHJcbiAgICAgIHRoaXMuX2JlZm9yZUNsb3NlLmNvbXBsZXRlKCk7XHJcbiAgICAgIHRoaXMuX292ZXJsYXlSZWYuZGV0YWNoQmFja2Ryb3AoKTtcclxuICAgIH0pO1xyXG5cclxuICAgIC8vIExpc3RlbiBmb3IgYW5pbWF0aW9uICdkb25lJyBldmVudHNcclxuICAgIHRoaXMuYW5pbWF0aW9uU3RhdGVDaGFuZ2VkLnBpcGUoXHJcbiAgICAgIGZpbHRlcihldmVudCA9PiBldmVudC5waGFzZU5hbWUgPT09ICdkb25lJyAmJiBldmVudC50b1N0YXRlID09PSAnbGVhdmUnKSxcclxuICAgICAgdGFrZSgxKVxyXG4gICAgKS5zdWJzY3JpYmUoKCkgPT4ge1xyXG4gICAgICB0aGlzLl9vdmVybGF5UmVmLmRpc3Bvc2UoKTtcclxuICAgICAgdGhpcy5fYWZ0ZXJDbG9zZWQubmV4dCgpO1xyXG4gICAgICB0aGlzLl9hZnRlckNsb3NlZC5jb21wbGV0ZSgpO1xyXG4gICAgfSk7XHJcblxyXG4gICAgLy8gU3RhcnQgZXhpdCBhbmltYXRpb25cclxuICAgIHRoaXMuc3RhcnRFeGl0QW5pbWF0aW9uKCk7XHJcbiAgfVxyXG4gIG9uQW5pbWF0aW9uU3RhcnQoZXZlbnQ6IEFuaW1hdGlvbkV2ZW50KSB7XHJcbiAgICB0aGlzLmFuaW1hdGlvblN0YXRlQ2hhbmdlZC5lbWl0KGV2ZW50KTtcclxuICB9XHJcblxyXG4gIG9uQW5pbWF0aW9uRG9uZShldmVudDogQW5pbWF0aW9uRXZlbnQpIHtcclxuICAgIHRoaXMuYW5pbWF0aW9uU3RhdGVDaGFuZ2VkLmVtaXQoZXZlbnQpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBzdGFydEV4aXRBbmltYXRpb24oKSB7XHJcbiAgICB0aGlzLmFuaW1hdGlvblN0YXRlID0gJ2xlYXZlJztcclxuICB9XHJcbn1cclxuZXhwb3J0IGludGVyZmFjZSBQcmV2aWV3RGF0YSB7XHJcbiAgZG9jdW1lbnRJZDogbnVtYmVyO1xyXG4gIGZpbGU6IEF0dGFjaG1lbnQ7XHJcbn1cclxuIiwiPGRpdiBjbGFzcz1cIm92ZXJsYXktY29udGVudFwiIFtAc2xpZGVDb250ZW50XT1cImFuaW1hdGlvblN0YXRlXCIgKEBzbGlkZUNvbnRlbnQuc3RhcnQpPVwib25BbmltYXRpb25TdGFydCgkZXZlbnQpXCJcclxuICAgICBbZGlyXT1cImRpclwiIChAc2xpZGVDb250ZW50LmRvbmUpPVwib25BbmltYXRpb25Eb25lKCRldmVudClcIj5cclxuICA8ZGl2IGNsYXNzPVwidG9vbGJhci13cmFwcGVyXCIgZnhMYXlvdXQ9XCJyb3dcIiBbQHNsaWRlRG93bl09XCJzbGlkZURvd25cIiAqbmdJZj1cIiFsb2FkaW5nXCI+XHJcbiAgICA8YnV0dG9uIG1hdC1pY29uLWJ1dHRvbiAoY2xpY2spPVwiY2xvc2UoKVwiIGJpemRvY1Rvb2x0aXA9XCJ7eydCYWNrJyB8IHRyYW5zbGF0ZX19XCI+PG1hdC1pY29uIGNsYXNzPVwibWF0LWljb24tcnRsLW1pcnJvclwiPmtleWJvYXJkX2Fycm93X2xlZnQ8L21hdC1pY29uPjwvYnV0dG9uPlxyXG4gICAgPHNwYW4gY2xhc3M9XCJtYXQtYm9keS0xXCI+e3tkYXRhLmZpbGUuZmlsZU5hbWV9fTwvc3Bhbj5cclxuICAgIDxzcGFuIGNsYXNzPVwiZGl2aWRlclwiPjwvc3Bhbj5cclxuICAgIDxidXR0b24gbWF0LWljb24tYnV0dG9uIChjbGljayk9XCJyb3RhdGUoKVwiIGJpemRvY1Rvb2x0aXA9XCJ7eydSb3RhdGUnIHwgdHJhbnNsYXRlIH19XCI+PG1hdC1pY29uPnNjcmVlbl9yb3RhdGlvbjwvbWF0LWljb24+PC9idXR0b24+XHJcbiAgICA8YnV0dG9uIG1hdC1pY29uLWJ1dHRvbiAoY2xpY2spPVwiZG93bmxvYWQoKVwiIGJpemRvY1Rvb2x0aXA9XCJ7eydEb3dubG9hZCcgfCB0cmFuc2xhdGV9fVwiPjxtYXQtaWNvbj5zYXZlX2FsdDwvbWF0LWljb24+PC9idXR0b24+XHJcbiAgPC9kaXY+XHJcbiAgPGRpdiBjbGFzcz1cInNwaW5uZXItd3JhcHBlclwiICpuZ0lmPVwibG9hZGluZ1wiPlxyXG4gICAgPG1hdC1zcGlubmVyPjwvbWF0LXNwaW5uZXI+XHJcbiAgPC9kaXY+XHJcbiAgPG9iamVjdCAobG9hZCk9XCJvbkxvYWQoJGV2ZW50KVwiIFtkYXRhXT1cIm9iamVjdERhdGFcIiBbdHlwZV09XCJkYXRhLmZpbGUuY29udGVudFR5cGVcIiAqbmdJZj1cIiFpc0ltYWdlXCIgI29iaiB3aWR0aD1cIjI1MFwiXHJcbiAgICAgICAgICBoZWlnaHQ9XCIyMDBcIj5cclxuICA8L29iamVjdD5cclxuICA8aW1nICpuZ0lmPVwiaXNJbWFnZVwiIChsb2FkKT1cIm9uTG9hZCgkZXZlbnQpXCIgW3N0eWxlLm9wYWNpdHldPVwibG9hZGluZyA/IDAgOiAxXCIgW0BmYWRlXT1cImxvYWRpbmcgPyAnZmFkZU91dCcgOiAnZmFkZUluJ1wiIFtzcmNdPVwib2JqZWN0RGF0YVwiICNpbWc+XHJcbjwvZGl2PlxyXG4iXX0=