@colijnit/sharedcomponents 1.0.57 → 1.0.59

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 (484) hide show
  1. package/README.md +24 -24
  2. package/bundles/colijnit-sharedcomponents.umd.js +9938 -6389
  3. package/bundles/colijnit-sharedcomponents.umd.js.map +1 -1
  4. package/colijnit-sharedcomponents.d.ts +91 -74
  5. package/colijnit-sharedcomponents.metadata.json +1 -1
  6. package/esm2015/colijnit-sharedcomponents.js +92 -75
  7. package/esm2015/lib/assets/dictionary/text.properties.js +11 -11
  8. package/esm2015/lib/businessobject/build-images-and-documentation-result.js +2 -0
  9. package/esm2015/lib/businessobject/co-document-right.bo.js +3 -0
  10. package/esm2015/lib/businessobject/drag-drop-container-element.js +2 -0
  11. package/esm2015/lib/businessobject/drag-drop-container.js +7 -0
  12. package/esm2015/lib/components/activity-list/activity-list.component.js +130 -0
  13. package/esm2015/lib/components/activity-list/activity-list.module.js +24 -0
  14. package/esm2015/lib/components/app-file-dropzone/app-file-dropzone.component.js +47 -0
  15. package/esm2015/lib/components/app-file-dropzone/app-file-dropzone.module.js +20 -0
  16. package/esm2015/lib/components/date-planning/component/agenda/agenda-base-view.component.js +61 -61
  17. package/esm2015/lib/components/date-planning/component/agenda/agenda-day-view.component.js +36 -36
  18. package/esm2015/lib/components/date-planning/component/agenda/agenda-event.component.js +56 -56
  19. package/esm2015/lib/components/date-planning/component/agenda/agenda-events.component.js +47 -47
  20. package/esm2015/lib/components/date-planning/component/agenda/agenda-half-hour-cell.component.js +68 -68
  21. package/esm2015/lib/components/date-planning/component/agenda/agenda-header.component.js +243 -243
  22. package/esm2015/lib/components/date-planning/component/agenda/agenda-hour-cell.component.js +36 -36
  23. package/esm2015/lib/components/date-planning/component/agenda/agenda-hour-view-labels.component.js +50 -50
  24. package/esm2015/lib/components/date-planning/component/agenda/agenda-hour-view.component.js +46 -46
  25. package/esm2015/lib/components/date-planning/component/agenda/agenda-month-view.component.js +61 -61
  26. package/esm2015/lib/components/date-planning/component/agenda/agenda-select-event.component.js +39 -39
  27. package/esm2015/lib/components/date-planning/component/agenda/agenda-view.component.js +35 -35
  28. package/esm2015/lib/components/date-planning/component/agenda/agenda-week-select-view.component.js +64 -64
  29. package/esm2015/lib/components/date-planning/component/agenda/agenda-week-view.component.js +48 -48
  30. package/esm2015/lib/components/date-planning/component/agenda/view-select.component.js +42 -42
  31. package/esm2015/lib/components/date-planning/component/calendar/calendar-all-months.component.js +34 -34
  32. package/esm2015/lib/components/date-planning/component/calendar/calendar-all-years.component.js +48 -48
  33. package/esm2015/lib/components/date-planning/component/calendar/calendar-header.component.js +107 -107
  34. package/esm2015/lib/components/date-planning/component/calendar/calendar-view.component.js +178 -178
  35. package/esm2015/lib/components/date-planning/component/calendar/calendar.component.js +34 -34
  36. package/esm2015/lib/components/date-planning/date-planning.component.js +113 -113
  37. package/esm2015/lib/components/date-planning/date-planning.module.js +63 -63
  38. package/esm2015/lib/components/docsign/component/signature/signature.component.js +75 -75
  39. package/esm2015/lib/components/docsign/component/signatures/signatures.component.js +44 -44
  40. package/esm2015/lib/components/docsign/docsign.component.js +242 -242
  41. package/esm2015/lib/components/docsign/docsign.module.js +23 -23
  42. package/esm2015/lib/components/file-upload/file-upload.component.js +189 -0
  43. package/esm2015/lib/components/file-upload/file-upload.module.js +25 -0
  44. package/esm2015/lib/components/file-upload-popup/file-upload-popup.component.js +397 -0
  45. package/esm2015/lib/components/file-upload-popup/file-upload-popup.module.js +30 -0
  46. package/esm2015/lib/components/files-upload/components/base-file-upload.component.js +469 -0
  47. package/esm2015/lib/components/files-upload/components/drag-drop-container.component.js +115 -0
  48. package/esm2015/lib/components/files-upload/files-upload.component.js +131 -0
  49. package/esm2015/lib/components/files-upload/files-upload.module.js +47 -0
  50. package/esm2015/lib/components/image-display/image-display.component.js +36 -0
  51. package/esm2015/lib/components/image-display/image-display.module.js +23 -0
  52. package/esm2015/lib/components/key-pad/key-pad.component.js +200 -200
  53. package/esm2015/lib/components/key-pad/key-pad.module.js +22 -22
  54. package/esm2015/lib/components/layout-switcher/layout-switcher.component.js +74 -74
  55. package/esm2015/lib/components/layout-switcher/layout-switcher.module.js +21 -21
  56. package/esm2015/lib/components/linear-gauge/co-linear-gauge.component.js +59 -59
  57. package/esm2015/lib/components/linear-gauge/co-linear-gauge.module.js +19 -19
  58. package/esm2015/lib/components/multi-property-toggler/multiple-property-toggler.component.js +89 -0
  59. package/esm2015/lib/components/multi-property-toggler/multiple-property-toggler.module.js +21 -0
  60. package/esm2015/lib/components/send-method-dialog/components/layout-selection/layout-selection.component.js +79 -79
  61. package/esm2015/lib/components/send-method-dialog/components/layout-selection/layout-selection.module.js +21 -21
  62. package/esm2015/lib/components/send-method-dialog/components/printer-selection/printer-selection.component.js +85 -85
  63. package/esm2015/lib/components/send-method-dialog/components/printer-selection/printer-selection.module.js +21 -21
  64. package/esm2015/lib/components/send-method-dialog/components/send-method-email/send-method-email.component.js +64 -64
  65. package/esm2015/lib/components/send-method-dialog/components/send-method-email/send-method-email.module.js +26 -26
  66. package/esm2015/lib/components/send-method-dialog/components/send-method-pdf/send-method-pdf.component.js +40 -40
  67. package/esm2015/lib/components/send-method-dialog/components/send-method-pdf/send-method-pdf.module.js +23 -23
  68. package/esm2015/lib/components/send-method-dialog/components/send-method-printer/send-method-printer.component.js +61 -61
  69. package/esm2015/lib/components/send-method-dialog/components/send-method-printer/send-method-printer.module.js +28 -28
  70. package/esm2015/lib/components/send-method-dialog/components/signature-button/signature-button.component.js +38 -38
  71. package/esm2015/lib/components/send-method-dialog/components/signature-button/signature-button.module.js +21 -21
  72. package/esm2015/lib/components/send-method-dialog/model/email-address-viewmodel.js +7 -7
  73. package/esm2015/lib/components/send-method-dialog/send-method-dialog.component.js +258 -258
  74. package/esm2015/lib/components/send-method-dialog/send-method-dialog.module.js +35 -35
  75. package/esm2015/lib/components/send-method-dialog/send-method-params.interface.js +2 -2
  76. package/esm2015/lib/components/send-method-dialog/service/send-method.service.js +59 -59
  77. package/esm2015/lib/components/simple-tags/simple-tags.component.js +229 -229
  78. package/esm2015/lib/components/simple-tags/simple-tags.module.js +26 -26
  79. package/esm2015/lib/components/statusbar/statusbar-popup.component.js +97 -97
  80. package/esm2015/lib/components/statusbar/statusbar.component.js +81 -81
  81. package/esm2015/lib/components/statusbar/statusbar.module.js +27 -27
  82. package/esm2015/lib/components/stock/components/allocation-stock-history/allocation-stock-history.component.js +47 -47
  83. package/esm2015/lib/components/stock/components/order-commission-stock-history/order-commission-stock-history.component.js +47 -47
  84. package/esm2015/lib/components/stock/components/order-stock-history/order-stock-history.component.js +47 -47
  85. package/esm2015/lib/components/stock/components/order-stock-tab/order-stock-tab.component.js +47 -47
  86. package/esm2015/lib/components/stock/components/order-supply-stock-history/order-supply-stock-history.component.js +47 -47
  87. package/esm2015/lib/components/stock/components/order-tab/order-tab.component.js +67 -67
  88. package/esm2015/lib/components/stock/components/stock-history/stock-history.component.js +53 -53
  89. package/esm2015/lib/components/stock/components/stock-location/stock-location.component.js +240 -240
  90. package/esm2015/lib/components/stock/components/stock-prognose/stock-prognose.component.js +52 -52
  91. package/esm2015/lib/components/stock/components/stock-tab/stock-tab.component.js +41 -41
  92. package/esm2015/lib/components/stock/localization/translation.js +63 -63
  93. package/esm2015/lib/components/stock/stock-history-tabs/stock-history-tabs.component.js +33 -33
  94. package/esm2015/lib/components/stock/stock-information/stock-information.component.js +48 -48
  95. package/esm2015/lib/components/stock/stock-information-grid/stock-information-grid.component.js +457 -457
  96. package/esm2015/lib/components/stock/stock-tabs/stock-tabs.component.js +241 -241
  97. package/esm2015/lib/components/stock/stock-transfer/co-drop-down-list-fields.interface.js +2 -2
  98. package/esm2015/lib/components/stock/stock-transfer/stock-change-amount.component.js +72 -72
  99. package/esm2015/lib/components/stock/stock-transfer/stock-transfer.component.js +149 -149
  100. package/esm2015/lib/components/stock/stock.component.js +193 -193
  101. package/esm2015/lib/components/stock/stock.module.js +80 -80
  102. package/esm2015/lib/components/stock-statusbar/stock-statusbar.component.js +23 -23
  103. package/esm2015/lib/components/stock-statusbar/stock-statusbar.module.js +19 -19
  104. package/esm2015/lib/components/tab-bar/tab-bar.component.js +88 -88
  105. package/esm2015/lib/components/tab-bar/tab-bar.module.js +21 -21
  106. package/esm2015/lib/components/tab-bar/tab.interface.js +2 -2
  107. package/esm2015/lib/components/tile-renderer/tile-render.component.js +80 -0
  108. package/esm2015/lib/components/tile-renderer/tile-render.module.js +26 -0
  109. package/esm2015/lib/decorator/input-boolean.decorator.js +34 -0
  110. package/esm2015/lib/enum/calendar-view.enum.js +9 -9
  111. package/esm2015/lib/enum/document-email-report.enum.js +18 -0
  112. package/esm2015/lib/enum/domain-multiple-name.enum.js +13 -0
  113. package/esm2015/lib/enum/file-type.js +14 -0
  114. package/esm2015/lib/enum/files-upload-config-objects.js +3 -0
  115. package/esm2015/lib/enum/gauge-color.enum.js +10 -10
  116. package/esm2015/lib/enum/icon.enum.js +44 -38
  117. package/esm2015/lib/enum/internal-param.enum.js +38 -0
  118. package/esm2015/lib/enum/keyboard-code.enum.js +32 -32
  119. package/esm2015/lib/enum/language-code.enum.js +8 -8
  120. package/esm2015/lib/enum/month.enum.js +17 -17
  121. package/esm2015/lib/enum/read-write-access-config-names.enum.js +2 -0
  122. package/esm2015/lib/enum/table-name.enum.js +86 -0
  123. package/esm2015/lib/enum/tag-category.enum.js +22 -0
  124. package/esm2015/lib/enum/tags-component-config-names.js +2 -0
  125. package/esm2015/lib/enum/thumb-three-way-state.js +19 -19
  126. package/esm2015/lib/enum/tile-size-type.js +7 -0
  127. package/esm2015/lib/enum/time-period.enum.js +11 -11
  128. package/esm2015/lib/event/co-drag-event.js +2 -0
  129. package/esm2015/lib/event/co-drop-event.js +2 -0
  130. package/esm2015/lib/interface/key-value-pair.js +2 -0
  131. package/esm2015/lib/interface/operation-callback-simple-function.js +4 -0
  132. package/esm2015/lib/localization/localization.module.js +19 -19
  133. package/esm2015/lib/localization/localize.pipe.js +26 -26
  134. package/esm2015/lib/localization/localize.service.js +30 -30
  135. package/esm2015/lib/localization/translation.js +3 -3
  136. package/esm2015/lib/model/agenda-event-per-day.model.js +6 -6
  137. package/esm2015/lib/model/agenda-event.model.js +8 -8
  138. package/esm2015/lib/model/agenda-null-objects.js +11 -11
  139. package/esm2015/lib/model/constant/all-months.js +17 -17
  140. package/esm2015/lib/model/date-range.js +5 -5
  141. package/esm2015/lib/model/day.model.js +7 -7
  142. package/esm2015/lib/model/icon-svg.js +43 -37
  143. package/esm2015/lib/model/month.model.js +11 -11
  144. package/esm2015/lib/model/send-method.js +8 -8
  145. package/esm2015/lib/model/settings.js +4 -4
  146. package/esm2015/lib/model/tag-tree-item.bo.js +16 -0
  147. package/esm2015/lib/model/time-window.bo.js +26 -26
  148. package/esm2015/lib/model/tree-object.js +15 -0
  149. package/esm2015/lib/model/week.model.js +6 -6
  150. package/esm2015/lib/model/weekday.model.js +10 -10
  151. package/esm2015/lib/pipe/array-number.pipe.js +15 -15
  152. package/esm2015/lib/pipe/file-type-image.pipe.js +51 -0
  153. package/esm2015/lib/pipe/master-pipes.js +9 -7
  154. package/esm2015/lib/pipe/ucfirst.pipe.js +16 -16
  155. package/esm2015/lib/service/dictionary.service.js +76 -76
  156. package/esm2015/lib/service/drag-drop.service.js +365 -0
  157. package/esm2015/lib/service/icon-cache.service.js +51 -51
  158. package/esm2015/lib/service/options.service.js +48 -48
  159. package/esm2015/lib/service/shared-connector.service.js +433 -424
  160. package/esm2015/lib/service/shared.service.js +60 -60
  161. package/esm2015/lib/service/stock.service.js +110 -110
  162. package/esm2015/lib/utils/array-utils.js +202 -0
  163. package/esm2015/lib/utils/calendar.utils.js +68 -68
  164. package/esm2015/lib/utils/check-precision-and-scale-result.js +2 -0
  165. package/esm2015/lib/utils/check-within-stepped-bounds-result.js +2 -0
  166. package/esm2015/lib/utils/co-document-shared-field-logic.js +50 -0
  167. package/esm2015/lib/utils/date-utils.js +264 -264
  168. package/esm2015/lib/utils/enum-utils.js +128 -0
  169. package/esm2015/lib/utils/function/not-nill.function.js +5 -5
  170. package/esm2015/lib/utils/is-nill.function.js +5 -0
  171. package/esm2015/lib/utils/map-utils.js +41 -41
  172. package/esm2015/lib/utils/number-utils.js +390 -0
  173. package/esm2015/lib/utils/object-utils.js +278 -0
  174. package/esm2015/lib/utils/ref-code-utils.js +49 -0
  175. package/esm2015/lib/utils/string-utils.js +93 -64
  176. package/esm2015/public-api.js +31 -27
  177. package/fesm2015/colijnit-sharedcomponents.js +10379 -6857
  178. package/fesm2015/colijnit-sharedcomponents.js.map +1 -1
  179. package/lib/assets/dictionary/text.properties.d.ts +3 -3
  180. package/lib/businessobject/build-images-and-documentation-result.d.ts +5 -0
  181. package/lib/businessobject/co-document-right.bo.d.ts +6 -0
  182. package/lib/businessobject/drag-drop-container-element.d.ts +6 -0
  183. package/lib/businessobject/drag-drop-container.d.ts +6 -0
  184. package/lib/components/access/read-write-access.scss +25 -0
  185. package/lib/components/access/style/_layout.scss +23 -0
  186. package/lib/components/access/style/_material-definition.scss +12 -0
  187. package/lib/components/access/style/_theme.scss +4 -0
  188. package/lib/components/access/style/material.scss +4 -0
  189. package/lib/components/activity-list/activity-list.component.d.ts +33 -0
  190. package/lib/components/activity-list/activity-list.module.d.ts +2 -0
  191. package/lib/components/activity-list/style/_layout.scss +68 -0
  192. package/lib/components/activity-list/style/_material-definition.scss +0 -0
  193. package/lib/components/activity-list/style/_theme.scss +4 -0
  194. package/lib/components/activity-list/style/material.scss +4 -0
  195. package/lib/components/app-file-dropzone/app-file-dropzone.component.d.ts +14 -0
  196. package/lib/components/app-file-dropzone/app-file-dropzone.module.d.ts +2 -0
  197. package/lib/components/app-file-dropzone/style/_layout.scss +61 -0
  198. package/lib/components/app-file-dropzone/style/_material-definition.scss +0 -0
  199. package/lib/components/app-file-dropzone/style/_theme.scss +4 -0
  200. package/lib/components/app-file-dropzone/style/material.scss +4 -0
  201. package/lib/components/date-planning/component/agenda/agenda-base-view.component.d.ts +21 -21
  202. package/lib/components/date-planning/component/agenda/agenda-day-view.component.d.ts +7 -7
  203. package/lib/components/date-planning/component/agenda/agenda-event.component.d.ts +18 -18
  204. package/lib/components/date-planning/component/agenda/agenda-events.component.d.ts +13 -13
  205. package/lib/components/date-planning/component/agenda/agenda-half-hour-cell.component.d.ts +18 -18
  206. package/lib/components/date-planning/component/agenda/agenda-header.component.d.ts +48 -48
  207. package/lib/components/date-planning/component/agenda/agenda-hour-cell.component.d.ts +9 -9
  208. package/lib/components/date-planning/component/agenda/agenda-hour-view-labels.component.d.ts +8 -8
  209. package/lib/components/date-planning/component/agenda/agenda-hour-view.component.d.ts +7 -7
  210. package/lib/components/date-planning/component/agenda/agenda-month-view.component.d.ts +10 -10
  211. package/lib/components/date-planning/component/agenda/agenda-select-event.component.d.ts +12 -12
  212. package/lib/components/date-planning/component/agenda/agenda-view.component.d.ts +12 -12
  213. package/lib/components/date-planning/component/agenda/agenda-week-select-view.component.d.ts +10 -10
  214. package/lib/components/date-planning/component/agenda/agenda-week-view.component.d.ts +9 -9
  215. package/lib/components/date-planning/component/agenda/style/_layout.scss +443 -443
  216. package/lib/components/date-planning/component/agenda/style/_material-definition.scss +12 -12
  217. package/lib/components/date-planning/component/agenda/style/_theme.scss +7 -7
  218. package/lib/components/date-planning/component/agenda/style/material.scss +5 -5
  219. package/lib/components/date-planning/component/agenda/view-select.component.d.ts +11 -11
  220. package/lib/components/date-planning/component/calendar/calendar-all-months.component.d.ts +9 -9
  221. package/lib/components/date-planning/component/calendar/calendar-all-years.component.d.ts +9 -9
  222. package/lib/components/date-planning/component/calendar/calendar-header.component.d.ts +23 -23
  223. package/lib/components/date-planning/component/calendar/calendar-view.component.d.ts +31 -31
  224. package/lib/components/date-planning/component/calendar/calendar.component.d.ts +10 -10
  225. package/lib/components/date-planning/component/calendar/style/_layout.scss +167 -167
  226. package/lib/components/date-planning/component/calendar/style/_material-definition.scss +7 -7
  227. package/lib/components/date-planning/component/calendar/style/_theme.scss +7 -7
  228. package/lib/components/date-planning/component/calendar/style/material.scss +5 -5
  229. package/lib/components/date-planning/date-planning.component.d.ts +28 -28
  230. package/lib/components/date-planning/date-planning.module.d.ts +2 -2
  231. package/lib/components/date-planning/style/_layout.scss +45 -45
  232. package/lib/components/date-planning/style/_theme.scss +5 -5
  233. package/lib/components/date-planning/style/material.scss +7 -7
  234. package/lib/components/docsign/component/signature/signature.component.d.ts +16 -16
  235. package/lib/components/docsign/component/signature/style/_layout.scss +40 -40
  236. package/lib/components/docsign/component/signature/style/_material-definition.scss +11 -11
  237. package/lib/components/docsign/component/signature/style/_theme.scss +13 -13
  238. package/lib/components/docsign/component/signature/style/material.scss +4 -4
  239. package/lib/components/docsign/component/signatures/signatures.component.d.ts +12 -12
  240. package/lib/components/docsign/component/signatures/style/_layout.scss +13 -13
  241. package/lib/components/docsign/component/signatures/style/_material-definition.scss +1 -1
  242. package/lib/components/docsign/component/signatures/style/_theme.scss +4 -4
  243. package/lib/components/docsign/component/signatures/style/material.scss +5 -5
  244. package/lib/components/docsign/docsign.component.d.ts +94 -94
  245. package/lib/components/docsign/docsign.module.d.ts +2 -2
  246. package/lib/components/docsign/style/_layout.scss +40 -40
  247. package/lib/components/docsign/style/_material-definition.scss +12 -12
  248. package/lib/components/docsign/style/_theme.scss +12 -12
  249. package/lib/components/docsign/style/material.scss +15 -15
  250. package/lib/components/file-upload/file-upload.component.d.ts +42 -0
  251. package/lib/components/file-upload/file-upload.module.d.ts +2 -0
  252. package/lib/components/file-upload/style/_layout.scss +59 -0
  253. package/lib/components/file-upload/style/_material-definition.scss +2 -0
  254. package/lib/components/file-upload/style/_theme.scss +4 -0
  255. package/lib/components/file-upload/style/material.scss +4 -0
  256. package/lib/components/file-upload-popup/file-upload-popup.component.d.ts +75 -0
  257. package/lib/components/file-upload-popup/file-upload-popup.module.d.ts +2 -0
  258. package/lib/components/file-upload-popup/style/_layout.scss +48 -0
  259. package/lib/components/file-upload-popup/style/_material-definition.scss +2 -0
  260. package/lib/components/file-upload-popup/style/_theme.scss +5 -0
  261. package/lib/components/file-upload-popup/style/material.scss +4 -0
  262. package/lib/components/files-upload/components/base-file-upload.component.d.ts +98 -0
  263. package/lib/components/files-upload/components/drag-drop-container.component.d.ts +34 -0
  264. package/lib/components/files-upload/files-upload.component.d.ts +32 -0
  265. package/lib/components/files-upload/files-upload.module.d.ts +2 -0
  266. package/lib/components/files-upload/style/_layout.scss +49 -0
  267. package/lib/components/files-upload/style/_material-definition.scss +0 -0
  268. package/lib/components/files-upload/style/_theme.scss +5 -0
  269. package/lib/components/files-upload/style/material.scss +4 -0
  270. package/lib/components/image-display/image-display.component.d.ts +14 -0
  271. package/lib/components/image-display/image-display.module.d.ts +2 -0
  272. package/lib/components/image-display/style/_layout.scss +56 -0
  273. package/lib/components/image-display/style/_material-definition.scss +4 -0
  274. package/lib/components/image-display/style/_theme.scss +6 -0
  275. package/lib/components/image-display/style/material.scss +3 -0
  276. package/lib/components/key-pad/key-pad.component.d.ts +38 -38
  277. package/lib/components/key-pad/key-pad.module.d.ts +2 -2
  278. package/lib/components/key-pad/style/_layout.scss +160 -160
  279. package/lib/components/key-pad/style/_material-definition.scss +19 -19
  280. package/lib/components/key-pad/style/_theme.scss +35 -35
  281. package/lib/components/key-pad/style/material.scss +4 -4
  282. package/lib/components/layout-switcher/layout-switcher.component.d.ts +16 -16
  283. package/lib/components/layout-switcher/layout-switcher.module.d.ts +2 -2
  284. package/lib/components/layout-switcher/style/_layout.scss +94 -94
  285. package/lib/components/layout-switcher/style/_material-definition.scss +16 -16
  286. package/lib/components/layout-switcher/style/_theme.scss +4 -4
  287. package/lib/components/layout-switcher/style/material.scss +6 -6
  288. package/lib/components/linear-gauge/co-linear-gauge.component.d.ts +11 -11
  289. package/lib/components/linear-gauge/co-linear-gauge.module.d.ts +2 -2
  290. package/lib/components/linear-gauge/style/_layout.scss +20 -20
  291. package/lib/components/linear-gauge/style/_material-definition.scss +8 -8
  292. package/lib/components/linear-gauge/style/_theme.scss +4 -4
  293. package/lib/components/linear-gauge/style/material.scss +6 -6
  294. package/lib/components/login/style/_layout.scss +57 -57
  295. package/lib/components/login/style/_material-definition.scss +23 -23
  296. package/lib/components/login/style/_theme.scss +7 -7
  297. package/lib/components/login/style/material.scss +4 -4
  298. package/lib/components/multi-property-toggler/multiple-property-toggler.component.d.ts +27 -0
  299. package/lib/components/multi-property-toggler/multiple-property-toggler.module.d.ts +2 -0
  300. package/lib/components/multi-property-toggler/style/_layout.scss +24 -0
  301. package/lib/components/multi-property-toggler/style/_material-definition.scss +0 -0
  302. package/lib/components/multi-property-toggler/style/_theme.scss +4 -0
  303. package/lib/components/multi-property-toggler/style/material.scss +4 -0
  304. package/lib/components/screen-config-generator/style/_layout.scss +95 -95
  305. package/lib/components/screen-config-generator/style/_theme.scss +4 -4
  306. package/lib/components/screen-config-generator/style/material.scss +4 -4
  307. package/lib/components/send-method-dialog/components/layout-selection/layout-selection.component.d.ts +19 -19
  308. package/lib/components/send-method-dialog/components/layout-selection/layout-selection.module.d.ts +2 -2
  309. package/lib/components/send-method-dialog/components/layout-selection/style/_layout.scss +44 -44
  310. package/lib/components/send-method-dialog/components/layout-selection/style/_material-definition.scss +19 -19
  311. package/lib/components/send-method-dialog/components/layout-selection/style/_theme.scss +17 -17
  312. package/lib/components/send-method-dialog/components/layout-selection/style/material.scss +4 -4
  313. package/lib/components/send-method-dialog/components/printer-selection/printer-selection.component.d.ts +19 -19
  314. package/lib/components/send-method-dialog/components/printer-selection/printer-selection.module.d.ts +2 -2
  315. package/lib/components/send-method-dialog/components/printer-selection/style/_layout.scss +69 -69
  316. package/lib/components/send-method-dialog/components/printer-selection/style/_material-definition.scss +37 -37
  317. package/lib/components/send-method-dialog/components/printer-selection/style/_theme.scss +23 -23
  318. package/lib/components/send-method-dialog/components/printer-selection/style/material.scss +4 -4
  319. package/lib/components/send-method-dialog/components/send-method-email/send-method-email.component.d.ts +14 -14
  320. package/lib/components/send-method-dialog/components/send-method-email/send-method-email.module.d.ts +2 -2
  321. package/lib/components/send-method-dialog/components/send-method-email/style/_layout.scss +29 -29
  322. package/lib/components/send-method-dialog/components/send-method-email/style/_material-definition.scss +8 -8
  323. package/lib/components/send-method-dialog/components/send-method-email/style/_theme.scss +5 -5
  324. package/lib/components/send-method-dialog/components/send-method-email/style/material.scss +4 -4
  325. package/lib/components/send-method-dialog/components/send-method-pdf/send-method-pdf.component.d.ts +8 -8
  326. package/lib/components/send-method-dialog/components/send-method-pdf/send-method-pdf.module.d.ts +2 -2
  327. package/lib/components/send-method-dialog/components/send-method-pdf/style/_layout.scss +25 -25
  328. package/lib/components/send-method-dialog/components/send-method-pdf/style/_material-definition.scss +5 -5
  329. package/lib/components/send-method-dialog/components/send-method-pdf/style/_theme.scss +5 -5
  330. package/lib/components/send-method-dialog/components/send-method-pdf/style/material.scss +4 -4
  331. package/lib/components/send-method-dialog/components/send-method-printer/send-method-printer.component.d.ts +13 -13
  332. package/lib/components/send-method-dialog/components/send-method-printer/send-method-printer.module.d.ts +2 -2
  333. package/lib/components/send-method-dialog/components/send-method-printer/style/_layout.scss +30 -30
  334. package/lib/components/send-method-dialog/components/send-method-printer/style/_material-definition.scss +5 -5
  335. package/lib/components/send-method-dialog/components/send-method-printer/style/_theme.scss +5 -5
  336. package/lib/components/send-method-dialog/components/send-method-printer/style/material.scss +4 -4
  337. package/lib/components/send-method-dialog/components/signature-button/signature-button.component.d.ts +12 -12
  338. package/lib/components/send-method-dialog/components/signature-button/signature-button.module.d.ts +2 -2
  339. package/lib/components/send-method-dialog/components/signature-button/style/_layout.scss +28 -28
  340. package/lib/components/send-method-dialog/components/signature-button/style/_material-definition.scss +8 -8
  341. package/lib/components/send-method-dialog/components/signature-button/style/_theme.scss +4 -4
  342. package/lib/components/send-method-dialog/components/signature-button/style/material.scss +4 -4
  343. package/lib/components/send-method-dialog/model/email-address-viewmodel.d.ts +5 -5
  344. package/lib/components/send-method-dialog/send-method-dialog.component.d.ts +71 -71
  345. package/lib/components/send-method-dialog/send-method-dialog.module.d.ts +2 -2
  346. package/lib/components/send-method-dialog/send-method-params.interface.d.ts +13 -13
  347. package/lib/components/send-method-dialog/service/send-method.service.d.ts +23 -23
  348. package/lib/components/send-method-dialog/style/_layout.scss +165 -165
  349. package/lib/components/send-method-dialog/style/_material-definition.scss +48 -48
  350. package/lib/components/send-method-dialog/style/_theme.scss +33 -33
  351. package/lib/components/send-method-dialog/style/material.scss +10 -10
  352. package/lib/components/simple-tags/simple-tags.component.d.ts +31 -31
  353. package/lib/components/simple-tags/simple-tags.module.d.ts +2 -2
  354. package/lib/components/simple-tags/style/_layout.scss +272 -272
  355. package/lib/components/simple-tags/style/_material-definition.scss +39 -39
  356. package/lib/components/simple-tags/style/_theme.scss +4 -4
  357. package/lib/components/simple-tags/style/material.scss +4 -4
  358. package/lib/components/statusbar/statusbar-popup.component.d.ts +21 -21
  359. package/lib/components/statusbar/statusbar.component.d.ts +26 -26
  360. package/lib/components/statusbar/statusbar.module.d.ts +2 -2
  361. package/lib/components/statusbar/style/_layout.scss +70 -70
  362. package/lib/components/statusbar/style/_material-definition.scss +23 -23
  363. package/lib/components/statusbar/style/_theme.scss +13 -13
  364. package/lib/components/statusbar/style/material.scss +5 -5
  365. package/lib/components/stock/components/allocation-stock-history/allocation-stock-history.component.d.ts +9 -9
  366. package/lib/components/stock/components/order-commission-stock-history/order-commission-stock-history.component.d.ts +9 -9
  367. package/lib/components/stock/components/order-stock-history/order-stock-history.component.d.ts +9 -9
  368. package/lib/components/stock/components/order-stock-tab/order-stock-tab.component.d.ts +11 -11
  369. package/lib/components/stock/components/order-supply-stock-history/order-supply-stock-history.component.d.ts +9 -9
  370. package/lib/components/stock/components/order-tab/order-tab.component.d.ts +20 -20
  371. package/lib/components/stock/components/stock-history/stock-history.component.d.ts +13 -13
  372. package/lib/components/stock/components/stock-location/stock-location.component.d.ts +50 -50
  373. package/lib/components/stock/components/stock-prognose/stock-prognose.component.d.ts +11 -11
  374. package/lib/components/stock/components/stock-tab/stock-tab.component.d.ts +9 -9
  375. package/lib/components/stock/localization/translation.d.ts +60 -60
  376. package/lib/components/stock/stock-history-tabs/stock-history-tabs.component.d.ts +7 -7
  377. package/lib/components/stock/stock-information/stock-information.component.d.ts +8 -8
  378. package/lib/components/stock/stock-information-grid/stock-information-grid.component.d.ts +75 -75
  379. package/lib/components/stock/stock-tabs/stock-tabs.component.d.ts +56 -56
  380. package/lib/components/stock/stock-transfer/co-drop-down-list-fields.interface.d.ts +4 -4
  381. package/lib/components/stock/stock-transfer/stock-change-amount.component.d.ts +18 -18
  382. package/lib/components/stock/stock-transfer/stock-transfer.component.d.ts +42 -42
  383. package/lib/components/stock/stock.component.d.ts +57 -57
  384. package/lib/components/stock/stock.module.d.ts +2 -2
  385. package/lib/components/stock/style/_layout.scss +286 -286
  386. package/lib/components/stock/style/_material-definition.scss +25 -25
  387. package/lib/components/stock/style/_theme.scss +5 -5
  388. package/lib/components/stock/style/material.scss +4 -4
  389. package/lib/components/stock-statusbar/stock-statusbar.component.d.ts +4 -4
  390. package/lib/components/stock-statusbar/stock-statusbar.module.d.ts +2 -2
  391. package/lib/components/stock-statusbar/style/_layout.scss +24 -24
  392. package/lib/components/stock-statusbar/style/material.scss +4 -4
  393. package/lib/components/tab-bar/style/_layout.scss +78 -78
  394. package/lib/components/tab-bar/style/_material-definition.scss +6 -6
  395. package/lib/components/tab-bar/style/material.scss +4 -4
  396. package/lib/components/tab-bar/tab-bar.component.d.ts +21 -21
  397. package/lib/components/tab-bar/tab-bar.module.d.ts +2 -2
  398. package/lib/components/tab-bar/tab.interface.d.ts +5 -5
  399. package/lib/components/tags/component/style/_layout.scss +67 -67
  400. package/lib/components/tags/component/style/_material-definition.scss +1 -1
  401. package/lib/components/tags/component/style/_theme.scss +8 -8
  402. package/lib/components/tags/component/style/material.scss +3 -3
  403. package/lib/components/tags/component/tag-join-label/style/_layout.scss +97 -97
  404. package/lib/components/tags/component/tag-join-label/style/_material-definition.scss +4 -4
  405. package/lib/components/tags/component/tag-join-label/style/_theme.scss +8 -8
  406. package/lib/components/tags/component/tag-join-label/style/material.scss +3 -3
  407. package/lib/components/tile-renderer/style/_layout.scss +90 -0
  408. package/lib/components/tile-renderer/style/_material-definition.scss +0 -0
  409. package/lib/components/tile-renderer/style/_theme.scss +4 -0
  410. package/lib/components/tile-renderer/style/material.scss +4 -0
  411. package/lib/components/tile-renderer/tile-render.component.d.ts +31 -0
  412. package/lib/components/tile-renderer/tile-render.module.d.ts +2 -0
  413. package/lib/decorator/input-boolean.decorator.d.ts +8 -0
  414. package/lib/enum/calendar-view.enum.d.ts +7 -7
  415. package/lib/enum/document-email-report.enum.d.ts +15 -0
  416. package/lib/enum/domain-multiple-name.enum.d.ts +10 -0
  417. package/lib/enum/file-type.d.ts +7 -0
  418. package/lib/enum/files-upload-config-objects.d.ts +22 -0
  419. package/lib/enum/gauge-color.enum.d.ts +8 -8
  420. package/lib/enum/icon.enum.d.ts +42 -36
  421. package/lib/enum/internal-param.enum.d.ts +34 -0
  422. package/lib/enum/keyboard-code.enum.d.ts +30 -30
  423. package/lib/enum/language-code.enum.d.ts +6 -6
  424. package/lib/enum/month.enum.d.ts +14 -14
  425. package/lib/enum/read-write-access-config-names.enum.d.ts +4 -0
  426. package/lib/enum/table-name.enum.d.ts +84 -0
  427. package/lib/enum/tag-category.enum.d.ts +19 -0
  428. package/lib/enum/tags-component-config-names.d.ts +4 -0
  429. package/lib/enum/thumb-three-way-state.d.ts +6 -6
  430. package/lib/enum/tile-size-type.d.ts +4 -0
  431. package/lib/enum/time-period.enum.d.ts +8 -8
  432. package/lib/event/co-drag-event.d.ts +5 -0
  433. package/lib/event/co-drop-event.d.ts +8 -0
  434. package/lib/interface/key-value-pair.d.ts +4 -0
  435. package/lib/interface/operation-callback-simple-function.d.ts +4 -0
  436. package/lib/localization/localization.module.d.ts +2 -2
  437. package/lib/localization/localize.pipe.d.ts +7 -7
  438. package/lib/localization/localize.service.d.ts +7 -7
  439. package/lib/localization/translation.d.ts +2 -2
  440. package/lib/model/agenda-event-per-day.model.d.ts +5 -5
  441. package/lib/model/agenda-event.model.d.ts +17 -17
  442. package/lib/model/agenda-null-objects.d.ts +10 -10
  443. package/lib/model/constant/all-months.d.ts +2 -2
  444. package/lib/model/date-range.d.ts +7 -7
  445. package/lib/model/day.model.d.ts +8 -8
  446. package/lib/model/icon-svg.d.ts +4 -4
  447. package/lib/model/month.model.d.ts +5 -5
  448. package/lib/model/send-method.d.ts +7 -7
  449. package/lib/model/settings.d.ts +3 -3
  450. package/lib/model/tag-tree-item.bo.d.ts +18 -0
  451. package/lib/model/time-window.bo.d.ts +13 -13
  452. package/lib/model/tree-object.d.ts +8 -0
  453. package/lib/model/week.model.d.ts +4 -4
  454. package/lib/model/weekday.model.d.ts +16 -16
  455. package/lib/pipe/array-number.pipe.d.ts +4 -4
  456. package/lib/pipe/file-type-image.pipe.d.ts +12 -0
  457. package/lib/pipe/master-pipes.d.ts +1 -1
  458. package/lib/pipe/ucfirst.pipe.d.ts +4 -4
  459. package/lib/service/dictionary.service.d.ts +21 -21
  460. package/lib/service/drag-drop.service.d.ts +86 -0
  461. package/lib/service/icon-cache.service.d.ts +18 -18
  462. package/lib/service/options.service.d.ts +13 -13
  463. package/lib/service/shared-connector.service.d.ts +55 -53
  464. package/lib/service/shared.service.d.ts +18 -18
  465. package/lib/service/stock.service.d.ts +41 -41
  466. package/lib/style/_mixin.scss +14 -14
  467. package/lib/style/_variables.scss +21 -21
  468. package/lib/style/sharedcomponents-globals.scss +10 -10
  469. package/lib/utils/array-utils.d.ts +63 -0
  470. package/lib/utils/calendar.utils.d.ts +10 -10
  471. package/lib/utils/check-precision-and-scale-result.d.ts +4 -0
  472. package/lib/utils/check-within-stepped-bounds-result.d.ts +8 -0
  473. package/lib/utils/co-document-shared-field-logic.d.ts +7 -0
  474. package/lib/utils/date-utils.d.ts +44 -44
  475. package/lib/utils/enum-utils.d.ts +31 -0
  476. package/lib/utils/function/not-nill.function.d.ts +1 -1
  477. package/lib/utils/is-nill.function.d.ts +1 -0
  478. package/lib/utils/map-utils.d.ts +16 -16
  479. package/lib/utils/number-utils.d.ts +125 -0
  480. package/lib/utils/object-utils.d.ts +40 -0
  481. package/lib/utils/ref-code-utils.d.ts +10 -0
  482. package/lib/utils/string-utils.d.ts +38 -22
  483. package/package.json +6 -6
  484. package/public-api.d.ts +27 -23
@@ -0,0 +1,397 @@
1
+ import { __awaiter, __decorate } from "tslib";
2
+ import { Component, EventEmitter, HostBinding, Input, Output, ViewChild, ViewEncapsulation } from '@angular/core';
3
+ import { FormComponent } from '@colijnit/corecomponents_v12';
4
+ import { DocumentPublication } from "@colijnit/articleapi/build/enum/refcode/document-publication.enum";
5
+ import { ObjectRightType } from "@colijnit/sharedapi/build/enum/object-right-type.enum";
6
+ import { PromptService } from "@colijnit/corecomponents_v12";
7
+ import { BusinessObjectFactory } from "@colijnit/ioneconnector/build/service/business-object-factory";
8
+ import { InputBoolean } from "../../decorator/input-boolean.decorator";
9
+ import { CoDocument } from "@colijnit/mainapi/build/model/co-document";
10
+ import { CoDocumentRight } from "@colijnit/mainapi/build/model/co-document-right";
11
+ import { FileType } from "../../enum/file-type";
12
+ import { DocumentEmailReport } from "../../enum/document-email-report.enum";
13
+ import { DomainMultipleName } from "../../enum/domain-multiple-name.enum";
14
+ import { FileTypeImagePipe } from "../../pipe/file-type-image.pipe";
15
+ import { FileUtils } from "@colijnit/mainapi/build/utils/file-utils";
16
+ // Component that shows a popup when the user wants to upload a CoDocument
17
+ export class FileUploadPopupComponent {
18
+ constructor(
19
+ //private _workabilityService: AppWorkabilityService,
20
+ _promptService, _fileTypeImgPipe) {
21
+ this._promptService = _promptService;
22
+ this._fileTypeImgPipe = _fileTypeImgPipe;
23
+ this.useWithoutSettingProps = false;
24
+ this.hasPublicAccessVisible = false;
25
+ this.showDocumentReportPicker = true;
26
+ this.displayReadWriteAccess = true;
27
+ this.documentChangeEvent = new EventEmitter();
28
+ this.popupCloseEvent = new EventEmitter();
29
+ this.documentPublication = DocumentPublication;
30
+ this.documentEmailReports = DocumentEmailReport;
31
+ this.domain = DomainMultipleName;
32
+ this.fileTypes = FileType;
33
+ this.hideCancel = false;
34
+ this.storeGroups = [];
35
+ this.userGroupsForWrite = [];
36
+ this.userGroupsForRead = [];
37
+ this.documentTags = [];
38
+ this._filesUploadConfigObjects = {}; // Instantiate with empty object to avoid nullpointers in the template
39
+ this._boFactory = new BusinessObjectFactory();
40
+ this._readonly = false;
41
+ }
42
+ set documentUnderEdit(doc) {
43
+ this._documentUnderEdit = doc ? this._boFactory.makeWithRawBackendData(CoDocument, doc) : undefined;
44
+ }
45
+ get documentUnderEdit() {
46
+ return this._documentUnderEdit;
47
+ }
48
+ set readonly(value) {
49
+ this._readonly = value;
50
+ if (value) {
51
+ //this._toastService.spawnToast("MESSAGE_DOCUMENT_LOCK_SINGLE");
52
+ }
53
+ }
54
+ set filesUploadConfigObjects(value) {
55
+ this._filesUploadConfigObjects = value;
56
+ }
57
+ showClass() {
58
+ return true;
59
+ }
60
+ get showReadWriteAccess() {
61
+ //TODO get userrights
62
+ return true;
63
+ //return this._userRights.workabilityParameterEnabled && this.displayReadWriteAccess;
64
+ }
65
+ get filesUploadConfigObjects() {
66
+ return this._filesUploadConfigObjects;
67
+ }
68
+ get isWorkability() {
69
+ //TODO fix workability
70
+ return false;
71
+ //return this._workabilityService.workabilitySystemEnabled;
72
+ }
73
+ get docUnderEditIsReadOnly() {
74
+ return this.documentUnderEdit.readonly || this._readonly;
75
+ }
76
+ get thumbnail() {
77
+ if (this.documentUnderEdit.isImageDocument()) {
78
+ return this._thumbnail;
79
+ }
80
+ return this._fileTypeImgPipe.transform(this.documentUnderEdit.fileTypeInternal);
81
+ }
82
+ get popupHeader() {
83
+ if (this.documentUnderEdit && this.documentUnderEdit.isImageDocument()) {
84
+ return "IMAGE";
85
+ }
86
+ else {
87
+ return "DOCUMENT";
88
+ }
89
+ }
90
+ get publicationConfigName() {
91
+ if (this.filesUploadConfigObjects) {
92
+ return this.documentUnderEdit.isImageDocument() ?
93
+ this.filesUploadConfigObjects.ImageDocumentPublishTo :
94
+ this.filesUploadConfigObjects.TextDocumentPublishTo;
95
+ }
96
+ else {
97
+ return; // No configname found
98
+ }
99
+ }
100
+ get tagsConfigName() {
101
+ if (this.filesUploadConfigObjects) {
102
+ return this.documentUnderEdit.isImageDocument() ?
103
+ this.filesUploadConfigObjects.TagsImageConfigNames :
104
+ this.filesUploadConfigObjects.TagsTextConfigNames;
105
+ }
106
+ else {
107
+ return; // No configname found
108
+ }
109
+ }
110
+ ngOnInit() {
111
+ this.loadCollection();
112
+ if (this.documentUnderEdit.isImageDocument()) {
113
+ this._thumbnail = this.documentUnderEdit.documentBodyAsDataUri;
114
+ }
115
+ }
116
+ loadCollection() {
117
+ return __awaiter(this, void 0, void 0, function* () {
118
+ //this.documentTags = await this._tagsRepo.getJoinedTags(this.tagReferenceTable, this.documentKey);
119
+ //this.storeGroups = await this._baseDataRepo.getStoreGroupList();
120
+ });
121
+ }
122
+ onPreviewClick() {
123
+ if (this.documentUnderEdit.isImageDocument()) { //preview image
124
+ this._promptService.showImage(this.documentUnderEdit.documentBodyAsDataUri, "Preview");
125
+ }
126
+ else { //download document
127
+ try {
128
+ FileUtils.DownloadFromDataUri(this.documentUnderEdit.bodyAsDataUri, this.documentUnderEdit.fileName);
129
+ }
130
+ catch (error) {
131
+ }
132
+ }
133
+ }
134
+ saveDocumentUnderEditRights() {
135
+ this.documentUnderEdit.rights = [];
136
+ const forWriteLength = this.userGroupsForWrite.length;
137
+ for (let i = 0; i < forWriteLength; i++) {
138
+ const rights = new CoDocumentRight();
139
+ rights.userGroupId = this.userGroupsForWrite[i];
140
+ rights.rightLevel = ObjectRightType.ReadWrite;
141
+ this.documentUnderEdit.rights.push(rights);
142
+ }
143
+ const forReadLength = this.userGroupsForRead.length;
144
+ for (let i = 0; i < forReadLength; i++) {
145
+ const rights = new CoDocumentRight();
146
+ rights.userGroupId = this.userGroupsForRead[i];
147
+ rights.rightLevel = ObjectRightType.ReadOnly;
148
+ this.documentUnderEdit.rights.push(rights);
149
+ }
150
+ }
151
+ onPopupOkClick() {
152
+ if (this.form) {
153
+ this.form.submit();
154
+ }
155
+ }
156
+ handlePropertyChange(refSumOfEnabledItems) {
157
+ this._publicationNumber = refSumOfEnabledItems;
158
+ }
159
+ handleReportsPropertyChange(refSumOfEnabledItems) {
160
+ this._reportsNumber = refSumOfEnabledItems;
161
+ }
162
+ onValidSubmit() {
163
+ return __awaiter(this, void 0, void 0, function* () {
164
+ this._publicationNumber ? this.documentUnderEdit.publication = this._publicationNumber : this.documentUnderEdit.publication = 0;
165
+ this._reportsNumber ? this.documentUnderEdit.reports = this._reportsNumber : this.documentUnderEdit.reports = 0;
166
+ this.documentUnderEdit.retailFormulas = this.storeGroupIds;
167
+ this.saveDocumentUnderEditRights();
168
+ this.documentChangeEvent.emit(this.documentUnderEdit);
169
+ this.onPopupClose();
170
+ });
171
+ }
172
+ onPopupCancelClick() {
173
+ return __awaiter(this, void 0, void 0, function* () {
174
+ this.onPopupClose();
175
+ });
176
+ }
177
+ onPopupClose() {
178
+ this.userGroupsForWrite.length = 0;
179
+ this.userGroupsForRead.length = 0;
180
+ this.documentUnderEdit = undefined;
181
+ this.popupCloseEvent.next();
182
+ }
183
+ }
184
+ FileUploadPopupComponent.decorators = [
185
+ { type: Component, args: [{
186
+ selector: "co-file-upload-popup",
187
+ template: `
188
+ <co-dialog *ngIf="!useWithoutSettingProps && documentUnderEdit" cssId="popup_files_upload_content"
189
+ [headerTemplate]="headerTemplate" contentSize noClickOutside
190
+ (close)="onPopupClose()">
191
+ <div class="co-dialog-wrapper">
192
+ <div class="file-upload-form-wrapper" fxLayout="column" fxLayoutGap="10px">
193
+ <co-form class="narrow-scrollbar" (validSubmit)="onValidSubmit()">
194
+ <div class="horizontal-layout-column">
195
+ <div class="document-thumb column-left" *ngIf="!addDocumentByUrl">
196
+ <a (click)="onPreviewClick()"><img [src]="thumbnail"/></a>
197
+ </div>
198
+ <div class="column-right">
199
+ <co-input-text
200
+ [model]="documentUnderEdit.fileSize"
201
+ [screenConfigurationObject]="documentUnderEdit.isImageDocument() ?
202
+ filesUploadConfigObjects?.ImageDocumentFileSize :
203
+ filesUploadConfigObjects?.TextDocumentFileSize"
204
+ [placeholder]="'SIZE' | localize"
205
+ forceReadonly
206
+ noValidation>
207
+ </co-input-text>
208
+ <ng-container *ngIf="documentUnderEdit.isImageDocument()">
209
+ <co-input-text [placeholder]="'DIMENSIONS' | localize"
210
+ [model]="documentUnderEdit.imageDimensions"
211
+ [screenConfigurationObject]="filesUploadConfigObjects?.ImageDocumentDimensions"
212
+ forceReadonly noValidation></co-input-text>
213
+ </ng-container>
214
+ <co-input-text
215
+ [(model)]="documentUnderEdit.title"
216
+ [screenConfigurationObject]="documentUnderEdit.isImageDocument() ?
217
+ filesUploadConfigObjects?.ImageDocumentTitle :
218
+ filesUploadConfigObjects?.TextDocumentTitle"
219
+ [placeholder]="'TITLE2' | localize"
220
+ noValidation forceReadonly></co-input-text>
221
+ </div>
222
+ </div>
223
+
224
+ <div>
225
+ <!--<sc-tags
226
+ [tagCategory]="tagCategory"
227
+ [readonly]="docUnderEditIsReadOnly"-->
228
+
229
+ <!-- ></sc-tags>--><!-- [myCfgNames]="tagsConfigName" | [(joinedTags)]="this.documentUnderEdit.tags"-->
230
+ </div>
231
+ <!--<div>
232
+ <read-write-access *ngIf="showReadWriteAccess"
233
+ [readWriteCfgNames]="filesUploadConfigObjects?.readWriteAccess"
234
+ [layoutHorizontal]="true"
235
+ [medicalUserGroups]="medicalUserGroups"
236
+ [(userGroupsForWrite)]="userGroupsForWrite"
237
+ [(userGroupsForRead)]="userGroupsForRead"
238
+ [readonly]="docUnderEditIsReadOnly"
239
+ ></read-write-access>
240
+ </div>-->
241
+ <!--<div class="horizontal-layout-column">
242
+ <ng-container *ngIf="addDocumentByUrl">
243
+ <co-input-text required [placeholder]="'URL' | localize" [(model)]="documentUnderEdit.filePath"
244
+ [readonly]="docUnderEditIsReadOnly"></co-input-text>
245
+ </ng-container>
246
+ </div>-->
247
+ <div class="horizontal-layout-column">
248
+ <div class="column-left">
249
+ <co-input-text [placeholder]="'DESCRIPTION' | localize" [(model)]="documentUnderEdit.description"
250
+ [screenConfigurationObject]="documentUnderEdit.isImageDocument() ?
251
+ filesUploadConfigObjects?.ImageDocumentDescription :
252
+ filesUploadConfigObjects?.TextDocumentDescription"
253
+ [readonly]="docUnderEditIsReadOnly"
254
+ ></co-input-text>
255
+
256
+ </div>
257
+ <!--<div *ngIf="hasPublicAccessVisible" class="column-right">
258
+ <input-switcher-yes-no label="PUBLIC_ACCESS"
259
+ [(model)]="documentUnderEdit.hasPublicAccess"
260
+ [readonly]="docUnderEditIsReadOnly"
261
+ ></input-switcher-yes-no>
262
+ </div>-->
263
+ </div>
264
+ <div class="horizontal-layout-column">
265
+ <ng-container *ngIf="!documentUnderEdit.isImageDocument()">
266
+ <div class="column-left">
267
+ <!-- <input-switcher-yes-no label="DOWNLOADABLE"
268
+ [(model)]="documentUnderEdit.downloadable"
269
+ [cfgName]="filesUploadConfigObjects?.TextDocumentDownloadable"
270
+ [readonly]="docUnderEditIsReadOnly"
271
+ ></input-switcher-yes-no>-->
272
+ </div>
273
+ </ng-container>
274
+ </div>
275
+ <div class="horizontal-layout-column">
276
+ <ng-container *ngIf="fileType === fileTypes.ThreeDFile">
277
+ <div class="column-left">
278
+ <!-- <input-switcher-yes-no label="ALSO_AS_USDZ"
279
+ [(model)]="documentUnderEdit.convertToUSDZ"
280
+ [readonly]="docUnderEditIsReadOnly"
281
+ ></input-switcher-yes-no>-->
282
+ </div>
283
+ </ng-container>
284
+ </div>
285
+ <div class="horizontal-layout-column">
286
+ <ng-container *ngIf="documentUnderEdit.isImageDocument()">
287
+ <div class="column-left"><!--
288
+ <input-switcher-yes-no label="ATTACH_TO_NOTIFICATION"
289
+ [(model)]="documentUnderEdit.attachToNotification"
290
+ [cfgName]="filesUploadConfigObjects?.ImageDocumentAttachNotification"
291
+ [readonly]="docUnderEditIsReadOnly"
292
+ ></input-switcher-yes-no>-->
293
+ </div>
294
+ <div class="column-right"><!--
295
+ <image-type-select
296
+ [cfgName]="filesUploadConfigObjects?.ImageDocumentDisplayType"
297
+ [(selectedModelId)]="this.documentUnderEdit.imageDisplayKind"
298
+ [readonly]="docUnderEditIsReadOnly"
299
+ label="DISPLAY_TYPE"
300
+ ></image-type-select>-->
301
+ </div>
302
+ </ng-container>
303
+ </div>
304
+ <div *ngIf="!isWorkability">
305
+ <!-- <multiple-property-toggler *ngIf="!showDocumentReportPicker"
306
+ [propertyNamesToToggle]="documentPublication"
307
+ [(enableditems)]="this.documentUnderEdit.publication"
308
+ (onPropertyItemChange)="handlePropertyChange($event)"
309
+ label="PUBLISH_TO"
310
+ [readonly]="docUnderEditIsReadOnly"
311
+ ></multiple-property-toggler>-->
312
+ <co-multiple-property-toggler *ngIf="showDocumentReportPicker"
313
+ [propertyNamesToToggle]="documentEmailReports"
314
+ [(enableditems)]="documentUnderEdit.reports"
315
+ (onPropertyItemChange)="handleReportsPropertyChange($event)"
316
+ label="REPORTS_TO_ATTACH_TO"
317
+ [readonly]="docUnderEditIsReadOnly"
318
+ ></co-multiple-property-toggler>
319
+
320
+ <!--<ng-container *ngIf="documentUnderEdit.isImageDocument()"
321
+ [templateWrapper]="templateImage"></ng-container>-->
322
+ </div>
323
+ </co-form>
324
+ <div class="ok-cancel-buttons">
325
+ <co-button [disabled]="docUnderEditIsReadOnly" [textContent]="'OK' | localize" (click)="onPopupOkClick()"></co-button>
326
+ <co-button *ngIf="hideCancel" [textContent]="'STICKER' | localize" (click)="onPopupCancelClick()"></co-button>
327
+ </div>
328
+ <!-- <default-ok-cancel-buttons class="justify-center"
329
+ [okDisabled]="docUnderEditIsReadOnly"
330
+ [hideCancel]="hideCancel"
331
+ (okClick)="onPopupOkClick()"
332
+ (cancelClick)="onPopupCancelClick()">
333
+ </default-ok-cancel-buttons>-->
334
+ </div>
335
+ </div>
336
+ </co-dialog>
337
+ <ng-template #headerTemplate>
338
+ <div [textContent]="popupHeader | localize"></div>
339
+ </ng-template>
340
+ <ng-template #templateImage *ngIf="!isWorkability">
341
+ <!-- <div class="column-right">
342
+ <input-lov-multi-select
343
+ [cfgName]="filesUploadConfigObjects.ImageDocumentStoreGroups"
344
+ [(selectedModelIds)]="storeGroupIds"
345
+ [collection]="storeGroups"
346
+ [readonly]="docUnderEditIsReadOnly"
347
+ descriptionField="description"
348
+ doNotLoadCollection
349
+ customWidth
350
+ label="RETAIL_FORMULAS"
351
+ ></input-lov-multi-select>
352
+ </div>-->
353
+ </ng-template>
354
+ `,
355
+ encapsulation: ViewEncapsulation.None
356
+ },] }
357
+ ];
358
+ FileUploadPopupComponent.ctorParameters = () => [
359
+ { type: PromptService },
360
+ { type: FileTypeImagePipe }
361
+ ];
362
+ FileUploadPopupComponent.propDecorators = {
363
+ form: [{ type: ViewChild, args: [FormComponent,] }],
364
+ useWithoutSettingProps: [{ type: Input }],
365
+ hasPublicAccessVisible: [{ type: Input }],
366
+ showDocumentReportPicker: [{ type: Input }],
367
+ documentUnderEdit: [{ type: Input }],
368
+ readonly: [{ type: Input }],
369
+ filesUploadConfigObjects: [{ type: Input }],
370
+ tagCategory: [{ type: Input }],
371
+ medicalUserGroups: [{ type: Input }],
372
+ displayReadWriteAccess: [{ type: Input }],
373
+ tagReferenceTable: [{ type: Input }],
374
+ documentKey: [{ type: Input }],
375
+ documentTable: [{ type: Input }],
376
+ fileType: [{ type: Input }],
377
+ addDocumentByUrl: [{ type: Input }],
378
+ documentChangeEvent: [{ type: Output }],
379
+ popupCloseEvent: [{ type: Output }],
380
+ showClass: [{ type: HostBinding, args: ['class.co-file-upload-popup',] }]
381
+ };
382
+ __decorate([
383
+ InputBoolean()
384
+ ], FileUploadPopupComponent.prototype, "useWithoutSettingProps", void 0);
385
+ __decorate([
386
+ InputBoolean()
387
+ ], FileUploadPopupComponent.prototype, "hasPublicAccessVisible", void 0);
388
+ __decorate([
389
+ InputBoolean()
390
+ ], FileUploadPopupComponent.prototype, "showDocumentReportPicker", void 0);
391
+ __decorate([
392
+ InputBoolean()
393
+ ], FileUploadPopupComponent.prototype, "medicalUserGroups", void 0);
394
+ __decorate([
395
+ InputBoolean()
396
+ ], FileUploadPopupComponent.prototype, "addDocumentByUrl", void 0);
397
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS11cGxvYWQtcG9wdXAuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2hhcmVkY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMvZmlsZS11cGxvYWQtcG9wdXAvZmlsZS11cGxvYWQtcG9wdXAuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLFlBQVksRUFBRSxXQUFXLEVBQUUsS0FBSyxFQUFVLE1BQU0sRUFBRSxTQUFTLEVBQUUsaUJBQWlCLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDeEgsT0FBTyxFQUFDLGFBQWEsRUFBQyxNQUFNLDhCQUE4QixDQUFDO0FBQzNELE9BQU8sRUFBQyxtQkFBbUIsRUFBQyxNQUFNLG1FQUFtRSxDQUFDO0FBRXRHLE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSx1REFBdUQsQ0FBQztBQUN0RixPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0sOEJBQThCLENBQUM7QUFDM0QsT0FBTyxFQUFDLHFCQUFxQixFQUFDLE1BQU0sK0RBQStELENBQUM7QUFDcEcsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLHlDQUF5QyxDQUFDO0FBQ3JFLE9BQU8sRUFBQyxVQUFVLEVBQUMsTUFBTSwyQ0FBMkMsQ0FBQztBQUNyRSxPQUFPLEVBQUMsZUFBZSxFQUFDLE1BQU0saURBQWlELENBQUM7QUFJaEYsT0FBTyxFQUFDLFFBQVEsRUFBQyxNQUFNLHNCQUFzQixDQUFDO0FBQzlDLE9BQU8sRUFBQyxtQkFBbUIsRUFBQyxNQUFNLHVDQUF1QyxDQUFDO0FBRTFFLE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLHNDQUFzQyxDQUFDO0FBRXhFLE9BQU8sRUFBQyxpQkFBaUIsRUFBQyxNQUFNLGlDQUFpQyxDQUFDO0FBQ2xFLE9BQU8sRUFBQyxTQUFTLEVBQUMsTUFBTSwwQ0FBMEMsQ0FBQztBQStLbkUsMEVB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QkFBaUIsR0FBRyxTQUFTLENBQUM7UUFFbkMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUNoQyxDQUFDOzs7WUFwYUosU0FBUyxTQUFDO2dCQUNQLFFBQVEsRUFBRSxzQkFBc0I7Z0JBQ2hDLFFBQVEsRUFBRTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7S0F1S1Q7Z0JBQ0EsYUFBYSxFQUFFLGlCQUFpQixDQUFDLElBQUk7YUFDekM7OztZQTVMTyxhQUFhO1lBYWIsaUJBQWlCOzs7bUJBa0xwQixTQUFTLFNBQUMsYUFBYTtxQ0FHdkIsS0FBSztxQ0FJTCxLQUFLO3VDQUlMLEtBQUs7Z0NBTUwsS0FBSzt1QkFTTCxLQUFLO3VDQVNMLEtBQUs7MEJBS0wsS0FBSztnQ0FHTCxLQUFLO3FDQUlMLEtBQUs7Z0NBR0wsS0FBSzswQkFHTCxLQUFLOzRCQUdMLEtBQUs7dUJBR0wsS0FBSzsrQkFHTCxLQUFLO2tDQUlMLE1BQU07OEJBR04sTUFBTTt3QkFHTixXQUFXLFNBQUMsNEJBQTRCOztBQW5FekM7SUFEQyxZQUFZLEVBQUU7d0VBQ2dDO0FBSS9DO0lBREMsWUFBWSxFQUFFO3dFQUNnQztBQUsvQztJQUZDLFlBQVksRUFBRTswRUFFaUM7QUErQmhEO0lBREMsWUFBWSxFQUFFO21FQUNtQjtBQW1CbEM7SUFEQyxZQUFZLEVBQUU7a0VBQ2tCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSG9zdEJpbmRpbmcsIElucHV0LCBPbkluaXQsIE91dHB1dCwgVmlld0NoaWxkLCBWaWV3RW5jYXBzdWxhdGlvbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0Zvcm1Db21wb25lbnR9IGZyb20gJ0Bjb2xpam5pdC9jb3JlY29tcG9uZW50c192MTInO1xuaW1wb3J0IHtEb2N1bWVudFB1YmxpY2F0aW9ufSBmcm9tIFwiQGNvbGlqbml0L2FydGljbGVhcGkvYnVpbGQvZW51bS9yZWZjb2RlL2RvY3VtZW50LXB1YmxpY2F0aW9uLmVudW1cIjtcbmltcG9ydCB7U3RvcmVHcm91cH0gZnJvbSBcIkBjb2xpam5pdC9tYWluYXBpL2J1aWxkL21vZGVsL3N0b3JlLWdyb3VwLmJvXCI7XG5pbXBvcnQge09iamVjdFJpZ2h0VHlwZX0gZnJvbSBcIkBjb2xpam5pdC9zaGFyZWRhcGkvYnVpbGQvZW51bS9vYmplY3QtcmlnaHQtdHlwZS5lbnVtXCI7XG5pbXBvcnQge1Byb21wdFNlcnZpY2V9IGZyb20gXCJAY29saWpuaXQvY29yZWNvbXBvbmVudHNfdjEyXCI7XG5pbXBvcnQge0J1c2luZXNzT2JqZWN0RmFjdG9yeX0gZnJvbSBcIkBjb2xpam5pdC9pb25lY29ubmVjdG9yL2J1aWxkL3NlcnZpY2UvYnVzaW5lc3Mtb2JqZWN0LWZhY3RvcnlcIjtcbmltcG9ydCB7SW5wdXRCb29sZWFufSBmcm9tIFwiLi4vLi4vZGVjb3JhdG9yL2lucHV0LWJvb2xlYW4uZGVjb3JhdG9yXCI7XG5pbXBvcnQge0NvRG9jdW1lbnR9IGZyb20gXCJAY29saWpuaXQvbWFpbmFwaS9idWlsZC9tb2RlbC9jby1kb2N1bWVudFwiO1xuaW1wb3J0IHtDb0RvY3VtZW50UmlnaHR9IGZyb20gXCJAY29saWpuaXQvbWFpbmFwaS9idWlsZC9tb2RlbC9jby1kb2N1bWVudC1yaWdodFwiO1xuaW1wb3J0IHtUYWdDYXRlZ29yeX0gZnJvbSBcIi4uLy4uL2VudW0vdGFnLWNhdGVnb3J5LmVudW1cIjtcbmltcG9ydCB7RmlsZXNVcGxvYWRDb25maWdPYmplY3RzfSBmcm9tIFwiLi4vLi4vZW51bS9maWxlcy11cGxvYWQtY29uZmlnLW9iamVjdHNcIjtcbmltcG9ydCB7VGFibGVOYW1lfSBmcm9tIFwiLi4vLi4vZW51bS90YWJsZS1uYW1lLmVudW1cIjtcbmltcG9ydCB7RmlsZVR5cGV9IGZyb20gXCIuLi8uLi9lbnVtL2ZpbGUtdHlwZVwiO1xuaW1wb3J0IHtEb2N1bWVudEVtYWlsUmVwb3J0fSBmcm9tIFwiLi4vLi4vZW51bS9kb2N1bWVudC1lbWFpbC1yZXBvcnQuZW51bVwiO1xuaW1wb3J0IHtUYWdzQ29tcG9uZW50Q29uZmlnTmFtZXN9IGZyb20gXCIuLi8uLi9lbnVtL3RhZ3MtY29tcG9uZW50LWNvbmZpZy1uYW1lc1wiO1xuaW1wb3J0IHtEb21haW5NdWx0aXBsZU5hbWV9IGZyb20gXCIuLi8uLi9lbnVtL2RvbWFpbi1tdWx0aXBsZS1uYW1lLmVudW1cIjtcbmltcG9ydCB7VGFnVHJlZUl0ZW19IGZyb20gXCIuLi8uLi9tb2RlbC90YWctdHJlZS1pdGVtLmJvXCI7XG5pbXBvcnQge0ZpbGVUeXBlSW1hZ2VQaXBlfSBmcm9tIFwiLi4vLi4vcGlwZS9maWxlLXR5cGUtaW1hZ2UucGlwZVwiO1xuaW1wb3J0IHtGaWxlVXRpbHN9IGZyb20gXCJAY29saWpuaXQvbWFpbmFwaS9idWlsZC91dGlscy9maWxlLXV0aWxzXCI7XG5cblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6IFwiY28tZmlsZS11cGxvYWQtcG9wdXBcIixcbiAgICB0ZW1wbGF0ZTogYFxuICAgICAgICA8Y28tZGlhbG9nICpuZ0lmPVwiIXVzZVdpdGhvdXRTZXR0aW5nUHJvcHMgJiYgZG9jdW1lbnRVbmRlckVkaXRcIiBjc3NJZD1cInBvcHVwX2ZpbGVzX3VwbG9hZF9jb250ZW50XCJcbiAgICAgICAgICAgICAgICAgICBbaGVhZGVyVGVtcGxhdGVdPVwiaGVhZGVyVGVtcGxhdGVcIiBjb250ZW50U2l6ZSBub0NsaWNrT3V0c2lkZVxuICAgICAgICAgICAgICAgICAgIChjbG9zZSk9XCJvblBvcHVwQ2xvc2UoKVwiPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvLWRpYWxvZy13cmFwcGVyXCI+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZpbGUtdXBsb2FkLWZvcm0td3JhcHBlclwiIGZ4TGF5b3V0PVwiY29sdW1uXCIgZnhMYXlvdXRHYXA9XCIxMHB4XCI+XG4gICAgICAgICAgICAgICAgICAgIDxjby1mb3JtIGNsYXNzPVwibmFycm93LXNjcm9sbGJhclwiICh2YWxpZFN1Ym1pdCk9XCJvblZhbGlkU3VibWl0KClcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJob3Jpem9udGFsLWxheW91dC1jb2x1bW5cIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZG9jdW1lbnQtdGh1bWIgY29sdW1uLWxlZnRcIiAqbmdJZj1cIiFhZGREb2N1bWVudEJ5VXJsXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIChjbGljayk9XCJvblByZXZpZXdDbGljaygpXCI+PGltZyBbc3JjXT1cInRodW1ibmFpbFwiLz48L2E+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbHVtbi1yaWdodFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Y28taW5wdXQtdGV4dFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFttb2RlbF09XCJkb2N1bWVudFVuZGVyRWRpdC5maWxlU2l6ZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3NjcmVlbkNvbmZpZ3VyYXRpb25PYmplY3RdPVwiZG9jdW1lbnRVbmRlckVkaXQuaXNJbWFnZURvY3VtZW50KCkgP1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsZXNVcGxvYWRDb25maWdPYmplY3RzPy5JbWFnZURvY3VtZW50RmlsZVNpemUgOlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsZXNVcGxvYWRDb25maWdPYmplY3RzPy5UZXh0RG9jdW1lbnRGaWxlU2l6ZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3BsYWNlaG9sZGVyXT1cIidTSVpFJyB8IGxvY2FsaXplXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb3JjZVJlYWRvbmx5XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbm9WYWxpZGF0aW9uPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2NvLWlucHV0LXRleHQ+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJkb2N1bWVudFVuZGVyRWRpdC5pc0ltYWdlRG9jdW1lbnQoKVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxjby1pbnB1dC10ZXh0IFtwbGFjZWhvbGRlcl09XCInRElNRU5TSU9OUycgfCBsb2NhbGl6ZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbW9kZWxdPVwiZG9jdW1lbnRVbmRlckVkaXQuaW1hZ2VEaW1lbnNpb25zXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtzY3JlZW5Db25maWd1cmF0aW9uT2JqZWN0XT1cImZpbGVzVXBsb2FkQ29uZmlnT2JqZWN0cz8uSW1hZ2VEb2N1bWVudERpbWVuc2lvbnNcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9yY2VSZWFkb25seSBub1ZhbGlkYXRpb24+PC9jby1pbnB1dC10ZXh0PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGNvLWlucHV0LXRleHRcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbKG1vZGVsKV09XCJkb2N1bWVudFVuZGVyRWRpdC50aXRsZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3NjcmVlbkNvbmZpZ3VyYXRpb25PYmplY3RdPVwiZG9jdW1lbnRVbmRlckVkaXQuaXNJbWFnZURvY3VtZW50KCkgP1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsZXNVcGxvYWRDb25maWdPYmplY3RzPy5JbWFnZURvY3VtZW50VGl0bGUgOlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsZXNVcGxvYWRDb25maWdPYmplY3RzPy5UZXh0RG9jdW1lbnRUaXRsZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3BsYWNlaG9sZGVyXT1cIidUSVRMRTInIHwgbG9jYWxpemVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5vVmFsaWRhdGlvbiBmb3JjZVJlYWRvbmx5PjwvY28taW5wdXQtdGV4dD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgPCEtLTxzYy10YWdzXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3RhZ0NhdGVnb3J5XT1cInRhZ0NhdGVnb3J5XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbcmVhZG9ubHldPVwiZG9jVW5kZXJFZGl0SXNSZWFkT25seVwiLS0+XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gPjwvc2MtdGFncz4tLT48IS0tIFtteUNmZ05hbWVzXT1cInRhZ3NDb25maWdOYW1lXCIgfCBbKGpvaW5lZFRhZ3MpXT1cInRoaXMuZG9jdW1lbnRVbmRlckVkaXQudGFnc1wiLS0+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwhLS08ZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgICA8cmVhZC13cml0ZS1hY2Nlc3MgKm5nSWY9XCJzaG93UmVhZFdyaXRlQWNjZXNzXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3JlYWRXcml0ZUNmZ05hbWVzXT1cImZpbGVzVXBsb2FkQ29uZmlnT2JqZWN0cz8ucmVhZFdyaXRlQWNjZXNzXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2xheW91dEhvcml6b250YWxdPVwidHJ1ZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFttZWRpY2FsVXNlckdyb3Vwc109XCJtZWRpY2FsVXNlckdyb3Vwc1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFsodXNlckdyb3Vwc0ZvcldyaXRlKV09XCJ1c2VyR3JvdXBzRm9yV3JpdGVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbKHVzZXJHcm91cHNGb3JSZWFkKV09XCJ1c2VyR3JvdXBzRm9yUmVhZFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtyZWFkb25seV09XCJkb2NVbmRlckVkaXRJc1JlYWRPbmx5XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA+PC9yZWFkLXdyaXRlLWFjY2Vzcz5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pi0tPlxuICAgICAgICAgICAgICAgICAgICAgICAgPCEtLTxkaXYgY2xhc3M9XCJob3Jpem9udGFsLWxheW91dC1jb2x1bW5cIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiYWRkRG9jdW1lbnRCeVVybFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Y28taW5wdXQtdGV4dCByZXF1aXJlZCBbcGxhY2Vob2xkZXJdPVwiJ1VSTCcgfCBsb2NhbGl6ZVwiIFsobW9kZWwpXT1cImRvY3VtZW50VW5kZXJFZGl0LmZpbGVQYXRoXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3JlYWRvbmx5XT1cImRvY1VuZGVyRWRpdElzUmVhZE9ubHlcIj48L2NvLWlucHV0LXRleHQ+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4tLT5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJob3Jpem9udGFsLWxheW91dC1jb2x1bW5cIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sdW1uLWxlZnRcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGNvLWlucHV0LXRleHQgW3BsYWNlaG9sZGVyXT1cIidERVNDUklQVElPTicgfCBsb2NhbGl6ZVwiIFsobW9kZWwpXT1cImRvY3VtZW50VW5kZXJFZGl0LmRlc2NyaXB0aW9uXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3NjcmVlbkNvbmZpZ3VyYXRpb25PYmplY3RdPVwiZG9jdW1lbnRVbmRlckVkaXQuaXNJbWFnZURvY3VtZW50KCkgP1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsZXNVcGxvYWRDb25maWdPYmplY3RzPy5JbWFnZURvY3VtZW50RGVzY3JpcHRpb24gOlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsZXNVcGxvYWRDb25maWdPYmplY3RzPy5UZXh0RG9jdW1lbnREZXNjcmlwdGlvblwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtyZWFkb25seV09XCJkb2NVbmRlckVkaXRJc1JlYWRPbmx5XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPjwvY28taW5wdXQtdGV4dD5cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwhLS08ZGl2ICpuZ0lmPVwiaGFzUHVibGljQWNjZXNzVmlzaWJsZVwiIGNsYXNzPVwiY29sdW1uLXJpZ2h0XCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbnB1dC1zd2l0Y2hlci15ZXMtbm8gbGFiZWw9XCJQVUJMSUNfQUNDRVNTXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbKG1vZGVsKV09XCJkb2N1bWVudFVuZGVyRWRpdC5oYXNQdWJsaWNBY2Nlc3NcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtyZWFkb25seV09XCJkb2NVbmRlckVkaXRJc1JlYWRPbmx5XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPjwvaW5wdXQtc3dpdGNoZXIteWVzLW5vPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pi0tPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiaG9yaXpvbnRhbC1sYXlvdXQtY29sdW1uXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFkb2N1bWVudFVuZGVyRWRpdC5pc0ltYWdlRG9jdW1lbnQoKVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sdW1uLWxlZnRcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSA8aW5wdXQtc3dpdGNoZXIteWVzLW5vIGxhYmVsPVwiRE9XTkxPQURBQkxFXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgWyhtb2RlbCldPVwiZG9jdW1lbnRVbmRlckVkaXQuZG93bmxvYWRhYmxlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2NmZ05hbWVdPVwiZmlsZXNVcGxvYWRDb25maWdPYmplY3RzPy5UZXh0RG9jdW1lbnREb3dubG9hZGFibGVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbcmVhZG9ubHldPVwiZG9jVW5kZXJFZGl0SXNSZWFkT25seVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA+PC9pbnB1dC1zd2l0Y2hlci15ZXMtbm8+LS0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiaG9yaXpvbnRhbC1sYXlvdXQtY29sdW1uXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImZpbGVUeXBlID09PSBmaWxlVHlwZXMuVGhyZWVERmlsZVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sdW1uLWxlZnRcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSA8aW5wdXQtc3dpdGNoZXIteWVzLW5vIGxhYmVsPVwiQUxTT19BU19VU0RaXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgWyhtb2RlbCldPVwiZG9jdW1lbnRVbmRlckVkaXQuY29udmVydFRvVVNEWlwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtyZWFkb25seV09XCJkb2NVbmRlckVkaXRJc1JlYWRPbmx5XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID48L2lucHV0LXN3aXRjaGVyLXllcy1ubz4tLT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJob3Jpem9udGFsLWxheW91dC1jb2x1bW5cIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiZG9jdW1lbnRVbmRlckVkaXQuaXNJbWFnZURvY3VtZW50KClcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbHVtbi1sZWZ0XCI+PCEtLVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGlucHV0LXN3aXRjaGVyLXllcy1ubyBsYWJlbD1cIkFUVEFDSF9UT19OT1RJRklDQVRJT05cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbKG1vZGVsKV09XCJkb2N1bWVudFVuZGVyRWRpdC5hdHRhY2hUb05vdGlmaWNhdGlvblwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtjZmdOYW1lXT1cImZpbGVzVXBsb2FkQ29uZmlnT2JqZWN0cz8uSW1hZ2VEb2N1bWVudEF0dGFjaE5vdGlmaWNhdGlvblwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtyZWFkb25seV09XCJkb2NVbmRlckVkaXRJc1JlYWRPbmx5XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID48L2lucHV0LXN3aXRjaGVyLXllcy1ubz4tLT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2x1bW4tcmlnaHRcIj48IS0tXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1hZ2UtdHlwZS1zZWxlY3RcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2NmZ05hbWVdPVwiZmlsZXNVcGxvYWRDb25maWdPYmplY3RzPy5JbWFnZURvY3VtZW50RGlzcGxheVR5cGVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbKHNlbGVjdGVkTW9kZWxJZCldPVwidGhpcy5kb2N1bWVudFVuZGVyRWRpdC5pbWFnZURpc3BsYXlLaW5kXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3JlYWRvbmx5XT1cImRvY1VuZGVyRWRpdElzUmVhZE9ubHlcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsYWJlbD1cIkRJU1BMQVlfVFlQRVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA+PC9pbWFnZS10eXBlLXNlbGVjdD4tLT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCIhaXNXb3JrYWJpbGl0eVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSA8bXVsdGlwbGUtcHJvcGVydHktdG9nZ2xlciAqbmdJZj1cIiFzaG93RG9jdW1lbnRSZXBvcnRQaWNrZXJcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3Byb3BlcnR5TmFtZXNUb1RvZ2dsZV09XCJkb2N1bWVudFB1YmxpY2F0aW9uXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFsoZW5hYmxlZGl0ZW1zKV09XCJ0aGlzLmRvY3VtZW50VW5kZXJFZGl0LnB1YmxpY2F0aW9uXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChvblByb3BlcnR5SXRlbUNoYW5nZSk9XCJoYW5kbGVQcm9wZXJ0eUNoYW5nZSgkZXZlbnQpXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxhYmVsPVwiUFVCTElTSF9UT1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbcmVhZG9ubHldPVwiZG9jVW5kZXJFZGl0SXNSZWFkT25seVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPjwvbXVsdGlwbGUtcHJvcGVydHktdG9nZ2xlcj4tLT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Y28tbXVsdGlwbGUtcHJvcGVydHktdG9nZ2xlciAqbmdJZj1cInNob3dEb2N1bWVudFJlcG9ydFBpY2tlclwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbcHJvcGVydHlOYW1lc1RvVG9nZ2xlXT1cImRvY3VtZW50RW1haWxSZXBvcnRzXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFsoZW5hYmxlZGl0ZW1zKV09XCJkb2N1bWVudFVuZGVyRWRpdC5yZXBvcnRzXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChvblByb3BlcnR5SXRlbUNoYW5nZSk9XCJoYW5kbGVSZXBvcnRzUHJvcGVydHlDaGFuZ2UoJGV2ZW50KVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsYWJlbD1cIlJFUE9SVFNfVE9fQVRUQUNIX1RPXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtyZWFkb25seV09XCJkb2NVbmRlckVkaXRJc1JlYWRPbmx5XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA+PC9jby1tdWx0aXBsZS1wcm9wZXJ0eS10b2dnbGVyPlxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPCEtLTxuZy1jb250YWluZXIgKm5nSWY9XCJkb2N1bWVudFVuZGVyRWRpdC5pc0ltYWdlRG9jdW1lbnQoKVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbdGVtcGxhdGVXcmFwcGVyXT1cInRlbXBsYXRlSW1hZ2VcIj48L25nLWNvbnRhaW5lcj4tLT5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICA8L2NvLWZvcm0+XG4gICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwib2stY2FuY2VsLWJ1dHRvbnNcIj5cbiAgICAgICAgICAgICAgICAgICAgPGNvLWJ1dHRvbiBbZGlzYWJsZWRdPVwiZG9jVW5kZXJFZGl0SXNSZWFkT25seVwiIFt0ZXh0Q29udGVudF09XCInT0snIHwgbG9jYWxpemVcIiAoY2xpY2spPVwib25Qb3B1cE9rQ2xpY2soKVwiPjwvY28tYnV0dG9uPlxuICAgICAgICAgICAgICAgICAgICA8Y28tYnV0dG9uICpuZ0lmPVwiaGlkZUNhbmNlbFwiIFt0ZXh0Q29udGVudF09XCInU1RJQ0tFUicgfCBsb2NhbGl6ZVwiIChjbGljayk9XCJvblBvcHVwQ2FuY2VsQ2xpY2soKVwiPjwvY28tYnV0dG9uPlxuICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICA8IS0tICA8ZGVmYXVsdC1vay1jYW5jZWwtYnV0dG9ucyBjbGFzcz1cImp1c3RpZnktY2VudGVyXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW29rRGlzYWJsZWRdPVwiZG9jVW5kZXJFZGl0SXNSZWFkT25seVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtoaWRlQ2FuY2VsXT1cImhpZGVDYW5jZWxcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAob2tDbGljayk9XCJvblBvcHVwT2tDbGljaygpXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNhbmNlbENsaWNrKT1cIm9uUG9wdXBDYW5jZWxDbGljaygpXCI+XG4gICAgICAgICAgICAgICAgICAgIDwvZGVmYXVsdC1vay1jYW5jZWwtYnV0dG9ucz4tLT5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2NvLWRpYWxvZz5cbiAgICAgICAgPG5nLXRlbXBsYXRlICNoZWFkZXJUZW1wbGF0ZT5cbiAgICAgICAgICAgIDxkaXYgW3RleHRDb250ZW50XT1cInBvcHVwSGVhZGVyIHwgbG9jYWxpemVcIj48L2Rpdj5cbiAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgPG5nLXRlbXBsYXRlICN0ZW1wbGF0ZUltYWdlICpuZ0lmPVwiIWlzV29ya2FiaWxpdHlcIj5cbiAgICAgICAgICAgPCEtLSA8ZGl2IGNsYXNzPVwiY29sdW1uLXJpZ2h0XCI+XG4gICAgICAgICAgICAgICAgPGlucHV0LWxvdi1tdWx0aS1zZWxlY3RcbiAgICAgICAgICAgICAgICAgICAgICAgIFtjZmdOYW1lXT1cImZpbGVzVXBsb2FkQ29uZmlnT2JqZWN0cy5JbWFnZURvY3VtZW50U3RvcmVHcm91cHNcIlxuICAgICAgICAgICAgICAgICAgICAgICAgWyhzZWxlY3RlZE1vZGVsSWRzKV09XCJzdG9yZUdyb3VwSWRzXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtjb2xsZWN0aW9uXT1cInN0b3JlR3JvdXBzXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtyZWFkb25seV09XCJkb2NVbmRlckVkaXRJc1JlYWRPbmx5XCJcbiAgICAgICAgICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uRmllbGQ9XCJkZXNjcmlwdGlvblwiXG4gICAgICAgICAgICAgICAgICAgICAgICBkb05vdExvYWRDb2xsZWN0aW9uXG4gICAgICAgICAgICAgICAgICAgICAgICBjdXN0b21XaWR0aFxuICAgICAgICAgICAgICAgICAgICAgICAgbGFiZWw9XCJSRVRBSUxfRk9STVVMQVNcIlxuICAgICAgICAgICAgICAgID48L2lucHV0LWxvdi1tdWx0aS1zZWxlY3Q+XG4gICAgICAgICAgICA8L2Rpdj4tLT5cbiAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICBgLFxuICAgICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lXG59KVxuLy8gQ29tcG9uZW50IHRoYXQgc2hvd3MgYSBwb3B1cCB3aGVuIHRoZSB1c2VyIHdhbnRzIHRvIHVwbG9hZCBhIENvRG9jdW1lbnRcbmV4cG9ydCBjbGFzcyBGaWxlVXBsb2FkUG9wdXBDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICAgIEBWaWV3Q2hpbGQoRm9ybUNvbXBvbmVudClcbiAgICBwdWJsaWMgZm9ybTogRm9ybUNvbXBvbmVudDtcblxuICAgIEBJbnB1dCgpXG4gICAgQElucHV0Qm9vbGVhbigpXG4gICAgcHVibGljIHVzZVdpdGhvdXRTZXR0aW5nUHJvcHM6IGJvb2xlYW4gPSBmYWxzZTtcblxuICAgIEBJbnB1dCgpXG4gICAgQElucHV0Qm9vbGVhbigpXG4gICAgcHVibGljIGhhc1B1YmxpY0FjY2Vzc1Zpc2libGU6IGJvb2xlYW4gPSBmYWxzZTtcblxuICAgIEBJbnB1dCgpXG4gICAgQElucHV0Qm9vbGVhbigpXG4gICAgLy90b2RvIHRoaXMgaXMgdXN1YWxseSBzZXQgdG8gZmFsc2Ugb24gaW5pdFxuICAgIHB1YmxpYyBzaG93RG9jdW1lbnRSZXBvcnRQaWNrZXI6IGJvb2xlYW4gPSB0cnVlO1xuXG5cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBzZXQgZG9jdW1lbnRVbmRlckVkaXQoZG9jOiBDb0RvY3VtZW50KSB7XG4gICAgICAgIHRoaXMuX2RvY3VtZW50VW5kZXJFZGl0ID0gZG9jID8gdGhpcy5fYm9GYWN0b3J5Lm1ha2VXaXRoUmF3QmFja2VuZERhdGEoQ29Eb2N1bWVudCwgZG9jKSBhcyB1bmtub3duIGFzIENvRG9jdW1lbnQgOiB1bmRlZmluZWQ7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBkb2N1bWVudFVuZGVyRWRpdCgpOiBDb0RvY3VtZW50IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2RvY3VtZW50VW5kZXJFZGl0O1xuICAgIH1cblxuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIHNldCByZWFkb25seSh2YWx1ZTogYm9vbGVhbikge1xuICAgICAgICB0aGlzLl9yZWFkb25seSA9IHZhbHVlO1xuXG4gICAgICAgIGlmICh2YWx1ZSkge1xuICAgICAgICAgICAgLy90aGlzLl90b2FzdFNlcnZpY2Uuc3Bhd25Ub2FzdChcIk1FU1NBR0VfRE9DVU1FTlRfTE9DS19TSU5HTEVcIik7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBzZXQgZmlsZXNVcGxvYWRDb25maWdPYmplY3RzKHZhbHVlOiBGaWxlc1VwbG9hZENvbmZpZ09iamVjdHMpIHtcbiAgICAgICAgdGhpcy5fZmlsZXNVcGxvYWRDb25maWdPYmplY3RzID0gdmFsdWU7XG4gICAgfVxuXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgdGFnQ2F0ZWdvcnk6IFRhZ0NhdGVnb3J5O1xuXG4gICAgQElucHV0KClcbiAgICBASW5wdXRCb29sZWFuKClcbiAgICBwdWJsaWMgbWVkaWNhbFVzZXJHcm91cHM6IGJvb2xlYW47XG5cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBkaXNwbGF5UmVhZFdyaXRlQWNjZXNzOiBib29sZWFuID0gdHJ1ZTtcblxuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIHRhZ1JlZmVyZW5jZVRhYmxlOiBUYWJsZU5hbWU7XG5cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBkb2N1bWVudEtleTogc3RyaW5nO1xuXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgZG9jdW1lbnRUYWJsZTogc3RyaW5nO1xuXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgZmlsZVR5cGU6IEZpbGVUeXBlO1xuXG4gICAgQElucHV0KClcbiAgICBASW5wdXRCb29sZWFuKClcbiAgICBwdWJsaWMgYWRkRG9jdW1lbnRCeVVybDogYm9vbGVhbjtcblxuICAgIEBPdXRwdXQoKVxuICAgIHB1YmxpYyByZWFkb25seSBkb2N1bWVudENoYW5nZUV2ZW50OiBFdmVudEVtaXR0ZXI8Q29Eb2N1bWVudD4gPSBuZXcgRXZlbnRFbWl0dGVyPENvRG9jdW1lbnQ+KCk7XG5cbiAgICBAT3V0cHV0KClcbiAgICBwdWJsaWMgcmVhZG9ubHkgcG9wdXBDbG9zZUV2ZW50OiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG5cbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzLmNvLWZpbGUtdXBsb2FkLXBvcHVwJylcbiAgICBwdWJsaWMgc2hvd0NsYXNzKCkge1xuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuXG5cbiAgICBwdWJsaWMgcmVhZG9ubHkgZG9jdW1lbnRQdWJsaWNhdGlvbjogdHlwZW9mIERvY3VtZW50UHVibGljYXRpb24gPSBEb2N1bWVudFB1YmxpY2F0aW9uO1xuICAgIHB1YmxpYyByZWFkb25seSBkb2N1bWVudEVtYWlsUmVwb3J0czogdHlwZW9mIERvY3VtZW50RW1haWxSZXBvcnQgPSBEb2N1bWVudEVtYWlsUmVwb3J0O1xuXG4gICAgcHVibGljIGdldCBzaG93UmVhZFdyaXRlQWNjZXNzKCk6IGJvb2xlYW4ge1xuICAgICAgICAvL1RPRE8gZ2V0IHVzZXJyaWdodHNcbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgIC8vcmV0dXJuIHRoaXMuX3VzZXJSaWdodHMud29ya2FiaWxpdHlQYXJhbWV0ZXJFbmFibGVkICYmIHRoaXMuZGlzcGxheVJlYWRXcml0ZUFjY2VzcztcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IGZpbGVzVXBsb2FkQ29uZmlnT2JqZWN0cygpOiBGaWxlc1VwbG9hZENvbmZpZ09iamVjdHMge1xuICAgICAgICByZXR1cm4gdGhpcy5fZmlsZXNVcGxvYWRDb25maWdPYmplY3RzO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgaXNXb3JrYWJpbGl0eSgpOiBib29sZWFuIHtcbiAgICAgIC8vVE9ETyBmaXggd29ya2FiaWxpdHlcbiAgICAgIHJldHVybiBmYWxzZTtcblxuICAgICAgLy9yZXR1cm4gdGhpcy5fd29ya2FiaWxpdHlTZXJ2aWNlLndvcmthYmlsaXR5U3lzdGVtRW5hYmxlZDtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IGRvY1VuZGVyRWRpdElzUmVhZE9ubHkoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLmRvY3VtZW50VW5kZXJFZGl0LnJlYWRvbmx5IHx8IHRoaXMuX3JlYWRvbmx5O1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgdGh1bWJuYWlsKCk6IHN0cmluZyB7XG4gICAgICAgIGlmICh0aGlzLmRvY3VtZW50VW5kZXJFZGl0LmlzSW1hZ2VEb2N1bWVudCgpKSB7XG4gICAgICAgICAgICByZXR1cm4gdGhpcy5fdGh1bWJuYWlsXG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHRoaXMuX2ZpbGVUeXBlSW1nUGlwZS50cmFuc2Zvcm0odGhpcy5kb2N1bWVudFVuZGVyRWRpdC5maWxlVHlwZUludGVybmFsKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IHBvcHVwSGVhZGVyKCk6IHN0cmluZyB7XG4gICAgICAgIGlmICh0aGlzLmRvY3VtZW50VW5kZXJFZGl0ICYmIHRoaXMuZG9jdW1lbnRVbmRlckVkaXQuaXNJbWFnZURvY3VtZW50KCkpIHtcbiAgICAgICAgICAgIHJldHVybiBcIklNQUdFXCI7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICByZXR1cm4gXCJET0NVTUVOVFwiO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBwdWJsaWNhdGlvbkNvbmZpZ05hbWUoKTogc3RyaW5nIHtcbiAgICAgICAgaWYgKHRoaXMuZmlsZXNVcGxvYWRDb25maWdPYmplY3RzKSB7XG4gICAgICAgICAgICByZXR1cm4gdGhpcy5kb2N1bWVudFVuZGVyRWRpdC5pc0ltYWdlRG9jdW1lbnQoKSA/XG4gICAgICAgICAgICAgICAgdGhpcy5maWxlc1VwbG9hZENvbmZpZ09iamVjdHMuSW1hZ2VEb2N1bWVudFB1Ymxpc2hUbyA6XG4gICAgICAgICAgICAgICAgdGhpcy5maWxlc1VwbG9hZENvbmZpZ09iamVjdHMuVGV4dERvY3VtZW50UHVibGlzaFRvO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgcmV0dXJuOyAvLyBObyBjb25maWduYW1lIGZvdW5kXG4gICAgICAgIH1cbiAgICB9XG5cblxuICAgIHB1YmxpYyBnZXQgdGFnc0NvbmZpZ05hbWUoKTogVGFnc0NvbXBvbmVudENvbmZpZ05hbWVzIHtcbiAgICAgICAgaWYgKHRoaXMuZmlsZXNVcGxvYWRDb25maWdPYmplY3RzKSB7XG4gICAgICAgICAgICByZXR1cm4gdGhpcy5kb2N1bWVudFVuZGVyRWRpdC5pc0ltYWdlRG9jdW1lbnQoKSA/XG4gICAgICAgICAgICAgICAgdGhpcy5maWxlc1VwbG9hZENvbmZpZ09iamVjdHMuVGFnc0ltYWdlQ29uZmlnTmFtZXMgOlxuICAgICAgICAgICAgICAgIHRoaXMuZmlsZXNVcGxvYWRDb25maWdPYmplY3RzLlRhZ3NUZXh0Q29uZmlnTmFtZXM7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICByZXR1cm47IC8vIE5vIGNvbmZpZ25hbWUgZm91bmRcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyByZWFkb25seSBkb21haW46IHR5cGVvZiBEb21haW5NdWx0aXBsZU5hbWUgPSBEb21haW5NdWx0aXBsZU5hbWU7XG4gICAgcHVibGljIHJlYWRvbmx5IGZpbGVUeXBlczogdHlwZW9mIEZpbGVUeXBlID0gRmlsZVR5cGU7XG5cbiAgICBwdWJsaWMgX2RvY3VtZW50VW5kZXJFZGl0OiBDb0RvY3VtZW50O1xuICAgIHB1YmxpYyBoaWRlQ2FuY2VsOiBib29sZWFuID0gZmFsc2U7XG4gICAgcHVibGljIHN0b3JlR3JvdXBzOiBTdG9yZUdyb3VwW10gPSBbXTtcbiAgICBwdWJsaWMgcHVibGljYXRpb25JZHM6IG51bWJlcltdO1xuICAgIHB1YmxpYyBzdG9yZUdyb3VwSWRzOiBzdHJpbmdbXTtcbiAgICBwdWJsaWMgdXNlckdyb3Vwc0ZvcldyaXRlOiBudW1iZXJbXSA9IFtdO1xuICAgIHB1YmxpYyB1c2VyR3JvdXBzRm9yUmVhZDogbnVtYmVyW10gPSBbXTtcbiAgICBwdWJsaWMgZG9jdW1lbnRUYWdzOiBUYWdUcmVlSXRlbVtdID0gW107XG5cbiAgICBwcml2YXRlIF9maWxlc1VwbG9hZENvbmZpZ09iamVjdHM6IEZpbGVzVXBsb2FkQ29uZmlnT2JqZWN0cyA9IHt9OyAvLyBJbnN0YW50aWF0ZSB3aXRoIGVtcHR5IG9iamVjdCB0byBhdm9pZCBudWxscG9pbnRlcnMgaW4gdGhlIHRlbXBsYXRlXG4gICAgcHJpdmF0ZSBfYm9GYWN0b3J5OiBCdXNpbmVzc09iamVjdEZhY3RvcnkgPSBuZXcgQnVzaW5lc3NPYmplY3RGYWN0b3J5KCk7XG4gICAgcHJpdmF0ZSBfcmVhZG9ubHk6IGJvb2xlYW4gPSBmYWxzZTtcbiAgICBwcml2YXRlIF9wdWJsaWNhdGlvbk51bWJlcjogbnVtYmVyO1xuICAgIHByaXZhdGUgX3JlcG9ydHNOdW1iZXI6IG51bWJlcjtcblxuICAgIHByaXZhdGUgX3RodW1ibmFpbDogc3RyaW5nO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIC8vcHJpdmF0ZSBfd29ya2FiaWxpdHlTZXJ2aWNlOiBBcHBXb3JrYWJpbGl0eVNlcnZpY2UsXG4gICAgICAgIHByaXZhdGUgX3Byb21wdFNlcnZpY2U6IFByb21wdFNlcnZpY2UsXG4gICAgICAgIHByaXZhdGUgX2ZpbGVUeXBlSW1nUGlwZTogRmlsZVR5cGVJbWFnZVBpcGUsXG4gICAgICAgIC8vcHJpdmF0ZSBfdXNlclJpZ2h0czogVXNlclJpZ2h0c1NlcnZpY2UsXG4gICAgICAgIC8vcHJpdmF0ZSBfYmFzZURhdGFSZXBvOiBCYXNlRGF0YURhbFJlcG9zaXRvcnksXG4gICAgICAgIC8vcHJpdmF0ZSBfdGFnc1JlcG86IFRhZ3NEYWxSZXBvc2l0b3J5LFxuICAgICAgICAvL3ByaXZhdGUgX2RhdGFTZXJ2aWNlOiBEYXRhU2VydmljZSxcbiAgICAgICAgLy9wcml2YXRlIF90b2FzdFNlcnZpY2U6IEFwcFRvYXN0U2VydmljZVxuICAgICkge1xuICAgIH1cblxuICAgIG5nT25Jbml0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLmxvYWRDb2xsZWN0aW9uKCk7XG4gICAgICAgIGlmICh0aGlzLmRvY3VtZW50VW5kZXJFZGl0LmlzSW1hZ2VEb2N1bWVudCgpKSB7XG4gICAgICAgICAgICB0aGlzLl90aHVtYm5haWwgPSB0aGlzLmRvY3VtZW50VW5kZXJFZGl0LmRvY3VtZW50Qm9keUFzRGF0YVVyaTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyBhc3luYyBsb2FkQ29sbGVjdGlvbigpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICAgICAgLy90aGlzLmRvY3VtZW50VGFncyA9IGF3YWl0IHRoaXMuX3RhZ3NSZXBvLmdldEpvaW5lZFRhZ3ModGhpcy50YWdSZWZlcmVuY2VUYWJsZSwgdGhpcy5kb2N1bWVudEtleSk7XG4gICAgICAgIC8vdGhpcy5zdG9yZUdyb3VwcyA9IGF3YWl0IHRoaXMuX2Jhc2VEYXRhUmVwby5nZXRTdG9yZUdyb3VwTGlzdCgpO1xuICAgIH1cblxuICAgIHB1YmxpYyBvblByZXZpZXdDbGljaygpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuZG9jdW1lbnRVbmRlckVkaXQuaXNJbWFnZURvY3VtZW50KCkpIHsgLy9wcmV2aWV3IGltYWdlXG4gICAgICAgICAgICB0aGlzLl9wcm9tcHRTZXJ2aWNlLnNob3dJbWFnZSh0aGlzLmRvY3VtZW50VW5kZXJFZGl0LmRvY3VtZW50Qm9keUFzRGF0YVVyaSwgXCJQcmV2aWV3XCIpO1xuICAgICAgICB9IGVsc2UgeyAvL2Rvd25sb2FkIGRvY3VtZW50XG4gICAgICAgICAgICB0cnkge1xuICAgICAgICAgICAgICAgIEZpbGVVdGlscy5Eb3dubG9hZEZyb21EYXRhVXJpKHRoaXMuZG9jdW1lbnRVbmRlckVkaXQuYm9keUFzRGF0YVVyaSwgdGhpcy5kb2N1bWVudFVuZGVyRWRpdC5maWxlTmFtZSk7XG4gICAgICAgICAgICB9IGNhdGNoIChlcnJvcikge1xuXG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwdWJsaWMgc2F2ZURvY3VtZW50VW5kZXJFZGl0UmlnaHRzKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmRvY3VtZW50VW5kZXJFZGl0LnJpZ2h0cyA9IFtdO1xuICAgICAgICBjb25zdCBmb3JXcml0ZUxlbmd0aDogbnVtYmVyID0gdGhpcy51c2VyR3JvdXBzRm9yV3JpdGUubGVuZ3RoO1xuICAgICAgICBmb3IgKGxldCBpOiBudW1iZXIgPSAwOyBpIDwgZm9yV3JpdGVMZW5ndGg7IGkrKykge1xuICAgICAgICAgICAgY29uc3QgcmlnaHRzOiBDb0RvY3VtZW50UmlnaHQgPSBuZXcgQ29Eb2N1bWVudFJpZ2h0KCk7XG4gICAgICAgICAgICByaWdodHMudXNlckdyb3VwSWQgPSB0aGlzLnVzZXJHcm91cHNGb3JXcml0ZVtpXTtcbiAgICAgICAgICAgIHJpZ2h0cy5yaWdodExldmVsID0gT2JqZWN0UmlnaHRUeXBlLlJlYWRXcml0ZTtcbiAgICAgICAgICAgIHRoaXMuZG9jdW1lbnRVbmRlckVkaXQucmlnaHRzLnB1c2gocmlnaHRzKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IGZvclJlYWRMZW5ndGg6IG51bWJlciA9IHRoaXMudXNlckdyb3Vwc0ZvclJlYWQubGVuZ3RoO1xuICAgICAgICBmb3IgKGxldCBpOiBudW1iZXIgPSAwOyBpIDwgZm9yUmVhZExlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgICBjb25zdCByaWdodHM6IENvRG9jdW1lbnRSaWdodCA9IG5ldyBDb0RvY3VtZW50UmlnaHQoKTtcbiAgICAgICAgICAgIHJpZ2h0cy51c2VyR3JvdXBJZCA9IHRoaXMudXNlckdyb3Vwc0ZvclJlYWRbaV07XG4gICAgICAgICAgICByaWdodHMucmlnaHRMZXZlbCA9IE9iamVjdFJpZ2h0VHlwZS5SZWFkT25seTtcbiAgICAgICAgICAgIHRoaXMuZG9jdW1lbnRVbmRlckVkaXQucmlnaHRzLnB1c2gocmlnaHRzKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyBvblBvcHVwT2tDbGljaygpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuZm9ybSkge1xuICAgICAgICAgICAgdGhpcy5mb3JtLnN1Ym1pdCgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHVibGljIGhhbmRsZVByb3BlcnR5Q2hhbmdlKHJlZlN1bU9mRW5hYmxlZEl0ZW1zOiBudW1iZXIpOiBhbnkge1xuICAgICAgICB0aGlzLl9wdWJsaWNhdGlvbk51bWJlciA9IHJlZlN1bU9mRW5hYmxlZEl0ZW1zO1xuICAgIH1cblxuICAgIHB1YmxpYyBoYW5kbGVSZXBvcnRzUHJvcGVydHlDaGFuZ2UocmVmU3VtT2ZFbmFibGVkSXRlbXM6IG51bWJlcik6IGFueSB7XG4gICAgICAgIHRoaXMuX3JlcG9ydHNOdW1iZXIgPSByZWZTdW1PZkVuYWJsZWRJdGVtcztcbiAgICB9XG5cbiAgICBwdWJsaWMgYXN5bmMgb25WYWxpZFN1Ym1pdCgpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICAgICAgdGhpcy5fcHVibGljYXRpb25OdW1iZXIgPyB0aGlzLmRvY3VtZW50VW5kZXJFZGl0LnB1YmxpY2F0aW9uID0gdGhpcy5fcHVibGljYXRpb25OdW1iZXIgOiB0aGlzLmRvY3VtZW50VW5kZXJFZGl0LnB1YmxpY2F0aW9uID0gMDtcbiAgICAgICAgdGhpcy5fcmVwb3J0c051bWJlciA/IHRoaXMuZG9jdW1lbnRVbmRlckVkaXQucmVwb3J0cyA9IHRoaXMuX3JlcG9ydHNOdW1iZXIgOiB0aGlzLmRvY3VtZW50VW5kZXJFZGl0LnJlcG9ydHMgPSAwO1xuICAgICAgICB0aGlzLmRvY3VtZW50VW5kZXJFZGl0LnJldGFpbEZvcm11bGFzID0gdGhpcy5zdG9yZUdyb3VwSWRzO1xuICAgICAgICB0aGlzLnNhdmVEb2N1bWVudFVuZGVyRWRpdFJpZ2h0cygpO1xuICAgICAgICB0aGlzLmRvY3VtZW50Q2hhbmdlRXZlbnQuZW1pdCh0aGlzLmRvY3VtZW50VW5kZXJFZGl0KTtcbiAgICAgICAgdGhpcy5vblBvcHVwQ2xvc2UoKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgYXN5bmMgb25Qb3B1cENhbmNlbENsaWNrKCk6IFByb21pc2U8dm9pZD4ge1xuICAgICAgICB0aGlzLm9uUG9wdXBDbG9zZSgpO1xuICAgIH1cblxuICAgIHB1YmxpYyBvblBvcHVwQ2xvc2UoKTogdm9pZCB7XG4gICAgICAgIHRoaXMudXNlckdyb3Vwc0ZvcldyaXRlLmxlbmd0aCA9IDA7XG4gICAgICAgIHRoaXMudXNlckdyb3Vwc0ZvclJlYWQubGVuZ3RoID0gMDtcbiAgICAgICAgdGhpcy5kb2N1bWVudFVuZGVyRWRpdCA9IHVuZGVmaW5lZDtcblxuICAgICAgICB0aGlzLnBvcHVwQ2xvc2VFdmVudC5uZXh0KCk7XG4gICAgfVxuXG4gICAgLypwcml2YXRlIF91bmxvY2tEb2N1bWVudChkb2M6IENvRG9jdW1lbnQpOiB2b2lkIHtcbiAgICAgICAgaWYgKCFkb2MucmVhZG9ubHkgJiYgIXRoaXMucmVhZG9ubHkpIHtcbiAgICAgICAgICAgIHRoaXMuX2RhdGFTZXJ2aWNlLnVubG9jayhDb0RvY3VtZW50LCBkb2MuZG9jdW1lbnRJZCk7XG4gICAgICAgIH1cbiAgICB9Ki9cbn1cbiJdfQ==
@@ -0,0 +1,30 @@
1
+ import { NgModule } from "@angular/core";
2
+ import { ButtonModule, CoDialogModule, FormModule, InputTextModule, ScreenConfigurationModule } from "@colijnit/corecomponents_v12";
3
+ import { LocalizationModule } from "../../localization/localization.module";
4
+ import { CommonModule } from "@angular/common";
5
+ import { MultiplePropertyTogglerModule } from "../multi-property-toggler/multiple-property-toggler.module";
6
+ import { FileUploadPopupComponent } from "./file-upload-popup.component";
7
+ export class FileUploadPopupModule {
8
+ }
9
+ FileUploadPopupModule.decorators = [
10
+ { type: NgModule, args: [{
11
+ imports: [
12
+ CoDialogModule,
13
+ FormModule,
14
+ LocalizationModule,
15
+ InputTextModule,
16
+ ButtonModule,
17
+ CommonModule,
18
+ ScreenConfigurationModule,
19
+ MultiplePropertyTogglerModule
20
+ ],
21
+ declarations: [
22
+ FileUploadPopupComponent
23
+ ],
24
+ exports: [
25
+ FileUploadPopupComponent
26
+ ],
27
+ providers: []
28
+ },] }
29
+ ];
30
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS11cGxvYWQtcG9wdXAubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2hhcmVkY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMvZmlsZS11cGxvYWQtcG9wdXAvZmlsZS11cGxvYWQtcG9wdXAubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDdkMsT0FBTyxFQUNMLFlBQVksRUFDWixjQUFjLEVBQ2QsVUFBVSxFQUNWLGVBQWUsRUFDZix5QkFBeUIsRUFDMUIsTUFBTSw4QkFBOEIsQ0FBQztBQUN0QyxPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSx3Q0FBd0MsQ0FBQztBQUMxRSxPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDN0MsT0FBTyxFQUFDLDZCQUE2QixFQUFDLE1BQU0sNERBQTRELENBQUM7QUFDekcsT0FBTyxFQUFDLHdCQUF3QixFQUFDLE1BQU0sK0JBQStCLENBQUM7QUF1QnZFLE1BQU0sT0FBTyxxQkFBcUI7OztZQXBCakMsUUFBUSxTQUFDO2dCQUNSLE9BQU8sRUFBRTtvQkFDUCxjQUFjO29CQUNkLFVBQVU7b0JBQ1Ysa0JBQWtCO29CQUNsQixlQUFlO29CQUNmLFlBQVk7b0JBQ1osWUFBWTtvQkFDWix5QkFBeUI7b0JBQ3pCLDZCQUE2QjtpQkFDOUI7Z0JBQ0QsWUFBWSxFQUFFO29CQUNaLHdCQUF3QjtpQkFDekI7Z0JBQ0QsT0FBTyxFQUFFO29CQUNQLHdCQUF3QjtpQkFDekI7Z0JBQ0QsU0FBUyxFQUFFLEVBQ1Y7YUFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7TmdNb2R1bGV9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQge1xuICBCdXR0b25Nb2R1bGUsXG4gIENvRGlhbG9nTW9kdWxlLFxuICBGb3JtTW9kdWxlLFxuICBJbnB1dFRleHRNb2R1bGUsXG4gIFNjcmVlbkNvbmZpZ3VyYXRpb25Nb2R1bGVcbn0gZnJvbSBcIkBjb2xpam5pdC9jb3JlY29tcG9uZW50c192MTJcIjtcbmltcG9ydCB7TG9jYWxpemF0aW9uTW9kdWxlfSBmcm9tIFwiLi4vLi4vbG9jYWxpemF0aW9uL2xvY2FsaXphdGlvbi5tb2R1bGVcIjtcbmltcG9ydCB7Q29tbW9uTW9kdWxlfSBmcm9tIFwiQGFuZ3VsYXIvY29tbW9uXCI7XG5pbXBvcnQge011bHRpcGxlUHJvcGVydHlUb2dnbGVyTW9kdWxlfSBmcm9tIFwiLi4vbXVsdGktcHJvcGVydHktdG9nZ2xlci9tdWx0aXBsZS1wcm9wZXJ0eS10b2dnbGVyLm1vZHVsZVwiO1xuaW1wb3J0IHtGaWxlVXBsb2FkUG9wdXBDb21wb25lbnR9IGZyb20gXCIuL2ZpbGUtdXBsb2FkLXBvcHVwLmNvbXBvbmVudFwiO1xuXG5cbkBOZ01vZHVsZSh7XG4gIGltcG9ydHM6IFtcbiAgICBDb0RpYWxvZ01vZHVsZSxcbiAgICBGb3JtTW9kdWxlLFxuICAgIExvY2FsaXphdGlvbk1vZHVsZSxcbiAgICBJbnB1dFRleHRNb2R1bGUsXG4gICAgQnV0dG9uTW9kdWxlLFxuICAgIENvbW1vbk1vZHVsZSxcbiAgICBTY3JlZW5Db25maWd1cmF0aW9uTW9kdWxlLFxuICAgIE11bHRpcGxlUHJvcGVydHlUb2dnbGVyTW9kdWxlXG4gIF0sXG4gIGRlY2xhcmF0aW9uczogW1xuICAgIEZpbGVVcGxvYWRQb3B1cENvbXBvbmVudFxuICBdLFxuICBleHBvcnRzOiBbXG4gICAgRmlsZVVwbG9hZFBvcHVwQ29tcG9uZW50XG4gIF0sXG4gIHByb3ZpZGVyczogW1xuICBdXG59KVxuZXhwb3J0IGNsYXNzIEZpbGVVcGxvYWRQb3B1cE1vZHVsZSB7XG5cbn1cbiJdfQ==