@colijnit/sharedcomponents 1.0.55 → 1.0.56

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 (596) hide show
  1. package/.browserslistrc +16 -0
  2. package/.editorconfig +16 -0
  3. package/.vscode/extensions.json +4 -0
  4. package/.vscode/launch.json +20 -0
  5. package/.vscode/tasks.json +42 -0
  6. package/README.md +11 -8
  7. package/Sharedcomponents.iml +11 -0
  8. package/angular.json +177 -0
  9. package/custom-login-bundle.webpack.config.js +3 -0
  10. package/karma.conf.js +44 -0
  11. package/move-assets.js +14 -0
  12. package/package.json +68 -31
  13. package/projects/sharedcomponents/.browserslistrc +16 -0
  14. package/projects/sharedcomponents/README.md +24 -0
  15. package/projects/sharedcomponents/karma.conf.js +44 -0
  16. package/projects/sharedcomponents/ng-package.json +17 -0
  17. package/projects/sharedcomponents/package.json +23 -0
  18. package/projects/sharedcomponents/src/lib/assets/dictionary/text.properties.ts +8 -0
  19. package/projects/sharedcomponents/src/lib/assets/icons/account.svg +1 -0
  20. package/projects/sharedcomponents/src/lib/assets/icons/angle_left_solid.svg +1 -0
  21. package/projects/sharedcomponents/src/lib/assets/icons/angle_right_solid.svg +1 -0
  22. package/projects/sharedcomponents/src/lib/assets/icons/arrow_fat_right.svg +1 -0
  23. package/projects/sharedcomponents/src/lib/assets/icons/arrow_point_left.svg +8 -0
  24. package/projects/sharedcomponents/src/lib/assets/icons/arrow_point_right.svg +4 -0
  25. package/projects/sharedcomponents/src/lib/assets/icons/at_solid.svg +1 -0
  26. package/projects/sharedcomponents/src/lib/assets/icons/bring_forward_regular.svg +1 -0
  27. package/projects/sharedcomponents/src/lib/assets/icons/check_duotone.svg +1 -0
  28. package/projects/sharedcomponents/src/lib/assets/icons/check_round.svg +1 -0
  29. package/projects/sharedcomponents/src/lib/assets/icons/cross_skinny.svg +1 -0
  30. package/projects/sharedcomponents/src/lib/assets/icons/delete_left_regular.svg +1 -0
  31. package/projects/sharedcomponents/src/lib/assets/icons/delivery_truck.svg +12 -0
  32. package/projects/sharedcomponents/src/lib/assets/icons/email.svg +5 -0
  33. package/projects/sharedcomponents/src/lib/assets/icons/envelope_regular.svg +1 -0
  34. package/projects/sharedcomponents/src/lib/assets/icons/eye_regular.svg +1 -0
  35. package/projects/sharedcomponents/src/lib/assets/icons/file_export_regular.svg +1 -0
  36. package/projects/sharedcomponents/src/lib/assets/icons/file_export_solid.svg +1 -0
  37. package/projects/sharedcomponents/src/lib/assets/icons/file_pdf_regular.svg +1 -0
  38. package/projects/sharedcomponents/src/lib/assets/icons/file_pdf_solid.svg +1 -0
  39. package/projects/sharedcomponents/src/lib/assets/icons/file_signature_regular.svg +1 -0
  40. package/projects/sharedcomponents/src/lib/assets/icons/house_blank_regular.svg +1 -0
  41. package/projects/sharedcomponents/src/lib/assets/icons/lock.svg +1 -0
  42. package/projects/sharedcomponents/src/lib/assets/icons/message_sms_regular.svg +1 -0
  43. package/projects/sharedcomponents/src/lib/assets/icons/message_sms_solid.svg +1 -0
  44. package/projects/sharedcomponents/src/lib/assets/icons/pdf.svg +15 -0
  45. package/projects/sharedcomponents/src/lib/assets/icons/print.svg +10 -0
  46. package/projects/sharedcomponents/src/lib/assets/icons/print_regular.svg +1 -0
  47. package/projects/sharedcomponents/src/lib/assets/icons/print_solid.svg +1 -0
  48. package/projects/sharedcomponents/src/lib/assets/icons/signature_field.svg +9 -0
  49. package/projects/sharedcomponents/src/lib/assets/icons/tag_regular.svg +1 -0
  50. package/projects/sharedcomponents/src/lib/assets/icons/x_solid.svg +1 -0
  51. package/projects/sharedcomponents/src/lib/assets/icons/xml.svg +1 -0
  52. package/projects/sharedcomponents/src/lib/components/date-planning/component/agenda/agenda-base-view.component.ts +68 -0
  53. package/projects/sharedcomponents/src/lib/components/date-planning/component/agenda/agenda-day-view.component.ts +35 -0
  54. package/projects/sharedcomponents/src/lib/components/date-planning/component/agenda/agenda-event.component.ts +73 -0
  55. package/projects/sharedcomponents/src/lib/components/date-planning/component/agenda/agenda-events.component.ts +53 -0
  56. package/projects/sharedcomponents/src/lib/components/date-planning/component/agenda/agenda-half-hour-cell.component.ts +81 -0
  57. package/projects/sharedcomponents/src/lib/components/date-planning/component/agenda/agenda-header.component.ts +275 -0
  58. package/projects/sharedcomponents/src/lib/components/date-planning/component/agenda/agenda-hour-cell.component.ts +38 -0
  59. package/projects/sharedcomponents/src/lib/components/date-planning/component/agenda/agenda-hour-view-labels.component.ts +50 -0
  60. package/projects/sharedcomponents/src/lib/components/date-planning/component/agenda/agenda-hour-view.component.ts +46 -0
  61. package/projects/sharedcomponents/src/lib/components/date-planning/component/agenda/agenda-month-view.component.ts +65 -0
  62. package/projects/sharedcomponents/src/lib/components/date-planning/component/agenda/agenda-select-event.component.ts +39 -0
  63. package/projects/sharedcomponents/src/lib/components/date-planning/component/agenda/agenda-view.component.ts +41 -0
  64. package/projects/sharedcomponents/src/lib/components/date-planning/component/agenda/agenda-week-select-view.component.ts +63 -0
  65. package/projects/sharedcomponents/src/lib/components/date-planning/component/agenda/agenda-week-view.component.ts +50 -0
  66. package/{lib → projects/sharedcomponents/src/lib}/components/date-planning/component/agenda/style/_layout.scss +12 -12
  67. package/{lib → projects/sharedcomponents/src/lib}/components/date-planning/component/agenda/style/_material-definition.scss +2 -1
  68. package/projects/sharedcomponents/src/lib/components/date-planning/component/agenda/view-select.component.ts +43 -0
  69. package/projects/sharedcomponents/src/lib/components/date-planning/component/calendar/calendar-all-months.component.ts +37 -0
  70. package/projects/sharedcomponents/src/lib/components/date-planning/component/calendar/calendar-all-years.component.ts +52 -0
  71. package/projects/sharedcomponents/src/lib/components/date-planning/component/calendar/calendar-header.component.ts +123 -0
  72. package/projects/sharedcomponents/src/lib/components/date-planning/component/calendar/calendar-view.component.ts +200 -0
  73. package/projects/sharedcomponents/src/lib/components/date-planning/component/calendar/calendar.component.ts +35 -0
  74. package/projects/sharedcomponents/src/lib/components/date-planning/date-planning.component.ts +141 -0
  75. package/projects/sharedcomponents/src/lib/components/date-planning/date-planning.module.ts +61 -0
  76. package/projects/sharedcomponents/src/lib/components/date-planning/style/material.scss +7 -0
  77. package/projects/sharedcomponents/src/lib/components/docsign/component/signature/signature.component.ts +82 -0
  78. package/projects/sharedcomponents/src/lib/components/docsign/component/signatures/signatures.component.ts +50 -0
  79. package/projects/sharedcomponents/src/lib/components/docsign/docsign.component.ts +270 -0
  80. package/projects/sharedcomponents/src/lib/components/docsign/docsign.module.ts +22 -0
  81. package/projects/sharedcomponents/src/lib/components/key-pad/key-pad.component.ts +216 -0
  82. package/projects/sharedcomponents/src/lib/components/key-pad/key-pad.module.ts +20 -0
  83. package/projects/sharedcomponents/src/lib/components/layout-switcher/layout-switcher.component.ts +98 -0
  84. package/projects/sharedcomponents/src/lib/components/layout-switcher/layout-switcher.module.ts +21 -0
  85. package/projects/sharedcomponents/src/lib/components/linear-gauge/co-linear-gauge.component.ts +57 -0
  86. package/projects/sharedcomponents/src/lib/components/linear-gauge/co-linear-gauge.module.ts +17 -0
  87. package/projects/sharedcomponents/src/lib/components/login/components/login-base.component.ts +98 -0
  88. package/projects/sharedcomponents/src/lib/components/login/components/login-change-password.component.ts +194 -0
  89. package/projects/sharedcomponents/src/lib/components/login/components/login-mfa-code-entry.component.ts +41 -0
  90. package/projects/sharedcomponents/src/lib/components/login/components/login-mfa-code-setup.component.ts +44 -0
  91. package/projects/sharedcomponents/src/lib/components/login/components/login-username-password.component.ts +167 -0
  92. package/projects/sharedcomponents/src/lib/components/login/localization/login-translation.ts +15 -0
  93. package/projects/sharedcomponents/src/lib/components/login/login.component.ts +137 -0
  94. package/projects/sharedcomponents/src/lib/components/login/login.module.ts +53 -0
  95. package/projects/sharedcomponents/src/lib/components/login/service/login-adapter.service.ts +58 -0
  96. package/projects/sharedcomponents/src/lib/components/login/service/login.service.ts +50 -0
  97. package/projects/sharedcomponents/src/lib/components/screen-config-generator/enums/field-type.enum.ts +9 -0
  98. package/projects/sharedcomponents/src/lib/components/screen-config-generator/models/Config.ts +6 -0
  99. package/projects/sharedcomponents/src/lib/components/screen-config-generator/models/Field.ts +8 -0
  100. package/projects/sharedcomponents/src/lib/components/screen-config-generator/models/Header.ts +8 -0
  101. package/projects/sharedcomponents/src/lib/components/screen-config-generator/models/Module.ts +6 -0
  102. package/projects/sharedcomponents/src/lib/components/screen-config-generator/models/Rubric.ts +10 -0
  103. package/projects/sharedcomponents/src/lib/components/screen-config-generator/models/ScreenConfig.ts +9 -0
  104. package/projects/sharedcomponents/src/lib/components/screen-config-generator/models/SubCat.ts +9 -0
  105. package/projects/sharedcomponents/src/lib/components/screen-config-generator/models/SubRubric.ts +8 -0
  106. package/projects/sharedcomponents/src/lib/components/screen-config-generator/screen-config-generator.component.ts +539 -0
  107. package/projects/sharedcomponents/src/lib/components/screen-config-generator/screen-config-generator.module.ts +21 -0
  108. package/projects/sharedcomponents/src/lib/components/send-method-dialog/components/layout-selection/layout-selection.component.ts +91 -0
  109. package/projects/sharedcomponents/src/lib/components/send-method-dialog/components/layout-selection/layout-selection.module.ts +19 -0
  110. package/projects/sharedcomponents/src/lib/components/send-method-dialog/components/printer-selection/printer-selection.component.ts +84 -0
  111. package/projects/sharedcomponents/src/lib/components/send-method-dialog/components/printer-selection/printer-selection.module.ts +19 -0
  112. package/projects/sharedcomponents/src/lib/components/send-method-dialog/components/send-method-email/send-method-email.component.ts +63 -0
  113. package/projects/sharedcomponents/src/lib/components/send-method-dialog/components/send-method-email/send-method-email.module.ts +24 -0
  114. package/projects/sharedcomponents/src/lib/components/send-method-dialog/components/send-method-pdf/send-method-pdf.component.ts +38 -0
  115. package/projects/sharedcomponents/src/lib/components/send-method-dialog/components/send-method-pdf/send-method-pdf.module.ts +21 -0
  116. package/projects/sharedcomponents/src/lib/components/send-method-dialog/components/send-method-printer/send-method-printer.component.ts +60 -0
  117. package/projects/sharedcomponents/src/lib/components/send-method-dialog/components/send-method-printer/send-method-printer.module.ts +26 -0
  118. package/projects/sharedcomponents/src/lib/components/send-method-dialog/components/signature-button/signature-button.component.ts +42 -0
  119. package/projects/sharedcomponents/src/lib/components/send-method-dialog/components/signature-button/signature-button.module.ts +19 -0
  120. package/projects/sharedcomponents/src/lib/components/send-method-dialog/model/email-address-viewmodel.ts +9 -0
  121. package/projects/sharedcomponents/src/lib/components/send-method-dialog/send-method-dialog.component.ts +325 -0
  122. package/projects/sharedcomponents/src/lib/components/send-method-dialog/send-method-dialog.module.ts +32 -0
  123. package/projects/sharedcomponents/src/lib/components/send-method-dialog/send-method-params.interface.ts +13 -0
  124. package/projects/sharedcomponents/src/lib/components/send-method-dialog/service/send-method.service.ts +63 -0
  125. package/projects/sharedcomponents/src/lib/components/simple-tags/simple-tags.component.ts +243 -0
  126. package/projects/sharedcomponents/src/lib/components/simple-tags/simple-tags.module.ts +24 -0
  127. package/projects/sharedcomponents/src/lib/components/statusbar/statusbar-popup.component.ts +100 -0
  128. package/projects/sharedcomponents/src/lib/components/statusbar/statusbar.component.ts +107 -0
  129. package/projects/sharedcomponents/src/lib/components/statusbar/statusbar.module.ts +25 -0
  130. package/projects/sharedcomponents/src/lib/components/stock/components/allocation-stock-history/allocation-stock-history.component.ts +45 -0
  131. package/projects/sharedcomponents/src/lib/components/stock/components/order-commission-stock-history/order-commission-stock-history.component.ts +45 -0
  132. package/projects/sharedcomponents/src/lib/components/stock/components/order-stock-history/order-stock-history.component.ts +45 -0
  133. package/projects/sharedcomponents/src/lib/components/stock/components/order-stock-tab/order-stock-tab.component.ts +43 -0
  134. package/projects/sharedcomponents/src/lib/components/stock/components/order-supply-stock-history/order-supply-stock-history.component.ts +45 -0
  135. package/projects/sharedcomponents/src/lib/components/stock/components/order-tab/order-tab.component.ts +71 -0
  136. package/projects/sharedcomponents/src/lib/components/stock/components/stock-history/stock-history.component.ts +52 -0
  137. package/projects/sharedcomponents/src/lib/components/stock/components/stock-location/stock-location.component.ts +276 -0
  138. package/projects/sharedcomponents/src/lib/components/stock/components/stock-prognose/stock-prognose.component.ts +49 -0
  139. package/projects/sharedcomponents/src/lib/components/stock/components/stock-tab/stock-tab.component.ts +40 -0
  140. package/projects/sharedcomponents/src/lib/components/stock/localization/translation.ts +60 -0
  141. package/projects/sharedcomponents/src/lib/components/stock/stock-history-tabs/stock-history-tabs.component.ts +32 -0
  142. package/projects/sharedcomponents/src/lib/components/stock/stock-information/stock-information.component.ts +56 -0
  143. package/projects/sharedcomponents/src/lib/components/stock/stock-information-grid/stock-information-grid.component.ts +500 -0
  144. package/projects/sharedcomponents/src/lib/components/stock/stock-tabs/stock-tabs.component.ts +276 -0
  145. package/{lib/components/stock/stock-transfer/co-drop-down-list-fields.interface.d.ts → projects/sharedcomponents/src/lib/components/stock/stock-transfer/co-drop-down-list-fields.interface.ts} +2 -2
  146. package/projects/sharedcomponents/src/lib/components/stock/stock-transfer/stock-change-amount.component.ts +77 -0
  147. package/projects/sharedcomponents/src/lib/components/stock/stock-transfer/stock-transfer.component.ts +178 -0
  148. package/projects/sharedcomponents/src/lib/components/stock/stock.component.ts +228 -0
  149. package/projects/sharedcomponents/src/lib/components/stock/stock.module.ts +97 -0
  150. package/projects/sharedcomponents/src/lib/components/stock-statusbar/stock-statusbar.component.ts +23 -0
  151. package/projects/sharedcomponents/src/lib/components/stock-statusbar/stock-statusbar.module.ts +17 -0
  152. package/projects/sharedcomponents/src/lib/components/tab-bar/tab-bar.component.ts +106 -0
  153. package/projects/sharedcomponents/src/lib/components/tab-bar/tab-bar.module.ts +20 -0
  154. package/projects/sharedcomponents/src/lib/components/tab-bar/tab.interface.ts +5 -0
  155. package/projects/sharedcomponents/src/lib/components/tags/component/tag-join-label/tag-join-label.component.ts +61 -0
  156. package/projects/sharedcomponents/src/lib/components/tags/component/tag-label/tag-label.component.ts +47 -0
  157. package/projects/sharedcomponents/src/lib/components/tags/component/treeview/model/tree-view-node-item.ts +132 -0
  158. package/projects/sharedcomponents/src/lib/components/tags/component/treeview/treeview.component.ts +258 -0
  159. package/projects/sharedcomponents/src/lib/components/tags/tags.component.ts +192 -0
  160. package/projects/sharedcomponents/src/lib/components/tags/tags.module.ts +27 -0
  161. package/projects/sharedcomponents/src/lib/directives/click-outside.directive.ts +25 -0
  162. package/projects/sharedcomponents/src/lib/enum/calendar-view.enum.ts +8 -0
  163. package/projects/sharedcomponents/src/lib/enum/gauge-color.enum.ts +8 -0
  164. package/{lib/enum/icon.enum.d.ts → projects/sharedcomponents/src/lib/enum/icon.enum.ts} +3 -2
  165. package/projects/sharedcomponents/src/lib/enum/keyboard-code.enum.ts +30 -0
  166. package/projects/sharedcomponents/src/lib/enum/language-code.enum.ts +6 -0
  167. package/projects/sharedcomponents/src/lib/enum/login-component-extra-action-type.enum.ts +4 -0
  168. package/projects/sharedcomponents/src/lib/enum/login-component-page.type.enum.ts +6 -0
  169. package/projects/sharedcomponents/src/lib/enum/login-component-query-variables-name.enum.ts +5 -0
  170. package/{lib/enum/month.enum.d.ts → projects/sharedcomponents/src/lib/enum/month.enum.ts} +2 -1
  171. package/projects/sharedcomponents/src/lib/enum/tag-category.enum.ts +20 -0
  172. package/projects/sharedcomponents/src/lib/enum/thumb-three-way-state.ts +18 -0
  173. package/{lib/enum/time-period.enum.d.ts → projects/sharedcomponents/src/lib/enum/time-period.enum.ts} +2 -1
  174. package/projects/sharedcomponents/src/lib/localization/localization.module.ts +17 -0
  175. package/projects/sharedcomponents/src/lib/localization/localize.pipe.ts +21 -0
  176. package/projects/sharedcomponents/src/lib/localization/localize.service.ts +28 -0
  177. package/projects/sharedcomponents/src/lib/localization/translation.ts +2 -0
  178. package/projects/sharedcomponents/src/lib/model/agenda-event-per-day.model.ts +6 -0
  179. package/projects/sharedcomponents/src/lib/model/agenda-event.model.ts +19 -0
  180. package/projects/sharedcomponents/src/lib/model/agenda-null-objects.ts +11 -0
  181. package/projects/sharedcomponents/src/lib/model/constant/all-months.ts +17 -0
  182. package/projects/sharedcomponents/src/lib/model/date-range.ts +10 -0
  183. package/projects/sharedcomponents/src/lib/model/day.model.ts +9 -0
  184. package/projects/sharedcomponents/src/lib/model/icon-svg.ts +37 -0
  185. package/projects/sharedcomponents/src/lib/model/month.model.ts +11 -0
  186. package/projects/sharedcomponents/src/lib/model/send-method.ts +13 -0
  187. package/projects/sharedcomponents/src/lib/model/settings.ts +5 -0
  188. package/projects/sharedcomponents/src/lib/model/tag-tree-item.bo.ts +28 -0
  189. package/projects/sharedcomponents/src/lib/model/time-window.bo.ts +21 -0
  190. package/projects/sharedcomponents/src/lib/model/tree-object.ts +13 -0
  191. package/projects/sharedcomponents/src/lib/model/tree-view-default.model.ts +107 -0
  192. package/projects/sharedcomponents/src/lib/model/tree-view-node-default.model.ts +196 -0
  193. package/projects/sharedcomponents/src/lib/model/tree-view-node-item-options.model.ts +12 -0
  194. package/projects/sharedcomponents/src/lib/model/tree-view-node.model.ts +150 -0
  195. package/projects/sharedcomponents/src/lib/model/tree-view.model.ts +57 -0
  196. package/projects/sharedcomponents/src/lib/model/week.model.ts +5 -0
  197. package/projects/sharedcomponents/src/lib/model/weekday.model.ts +17 -0
  198. package/projects/sharedcomponents/src/lib/pipe/array-number.pipe.ts +14 -0
  199. package/projects/sharedcomponents/src/lib/pipe/master-pipes.ts +7 -0
  200. package/projects/sharedcomponents/src/lib/pipe/ucfirst.pipe.ts +14 -0
  201. package/projects/sharedcomponents/src/lib/service/dictionary.service.ts +86 -0
  202. package/projects/sharedcomponents/src/lib/service/icon-cache.service.ts +51 -0
  203. package/projects/sharedcomponents/src/lib/service/options.service.ts +43 -0
  204. package/projects/sharedcomponents/src/lib/service/shared-connector.service.ts +401 -0
  205. package/projects/sharedcomponents/src/lib/service/shared-initializer.service.ts +29 -0
  206. package/projects/sharedcomponents/src/lib/service/shared.service.ts +49 -0
  207. package/projects/sharedcomponents/src/lib/service/stock.service.ts +124 -0
  208. package/projects/sharedcomponents/src/lib/utils/array-utils.ts +225 -0
  209. package/projects/sharedcomponents/src/lib/utils/calendar.utils.ts +75 -0
  210. package/projects/sharedcomponents/src/lib/utils/check-precision-and-scale-result.ts +5 -0
  211. package/projects/sharedcomponents/src/lib/utils/check-within-stepped-bounds-result.ts +8 -0
  212. package/projects/sharedcomponents/src/lib/utils/css-utils.ts +275 -0
  213. package/projects/sharedcomponents/src/lib/utils/date-utils.ts +302 -0
  214. package/projects/sharedcomponents/src/lib/utils/function/not-nill.function.ts +4 -0
  215. package/projects/sharedcomponents/src/lib/utils/is-nill.function.ts +4 -0
  216. package/projects/sharedcomponents/src/lib/utils/map-utils.ts +44 -0
  217. package/projects/sharedcomponents/src/lib/utils/number-utils.ts +439 -0
  218. package/projects/sharedcomponents/src/lib/utils/object-utils.ts +310 -0
  219. package/projects/sharedcomponents/src/lib/utils/string-utils.ts +67 -0
  220. package/projects/sharedcomponents/src/lib/utils/tree-utils.ts +63 -0
  221. package/{public-api.d.ts → projects/sharedcomponents/src/public-api.ts} +7 -0
  222. package/projects/sharedcomponents/src/test.ts +27 -0
  223. package/projects/sharedcomponents/tsconfig.lib.json +18 -0
  224. package/projects/sharedcomponents/tsconfig.lib.prod.json +10 -0
  225. package/projects/sharedcomponents/tsconfig.spec.json +17 -0
  226. package/script/create-bundle-version.js +19 -0
  227. package/script/merge-icons.js +39 -0
  228. package/src/app/app.component.scss +31 -0
  229. package/src/app/app.component.spec.ts +31 -0
  230. package/src/app/app.component.ts +454 -0
  231. package/src/app/app.module.ts +69 -0
  232. package/src/app/bundle/index.html +14 -0
  233. package/src/app/bundle/login/login-bundle.component.scss +6 -0
  234. package/src/app/bundle/login/login-bundle.component.ts +111 -0
  235. package/src/app/bundle/login/login-bundle.module.ts +30 -0
  236. package/src/app/bundle/main-login-bundle.ts +11 -0
  237. package/src/app/bundle/polyfills.ts +63 -0
  238. package/src/app/test-data.service.ts +60 -0
  239. package/src/assets/.gitkeep +0 -0
  240. package/src/environments/environment.bundle.prod.ts +3 -0
  241. package/src/environments/environment.prod.ts +3 -0
  242. package/src/environments/environment.ts +16 -0
  243. package/src/favicon.ico +0 -0
  244. package/src/index.html +13 -0
  245. package/src/main.ts +12 -0
  246. package/src/polyfills.ts +53 -0
  247. package/src/styles.scss +54 -0
  248. package/src/test.ts +26 -0
  249. package/tsconfig.app.json +15 -0
  250. package/tsconfig.bundle.json +38 -0
  251. package/tsconfig.json +64 -0
  252. package/tsconfig.spec.json +18 -0
  253. package/webpack.login.bundle.config.js +32 -0
  254. package/bundles/colijnit-sharedcomponents.umd.js +0 -6733
  255. package/bundles/colijnit-sharedcomponents.umd.js.map +0 -1
  256. package/colijnit-sharedcomponents.d.ts +0 -74
  257. package/colijnit-sharedcomponents.metadata.json +0 -1
  258. package/esm2015/colijnit-sharedcomponents.js +0 -75
  259. package/esm2015/lib/assets/dictionary/text.properties.js +0 -11
  260. package/esm2015/lib/components/date-planning/component/agenda/agenda-base-view.component.js +0 -61
  261. package/esm2015/lib/components/date-planning/component/agenda/agenda-day-view.component.js +0 -32
  262. package/esm2015/lib/components/date-planning/component/agenda/agenda-event.component.js +0 -54
  263. package/esm2015/lib/components/date-planning/component/agenda/agenda-events.component.js +0 -43
  264. package/esm2015/lib/components/date-planning/component/agenda/agenda-half-hour-cell.component.js +0 -68
  265. package/esm2015/lib/components/date-planning/component/agenda/agenda-header.component.js +0 -232
  266. package/esm2015/lib/components/date-planning/component/agenda/agenda-hour-cell.component.js +0 -36
  267. package/esm2015/lib/components/date-planning/component/agenda/agenda-hour-view-labels.component.js +0 -50
  268. package/esm2015/lib/components/date-planning/component/agenda/agenda-hour-view.component.js +0 -46
  269. package/esm2015/lib/components/date-planning/component/agenda/agenda-month-view.component.js +0 -61
  270. package/esm2015/lib/components/date-planning/component/agenda/agenda-select-event.component.js +0 -39
  271. package/esm2015/lib/components/date-planning/component/agenda/agenda-view.component.js +0 -35
  272. package/esm2015/lib/components/date-planning/component/agenda/agenda-week-select-view.component.js +0 -64
  273. package/esm2015/lib/components/date-planning/component/agenda/agenda-week-view.component.js +0 -48
  274. package/esm2015/lib/components/date-planning/component/agenda/view-select.component.js +0 -42
  275. package/esm2015/lib/components/date-planning/component/calendar/calendar-all-months.component.js +0 -34
  276. package/esm2015/lib/components/date-planning/component/calendar/calendar-all-years.component.js +0 -48
  277. package/esm2015/lib/components/date-planning/component/calendar/calendar-header.component.js +0 -107
  278. package/esm2015/lib/components/date-planning/component/calendar/calendar-view.component.js +0 -178
  279. package/esm2015/lib/components/date-planning/component/calendar/calendar.component.js +0 -34
  280. package/esm2015/lib/components/date-planning/date-planning.component.js +0 -108
  281. package/esm2015/lib/components/date-planning/date-planning.module.js +0 -63
  282. package/esm2015/lib/components/docsign/component/signature/signature.component.js +0 -75
  283. package/esm2015/lib/components/docsign/component/signatures/signatures.component.js +0 -44
  284. package/esm2015/lib/components/docsign/docsign.component.js +0 -242
  285. package/esm2015/lib/components/docsign/docsign.module.js +0 -23
  286. package/esm2015/lib/components/key-pad/key-pad.component.js +0 -200
  287. package/esm2015/lib/components/key-pad/key-pad.module.js +0 -22
  288. package/esm2015/lib/components/layout-switcher/layout-switcher.component.js +0 -74
  289. package/esm2015/lib/components/layout-switcher/layout-switcher.module.js +0 -21
  290. package/esm2015/lib/components/linear-gauge/co-linear-gauge.component.js +0 -59
  291. package/esm2015/lib/components/linear-gauge/co-linear-gauge.module.js +0 -19
  292. package/esm2015/lib/components/send-method-dialog/components/layout-selection/layout-selection.component.js +0 -79
  293. package/esm2015/lib/components/send-method-dialog/components/layout-selection/layout-selection.module.js +0 -21
  294. package/esm2015/lib/components/send-method-dialog/components/printer-selection/printer-selection.component.js +0 -85
  295. package/esm2015/lib/components/send-method-dialog/components/printer-selection/printer-selection.module.js +0 -21
  296. package/esm2015/lib/components/send-method-dialog/components/send-method-email/send-method-email.component.js +0 -64
  297. package/esm2015/lib/components/send-method-dialog/components/send-method-email/send-method-email.module.js +0 -26
  298. package/esm2015/lib/components/send-method-dialog/components/send-method-pdf/send-method-pdf.component.js +0 -40
  299. package/esm2015/lib/components/send-method-dialog/components/send-method-pdf/send-method-pdf.module.js +0 -23
  300. package/esm2015/lib/components/send-method-dialog/components/send-method-printer/send-method-printer.component.js +0 -59
  301. package/esm2015/lib/components/send-method-dialog/components/send-method-printer/send-method-printer.module.js +0 -28
  302. package/esm2015/lib/components/send-method-dialog/components/signature-button/signature-button.component.js +0 -38
  303. package/esm2015/lib/components/send-method-dialog/components/signature-button/signature-button.module.js +0 -21
  304. package/esm2015/lib/components/send-method-dialog/model/email-address-viewmodel.js +0 -7
  305. package/esm2015/lib/components/send-method-dialog/send-method-dialog.component.js +0 -255
  306. package/esm2015/lib/components/send-method-dialog/send-method-dialog.module.js +0 -35
  307. package/esm2015/lib/components/send-method-dialog/send-method-params.interface.js +0 -2
  308. package/esm2015/lib/components/send-method-dialog/service/send-method.service.js +0 -59
  309. package/esm2015/lib/components/simple-tags/simple-tags.component.js +0 -229
  310. package/esm2015/lib/components/simple-tags/simple-tags.module.js +0 -26
  311. package/esm2015/lib/components/statusbar/statusbar-popup.component.js +0 -97
  312. package/esm2015/lib/components/statusbar/statusbar.component.js +0 -81
  313. package/esm2015/lib/components/statusbar/statusbar.module.js +0 -27
  314. package/esm2015/lib/components/stock/components/allocation-stock-history/allocation-stock-history.component.js +0 -47
  315. package/esm2015/lib/components/stock/components/order-commission-stock-history/order-commission-stock-history.component.js +0 -47
  316. package/esm2015/lib/components/stock/components/order-stock-history/order-stock-history.component.js +0 -47
  317. package/esm2015/lib/components/stock/components/order-stock-tab/order-stock-tab.component.js +0 -47
  318. package/esm2015/lib/components/stock/components/order-supply-stock-history/order-supply-stock-history.component.js +0 -47
  319. package/esm2015/lib/components/stock/components/order-tab/order-tab.component.js +0 -67
  320. package/esm2015/lib/components/stock/components/stock-history/stock-history.component.js +0 -53
  321. package/esm2015/lib/components/stock/components/stock-location/stock-location.component.js +0 -240
  322. package/esm2015/lib/components/stock/components/stock-prognose/stock-prognose.component.js +0 -52
  323. package/esm2015/lib/components/stock/components/stock-tab/stock-tab.component.js +0 -41
  324. package/esm2015/lib/components/stock/localization/translation.js +0 -63
  325. package/esm2015/lib/components/stock/stock-history-tabs/stock-history-tabs.component.js +0 -33
  326. package/esm2015/lib/components/stock/stock-information/stock-information.component.js +0 -48
  327. package/esm2015/lib/components/stock/stock-information-grid/stock-information-grid.component.js +0 -457
  328. package/esm2015/lib/components/stock/stock-tabs/stock-tabs.component.js +0 -241
  329. package/esm2015/lib/components/stock/stock-transfer/co-drop-down-list-fields.interface.js +0 -2
  330. package/esm2015/lib/components/stock/stock-transfer/stock-change-amount.component.js +0 -72
  331. package/esm2015/lib/components/stock/stock-transfer/stock-transfer.component.js +0 -149
  332. package/esm2015/lib/components/stock/stock.component.js +0 -193
  333. package/esm2015/lib/components/stock/stock.module.js +0 -80
  334. package/esm2015/lib/components/stock-statusbar/stock-statusbar.component.js +0 -23
  335. package/esm2015/lib/components/stock-statusbar/stock-statusbar.module.js +0 -19
  336. package/esm2015/lib/components/tab-bar/tab-bar.component.js +0 -88
  337. package/esm2015/lib/components/tab-bar/tab-bar.module.js +0 -21
  338. package/esm2015/lib/components/tab-bar/tab.interface.js +0 -2
  339. package/esm2015/lib/enum/calendar-view.enum.js +0 -8
  340. package/esm2015/lib/enum/gauge-color.enum.js +0 -10
  341. package/esm2015/lib/enum/icon.enum.js +0 -38
  342. package/esm2015/lib/enum/keyboard-code.enum.js +0 -32
  343. package/esm2015/lib/enum/language-code.enum.js +0 -8
  344. package/esm2015/lib/enum/month.enum.js +0 -17
  345. package/esm2015/lib/enum/thumb-three-way-state.js +0 -19
  346. package/esm2015/lib/enum/time-period.enum.js +0 -11
  347. package/esm2015/lib/localization/localization.module.js +0 -19
  348. package/esm2015/lib/localization/localize.pipe.js +0 -26
  349. package/esm2015/lib/localization/localize.service.js +0 -30
  350. package/esm2015/lib/localization/translation.js +0 -3
  351. package/esm2015/lib/model/agenda-event-per-day.model.js +0 -6
  352. package/esm2015/lib/model/agenda-event.model.js +0 -8
  353. package/esm2015/lib/model/agenda-null-objects.js +0 -11
  354. package/esm2015/lib/model/constant/all-months.js +0 -17
  355. package/esm2015/lib/model/date-range.js +0 -5
  356. package/esm2015/lib/model/day.model.js +0 -7
  357. package/esm2015/lib/model/icon-svg.js +0 -37
  358. package/esm2015/lib/model/month.model.js +0 -11
  359. package/esm2015/lib/model/send-method.js +0 -8
  360. package/esm2015/lib/model/settings.js +0 -4
  361. package/esm2015/lib/model/time-window.bo.js +0 -26
  362. package/esm2015/lib/model/week.model.js +0 -6
  363. package/esm2015/lib/model/weekday.model.js +0 -10
  364. package/esm2015/lib/pipe/array-number.pipe.js +0 -15
  365. package/esm2015/lib/pipe/master-pipes.js +0 -7
  366. package/esm2015/lib/pipe/ucfirst.pipe.js +0 -16
  367. package/esm2015/lib/service/dictionary.service.js +0 -76
  368. package/esm2015/lib/service/icon-cache.service.js +0 -51
  369. package/esm2015/lib/service/options.service.js +0 -48
  370. package/esm2015/lib/service/shared-connector.service.js +0 -424
  371. package/esm2015/lib/service/shared.service.js +0 -60
  372. package/esm2015/lib/service/stock.service.js +0 -110
  373. package/esm2015/lib/utils/calendar.utils.js +0 -69
  374. package/esm2015/lib/utils/date-utils.js +0 -264
  375. package/esm2015/lib/utils/function/not-nill.function.js +0 -5
  376. package/esm2015/lib/utils/map-utils.js +0 -41
  377. package/esm2015/lib/utils/string-utils.js +0 -64
  378. package/esm2015/public-api.js +0 -24
  379. package/fesm2015/colijnit-sharedcomponents.js +0 -7001
  380. package/fesm2015/colijnit-sharedcomponents.js.map +0 -1
  381. package/lib/assets/dictionary/text.properties.d.ts +0 -3
  382. package/lib/components/date-planning/component/agenda/agenda-base-view.component.d.ts +0 -21
  383. package/lib/components/date-planning/component/agenda/agenda-day-view.component.d.ts +0 -6
  384. package/lib/components/date-planning/component/agenda/agenda-event.component.d.ts +0 -17
  385. package/lib/components/date-planning/component/agenda/agenda-events.component.d.ts +0 -12
  386. package/lib/components/date-planning/component/agenda/agenda-half-hour-cell.component.d.ts +0 -18
  387. package/lib/components/date-planning/component/agenda/agenda-header.component.d.ts +0 -47
  388. package/lib/components/date-planning/component/agenda/agenda-hour-cell.component.d.ts +0 -9
  389. package/lib/components/date-planning/component/agenda/agenda-hour-view-labels.component.d.ts +0 -8
  390. package/lib/components/date-planning/component/agenda/agenda-hour-view.component.d.ts +0 -7
  391. package/lib/components/date-planning/component/agenda/agenda-month-view.component.d.ts +0 -10
  392. package/lib/components/date-planning/component/agenda/agenda-select-event.component.d.ts +0 -12
  393. package/lib/components/date-planning/component/agenda/agenda-view.component.d.ts +0 -11
  394. package/lib/components/date-planning/component/agenda/agenda-week-select-view.component.d.ts +0 -10
  395. package/lib/components/date-planning/component/agenda/agenda-week-view.component.d.ts +0 -8
  396. package/lib/components/date-planning/component/agenda/view-select.component.d.ts +0 -11
  397. package/lib/components/date-planning/component/calendar/calendar-all-months.component.d.ts +0 -9
  398. package/lib/components/date-planning/component/calendar/calendar-all-years.component.d.ts +0 -9
  399. package/lib/components/date-planning/component/calendar/calendar-header.component.d.ts +0 -23
  400. package/lib/components/date-planning/component/calendar/calendar-view.component.d.ts +0 -31
  401. package/lib/components/date-planning/component/calendar/calendar.component.d.ts +0 -10
  402. package/lib/components/date-planning/date-planning.component.d.ts +0 -26
  403. package/lib/components/date-planning/date-planning.module.d.ts +0 -2
  404. package/lib/components/date-planning/style/material.scss +0 -5
  405. package/lib/components/docsign/component/signature/signature.component.d.ts +0 -16
  406. package/lib/components/docsign/component/signatures/signatures.component.d.ts +0 -12
  407. package/lib/components/docsign/docsign.component.d.ts +0 -94
  408. package/lib/components/docsign/docsign.module.d.ts +0 -2
  409. package/lib/components/key-pad/key-pad.component.d.ts +0 -38
  410. package/lib/components/key-pad/key-pad.module.d.ts +0 -2
  411. package/lib/components/layout-switcher/layout-switcher.component.d.ts +0 -16
  412. package/lib/components/layout-switcher/layout-switcher.module.d.ts +0 -2
  413. package/lib/components/linear-gauge/co-linear-gauge.component.d.ts +0 -11
  414. package/lib/components/linear-gauge/co-linear-gauge.module.d.ts +0 -2
  415. package/lib/components/send-method-dialog/components/layout-selection/layout-selection.component.d.ts +0 -19
  416. package/lib/components/send-method-dialog/components/layout-selection/layout-selection.module.d.ts +0 -2
  417. package/lib/components/send-method-dialog/components/printer-selection/printer-selection.component.d.ts +0 -19
  418. package/lib/components/send-method-dialog/components/printer-selection/printer-selection.module.d.ts +0 -2
  419. package/lib/components/send-method-dialog/components/send-method-email/send-method-email.component.d.ts +0 -14
  420. package/lib/components/send-method-dialog/components/send-method-email/send-method-email.module.d.ts +0 -2
  421. package/lib/components/send-method-dialog/components/send-method-pdf/send-method-pdf.component.d.ts +0 -8
  422. package/lib/components/send-method-dialog/components/send-method-pdf/send-method-pdf.module.d.ts +0 -2
  423. package/lib/components/send-method-dialog/components/send-method-printer/send-method-printer.component.d.ts +0 -12
  424. package/lib/components/send-method-dialog/components/send-method-printer/send-method-printer.module.d.ts +0 -2
  425. package/lib/components/send-method-dialog/components/signature-button/signature-button.component.d.ts +0 -12
  426. package/lib/components/send-method-dialog/components/signature-button/signature-button.module.d.ts +0 -2
  427. package/lib/components/send-method-dialog/model/email-address-viewmodel.d.ts +0 -5
  428. package/lib/components/send-method-dialog/send-method-dialog.component.d.ts +0 -70
  429. package/lib/components/send-method-dialog/send-method-dialog.module.d.ts +0 -2
  430. package/lib/components/send-method-dialog/send-method-params.interface.d.ts +0 -13
  431. package/lib/components/send-method-dialog/service/send-method.service.d.ts +0 -23
  432. package/lib/components/simple-tags/simple-tags.component.d.ts +0 -31
  433. package/lib/components/simple-tags/simple-tags.module.d.ts +0 -2
  434. package/lib/components/statusbar/statusbar-popup.component.d.ts +0 -21
  435. package/lib/components/statusbar/statusbar.component.d.ts +0 -26
  436. package/lib/components/statusbar/statusbar.module.d.ts +0 -2
  437. package/lib/components/stock/components/allocation-stock-history/allocation-stock-history.component.d.ts +0 -9
  438. package/lib/components/stock/components/order-commission-stock-history/order-commission-stock-history.component.d.ts +0 -9
  439. package/lib/components/stock/components/order-stock-history/order-stock-history.component.d.ts +0 -9
  440. package/lib/components/stock/components/order-stock-tab/order-stock-tab.component.d.ts +0 -11
  441. package/lib/components/stock/components/order-supply-stock-history/order-supply-stock-history.component.d.ts +0 -9
  442. package/lib/components/stock/components/order-tab/order-tab.component.d.ts +0 -20
  443. package/lib/components/stock/components/stock-history/stock-history.component.d.ts +0 -13
  444. package/lib/components/stock/components/stock-location/stock-location.component.d.ts +0 -50
  445. package/lib/components/stock/components/stock-prognose/stock-prognose.component.d.ts +0 -11
  446. package/lib/components/stock/components/stock-tab/stock-tab.component.d.ts +0 -9
  447. package/lib/components/stock/localization/translation.d.ts +0 -60
  448. package/lib/components/stock/stock-history-tabs/stock-history-tabs.component.d.ts +0 -7
  449. package/lib/components/stock/stock-information/stock-information.component.d.ts +0 -8
  450. package/lib/components/stock/stock-information-grid/stock-information-grid.component.d.ts +0 -75
  451. package/lib/components/stock/stock-tabs/stock-tabs.component.d.ts +0 -56
  452. package/lib/components/stock/stock-transfer/stock-change-amount.component.d.ts +0 -18
  453. package/lib/components/stock/stock-transfer/stock-transfer.component.d.ts +0 -42
  454. package/lib/components/stock/stock.component.d.ts +0 -57
  455. package/lib/components/stock/stock.module.d.ts +0 -2
  456. package/lib/components/stock-statusbar/stock-statusbar.component.d.ts +0 -4
  457. package/lib/components/stock-statusbar/stock-statusbar.module.d.ts +0 -2
  458. package/lib/components/tab-bar/tab-bar.component.d.ts +0 -21
  459. package/lib/components/tab-bar/tab-bar.module.d.ts +0 -2
  460. package/lib/components/tab-bar/tab.interface.d.ts +0 -5
  461. package/lib/enum/calendar-view.enum.d.ts +0 -6
  462. package/lib/enum/gauge-color.enum.d.ts +0 -8
  463. package/lib/enum/keyboard-code.enum.d.ts +0 -30
  464. package/lib/enum/language-code.enum.d.ts +0 -6
  465. package/lib/enum/thumb-three-way-state.d.ts +0 -6
  466. package/lib/localization/localization.module.d.ts +0 -2
  467. package/lib/localization/localize.pipe.d.ts +0 -7
  468. package/lib/localization/localize.service.d.ts +0 -7
  469. package/lib/localization/translation.d.ts +0 -2
  470. package/lib/model/agenda-event-per-day.model.d.ts +0 -5
  471. package/lib/model/agenda-event.model.d.ts +0 -16
  472. package/lib/model/agenda-null-objects.d.ts +0 -10
  473. package/lib/model/constant/all-months.d.ts +0 -2
  474. package/lib/model/date-range.d.ts +0 -7
  475. package/lib/model/day.model.d.ts +0 -8
  476. package/lib/model/icon-svg.d.ts +0 -4
  477. package/lib/model/month.model.d.ts +0 -5
  478. package/lib/model/send-method.d.ts +0 -7
  479. package/lib/model/settings.d.ts +0 -3
  480. package/lib/model/time-window.bo.d.ts +0 -13
  481. package/lib/model/week.model.d.ts +0 -4
  482. package/lib/model/weekday.model.d.ts +0 -16
  483. package/lib/pipe/array-number.pipe.d.ts +0 -4
  484. package/lib/pipe/master-pipes.d.ts +0 -1
  485. package/lib/pipe/ucfirst.pipe.d.ts +0 -4
  486. package/lib/service/dictionary.service.d.ts +0 -21
  487. package/lib/service/icon-cache.service.d.ts +0 -18
  488. package/lib/service/options.service.d.ts +0 -13
  489. package/lib/service/shared-connector.service.d.ts +0 -53
  490. package/lib/service/shared.service.d.ts +0 -18
  491. package/lib/service/stock.service.d.ts +0 -41
  492. package/lib/utils/calendar.utils.d.ts +0 -10
  493. package/lib/utils/date-utils.d.ts +0 -44
  494. package/lib/utils/function/not-nill.function.d.ts +0 -1
  495. package/lib/utils/map-utils.d.ts +0 -16
  496. package/lib/utils/string-utils.d.ts +0 -22
  497. /package/{lib → projects/sharedcomponents/src/lib}/components/date-planning/component/agenda/style/_theme.scss +0 -0
  498. /package/{lib → projects/sharedcomponents/src/lib}/components/date-planning/component/agenda/style/material.scss +0 -0
  499. /package/{lib → projects/sharedcomponents/src/lib}/components/date-planning/component/calendar/style/_layout.scss +0 -0
  500. /package/{lib → projects/sharedcomponents/src/lib}/components/date-planning/component/calendar/style/_material-definition.scss +0 -0
  501. /package/{lib → projects/sharedcomponents/src/lib}/components/date-planning/component/calendar/style/_theme.scss +0 -0
  502. /package/{lib → projects/sharedcomponents/src/lib}/components/date-planning/component/calendar/style/material.scss +0 -0
  503. /package/{lib → projects/sharedcomponents/src/lib}/components/date-planning/style/_layout.scss +0 -0
  504. /package/{lib → projects/sharedcomponents/src/lib}/components/date-planning/style/_material-definition.scss +0 -0
  505. /package/{lib → projects/sharedcomponents/src/lib}/components/date-planning/style/_theme.scss +0 -0
  506. /package/{lib → projects/sharedcomponents/src/lib}/components/docsign/component/signature/style/_layout.scss +0 -0
  507. /package/{lib → projects/sharedcomponents/src/lib}/components/docsign/component/signature/style/_material-definition.scss +0 -0
  508. /package/{lib → projects/sharedcomponents/src/lib}/components/docsign/component/signature/style/_theme.scss +0 -0
  509. /package/{lib → projects/sharedcomponents/src/lib}/components/docsign/component/signature/style/material.scss +0 -0
  510. /package/{lib → projects/sharedcomponents/src/lib}/components/docsign/component/signatures/style/_layout.scss +0 -0
  511. /package/{lib → projects/sharedcomponents/src/lib}/components/docsign/component/signatures/style/_material-definition.scss +0 -0
  512. /package/{lib → projects/sharedcomponents/src/lib}/components/docsign/component/signatures/style/_theme.scss +0 -0
  513. /package/{lib → projects/sharedcomponents/src/lib}/components/docsign/component/signatures/style/material.scss +0 -0
  514. /package/{lib → projects/sharedcomponents/src/lib}/components/docsign/style/_layout.scss +0 -0
  515. /package/{lib → projects/sharedcomponents/src/lib}/components/docsign/style/_material-definition.scss +0 -0
  516. /package/{lib → projects/sharedcomponents/src/lib}/components/docsign/style/_theme.scss +0 -0
  517. /package/{lib → projects/sharedcomponents/src/lib}/components/docsign/style/material.scss +0 -0
  518. /package/{lib → projects/sharedcomponents/src/lib}/components/key-pad/style/_layout.scss +0 -0
  519. /package/{lib → projects/sharedcomponents/src/lib}/components/key-pad/style/_material-definition.scss +0 -0
  520. /package/{lib → projects/sharedcomponents/src/lib}/components/key-pad/style/_theme.scss +0 -0
  521. /package/{lib → projects/sharedcomponents/src/lib}/components/key-pad/style/material.scss +0 -0
  522. /package/{lib → projects/sharedcomponents/src/lib}/components/layout-switcher/style/_layout.scss +0 -0
  523. /package/{lib → projects/sharedcomponents/src/lib}/components/layout-switcher/style/_material-definition.scss +0 -0
  524. /package/{lib → projects/sharedcomponents/src/lib}/components/layout-switcher/style/_theme.scss +0 -0
  525. /package/{lib → projects/sharedcomponents/src/lib}/components/layout-switcher/style/material.scss +0 -0
  526. /package/{lib → projects/sharedcomponents/src/lib}/components/linear-gauge/style/_layout.scss +0 -0
  527. /package/{lib → projects/sharedcomponents/src/lib}/components/linear-gauge/style/_material-definition.scss +0 -0
  528. /package/{lib → projects/sharedcomponents/src/lib}/components/linear-gauge/style/_theme.scss +0 -0
  529. /package/{lib → projects/sharedcomponents/src/lib}/components/linear-gauge/style/material.scss +0 -0
  530. /package/{lib → projects/sharedcomponents/src/lib}/components/login/style/_layout.scss +0 -0
  531. /package/{lib → projects/sharedcomponents/src/lib}/components/login/style/_material-definition.scss +0 -0
  532. /package/{lib → projects/sharedcomponents/src/lib}/components/login/style/_theme.scss +0 -0
  533. /package/{lib → projects/sharedcomponents/src/lib}/components/login/style/material.scss +0 -0
  534. /package/{lib → projects/sharedcomponents/src/lib}/components/screen-config-generator/style/_layout.scss +0 -0
  535. /package/{lib → projects/sharedcomponents/src/lib}/components/screen-config-generator/style/_material-definition.scss +0 -0
  536. /package/{lib → projects/sharedcomponents/src/lib}/components/screen-config-generator/style/_theme.scss +0 -0
  537. /package/{lib → projects/sharedcomponents/src/lib}/components/screen-config-generator/style/material.scss +0 -0
  538. /package/{lib → projects/sharedcomponents/src/lib}/components/send-method-dialog/components/layout-selection/style/_layout.scss +0 -0
  539. /package/{lib → projects/sharedcomponents/src/lib}/components/send-method-dialog/components/layout-selection/style/_material-definition.scss +0 -0
  540. /package/{lib → projects/sharedcomponents/src/lib}/components/send-method-dialog/components/layout-selection/style/_theme.scss +0 -0
  541. /package/{lib → projects/sharedcomponents/src/lib}/components/send-method-dialog/components/layout-selection/style/material.scss +0 -0
  542. /package/{lib → projects/sharedcomponents/src/lib}/components/send-method-dialog/components/printer-selection/style/_layout.scss +0 -0
  543. /package/{lib → projects/sharedcomponents/src/lib}/components/send-method-dialog/components/printer-selection/style/_material-definition.scss +0 -0
  544. /package/{lib → projects/sharedcomponents/src/lib}/components/send-method-dialog/components/printer-selection/style/_theme.scss +0 -0
  545. /package/{lib → projects/sharedcomponents/src/lib}/components/send-method-dialog/components/printer-selection/style/material.scss +0 -0
  546. /package/{lib → projects/sharedcomponents/src/lib}/components/send-method-dialog/components/send-method-email/style/_layout.scss +0 -0
  547. /package/{lib → projects/sharedcomponents/src/lib}/components/send-method-dialog/components/send-method-email/style/_material-definition.scss +0 -0
  548. /package/{lib → projects/sharedcomponents/src/lib}/components/send-method-dialog/components/send-method-email/style/_theme.scss +0 -0
  549. /package/{lib → projects/sharedcomponents/src/lib}/components/send-method-dialog/components/send-method-email/style/material.scss +0 -0
  550. /package/{lib → projects/sharedcomponents/src/lib}/components/send-method-dialog/components/send-method-pdf/style/_layout.scss +0 -0
  551. /package/{lib → projects/sharedcomponents/src/lib}/components/send-method-dialog/components/send-method-pdf/style/_material-definition.scss +0 -0
  552. /package/{lib → projects/sharedcomponents/src/lib}/components/send-method-dialog/components/send-method-pdf/style/_theme.scss +0 -0
  553. /package/{lib → projects/sharedcomponents/src/lib}/components/send-method-dialog/components/send-method-pdf/style/material.scss +0 -0
  554. /package/{lib → projects/sharedcomponents/src/lib}/components/send-method-dialog/components/send-method-printer/style/_layout.scss +0 -0
  555. /package/{lib → projects/sharedcomponents/src/lib}/components/send-method-dialog/components/send-method-printer/style/_material-definition.scss +0 -0
  556. /package/{lib → projects/sharedcomponents/src/lib}/components/send-method-dialog/components/send-method-printer/style/_theme.scss +0 -0
  557. /package/{lib → projects/sharedcomponents/src/lib}/components/send-method-dialog/components/send-method-printer/style/material.scss +0 -0
  558. /package/{lib → projects/sharedcomponents/src/lib}/components/send-method-dialog/components/signature-button/style/_layout.scss +0 -0
  559. /package/{lib → projects/sharedcomponents/src/lib}/components/send-method-dialog/components/signature-button/style/_material-definition.scss +0 -0
  560. /package/{lib → projects/sharedcomponents/src/lib}/components/send-method-dialog/components/signature-button/style/_theme.scss +0 -0
  561. /package/{lib → projects/sharedcomponents/src/lib}/components/send-method-dialog/components/signature-button/style/material.scss +0 -0
  562. /package/{lib → projects/sharedcomponents/src/lib}/components/send-method-dialog/style/_layout.scss +0 -0
  563. /package/{lib → projects/sharedcomponents/src/lib}/components/send-method-dialog/style/_material-definition.scss +0 -0
  564. /package/{lib → projects/sharedcomponents/src/lib}/components/send-method-dialog/style/_theme.scss +0 -0
  565. /package/{lib → projects/sharedcomponents/src/lib}/components/send-method-dialog/style/material.scss +0 -0
  566. /package/{lib → projects/sharedcomponents/src/lib}/components/simple-tags/style/_layout.scss +0 -0
  567. /package/{lib → projects/sharedcomponents/src/lib}/components/simple-tags/style/_material-definition.scss +0 -0
  568. /package/{lib → projects/sharedcomponents/src/lib}/components/simple-tags/style/_theme.scss +0 -0
  569. /package/{lib → projects/sharedcomponents/src/lib}/components/simple-tags/style/material.scss +0 -0
  570. /package/{lib → projects/sharedcomponents/src/lib}/components/statusbar/style/_layout.scss +0 -0
  571. /package/{lib → projects/sharedcomponents/src/lib}/components/statusbar/style/_material-definition.scss +0 -0
  572. /package/{lib → projects/sharedcomponents/src/lib}/components/statusbar/style/_theme.scss +0 -0
  573. /package/{lib → projects/sharedcomponents/src/lib}/components/statusbar/style/material.scss +0 -0
  574. /package/{lib → projects/sharedcomponents/src/lib}/components/stock/style/_layout.scss +0 -0
  575. /package/{lib → projects/sharedcomponents/src/lib}/components/stock/style/_material-definition.scss +0 -0
  576. /package/{lib → projects/sharedcomponents/src/lib}/components/stock/style/_theme.scss +0 -0
  577. /package/{lib → projects/sharedcomponents/src/lib}/components/stock/style/material.scss +0 -0
  578. /package/{lib → projects/sharedcomponents/src/lib}/components/stock-statusbar/style/_layout.scss +0 -0
  579. /package/{lib → projects/sharedcomponents/src/lib}/components/stock-statusbar/style/_material-definition.scss +0 -0
  580. /package/{lib → projects/sharedcomponents/src/lib}/components/stock-statusbar/style/_theme.scss +0 -0
  581. /package/{lib → projects/sharedcomponents/src/lib}/components/stock-statusbar/style/material.scss +0 -0
  582. /package/{lib → projects/sharedcomponents/src/lib}/components/tab-bar/style/_layout.scss +0 -0
  583. /package/{lib → projects/sharedcomponents/src/lib}/components/tab-bar/style/_material-definition.scss +0 -0
  584. /package/{lib → projects/sharedcomponents/src/lib}/components/tab-bar/style/_theme.scss +0 -0
  585. /package/{lib → projects/sharedcomponents/src/lib}/components/tab-bar/style/material.scss +0 -0
  586. /package/{lib → projects/sharedcomponents/src/lib}/components/tags/component/style/_layout.scss +0 -0
  587. /package/{lib → projects/sharedcomponents/src/lib}/components/tags/component/style/_material-definition.scss +0 -0
  588. /package/{lib → projects/sharedcomponents/src/lib}/components/tags/component/style/_theme.scss +0 -0
  589. /package/{lib → projects/sharedcomponents/src/lib}/components/tags/component/style/material.scss +0 -0
  590. /package/{lib → projects/sharedcomponents/src/lib}/components/tags/component/tag-join-label/style/_layout.scss +0 -0
  591. /package/{lib → projects/sharedcomponents/src/lib}/components/tags/component/tag-join-label/style/_material-definition.scss +0 -0
  592. /package/{lib → projects/sharedcomponents/src/lib}/components/tags/component/tag-join-label/style/_theme.scss +0 -0
  593. /package/{lib → projects/sharedcomponents/src/lib}/components/tags/component/tag-join-label/style/material.scss +0 -0
  594. /package/{lib → projects/sharedcomponents/src/lib}/style/_mixin.scss +0 -0
  595. /package/{lib → projects/sharedcomponents/src/lib}/style/_variables.scss +0 -0
  596. /package/{lib → projects/sharedcomponents/src/lib}/style/sharedcomponents-globals.scss +0 -0
@@ -1 +0,0 @@
1
- {"version":3,"file":"colijnit-sharedcomponents.umd.js","sources":["../../../node_modules/tslib/tslib.es6.mjs","../../../projects/sharedcomponents/src/lib/components/docsign/docsign.component.ts","../../../projects/sharedcomponents/src/lib/components/docsign/component/signature/signature.component.ts","../../../projects/sharedcomponents/src/lib/components/docsign/component/signatures/signatures.component.ts","../../../projects/sharedcomponents/src/lib/components/docsign/docsign.module.ts","../../../projects/sharedcomponents/src/lib/enum/language-code.enum.ts","../../../projects/sharedcomponents/src/lib/utils/string-utils.ts","../../../projects/sharedcomponents/src/lib/assets/dictionary/text.properties.ts","../../../projects/sharedcomponents/src/lib/service/dictionary.service.ts","../../../projects/sharedcomponents/src/lib/model/settings.ts","../../../projects/sharedcomponents/src/lib/service/options.service.ts","../../../projects/sharedcomponents/src/lib/service/shared-connector.service.ts","../../../projects/sharedcomponents/src/lib/service/stock.service.ts","../../../projects/sharedcomponents/src/lib/localization/translation.ts","../../../projects/sharedcomponents/src/lib/localization/localize.service.ts","../../../projects/sharedcomponents/src/lib/components/stock/stock.component.ts","../../../projects/sharedcomponents/src/lib/components/stock/stock-information/stock-information.component.ts","../../../projects/sharedcomponents/src/lib/model/icon-svg.ts","../../../projects/sharedcomponents/src/lib/service/icon-cache.service.ts","../../../projects/sharedcomponents/src/lib/enum/icon.enum.ts","../../../projects/sharedcomponents/src/lib/components/stock/stock-information-grid/stock-information-grid.component.ts","../../../projects/sharedcomponents/src/lib/components/stock/stock-transfer/stock-transfer.component.ts","../../../projects/sharedcomponents/src/lib/service/shared.service.ts","../../../projects/sharedcomponents/src/lib/components/send-method-dialog/service/send-method.service.ts","../../../projects/sharedcomponents/src/lib/model/send-method.ts","../../../projects/sharedcomponents/src/lib/components/send-method-dialog/send-method-dialog.component.ts","../../../projects/sharedcomponents/src/lib/components/send-method-dialog/model/email-address-viewmodel.ts","../../../projects/sharedcomponents/src/lib/components/send-method-dialog/components/send-method-email/send-method-email.component.ts","../../../projects/sharedcomponents/src/lib/components/send-method-dialog/components/layout-selection/layout-selection.component.ts","../../../projects/sharedcomponents/src/lib/components/send-method-dialog/components/layout-selection/layout-selection.module.ts","../../../projects/sharedcomponents/src/lib/components/send-method-dialog/components/signature-button/signature-button.component.ts","../../../projects/sharedcomponents/src/lib/components/send-method-dialog/components/signature-button/signature-button.module.ts","../../../projects/sharedcomponents/src/lib/components/send-method-dialog/components/send-method-email/send-method-email.module.ts","../../../projects/sharedcomponents/src/lib/components/send-method-dialog/components/send-method-printer/send-method-printer.component.ts","../../../projects/sharedcomponents/src/lib/components/send-method-dialog/components/printer-selection/printer-selection.component.ts","../../../projects/sharedcomponents/src/lib/components/send-method-dialog/components/printer-selection/printer-selection.module.ts","../../../projects/sharedcomponents/src/lib/components/send-method-dialog/components/send-method-printer/send-method-printer.module.ts","../../../projects/sharedcomponents/src/lib/components/send-method-dialog/components/send-method-pdf/send-method-pdf.component.ts","../../../projects/sharedcomponents/src/lib/components/send-method-dialog/components/send-method-pdf/send-method-pdf.module.ts","../../../projects/sharedcomponents/src/lib/components/send-method-dialog/send-method-dialog.module.ts","../../../projects/sharedcomponents/src/lib/components/stock/stock-transfer/stock-change-amount.component.ts","../../../projects/sharedcomponents/src/lib/components/stock/components/stock-tab/stock-tab.component.ts","../../../projects/sharedcomponents/src/lib/components/stock/components/order-tab/order-tab.component.ts","../../../projects/sharedcomponents/src/lib/components/stock/stock-tabs/stock-tabs.component.ts","../../../projects/sharedcomponents/src/lib/components/stock/stock-history-tabs/stock-history-tabs.component.ts","../../../projects/sharedcomponents/src/lib/components/stock/components/order-stock-tab/order-stock-tab.component.ts","../../../projects/sharedcomponents/src/lib/components/stock/components/stock-location/stock-location.component.ts","../../../projects/sharedcomponents/src/lib/components/stock/components/stock-history/stock-history.component.ts","../../../projects/sharedcomponents/src/lib/components/tab-bar/tab-bar.component.ts","../../../projects/sharedcomponents/src/lib/components/tab-bar/tab-bar.module.ts","../../../projects/sharedcomponents/src/lib/components/stock/components/order-supply-stock-history/order-supply-stock-history.component.ts","../../../projects/sharedcomponents/src/lib/components/stock/components/order-commission-stock-history/order-commission-stock-history.component.ts","../../../projects/sharedcomponents/src/lib/components/stock/components/order-stock-history/order-stock-history.component.ts","../../../projects/sharedcomponents/src/lib/components/stock/components/allocation-stock-history/allocation-stock-history.component.ts","../../../projects/sharedcomponents/src/lib/enum/gauge-color.enum.ts","../../../projects/sharedcomponents/src/lib/components/linear-gauge/co-linear-gauge.component.ts","../../../projects/sharedcomponents/src/lib/components/linear-gauge/co-linear-gauge.module.ts","../../../projects/sharedcomponents/src/lib/components/statusbar/statusbar-popup.component.ts","../../../projects/sharedcomponents/src/lib/components/statusbar/statusbar.component.ts","../../../projects/sharedcomponents/src/lib/components/statusbar/statusbar.module.ts","../../../projects/sharedcomponents/src/lib/components/stock-statusbar/stock-statusbar.component.ts","../../../projects/sharedcomponents/src/lib/components/stock-statusbar/stock-statusbar.module.ts","../../../projects/sharedcomponents/src/lib/components/stock/components/stock-prognose/stock-prognose.component.ts","../../../projects/sharedcomponents/src/lib/localization/localize.pipe.ts","../../../projects/sharedcomponents/src/lib/localization/localization.module.ts","../../../projects/sharedcomponents/src/lib/components/stock/stock.module.ts","../../../projects/sharedcomponents/src/lib/components/stock/localization/translation.ts","../../../projects/sharedcomponents/src/lib/enum/keyboard-code.enum.ts","../../../projects/sharedcomponents/src/lib/components/key-pad/key-pad.component.ts","../../../projects/sharedcomponents/src/lib/components/key-pad/key-pad.module.ts","../../../projects/sharedcomponents/src/lib/components/layout-switcher/layout-switcher.component.ts","../../../projects/sharedcomponents/src/lib/components/layout-switcher/layout-switcher.module.ts","../../../projects/sharedcomponents/src/lib/components/date-planning/date-planning.component.ts","../../../projects/sharedcomponents/src/lib/components/date-planning/component/calendar/calendar-all-years.component.ts","../../../projects/sharedcomponents/src/lib/enum/month.enum.ts","../../../projects/sharedcomponents/src/lib/model/constant/all-months.ts","../../../projects/sharedcomponents/src/lib/components/date-planning/component/calendar/calendar-all-months.component.ts","../../../projects/sharedcomponents/src/lib/components/date-planning/component/calendar/calendar-header.component.ts","../../../projects/sharedcomponents/src/lib/enum/calendar-view.enum.ts","../../../projects/sharedcomponents/src/lib/components/date-planning/component/calendar/calendar.component.ts","../../../projects/sharedcomponents/src/lib/pipe/array-number.pipe.ts","../../../projects/sharedcomponents/src/lib/utils/function/not-nill.function.ts","../../../projects/sharedcomponents/src/lib/model/date-range.ts","../../../projects/sharedcomponents/src/lib/utils/date-utils.ts","../../../projects/sharedcomponents/src/lib/components/date-planning/component/calendar/calendar-view.component.ts","../../../projects/sharedcomponents/src/lib/model/weekday.model.ts","../../../projects/sharedcomponents/src/lib/model/week.model.ts","../../../projects/sharedcomponents/src/lib/utils/calendar.utils.ts","../../../projects/sharedcomponents/src/lib/model/agenda-event.model.ts","../../../projects/sharedcomponents/src/lib/model/agenda-event-per-day.model.ts","../../../projects/sharedcomponents/src/lib/model/month.model.ts","../../../projects/sharedcomponents/src/lib/model/day.model.ts","../../../projects/sharedcomponents/src/lib/model/agenda-null-objects.ts","../../../projects/sharedcomponents/src/lib/components/date-planning/component/agenda/agenda-header.component.ts","../../../projects/sharedcomponents/src/lib/components/date-planning/component/agenda/agenda-view.component.ts","../../../projects/sharedcomponents/src/lib/components/date-planning/component/agenda/agenda-base-view.component.ts","../../../projects/sharedcomponents/src/lib/components/date-planning/component/agenda/agenda-month-view.component.ts","../../../projects/sharedcomponents/src/lib/components/date-planning/component/agenda/agenda-day-view.component.ts","../../../projects/sharedcomponents/src/lib/components/date-planning/component/agenda/agenda-week-view.component.ts","../../../projects/sharedcomponents/src/lib/components/date-planning/component/agenda/agenda-week-select-view.component.ts","../../../projects/sharedcomponents/src/lib/components/date-planning/component/agenda/agenda-hour-view.component.ts","../../../projects/sharedcomponents/src/lib/components/date-planning/component/agenda/agenda-hour-cell.component.ts","../../../projects/sharedcomponents/src/lib/components/date-planning/component/agenda/agenda-hour-view-labels.component.ts","../../../projects/sharedcomponents/src/lib/components/date-planning/component/agenda/agenda-half-hour-cell.component.ts","../../../projects/sharedcomponents/src/lib/components/date-planning/component/agenda/agenda-events.component.ts","../../../projects/sharedcomponents/src/lib/components/date-planning/component/agenda/agenda-event.component.ts","../../../projects/sharedcomponents/src/lib/pipe/ucfirst.pipe.ts","../../../projects/sharedcomponents/src/lib/pipe/master-pipes.ts","../../../projects/sharedcomponents/src/lib/enum/thumb-three-way-state.ts","../../../projects/sharedcomponents/src/lib/utils/map-utils.ts","../../../projects/sharedcomponents/src/lib/components/date-planning/component/agenda/view-select.component.ts","../../../projects/sharedcomponents/src/lib/components/date-planning/component/agenda/agenda-select-event.component.ts","../../../projects/sharedcomponents/src/lib/components/date-planning/date-planning.module.ts","../../../projects/sharedcomponents/src/lib/components/simple-tags/simple-tags.component.ts","../../../projects/sharedcomponents/src/lib/components/simple-tags/simple-tags.module.ts","../../../projects/sharedcomponents/src/public-api.ts","../../../projects/sharedcomponents/src/colijnit-sharedcomponents.ts"],"sourcesContent":["/******************************************************************************\nCopyright (c) Microsoft Corporation.\n\nPermission to use, copy, modify, and/or distribute this software for any\npurpose with or without fee is hereby granted.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\nPERFORMANCE OF THIS SOFTWARE.\n***************************************************************************** */\n/* global Reflect, Promise, SuppressedError, Symbol */\n\nvar extendStatics = function(d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\n return extendStatics(d, b);\n};\n\nexport function __extends(d, b) {\n if (typeof b !== \"function\" && b !== null)\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n}\n\nexport var __assign = function() {\n __assign = Object.assign || function __assign(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\n }\n return t;\n }\n return __assign.apply(this, arguments);\n}\n\nexport function __rest(s, e) {\n var t = {};\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\n t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\n t[p[i]] = s[p[i]];\n }\n return t;\n}\n\nexport function __decorate(decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n}\n\nexport function __param(paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n}\n\nexport function __esDecorate(ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {\n function accept(f) { if (f !== void 0 && typeof f !== \"function\") throw new TypeError(\"Function expected\"); return f; }\n var kind = contextIn.kind, key = kind === \"getter\" ? \"get\" : kind === \"setter\" ? \"set\" : \"value\";\n var target = !descriptorIn && ctor ? contextIn[\"static\"] ? ctor : ctor.prototype : null;\n var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});\n var _, done = false;\n for (var i = decorators.length - 1; i >= 0; i--) {\n var context = {};\n for (var p in contextIn) context[p] = p === \"access\" ? {} : contextIn[p];\n for (var p in contextIn.access) context.access[p] = contextIn.access[p];\n context.addInitializer = function (f) { if (done) throw new TypeError(\"Cannot add initializers after decoration has completed\"); extraInitializers.push(accept(f || null)); };\n var result = (0, decorators[i])(kind === \"accessor\" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);\n if (kind === \"accessor\") {\n if (result === void 0) continue;\n if (result === null || typeof result !== \"object\") throw new TypeError(\"Object expected\");\n if (_ = accept(result.get)) descriptor.get = _;\n if (_ = accept(result.set)) descriptor.set = _;\n if (_ = accept(result.init)) initializers.unshift(_);\n }\n else if (_ = accept(result)) {\n if (kind === \"field\") initializers.unshift(_);\n else descriptor[key] = _;\n }\n }\n if (target) Object.defineProperty(target, contextIn.name, descriptor);\n done = true;\n};\n\nexport function __runInitializers(thisArg, initializers, value) {\n var useValue = arguments.length > 2;\n for (var i = 0; i < initializers.length; i++) {\n value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);\n }\n return useValue ? value : void 0;\n};\n\nexport function __propKey(x) {\n return typeof x === \"symbol\" ? x : \"\".concat(x);\n};\n\nexport function __setFunctionName(f, name, prefix) {\n if (typeof name === \"symbol\") name = name.description ? \"[\".concat(name.description, \"]\") : \"\";\n return Object.defineProperty(f, \"name\", { configurable: true, value: prefix ? \"\".concat(prefix, \" \", name) : name });\n};\n\nexport function __metadata(metadataKey, metadataValue) {\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\n}\n\nexport function __awaiter(thisArg, _arguments, P, generator) {\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n}\n\nexport function __generator(thisArg, body) {\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\n function verb(n) { return function (v) { return step([n, v]); }; }\n function step(op) {\n if (f) throw new TypeError(\"Generator is already executing.\");\n while (g && (g = 0, op[0] && (_ = 0)), _) try {\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\n if (y = 0, t) op = [op[0] & 2, t.value];\n switch (op[0]) {\n case 0: case 1: t = op; break;\n case 4: _.label++; return { value: op[1], done: false };\n case 5: _.label++; y = op[1]; op = [0]; continue;\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\n default:\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\n if (t[2]) _.ops.pop();\n _.trys.pop(); continue;\n }\n op = body.call(thisArg, _);\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\n }\n}\n\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n});\n\nexport function __exportStar(m, o) {\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\n}\n\nexport function __values(o) {\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\n if (m) return m.call(o);\n if (o && typeof o.length === \"number\") return {\n next: function () {\n if (o && i >= o.length) o = void 0;\n return { value: o && o[i++], done: !o };\n }\n };\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\n}\n\nexport function __read(o, n) {\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\n if (!m) return o;\n var i = m.call(o), r, ar = [], e;\n try {\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\n }\n catch (error) { e = { error: error }; }\n finally {\n try {\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\n }\n finally { if (e) throw e.error; }\n }\n return ar;\n}\n\n/** @deprecated */\nexport function __spread() {\n for (var ar = [], i = 0; i < arguments.length; i++)\n ar = ar.concat(__read(arguments[i]));\n return ar;\n}\n\n/** @deprecated */\nexport function __spreadArrays() {\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\n r[k] = a[j];\n return r;\n}\n\nexport function __spreadArray(to, from, pack) {\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\n if (ar || !(i in from)) {\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\n ar[i] = from[i];\n }\n }\n return to.concat(ar || Array.prototype.slice.call(from));\n}\n\nexport function __await(v) {\n return this instanceof __await ? (this.v = v, this) : new __await(v);\n}\n\nexport function __asyncGenerator(thisArg, _arguments, generator) {\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\n function fulfill(value) { resume(\"next\", value); }\n function reject(value) { resume(\"throw\", value); }\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\n}\n\nexport function __asyncDelegator(o) {\n var i, p;\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: false } : f ? f(v) : v; } : f; }\n}\n\nexport function __asyncValues(o) {\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\n var m = o[Symbol.asyncIterator], i;\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\n}\n\nexport function __makeTemplateObject(cooked, raw) {\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\n return cooked;\n};\n\nvar __setModuleDefault = Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n};\n\nexport function __importStar(mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n}\n\nexport function __importDefault(mod) {\n return (mod && mod.__esModule) ? mod : { default: mod };\n}\n\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\n}\n\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\n}\n\nexport function __classPrivateFieldIn(state, receiver) {\n if (receiver === null || (typeof receiver !== \"object\" && typeof receiver !== \"function\")) throw new TypeError(\"Cannot use 'in' operator on non-object\");\n return typeof state === \"function\" ? receiver === state : state.has(receiver);\n}\n\nexport function __addDisposableResource(env, value, async) {\n if (value !== null && value !== void 0) {\n if (typeof value !== \"object\" && typeof value !== \"function\") throw new TypeError(\"Object expected.\");\n var dispose;\n if (async) {\n if (!Symbol.asyncDispose) throw new TypeError(\"Symbol.asyncDispose is not defined.\");\n dispose = value[Symbol.asyncDispose];\n }\n if (dispose === void 0) {\n if (!Symbol.dispose) throw new TypeError(\"Symbol.dispose is not defined.\");\n dispose = value[Symbol.dispose];\n }\n if (typeof dispose !== \"function\") throw new TypeError(\"Object not disposable.\");\n env.stack.push({ value: value, dispose: dispose, async: async });\n }\n else if (async) {\n env.stack.push({ async: true });\n }\n return value;\n}\n\nvar _SuppressedError = typeof SuppressedError === \"function\" ? SuppressedError : function (error, suppressed, message) {\n var e = new Error(message);\n return e.name = \"SuppressedError\", e.error = error, e.suppressed = suppressed, e;\n};\n\nexport function __disposeResources(env) {\n function fail(e) {\n env.error = env.hasError ? new _SuppressedError(e, env.error, \"An error was suppressed during disposal.\") : e;\n env.hasError = true;\n }\n function next() {\n while (env.stack.length) {\n var rec = env.stack.pop();\n try {\n var result = rec.dispose && rec.dispose.call(rec.value);\n if (rec.async) return Promise.resolve(result).then(next, function(e) { fail(e); return next(); });\n }\n catch (e) {\n fail(e);\n }\n }\n if (env.hasError) throw env.error;\n }\n return next();\n}\n\nexport default {\n __extends,\n __assign,\n __rest,\n __decorate,\n __param,\n __metadata,\n __awaiter,\n __generator,\n __createBinding,\n __exportStar,\n __values,\n __read,\n __spread,\n __spreadArrays,\n __spreadArray,\n __await,\n __asyncGenerator,\n __asyncDelegator,\n __asyncValues,\n __makeTemplateObject,\n __importStar,\n __importDefault,\n __classPrivateFieldGet,\n __classPrivateFieldSet,\n __classPrivateFieldIn,\n __addDisposableResource,\n __disposeResources,\n};\n","import {Component, ElementRef, EventEmitter, HostBinding, Input, Output, ViewChild, ViewEncapsulation} from \"@angular/core\";\r\nimport {animate, state, style, transition, trigger} from \"@angular/animations\";\r\nimport {PDFDocument} from \"pdf-lib\";\r\nimport * as PDFJS from \"pdfjs-dist/legacy/build/pdf\";\r\nimport pdfjsWorker from \"pdfjs-dist/build/pdf.worker.entry\";\r\nimport {TextItem} from \"pdfjs-dist/types/src/display/api\";\r\n\r\nexport interface TextDimension {\r\n x: number,\r\n y: number,\r\n width: number,\r\n height: number,\r\n page: number\r\n}\r\n\r\n@Component({\r\n selector: \"co-docsign\",\r\n template: `\r\n <iframe #iframe></iframe>\r\n <co-signatures *ngIf=\"showSignatures\" @showHideSignature\r\n [showFirstSignature]=\"showSigBuyer\"\r\n [firstSignatureTitle]=\"firstSignatureLabel\"\r\n [showSecondSignature]=\"showSigSeller\"\r\n [secondSignatureTitle]=\"secondSignatureLabel\"\r\n [saveButtonLabel]=\"saveButtonLabel\"\r\n [clearButtonLabel]=\"clearButtonLabel\"\r\n (saveFirstSignature)=\"saveFirstSignature($event)\"\r\n (saveSecondSignature)=\"saveSecondSignature($event)\"\r\n ></co-signatures>\r\n <input type=\"button\" *ngIf=\"(showSigBuyer || showSigSeller) && !showSignatures\" class=\"button button-sign-document\"\r\n [value]=\"signDocumentButtonLabel\"\r\n (click)=\"showSignatures = true\"\r\n />\r\n <input type=\"button\" class=\"button button-cancel\"\r\n [value]=\"cancelButtonLabel\"\r\n (click)=\"cancelClick.emit($event)\"\r\n />\r\n `,\r\n animations: [\r\n trigger(\"showHideSignature\", [\r\n state(\"void\", style({transform: \"translate(-50%, -50%) scale(0)\"})),\r\n state(\"*\", style({transform: \"translate(-50%, -50%) scale(1)\"})),\r\n transition(\"void <=> *\", animate(\"200ms ease-in-out\")),\r\n ])\r\n ],\r\n encapsulation: ViewEncapsulation.None\r\n})\r\nexport class DocsignComponent {\r\n @ViewChild(\"iframe\", { read: ElementRef })\r\n public iframe: ElementRef;\r\n\r\n /**\r\n * Load an existing [[PDFDocument]]. The input data can be provided in\r\n * multiple formats:\r\n *\r\n * | Type | Contents |\r\n * | ------------- | ------------------------------------------------------ |\r\n * | `string` | A base64 encoded string (or data URI) containing a PDF |\r\n * | `Uint8Array` | The raw bytes of a PDF |\r\n * | `ArrayBuffer` | The raw bytes of a PDF |\r\n *\r\n * For example:\r\n * ```js\r\n * import { PDFDocument } from 'pdf-lib'\r\n *\r\n * // pdf=string\r\n * const base64 =\r\n * 'JVBERi0xLjcKJYGBgYEKCjUgMCBvYmoKPDwKL0ZpbHRlciAvRmxhdGVEZWNvZGUKL0xlbm' +\r\n * 'd0aCAxMDQKPj4Kc3RyZWFtCniccwrhMlAAwaJ0Ln2P1Jyy1JLM5ERdc0MjCwUjE4WQNC4Q' +\r\n * '6cNlCFZkqGCqYGSqEJLLZWNuYGZiZmbkYuZsZmlmZGRgZmluDCQNzc3NTM2NzdzMXMxMjQ' +\r\n * 'ztFEKyuEK0uFxDuAAOERdVCmVuZHN0cmVhbQplbmRvYmoKCjYgMCBvYmoKPDwKL0ZpbHRl' +\r\n * 'ciAvRmxhdGVEZWNvZGUKL1R5cGUgL09ialN0bQovTiA0Ci9GaXJzdCAyMAovTGVuZ3RoID' +\r\n * 'IxNQo+PgpzdHJlYW0KeJxVj9GqwjAMhu/zFHkBzTo3nCCCiiKIHPEICuJF3cKoSCu2E8/b' +\r\n * '20wPIr1p8v9/8kVhgilmGfawX2CGaVrgcAi0/bsy0lrX7IGWpvJ4iJYEN3gEmrrGBlQwGs' +\r\n * 'HHO9VBX1wNrxAqMX87RBD5xpJuddqwd82tjAHxzV1U5LPgy52DKXWnr1Lheg+j/c/pzGVr' +\r\n * 'iqV0VlwZPXGPCJjElw/ybkwUmeoWgxesDXGhHJC/D/iikp1Av80ptKU0FdBEe25pPihAM1' +\r\n * 'u6ytgaaWfs2Hrz35CJT1+EWmAKZW5kc3RyZWFtCmVuZG9iagoKNyAwIG9iago8PAovU2l6' +\r\n * 'ZSA4Ci9Sb290IDIgMCBSCi9GaWx0ZXIgL0ZsYXRlRGVjb2RlCi9UeXBlIC9YUmVmCi9MZW' +\r\n * '5ndGggMzgKL1cgWyAxIDIgMiBdCi9JbmRleCBbIDAgOCBdCj4+CnN0cmVhbQp4nBXEwREA' +\r\n * 'EBAEsCwz3vrvRmOOyyOoGhZdutHN2MT55fIAVocD+AplbmRzdHJlYW0KZW5kb2JqCgpzdG' +\r\n * 'FydHhyZWYKNTEwCiUlRU9G'\r\n *\r\n * const dataUri = 'data:application/pdf;base64,' + base64\r\n *\r\n * const pdfDoc1 = await PDFDocument.load(base64)\r\n * const pdfDoc2 = await PDFDocument.load(dataUri)\r\n *\r\n * // pdf=Uint8Array\r\n * import fs from 'fs'\r\n * const uint8Array = fs.readFileSync('with_update_sections.pdf')\r\n * const pdfDoc3 = await PDFDocument.load(uint8Array)\r\n *\r\n * // pdf=ArrayBuffer\r\n * const url = 'https://pdf-lib.js.org/assets/with_update_sections.pdf'\r\n * const arrayBuffer = await fetch(url).then(res => res.arrayBuffer())\r\n * const pdfDoc4 = await PDFDocument.load(arrayBuffer)\r\n *\r\n * ```\r\n *\r\n * @param pdf The input data containing a PDF document.\r\n * @param options The options to be used when loading the document.\r\n * @returns Resolves with a document loaded from the input.\r\n */\r\n @Input()\r\n public set pdf(value: any) {\r\n if (value) {\r\n this._handlePdfData(value);\r\n this._openPDF();\r\n }\r\n }\r\n\r\n public get pdf(): any {\r\n return this._pdf;\r\n }\r\n\r\n @Input()\r\n public firstSignatureLabel: string;\r\n\r\n @Input()\r\n public firstSignatureField: string;\r\n\r\n @Input()\r\n public secondSignatureLabel: string;\r\n\r\n @Input()\r\n public secondSignatureField: string;\r\n\r\n @Input()\r\n public saveButtonLabel: string = 'SAVE';\r\n\r\n @Input()\r\n public clearButtonLabel: string = 'CLEAR';\r\n\r\n @Input()\r\n public signDocumentButtonLabel: string = 'SIGN_DOCUMENT';\r\n\r\n @Input()\r\n public cancelButtonLabel: string = 'CANCEL';\r\n\r\n @Output()\r\n public pdfSaved: EventEmitter<string> = new EventEmitter<string>();\r\n\r\n @Output()\r\n public cancelClick: EventEmitter<MouseEvent> = new EventEmitter<MouseEvent>();\r\n\r\n @HostBinding('class.co-docsign')\r\n public showClass() {\r\n return true;\r\n }\r\n\r\n public showSignaturePopup: boolean = false;\r\n public showSigBuyer: boolean = false;\r\n public sigBuyerPosition: TextDimension;\r\n public showSigSeller: boolean = false;\r\n public sigSellerPosition: TextDimension;\r\n public showSignatures: boolean = false;\r\n\r\n public pdfDoc: PDFDocument;\r\n\r\n private _pdf: any;\r\n\r\n public saveFirstSignature(sig: string): void {\r\n this._saveSignature(sig, this.sigBuyerPosition);\r\n this.showSigBuyer = false;\r\n this._savePdf();\r\n }\r\n\r\n public saveSecondSignature(sig: string): void {\r\n this._saveSignature(sig, this.sigSellerPosition);\r\n this.showSigSeller = false;\r\n this._savePdf();\r\n }\r\n\r\n private async _openPDF(): Promise<void> {\r\n // first create reader to check signatures\r\n this._checkSignatures();\r\n\r\n this.pdfDoc = await PDFDocument.load(this._pdf, {\r\n updateMetadata: false\r\n });\r\n const pdfDataUri = await this.pdfDoc.saveAsBase64({ dataUri: true });\r\n this.iframe.nativeElement.src = pdfDataUri;\r\n }\r\n\r\n private async _savePdf(): Promise<void> {\r\n if (!this.showSigBuyer && !this.showSigSeller) {\r\n // ready, save the pdf and emit result\r\n const result = await this.pdfDoc.saveAsBase64();\r\n this.pdfSaved.next(result);\r\n }\r\n }\r\n\r\n private async _checkSignatures(): Promise<void> {\r\n let pdfWorkerSrc;\r\n if (window.hasOwnProperty('pdfWorkerSrc') &&\r\n typeof (window as any).pdfWorkerSrc === 'string' &&\r\n (window as any).pdfWorkerSrc) {\r\n pdfWorkerSrc = (window as any).pdfWorkerSrc;\r\n }\r\n else {\r\n pdfWorkerSrc = pdfjsWorker;\r\n }\r\n PDFJS.GlobalWorkerOptions.workerSrc = pdfWorkerSrc;\r\n const pdfReader = await PDFJS.getDocument(this._pdf).promise;\r\n const numPages = pdfReader.numPages;\r\n for (let i = 0; i < numPages; i++) {\r\n const page = await pdfReader.getPage(i + 1);\r\n const text = await page.getTextContent();\r\n page.cleanup();\r\n if (this.firstSignatureField) {\r\n this.sigBuyerPosition = this._getPositionSignature(text, this.firstSignatureField);\r\n if (this.sigBuyerPosition.width > 0 && this.sigBuyerPosition.height > 0) {\r\n this.sigBuyerPosition.page = i;\r\n this.showSigBuyer = true;\r\n }\r\n }\r\n if (this.secondSignatureField) {\r\n this.sigSellerPosition = this._getPositionSignature(text, this.secondSignatureField);\r\n if (this.sigSellerPosition.width > 0 && this.sigSellerPosition.height > 0) {\r\n this.sigSellerPosition.page = i;\r\n this.showSigSeller = true;\r\n }\r\n }\r\n }\r\n }\r\n\r\n private _getPositionSignature(textItem: any, signatureField: string): TextDimension {\r\n const sigItem: TextItem = <TextItem>textItem.items.find((i: any) => i.str.toLowerCase() === signatureField.toLowerCase());\r\n if (sigItem) {\r\n textItem.items.slice(textItem.items.indexOf(sigItem), 1);\r\n return {\r\n x: sigItem.transform[4],\r\n y: sigItem.transform[5],\r\n width: sigItem.width,\r\n height: sigItem.height,\r\n page: 0\r\n };\r\n }\r\n return {x: 0, y: 0, width: 0, height: 0, page: 0}\r\n }\r\n\r\n private async _saveSignature(sig: string, dimensions: TextDimension): Promise<void> {\r\n const jpgImage = await this.pdfDoc.embedPng(sig);\r\n const page = await this.pdfDoc.getPage(dimensions.page);\r\n page.drawImage(jpgImage, {\r\n x: ((dimensions.x + (dimensions.width / 2)) - (200 / 2)),\r\n y: ((dimensions.y + (dimensions.height / 2)) - (100 / 2)),\r\n width: 200,\r\n height: 100\r\n });\r\n }\r\n\r\n private _handlePdfData(pdfData: any) {\r\n if (typeof pdfData === 'string') {\r\n this._preparePDF(pdfData);\r\n } else {\r\n this._pdf = pdfData;\r\n }\r\n }\r\n\r\n private _preparePDF(base64: string): void {\r\n var binary_string = window.atob(base64);\r\n var len = binary_string.length;\r\n var bytes = new Uint8Array(len);\r\n for (var i = 0; i < len; i++) {\r\n bytes[i] = binary_string.charCodeAt(i);\r\n }\r\n this._pdf = bytes;\r\n }\r\n}\r\n","import {Component, ElementRef, EventEmitter, HostBinding, Input, OnInit, Output, ViewChild, ViewEncapsulation} from \"@angular/core\";\r\nimport SignaturePad from \"signature_pad\";\r\n\r\n@Component({\r\n selector: \"co-signature\",\r\n template: `\r\n <div class=\"signature-wrapper\">\r\n <div class=\"signature-header\">\r\n <span *ngIf=\"title\" class=\"title\" [textContent]=\"title\"></span>\r\n <div class=\"button-wrapper\">\r\n <input type=\"button\" (click)=\"handleSave($event)\" [value]=\"saveButtonLabel\"/>\r\n <input type=\"button\" (click)=\"handleClear($event)\" [value]=\"clearButtonLabel\">\r\n </div>\r\n </div>\r\n <div class=\"canvas\">\r\n <canvas #signature></canvas>\r\n </div>\r\n </div>\r\n `,\r\n encapsulation: ViewEncapsulation.None\r\n})\r\nexport class SignatureComponent {\r\n @ViewChild(\"signature\", {read: ElementRef}) set content(content: ElementRef) {\r\n if (content) {\r\n this.signatureCanvas = content;\r\n this._initCanvas();\r\n }\r\n }\r\n\r\n @Input()\r\n public title: string;\r\n\r\n @Input()\r\n public saveButtonLabel: string = 'SAVE';\r\n\r\n @Input()\r\n public clearButtonLabel: string = 'CLEAR';\r\n\r\n @Output()\r\n public save: EventEmitter<string> = new EventEmitter<string>();\r\n\r\n @HostBinding(\"class.co-signature\")\r\n public showClass() {\r\n return true;\r\n }\r\n\r\n public signature: SignaturePad;\r\n public signatureCanvas: ElementRef;\r\n\r\n public handleSave(event: MouseEvent): void {\r\n // save canvas as svg\r\n // const sig: string = this.signature.toDataURL(\"image/svg+xml\");\r\n const sig: string = this.signature.toDataURL(\"image/png\");\r\n // emit signature string\r\n this.save.next(sig);\r\n }\r\n\r\n public handleClear(event: MouseEvent): void {\r\n if (this.signature) {\r\n this.signature.clear();\r\n }\r\n }\r\n\r\n private _initCanvas(): void {\r\n if (this.signatureCanvas && this.signatureCanvas.nativeElement) {\r\n this.signature = new SignaturePad(this.signatureCanvas.nativeElement);\r\n setTimeout(() => {\r\n this._resizeSignatureCanvas(this.signature, this.signatureCanvas);\r\n });\r\n }\r\n }\r\n\r\n private _resizeSignatureCanvas(signature: SignaturePad, signatureCanvas: ElementRef): void {\r\n const imageBeforeResize: string = signature.toDataURL();\r\n const ratio: number = Math.max(window.devicePixelRatio || 1, 1);\r\n signatureCanvas.nativeElement.width = signatureCanvas.nativeElement.offsetWidth * ratio;\r\n signatureCanvas.nativeElement.height = signatureCanvas.nativeElement.offsetHeight * ratio;\r\n signatureCanvas.nativeElement.getContext(\"2d\").scale(ratio, ratio);\r\n signature.fromDataURL(imageBeforeResize);\r\n }\r\n\r\n}\r\n","import {Component, EventEmitter, HostBinding, Input, Output, ViewEncapsulation} from \"@angular/core\";\r\n\r\n@Component({\r\n selector: \"co-signatures\",\r\n template: `\r\n <co-signature *ngIf=\"showFirstSignature\"\r\n [title]=\"firstSignatureTitle\"\r\n [saveButtonLabel]=\"saveButtonLabel\"\r\n [clearButtonLabel]=\"clearButtonLabel\"\r\n (save)=\"saveFirstSignature.emit($event)\"></co-signature>\r\n <co-signature *ngIf=\"showSecondSignature\"\r\n [title]=\"secondSignatureTitle\"\r\n [saveButtonLabel]=\"saveButtonLabel\"\r\n [clearButtonLabel]=\"clearButtonLabel\"\r\n (save)=\"saveSecondSignature.emit($event)\"></co-signature>\r\n `,\r\n encapsulation: ViewEncapsulation.None\r\n})\r\nexport class SignaturesComponent {\r\n\r\n @Input()\r\n public showFirstSignature: boolean = false;\r\n\r\n @Input()\r\n public firstSignatureTitle: string;\r\n\r\n @Input()\r\n public showSecondSignature: boolean = false;\r\n\r\n @Input()\r\n public secondSignatureTitle: string;\r\n\r\n @Input()\r\n public saveButtonLabel: string = 'SAVE';\r\n\r\n @Input()\r\n public clearButtonLabel: string = 'CLEAR';\r\n\r\n @Output()\r\n public saveFirstSignature: EventEmitter<string> = new EventEmitter<string>();\r\n\r\n @Output()\r\n public saveSecondSignature: EventEmitter<string> = new EventEmitter<string>();\r\n\r\n @HostBinding(\"class.co-signatures\")\r\n public showClass() {\r\n return true;\r\n }\r\n\r\n}\r\n","import {NgModule} from \"@angular/core\";\r\nimport {CommonModule} from \"@angular/common\";\r\nimport {DocsignComponent} from \"./docsign.component\";\r\nimport {SignatureComponent} from \"./component/signature/signature.component\";\r\nimport {SignaturesComponent} from \"./component/signatures/signatures.component\";\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule\r\n ],\r\n declarations: [\r\n DocsignComponent,\r\n SignatureComponent,\r\n SignaturesComponent\r\n ],\r\n exports: [\r\n DocsignComponent\r\n ]\r\n})\r\nexport class DocsignModule {\r\n\r\n}\r\n","export enum LanguageCode {\r\n Dutch = \"nl-NL\",\r\n English = \"en-GB\",\r\n German = \"de-DE\",\r\n French = \"fr-FR\",\r\n}\r\n","// Static utility functions holder related to strings.\r\nexport class StringUtils {\r\n\r\n /**\r\n * Returns a new string where given placeholder in given source string are replaced by given replacement texts.\r\n *\r\n * Example usage:\r\n *\r\n * source = \"ABCDABCD\"\r\n * placeholder = \"BC\"\r\n * replacementTexts = \"Z\", \"Z\" (REST arguments)\r\n * OUTPUT = \"AZDAZD\"\r\n *\r\n * @param {string} source\r\n * @param {string} placeholder\r\n * @param {string} replacementTexts If only one is given, this function replaces all placeholders with that single replacementText.\r\n * If more are given, placeholders without a corresponding replacementText will remain their original placeholder characters.\r\n */\r\n public static ReplaceOccurrencesIn(source: string, placeholder: string, ...replacementTexts: string[]): string {\r\n // parameter guards\r\n if (!(source)) {\r\n return undefined;\r\n }\r\n if (!placeholder || replacementTexts.length === 0) {\r\n return source;\r\n }\r\n let outString: string = source;\r\n // one replacementText means replace for all\r\n if (replacementTexts.length === 1) {\r\n // \"g\" is the g flag to replace globally\r\n outString = outString.replace(placeholder, replacementTexts[0]);\r\n } else {\r\n // replace occurence i by replacementTexts[i], one at a time in loop (there might be a faster way..)\r\n for (let i: number = 0, len: number = replacementTexts.length; i < len; i++) {\r\n outString = outString.replace(placeholder, replacementTexts[i]);\r\n }\r\n }\r\n return outString;\r\n }\r\n\r\n // Returns the given argument as a string. Returns given defaultValue if conversion of argument to string was impossible.\r\n public static ParseString(arg: any, defaultValue: string = \"\"): string {\r\n if (!StringUtils.IsString(arg)) {\r\n if (arg && typeof arg.toString === \"function\") {\r\n arg = arg.toString();\r\n } else {\r\n arg = defaultValue;\r\n }\r\n }\r\n return arg;\r\n }\r\n\r\n public static IsString(str: any): boolean {\r\n return typeof str === 'string';\r\n }\r\n\r\n // Returns whether given str is a string and has a length > 0.\r\n public static IsStringWithLength(str: string): boolean {\r\n return str && StringUtils.IsString(str) && str.length > 0;\r\n }\r\n\r\n // Returns given string, escaped for use as string literal in regular expressions.\r\n private static _escapeRegExp(str: string): string {\r\n return str;// .replace(/[\\-\\[\\]\\/\\{\\}\\(\\)\\*\\+\\?\\.\\\\\\^$\\|]/g, \"\\\\$&\");\r\n }\r\n\r\n}\r\n","export class Dictionary {\r\n public strings: {} = {\r\n \"nl\": {},\r\n \"de\": {},\r\n \"fr\": {},\r\n \"en\": {},\r\n };\r\n}\r\n","import {Injectable} from \"@angular/core\";\r\nimport {LanguageCode} from \"../enum/language-code.enum\";\r\nimport {StringUtils} from \"../utils/string-utils\";\r\nimport {Dictionary} from \"../assets/dictionary/text.properties\";\r\n\r\n// The localization service, providing peers with text translation functionality.\r\n@Injectable({\r\n providedIn: \"root\"\r\n})\r\nexport class DictionaryService {\r\n private readonly dictionaryUrl: string = \"js/browser/res/dictionary/\";\r\n\r\n public get language(): string {\r\n return this._language;\r\n }\r\n\r\n public set rootUrl(value: string) {\r\n this._rootUrl = value;\r\n this._dictBasePath = this._rootUrl + \"/\" + this.dictionaryUrl;\r\n }\r\n\r\n // public dictionaryLoaded: Subject<void> = new Subject();\r\n\r\n private _dictBasePath: string;\r\n private _rootUrl: string;\r\n // private _dictionaryPromise: Map<LanguageCode, Promise<{ [key: string]: string }>> = new Map<LanguageCode, Promise<{ [key: string]: string }>>();\r\n private _dictionaries: Map<string, { [key: string]: string }> = new Map<string, { [key: string]: string }>();\r\n private _language: string;\r\n\r\n // Some dictionary values have one or more '|~' texts in them, meant to be replaced with client-side given texts.\r\n private readonly _placeholder: string = \"|~\";\r\n\r\n constructor(\r\n ) {\r\n }\r\n\r\n // Loads the dictionary for given language in memory.\r\n public async setDictionary(language: string): Promise<void> {\r\n this._language = language || LanguageCode.Dutch;\r\n this._loadDictionary();\r\n }\r\n\r\n private _loadDictionary() {\r\n if (!this._dictionaries.has(this._language)) {\r\n const dictionary: Dictionary = new Dictionary();\r\n // eslint-disable-next-line no-magic-numbers\r\n if (dictionary.strings[this._language.substr(0, 2).toLowerCase()] !== undefined) {\r\n // eslint-disable-next-line no-magic-numbers\r\n this._dictionaries.set(this._language, dictionary.strings[this._language.substr(0, 2).toLowerCase()]);\r\n }\r\n }\r\n }\r\n\r\n /**\r\n * Returns the localized text for the given dictionary key.\r\n * @param {string} key\r\n * @param {boolean} [upperCaseFirst = true] False for first letter lowercase, true for first letter uppercase for returned dict val\r\n * @param {string[]} replacementTexts Rest params for replacement of '|~' in returned dict value\r\n * @returns {string} The translated text for given dictionary key\r\n */\r\n public get(key: string, upperCaseFirst: boolean = true, ...replacementTexts: string[]): string {\r\n if (!StringUtils.IsStringWithLength(key)) {\r\n return key || \"\";\r\n }\r\n\r\n if (this.language === undefined) {\r\n this._language = LanguageCode.Dutch;\r\n this._loadDictionary();\r\n }\r\n\r\n let text: string = this._dictionaries.get(this.language)[key];\r\n text = StringUtils.IsStringWithLength(text) ? text : key;\r\n\r\n if (upperCaseFirst) {\r\n text = text.charAt(0).toUpperCase() + text.slice(1);\r\n } else {\r\n text = text.charAt(0).toLowerCase() + text.slice(1);\r\n }\r\n\r\n if (replacementTexts.length > 0) {\r\n text = StringUtils.ReplaceOccurrencesIn(text, this._placeholder, ...replacementTexts);\r\n }\r\n\r\n return text;\r\n }\r\n}\r\n","import {Options} from '@colijnit/ioneconnector/build/model/options';\r\n\r\nexport class SharedSettings extends Options {\r\n\r\n}\r\n","import {Injectable} from \"@angular/core\";\r\nimport {BehaviorSubject} from \"rxjs\";\r\nimport {DictionaryService} from \"./dictionary.service\";\r\nimport {SharedSettings} from '../model/settings';\r\n\r\n@Injectable({\r\n providedIn: \"root\"\r\n})\r\nexport class OptionsService {\r\n\r\n public optionsInitialized: BehaviorSubject<boolean> = new BehaviorSubject<boolean>(false);\r\n\r\n public set options(value: any) {\r\n this._options = value;\r\n }\r\n\r\n public get options(): any {\r\n return this._options;\r\n }\r\n\r\n public optionsLoaded: BehaviorSubject<boolean> = new BehaviorSubject(false);\r\n\r\n private _options: any;\r\n\r\n constructor(private _dictionary: DictionaryService) {\r\n }\r\n\r\n public async createSettingsFromObject(obj: any): Promise<void> {\r\n if (!this.options) {\r\n this.options = new SharedSettings();\r\n }\r\n this.options = Object.assign(this.options, obj);\r\n this.optionsLoaded.next(true);\r\n }\r\n\r\n public async initialize(options: any): Promise<void> {\r\n if (options) {\r\n await this.createSettingsFromObject(options);\r\n await this._dictionary.setDictionary(this.options.languageCode);\r\n this.optionsInitialized.next(true);\r\n }\r\n }\r\n}\r\n","import {Articles} from '@colijnit/articleapi/build/articles';\r\nimport {Sharedapi} from '@colijnit/sharedapi/build/sharedapi';\r\nimport {Injectable} from '@angular/core';\r\nimport {GetStockHistoryRequest} from '@colijnit/articleapi/build/model/get-stock-history-request';\r\nimport {ArticleStock as ArticleStockBo} from '@colijnit/articleapi/build/model/article-stock.bo';\r\nimport {ArticleStock} from '@colijnit/articleapi/build/model/article-stock';\r\nimport {StockHistoryBo} from '@colijnit/articleapi/build/model/stock-history.bo';\r\nimport {ArticleStockManagement} from '@colijnit/articleapi/build/model/article-stock-management';\r\nimport {ArticleDetailsBo} from '@colijnit/articleapi/build/model/article-details.bo';\r\nimport {StockStatus} from '@colijnit/articleapi/build/model/stock-status.bo';\r\nimport {StockManagementWarehouses} from '@colijnit/articleapi/build/model/stock-management-warehouses.bo';\r\nimport {StockLocation} from '@colijnit/articleapi/build/model/stock-location.bo';\r\nimport {ArticleTransaction} from '@colijnit/articleapi/build/model/article-transaction';\r\nimport {ArticleTransaction as ArticleTransactionBo} from '@colijnit/articleapi/build/model/article-transaction.bo';\r\nimport {OptionsService} from './options.service';\r\nimport {MainApi} from '@colijnit/mainapi';\r\nimport {Printer} from '@colijnit/mainapi/build/model/printer.bo';\r\nimport {DataServiceResponseData} from '@colijnit/ioneconnector/build/model/data-service-response-data';\r\nimport {SendMethod} from '@colijnit/mainapi/build/model/send-method.bo';\r\nimport {StockForecast} from \"@colijnit/articleapi/build/model/stock-forecast.bo\";\r\nimport {BusinessObjectFactory} from '@colijnit/ioneconnector/build/service/business-object-factory';\r\nimport {TagCategory} from \"@colijnit/mainapi/build/enum/tab-category.enum\";\r\nimport {TagTreeItem} from \"@colijnit/mainapi/build/model/tag-tree-item.bo\";\r\nimport {ArticleExtended} from \"@colijnit/articleapi/build/model/article-extended.bo\";\r\nimport {ArticleExtendedRequest} from \"@colijnit/articleapi/build/model/article-extended-request\";\r\nimport {ArticleFlat} from \"@colijnit/articleapi/build/model/article-flat.bo\";\r\n\r\n@Injectable({\r\n providedIn: \"root\"\r\n})\r\nexport class SharedConnectorService {\r\n public articleConnector: Articles;\r\n public sharedConnector: Sharedapi;\r\n public mainConnector: MainApi;\r\n\r\n private _boFactory: BusinessObjectFactory = new BusinessObjectFactory();\r\n\r\n\r\n constructor(\r\n private _optionsService: OptionsService,\r\n ) {\r\n }\r\n\r\n public async connect(): Promise<void> {\r\n this.sharedConnector = new Sharedapi(this._optionsService.options);\r\n await this.sharedConnector.connect();\r\n this.articleConnector = new Articles(this._optionsService.options);\r\n this.mainConnector = new MainApi(this._optionsService.options);\r\n }\r\n\r\n public async getAllPrinters(): Promise<Printer[]> {\r\n return new Promise((resolve: Function, reject: Function) => {\r\n return this.mainConnector.listAllPrinters().then((result: DataServiceResponseData) => {\r\n if (result.validationResult && result.validationResult.success) {\r\n if (result.resultObject) {\r\n resolve(this._boFactory.makeBOArrayFromRawBackendDataArray(Printer, result.resultObject));\r\n }\r\n } else {\r\n reject(result.validationMessagesAsString);\r\n }\r\n });\r\n });\r\n }\r\n\r\n public async getSendMethods(): Promise<SendMethod[]> {\r\n return new Promise((resolve: Function, reject: Function) => {\r\n return this.mainConnector.getSendMethods().then((result: DataServiceResponseData) => {\r\n if (result.validationResult && result.validationResult.success) {\r\n if (result.resultObject && result.resultObject.result) {\r\n resolve(this._boFactory.makeBOArrayFromRawBackendDataArray(SendMethod, result.resultObject.result));\r\n }\r\n } else {\r\n reject(result.validationMessagesAsString);\r\n }\r\n });\r\n });\r\n }\r\n\r\n public async getScreenConfigTree(): Promise<any> {\r\n return new Promise((resolve: Function, reject: Function) => {\r\n return this.sharedConnector.getConfigTreeObject('T', 'JS').then((result: any) => {\r\n if (result.validationResult && result.validationResult.success) {\r\n if (result.resultObjects) {\r\n resolve(result.resultObjects);\r\n }\r\n } else {\r\n reject(result.validationMessagesAsString);\r\n }\r\n });\r\n });\r\n }\r\n\r\n public async getScreenConfigSubRubric(parentRubricId: number, configId: number, fixedKey: string): Promise<any> {\r\n return new Promise((resolve: Function, reject: Function) => {\r\n return this.sharedConnector.getConfigSubRubric(parentRubricId, configId, fixedKey).then((result: any) => {\r\n if (result.validationResult && result.validationResult.success) {\r\n if (result.resultObjects) {\r\n resolve(result.resultObjects);\r\n }\r\n } else {\r\n reject(result.validationMessagesAsString);\r\n }\r\n });\r\n });\r\n }\r\n\r\n public async getTagsFullTree(category: TagCategory, includeTags: boolean): Promise<TagTreeItem[]> {\r\n return new Promise((resolve: Function, reject: Function) => {\r\n return this.mainConnector.getTagsFullTree(category, includeTags).then((result: any) => {\r\n if (result.validationResult && result.validationResult.success) {\r\n if (result.resultObjects) {\r\n resolve(this._boFactory.makeBOArrayFromRawBackendDataArray(TagTreeItem, result.resultObjects));\r\n }\r\n } else {\r\n reject(result.validationMessagesAsString);\r\n }\r\n });\r\n });\r\n }\r\n\r\n public async getDocumentContent(id: number, thumbnail: boolean = true): Promise<string> {\r\n return new Promise((resolve: Function, reject: Function) => {\r\n return this.mainConnector.getDocumentContent(id, thumbnail).then((result: DataServiceResponseData) => {\r\n if (result.validationResult && result.validationResult.success) {\r\n resolve(result.resultObject.documentContent);\r\n } else {\r\n reject(result.validationMessagesAsString);\r\n }\r\n });\r\n });\r\n }\r\n\r\n // public async getPrintStockStickers(request: PrintStockStickers): Promise<PrintStockStickers> {\r\n // return new Promise((resolve: Function, reject: Function) => {\r\n // return this.sharedConnector.getPrintStockStickers(request).then((result: DataServiceResponseData) => {\r\n // if (result.validationResult && result.validationResult.success) {\r\n // if (result.resultObject) {\r\n // resolve(this._boFactory.makeWithRawBackendData(PrintStockStickers, result.resultObject));\r\n // }\r\n // } else {\r\n // reject(result.validationMessagesAsString);\r\n // }\r\n // })\r\n // })\r\n // }\r\n\r\n // public async getPrintPriceStickers(request: PrintPriceStickers): Promise<PrintPriceStickers> {\r\n // return new Promise((resolve: Function, reject: Function) => {\r\n // return this.sharedConnector.printPriceStickers(request).then((result: DataServiceResponseData) => {\r\n // if (result.validationResult && result.validationResult.success) {\r\n // if (result.resultObject) {\r\n // resolve(this._boFactory.makeWithRawBackendData(PrintPriceStickers, result.resultObject));\r\n // }\r\n // } else {\r\n // reject(result.validationMessagesAsString);\r\n // }\r\n // })\r\n // })\r\n // }\r\n\r\n public async getStockHistory(request: GetStockHistoryRequest): Promise<StockHistoryBo[]> {\r\n return new Promise((resolve: Function, reject: Function) => {\r\n return this.articleConnector.getStockHistory(request).then((result: DataServiceResponseData) => {\r\n if (result.validationResult && result.validationResult.success) {\r\n if (result.resultObject && result.resultObject.hasOwnProperty(\"stockHistory\")) {\r\n resolve(this._boFactory.makeBOArrayFromRawBackendDataArray(StockHistoryBo, result.resultObject.stockHistory));\r\n }\r\n } else {\r\n reject(result.validationMessagesAsString);\r\n }\r\n })\r\n })\r\n }\r\n\r\n public async getStockInformation(data: ArticleStock): Promise<ArticleStockBo[]> {\r\n return new Promise((resolve: Function, reject: Function) => {\r\n return this.articleConnector.getStockInformation(data).then((result: DataServiceResponseData) => {\r\n if (result.validationResult && result.validationResult.success) {\r\n if (result.resultObjects) {\r\n resolve(this._boFactory.makeBOArrayFromRawBackendDataArray(ArticleStockBo, result.resultObjects));\r\n }\r\n } else {\r\n reject(result.validationMessagesAsString);\r\n }\r\n });\r\n });\r\n }\r\n\r\n public async getArtStockStatus(goodId: number, branchNo?: string, requestedAmount?: number, warehouseId?: number): Promise<number> {\r\n return new Promise((resolve: Function, reject: Function) => {\r\n return this.articleConnector.getArtStockStatus(goodId, branchNo, requestedAmount, warehouseId).then((result: DataServiceResponseData) => {\r\n if (result.validationResult && result.validationResult.success) {\r\n if (result.resultObject) {\r\n resolve(result.resultObject);\r\n }\r\n } else {\r\n reject(result.validationMessagesAsString);\r\n }\r\n });\r\n });\r\n }\r\n\r\n public async getArticleFlat(sku: string): Promise<ArticleFlat> {\r\n return new Promise((resolve: Function, reject: Function) => {\r\n return this.articleConnector.getArticleFlat(sku).then((result: DataServiceResponseData) => {\r\n if (result.validationResult && result.validationResult.success) {\r\n if (result.resultObject) {\r\n resolve(result.resultObject);\r\n }\r\n } else {\r\n reject(result.validationMessagesAsString);\r\n }\r\n });\r\n });\r\n }\r\n\r\n public async searchArticles(request: ArticleExtendedRequest): Promise<ArticleExtended[]> {\r\n return new Promise((resolve: Function, reject: Function) => {\r\n return this.articleConnector.searchArticles(request, false).then((result: DataServiceResponseData) => {\r\n if (result.validationResult && result.validationResult.success) {\r\n if (result.resultObjects) {\r\n resolve(this._boFactory.makeBOArrayFromRawBackendDataArray(StockManagementWarehouses, result.resultObjects));\r\n }\r\n } else {\r\n reject(result.validationMessagesAsString);\r\n }\r\n });\r\n });\r\n }\r\n\r\n public async getStockManagementWarehouses(): Promise<StockManagementWarehouses[]> {\r\n return new Promise((resolve: Function, reject: Function) => {\r\n return this.articleConnector.getStockManagementWarehouses().then((result: DataServiceResponseData) => {\r\n if (result.validationResult && result.validationResult.success) {\r\n if (result.resultObjects) {\r\n resolve(this._boFactory.makeBOArrayFromRawBackendDataArray(StockManagementWarehouses, result.resultObjects));\r\n }\r\n } else {\r\n reject(result.validationMessagesAsString);\r\n }\r\n });\r\n });\r\n }\r\n\r\n public async getStockManagementLocations(warehouseNo: number): Promise<StockLocation[]> {\r\n return new Promise((resolve: Function, reject: Function) => {\r\n return this.articleConnector.getStockManagementLocations(warehouseNo).then((result: DataServiceResponseData) => {\r\n if (result.validationResult && result.validationResult.success) {\r\n if (result.resultObjects) {\r\n resolve(this._boFactory.makeBOArrayFromRawBackendDataArray(StockLocation, result.resultObjects));\r\n }\r\n } else {\r\n reject(result.validationMessagesAsString);\r\n }\r\n });\r\n });\r\n }\r\n\r\n // public async getOrderConfirmationDefaultSendMethod(relationId: number): Promise<number> {\r\n // return new Promise((resolve: Function, reject: Function) => {\r\n // return this.sharedConnector.getOrderConfirmationDefaultSendMethod(relationId).then((result: DataServiceResponseData) => {\r\n // if (result.validationResult && result.validationResult.success) {\r\n // if (result.resultObject) {\r\n // resolve (result.resultObject);\r\n // }\r\n // } else {\r\n // reject(result.validationMessagesAsString);\r\n // }\r\n // });\r\n // });\r\n // }\r\n\r\n // public async getDefaultEmailAddressListForOrderConfirmation(transactionUUID: string): Promise<string[]> {\r\n // return new Promise((resolve: Function, reject: Function) => {\r\n // return this.sharedConnector.getDefaultEmailAddressListForOrderConfirmation(transactionUUID).then((result: DataServiceResponseData) => {\r\n // if (result.validationResult && result.validationResult.success) {\r\n // if (result.resultObject) {\r\n // resolve (result.resultObject);\r\n // }\r\n // } else {\r\n // reject(result.validationMessagesAsString);\r\n // }\r\n // });\r\n // });\r\n // }\r\n\r\n // public async getPurchaseOrderEmailLayouts(transactionUUID: string): Promise<StockStickersEmailLayouts[]> {\r\n // return new Promise((resolve: Function, reject: Function) => {\r\n // return this.sharedConnector.getPurchaseOrderEmailLayouts(transactionUUID).then((result: DataServiceResponseData) => {\r\n // if (result.validationResult && result.validationResult.success) {\r\n // if (result.resultObject) {\r\n // resolve (result.resultObject);\r\n // }\r\n // } else {\r\n // reject(result.validationMessagesAsString);\r\n // }\r\n // });\r\n // });\r\n // }\r\n\r\n public async getArticleDetails(data: ArticleStockManagement): Promise<ArticleDetailsBo[]> {\r\n return new Promise((resolve: Function, reject: Function) => {\r\n return this.articleConnector.getArticleDetails(data).then((result: DataServiceResponseData) => {\r\n if (result.validationResult && result.validationResult.success) {\r\n if (result.resultObjects) {\r\n resolve(this._boFactory.makeBOArrayFromRawBackendDataArray(ArticleDetailsBo, result.resultObjects));\r\n }\r\n } else {\r\n reject(result.validationMessagesAsString);\r\n }\r\n });\r\n });\r\n }\r\n\r\n public async updateArticleDetails(data: ArticleDetailsBo): Promise<boolean> {\r\n return new Promise((resolve: Function, reject: Function) => {\r\n return this.articleConnector.updateArticleDetails(data).then(async (result: DataServiceResponseData) => {\r\n if (result.validationResult && result.validationResult.success) {\r\n await this.commit();\r\n resolve(true);\r\n } else {\r\n reject(result.validationMessagesAsString);\r\n }\r\n });\r\n });\r\n }\r\n public async lockArticleDetails(data: ArticleStockManagement): Promise<boolean> {\r\n return new Promise((resolve: Function, reject: Function) => {\r\n return this.articleConnector.lockArticleDetails(data).then(async (result: DataServiceResponseData) => {\r\n if (result.validationResult && result.validationResult.success) {\r\n await this.commit();\r\n resolve(true);\r\n } else {\r\n reject(result.validationMessagesAsString);\r\n }\r\n });\r\n });\r\n }\r\n\r\n\r\n public async getStockStatus(): Promise<StockStatus[]> {\r\n return new Promise((resolve: Function, reject: Function) => {\r\n return this.articleConnector.getStockState().then((result: DataServiceResponseData) => {\r\n if (result.validationResult && result.validationResult.success) {\r\n if (result.resultObjects) {\r\n resolve(this._boFactory.makeBOArrayFromRawBackendDataArray(StockStatus, result.resultObjects));\r\n }\r\n } else {\r\n reject(result.validationMessagesAsString);\r\n }\r\n });\r\n });\r\n }\r\n\r\n // public async getStockStickerTemplates(data: StockStickersPrintLayouts): Promise<StockStickersPrintLayouts[]> {\r\n // return new Promise((resolve: Function, reject: Function) => {\r\n // return this.mainConnector.getStockStickerPrintLayouts(data).then((result: DataServiceResponseData) => {\r\n // if (result.validationResult && result.validationResult.success) {\r\n // if (result.resultObject) {\r\n // resolve(this._boFactory.makeBOArrayFromRawBackendDataArray(StockStickersPrintLayouts, result.resultObject));\r\n // }\r\n // } else {\r\n // reject(result.validationMessagesAsString);\r\n // }\r\n // });\r\n // });\r\n // }\r\n\r\n public async getArticleTransaction(data: ArticleTransaction): Promise<ArticleTransactionBo[]> {\r\n return new Promise((resolve: Function, reject: Function) => {\r\n return this.articleConnector.getArticleTransaction(data).then((result: DataServiceResponseData) => {\r\n if (result.validationResult && result.validationResult.success) {\r\n if (result.resultObjects) {\r\n resolve(this._boFactory.makeBOArrayFromRawBackendDataArray(ArticleTransactionBo, result.resultObjects));\r\n }\r\n } else {\r\n reject(result.validationMessagesAsString);\r\n }\r\n });\r\n });\r\n }\r\n\r\n public async getStockPrognose(goodId: number, warehouseNumber: number): Promise<StockForecast[]> {\r\n return new Promise((resolve: Function, reject: Function) => {\r\n return this.articleConnector.getStockForecast(goodId, warehouseNumber).then((result: DataServiceResponseData) => {\r\n if (result.validationResult && result.validationResult.success) {\r\n if (result.resultObjects) {\r\n resolve(result.resultObjects);\r\n }\r\n } else {\r\n reject(result.validationMessagesAsString);\r\n }\r\n });\r\n });\r\n }\r\n\r\n public commit(): Promise<DataServiceResponseData> {\r\n return this.articleConnector.commit();\r\n }\r\n\r\n}\r\n","import {EventEmitter, Injectable} from \"@angular/core\";\r\nimport {PrintStockStickers} from \"@colijnit/sharedapi/build/model/print-stock-stickers\";\r\nimport {GetStockHistoryRequest} from \"@colijnit/articleapi/build/model/get-stock-history-request\";\r\nimport {ArticleStock as ArticleStockBo} from \"@colijnit/articleapi/build/model/article-stock.bo\";\r\nimport {ArticleStock} from \"@colijnit/articleapi/build/model/article-stock\";\r\nimport {StockHistoryBo} from \"@colijnit/articleapi/build/model/stock-history.bo\";\r\nimport {ArticleDetailsBo} from \"@colijnit/articleapi/build/model/article-details.bo\";\r\nimport {ArticleStockManagement} from \"@colijnit/articleapi/build/model/article-stock-management\";\r\nimport {StockStatus} from \"@colijnit/articleapi/build/model/stock-status.bo\";\r\nimport {StockManagementWarehouses} from \"@colijnit/articleapi/build/model/stock-management-warehouses.bo\";\r\nimport {StockLocation} from \"@colijnit/articleapi/build/model/stock-location.bo\";\r\nimport {ArticleTransaction} from \"@colijnit/articleapi/build/model/article-transaction\";\r\nimport {ArticleTransaction as ArticleTransactionBo} from \"@colijnit/articleapi/build/model/article-transaction.bo\";\r\nimport {SharedConnectorService} from \"./shared-connector.service\";\r\nimport {SendMethodParams} from \"../components/send-method-dialog/send-method-params.interface\";\r\nimport {DataServiceResponseData} from '@colijnit/ioneconnector/build/model/data-service-response-data';\r\nimport {StockForecast} from \"@colijnit/articleapi/build/model/stock-forecast.bo\";\r\nimport {ArticleExtendedRequest} from \"@colijnit/articleapi/build/model/article-extended-request\";\r\nimport {ArticleExtended} from \"@colijnit/articleapi/build/model/article-extended.bo\";\r\nimport {ArticleFlat} from \"@colijnit/articleapi/build/model/article-flat.bo\";\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class StockService {\r\n\r\n public stockStickers: PrintStockStickers;\r\n public printLayoutParams: SendMethodParams;\r\n\r\n public readonly warehouseSelected: EventEmitter<StockManagementWarehouses> = new EventEmitter<StockManagementWarehouses>()\r\n\r\n constructor(\r\n private _sharedService: SharedConnectorService,\r\n ) {\r\n }\r\n\r\n // public async getPrintStockStickers(data: PrintStockStickers): Promise<void> {\r\n // await this._sharedService.getPrintStockStickers(data);\r\n // }\r\n\r\n // public async getPrintPriceStickers(data: PrintPriceStickers): Promise<void> {\r\n // await this._sharedService.getPrintPriceStickers(data);\r\n // }\r\n\r\n public async getStockHistory(data: GetStockHistoryRequest): Promise<StockHistoryBo[]> {\r\n return await this._sharedService.getStockHistory(data);\r\n }\r\n\r\n public async getStockInformation(data: ArticleStock): Promise<ArticleStockBo[]> {\r\n return await this._sharedService.getStockInformation(data);\r\n }\r\n\r\n // public async getStockStickerPrintLayouts(data: StockStickersPrintLayouts): Promise<StockStickersPrintLayouts[]> {\r\n // return await this._connector.getStockStickerPrintLayouts(data);\r\n // }\r\n\r\n public async getArticleDetails(data: ArticleStockManagement): Promise<ArticleDetailsBo[]> {\r\n return await this._sharedService.getArticleDetails(data);\r\n }\r\n\r\n public async updateArticleDetails(data: ArticleDetailsBo): Promise<boolean> {\r\n return await this._sharedService.updateArticleDetails(data);\r\n }\r\n\r\n public async getStockState(): Promise<StockStatus[]> {\r\n return await this._sharedService.getStockStatus();\r\n }\r\n\r\n public async getArtStockStatus(goodId: number, branchNo?: string, requestedAmount?: number, warehouseId?: number): Promise<number> {\r\n return await this._sharedService.getArtStockStatus(goodId, branchNo, requestedAmount, warehouseId);\r\n }\r\n\r\n // public async getStockStickerTemplates(data: StockStickersPrintLayouts): Promise<StockStickersPrintLayouts[]> {\r\n // return await this._sharedService.getStockStickerTemplates(data);\r\n // }\r\n\r\n public async getStockManagementWarehouses(): Promise<StockManagementWarehouses[]> {\r\n return await this._sharedService.getStockManagementWarehouses();\r\n }\r\n\r\n public async getStockManagementLocations(warehouseNo: number): Promise<StockLocation[]> {\r\n return await this._sharedService.getStockManagementLocations(warehouseNo);\r\n }\r\n\r\n // public async getOrderConfirmationDefaultSendMethod(relationId: number): Promise<number> {\r\n // return await this._sharedService.getOrderConfirmationDefaultSendMethod(relationId);\r\n // }\r\n\r\n // public async getDefaultEmailAddressListForOrderConfirmation(transactionUUID: string): Promise<string[]> {\r\n // return await this._sharedService.getDefaultEmailAddressListForOrderConfirmation(transactionUUID);\r\n // }\r\n\r\n // public async getPurchaseOrderEmailLayouts(transactionUUID: string): Promise<StockStickersEmailLayouts[]> {\r\n // return await this._sharedService.getPurchaseOrderEmailLayouts(transactionUUID);\r\n // }\r\n\r\n public async getArticleTransaction(data: ArticleTransaction): Promise<ArticleTransactionBo[]> {\r\n return await this._sharedService.getArticleTransaction(data);\r\n }\r\n\r\n public async stockPrognose(goodId: number, warehouseNumber: number): Promise<StockForecast[]> {\r\n return await this._sharedService.getStockPrognose(goodId, warehouseNumber);\r\n }\r\n\r\n public async lockArticleDetails(data: ArticleStockManagement): Promise<boolean> {\r\n return await this._sharedService.lockArticleDetails(data);\r\n }\r\n\r\n public commit(): Promise<DataServiceResponseData> {\r\n return this._sharedService.commit();\r\n }\r\n\r\n public async getArticleFlat(sku: string): Promise<ArticleFlat> {\r\n return await this._sharedService.getArticleFlat(sku);\r\n }\r\n\r\n public async searchArticles(request: ArticleExtendedRequest): Promise<ArticleExtended[]> {\r\n return await this._sharedService.searchArticles(request);\r\n }\r\n\r\n\r\n\r\n\r\n}\r\n","export class Translation {\r\n}\r\n","import {Injectable} from '@angular/core';\r\nimport {Translation} from './translation';\r\n\r\n@Injectable()\r\nexport class LocalizeService {\r\n public set translation(value: Translation) {\r\n this._translation = Object.assign(new Translation(), value);\r\n }\r\n\r\n public get translation(): Translation {\r\n return this._translation;\r\n }\r\n\r\n private _translation: Translation = new Translation();\r\n\r\n public get(key: string, upperCaseFirst: boolean = true, ...replacementTexts: string[]): string {\r\n let text: string = key;\r\n if (this.translation.hasOwnProperty(key)) {\r\n text = this.translation[key].toLowerCase();\r\n if (upperCaseFirst) {\r\n text = text.charAt(0).toUpperCase() + text.slice(1);\r\n }\r\n } else {\r\n console.log('not found', key);\r\n }\r\n return text;\r\n }\r\n}\r\n","import {\r\n ChangeDetectorRef,\r\n Component,\r\n EventEmitter,\r\n HostBinding,\r\n Input, OnDestroy, OnInit,\r\n Output,\r\n ViewChild,\r\n ViewEncapsulation\r\n} from \"@angular/core\";\r\nimport {StockService} from \"../../service/stock.service\";\r\nimport {PrintStockStickers} from \"@colijnit/sharedapi/build/model/print-stock-stickers\";\r\nimport {ArticleStock as ArticleStockBo} from \"@colijnit/articleapi/build/model/article-stock.bo\";\r\nimport {ArticleExtended} from \"@colijnit/articleapi/build/model/article-extended.bo\";\r\nimport {ArticleStock} from \"@colijnit/articleapi/build/model/article-stock\";\r\nimport {StockHistoryBo} from \"@colijnit/articleapi/build/model/stock-history.bo\";\r\nimport {ArticleDetailsBo} from \"@colijnit/articleapi/build/model/article-details.bo\";\r\nimport {OptionsService} from \"../../service/options.service\";\r\nimport {Subscription} from \"rxjs\";\r\nimport {DictionaryService} from \"../../service/dictionary.service\";\r\nimport {StockManagementWarehouses} from \"@colijnit/articleapi/build/model/stock-management-warehouses.bo\";\r\nimport {Translation} from './localization/translation';\r\nimport {LocalizeService} from '../../localization/localize.service';\r\nimport {ArticleExtendedRequest} from \"@colijnit/articleapi/build/model/article-extended-request\";\r\nimport {SharedConnectorService} from \"../../service/shared-connector.service\";\r\nimport {ArticleFlat} from \"@colijnit/articleapi/build/model/article-flat.bo\";\r\n\r\n@Component({\r\n selector: \"co-stock\",\r\n template: `\r\n <div class=\"stock-info-container\" *ngIf=\"loaded && articleExtended\">\r\n <co-stock-information [article]=\"articleExtended\"\r\n [articleStockState]=\"articleStockState\"\r\n [allAvailableStockInformation]=\"allAvailableStock\"\r\n [allTechnicalStockInformation]=\"allTechnicalStock\"\r\n >\r\n </co-stock-information>\r\n <hr>\r\n <co-stock-tabs [stockInformation]=\"stockInformation\"\r\n [article]=\"articleExtended\"\r\n [articleFlat]=\"articleFlat\"\r\n (transferIconClicked)=\"handleStockTransferClick($event)\"\r\n (sendMethodDialogClicked)=\"handleSendMethodClick($event)\"\r\n [warehouses]=\"warehouses\"\r\n ></co-stock-tabs>\r\n\r\n <co-dialog *ngIf=\"showStockTransfer\" (closeClick)=\"showStockTransfer = false\">\r\n <co-stock-transfer (handleClick)=\"backToStock()\"\r\n class=\"stock-transfer-dialog\"\r\n [article]=\"stockTransferArticle\"\r\n [articleToTransfer]=\"stockTransferArticleDetails\"\r\n (handleStickerClicked)=\"handleStickerClicked.emit($event)\"\r\n [articleWarehouse]=\"articleWarehouse\"\r\n [allWarehouses]=\"allWarehouses\"\r\n >\r\n </co-stock-transfer>\r\n </co-dialog>\r\n\r\n <co-send-method-dialog *ngIf=\"showSendMethodDialog\">\r\n\r\n </co-send-method-dialog>\r\n </div>\r\n `,\r\n encapsulation: ViewEncapsulation.None\r\n})\r\nexport class StockComponent implements OnDestroy, OnInit {\r\n\r\n @Input()\r\n public set translation(value: Translation) {\r\n this._localizeService.translation = value;\r\n this._changeDetector.markForCheck();\r\n }\r\n\r\n @Output()\r\n public handleStickerClicked: EventEmitter<any> = new EventEmitter();\r\n\r\n @Input()\r\n public set article(articleOrGoodId: ArticleExtended | number) {\r\n if(articleOrGoodId instanceof ArticleExtended) {\r\n this.articleExtended = articleOrGoodId;\r\n this._goodId = articleOrGoodId.goodId;\r\n\r\n } else if(typeof articleOrGoodId === \"number\" ) {\r\n this._goodId = articleOrGoodId;\r\n }\r\n\r\n };\r\n\r\n @Input()\r\n public articleWarehouse: any[] = [];\r\n\r\n @Input()\r\n public allWarehouses: any[] = [];\r\n\r\n @Output()\r\n public readonly okButtonClicked: EventEmitter<any> = new EventEmitter();\r\n\r\n @Output()\r\n public readonly cancelButtonClicked: EventEmitter<any> = new EventEmitter();\r\n\r\n @HostBinding(\"class.co-stock\")\r\n public showClass() {\r\n return true;\r\n }\r\n\r\n public loaded: boolean = false;\r\n\r\n public showStockInformationGrid: boolean = true;\r\n public showStockTransfer: boolean = false;\r\n public stockInformation: ArticleStockBo[] = [];\r\n public stockTransferArticle: ArticleStockBo;\r\n public stockTransferArticleDetails: ArticleDetailsBo;\r\n public articleExtended: ArticleExtended;\r\n\r\n public articleFlat:ArticleFlat;\r\n public stockHistory: StockHistoryBo[] = [];\r\n public allAvailableStock: number = 0;\r\n public allTechnicalStock: number = 0;\r\n public showSendMethodDialog: boolean = false;\r\n public articleStockState: number;\r\n public warehouses: StockManagementWarehouses[] = [];\r\n\r\n private _subscriptions: Subscription[] = [];\r\n private _goodId: number;\r\n\r\n constructor(\r\n private _stockService: StockService,\r\n private _optionsService: OptionsService,\r\n private _dictionary: DictionaryService,\r\n private _changeDetector: ChangeDetectorRef,\r\n private _localizeService: LocalizeService,\r\n private _connector: SharedConnectorService\r\n ) {\r\n this._subscriptions.push(\r\n this._optionsService.optionsLoaded.subscribe(loaded => this._handleSettingsLoaded(loaded)),\r\n )\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.articleExtended = undefined;\r\n this.articleFlat = undefined;\r\n this._subscriptions.forEach(subscription => subscription.unsubscribe());\r\n }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n public handleStockTransferClick(event): void {\r\n this.stockTransferArticleDetails = event;\r\n this.showStockTransfer = !this.showStockTransfer;\r\n this.showStockInformationGrid = !this.showStockInformationGrid;\r\n this._stockService.stockStickers = new PrintStockStickers();\r\n }\r\n\r\n public handleSendMethodClick(event): void {\r\n this.showSendMethodDialog = true;\r\n }\r\n\r\n public backToStock(): void {\r\n this.showStockTransfer = !this.showStockTransfer;\r\n this.showStockInformationGrid = !this.showStockInformationGrid;\r\n }\r\n\r\n public getStockInformation(goodId: number): void {\r\n const articleData: ArticleStock = new ArticleStock();\r\n articleData.goodId = goodId.toString();\r\n articleData.viewKind = \"M\";\r\n this._stockService.getStockInformation(articleData).then(result => {\r\n this.stockInformation = result;\r\n this.stockInformation.forEach((articleStock) => this.allAvailableStock += articleStock.availableStock);\r\n this.stockInformation.forEach((articleStock) => this.allTechnicalStock += articleStock.technicalStock);\r\n });\r\n\r\n }\r\n\r\n public getArtStockStatus(): void {\r\n this._stockService.getArtStockStatus(this.articleExtended ? this.articleExtended.goodId : this._goodId).then(result => {\r\n this.articleStockState = result;\r\n });\r\n }\r\n\r\n public getStockManagementWarehouses(): void {\r\n this._stockService.getStockManagementWarehouses().then((warehouses) => {\r\n this.warehouses = warehouses;\r\n })\r\n }\r\n\r\n private async _handleSettingsLoaded(loaded: boolean): Promise<void> {\r\n if (loaded) {\r\n await this._initConnection().then();\r\n }\r\n }\r\n\r\n private async _initConnection(): Promise<void> {\r\n await this._connector.connect();\r\n if (this._optionsService.options.url) {\r\n this._dictionary.rootUrl = this._optionsService.options.url.replace(\"/ajaxservice\", \"\");\r\n }\r\n await this._dictionary.setDictionary(this._optionsService.options.languageCode);\r\n setTimeout(() => {\r\n this._changeDetector.detectChanges();\r\n });\r\n this.loaded = true;\r\n this.loadData();\r\n }\r\n\r\n\r\n public loadData() {\r\n if(this.loaded) {\r\n if(this._goodId && !this.articleExtended) {\r\n let request: ArticleExtendedRequest = new ArticleExtendedRequest();\r\n request.goodId = this._goodId;\r\n this._stockService.searchArticles(request).then((articleExtended: ArticleExtended[]) => {\r\n this.articleExtended = articleExtended[0];\r\n });\r\n }\r\n this._stockService.getArticleFlat(this.articleExtended.articleNumber).then(result => {\r\n this.articleFlat = result;\r\n })\r\n this.getArtStockStatus();\r\n this.getStockManagementWarehouses();\r\n this.getStockInformation(this.articleExtended ? this.articleExtended.goodId : this._goodId);\r\n }\r\n this._changeDetector.markForCheck();\r\n this._changeDetector.detectChanges();\r\n }\r\n\r\n}\r\n","import {Component, Input, ViewEncapsulation} from \"@angular/core\";\r\nimport {ArticleExtended} from \"@colijnit/articleapi/build/model/article-extended.bo\";\r\n\r\n@Component({\r\n selector: \"co-stock-information\",\r\n template: `\r\n <div class=\"stock-info\" *ngIf=\"article\">\r\n <div class=\"stock-info-row\" >\r\n <div class=\"stock-info-row-image\">\r\n <div class=\"stock-image\">\r\n <co-image class=\"stock-image\" [source]=\"article.imageData\"></co-image>\r\n </div>\r\n </div>\r\n <div class=\"stock-status\">\r\n <label class=\"stock-label\" [textContent]=\"'DESCRIPTION' | localize\"></label>\r\n <span class=\"stock-span\" [textContent]=\"article.description\"></span>\r\n </div>\r\n </div>\r\n <div class=\"stock-status\">\r\n <label class=\"stock-label\" [textContent]=\"'STOCK_STATUS' | localize\"></label>\r\n <span class=\"stock-span\" [textContent]=\"article.stockStatus\"></span>\r\n <co-stock-statusbar [value]=\"articleStockState\"></co-stock-statusbar>\r\n </div>\r\n <div class=\"stock-status\">\r\n <label class=\"stock-label\" [textContent]=\"'AMOUNT_IN_STOCK' | localize\"></label>\r\n <span class=\"stock-span\" [textContent]=\"allTechnicalStockInformation\"></span>\r\n </div>\r\n <div class=\"stock-status\">\r\n <label class=\"stock-label\" [textContent]=\"'AMOUNT_AVAILABLE' | localize\"></label>\r\n <span class=\"stock-span\" [textContent]=\"allAvailableStockInformation\"></span>\r\n </div>\r\n <div class=\"stock-status\">\r\n <label class=\"stock-label\" [textContent]=\"'ECONOMICAL_STOCK' | localize\"></label>\r\n <span class=\"stock-span\" [textContent]=\"\"></span>\r\n </div>\r\n </div>\r\n `,\r\n encapsulation: ViewEncapsulation.None\r\n})\r\nexport class StockInformationComponent {\r\n\r\n public image: string;\r\n\r\n @Input()\r\n public article: ArticleExtended;\r\n\r\n @Input()\r\n public articleStockState: number;\r\n\r\n @Input()\r\n public allAvailableStockInformation: number;\r\n\r\n @Input()\r\n public allTechnicalStockInformation: number;\r\n\r\n}\r\n","/** AUTO GENERATED FILE. DO NOT CHANGE.. OR YOU WILL SUFFER THE CONSEQUENCES OF YOUR ACTIONS **/\r\n\r\nexport const IconSvg: {[iconName: string]: string} = {\r\n \"account\": \"<svg xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 30 30\\\"><g ><path d=\\\"M15,15c3.59,0,6.5-2.91,6.5-6.5s-2.91-6.5-6.5-6.5-6.5,2.91-6.5,6.5,2.91,6.5,6.5,6.5Zm-2.32,2.44c-5,0-9.05,4.05-9.05,9.05,0,.83,.68,1.51,1.51,1.51H24.87c.83,0,1.51-.68,1.51-1.51,0-5-4.05-9.05-9.05-9.05h-4.64Z\\\" fill=\\\"#484f60\\\"/></g></svg>\",\r\n \"angle_left_solid\": \"<svg xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 320 512\\\"><path fill=\\\"#183153\\\" d=\\\"M41.4 233.4c-12.5 12.5-12.5 32.8 0 45.3l160 160c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3L109.3 256 246.6 118.6c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0l-160 160z\\\"/></svg>\",\r\n \"angle_right_solid\": \"<svg xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 320 512\\\"><path fill=\\\"#183153\\\" d=\\\"M278.6 233.4c12.5 12.5 12.5 32.8 0 45.3l-160 160c-12.5 12.5-32.8 12.5-45.3 0s-12.5-32.8 0-45.3L210.7 256 73.4 118.6c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0l160 160z\\\"/></svg>\",\r\n \"arrow_fat_right\": \"<svg xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 50 50\\\"><polygon points=\\\"37.5 25 25.2 12.7 25.2 20.35 12.5 20.35 12.5 29.66 25.2 29.66 25.2 37.3 37.5 25\\\" fill=\\\"#484f60\\\"/></svg>\",\r\n \"arrow_point_left\": \"<svg version=\\\"1.1\\\" xmlns=\\\"http://www.w3.org/2000/svg\\\" x=\\\"0px\\\" y=\\\"0px\\\" viewBox=\\\"0 0 51 51\\\" enable-background=\\\"new 0 0 51 51\\\" ><path fill=\\\"#484F5F\\\" d=\\\"M31.9,36.7l-14.7-9.6C17.1,27,17,26.9,17,26.7v-2.4c0-0.2,0.1-0.3,0.2-0.4l14.7-9.6c0.2-0.2,0.5-0.1,0.7,0.1l1.4,2.1c0.2,0.2,0.1,0.5-0.1,0.7l-12,7.8c-0.3,0.2-0.3,0.6,0,0.8l12,7.8c0.2,0.2,0.3,0.5,0.1,0.7l-1.4,2.1C32.4,36.8,32.1,36.8,31.9,36.7z\\\"/></svg>\",\r\n \"arrow_point_right\": \"<svg version=\\\"1.1\\\" xmlns=\\\"http://www.w3.org/2000/svg\\\" x=\\\"0px\\\" y=\\\"0px\\\" viewBox=\\\"0 0 51 51\\\" enable-background=\\\"new 0 0 51 51\\\"><path fill=\\\"#484F5F\\\" d=\\\"M19.1,14.3l14.7,9.6c0.1,0.1,0.2,0.2,0.2,0.4v2.4c0,0.2-0.1,0.3-0.2,0.4l-14.7,9.6c-0.2,0.2-0.5,0.1-0.7-0.1l-1.4-2.1c-0.2-0.2-0.1-0.5,0.1-0.7l12-7.8c0.3-0.2,0.3-0.6,0-0.8l-12-7.8c-0.2-0.2-0.3-0.5-0.1-0.7l1.4-2.1C18.6,14.2,18.9,14.2,19.1,14.3z\\\"/></svg>\",\r\n \"at_solid\": \"<svg xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 512 512\\\"><path d=\\\"M207.8 20.73c-93.45 18.32-168.7 93.66-187 187.1c-27.64 140.9 68.65 266.2 199.1 285.1c19.01 2.888 36.17-12.26 36.17-31.49l.0001-.6631c0-15.74-11.44-28.88-26.84-31.24c-84.35-12.98-149.2-86.13-149.2-174.2c0-102.9 88.61-185.5 193.4-175.4c91.54 8.869 158.6 91.25 158.6 183.2l0 16.16c0 22.09-17.94 40.05-40 40.05s-40.01-17.96-40.01-40.05v-120.1c0-8.847-7.161-16.02-16.01-16.02l-31.98 .0036c-7.299 0-13.2 4.992-15.12 11.68c-24.85-12.15-54.24-16.38-86.06-5.106c-38.75 13.73-68.12 48.91-73.72 89.64c-9.483 69.01 43.81 128 110.9 128c26.44 0 50.43-9.544 69.59-24.88c24 31.3 65.23 48.69 109.4 37.49C465.2 369.3 496 324.1 495.1 277.2V256.3C495.1 107.1 361.2-9.332 207.8 20.73zM239.1 304.3c-26.47 0-48-21.56-48-48.05s21.53-48.05 48-48.05s48 21.56 48 48.05S266.5 304.3 239.1 304.3z\\\"/></svg>\",\r\n \"bring_forward_regular\": \"<svg xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 512 512\\\"><path fill=\\\"#183153\\\" d=\\\"M224 464H448C456.8 464 464 456.8 464 448V224C464 215.2 456.8 208 448 208H384V160H448C483.3 160 512 188.7 512 224V448C512 483.3 483.3 512 448 512H224C188.7 512 160 483.3 160 448V384H208V448C208 456.8 215.2 464 224 464zM64 352C28.65 352 0 323.3 0 288V64C0 28.65 28.65 0 64 0H288C323.3 0 352 28.65 352 64V288C352 323.3 323.3 352 288 352H64z\\\"/></svg>\",\r\n \"check_duotone\": \"<svg xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 448 512\\\"><defs><style>.fa-secondary{opacity:.4}</style></defs><path class=\\\"fa-primary\\\" d=\\\"M438.6 105.4C451.1 117.9 451.1 138.1 438.6 150.6L182.6 406.6C170.1 419.1 149.9 419.1 137.4 406.6L9.372 278.6C-3.124 266.1-3.124 245.9 9.372 233.4C21.87 220.9 42.13 220.9 54.63 233.4L159.1 338.7L393.4 105.4C405.9 92.88 426.1 92.88 438.6 105.4H438.6z\\\"/></svg>\",\r\n \"check_round\": \"<svg xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 50 50\\\"><path d=\\\"M25,10A15,15,0,1,0,40,25,15,15,0,0,0,25,10ZM23,34l-6.24-9.09,2.81-3.59L23,26.45,27.66,16h5.58Z\\\" fill=\\\"#484f60\\\"/></svg>\",\r\n \"cross_skinny\": \"<svg xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 30 30\\\"><g ><polygon points=\\\"25.35 5.52 24.65 4.81 15 14.46 5.35 4.81 4.65 5.52 14.29 15.17 4.65 24.81 5.35 25.52 15 15.87 24.65 25.52 25.35 24.81 15.71 15.17 25.35 5.52\\\" fill=\\\"#484f60\\\"/></g></svg>\",\r\n \"delete_left_regular\": \"<svg xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 576 512\\\"><path d=\\\"M432.1 208.1L385.9 256L432.1 303C442.3 312.4 442.3 327.6 432.1 336.1C423.6 346.3 408.4 346.3 399 336.1L352 289.9L304.1 336.1C295.6 346.3 280.4 346.3 271 336.1C261.7 327.6 261.7 312.4 271 303L318.1 256L271 208.1C261.7 199.6 261.7 184.4 271 175C280.4 165.7 295.6 165.7 304.1 175L352 222.1L399 175C408.4 165.7 423.6 165.7 432.1 175C442.3 184.4 442.3 199.6 432.1 208.1V208.1zM512 64C547.3 64 576 92.65 576 128V384C576 419.3 547.3 448 512 448H205.3C188.3 448 172 441.3 160 429.3L9.372 278.6C3.371 272.6 0 264.5 0 256C0 247.5 3.372 239.4 9.372 233.4L160 82.75C172 70.74 188.3 64 205.3 64L512 64zM528 128C528 119.2 520.8 112 512 112H205.3C201 112 196.9 113.7 193.9 116.7L54.63 256L193.9 395.3C196.9 398.3 201 400 205.3 400H512C520.8 400 528 392.8 528 384V128z\\\"/></svg>\",\r\n \"delivery_truck\": \"<svg xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 50 50\\\"><rect x=\\\"15.35\\\" y=\\\"16.56\\\" width=\\\"15.14\\\" height=\\\"10.94\\\" transform=\\\"translate(-1.83 2.08) rotate(-5)\\\" fill=\\\"#484f60\\\"/><path d=\\\"M38.5,18.1l-6.9.61L32.41,28l-7.63.67a3.76,3.76,0,0,1,1.43,2.25l7.25-.63A3.83,3.83,0,0,1,41,29.6l1-.1-.52-6Zm.29,5.84-3.91.34a.51.51,0,0,1-.55-.46L34,20.1a.49.49,0,0,1,.45-.54l2.27-.2a.5.5,0,0,1,.48.25l2,3.59A.5.5,0,0,1,38.79,23.94Z\\\" fill=\\\"#484f60\\\"/><path d=\\\"M19.66,29.09a3.8,3.8,0,0,0-1,2.46l-.74.07-1.82-.94L16,29.41Z\\\" fill=\\\"#484f60\\\"/><path d=\\\"M34.56,30.62a2.74,2.74,0,1,0,2.49-3A2.73,2.73,0,0,0,34.56,30.62Z\\\" fill=\\\"#484f60\\\"/><path d=\\\"M19.74,31.91a2.74,2.74,0,1,0,2.49-3A2.74,2.74,0,0,0,19.74,31.91Z\\\" fill=\\\"#484f60\\\"/><rect x=\\\"7.96\\\" y=\\\"17.63\\\" width=\\\"5\\\" height=\\\"1\\\" transform=\\\"translate(-1.54 0.98) rotate(-5)\\\" fill=\\\"#484f60\\\"/><rect x=\\\"11.02\\\" y=\\\"29.71\\\" width=\\\"3\\\" height=\\\"1\\\" transform=\\\"translate(-2.59 1.21) rotate(-5)\\\" fill=\\\"#484f60\\\"/><rect x=\\\"9.48\\\" y=\\\"23.53\\\" width=\\\"4\\\" height=\\\"1\\\" transform=\\\"matrix(1, -0.09, 0.09, 1, -2.05, 1.09)\\\" fill=\\\"#484f60\\\"/></svg>\",\r\n \"email\": \"<svg xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 50 50\\\"><path d=\\\"M31.79,38.45A17.82,17.82,0,0,1,23.86,40,13.09,13.09,0,0,1,10.41,26.42C10.41,17.63,16.83,10,26.53,10c7.63,0,13.06,5.21,13.06,12.46,0,6.33-3.53,10.3-8.19,10.3a3.42,3.42,0,0,1-3.71-3.32h-.08A6.5,6.5,0,0,1,22,32.76c-2.75,0-4.82-2.11-4.82-5.65a9.85,9.85,0,0,1,10.13-10,12.89,12.89,0,0,1,5.13,1l-1.3,8c-.43,2.54-.13,3.71,1.08,3.75,1.85.09,4.18-2.28,4.18-7.28,0-5.65-3.62-10-10.3-10S13.73,17.76,13.73,26c0,7.25,4.57,11.3,11,11.3A14.81,14.81,0,0,0,31,36ZM28,20.65a5.34,5.34,0,0,0-1.33-.18c-2.85,0-5.09,2.81-5.09,6.12,0,1.64.73,2.68,2.16,2.68,1.59,0,3.27-2,3.66-4.53Z\\\" fill=\\\"#484f60\\\"/></svg>\",\r\n \"envelope_regular\": \"<svg xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 512 512\\\"><path d=\\\"M64 112c-8.8 0-16 7.2-16 16v22.1L220.5 291.7c20.7 17 50.4 17 71.1 0L464 150.1V128c0-8.8-7.2-16-16-16H64zM48 212.2V384c0 8.8 7.2 16 16 16H448c8.8 0 16-7.2 16-16V212.2L322 328.8c-38.4 31.5-93.7 31.5-132 0L48 212.2zM0 128C0 92.7 28.7 64 64 64H448c35.3 0 64 28.7 64 64V384c0 35.3-28.7 64-64 64H64c-35.3 0-64-28.7-64-64V128z\\\"/></svg>\",\r\n \"eye_regular\": \"<svg xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 576 512\\\"><path d=\\\"M288 80c-65.2 0-118.8 29.6-159.9 67.7C89.6 183.5 63 226 49.4 256c13.6 30 40.2 72.5 78.6 108.3C169.2 402.4 222.8 432 288 432s118.8-29.6 159.9-67.7C486.4 328.5 513 286 526.6 256c-13.6-30-40.2-72.5-78.6-108.3C406.8 109.6 353.2 80 288 80zM95.4 112.6C142.5 68.8 207.2 32 288 32s145.5 36.8 192.6 80.6c46.8 43.5 78.1 95.4 93 131.1c3.3 7.9 3.3 16.7 0 24.6c-14.9 35.7-46.2 87.7-93 131.1C433.5 443.2 368.8 480 288 480s-145.5-36.8-192.6-80.6C48.6 356 17.3 304 2.5 268.3c-3.3-7.9-3.3-16.7 0-24.6C17.3 208 48.6 156 95.4 112.6zM288 336c44.2 0 80-35.8 80-80s-35.8-80-80-80c-.7 0-1.3 0-2 0c1.3 5.1 2 10.5 2 16c0 35.3-28.7 64-64 64c-5.5 0-10.9-.7-16-2c0 .7 0 1.3 0 2c0 44.2 35.8 80 80 80zm0-208a128 128 0 1 1 0 256 128 128 0 1 1 0-256z\\\"/></svg>\",\r\n \"file_export_regular\": \"<svg xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 576 512\\\"><path d=\\\"M568.1 303l-80-80c-9.375-9.375-24.56-9.375-33.94 0s-9.375 24.56 0 33.94L494.1 296H216C202.8 296 192 306.8 192 320s10.75 24 24 24h278.1l-39.03 39.03C450.3 387.7 448 393.8 448 400s2.344 12.28 7.031 16.97c9.375 9.375 24.56 9.375 33.94 0l80-80C578.3 327.6 578.3 312.4 568.1 303zM360 384c-13.25 0-24 10.74-24 24V448c0 8.836-7.164 16-16 16H64.02c-8.836 0-16-7.164-16-16L48 64.13c0-8.836 7.164-16 16-16h160L224 128c0 17.67 14.33 32 32 32h79.1v72c0 13.25 10.74 24 23.1 24S384 245.3 384 232V138.6c0-16.98-6.742-33.26-18.75-45.26l-74.63-74.64C278.6 6.742 262.3 0 245.4 0H63.1C28.65 0-.002 28.66 0 64l.0065 384c.002 35.34 28.65 64 64 64H320c35.2 0 64-28.8 64-64v-40C384 394.7 373.3 384 360 384z\\\"/></svg>\",\r\n \"file_export_solid\": \"<svg xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 640 512\\\"><path d=\\\"M32 64C32 28.7 60.7 0 96 0H256V128c0 17.7 14.3 32 32 32H416V288H248c-13.3 0-24 10.7-24 24s10.7 24 24 24H416V448c0 35.3-28.7 64-64 64H96c-35.3 0-64-28.7-64-64V64zM416 336V288H526.1l-39-39c-9.4-9.4-9.4-24.6 0-33.9s24.6-9.4 33.9 0l80 80c9.4 9.4 9.4 24.6 0 33.9l-80 80c-9.4 9.4-24.6 9.4-33.9 0s-9.4-24.6 0-33.9l39-39H416zm0-208H288V0L416 128z\\\"/></svg>\",\r\n \"file_pdf_regular\": \"<svg xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 384 512\\\"><path d=\\\"M320 464C328.8 464 336 456.8 336 448V416H384V448C384 483.3 355.3 512 320 512H64C28.65 512 0 483.3 0 448V416H48V448C48 456.8 55.16 464 64 464H320zM256 160C238.3 160 224 145.7 224 128V48H64C55.16 48 48 55.16 48 64V192H0V64C0 28.65 28.65 0 64 0H229.5C246.5 0 262.7 6.743 274.7 18.75L365.3 109.3C377.3 121.3 384 137.5 384 154.5V192H336V160H256zM88 224C118.9 224 144 249.1 144 280C144 310.9 118.9 336 88 336H80V368C80 376.8 72.84 384 64 384C55.16 384 48 376.8 48 368V240C48 231.2 55.16 224 64 224H88zM112 280C112 266.7 101.3 256 88 256H80V304H88C101.3 304 112 293.3 112 280zM160 240C160 231.2 167.2 224 176 224H200C226.5 224 248 245.5 248 272V336C248 362.5 226.5 384 200 384H176C167.2 384 160 376.8 160 368V240zM192 352H200C208.8 352 216 344.8 216 336V272C216 263.2 208.8 256 200 256H192V352zM336 224C344.8 224 352 231.2 352 240C352 248.8 344.8 256 336 256H304V288H336C344.8 288 352 295.2 352 304C352 312.8 344.8 320 336 320H304V368C304 376.8 296.8 384 288 384C279.2 384 272 376.8 272 368V240C272 231.2 279.2 224 288 224H336z\\\"/></svg>\",\r\n \"file_pdf_solid\": \"<svg xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 384 512\\\"><path d=\\\"M64 0C28.7 0 0 28.7 0 64V448c0 35.3 28.7 64 64 64H320c35.3 0 64-28.7 64-64V160H256c-17.7 0-32-14.3-32-32V0H64zM256 0V128H384L256 0zM64 224H88c30.9 0 56 25.1 56 56s-25.1 56-56 56H80v32c0 8.8-7.2 16-16 16s-16-7.2-16-16V320 240c0-8.8 7.2-16 16-16zm24 80c13.3 0 24-10.7 24-24s-10.7-24-24-24H80v48h8zm72-64c0-8.8 7.2-16 16-16h24c26.5 0 48 21.5 48 48v64c0 26.5-21.5 48-48 48H176c-8.8 0-16-7.2-16-16V240zm32 112h8c8.8 0 16-7.2 16-16V272c0-8.8-7.2-16-16-16h-8v96zm96-128h48c8.8 0 16 7.2 16 16s-7.2 16-16 16H304v32h32c8.8 0 16 7.2 16 16s-7.2 16-16 16H304v48c0 8.8-7.2 16-16 16s-16-7.2-16-16V304 240c0-8.8 7.2-16 16-16z\\\"/></svg>\",\r\n \"file_signature_regular\": \"<svg xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 576 512\\\"><path d=\\\"M64 464H320c8.8 0 16-7.2 16-16v-6.7l39.8-9.9c2.8-.7 5.6-1.6 8.2-2.7V448c0 35.3-28.7 64-64 64H64c-35.3 0-64-28.7-64-64V64C0 28.7 28.7 0 64 0H229.5c17 0 33.3 6.7 45.3 18.7l90.5 90.5c12 12 18.7 28.3 18.7 45.3v49.1l-48 48V160H256c-17.7 0-32-14.3-32-32V48H64c-8.8 0-16 7.2-16 16V448c0 8.8 7.2 16 16 16zm96-115l-9.8 32.8c-6.1 20.3-24.8 34.2-46 34.2H96c-8.8 0-16-7.2-16-16s7.2-16 16-16h8.2c7.1 0 13.3-4.6 15.3-11.4l14.9-49.5c3.4-11.3 13.8-19.1 25.6-19.1s22.2 7.7 25.6 19.1l11.6 38.6c7.4-6.2 16.8-9.7 26.8-9.7c15.9 0 30.4 9 37.5 23.2l4.4 8.8h25.6l12-48.2c1.4-5.6 4.3-10.8 8.4-14.9L441.1 191.8l71 71L382.9 391.9c-4.1 4.1-9.2 7-14.9 8.4l-60.1 15c-1.1 .3-2.1 .4-3.2 .5c-.8 .1-1.5 .2-2.3 .2H256c-6.1 0-11.6-3.4-14.3-8.8l-8.8-17.7c-1.7-3.4-5.1-5.5-8.8-5.5s-7.2 2.1-8.8 5.5l-8.8 17.7c-2.9 5.9-9.2 9.4-15.7 8.8s-12.1-5.1-13.9-11.3L160 349zM549.8 139.7l14.4 14.4c15.6 15.6 15.6 40.9 0 56.6l-29.4 29.4-71-71 29.4-29.4c15.6-15.6 40.9-15.6 56.6 0z\\\"/></svg>\",\r\n \"house_blank_regular\": \"<svg xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 576 512\\\"><path d=\\\"M303.5 5.7c-9-7.6-22.1-7.6-31.1 0l-264 224c-10.1 8.6-11.3 23.7-2.8 33.8s23.7 11.3 33.8 2.8L64 245.5V432c0 44.2 35.8 80 80 80H432c44.2 0 80-35.8 80-80V245.5l24.5 20.8c10.1 8.6 25.3 7.3 33.8-2.8s7.3-25.3-2.8-33.8l-264-224zM464 204.8V432c0 17.7-14.3 32-32 32H144c-17.7 0-32-14.3-32-32V204.8L288 55.5 464 204.8z\\\"/></svg>\",\r\n \"lock\": \"<svg xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 30 30\\\"><g ><g><path d=\\\"M22.65,11.67H7.35c-2.82,0-3.07,2.29-3.07,5.12v8.09c0,2.83,.25,5.12,3.07,5.12h15.29c2.81,0,3.07-2.29,3.07-5.12v-8.09c0-2.83-.25-5.12-3.07-5.12Zm-12.42,15.82l2.6-6.32c-1-.7-1.65-1.85-1.65-3.15,0-2.12,1.71-3.84,3.82-3.84s3.82,1.73,3.82,3.84c0,1.31-.65,2.46-1.65,3.15l2.6,6.32H10.22Z\\\" fill=\\\"#484f60\\\"/><path d=\\\"M19.51,6.64c0-3.6-2.02-4.07-4.51-4.07h0c-2.49,0-4.51,.47-4.51,4.07v3h-2.7v-3C7.79,1.62,11.02,0,15,0h0c3.98,0,7.21,1.62,7.21,6.64v3h-2.7v-3Z\\\" fill=\\\"#484f60\\\"/></g></g></svg>\",\r\n \"message_sms_regular\": \"<svg xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 512 512\\\"><path d=\\\"M448-.0004H64c-35.25 0-64 28.75-64 63.1v287.1c0 35.25 28.75 63.1 64 63.1h96v83.98c0 9.836 11.02 15.55 19.12 9.7L304 415.1H448c35.25 0 64-28.75 64-63.1V63.1C512 28.75 483.3-.0004 448-.0004zM464 352c0 8.75-7.25 16-16 16h-160l-80 60v-60H64c-8.75 0-16-7.25-16-16V64c0-8.75 7.25-16 16-16h384c8.75 0 16 7.25 16 16V352zM124.4 192.6C113.6 189.5 103.2 187.2 104.2 181.5c.7813-4.5 10.28-6.562 21.5-4.906c4.156 .6562 8.75 2.094 13.09 3.594c8.375 2.906 17.47-1.562 20.34-9.906c2.875-8.344-1.562-17.47-9.906-20.34C143.1 147.8 136.5 145.9 130.6 145c-30.69-4.812-53.94 7.719-58 31.09c-5.656 33.03 26.5 42.47 38.63 46c13.72 3.947 25.62 6.432 24.56 12.34C135 239 125.7 241.1 114.3 239.4C107.9 238.4 100.4 235.4 93.38 232.9c-8.375-2.969-16 1.875-18.97 10.19S77.19 261.1 85.5 264.1C92.81 266.8 101.1 269.8 109.4 271C113.7 271.7 117.9 272 121.1 272c24.28 0 41.94-12.03 45.38-32.13C173.1 206.5 141.4 197.5 124.4 192.6zM396.4 192.6C385.6 189.5 375.2 187.2 376.2 181.5c.7813-4.5 10.31-6.562 21.5-4.906c4.156 .6562 8.75 2.094 13.09 3.594c8.406 2.906 17.47-1.562 20.34-9.906c2.875-8.344-1.562-17.47-9.906-20.34c-6.156-2.125-12.69-4.062-18.59-4.969c-30.75-4.812-53.97 7.719-58 31.09c-5.656 33.03 26.5 42.47 38.63 46c13.72 3.947 25.62 6.432 24.56 12.34c-.7813 4.562-10.12 6.656-21.56 4.938c-6.342-.9883-13.9-3.939-20.88-6.438c-8.375-2.969-16 1.875-18.97 10.19s2.781 17.97 11.09 20.97c7.312 2.656 15.62 5.656 23.88 6.906C385.7 271.7 389.9 272 393.1 272c24.28 0 41.94-12.03 45.38-32.13C445.1 206.5 413.4 197.5 396.4 192.6zM309.1 144.8c-6.469-2.062-13.72 .0625-17.88 5.594L256 197.3L220.8 150.4C216.7 144.9 209.4 142.7 202.9 144.8C196.4 147 192 153.1 192 160v96c0 8.844 7.156 16 16 16S224 264.8 224 256V208l19.19 25.59c6.062 8.062 19.56 8.062 25.62 0L288 208V256c0 8.844 7.156 16 16 16S320 264.8 320 256V160C320 153.1 315.6 147 309.1 144.8z\\\"/></svg>\",\r\n \"message_sms_solid\": \"<svg xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 512 512\\\"><path d=\\\"M0 64C0 28.7 28.7 0 64 0H448c35.3 0 64 28.7 64 64V352c0 35.3-28.7 64-64 64H309.3L185.6 508.8c-4.8 3.6-11.3 4.2-16.8 1.5s-8.8-8.2-8.8-14.3V416H64c-35.3 0-64-28.7-64-64V64zm202.9 80.8C196.4 147 192 153.1 192 160v96c0 8.8 7.2 16 16 16s16-7.2 16-16V208l19.2 25.6c3 4 7.8 6.4 12.8 6.4s9.8-2.4 12.8-6.4L288 208v48c0 8.8 7.2 16 16 16s16-7.2 16-16V160c0-6.9-4.4-13-10.9-15.2s-13.7 .1-17.9 5.6L256 197.3l-35.2-46.9c-4.1-5.5-11.3-7.8-17.9-5.6zm173.1 38c0-1.1 .2-1.6 .4-1.9c.3-.4 .9-1.2 2.4-2c3.1-1.8 8-3 12.9-2.9c6.1 .1 12.9 1.4 20.1 3.4c8.5 2.3 17.3-2.8 19.6-11.3s-2.8-17.3-11.3-19.6c-8.2-2.2-17.9-4.3-27.9-4.4c-9.3-.1-20.4 1.9-29.7 7.4c-9.9 5.9-18.6 16.4-18.5 31.6c.1 14.7 8.8 24 17.7 29.4c7.6 4.6 17.1 7.4 24.3 9.6l1.2 .4c8.5 2.6 14.2 4.5 18 6.9c2.7 1.7 2.7 2.4 2.7 3.1l0 .2c0 1.6-.3 2.3-.6 2.7c-.3 .5-.9 1.2-2.1 2c-2.8 1.7-7.5 2.9-12.8 2.8c-7-.2-13.5-2.4-22.6-5.5l0 0 0 0c-1.5-.5-3.2-1.1-4.9-1.6c-8.4-2.8-17.4 1.7-20.2 10.1s1.7 17.4 10.1 20.2c1.2 .4 2.6 .9 4 1.4l0 0 0 0c8.8 3 20.4 7 32.6 7.4c9.8 .3 21.2-1.6 30.7-7.6c10.2-6.4 18-17.3 17.8-32.3c-.2-14.7-8.5-24.2-17.6-29.9c-8-5-17.9-8-25.2-10.2l-.6-.2c-8.6-2.6-14.4-4.4-18.2-6.8c-1.6-1-2.1-1.6-2.2-1.7c0-.1 0-.2 0-.4zm-272 0c0-1.1 .2-1.6 .4-1.9c.3-.4 .9-1.2 2.4-2c3.1-1.8 8-3 12.9-2.9c6.6 .1 16.7 1.6 23.3 3.4c8.5 2.3 17.3-2.8 19.6-11.3s-2.8-17.3-11.3-19.6c-8.8-2.4-21.6-4.3-31.1-4.4c-9.3-.1-20.4 1.9-29.7 7.4C80.6 157.3 72 167.8 72 183c.1 14.7 8.8 24 17.7 29.4c7.6 4.6 17.1 7.4 24.3 9.6l0 0 1.2 .4c8.5 2.6 14.2 4.5 18 6.9c2.7 1.7 2.7 2.4 2.7 3.1l0 .2c0 1.6-.3 2.3-.6 2.7c-.3 .5-.9 1.2-2.1 2c-2.8 1.7-7.5 2.9-12.8 2.8c-7.2-.2-14.2-2.6-23.7-5.8l0 0 0 0c-1.3-.4-2.7-.9-4.1-1.4c-8.4-2.8-17.4 1.7-20.2 10.1s1.7 17.4 10.1 20.2c1.1 .4 2.4 .8 3.6 1.2l0 0 0 0c9 3.1 20.9 7.2 33.2 7.6c9.8 .3 21.2-1.6 30.7-7.6c10.2-6.4 18-17.3 17.8-32.3c-.2-14.7-8.5-24.2-17.6-29.9c-8-5-17.9-8-25.2-10.2l-.6-.2c-8.6-2.6-14.4-4.4-18.3-6.8c-1.6-1-2.1-1.6-2.2-1.7c0-.1 0-.2 0-.4z\\\"/></svg>\",\r\n \"pdf\": \"<svg xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 50 50\\\"><path d=\\\"M31.42,40.17H13.88c-2.16,0-2.72-.56-2.72-2.72V12.88c0-2.15.56-2.71,2.72-2.71h11.6l8.66,8.88v3.43H32.8V19.6l-7.88-8.09h-11c-1.38,0-1.38,0-1.38,1.37V37.45c0,1.37,0,1.37,1.38,1.37H31.42c1.38,0,1.38,0,1.38-1.37V35h1.34v2.43C34.14,39.61,33.58,40.17,31.42,40.17Z\\\" fill=\\\"#484f60\\\"/><path d=\\\"M27.83,26.63v4.24h1a3.57,3.57,0,0,0,.78-.06,1.22,1.22,0,0,0,.52-.26,1.44,1.44,0,0,0,.34-.62,4.13,4.13,0,0,0,.13-1.18,3.79,3.79,0,0,0-.13-1.14,1.51,1.51,0,0,0-.37-.62,1.14,1.14,0,0,0-.6-.3,5.93,5.93,0,0,0-1.06-.06Z\\\" fill=\\\"#484f60\\\"/><path d=\\\"M21.86,26.63v1.82h.71a3.57,3.57,0,0,0,1-.1A.88.88,0,0,0,24,28a.84.84,0,0,0,.14-.5.8.8,0,0,0-.2-.57.88.88,0,0,0-.52-.29,6.36,6.36,0,0,0-.93,0Z\\\" fill=\\\"#484f60\\\"/><path d=\\\"M19.14,24.27v9h19.7v-9Zm6.12,4.24a1.68,1.68,0,0,1-.54.63,1.9,1.9,0,0,1-.67.3,6.57,6.57,0,0,1-1.34.1h-.85V32H20.57V25.54h2.07a7.75,7.75,0,0,1,1.54.1,1.73,1.73,0,0,1,.93.63,2,2,0,0,1,.37,1.25A2,2,0,0,1,25.26,28.51Zm6.45,1.66A2.91,2.91,0,0,1,31,31.31a2.28,2.28,0,0,1-.91.51A4,4,0,0,1,29,32H26.54V25.54H28.9a4.21,4.21,0,0,1,1.22.13,2.08,2.08,0,0,1,1,.59,2.79,2.79,0,0,1,.61,1,4.76,4.76,0,0,1,.21,1.52A4.19,4.19,0,0,1,31.71,30.17Zm5.7-3.54h-3.1v1.52H37v1.08H34.31V32H33V25.54h4.39Z\\\" fill=\\\"#484f60\\\"/><path d=\\\"M25.2,10.84v6.44c0,1.78.27,2,2,2h6.23Z\\\" fill=\\\"#484f60\\\"/></svg>\",\r\n \"print\": \"<svg xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 50 50\\\"><path d=\\\"M38,16.5H12a2,2,0,0,0-2,2v9a2,2,0,0,0,2,2h2v-5H36v5h2a2,2,0,0,0,2-2v-9A2,2,0,0,0,38,16.5ZM37,21a1.5,1.5,0,1,1,1.5-1.5A1.5,1.5,0,0,1,37,21Z\\\" fill=\\\"#484f60\\\"/><path d=\\\"M35,11.5v5H15v-5H35m1-1H14v7H36v-7Z\\\" fill=\\\"#484f60\\\"/><path d=\\\"M35,25.5v13H15v-13H35m1-1H14v15H36v-15Z\\\" fill=\\\"#484f60\\\"/><rect x=\\\"17\\\" y=\\\"28.3\\\" width=\\\"16\\\" height=\\\"0.8\\\" fill=\\\"#484f60\\\"/><rect x=\\\"17\\\" y=\\\"31.5\\\" width=\\\"16\\\" height=\\\"0.8\\\" fill=\\\"#484f60\\\"/><rect x=\\\"17\\\" y=\\\"34.7\\\" width=\\\"16\\\" height=\\\"0.8\\\" fill=\\\"#484f60\\\"/></svg>\",\r\n \"print_regular\": \"<svg xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 512 512\\\"><path d=\\\"M111.1 48h254.1L400 81.94V160H448V81.94c0-12.73-5.057-24.94-14.06-33.94l-33.94-33.94C391 5.057 378.8 0 366.1 0H111.1C85.49 0 64.01 21.48 64 47.98l.002 82.28c-.002 0 .002 0 0 0L64 160h48.01L111.1 48zM440 192H72C32.3 192 0 224.3 0 264v112c0 13.25 10.75 24 24 24H80V480c0 17.67 14.33 32 32 32h288c17.67 0 32-14.33 32-32v-80h56c13.25 0 24-10.75 24-24v-112C512 224.3 479.7 192 440 192zM384 464H128v-96h256V464zM464 352h-32c0-17.67-14.33-32-32-32h-288c-17.67 0-32 14.33-32 32h-32V264c0-13.23 10.77-24 24-24h368c13.23 0 24 10.77 24 24V352z\\\"/></svg>\",\r\n \"print_solid\": \"<svg xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 512 512\\\"><path d=\\\"M448 192H64C28.65 192 0 220.7 0 256v96c0 17.67 14.33 32 32 32h32v96c0 17.67 14.33 32 32 32h320c17.67 0 32-14.33 32-32v-96h32c17.67 0 32-14.33 32-32V256C512 220.7 483.3 192 448 192zM384 448H128v-96h256V448zM432 296c-13.25 0-24-10.75-24-24c0-13.27 10.75-24 24-24s24 10.73 24 24C456 285.3 445.3 296 432 296zM128 64h229.5L384 90.51V160h64V77.25c0-8.484-3.375-16.62-9.375-22.62l-45.25-45.25C387.4 3.375 379.2 0 370.8 0H96C78.34 0 64 14.33 64 32v128h64V64z\\\"/></svg>\",\r\n \"signature_field\": \"<svg xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 50 50\\\"><path d=\\\"M20.1,25.42a1.1,1.1,0,1,1,1.27,1.45l-3.3,9.07A63.13,63.13,0,0,1,28,28.3l1.26-12-8.26-3-6.77,10A62.4,62.4,0,0,1,17,35.54l3.3-9.07A1.12,1.12,0,0,1,20.1,25.42Z\\\" fill=\\\"#484f60\\\"/><rect x=\\\"21.62\\\" y=\\\"11.43\\\" width=\\\"8.79\\\" height=\\\"2.34\\\" transform=\\\"translate(5.88 -8.14) rotate(20)\\\" fill=\\\"#484f60\\\"/><path d=\\\"M18.11,37.48c1.44,2.65,4.58,2.94,7.23,2.1,1.41-.44,2.2-1.49,3.44-2.06,2.42-1.1,3.13,1.2,5.36,1.37.42,0,2-.65,1.54-.68-2.55-.19-2.93-3.13-5.51-2.65a4.9,4.9,0,0,0-1.64.71c-.77.49-1.31,1.62-2.07,2l-4.61.56A3.38,3.38,0,0,1,20,37c-.22-.41-2,.28-1.85.5Z\\\" fill=\\\"#484f60\\\"/></svg>\",\r\n \"tag_regular\": \"<svg xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 448 512\\\"><path d=\\\"M197.5 32c17 0 33.3 6.7 45.3 18.7l176 176c25 25 25 65.5 0 90.5L285.3 450.7c-25 25-65.5 25-90.5 0l-176-176C6.7 262.7 0 246.5 0 229.5V80C0 53.5 21.5 32 48 32H197.5zM48 229.5c0 4.2 1.7 8.3 4.7 11.3l176 176c6.2 6.2 16.4 6.2 22.6 0L384.8 283.3c6.2-6.2 6.2-16.4 0-22.6l-176-176c-3-3-7.1-4.7-11.3-4.7H48V229.5zM112 112a32 32 0 1 1 0 64 32 32 0 1 1 0-64z\\\"/></svg>\",\r\n \"xml\": \"<svg xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 30 30\\\"><g ><g><path d=\\\"M21.42,30.17H3.87c-2.16,0-2.72-.56-2.72-2.72V2.88C1.16,.73,1.72,.17,3.87,.17H15.48l8.66,8.88v3.43h-1.34v-2.88L14.92,1.51H3.87q-1.37,0-1.37,1.37V27.45q0,1.37,1.37,1.37H21.42q1.37,0,1.37-1.37v-2.43h1.34v2.43c0,2.16-.56,2.72-2.72,2.72Z\\\" fill=\\\"#484f60\\\"/><path d=\\\"M15.2,.84V7.28c0,1.78,.27,2.05,2.04,2.05h6.22L15.2,.84Z\\\" fill=\\\"#484f60\\\"/><path d=\\\"M9.14,14.27v8.96H28.84V14.27H9.14Zm5.36,7.4l-1.3-2.02-1.3,2.02h-1.42l2-3.05-1.81-2.8h1.38l1.17,1.88,1.15-1.88h1.37l-1.82,2.84,2,3.01h-1.43Zm7.67,0h-1.1v-4.61l-1.16,4.61h-1.14l-1.16-4.61v4.61h-1.1v-5.85h1.77l1.06,3.99,1.05-3.99h1.77v5.85Zm5.33,0h-4.12v-5.81h1.18v4.82h2.94v.99Z\\\" fill=\\\"#484f60\\\"/></g></g></svg>\",\r\n \"x_solid\": \"<svg xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 384 512\\\"><path d=\\\"M376.6 84.5c11.3-13.6 9.5-33.8-4.1-45.1s-33.8-9.5-45.1 4.1L192 206 56.6 43.5C45.3 29.9 25.1 28.1 11.5 39.4S-3.9 70.9 7.4 84.5L150.3 256 7.4 427.5c-11.3 13.6-9.5 33.8 4.1 45.1s33.8 9.5 45.1-4.1L192 306 327.4 468.5c11.3 13.6 31.5 15.4 45.1 4.1s15.4-31.5 4.1-45.1L233.7 256 376.6 84.5z\\\"/></svg>\"\r\n};","import {Injectable} from \"@angular/core\";\r\nimport {DomSanitizer, SafeHtml} from \"@angular/platform-browser\";\r\nimport {Icon} from \"../enum/icon.enum\";\r\nimport {IconSvg} from \"../model/icon-svg\";\r\n\r\n@Injectable({\r\n providedIn: \"root\"\r\n})\r\nexport class IconCacheService {\r\n /**\r\n * All the icons as a large JSON object, from the all-icons.json file.\r\n * The object has property keys that are the icon names, and property values with the data string of the actual svg icon.\r\n */\r\n public get iconCache(): { [iconName: string]: SafeHtml } {\r\n return this._iconCache;\r\n }\r\n\r\n private _iconCache: { [iconName: string]: SafeHtml } = {};\r\n\r\n constructor(\r\n private _sanitizer: DomSanitizer\r\n ) {\r\n this.setIconCache();\r\n }\r\n\r\n public getIcon(iconName: Icon | string): SafeHtml {\r\n if (iconName) {\r\n return this._iconCache[iconName.toLowerCase()];\r\n }\r\n }\r\n\r\n public getIconAsBase64(iconName: Icon): SafeHtml {\r\n const icon: string = IconSvg[iconName];\r\n const base64Data: string = window.btoa(icon);\r\n return this._sanitizer.bypassSecurityTrustUrl(`data:image/svg+xml;base64,${base64Data}`);\r\n }\r\n\r\n public getRawIcon(iconName: Icon): string {\r\n if (iconName) {\r\n return IconSvg[iconName.toLowerCase()];\r\n }\r\n }\r\n\r\n public setIconCache(): void {\r\n for (const key in IconSvg) {\r\n if (IconSvg.hasOwnProperty(key) && typeof IconSvg[key] !== \"function\") {\r\n this._iconCache[key.toLowerCase()] = this._sanitizer.bypassSecurityTrustHtml(IconSvg[key]);\r\n }\r\n }\r\n }\r\n}\r\n","/** AUTO GENERATED FILE. DO NOT CHANGE.. OR YOU WILL SUFFER THE CONSEQUENCES OF YOUR ACTIONS **/\r\n\r\nexport enum Icon {\r\n Account = \"account\",\r\n AngleLeftSolid = \"angle_left_solid\",\r\n AngleRightSolid = \"angle_right_solid\",\r\n ArrowFatRight = \"arrow_fat_right\",\r\n ArrowPointLeft = \"arrow_point_left\",\r\n ArrowPointRight = \"arrow_point_right\",\r\n AtSolid = \"at_solid\",\r\n BringForwardRegular = \"bring_forward_regular\",\r\n CheckDuotone = \"check_duotone\",\r\n CheckRound = \"check_round\",\r\n CrossSkinny = \"cross_skinny\",\r\n DeleteLeftRegular = \"delete_left_regular\",\r\n DeliveryTruck = \"delivery_truck\",\r\n Email = \"email\",\r\n EnvelopeRegular = \"envelope_regular\",\r\n EyeRegular = \"eye_regular\",\r\n FileExportRegular = \"file_export_regular\",\r\n FileExportSolid = \"file_export_solid\",\r\n FilePdfRegular = \"file_pdf_regular\",\r\n FilePdfSolid = \"file_pdf_solid\",\r\n FileSignatureRegular = \"file_signature_regular\",\r\n HouseBlankRegular = \"house_blank_regular\",\r\n Lock = \"lock\",\r\n MessageSmsRegular = \"message_sms_regular\",\r\n MessageSmsSolid = \"message_sms_solid\",\r\n Pdf = \"pdf\",\r\n Print = \"print\",\r\n PrintRegular = \"print_regular\",\r\n PrintSolid = \"print_solid\",\r\n SignatureField = \"signature_field\",\r\n TagRegular = \"tag_regular\",\r\n Xml = \"xml\",\r\n XSolid = \"x_solid\"\r\n}","import {Component, EventEmitter, Input, Output, ViewChild, ViewEncapsulation} from \"@angular/core\";\r\nimport {StockService} from \"../../../service/stock.service\";\r\nimport {IconCacheService} from \"../../../service/icon-cache.service\";\r\nimport {Icon} from \"../../../enum/icon.enum\";\r\nimport {ArticleStock as ArticleStockBo} from \"@colijnit/articleapi/build/model/article-stock.bo\";\r\nimport {ArticleStock} from \"@colijnit/articleapi/build/model/article-stock\";\r\nimport {StockHistoryBo} from \"@colijnit/articleapi/build/model/stock-history.bo\";\r\nimport {ArticleStockManagement} from \"@colijnit/articleapi/build/model/article-stock-management\";\r\nimport {ArticleDetailsBo} from \"@colijnit/articleapi/build/model/article-details.bo\";\r\nimport {StockManagementWarehouses} from \"@colijnit/articleapi/build/model/stock-management-warehouses.bo\";\r\nimport {CoDropDownListFields} from \"../stock-transfer/co-drop-down-list-fields.interface\";\r\nimport {ArticleTransaction} from \"@colijnit/articleapi/build/model/article-transaction\";\r\nimport {ArticleTransaction as ArticleTransactionBo} from \"@colijnit/articleapi/build/model/article-transaction.bo\";\r\nimport {PrintPriceStickers} from \"@colijnit/sharedapi/build/model/print-price-stickers.bo\";\r\nimport {StockLocation} from \"@colijnit/articleapi/build/model/stock-location.bo\";\r\nimport {ArticleExtended} from \"@colijnit/articleapi/build/model/article-extended.bo\";\r\nimport {SendMethodType} from \"@colijnit/mainapi/build/enum/send-method-type.enum\";\r\n\r\n@Component({\r\n selector: \"co-stock-information-grid\",\r\n template: `\r\n <div class=\"tab-link show\" *ngIf=\"hideOrShowTabs\">\r\n <span class=\"tab-link-buttons\"\r\n *ngFor=\"let tab of tabs\"\r\n (click)=\"handleTabClick(tab)\"\r\n [textContent]=\"tab\"\r\n [class.active]=\"tab === activeTab\"\r\n ></span>\r\n </div>\r\n\r\n <div class=\"stock-line\">\r\n <div [textContent]=\"activeTabText\"></div>\r\n\r\n </div>\r\n\r\n <div class=\"stock-grid\">\r\n <co-simple-grid *ngIf=\"activeTab === tabs[0] && hideOrShowTabs\"\r\n [data]=\"articleStockInformation\"\r\n class=\"simple-grid\"\r\n [rowsPerPage]=\"20\"\r\n >\r\n <co-simple-grid-column [headerText]=\"'WAREHOUSE' | localize\" [field]=\"'warehouseNo'\" [order]=\"10\"></co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'DESCRIPTION' | localize\" [field]=\"'warehouseName'\" [order]=\"11\"></co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'STOCK' | localize\" [field]=\"'technicalStock'\" [order]=\"12\"></co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'AVAILABLE_STOCK' | localize\" [field]=\"'availableStock'\" [order]=\"13\"></co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'ECONOMICAL_STOCK' | localize\" [field]=\"'economicalStock'\" [order]=\"14\"></co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'LOCATION' | localize\" [field]=\"'locationNo'\" [order]=\"15\">\r\n <ng-template #template let-row=\"row\">\r\n <span class=\"location-link\" [textContent]=\"'LOOK_AT' | localize\" (click)=\"onLocationClick(row)\"></span>\r\n </ng-template>\r\n </co-simple-grid-column>\r\n </co-simple-grid>\r\n\r\n <co-simple-grid *ngIf=\"activeTab === tabs[1]\"\r\n [data]=\"inOrderInformation\"\r\n class=\"simple-grid\"\r\n [rowsPerPage]=\"20\"\r\n >\r\n <co-simple-grid-column [headerText]=\"'IN_ORDER' | localize\" [field]=\"'transactionNr'\"></co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'CUSTOMER' | localize\" [field]=\"'customerName'\"></co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'DATE' | localize\">\r\n <ng-template #template let-row=\"row\">\r\n <span [textContent]=\"row.transactionDate | date:'dd-MM-yyyy'\"></span>\r\n </ng-template>\r\n </co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'AMOUNT' | localize\" [field]=\"'amountInOrder'\"></co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'WAREHOUSE' | localize\" [field]=\"'warehouseNumber'\"></co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'DESCRIPTION' | localize\" [field]=\"'warehouseDescription'\"></co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'TRANSFER' | localize\" [field]=\"'transfer'\">\r\n <ng-template #template let-row=\"row\">\r\n <co-icon class=\"menu-icon\" [iconData]=\"iconCacheService.getIcon(icons.DeliveryTruck)\" (click)=\"handleStockTransferClick($event)\"></co-icon>\r\n </ng-template>\r\n </co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'STICKER' | localize\" [field]=\"'sticker'\">\r\n <ng-template #template let-row=\"row\">\r\n <co-icon class=\"menu-icon\" [iconData]=\"iconCacheService.getIcon(icons.Print)\" (click)=\"openSendMethodDialog(row)\"></co-icon>\r\n </ng-template>\r\n </co-simple-grid-column>\r\n </co-simple-grid>\r\n\r\n <co-simple-grid *ngIf=\"activeTab === tabs[2]\"\r\n [data]=\"orderInformation\"\r\n class=\"simple-grid\"\r\n [rowsPerPage]=\"20\"\r\n >\r\n <co-simple-grid-column [headerText]=\"'PURCHASE_ORDER_NR' | localize\" [field]=\"'transactionNr'\"></co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'DATE' | localize\">\r\n <ng-template #template let-row=\"row\">\r\n <span [textContent]=\"row.transactionDate | date:'dd-MM-yyyy'\"></span>\r\n </ng-template>\r\n </co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'AMOUNT' | localize\" [field]=\"'amountInOrder'\"></co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'RESERVED' | localize\" [field]=\"'reserved'\"></co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'FREE_STOCK' | localize\" [field]=\"'InOrderForStock'\"></co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'DELIVERY_DATE' | localize\">\r\n <ng-template #template let-row=\"row\">\r\n <span [textContent]=\"row.deliveryDate | date:'dd-MM-yyyy'\"></span>\r\n </ng-template>\r\n </co-simple-grid-column>\r\n </co-simple-grid>\r\n </div>\r\n\r\n <div class=\"stock-grid\" *ngIf=\"hideOrShowLocationTab\">\r\n <div class=\"stock-location-group\">\r\n <div class=\"stock-location-left-group\">\r\n <span class=\"stock-button-back\" [textContent]=\"'BACK_TO_STOCK_LINES' | localize\" (click)=\"handleBackToStockClick()\"></span>\r\n </div>\r\n <div class=\"stock-location-right-group\">\r\n<!--\r\n <co-drop-down-list [(model)]=\"selectedWarehouse\"\r\n [collection]=\"dataWareHouseCode\"\r\n [fields]=\"dataWareHouseFields\"\r\n [placeholder]=\"'WAREHOUSE' | localize\"\r\n (modelChange)=\"onSelectWarehouse($event)\"\r\n [required]=\"true\"\r\n ></co-drop-down-list>\r\n-->\r\n </div>\r\n </div>\r\n\r\n<!-- TODO move to own component stock-location-->\r\n <co-simple-grid [data]=\"articleDetails\"\r\n class=\"simple-grid\"\r\n [rowsPerPage]=\"20\"\r\n [showAdd]=\"true\"\r\n [showToolbar]=\"true\"\r\n [showDelete]=\"true\"\r\n [inlineEdit]=\"true\"\r\n (dblClickRow)=\"lockSelectedRow($event)\"\r\n >\r\n <div class=\"stock-location-group\">\r\n <div class=\"stock-location-left-group\">\r\n <co-button class=\"stock-lines-button\" [textContent]=\"'BACK_TO_STOCK_LINES' | localize\" (click)=\"handleBackToStockClick()\"></co-button>\r\n </div>\r\n </div>\r\n <co-simple-grid-column [headerText]=\"'LOCATION' | localize\" [field]=\"'locationNo'\">\r\n <ng-template #editTemplate let-row=\"row\">\r\n<!--\r\n <co-drop-down-list [(model)]=\"row.locationNo\"\r\n [collection]=\"stockLocations\"\r\n [fields]=\"dataLocationFields\"\r\n [placeholder]=\"'LOCATION' | localize\"\r\n (click)=\"onLocationDropdownClick()\"\r\n [required]=\"true\"\r\n ></co-drop-down-list>\r\n-->\r\n </ng-template>\r\n </co-simple-grid-column>\r\n <co-simple-grid-column *ngIf=\"articleDetails\" [headerText]=\"'BATCH' | localize\" [field]=\"'batchNo'\">\r\n <ng-template #editTemplate let-row=\"row\">\r\n <co-input-text [(model)]=\"row.batchNo\"\r\n [placeholder]=\"'BATCH' | localize\"\r\n ></co-input-text>\r\n </ng-template>\r\n </co-simple-grid-column>\r\n <co-simple-grid-column *ngIf=\"articleDetails\" [headerText]=\"'SERIAL_NO' | localize\" [field]=\"'serialNo'\">\r\n <ng-template #editTemplate let-row=\"row\">\r\n <co-input-text [(model)]=\"row.serialNo\"\r\n [placeholder]=\"'SERIAL_NO' | localize\"\r\n ></co-input-text>\r\n </ng-template>\r\n </co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'STOCK' | localize\" [field]=\"'amountInStock'\">\r\n <ng-template #editTemplate let-row=\"row\">\r\n <co-input-text [(model)]=\"row.amountInStock\"\r\n [label]=\"'STOCK' | localize\"\r\n (modelChange)=\"amountInStockChanged($event)\"\r\n ></co-input-text>\r\n </ng-template>\r\n </co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'ALLOCATED' | localize\" [field]=\"'stockAssigned'\">\r\n <ng-template #editTemplate let-row=\"row\">\r\n <span [textContent]=\"row.stockAssigned\"></span>\r\n </ng-template>\r\n </co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'AVAILABLE_STOCK' | localize\" [field]=\"'amountInStockFree'\">\r\n <ng-template #editTemplate let-row=\"row\">\r\n <span [textContent]=\"row.amountInStockFree\"></span>\r\n </ng-template>\r\n </co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'VALUTA' | localize\" [field]=\"'currency'\">\r\n <ng-template #editTemplate let-row=\"row\">\r\n <span [textContent]=\"row.currency\"></span>\r\n </ng-template>\r\n </co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'PURCHASE_PRICE' | localize\" [field]=\"'purchasePrice'\">\r\n <ng-template #editTemplate let-row=\"row\">\r\n <span [textContent]=\"row.purchasePrice\"></span>\r\n </ng-template>\r\n </co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'SUPPLIER_NUMBER' | localize\" [field]=\"'supplierNo'\">\r\n <ng-template #editTemplate let-row=\"row\">\r\n <span [textContent]=\"row.supplierNo\"></span>\r\n </ng-template>\r\n </co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'TRANSFER' | localize\" [field]=\"'transfer'\">\r\n <ng-template #template let-row=\"row\">\r\n <co-icon class=\"menu-icon\" [iconData]=\"iconCacheService.getIcon(icons.DeliveryTruck)\" (click)=\"handleStockTransferClick(row)\"></co-icon>\r\n </ng-template>\r\n </co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'STICKER' | localize\" [field]=\"'sticker'\">\r\n <ng-template #template let-row=\"row\">\r\n <co-icon class=\"menu-icon\" [iconData]=\"iconCacheService.getIcon(icons.Print)\" (click)=\"openSendMethodDialog(row)\"></co-icon>\r\n </ng-template>\r\n </co-simple-grid-column>\r\n </co-simple-grid>\r\n </div>\r\n\r\n <co-stock-change-amount *ngIf=\"showChangeStockDetails\"\r\n (closeStockChangeAmount)=\"showChangeStockDetails = false\"\r\n [selectedArticleDetailsData]=\"selectedArticleDetailsData\"\r\n >\r\n </co-stock-change-amount>\r\n\r\n <div class=\"stock-grid\" *ngIf=\"showStockHistory\">\r\n <div class=\"stock-button-left-group\">\r\n <span class=\"stock-button-back\" [textContent]=\"'BACK_TO_STOCK_LINES' | localize\" (click)=\"backToStockInformation()\"></span>\r\n </div>\r\n <co-simple-grid [data]=\"stockHistoryInformation\"\r\n class=\"simple-grid\"\r\n [rowsPerPage]=\"20\"\r\n >\r\n <co-simple-grid-column [headerText]=\"'MUTATION_DATE' | localize\">\r\n <ng-template #template let-row=\"row\">\r\n <span [textContent]=\"row.mutationDate | date:'dd-MM-yyyy'\"></span>\r\n </ng-template>\r\n </co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'MUTATION_TIME' | localize\" [field]=\"'mutationTime'\"></co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'AMOUNT' | localize\" [field]=\"'amount'\"></co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'WAREHOUSE' | localize\" [field]=\"'wareHouseNr'\"></co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'LOCATION' | localize\" [field]=\"'locationNr'\"></co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'TRANSACTION_TYPE' | localize\" [field]=\"'transType'\"></co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'DOCUMENT_NUMBER' | localize\" [field]=\"'docNr'\"></co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'LINE' | localize\" [field]=\"'posLineNr'\"></co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'STOCK_STATE' | localize\" [field]=\"'stockStateId'\"></co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'STOCK_REMARK' | localize\" [field]=\"'stockStateRemarkId'\"></co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'VALUTA' | localize\" [field]=\"'currencyCode'\"></co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'RELATION_ID' | localize\" [field]=\"'relationId'\"></co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'USER' | localize\" [field]=\"'user'\"></co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'MUTATION_TYPE' | localize\" [field]=\"'mutationType'\"></co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'STICKER' | localize\" [field]=\"'sticker'\">\r\n <ng-template #template let-row=\"row\">\r\n <co-icon class=\"menu-icon\" [iconData]=\"iconCacheService.getIcon(icons.Print)\" (click)=\"openSendMethodDialog(row)\"></co-icon>\r\n </ng-template>\r\n </co-simple-grid-column>\r\n </co-simple-grid>\r\n </div>\r\n\r\n <div class=\"stock-button-toolbar\">\r\n <div class=\"stock-button-left-group\">\r\n <co-button *ngIf=\"activeTab === tabs[0]\" [label]=\"'HISTORY' | localize\" (click)=\"handleHistoryClick()\"></co-button>\r\n </div>\r\n <div class=\"stock-button-middle-group\" *ngIf=\"activeTab !== tabs[0]\">\r\n <div class=\"button-left\">\r\n <co-button [textContent]=\"'OK' | localize\" (click)=\"onOkClick()\"></co-button>\r\n </div>\r\n <div class=\"button-right\">\r\n <co-button [textContent]=\"'CANCEL' | localize\" (click)=\"onCancelClick()\"></co-button>\r\n </div>\r\n </div>\r\n\r\n <div class=\"stock-button-middle-group\" *ngIf=\"hideOrShowLocationTab\">\r\n <div class=\"button-left\">\r\n <co-button [textContent]=\"'OK' | localize\" (click)=\"onOkClickSendLocations()\"></co-button>\r\n </div>\r\n <div class=\"button-right\">\r\n <co-button [textContent]=\"'CANCEL' | localize\" (click)=\"onCancelClickSendLocations()\"></co-button>\r\n </div>\r\n </div>\r\n </div>\r\n <co-send-method-dialog *ngIf=\"showSendMethodDialog\"\r\n (closeClick)=\"showSendMethodDialog = false\"\r\n [visibleMethods]=\"sendMethod[1]\"\r\n ></co-send-method-dialog>\r\n `,\r\n encapsulation: ViewEncapsulation.None\r\n})\r\n\r\nexport class StockInformationGridComponent {\r\n public readonly icons: typeof Icon = Icon;\r\n\r\n @ViewChild(StockInformationGridComponent)\r\n public stock: StockInformationGridComponent;\r\n\r\n @Input()\r\n public articleStockInformation: ArticleStockBo[];\r\n\r\n @Input()\r\n public stockLocationData: ArticleStockBo[];\r\n\r\n @Input()\r\n public stockHistoryInformation: StockHistoryBo[];\r\n\r\n @Input()\r\n public article: ArticleExtended;\r\n\r\n @Output()\r\n public readonly transferIconClicked: EventEmitter<ArticleStockBo> = new EventEmitter();\r\n\r\n @Output()\r\n public readonly historyClicked: EventEmitter<any> = new EventEmitter();\r\n\r\n @Output()\r\n public readonly cancelButtonClicked: EventEmitter<any> = new EventEmitter();\r\n\r\n @Output()\r\n public readonly okButtonClicked: EventEmitter<any> = new EventEmitter();\r\n\r\n public image: string;\r\n public show: boolean = false;\r\n public hideOrShowLocationTab: boolean = false;\r\n public showStockHistory: boolean = false;\r\n public showSendMethodDialog: boolean = false;\r\n\r\n public inOrderInformation: ArticleTransactionBo[];\r\n public orderInformation: ArticleTransactionBo[]\r\n public hideOrShowTabs: boolean = true;\r\n public dataWareHouseCode: StockManagementWarehouses[];\r\n public dataWareHouseFields: CoDropDownListFields = { text: \"warehouseDescription\", value: \"warehouseNo\" };\r\n public dataLocationFields: CoDropDownListFields = {text: \"locationNo\", value: \"locationNo\"};\r\n public selectedWarehouse: any;\r\n public selectedLocation: StockLocation;\r\n public stockLocations: StockLocation[];\r\n public articleStockSearchInfo: ArticleStock = new ArticleStock();\r\n public articleDetails: ArticleDetailsBo[];\r\n public selectedArticleDetailsData: ArticleDetailsBo = new ArticleDetailsBo();\r\n public showChangeStockDetails: boolean = false;\r\n public articleDetailsInformation: ArticleStockManagement = new ArticleStockManagement();\r\n public sendMethod: SendMethodType[];\r\n\r\n public tabs: string[] = [\r\n \"STOCK\",\r\n \"IN_ORDER2\",\r\n \"ORDERS1\"\r\n ];\r\n public activeTab: string = this.tabs[0];\r\n\r\n public get activeTabText(): string {\r\n switch (this.activeTab) {\r\n case this.tabs[0]:\r\n return \"Voorraadregels\";\r\n case this.tabs[1]:\r\n return \"Gevonden in order(s)\";\r\n case this.tabs[2]:\r\n return \"Gevonden in bestellingen\";\r\n default:\r\n return \"Voorraadlocatie regels\";\r\n }\r\n }\r\n\r\n constructor(\r\n public iconCacheService: IconCacheService,\r\n private _stockService: StockService,\r\n ) {\r\n }\r\n\r\n public handleTabClick(tabData): void {\r\n this.activeTab = tabData;\r\n if (this.activeTab === \"IN_ORDER2\") {\r\n this.getInOrderData();\r\n } if (this.activeTab === \"ORDERS1\") {\r\n this.getOrderData();\r\n }\r\n }\r\n\r\n public onLocationClick(data: ArticleStockBo): void {\r\n this.articleStockSearchInfo.goodId = data.goodId.toString();\r\n this.articleStockSearchInfo.wareHouseNo = data.warehouseNo.toString();\r\n this.articleStockSearchInfo.viewKind = \"D\";\r\n this.selectedWarehouse = data.warehouseNo;\r\n if (!this.dataWareHouseCode) {\r\n this.getStockManagementWarehouses(data);\r\n }\r\n this.getArticleDetails(data);\r\n this.hideOrShowTabs = false;\r\n this.hideOrShowLocationTab = true;\r\n }\r\n\r\n public handleHistoryClick(): void {\r\n this.historyClicked.emit()\r\n this.hideOrShowLocationTab = false;\r\n this.showChangeStockDetails = false;\r\n this.hideOrShowTabs = false;\r\n this.showStockHistory = true;\r\n }\r\n\r\n public backToStockInformation(): void {\r\n this.showStockHistory = false;\r\n this.hideOrShowTabs = true;\r\n }\r\n\r\n public handleStockTransferClick(event): void {\r\n this.transferIconClicked.emit(event);\r\n }\r\n\r\n public async handleBackToStockClick(): Promise<void> {\r\n this.activeTab = this.tabs[0];\r\n this.hideOrShowTabs = true;\r\n this.hideOrShowLocationTab = false;\r\n this.articleDetails = undefined;\r\n }\r\n\r\n public openSendMethodDialog(data): void {\r\n if (!(this._stockService.printLayoutParams instanceof PrintPriceStickers)) {\r\n this._stockService.printLayoutParams.goodId = data.goodId;\r\n this._stockService.printLayoutParams.warehouse = data.warehouseNo;\r\n }\r\n this.showSendMethodDialog = true;\r\n }\r\n\r\n public printStockStickers(): void {\r\n // this._stockService.getPrintStockStickers(this._stockService.printLayoutParams);\r\n }\r\n\r\n public onOkClick(): void {\r\n this.okButtonClicked.emit();\r\n }\r\n\r\n public onCancelClick(): void {\r\n this.cancelButtonClicked.emit();\r\n }\r\n\r\n public openDialogClick(data): void {\r\n this.selectedArticleDetailsData = data;\r\n this.showChangeStockDetails = true;\r\n }\r\n\r\n public getArticleDetails(data: any): void {\r\n // const info = new ArticleStockManagement();\r\n this.articleDetailsInformation.goodId = data.goodId;\r\n this.articleDetailsInformation.lineId = data.lineId;\r\n this.articleDetailsInformation.warehouseNumber = data.warehouseNo;\r\n this._stockService.getArticleDetails(this.articleDetailsInformation).then((details) => {\r\n this.articleDetails = details;\r\n });\r\n }\r\n\r\n public getStockManagementWarehouses(data: ArticleStockBo): void {\r\n this._stockService.getStockManagementWarehouses().then((warehouses) => {\r\n this.dataWareHouseCode = warehouses;\r\n this.selectedWarehouse = data.warehouseNo;\r\n })\r\n }\r\n\r\n public onSelectWarehouse(event): void {\r\n this.articleDetailsInformation.warehouseNumber = event;\r\n if (this.selectedWarehouse || this.selectedWarehouse === 0) {\r\n this._stockService.getArticleDetails(this.articleDetailsInformation).then((details) => {\r\n this.articleDetails = details;\r\n });\r\n }\r\n }\r\n\r\n public async getInOrderData(): Promise<void> {\r\n const inOrderData: ArticleTransaction = new ArticleTransaction();\r\n inOrderData.type = \"V\";\r\n inOrderData.goodId = this.articleStockInformation[0].goodId.toString();\r\n this.inOrderInformation = await this._stockService.getArticleTransaction(inOrderData);\r\n }\r\n\r\n public async getOrderData(): Promise<void> {\r\n const orderData: ArticleTransaction = new ArticleTransaction();\r\n orderData.type = \"I\";\r\n orderData.goodId = this.articleStockInformation[0].goodId.toString();\r\n this.orderInformation = await this._stockService.getArticleTransaction(orderData);\r\n }\r\n\r\n public onLocationDropdownClick(): void {\r\n this._stockService.getStockManagementLocations(this.selectedWarehouse).then((locations) => {\r\n this.stockLocations = locations;\r\n })\r\n }\r\n\r\n public onLocationSelected(location): void {\r\n this.selectedArticleDetailsData.locationNo = location;\r\n }\r\n\r\n public async onOkClickSendLocations(): Promise<void> {\r\n this.selectedArticleDetailsData.selected = true;\r\n this.selectedArticleDetailsData.goodId = this.article.goodId;\r\n this.selectedArticleDetailsData.entryDate = new Date();\r\n this.selectedArticleDetailsData.warehouseNo = this.selectedWarehouse;\r\n await this._stockService.updateArticleDetails(this.selectedArticleDetailsData);\r\n await this._stockService.getArticleDetails(this.articleDetailsInformation).then((details) => {\r\n this.articleDetails = details;\r\n });\r\n }\r\n\r\n public onCancelClickSendLocations(): void {\r\n\r\n }\r\n\r\n public amountInStockChanged(data): void {\r\n this.selectedArticleDetailsData.amountInStock = data;\r\n }\r\n\r\n public lockSelectedRow(row): void {\r\n this._stockService.lockArticleDetails(row);\r\n }\r\n}\r\n","import {AfterViewInit, Component, EventEmitter, Input, Output, ViewEncapsulation} from \"@angular/core\";\r\nimport {PrintStockStickers} from \"@colijnit/articleapi/build/model/print-stock-stickers\";\r\nimport {StockService} from \"../../../service/stock.service\";\r\nimport {CoDropDownListFields} from \"./co-drop-down-list-fields.interface\";\r\nimport {ArticleStock as ArticleStockBo} from \"@colijnit/articleapi/build/model/article-stock.bo\";\r\nimport {ArticleDetailsBo} from \"@colijnit/articleapi/build/model/article-details.bo\";\r\nimport {StockManagementWarehouses} from \"@colijnit/articleapi/build/model/stock-management-warehouses.bo\";\r\nimport {StockStatus} from \"@colijnit/articleapi/build/model/stock-status.bo\";\r\nimport {StockLocation} from \"@colijnit/articleapi/build/model/stock-location.bo\";\r\nimport {IconCacheService} from \"../../../service/icon-cache.service\";\r\nimport {Icon} from \"../../../enum/icon.enum\";\r\n\r\n@Component({\r\n selector: \"co-stock-transfer\",\r\n template: `\r\n <div class=\"stock-transfer\">\r\n <span [textContent]=\"'TRANSFER_STOCK' | localize\"></span>\r\n <div class=\"stock-transfer-columns\">\r\n <div *ngIf=\"articleToTransfer\" class=\"stock-transfer-left-column\">\r\n <co-input-text [readonly]=\"true\"\r\n [(model)]=\"articleToTransfer.warehouseDescription\"\r\n [placeholder]=\"'STANDARD_WAREHOUSE' | localize\"\r\n >\r\n </co-input-text>\r\n <co-input-text [readonly]=\"true\"\r\n [(model)]=\"articleToTransfer.locationNo\"\r\n [placeholder]=\"'STANDARD_LOCATION' | localize\">\r\n </co-input-text>\r\n <co-input-text [readonly]=\"true\"\r\n [(model)]=\"articleToTransfer.batchItem\"\r\n [placeholder]=\"'BATCH_NO' | localize\">\r\n </co-input-text>\r\n <co-input-text [readonly]=\"true\"\r\n [(model)]=\"articleToTransfer.serialNo\"\r\n [placeholder]=\"'SERIE_NO' | localize\">\r\n </co-input-text>\r\n <co-input-text\r\n [(model)]=\"articleToTransfer.amountTransfer\"\r\n [placeholder]=\"'Aantal' | localize\">\r\n </co-input-text>\r\n </div>\r\n\r\n <div class=\"icon-wrapper\">\r\n <co-icon [iconData]=\"iconCacheService.getIcon(icons.ArrowFatRight)\"></co-icon>\r\n </div>\r\n\r\n <div class=\"stock-transfer-right-column\">\r\n\r\n <co-list-of-values [collection]=\"warehouses\"\r\n [displayField]=\"'warehouseDescription'\"\r\n (modelChange)=\"handleSelectedWarehouse($event)\"\r\n [label]=\"'Magazijn' | localize\"\r\n >\r\n </co-list-of-values>\r\n <co-list-of-values [collection]=\"locations\"\r\n [displayField]=\"'description'\"\r\n (modelChange)=\"handleSelectedLocation($event)\"\r\n [label]=\"'Locatie' | localize\"\r\n >\r\n </co-list-of-values>\r\n <co-list-of-values [collection]=\"stockState\"\r\n [displayField]=\"'stateDescription'\"\r\n [label]=\"'Voorraadstatus' | localize\"\r\n (modelChange)=\"handleSelectedStockState($event)\"\r\n >\r\n </co-list-of-values>\r\n\r\n <co-input-text [placeholder]=\"'Omschrijving' | localize\"\r\n [(model)]=\"articleToTransfer.stockStateRemark\">\r\n </co-input-text>\r\n </div>\r\n </div>\r\n\r\n <div class=\"ok-cancel-buttons\">\r\n <co-button [textContent]=\"'OK' | localize\" (click)=\"handleOkClick(articleToTransfer)\"></co-button>\r\n <co-button [textContent]=\"'STICKER' | localize\" (click)=\"handleStickerClick()\"></co-button>\r\n </div>\r\n </div>\r\n `,\r\n encapsulation: ViewEncapsulation.None\r\n})\r\nexport class StockTransferComponent implements AfterViewInit {\r\n\r\n @Input()\r\n public stockSticker: PrintStockStickers;\r\n\r\n @Input()\r\n public article: ArticleStockBo;\r\n\r\n @Input()\r\n public articleToTransfer: ArticleDetailsBo;\r\n\r\n @Input()\r\n public articleWarehouse: any[];\r\n\r\n @Input()\r\n public allWarehouses: any[];\r\n\r\n @Output()\r\n public handleClick: EventEmitter<any> = new EventEmitter();\r\n\r\n @Output()\r\n public handleStickerClicked: EventEmitter<any> = new EventEmitter();\r\n\r\n public allWarehousesDropdownFields: CoDropDownListFields = {text: \"warehouseDescription\", value: \"warehouseNo\"};\r\n public allLocationDropdownFields: CoDropDownListFields = {text: \"locationNo\", value: \"locationNo\"};\r\n\r\n public showSendMethodDialog: boolean = false;\r\n public warehouses: StockManagementWarehouses[] = [];\r\n public stockState: StockStatus[] = [];\r\n public stockStateDropdownField: CoDropDownListFields = {text: \"stateDescription\", value: \"stockStateId\"};\r\n public locations: StockLocation[] = [];\r\n public selectedWarehouse: StockManagementWarehouses;\r\n\r\n public readonly icons: typeof Icon = Icon;\r\n\r\n constructor(\r\n private _stockService: StockService,\r\n public iconCacheService: IconCacheService\r\n ) {\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.getStockManagementWarehouses();\r\n this.getStockState();\r\n }\r\n\r\n public handleOkClick(data: ArticleDetailsBo): void {\r\n data.selected = true;\r\n data.entryDate = new Date;\r\n this._stockService.updateArticleDetails(data).then( result => {\r\n this.handleClick.emit();\r\n });\r\n\r\n }\r\n\r\n public handleCancelClick(): void {\r\n this.handleClick.emit();\r\n }\r\n\r\n public handleSelectedWarehouse(event: StockManagementWarehouses): void {\r\n this.articleToTransfer.targetWarehouse = event.warehouseNo;\r\n this.selectedWarehouse = event;\r\n this.getStockManagementLocations(this.selectedWarehouse.warehouseNo);\r\n }\r\n\r\n public handleSelectedLocation(event: StockLocation): void {\r\n this.articleToTransfer.targetLocation = event.locationNo;\r\n }\r\n\r\n public handleSelectedStockState(event: StockStatus): void {\r\n this.articleToTransfer.stockStateId = event.stockStateId;\r\n }\r\n\r\n public handleStickerClick(): void {\r\n this.handleStickerClicked.emit();\r\n this.showSendMethodDialog = true;\r\n }\r\n\r\n public getStockManagementWarehouses(): void {\r\n this._stockService.getStockManagementWarehouses().then((warehouses) => {\r\n this.warehouses = warehouses;\r\n })\r\n }\r\n\r\n public getStockManagementLocations(data): void {\r\n this._stockService.getStockManagementLocations(data).then((locations) => {\r\n this.locations = locations;\r\n })\r\n }\r\n\r\n public getStockState(): void {\r\n this._stockService.getStockState().then((state: StockStatus[]) => {\r\n this.stockState = state;\r\n });\r\n }\r\n\r\n}\r\n","import {SharedConnectorService} from \"./shared-connector.service\";\r\nimport {Injectable} from \"@angular/core\";\r\nimport {OptionsService} from \"./options.service\";\r\nimport {Printer} from '@colijnit/mainapi/build/model/printer.bo';\r\nimport {SendMethod} from '@colijnit/mainapi/build/model/send-method.bo';\r\nimport {TagCategory} from \"@colijnit/mainapi/build/enum/tab-category.enum\";\r\nimport {TagTreeItem} from \"@colijnit/mainapi/build/model/tag-tree-item.bo\";\r\n\r\n@Injectable({\r\n providedIn: \"root\"\r\n})\r\n\r\nexport class SharedService {\r\n\r\n constructor(\r\n protected options: OptionsService,\r\n protected connector: SharedConnectorService,\r\n ) {\r\n }\r\n\r\n public async init(options: any): Promise<void> {\r\n await this.options.initialize(options);\r\n this.connector.connect();\r\n }\r\n\r\n public async getAllPrinters(): Promise<Printer[]> {\r\n return await this.connector.getAllPrinters();\r\n }\r\n\r\n public async getSendMethods(): Promise<SendMethod[]> {\r\n return await this.connector.getSendMethods();\r\n }\r\n\r\n public async getScreenConfigTree(): Promise<any> {\r\n return await this.connector.getScreenConfigTree();\r\n }\r\n\r\n public async getScreenConfigSubRubric(parentRubricId: number, configId: number, fixedKey: string): Promise<any> {\r\n return await this.connector.getScreenConfigSubRubric(parentRubricId, configId, fixedKey);\r\n }\r\n\r\n public async getTagsFullTree(category: TagCategory, includeTags: boolean = true): Promise<TagTreeItem[]> {\r\n return await this.connector.getTagsFullTree(category, includeTags);\r\n }\r\n\r\n public async getDocumentContent(docId: number, thumbnail: boolean = true): Promise<string> {\r\n return await this.connector.getDocumentContent(docId, thumbnail);\r\n }\r\n}\r\n","import {Injectable} from '@angular/core';\r\nimport {ReportingDocumentEmailSignDocBaseRequest} from '@colijnit/mainapi/build/model/reporting-document-email-sign-doc-base-request';\r\nimport {ReportingDocumentPdfBaseRequest} from '@colijnit/mainapi/build/model/reporting-document-pdf-base-request';\r\nimport {ReportingDocumentPrintSignDocBaseRequest} from '@colijnit/mainapi/build/model/reporting-document-print-sign-doc-base-request';\r\nimport {Subject} from 'rxjs';\r\n\r\n@Injectable()\r\nexport class SendMethodService {\r\n public reportingDocumentPrintSignDocBaseRequestChanged: Subject<ReportingDocumentPrintSignDocBaseRequest> = new Subject<ReportingDocumentPrintSignDocBaseRequest>();\r\n public reportingDocumentEmailSignDocBaseRequestChanged: Subject<ReportingDocumentEmailSignDocBaseRequest> = new Subject<ReportingDocumentEmailSignDocBaseRequest>();\r\n public reportingDocumentPdfBaseRequestChanged: Subject<ReportingDocumentPdfBaseRequest> = new Subject<ReportingDocumentPdfBaseRequest>();\r\n\r\n public set reportingDocumentPrintSignDocBaseRequest(value: ReportingDocumentPrintSignDocBaseRequest) {\r\n this._reportingDocumentPrintSignDocBaseRequest = value;\r\n this.activePrinter = this._reportingDocumentPrintSignDocBaseRequest.printerName;\r\n this.reportingDocumentPrintSignDocBaseRequestChanged.next(this._reportingDocumentPrintSignDocBaseRequest);\r\n }\r\n public get reportingDocumentPrintSignDocBaseRequest(): ReportingDocumentPrintSignDocBaseRequest {\r\n return this._reportingDocumentPrintSignDocBaseRequest;\r\n }\r\n public set reportingDocumentEmailSignDocBaseRequest(value: ReportingDocumentEmailSignDocBaseRequest) {\r\n this._reportingDocumentEmailSignDocBaseRequest = value;\r\n this.selectedEmailAddresses = this._reportingDocumentEmailSignDocBaseRequest.toAddresses.split(';');\r\n this.reportingDocumentEmailSignDocBaseRequestChanged.next(this._reportingDocumentEmailSignDocBaseRequest);\r\n }\r\n public get reportingDocumentEmailSignDocBaseRequest(): ReportingDocumentEmailSignDocBaseRequest {\r\n return this._reportingDocumentEmailSignDocBaseRequest;\r\n }\r\n public set reportingDocumentPdfBaseRequest(value: ReportingDocumentPdfBaseRequest) {\r\n this._reportingDocumentPdfBaseRequest = value;\r\n this.reportingDocumentPdfBaseRequestChanged.next(this._reportingDocumentPdfBaseRequest);\r\n }\r\n public get reportingDocumentPdfBaseRequest(): ReportingDocumentPdfBaseRequest {\r\n return this._reportingDocumentPdfBaseRequest;\r\n }\r\n\r\n public selectedEmailAddresses: string[] = [];\r\n public activePrinter: string;\r\n\r\n private _reportingDocumentPrintSignDocBaseRequest: ReportingDocumentPrintSignDocBaseRequest = new ReportingDocumentPrintSignDocBaseRequest();\r\n private _reportingDocumentEmailSignDocBaseRequest: ReportingDocumentEmailSignDocBaseRequest = new ReportingDocumentEmailSignDocBaseRequest();\r\n private _reportingDocumentPdfBaseRequest: ReportingDocumentPdfBaseRequest = new ReportingDocumentPdfBaseRequest();\r\n\r\n public removeEmailAddress(address: string): void {\r\n if (this.selectedEmailAddresses.indexOf(address) > -1) {\r\n this.selectedEmailAddresses.splice(this.selectedEmailAddresses.indexOf(address), 1);\r\n this._updateEmailAddresses();\r\n }\r\n }\r\n\r\n public addEmailAddress(address: string): void {\r\n if (this.selectedEmailAddresses.indexOf(address) < 0) {\r\n this.selectedEmailAddresses.push(address);\r\n this._updateEmailAddresses();\r\n }\r\n }\r\n\r\n private _updateEmailAddresses(): void {\r\n this._reportingDocumentEmailSignDocBaseRequest.toAddresses = this.selectedEmailAddresses.join(';');\r\n this.reportingDocumentEmailSignDocBaseRequestChanged.next(this._reportingDocumentEmailSignDocBaseRequest);\r\n }\r\n\r\n}\r\n","import {SendMethodType} from '@colijnit/mainapi/build/enum/send-method-type.enum';\r\n\r\nexport class SendMethod {\r\n public code: SendMethodType;\r\n public description: string;\r\n public icon: string;\r\n\r\n constructor(code: SendMethodType, description: string, icon: string) {\r\n this.code = code;\r\n this.description = description;\r\n this.icon = icon;\r\n }\r\n}\r\n","import {\r\n ChangeDetectorRef,\r\n Component,\r\n ElementRef,\r\n EventEmitter,\r\n HostBinding,\r\n Input,\r\n OnDestroy,\r\n OnInit,\r\n Output,\r\n ViewChild,\r\n ViewEncapsulation\r\n} from '@angular/core';\r\nimport {Icon} from '../../enum/icon.enum';\r\nimport {IconCacheService} from '../../service/icon-cache.service';\r\nimport {animate, state, style, transition, trigger} from '@angular/animations';\r\nimport {Subscription} from 'rxjs';\r\nimport {SharedService} from '../../service/shared.service';\r\nimport {ReportLayoutSelectionEmail} from '@colijnit/mainapi/build/model/report-layout-selection-email.bo';\r\nimport {ReportLayoutSelectionPrint} from '@colijnit/mainapi/build/model/report-layout-selection-print.bo';\r\nimport {ReportingDocumentPdfBaseRequest} from '@colijnit/mainapi/build/model/reporting-document-pdf-base-request';\r\nimport {SendMethodService} from './service/send-method.service';\r\nimport {SendMethod} from '../../model/send-method';\r\nimport {SendMethodType} from '@colijnit/mainapi/build/enum/send-method-type.enum';\r\nimport {Printer} from '@colijnit/mainapi/build/model/printer.bo';\r\nimport {\r\n ReportingDocumentEmailSignDocBaseRequest\r\n} from '@colijnit/mainapi/build/model/reporting-document-email-sign-doc-base-request';\r\nimport {\r\n ReportingDocumentPrintSignDocBaseRequest\r\n} from \"@colijnit/mainapi/build/model/reporting-document-print-sign-doc-base-request\";\r\n\r\nexport const sendMethodsWithIcon: SendMethod[] = [\r\n new SendMethod(SendMethodType.Fax, \"Fax\", Icon.PrintRegular),\r\n new SendMethod(SendMethodType.Print, \"Print\", Icon.PrintSolid),\r\n new SendMethod(SendMethodType.Email, \"Email\", Icon.AtSolid),\r\n new SendMethod(SendMethodType.Edi, \"Edi\", Icon.FileExportSolid),\r\n new SendMethod(SendMethodType.EmailTemplate, \"Email template\", Icon.EnvelopeRegular),\r\n new SendMethod(SendMethodType.Sms, \"Sms\", Icon.MessageSmsSolid),\r\n new SendMethod(SendMethodType.WebService, \"Webservice\", Icon.PrintRegular),\r\n new SendMethod(SendMethodType.Pdf, \"Pdf\", Icon.Pdf)\r\n]\r\n\r\n@Component({\r\n selector: 'co-send-method-dialog',\r\n template: `\r\n <co-dialog id=\"sendOptionsDialog\" [headerTemplate]=\"headerTemplate\" [footerTemplate]=\"footerTemplate\"\r\n (closeClick)=\"closeClick.emit($event)\">\r\n <ng-template #headerTemplate>\r\n <div class=\"co-dialog-header-title-wrapper\">\r\n <co-icon [iconData]=\"iconCacheService.getIcon(icons.EnvelopeRegular)\"></co-icon>\r\n <div class=\"co-dialog-header-title\" [textContent]=\"headerTitle\"></div>\r\n </div>\r\n <div class=\"dialog-navigation-wrapper\">\r\n <div class=\"send-button-wrapper\" *ngFor=\"let sendMethod of sendMethods; let index = index\"\r\n [class.selected]=\"activeSendMethod ? sendMethod.code === activeSendMethod.code : index === 0\"\r\n (click)=\"handleSendMethodClick(sendMethod)\">\r\n <div class=\"custom-button-title\" [textContent]=\"sendMethod.description\"></div>\r\n </div>\r\n </div>\r\n </ng-template>\r\n\r\n <div class=\"dialog-content-wrapper\">\r\n <div class=\"send-methods-wrapper\">\r\n\r\n </div>\r\n <div #navigationItems class=\"send-method-navigation-wrapper\" [class.smooth-scrolling]=\"!startUp\">\r\n <div #faxItems class=\"send-method-navigation-content co-small-scrollbar\">\r\n\r\n </div>\r\n <div #printItems class=\"send-method-navigation-content co-small-scrollbar\" *ngIf=\"showPrint\">\r\n <co-send-method-printer\r\n [printerList]=\"printerList\"\r\n [layouts]=\"printLayouts\"\r\n ></co-send-method-printer>\r\n </div>\r\n <div #emailItems class=\"send-method-navigation-content co-small-scrollbar\" *ngIf=\"showEmail\">\r\n <co-send-method-email\r\n [emailAddresses]=\"emailAddresses\"\r\n [layouts]=\"emailLayouts\"\r\n ></co-send-method-email>\r\n </div>\r\n <div #ediItems class=\"send-method-navigation-content co-small-scrollbar\" *ngIf=\"showEdi\">\r\n\r\n </div>\r\n <div #emailTemplateItems class=\"send-method-navigation-content co-small-scrollbar\" *ngIf=\"showEmailTemplate\">\r\n\r\n </div>\r\n <div #smsItems class=\"send-method-navigation-content co-small-scrollbar\" *ngIf=\"showSms\">\r\n\r\n </div>\r\n <div #webServiceItems class=\"send-method-navigation-content co-small-scrollbar\" *ngIf=\"showWebservice\">\r\n\r\n </div>\r\n <div #pdfItems class=\"send-method-navigation-content co-small-scrollbar\" *ngIf=\"showPdf\">\r\n <co-send-method-pdf\r\n [layouts]=\"printLayouts\"\r\n ></co-send-method-pdf>\r\n </div>\r\n </div>\r\n </div>\r\n <ng-template #footerTemplate>\r\n <div class=\"co-dialog-footer-button-wrapper\">\r\n <co-button class=\"save-button\"\r\n [iconData]=\"iconCacheService.getIcon(icons.CheckDuotone)\"\r\n (click)=\"okClick.emit(activeSendMethod ? activeSendMethod.code : '0')\"></co-button>\r\n <co-button class=\"close-button\"\r\n [iconData]=\"iconCacheService.getIcon(icons.CrossSkinny)\"\r\n (click)=\"closeClick.emit($event)\"></co-button>\r\n </div>\r\n </ng-template>\r\n </co-dialog>\r\n `,\r\n encapsulation: ViewEncapsulation.None,\r\n animations: [\r\n trigger('slideInOut', [\r\n state('*', style({transform: 'translateX(0%)', width: '100%', opacity: '1'})),\r\n state('void', style({transform: 'translateX(150%)', opacity: '0'})),\r\n transition('void => *', animate(250))\r\n ])\r\n ]\r\n})\r\n\r\nexport class SendMethodDialogComponent implements OnInit, OnDestroy {\r\n public readonly icons: typeof Icon = Icon;\r\n\r\n @ViewChild('navigationItems', {read: ElementRef})\r\n public navigationItems: ElementRef;\r\n\r\n @ViewChild('faxItems', {read: ElementRef})\r\n public faxItems: ElementRef;\r\n\r\n @ViewChild('printItems', {read: ElementRef})\r\n public printItems: ElementRef;\r\n\r\n @ViewChild('emailItems', {read: ElementRef})\r\n public emailItems: ElementRef;\r\n\r\n @ViewChild('ediItems', {read: ElementRef})\r\n public ediItems: ElementRef;\r\n\r\n @ViewChild('emailTemplateItems', {read: ElementRef})\r\n public emailTemplateItems: ElementRef;\r\n\r\n @ViewChild('smsItems', {read: ElementRef})\r\n public smsItems: ElementRef;\r\n\r\n @ViewChild('webServiceItems', {read: ElementRef})\r\n public webServiceItems: ElementRef;\r\n\r\n @ViewChild('pdfItems', {read: ElementRef})\r\n public pdfItems: ElementRef;\r\n\r\n @Input()\r\n public printerList: Printer[] = [];\r\n\r\n @Input()\r\n public reportingDocumentPrintRequest: ReportingDocumentPrintSignDocBaseRequest;\r\n\r\n @Input()\r\n public reportingDocumentEmailRequest: ReportingDocumentEmailSignDocBaseRequest;\r\n\r\n @Input()\r\n public reportingDocumentPdfRequest: ReportingDocumentPdfBaseRequest;\r\n\r\n @Input()\r\n public emailLayouts: ReportLayoutSelectionEmail[] = [];\r\n\r\n @Input()\r\n public printLayouts: ReportLayoutSelectionPrint[] = [];\r\n\r\n // @Input()\r\n // public priceListCodeData: any;\r\n\r\n @Input()\r\n public headerTitle: string;\r\n\r\n @Input()\r\n public emailAddresses: string[] = [];\r\n\r\n @Input()\r\n public defaultSendMethod: string;\r\n\r\n @Input()\r\n public visibleMethods: SendMethodType[] | string[] = [];\r\n\r\n @Input()\r\n public isDocSignEnabled: boolean = false;\r\n\r\n @Input()\r\n public docSign: boolean = false;\r\n\r\n @Output()\r\n public reportingDocumentPrintRequestChange: EventEmitter<ReportingDocumentPrintSignDocBaseRequest> = new EventEmitter<ReportingDocumentPrintSignDocBaseRequest>();\r\n\r\n @Output()\r\n public reportingDocumentEmailRequestChange: EventEmitter<ReportingDocumentEmailSignDocBaseRequest> = new EventEmitter<ReportingDocumentEmailSignDocBaseRequest>();\r\n\r\n @Output()\r\n public reportingDocumentPdfRequestChange: EventEmitter<ReportingDocumentPdfBaseRequest> = new EventEmitter<ReportingDocumentPdfBaseRequest>();\r\n\r\n @Output()\r\n public startSignatureClicked: EventEmitter<any> = new EventEmitter<any>();\r\n\r\n @Output()\r\n public closeClick: EventEmitter<MouseEvent> = new EventEmitter<MouseEvent>();\r\n\r\n @Output()\r\n public okClick: EventEmitter<string> = new EventEmitter<string>();\r\n\r\n @HostBinding('class.co-send-method-dialog')\r\n public showClass(): boolean {\r\n return true;\r\n }\r\n\r\n public sendMethods = sendMethodsWithIcon;\r\n public activeSendMethod: SendMethod;\r\n public upAndLoaded: boolean = false;\r\n public startUp: boolean = true;\r\n\r\n public showFax: boolean = true;\r\n public showPrint: boolean = true;\r\n public showEmail: boolean = true;\r\n public showEdi: boolean = true;\r\n public showSms: boolean = true;\r\n public showEmailTemplate: boolean = true;\r\n public showWebservice: boolean = true;\r\n public showPdf: boolean = true;\r\n\r\n private _subscriptions: Subscription[] = [];\r\n\r\n constructor(\r\n public iconCacheService: IconCacheService,\r\n private _changeDetector: ChangeDetectorRef,\r\n private _sharedService: SharedService,\r\n private _sendMethodService: SendMethodService\r\n ) {\r\n this._subscriptions.push(\r\n this._sendMethodService.reportingDocumentPrintSignDocBaseRequestChanged.subscribe((value: ReportingDocumentPrintSignDocBaseRequest) => this.reportingDocumentPrintRequestChange.next(value)),\r\n this._sendMethodService.reportingDocumentEmailSignDocBaseRequestChanged.subscribe((value: ReportingDocumentEmailSignDocBaseRequest) => this.reportingDocumentEmailRequestChange.next(value)),\r\n this._sendMethodService.reportingDocumentPdfBaseRequestChanged.subscribe((value: ReportingDocumentPdfBaseRequest) => this.reportingDocumentPdfRequestChange.next(value))\r\n )\r\n }\r\n\r\n ngOnInit() {\r\n if (this.reportingDocumentEmailRequest) {\r\n this._sendMethodService.reportingDocumentEmailSignDocBaseRequest = this.reportingDocumentEmailRequest;\r\n }\r\n if (this.reportingDocumentPrintRequest) {\r\n this._sendMethodService.reportingDocumentPrintSignDocBaseRequest = this.reportingDocumentPrintRequest;\r\n }\r\n if (this.reportingDocumentPdfRequest) {\r\n this._sendMethodService.reportingDocumentPdfBaseRequest = this.reportingDocumentPdfRequest;\r\n }\r\n this._initDefaultSendMethod();\r\n this._prepareVisibleMethods();\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this._subscriptions.forEach(subscription => subscription.unsubscribe());\r\n }\r\n\r\n public handleSignatureStart(): void {\r\n this.docSign = !this.docSign;\r\n this.startSignatureClicked.emit();\r\n }\r\n\r\n public handleSendMethodClick(sendMethod: SendMethod): void {\r\n this.activeSendMethod = sendMethod;\r\n if (sendMethod.code === SendMethodType.Fax && this.showFax) {\r\n this.navigationItems.nativeElement.scrollLeft = this.faxItems.nativeElement.offsetLeft - this.navigationItems.nativeElement.offsetLeft;\r\n } else if (sendMethod.code === SendMethodType.Print && this.showPrint) {\r\n this.navigationItems.nativeElement.scrollLeft = this.printItems.nativeElement.offsetLeft - this.navigationItems.nativeElement.offsetLeft;\r\n } else if (sendMethod.code === SendMethodType.Email && this.showEmail) {\r\n this.navigationItems.nativeElement.scrollLeft = this.emailItems.nativeElement.offsetLeft - this.navigationItems.nativeElement.offsetLeft;\r\n } else if (sendMethod.code === SendMethodType.Edi && this.showEdi) {\r\n this.navigationItems.nativeElement.scrollLeft = this.ediItems.nativeElement.offsetLeft - this.navigationItems.nativeElement.offsetLeft;\r\n } else if (sendMethod.code === SendMethodType.EmailTemplate && this.showEmailTemplate) {\r\n this.navigationItems.nativeElement.scrollLeft = this.emailTemplateItems.nativeElement.offsetLeft - this.navigationItems.nativeElement.offsetLeft;\r\n } else if (sendMethod.code === SendMethodType.Sms && this.showSms) {\r\n this.navigationItems.nativeElement.scrollLeft = this.smsItems.nativeElement.offsetLeft - this.navigationItems.nativeElement.offsetLeft;\r\n } else if (sendMethod.code === SendMethodType.WebService && this.showWebservice) {\r\n this.navigationItems.nativeElement.scrollLeft = this.webServiceItems.nativeElement.offsetLeft - this.navigationItems.nativeElement.offsetLeft;\r\n } else if (sendMethod.code === SendMethodType.Pdf && this.showPdf) {\r\n this.navigationItems.nativeElement.scrollLeft = this.pdfItems.nativeElement.offsetLeft - this.navigationItems.nativeElement.offsetLeft;\r\n }\r\n }\r\n\r\n private _initDefaultSendMethod(): void {\r\n if (this.defaultSendMethod) {\r\n this._selectDefaultSendMethod();\r\n } else {\r\n if (this.visibleMethods && this.visibleMethods.length === 1) {\r\n this.defaultSendMethod = this.visibleMethods[0];\r\n this._selectDefaultSendMethod();\r\n }\r\n this.startUp = false;\r\n }\r\n }\r\n\r\n private _selectDefaultSendMethod(): void {\r\n const sendMethod: SendMethod = this.sendMethods.find(sm => sm.code === this.defaultSendMethod);\r\n if (sendMethod) {\r\n setTimeout(() => {\r\n this.handleSendMethodClick(sendMethod);\r\n this.startUp = false;\r\n });\r\n }\r\n }\r\n\r\n private _prepareVisibleMethods(): void {\r\n if (this.visibleMethods && this.visibleMethods.length > 0) {\r\n this.sendMethods = this.sendMethods.filter(sm => this.visibleMethods.find(vm => vm === sm.code));\r\n }\r\n this.showFax = this.sendMethods.find(sm => sm.code === SendMethodType.Fax) !== undefined;\r\n this.showPrint = this.sendMethods.find(sm => sm.code === SendMethodType.Print) !== undefined;\r\n this.showEmail = this.sendMethods.find(sm => sm.code === SendMethodType.Email) !== undefined;\r\n this.showEdi = this.sendMethods.find(sm => sm.code === SendMethodType.Edi) !== undefined;\r\n this.showEmailTemplate = this.sendMethods.find(sm => sm.code === SendMethodType.EmailTemplate) !== undefined;\r\n this.showSms = this.sendMethods.find(sm => sm.code === SendMethodType.Sms) !== undefined;\r\n this.showWebservice = this.sendMethods.find(sm => sm.code === SendMethodType.WebService) !== undefined;\r\n this.showPdf = this.sendMethods.find(sm => sm.code === SendMethodType.Pdf) !== undefined;\r\n\r\n }\r\n}\r\n","export class EmailAddressViewmodel {\r\n public checked: boolean;\r\n public emailAddress: string;\r\n\r\n constructor(checked: boolean, emailAddress: string) {\r\n this.checked = checked;\r\n this.emailAddress = emailAddress;\r\n }\r\n}\r\n","import {Component, HostBinding, Input, OnInit, ViewEncapsulation} from '@angular/core';\r\nimport {SendMethodService} from '../../service/send-method.service';\r\nimport {EmailAddressViewmodel} from '../../model/email-address-viewmodel';\r\nimport {ReportLayoutSelectionEmail} from '@colijnit/mainapi/build/model/report-layout-selection-email.bo';\r\n\r\n@Component({\r\n selector: 'co-send-method-email',\r\n template: `\r\n <div class=\"email-addresses-wrapper co-small-scrollbar\">\r\n <div class=\"email-address-wrapper\" *ngFor=\"let emailAddressViewmodel of emailAddressViewmodels\" (click)=\"handleCheckedEmail(emailAddressViewmodel)\">\r\n <co-input-checkbox [model]=\"emailAddressViewmodel.checked\" (modelChange)=\"handleCheckedEmail(emailAddressViewmodel)\"></co-input-checkbox>\r\n <div class=\"email-address\" [textContent]=\"emailAddressViewmodel.emailAddress\"></div>\r\n </div>\r\n </div>\r\n <div class=\"layout-signature-wrapper\">\r\n <co-layout-selection\r\n [(request)]=\"sendMethodService.reportingDocumentEmailSignDocBaseRequest\"\r\n [layouts]=\"layouts\"\r\n ></co-layout-selection>\r\n <co-signature-button\r\n [request]=\"sendMethodService.reportingDocumentEmailSignDocBaseRequest\"\r\n ></co-signature-button>\r\n </div>\r\n `,\r\n encapsulation: ViewEncapsulation.None\r\n})\r\nexport class SendMethodEmailComponent implements OnInit {\r\n\r\n @Input()\r\n public emailAddresses: string[] = [];\r\n\r\n @Input()\r\n public layouts: ReportLayoutSelectionEmail[] = [];\r\n\r\n @HostBinding('class.co-send-method-email')\r\n public showClass() {\r\n return true;\r\n }\r\n\r\n public emailAddressViewmodels: EmailAddressViewmodel[] = [];\r\n\r\n constructor(public sendMethodService: SendMethodService) {\r\n }\r\n\r\n ngOnInit(): void {\r\n if (this.emailAddresses) {\r\n this.emailAddresses.forEach((ea: string) => {\r\n const emailAddressViewmodel: EmailAddressViewmodel = new EmailAddressViewmodel(this.sendMethodService.selectedEmailAddresses.indexOf(ea) > -1, ea);\r\n this.emailAddressViewmodels.push(emailAddressViewmodel);\r\n });\r\n }\r\n }\r\n\r\n public handleCheckedEmail(emailAddressViewmodel: EmailAddressViewmodel): void {\r\n const wantedValue: boolean = !emailAddressViewmodel.checked;\r\n if (!wantedValue) {\r\n this.sendMethodService.removeEmailAddress(emailAddressViewmodel.emailAddress);\r\n } else {\r\n this.sendMethodService.addEmailAddress(emailAddressViewmodel.emailAddress);\r\n }\r\n emailAddressViewmodel.checked = wantedValue;\r\n }\r\n}\r\n","import {\r\n ChangeDetectorRef,\r\n Component,\r\n EventEmitter,\r\n HostBinding,\r\n Input,\r\n OnInit,\r\n Output,\r\n ViewEncapsulation\r\n} from '@angular/core';\r\nimport {animate, state, style, transition, trigger} from '@angular/animations';\r\nimport {ReportLayoutSelectionBase} from '@colijnit/mainapi/build/model/report-layout-selection-base.bo';\r\nimport {ReportingDocumentBaseRequest} from '@colijnit/mainapi/build/model/reporting-document-base-request';\r\nimport {Icon} from \"../../../../enum/icon.enum\";\r\nimport {IconCacheService} from \"../../../../service/icon-cache.service\";\r\n\r\n@Component({\r\n selector: 'co-layout-selection',\r\n template: `\r\n <div class=\"layout-selection-wrapper\" (click)=\"showLayoutList = !showLayoutList\">\r\n <div class=\"title\" [textContent]=\"'Lay-out'\"></div>\r\n <div class=\"layout-description\" [textContent]=\"currentLayout?.description || 'Layout kiezen'\"></div>\r\n </div>\r\n <div class=\"layouts-wrapper co-small-scrollbar\" *ngIf=\"showLayoutList\" @showHideLayouts>\r\n <div class=\"layouts-wrapper-header\">\r\n <div class=\"title\" [textContent]=\"'Lay-out'\"></div>\r\n <div class=\"close-layouts\">\r\n <div class=\"dialog-close-button\" (click)=\"closeSelectLayout()\">\r\n <co-icon [iconData]=\"iconCacheService.getIcon(icons.XSolid)\"></co-icon>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div class=\"layout-selection-wrapper\" *ngFor=\"let reportLayout of layouts\"\r\n [class.selected]=\"reportLayout.reportId === currentLayout?.reportId\"\r\n (click)=\"handleSelectLayout(reportLayout)\">\r\n <div class=\"layout-description\" [textContent]=\"reportLayout.description\"></div>\r\n </div>\r\n </div>\r\n `,\r\n animations: [\r\n trigger(\"showHideLayouts\", [\r\n state(\"void\", style({height: 0})),\r\n state(\"*\", style({height: \"100%\"})),\r\n transition(\"void => *\", animate(\"200ms ease-in-out\")),\r\n transition(\"* => void\", animate(\"200ms ease-out\"))\r\n ])\r\n ],\r\n encapsulation: ViewEncapsulation.None\r\n})\r\nexport class LayoutSelectionComponent implements OnInit {\r\n public readonly icons: typeof Icon = Icon;\r\n @Input()\r\n public request: ReportingDocumentBaseRequest;\r\n\r\n @Input()\r\n public layouts: ReportLayoutSelectionBase[] = [];\r\n\r\n @Output()\r\n public requestChange: EventEmitter<ReportingDocumentBaseRequest> = new EventEmitter<ReportingDocumentBaseRequest>();\r\n\r\n @HostBinding('class.co-layout-selection')\r\n public showClass() {\r\n return true;\r\n }\r\n\r\n public currentLayout: ReportLayoutSelectionBase;\r\n public showLayoutList: boolean = false;\r\n constructor(\r\n public iconCacheService: IconCacheService\r\n ) {\r\n }\r\n ngOnInit(): void {\r\n if (this.layouts && this.layouts.length > 0) {\r\n this.currentLayout = this.layouts.find(l => l.reportId === this.request.reportId);\r\n if (!this.currentLayout) {\r\n this.currentLayout = this.layouts[0];\r\n }\r\n }\r\n }\r\n\r\n public handleSelectLayout(reportLayout: ReportLayoutSelectionBase): void {\r\n this.currentLayout = reportLayout;\r\n this.request.reportId = this.currentLayout.reportId;\r\n this.requestChange.emit(this.request);\r\n this.showLayoutList = false;\r\n }\r\n public closeSelectLayout(): void {\r\n this.showLayoutList = false;\r\n }\r\n}\r\n","import {NgModule} from '@angular/core';\r\nimport {CommonModule} from '@angular/common';\r\nimport {LayoutSelectionComponent} from './layout-selection.component';\r\nimport {IconModule} from \"@colijnit/corecomponents_v12\";\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n IconModule\r\n ],\r\n declarations: [\r\n LayoutSelectionComponent\r\n ],\r\n exports: [\r\n LayoutSelectionComponent\r\n ]\r\n})\r\nexport class LayoutSelectionModule {\r\n}\r\n","import {Component, HostBinding, Input, ViewEncapsulation} from \"@angular/core\";\r\nimport {Icon} from \"../../../../enum/icon.enum\";\r\nimport {IconCacheService} from \"../../../../service/icon-cache.service\";\r\nimport {\r\n ReportingDocumentEmailSignDocBaseRequest\r\n} from \"@colijnit/mainapi/build/model/reporting-document-email-sign-doc-base-request\";\r\nimport {\r\n ReportingDocumentPrintSignDocBaseRequest\r\n} from \"@colijnit/mainapi/build/model/reporting-document-print-sign-doc-base-request\";\r\n\r\n@Component({\r\n selector: \"co-signature-button\",\r\n template: `\r\n <div class=\"signature-button-wrapper\"\r\n [class.selected]=\"request.parkForDigitalSignature\"\r\n (click)=\"handleToggleSignature()\">\r\n <co-icon\r\n [iconData]=\"iconCacheService.getIcon(icons.FileSignatureRegular)\"\r\n ></co-icon>\r\n </div>\r\n `,\r\n encapsulation: ViewEncapsulation.None\r\n})\r\nexport class SignatureButtonComponent {\r\n public readonly icons: typeof Icon = Icon;\r\n\r\n @Input()\r\n public request: ReportingDocumentEmailSignDocBaseRequest | ReportingDocumentPrintSignDocBaseRequest;\r\n\r\n @HostBinding(\"class.co-signature-button\")\r\n public showClass() {\r\n return true;\r\n }\r\n\r\n constructor(\r\n public iconCacheService: IconCacheService\r\n ) { }\r\n\r\n public handleToggleSignature(): void {\r\n this.request.parkForDigitalSignature = !this.request.parkForDigitalSignature;\r\n }\r\n}\r\n","import {NgModule} from \"@angular/core\";\r\nimport {CommonModule} from \"@angular/common\";\r\nimport {SignatureButtonComponent} from \"./signature-button.component\";\r\nimport {IconModule} from \"@colijnit/corecomponents_v12\";\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n IconModule\r\n ],\r\n declarations: [\r\n SignatureButtonComponent\r\n ],\r\n exports: [\r\n SignatureButtonComponent\r\n ]\r\n})\r\nexport class SignatureButtonModule {\r\n}\r\n","import {NgModule} from '@angular/core';\r\nimport {CommonModule} from '@angular/common';\r\nimport {SendMethodEmailComponent} from './send-method-email.component';\r\nimport {IconModule, InputCheckboxModule} from '@colijnit/corecomponents_v12';\r\nimport {LayoutSelectionModule} from '../layout-selection/layout-selection.module';\r\nimport {SignatureButtonModule} from \"../signature-button/signature-button.module\";\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n InputCheckboxModule,\r\n LayoutSelectionModule,\r\n IconModule,\r\n SignatureButtonModule\r\n ],\r\n declarations: [\r\n SendMethodEmailComponent\r\n ],\r\n exports: [\r\n SendMethodEmailComponent\r\n ]\r\n})\r\nexport class SendMethodEmailModule {\r\n}\r\n","import {Component, HostBinding, Input, ViewEncapsulation} from '@angular/core';\r\nimport {SendMethodService} from '../../service/send-method.service';\r\nimport {ReportLayoutSelectionPrint} from '@colijnit/mainapi/build/model/report-layout-selection-print.bo';\r\nimport {Printer} from '@colijnit/mainapi/build/model/printer.bo';\r\n\r\n@Component({\r\n selector: 'co-send-method-printer',\r\n template: `\r\n <div class=\"printer-layout-selections-wrapper\">\r\n <co-printer-selection [printers]=\"printerList\"></co-printer-selection>\r\n <div class=\"layout-signature-wrapper\">\r\n <co-layout-selection\r\n [(request)]=\"sendMethodService.reportingDocumentPrintSignDocBaseRequest\"\r\n [layouts]=\"layouts\"\r\n ></co-layout-selection>\r\n <co-signature-button\r\n [request]=\"sendMethodService.reportingDocumentPrintSignDocBaseRequest\"\r\n ></co-signature-button>\r\n </div>\r\n </div>\r\n <co-input-checkbox\r\n [model]=\"sendMethodService.reportingDocumentPrintSignDocBaseRequest.saveDefaultPrinterForUser\"\r\n [label]=\"'Koppeling onthouden'\"\r\n (modelChange)=\"handleDefaultPrinterUserChange($event)\"\r\n ></co-input-checkbox>\r\n <co-input-checkbox\r\n [model]=\"sendMethodService.reportingDocumentPrintSignDocBaseRequest.saveDefaultPrinterForAllUsers\"\r\n [label]=\"'Alle gebruikers'\"\r\n (modelChange)=\"handleDefaultPrinterAllUsersChange($event)\"\r\n ></co-input-checkbox>\r\n `,\r\n encapsulation: ViewEncapsulation.None\r\n})\r\nexport class SendMethodPrinterComponent {\r\n @Input()\r\n public printerList: Printer[] = [];\r\n\r\n @Input()\r\n public layouts: ReportLayoutSelectionPrint[] = [];\r\n\r\n @HostBinding('class.co-send-method-printer')\r\n public showClass() {\r\n return true;\r\n }\r\n\r\n constructor(\r\n public sendMethodService: SendMethodService\r\n ) {\r\n }\r\n\r\n public handleDefaultPrinterUserChange(checked: boolean): void {\r\n this.sendMethodService.reportingDocumentPrintSignDocBaseRequest.saveDefaultPrinterForUser = checked;\r\n this.sendMethodService.reportingDocumentPrintSignDocBaseRequestChanged.next(this.sendMethodService.reportingDocumentPrintSignDocBaseRequest);\r\n }\r\n\r\n public handleDefaultPrinterAllUsersChange(checked: boolean): void {\r\n this.sendMethodService.reportingDocumentPrintSignDocBaseRequest.saveDefaultPrinterForAllUsers = checked;\r\n this.sendMethodService.reportingDocumentPrintSignDocBaseRequestChanged.next(this.sendMethodService.reportingDocumentPrintSignDocBaseRequest);\r\n }\r\n}\r\n","import {Component, EventEmitter, HostBinding, Input, OnInit, Output, ViewEncapsulation} from '@angular/core';\r\nimport {animate, state, style, transition, trigger} from '@angular/animations';\r\nimport {Printer} from '@colijnit/mainapi/build/model/printer.bo';\r\nimport {SharedService} from '../../../../service/shared.service';\r\nimport {IconCacheService} from '../../../../service/icon-cache.service';\r\nimport {Icon} from '../../../../enum/icon.enum';\r\nimport {SendMethodService} from '../../service/send-method.service';\r\n\r\n@Component({\r\n selector: 'co-printer-selection',\r\n template: `\r\n <div class=\"printer-selection-wrapper\" (click)=\"showPrinterList = !showPrinterList\">\r\n <div class=\"title\" [textContent]=\"'Printer'\"></div>\r\n <div class=\"printer-name\" [textContent]=\"sendMethodService.reportingDocumentPrintSignDocBaseRequest.printerName || 'Printer kiezen'\"></div>\r\n </div>\r\n <div class=\"layouts-wrapper co-small-scrollbar\" *ngIf=\"showPrinterList\" @showHideLayouts>\r\n <div class=\"layouts-wrapper-header\">\r\n <div class=\"title\" [textContent]=\"'Printer'\"></div>\r\n <div class=\"close-layouts\">\r\n <div class=\"dialog-close-button\" (click)=\"closePrinterClicked()\">\r\n <co-icon [iconData]=\"iconService.getIcon(icons.XSolid)\"></co-icon>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"printer-list-item\" *ngFor=\"let printer of printers\"\r\n [class.selected]=\"sendMethodService.reportingDocumentPrintSignDocBaseRequest.printerName === printer.name\"\r\n (click)=\"handlePrinterClicked(printer)\">\r\n <co-icon class=\"printer-icon\" [iconData]=\"iconService.getIcon(icons.PrintRegular)\"></co-icon>\r\n <div class=\"printer-details\">\r\n <span class=\"printer-name\" [textContent]=\"printer.name\"></span>\r\n <span class=\"printer-status\" [textContent]=\"printer.acceptingJobs\"></span>\r\n </div>\r\n </div>\r\n </div>\r\n `,\r\n animations: [\r\n trigger('showHideLayouts', [\r\n state('void', style({height: 0})),\r\n state('*', style({height: '100%'})),\r\n transition('void => *', animate('200ms ease-in-out')),\r\n transition('* => void', animate('200ms ease-out'))\r\n ])\r\n ],\r\n encapsulation: ViewEncapsulation.None\r\n})\r\nexport class PrinterSelectionComponent implements OnInit {\r\n public readonly icons: typeof Icon = Icon;\r\n\r\n @Input()\r\n public printers: Printer[] = [];\r\n\r\n @HostBinding('class.co-printer-selection')\r\n public showClass() {\r\n return true;\r\n }\r\n\r\n public showPrinterList: boolean = false;\r\n\r\n constructor(\r\n public sendMethodService: SendMethodService,\r\n public iconService: IconCacheService,\r\n private _service: SharedService\r\n ) {\r\n }\r\n\r\n ngOnInit(): void {\r\n if (!this.sendMethodService.reportingDocumentPrintSignDocBaseRequest.printerName && this.printers && this.printers.length > 0) {\r\n const defaultPrinter: Printer = this.printers.find(p => p.isDefault);\r\n if (defaultPrinter) {\r\n this.sendMethodService.reportingDocumentPrintSignDocBaseRequest.printerName = defaultPrinter.name;\r\n this.sendMethodService.reportingDocumentPrintSignDocBaseRequestChanged.next(this.sendMethodService.reportingDocumentPrintSignDocBaseRequest);\r\n }\r\n }\r\n }\r\n\r\n public handlePrinterClicked(printer: Printer): void {\r\n this.sendMethodService.reportingDocumentPrintSignDocBaseRequest.printerName = printer.name;\r\n this.sendMethodService.reportingDocumentPrintSignDocBaseRequestChanged.next(this.sendMethodService.reportingDocumentPrintSignDocBaseRequest);\r\n this.showPrinterList = false;\r\n }\r\n public closePrinterClicked(): void {\r\n this.showPrinterList = false;\r\n }\r\n}\r\n","import {NgModule} from '@angular/core';\r\nimport {CommonModule} from '@angular/common';\r\nimport {PrinterSelectionComponent} from './printer-selection.component';\r\nimport {IconModule} from '@colijnit/corecomponents_v12';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n IconModule\r\n ],\r\n declarations: [\r\n PrinterSelectionComponent\r\n ],\r\n exports: [\r\n PrinterSelectionComponent\r\n ]\r\n})\r\nexport class PrinterSelectionModule {\r\n}\r\n","import {NgModule} from '@angular/core';\r\nimport {CommonModule} from '@angular/common';\r\nimport {SendMethodPrinterComponent} from './send-method-printer.component';\r\nimport {IconModule, InputCheckboxModule} from '@colijnit/corecomponents_v12';\r\nimport {LayoutSelectionModule} from '../layout-selection/layout-selection.module';\r\nimport {PrinterSelectionModule} from '../printer-selection/printer-selection.module';\r\nimport {SignatureButtonModule} from \"../signature-button/signature-button.module\";\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n IconModule,\r\n LayoutSelectionModule,\r\n PrinterSelectionModule,\r\n InputCheckboxModule,\r\n SignatureButtonModule\r\n ],\r\n declarations: [\r\n SendMethodPrinterComponent\r\n ],\r\n exports: [\r\n SendMethodPrinterComponent\r\n ]\r\n})\r\nexport class SendMethodPrinterModule {\r\n}\r\n","import {Component, HostBinding, Input, ViewEncapsulation} from '@angular/core';\r\nimport {ReportLayoutSelectionPrint} from '@colijnit/mainapi/build/model/report-layout-selection-print.bo';\r\nimport {SendMethodService} from '../../service/send-method.service';\r\n\r\n@Component({\r\n selector: 'co-send-method-pdf',\r\n template: `\r\n <div class=\"pdf-layout-selections-wrapper\">\r\n <div class=\"layout-signature-wrapper\">\r\n <co-layout-selection\r\n [(request)]=\"sendMethodService.reportingDocumentPdfBaseRequest\"\r\n [layouts]=\"layouts\"\r\n ></co-layout-selection>\r\n<!--\r\n <co-signature-button\r\n [request]=\"sendMethodService.reportingDocumentPdfBaseRequest\"\r\n ></co-signature-button>\r\n-->\r\n </div>\r\n </div>\r\n `,\r\n encapsulation: ViewEncapsulation.None\r\n})\r\nexport class SendMethodPdfComponent {\r\n\r\n @Input()\r\n public layouts: ReportLayoutSelectionPrint[] = [];\r\n\r\n @HostBinding('class.co-send-method-pdf')\r\n public showClass() {\r\n return true;\r\n }\r\n\r\n constructor(\r\n public sendMethodService: SendMethodService\r\n ) {\r\n }\r\n} \r\n","import {NgModule} from '@angular/core';\r\nimport {CommonModule} from '@angular/common';\r\nimport {SendMethodPdfComponent} from './send-method-pdf.component';\r\nimport {LayoutSelectionModule} from '../layout-selection/layout-selection.module';\r\nimport {SignatureButtonModule} from '../signature-button/signature-button.module';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n LayoutSelectionModule,\r\n SignatureButtonModule\r\n ],\r\n declarations: [\r\n SendMethodPdfComponent\r\n ],\r\n exports: [\r\n SendMethodPdfComponent\r\n ]\r\n})\r\nexport class SendMethodPdfModule {\r\n}\r\n","import {NgModule} from '@angular/core';\r\nimport {CommonModule} from '@angular/common';\r\nimport {ButtonModule, CoDialogModule, IconModule} from '@colijnit/corecomponents_v12';\r\nimport {SendMethodDialogComponent} from './send-method-dialog.component';\r\nimport {StockService} from '../../service/stock.service';\r\nimport {SendMethodService} from './service/send-method.service';\r\nimport {SendMethodEmailModule} from './components/send-method-email/send-method-email.module';\r\nimport {SendMethodPrinterModule} from './components/send-method-printer/send-method-printer.module';\r\nimport {SendMethodPdfModule} from './components/send-method-pdf/send-method-pdf.module';\r\n\r\n@NgModule({\r\n declarations: [\r\n SendMethodDialogComponent\r\n ],\r\n imports: [\r\n CommonModule,\r\n CoDialogModule,\r\n IconModule,\r\n SendMethodEmailModule,\r\n SendMethodPrinterModule,\r\n ButtonModule,\r\n SendMethodPdfModule\r\n ],\r\n exports: [\r\n SendMethodDialogComponent\r\n ],\r\n providers: [\r\n SendMethodService,\r\n StockService\r\n ]\r\n})\r\nexport class SendMethodDialogModule { }\r\n","import {AfterViewInit, Component, EventEmitter, Input, Output, ViewEncapsulation} from \"@angular/core\";\r\nimport {StockService} from \"../../../service/stock.service\";\r\nimport {StockStatus} from \"@colijnit/articleapi/build/model/stock-status.bo\";\r\nimport {CoDropDownListFields} from \"./co-drop-down-list-fields.interface\";\r\nimport {ArticleDetailsBo} from \"@colijnit/articleapi/build/model/article-details.bo\";\r\n\r\n@Component({\r\n selector: \"co-stock-change-amount\",\r\n template: `\r\n <div class=\"stock-transfer\">\r\n <co-dialog-wizard [showCloseIcon]=\"true\" (closeClick)=\"closeDialogClick()\">\r\n <ng-container header>\r\n <span [textContent]=\"'STOCK_CHANGE_REASON' | localize\"></span>\r\n </ng-container>\r\n <div class=\"popup-wrapper\">\r\n<!--\r\n <co-drop-down-list [collection]=\"stockState\"\r\n [fields]=\"stockStateDropdownField\"\r\n [placeholder]=\"'STOCK_STATE' | localize\"\r\n [(model)]=\"selectedArticleDetailsData.stockStateId\"\r\n ></co-drop-down-list>\r\n-->\r\n\r\n <co-input-textarea [(model)]=\"selectedArticleDetailsData.stockStateRemark\"\r\n\r\n ></co-input-textarea>\r\n <div class=\"ok-cancel-buttons\">\r\n <co-button [textContent]=\"'OK' | localize\" (click)=\"handleOkClick(selectedArticleDetailsData)\"></co-button>\r\n <co-button [textContent]=\"'CANCEL' | localize\" (click)=\"handleCancelClick()\"></co-button>\r\n </div>\r\n </div>\r\n </co-dialog-wizard>\r\n </div>\r\n `,\r\n encapsulation: ViewEncapsulation.None\r\n})\r\nexport class StockChangeAmountComponent implements AfterViewInit {\r\n\r\n @Input()\r\n public selectedArticleDetailsData: ArticleDetailsBo;\r\n\r\n @Output()\r\n public readonly closeStockChangeAmount: EventEmitter<any> = new EventEmitter();\r\n\r\n public stockState: StockStatus[] = [];\r\n public stockStateDropdownField: CoDropDownListFields = {text: \"stateDescription\", value: \"stockStateId\"};\r\n\r\n constructor(\r\n private _stockService: StockService\r\n ) {\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.getStockState();\r\n }\r\n\r\n public closeDialogClick(): void {\r\n this.closeStockChangeAmount.emit();\r\n }\r\n\r\n public async handleOkClick(data: ArticleDetailsBo): Promise<void> {\r\n data.selected = true;\r\n data.entryDate = new Date();\r\n await this._stockService.updateArticleDetails(data);\r\n }\r\n\r\n public handleCancelClick(): void {\r\n this.closeStockChangeAmount.emit();\r\n }\r\n\r\n public getStockState(): void {\r\n this._stockService.getStockState().then((state: StockStatus[]) => {\r\n this.stockState = state;\r\n });\r\n }\r\n\r\n}\r\n","import {Component, EventEmitter, Input, Output, ViewEncapsulation} from \"@angular/core\";\r\nimport {ArticleStock as ArticleStockBo} from \"@colijnit/articleapi/build/model/article-stock.bo\";\r\nimport {StockManagementWarehouses} from \"@colijnit/articleapi/build/model/stock-management-warehouses.bo\";\r\n\r\n@Component({\r\n selector: \"co-stock-tab\",\r\n template: `\r\n <co-simple-grid [data]=\"articleStockInformation\"a\r\n class=\"simple-grid\"\r\n [rowsPerPage]=\"20\"\r\n >\r\n <co-simple-grid-column [headerText]=\"'WAREHOUSE' | localize\" [field]=\"'warehouseNo'\" [order]=\"10\"></co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'DESCRIPTION' | localize\" [field]=\"'warehouseName'\" [order]=\"11\"></co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'STOCK' | localize\" [field]=\"'technicalStock'\" [order]=\"12\"></co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'AVAILABLE_STOCK' | localize\" [field]=\"'availableStock'\" [order]=\"13\"></co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'ECONOMICAL_STOCK' | localize\" [field]=\"'economicalStock'\" [order]=\"14\"></co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'LOCATION' | localize\" [field]=\"'locationNo'\" [order]=\"15\">\r\n <ng-template #template let-row=\"row\">\r\n <span class=\"location-link\" [textContent]=\"'LOOK_AT' | localize\" (click)=\"onLocationClick(row)\"></span>\r\n </ng-template>\r\n </co-simple-grid-column>\r\n </co-simple-grid>\r\n `,\r\n encapsulation: ViewEncapsulation.None\r\n})\r\nexport class StockTabComponent {\r\n\r\n @Input()\r\n public articleStockInformation: ArticleStockBo[] = [];\r\n\r\n @Output()\r\n public locationClicked: EventEmitter<StockManagementWarehouses> = new EventEmitter<StockManagementWarehouses>();\r\n\r\n public warehouseToShow: StockManagementWarehouses = new StockManagementWarehouses();\r\n\r\n public onLocationClick(data: ArticleStockBo): void {\r\n this.warehouseToShow.warehouseNo = +data.warehouseNo;\r\n this.locationClicked.emit(this.warehouseToShow);\r\n }\r\n}\r\n","import {Component, EventEmitter, Input, Output, ViewEncapsulation} from \"@angular/core\";\r\nimport {ArticleStock as ArticleStockBo} from \"@colijnit/articleapi/build/model/article-stock.bo\";\r\nimport {IconCacheService} from \"../../../../service/icon-cache.service\";\r\nimport {Icon} from \"../../../../enum/icon.enum\";\r\nimport {StockService} from \"../../../../service/stock.service\";\r\nimport {ArticleTransaction as ArticleTransactionBo} from \"@colijnit/articleapi/build/model/article-transaction.bo\";\r\nimport {PrintPriceStickers} from \"@colijnit/sharedapi/build/model/print-price-stickers.bo\";\r\n\r\n@Component({\r\n selector: \"co-order-tab\",\r\n template: `\r\n <co-simple-grid [data]=\"inOrderInformation\"\r\n class=\"simple-grid\"\r\n [rowsPerPage]=\"20\"\r\n >\r\n <co-simple-grid-column [headerText]=\"'IN_ORDER' | localize\" [field]=\"'transactionNr'\"></co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'CUSTOMER' | localize\" [field]=\"'customerName'\"></co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'DATE' | localize\">\r\n <ng-template #template let-row=\"row\">\r\n <span [textContent]=\"row.transactionDate | date:'dd-MM-yyyy'\"></span>\r\n </ng-template>\r\n </co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'AMOUNT' | localize\" [field]=\"'amountInOrder'\"></co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'WAREHOUSE' | localize\" [field]=\"'warehouseNumber'\"></co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'DESCRIPTION' | localize\" [field]=\"'warehouseDescription'\"></co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'TRANSFER' | localize\" [field]=\"'transfer'\">\r\n <ng-template #template let-row=\"row\">\r\n <co-icon class=\"menu-icon\" [iconData]=\"iconCacheService.getIcon(icons.DeliveryTruck)\" (click)=\"handleStockTransferClick(row)\"></co-icon>\r\n </ng-template>\r\n </co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'STICKER' | localize\" [field]=\"'sticker'\">\r\n <ng-template #template let-row=\"row\">\r\n <co-icon class=\"menu-icon\" [iconData]=\"iconCacheService.getIcon(icons.Print)\" (click)=\"openSendMethodDialog(row)\"></co-icon>\r\n </ng-template>\r\n </co-simple-grid-column>\r\n </co-simple-grid>\r\n `,\r\n encapsulation: ViewEncapsulation.None\r\n})\r\nexport class OrderTabComponent {\r\n public readonly icons: typeof Icon = Icon;\r\n\r\n @Input()\r\n public articleStockInformation: ArticleStockBo[] = [];\r\n\r\n @Input()\r\n public inOrderInformation: ArticleTransactionBo[] = [];\r\n\r\n @Output()\r\n public locationClicked: EventEmitter<ArticleStockBo> = new EventEmitter<ArticleStockBo>();\r\n\r\n @Output()\r\n public readonly transferIconClicked: EventEmitter<ArticleStockBo> = new EventEmitter();\r\n\r\n @Output()\r\n public readonly sendMethodDialogClicked: EventEmitter<PrintPriceStickers> = new EventEmitter();\r\n\r\n constructor(\r\n public iconCacheService: IconCacheService,\r\n private _stockService: StockService,\r\n ) {\r\n }\r\n\r\n public openSendMethodDialog(data): void {\r\n this.sendMethodDialogClicked.emit(data);\r\n }\r\n\r\n public handleStockTransferClick(event): void {\r\n this.transferIconClicked.emit(event);\r\n }\r\n}\r\n","import {ChangeDetectorRef, Component, EventEmitter, Input, OnInit, Output, ViewEncapsulation} from '@angular/core';\r\nimport {Icon} from \"../../../enum/icon.enum\";\r\nimport {ArticleStock as ArticleStockBo} from \"@colijnit/articleapi/build/model/article-stock.bo\";\r\nimport {GetStockHistoryRequest} from \"@colijnit/articleapi/build/model/get-stock-history-request\";\r\nimport {StockService} from \"../../../service/stock.service\";\r\nimport {StockHistoryBo} from \"@colijnit/articleapi/build/model/stock-history.bo\";\r\nimport {Tab} from \"../../tab-bar/tab.interface\";\r\nimport {ArticleTransaction} from \"@colijnit/articleapi/build/model/article-transaction\";\r\nimport {ArticleTransaction as ArticleTransactionBo} from \"@colijnit/articleapi/build/model/article-transaction.bo\";\r\nimport {StockManagementWarehouses} from \"@colijnit/articleapi/build/model/stock-management-warehouses.bo\";\r\nimport {PrintPriceStickers} from \"@colijnit/sharedapi/build/model/print-price-stickers.bo\";\r\nimport {StockForecast} from \"@colijnit/articleapi/build/model/stock-forecast.bo\";\r\nimport {ArticleStockManagement} from \"@colijnit/articleapi/build/model/article-stock-management\";\r\nimport {ArticleDetailsBo} from \"@colijnit/articleapi/build/model/article-details.bo\";\r\nimport {LocalizeService} from '../../../localization/localize.service';\r\nimport {ArticleExtended} from \"@colijnit/articleapi/build/model/article-extended.bo\";\r\nimport {ArticleFlat} from \"@colijnit/articleapi/build/model/article-flat.bo\";\r\n\r\n@Component({\r\n selector: \"co-stock-tabs\",\r\n template: `\r\n <co-tab-bar [wareHouseLabel]=\"'CHOICES' | localize\"\r\n [wareHouseSearchLabel]=\"'SEARCH' | localize\"\r\n [tabs]=\"tabs\"\r\n [dataWareHouseCode]=\"warehouses\"\r\n [selectedWarehouse]=\"selectedWarehouse\"\r\n [secondaryTabs]=\"historyTabs\"\r\n [ActivateSecondaryTabs]=\"tabs[5].active\"\r\n [showWarehouseSelection]=\"tabs[1].active || tabs[2].active\"\r\n (warehouseSelected)=\"handleWarehouseSelected($event)\"\r\n ></co-tab-bar>\r\n\r\n <co-stock-tab *ngIf=\"tabs[0].active\"\r\n [articleStockInformation]=\"stockInformation\"\r\n (locationClicked)=\"handleLocationClicked($event)\"\r\n ></co-stock-tab>\r\n\r\n <co-stock-prognose *ngIf=\"tabs[1].active\"\r\n [stockPrognose]=\"stockPrognose\"\r\n ></co-stock-prognose>\r\n\r\n <co-stock-location *ngIf=\"tabs[2].active\"\r\n [articleStockInfo]=\"articleDetails\"\r\n [articleStockInformation]=\"stockInformation\"\r\n [article]=\"article\"\r\n [articleFlat]=\"articleFlat\"\r\n [selectedWarehouse]=\"selectedWarehouse\"\r\n [dataWareHouseCode]=\"warehouses\"\r\n (transferIconClicked)=\"transferIconClicked.emit($event)\"\r\n (sendMethodDialogClicked)=\"sendMethodDialogClicked.emit($event)\"\r\n\r\n ></co-stock-location>\r\n\r\n <co-order-tab *ngIf=\"tabs[3].active\"\r\n [articleStockInformation]=\"stockInformation\"\r\n [inOrderInformation]=\"inOrderInformation\"\r\n (transferIconClicked)=\"transferIconClicked.emit($event)\"\r\n (sendMethodDialogClicked)=\"sendMethodDialogClicked.emit($event)\"\r\n ></co-order-tab>\r\n\r\n <co-order-stock-tab *ngIf=\"tabs[4].active\"\r\n [orderInformation]=\"orderInformation\"\r\n ></co-order-stock-tab>\r\n\r\n <co-stock-history *ngIf=\"historyTabs[0].active && tabs[5].active\"\r\n [stockHistory]=\"stockHistory\"\r\n ></co-stock-history>\r\n\r\n <co-order-supply-stock-history *ngIf=\"historyTabs[1].active && tabs[5].active\"\r\n [orderSupplyStockHistory]=\"orderSupplyStockHistory\"\r\n ></co-order-supply-stock-history>\r\n\r\n <co-order-stock-commission-history *ngIf=\"historyTabs[2].active && tabs[5].active\"\r\n [orderStockCommissionHistory]=\"orderCommissionStockHistory\"\r\n ></co-order-stock-commission-history>\r\n\r\n <co-order-stock-history *ngIf=\"historyTabs[3].active && tabs[5].active\"\r\n [orderStockHistory]=\"orderStockHistory\"\r\n ></co-order-stock-history>\r\n\r\n <co-allocation-stock-history *ngIf=\"historyTabs[4].active && tabs[5].active\"\r\n [allocationStockHistory]=\"orderAllocationStockHistory\"\r\n ></co-allocation-stock-history>\r\n\r\n `,\r\n encapsulation: ViewEncapsulation.None\r\n})\r\nexport class StockTabsComponent implements OnInit {\r\n public readonly icons: typeof Icon = Icon;\r\n\r\n @Input()\r\n public stockInformation: ArticleStockBo[] = [];\r\n\r\n @Input()\r\n public article: ArticleExtended;\r\n\r\n @Input()\r\n public articleFlat: ArticleFlat;\r\n\r\n\r\n @Input()\r\n public warehouses: StockManagementWarehouses[] = [];\r\n\r\n @Output()\r\n public readonly transferIconClicked: EventEmitter<ArticleStockBo> = new EventEmitter();\r\n\r\n @Output()\r\n public readonly sendMethodDialogClicked: EventEmitter<PrintPriceStickers> = new EventEmitter();\r\n\r\n\r\n public selectedLocationNo: string;\r\n public stockHistory: StockHistoryBo[] = [];\r\n public orderSupplyStockHistory: StockHistoryBo[] = [];\r\n public orderCommissionStockHistory: StockHistoryBo[] = [];\r\n public orderStockHistory: StockHistoryBo[] = [];\r\n public orderAllocationStockHistory: StockHistoryBo[] = [];\r\n public inOrderInformation: ArticleTransactionBo[] = [];\r\n public orderInformation: ArticleTransactionBo[] = [];\r\n public stockPrognose: StockForecast[] = [];\r\n public selectedWarehouse: StockManagementWarehouses;\r\n public articleDetailsInformation: ArticleStockManagement = new ArticleStockManagement()\r\n public showWarehouseSelection: boolean = false;\r\n public articleDetails: ArticleDetailsBo[] = [];\r\n\r\n public tabs: Tab[] = [];\r\n public historyTabs: Tab[] = [];\r\n\r\n constructor(\r\n private _stockService: StockService,\r\n private _localizeService: LocalizeService,\r\n private _changeDetector: ChangeDetectorRef,\r\n ) {\r\n }\r\n\r\n ngOnInit() {\r\n this.tabs = [\r\n {title: this._localizeService.get('OVERVIEW'), active: true},\r\n {title: this._localizeService.get('STOCK_FORECAST'), active: false},\r\n {title: this._localizeService.get('STOCK_DETAILS'), active: false},\r\n {title: this._localizeService.get('ALREADY_IN_ORDER'), active: false},\r\n {title: this._localizeService.get('IN_ORDER'), active: false},\r\n {title: this._localizeService.get('HISTORY'), active: false},\r\n ];\r\n\r\n this.historyTabs = [\r\n {title: this._localizeService.get('STOCK'), active: true},\r\n {\r\n title: this._localizeService.get('ORDER_STOCK'),\r\n active: false\r\n },\r\n {\r\n title: this._localizeService.get('ORDER_COMMISSION'),\r\n active: false\r\n },\r\n {title: this._localizeService.get('ORDER'), active: false},\r\n {\r\n title: this._localizeService.get('ALLOCATION'),\r\n active: false\r\n },\r\n ];\r\n\r\n\r\n }\r\n\r\n public handleLocationClicked(data: StockManagementWarehouses): void {\r\n this.tabs[0].active = false;\r\n this.tabs[2].active = true;\r\n this.selectedWarehouse = this.wareHouseForCode(data.warehouseNo);\r\n this.handleWarehouseSelected(this.selectedWarehouse);\r\n this.getStockData(data);\r\n }\r\n\r\n public getStockHistory(): void {\r\n const stockHistoryInformation: GetStockHistoryRequest = new GetStockHistoryRequest();\r\n stockHistoryInformation.type = \"V\";\r\n stockHistoryInformation.goodId = this.article.goodId.toString();\r\n this._stockService.getStockHistory(stockHistoryInformation).then(result => {\r\n this.stockHistory = result\r\n });\r\n }\r\n\r\n public getOrderSupplyStockHistory(): void {\r\n const stockHistoryInformation: GetStockHistoryRequest = new GetStockHistoryRequest();\r\n stockHistoryInformation.type = \"O\";\r\n stockHistoryInformation.goodId = this.article.goodId.toString();\r\n this._stockService.getStockHistory(stockHistoryInformation).then(result => {\r\n this.orderSupplyStockHistory = result;\r\n });\r\n }\r\n\r\n public getOrderCommissionStockHistory(): void {\r\n const stockHistoryInformation: GetStockHistoryRequest = new GetStockHistoryRequest();\r\n stockHistoryInformation.type = \"C\";\r\n stockHistoryInformation.goodId = this.article.goodId.toString();\r\n this._stockService.getStockHistory(stockHistoryInformation).then(result => {\r\n this.orderCommissionStockHistory = result;\r\n });\r\n }\r\n\r\n public getOrderStockHistory(): void {\r\n const stockHistoryInformation: GetStockHistoryRequest = new GetStockHistoryRequest();\r\n stockHistoryInformation.type = \"B\";\r\n stockHistoryInformation.goodId = this.article.goodId.toString();\r\n this._stockService.getStockHistory(stockHistoryInformation).then(result => {\r\n this.orderStockHistory = result;\r\n });\r\n }\r\n\r\n public getAllocationStockHistory(): void {\r\n const stockHistoryInformation: GetStockHistoryRequest = new GetStockHistoryRequest();\r\n stockHistoryInformation.type = \"T\";\r\n stockHistoryInformation.goodId = this.article.goodId.toString();\r\n this._stockService.getStockHistory(stockHistoryInformation).then(result => {\r\n this.orderAllocationStockHistory = result;\r\n });\r\n }\r\n\r\n public getInOrderData(): void {\r\n const inOrderData: ArticleTransaction = new ArticleTransaction();\r\n inOrderData.type = \"V\";\r\n inOrderData.goodId = this.stockInformation[0].goodId.toString();\r\n this._stockService.getArticleTransaction(inOrderData).then(result => {\r\n this.inOrderInformation = result;\r\n });\r\n }\r\n\r\n public getOrderData(): void {\r\n const orderData: ArticleTransaction = new ArticleTransaction();\r\n orderData.type = \"I\";\r\n orderData.goodId = this.stockInformation[0].goodId.toString();\r\n this._stockService.getArticleTransaction(orderData).then(result => {\r\n this.orderInformation = result;\r\n });\r\n }\r\n\r\n public getStockPrognose(warehouseNo: number): void {\r\n this._stockService.stockPrognose(this.article.goodId, warehouseNo).then(result => {\r\n this.stockPrognose = result;\r\n });\r\n }\r\n\r\n public handleWarehouseSelected(event: StockManagementWarehouses): void {\r\n this.selectedWarehouse = event;\r\n this._stockService.warehouseSelected.emit(event);\r\n if (this.tabs[1].active) {\r\n this.getStockPrognose(this.selectedWarehouse.warehouseNo);\r\n }\r\n if (this.tabs[2].active) {\r\n this.articleDetailsInformation.warehouseNumber = event.warehouseNo;\r\n this.articleDetailsInformation.goodId = this.article.goodId.toString();\r\n this._stockService.getArticleDetails(this.articleDetailsInformation).then((details) => {\r\n this.articleDetails = details;\r\n });\r\n }\r\n\r\n }\r\n\r\n public getStockData(warehouse: StockManagementWarehouses) {\r\n this.handleWarehouseSelected(warehouse);\r\n this.getStockPrognose(warehouse.warehouseNo);\r\n this.getOrderData();\r\n this.getInOrderData();\r\n this.getAllocationStockHistory();\r\n this.getOrderStockHistory();\r\n this.getOrderCommissionStockHistory();\r\n this.getOrderSupplyStockHistory();\r\n this.getStockHistory();\r\n this._changeDetector.markForCheck();\r\n this._changeDetector.detectChanges();\r\n\r\n }\r\n\r\n public wareHouseForCode(code: number) {\r\n return this.warehouses.find(warehouse => warehouse.warehouseNo === code);\r\n }\r\n}\r\n","import {Component, Input, ViewEncapsulation} from \"@angular/core\";\r\nimport {Icon} from \"../../../enum/icon.enum\";\r\nimport {ArticleStock as ArticleStockBo} from \"@colijnit/articleapi/build/model/article-stock.bo\";\r\n\r\n@Component({\r\n selector: \"co-stock-history-tabs\",\r\n template: `\r\n <div class=\"stock-history-tabs-wrapper\">\r\n <div class=\"tab-container\">\r\n <div class=\"tab-header\">\r\n <button class=\"tab-button\" (click)=\"selectedTab = 0\" [class.active]=\"selectedTab === 0\">{{ 'STOCK' | localize }}</button>\r\n <button class=\"tab-button\" (click)=\"selectedTab = 1\" [class.active]=\"selectedTab === 1\">{{ 'ORDER_STOCK' | localize }}</button>\r\n <button class=\"tab-button\" (click)=\"selectedTab = 2\" [class.active]=\"selectedTab === 2\">{{ 'ORDER_COMMISSION' | localize }}</button>\r\n <button class=\"tab-button\" (click)=\"selectedTab = 3\" [class.active]=\"selectedTab === 3\">{{ 'ORDER' | localize }}</button>\r\n <button class=\"tab-button\" (click)=\"selectedTab = 4\" [class.active]=\"selectedTab === 4\">{{ 'ALLOCATION' | localize }}</button>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n\r\n `,\r\n encapsulation: ViewEncapsulation.None\r\n})\r\nexport class StockHistoryTabsComponent {\r\n public readonly icons: typeof Icon = Icon;\r\n\r\n public selectedTab = 0;\r\n\r\n @Input()\r\n public stockInformation: ArticleStockBo[];\r\n\r\n}\r\n","import {Component, Input, ViewEncapsulation} from \"@angular/core\";\r\nimport {IconCacheService} from \"../../../../service/icon-cache.service\";\r\nimport {Icon} from \"../../../../enum/icon.enum\";\r\nimport {StockService} from \"../../../../service/stock.service\";\r\nimport {ArticleTransaction as ArticleTransactionBo} from \"@colijnit/articleapi/build/model/article-transaction.bo\";\r\n\r\n@Component({\r\n selector: \"co-order-stock-tab\",\r\n template: `\r\n <co-simple-grid [data]=\"orderInformation\"\r\n class=\"simple-grid\"\r\n [rowsPerPage]=\"20\"\r\n >\r\n <co-simple-grid-column [headerText]=\"'PURCHASE_ORDER_NR' | localize\" [field]=\"'transactionNr'\"></co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'DATE' | localize\">\r\n <ng-template #template let-row=\"row\">\r\n <span [textContent]=\"row.transactionDate | date:'dd-MM-yyyy'\"></span>\r\n </ng-template>\r\n </co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'AMOUNT' | localize\" [field]=\"'amountInOrder'\"></co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'RESERVED' | localize\" [field]=\"'reserved'\"></co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'FREE_STOCK' | localize\" [field]=\"'InOrderForStock'\"></co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'DELIVERY_DATE' | localize\">\r\n <ng-template #template let-row=\"row\">\r\n <span [textContent]=\"row.deliveryDate | date:'dd-MM-yyyy'\"></span>\r\n </ng-template>\r\n </co-simple-grid-column>\r\n </co-simple-grid>\r\n `,\r\n encapsulation: ViewEncapsulation.None\r\n})\r\nexport class OrderStockTabComponent {\r\n public readonly icons: typeof Icon = Icon;\r\n\r\n @Input()\r\n public orderInformation: ArticleTransactionBo[] = [];\r\n\r\n constructor(\r\n public iconCacheService: IconCacheService,\r\n private _stockService: StockService,\r\n ) {\r\n }\r\n}\r\n","import {ChangeDetectorRef, Component, EventEmitter, Input, OnInit, Output, ViewEncapsulation} from \"@angular/core\";\r\nimport {ArticleStock as ArticleStockBo} from \"@colijnit/articleapi/build/model/article-stock.bo\";\r\nimport {IconCacheService} from \"../../../../service/icon-cache.service\";\r\nimport {Icon} from \"../../../../enum/icon.enum\";\r\nimport {StockService} from \"../../../../service/stock.service\";\r\nimport {StockManagementWarehouses} from \"@colijnit/articleapi/build/model/stock-management-warehouses.bo\";\r\nimport {ArticleStockManagement} from \"@colijnit/articleapi/build/model/article-stock-management\";\r\nimport {ArticleDetailsBo} from \"@colijnit/articleapi/build/model/article-details.bo\";\r\nimport {StockLocation} from \"@colijnit/articleapi/build/model/stock-location.bo\";\r\nimport {PrintPriceStickers} from \"@colijnit/sharedapi/build/model/print-price-stickers.bo\";\r\nimport {StockStatus} from \"@colijnit/articleapi/build/model/stock-status.bo\";\r\nimport {Subscription} from \"rxjs\";\r\nimport {ArticleExtended} from \"@colijnit/articleapi/build/model/article-extended.bo\";\r\nimport {ArticleFlat} from \"@colijnit/articleapi/build/model/article-flat.bo\";\r\n\r\n@Component({\r\n selector: \"co-stock-location\",\r\n template: `\r\n <div class=\"stock-grid\">\r\n <co-dialog *ngIf=\"showConfirmationDialog\" [showCloseIcon]=\"true\" [modal]=\"true\" [headerTemplate]=\"headerTemplate\"\r\n [footerTemplate]=\"footerTemplate\">\r\n <ng-template #headerTemplate>\r\n <div class=\"header-wrapper\">\r\n <span [textContent]=\"'CONFIRM_STOCK_CHANGE' | localize\"></span>\r\n </div>\r\n </ng-template>\r\n <div class=\"dialog-wrapper\">\r\n <co-list-of-values [label]=\"'STATUS' | localize\"\r\n [model]=\"statusForId(selectedArticleDetailsData.stockStateId)\"\r\n [collection]=\"stockStatus\"\r\n [displayField]=\"'stateDescription'\"\r\n (modelChange)=\"handleStockStatusChange($event)\"\r\n ></co-list-of-values>\r\n <co-input-text [placeholder]=\"'REMARK' | localize\"\r\n (modelChange)=\"handleStockStatusRemarkChange($event)\"></co-input-text>\r\n </div>\r\n <ng-template #footerTemplate>\r\n <div class=\"button-wrapper\">\r\n <co-button (click)=\"handleOkClick()\" [label]=\"'OK'| localize\" [disabled]=\"disabled()\"></co-button>\r\n <co-button class=\"cancel-button\" (click)=\"showConfirmationDialog = false\"\r\n [label]=\"'CANCEL'| localize \"></co-button>\r\n </div>\r\n </ng-template>\r\n </co-dialog>\r\n <co-simple-grid [data]=\"articleStockInfo\"\r\n class=\"simple-grid\"\r\n [rowsPerPage]=\"20\"\r\n [showAdd]=\"true\"\r\n [inlineEdit]=\"true\"\r\n (dblClickRow)=\"lockSelectedRow($event)\"\r\n [showToolbar]=\"true\"\r\n (keydown.enter)=\"onOkClickSendLocations()\"\r\n\r\n >\r\n <co-simple-grid-column [headerText]=\"'STOCK' | localize\" [field]=\"'amountInStock'\">\r\n <ng-template #editTemplate let-row=\"row\">\r\n <co-input-text [(model)]=\"row['amountInStock']\"\r\n [label]=\"'STOCK' | localize\"\r\n (modelChange)=\"amountInStockChanged($event)\"\r\n ></co-input-text>\r\n </ng-template>\r\n </co-simple-grid-column>\r\n <co-simple-grid-column *ngIf=\"articleFlat?.locationRegistered\" [headerText]=\"'LOCATION' | localize\" [field]=\"'locationNo'\">\r\n <ng-template #editTemplate let-row=\"row\">\r\n <co-list-of-values\r\n [model]=\"locationForNumber(row['locationNo'])\"\r\n [collection]=\"stockLocations\"\r\n [displayField]=\"'description'\"\r\n [label]=\"'LOCATION' | localize\"\r\n (click)=\"onLocationDropdownClick()\"\r\n [required]=\"true\"\r\n (modelChange)=\"locationChanged(row, $event)\"\r\n ></co-list-of-values>\r\n </ng-template>\r\n </co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'BATCH' | localize\" [field]=\"'batchNo'\">\r\n <ng-template #editTemplate let-row=\"row\">\r\n <co-input-text *ngIf=\"articleFlat?.batch\" [model]=\"selectedArticleDetailsData.batchNo\"\r\n [placeholder]=\"'BATCH' | localize\"\r\n (modelChange)=\"row['batchNo'] = $event\"\r\n ></co-input-text>\r\n </ng-template>\r\n </co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'SERIAL_NO' | localize\" [field]=\"'serialNo'\">\r\n <ng-template #editTemplate let-row=\"row\">\r\n <co-input-text *ngIf=\"articleFlat?.serial\" [model]=\"selectedArticleDetailsData.serialNo\"\r\n [placeholder]=\"'SERIAL_NO' | localize\"\r\n (modelChange)=\"row['serialNo'] = $event\"\r\n ></co-input-text>\r\n </ng-template>\r\n </co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'ALLOCATED' | localize\" [field]=\"'stockAssigned'\">\r\n <ng-template #editTemplate let-row=\"row\">\r\n <span [textContent]=\"row['stockAssigned']\"></span>\r\n </ng-template>\r\n </co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'AVAILABLE_STOCK' | localize\" [field]=\"'amountInStockFree'\">\r\n <ng-template #editTemplate let-row=\"row\">\r\n <span [textContent]=\"row['amountInStockFree']\"></span>\r\n </ng-template>\r\n </co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'VALUTA' | localize\" [field]=\"'currency'\">\r\n <ng-template #editTemplate let-row=\"row\">\r\n <span [textContent]=\"row['currency']\"></span>\r\n </ng-template>\r\n </co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'PURCHASE_PRICE' | localize\" [field]=\"'purchasePrice'\">\r\n <ng-template #editTemplate let-row=\"row\">\r\n <span [textContent]=\"row['purchasePrice']\"></span>\r\n </ng-template>\r\n </co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'SUPPLIERNR' | localize\" [field]=\"'supplierNo'\">\r\n <ng-template #editTemplate let-row=\"row\">\r\n <span [textContent]=\"row['supplierNo']\"></span>\r\n </ng-template>\r\n </co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'TRANSFER' | localize\" [field]=\"'transfer'\">\r\n <ng-template #template let-row=\"row\">\r\n <co-icon class=\"menu-icon\" [iconData]=\"iconCacheService.getIcon(icons.DeliveryTruck)\"\r\n (click)=\"handleStockTransferClick(row)\"></co-icon>\r\n </ng-template>\r\n <ng-template #editTemplate></ng-template>\r\n </co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'STICKER' | localize\" [field]=\"'sticker'\">\r\n <ng-template #template let-row=\"row\">\r\n <co-icon class=\"menu-icon\" [iconData]=\"iconCacheService.getIcon(icons.Print)\"\r\n (click)=\"openSendMethodDialog(row)\"></co-icon>\r\n </ng-template>\r\n <ng-template #editTemplate></ng-template>\r\n </co-simple-grid-column>\r\n </co-simple-grid>\r\n </div>\r\n `,\r\n encapsulation: ViewEncapsulation.None\r\n})\r\nexport class StockLocationComponent implements OnInit {\r\n public readonly icons: typeof Icon = Icon;\r\n\r\n @Input()\r\n public articleStockInfo: ArticleDetailsBo[] = [];\r\n\r\n @Input()\r\n public articleStockInformation: ArticleStockBo[] = [];\r\n\r\n @Input()\r\n public set article(article: ArticleExtended) {\r\n\r\n };\r\n\r\n @Input()\r\n public articleFlat: ArticleFlat;\r\n\r\n\r\n @Input()\r\n public dataWareHouseCode: StockManagementWarehouses[] = [];\r\n\r\n @Output()\r\n public readonly transferIconClicked: EventEmitter<ArticleStockBo> = new EventEmitter();\r\n\r\n @Output()\r\n public readonly sendMethodDialogClicked: EventEmitter<PrintPriceStickers> = new EventEmitter();\r\n\r\n @Input()\r\n public selectedWarehouse: StockManagementWarehouses;\r\n\r\n\r\n public articleDetails: ArticleDetailsBo;\r\n public showConfirmationDialog:boolean = false;\r\n\r\n\r\n public articleDetailsInformation: ArticleStockManagement = new ArticleStockManagement()\r\n public stockLocations: StockLocation[] = [];\r\n\r\n public stockStatus: StockStatus[] = [];\r\n public selectedArticleDetailsData: ArticleDetailsBo = new ArticleDetailsBo();\r\n\r\n public selectedLocationNo: string;\r\n\r\n private _subs: Subscription[] = [];\r\n constructor(\r\n public iconCacheService: IconCacheService,\r\n private _stockService: StockService,\r\n private _changeDetector: ChangeDetectorRef,\r\n\r\n ) {\r\n }\r\n\r\n ngOnInit() {\r\n this._stockService.getStockState().then( result => {\r\n this.stockStatus = result;\r\n });\r\n this._subs.push( this._stockService.warehouseSelected.subscribe( selectedWarehouse => {\r\n this._stockService.getStockManagementLocations(selectedWarehouse.warehouseNo).then( result => {\r\n this.stockLocations = result;\r\n });\r\n }));\r\n\r\n }\r\n\r\n public lockSelectedRow(row): void {\r\n this._stockService.getStockManagementLocations(this.selectedWarehouse.warehouseNo).then( result => {\r\n this.stockLocations = result;\r\n this.selectedLocationNo = row.locationNo;\r\n this._stockService.lockArticleDetails(row);\r\n this.selectedArticleDetailsData = row;\r\n });\r\n\r\n }\r\n\r\n public onLocationDropdownClick(): void {\r\n this._stockService.getStockManagementLocations(this.selectedWarehouse.warehouseNo).then((locations) => {\r\n this.stockLocations = locations;\r\n });\r\n }\r\n\r\n public locationChanged(row: ArticleDetailsBo, event: StockLocation): void {\r\n this.selectedLocationNo = event.locationNo;\r\n row.locationNo = event.locationNo;\r\n }\r\n\r\n public amountInStockChanged(data): void {\r\n this.selectedArticleDetailsData.amountInStock = data;\r\n }\r\n\r\n public openSendMethodDialog(data): void {\r\n this.sendMethodDialogClicked.emit(data);\r\n }\r\n\r\n public handleStockTransferClick(event): void {\r\n this.transferIconClicked.emit(event);\r\n }\r\n public onOkClickSendLocations(): void {\r\n this.showConfirmationDialog = true;\r\n }\r\n\r\n public handleOkClick() {\r\n this.selectedArticleDetailsData.selected = true;\r\n this.selectedArticleDetailsData.goodId = this.articleFlat.goodId;\r\n this.selectedArticleDetailsData.entryDate = new Date();\r\n this.selectedArticleDetailsData.warehouseNo = this.selectedWarehouse.warehouseNo;\r\n this.selectedArticleDetailsData.locationNo = this.selectedLocationNo?.toString();\r\n this._stockService.updateArticleDetails(this.selectedArticleDetailsData).then( result => {\r\n\r\n this.articleDetailsInformation.goodId = this.selectedArticleDetailsData.goodId?.toString();\r\n this.articleDetailsInformation.warehouseNumber = this.selectedArticleDetailsData.warehouseNo;\r\n this._stockService.getArticleDetails(this.articleDetailsInformation).then((details) => {\r\n this.showConfirmationDialog = false;\r\n this._changeDetector.detectChanges();\r\n this.articleStockInfo = details;\r\n });\r\n }\r\n );\r\n }\r\n\r\n public handleStockStatusChange(status: StockStatus) {\r\n this.selectedArticleDetailsData.stockStateId = status.stockStateId;\r\n }\r\n\r\n public handleStockStatusRemarkChange(remark: string) {\r\n this.selectedArticleDetailsData.stockStateRemark = remark;\r\n }\r\n\r\n public disabled() {\r\n return (!this.selectedArticleDetailsData?.stockStateId && this.selectedArticleDetailsData?.stockStateRemark?.length <= 1);\r\n }\r\n\r\n\r\n public statusForId(id: number) {\r\n return this.stockStatus.find( status => status.stockStateId === id);\r\n }\r\n\r\n public locationForNumber(number: number) {\r\n return this.stockLocations?.find( location => location.locationNo === number?.toString());\r\n }\r\n\r\n}\r\n","import {Component, Input, ViewEncapsulation} from \"@angular/core\";\r\nimport {IconCacheService} from \"../../../../service/icon-cache.service\";\r\nimport {StockService} from \"../../../../service/stock.service\";\r\nimport {StockHistoryBo} from \"@colijnit/articleapi/build/model/stock-history.bo\";\r\nimport {Icon} from \"../../../../enum/icon.enum\";\r\n\r\n@Component({\r\n selector: \"co-stock-history\",\r\n template: `\r\n <co-simple-grid [data]=\"stockHistory\"\r\n class=\"simple-grid\"\r\n [rowsPerPage]=\"20\"\r\n >\r\n <co-simple-grid-column [headerText]=\"'MUTATION_DATE' | localize\">\r\n <ng-template #template let-row=\"row\">\r\n <span [textContent]=\"row.mutationDate | date:'dd-MM-yyyy'\"></span>\r\n </ng-template>\r\n </co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'MUTATION_TIME' | localize\" [field]=\"'mutationTime'\"></co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'AMOUNT' | localize\" [field]=\"'amount'\"></co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'WAREHOUSE' | localize\" [field]=\"'wareHouseNr'\"></co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'LOCATION' | localize\" [field]=\"'locationNr'\"></co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'DOCUMENT_NUMBER' | localize\" [field]=\"'docNr'\"></co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'LINE' | localize\" [field]=\"'transLineNr'\"></co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'STOCK_STATE' | localize\" [field]=\"'stockStateId'\"></co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'STOCK_REMARK' | localize\" [field]=\"'stockStateRemarkId'\"></co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'VALUTA' | localize\" [field]=\"'currencyCode'\"></co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'RELATION_NR' | localize\" [field]=\"'relationNr'\"></co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'USER' | localize\" [field]=\"'user'\"></co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'MUTATION_TYPE' | localize\" [field]=\"'mutationType'\"></co-simple-grid-column>\r\n </co-simple-grid>\r\n `,\r\n encapsulation: ViewEncapsulation.None\r\n})\r\nexport class StockHistoryComponent {\r\n public readonly icons: typeof Icon = Icon;\r\n\r\n @Input()\r\n public stockHistoryInformation: StockHistoryBo[] = [];\r\n\r\n @Input()\r\n public articleGoodId: string;\r\n\r\n @Input()\r\n public stockHistory: StockHistoryBo[] = [];\r\n\r\n constructor(\r\n public iconCacheService: IconCacheService,\r\n private _stockService: StockService,\r\n ) {\r\n }\r\n}\r\n","import {Component, EventEmitter, Input, Output, ViewEncapsulation} from \"@angular/core\";\r\nimport {Tab} from \"./tab.interface\";\r\nimport {CoDropDownListFields} from \"../stock/stock-transfer/co-drop-down-list-fields.interface\";\r\nimport {StockManagementWarehouses} from \"@colijnit/articleapi/build/model/stock-management-warehouses.bo\";\r\nimport {ArticleStockManagement} from \"@colijnit/articleapi/build/model/article-stock-management\";\r\nimport {StockService} from \"../../service/stock.service\";\r\nimport {ArticleDetailsBo} from \"@colijnit/articleapi/build/model/article-details.bo\";\r\n\r\n@Component({\r\n selector: \"co-tab-bar\",\r\n template: `\r\n <div class=\"tab-bar-wrapper\">\r\n <div class=\"tab-bar-warehouse-wrapper\">\r\n <div class=\"stock-location-group\">\r\n <div class=\"stock-location-right-group\">\r\n <co-list-of-values *ngIf=\"showWarehouseSelection\"\r\n [label]=\"wareHouseLabel\"\r\n [displayField]=\"'warehouseDescription'\"\r\n [collection]=\"dataWareHouseCode\"\r\n [multiselect]=\"false\"\r\n [required]=\"false\"\r\n [readonly]=\"false\"\r\n [customCssClass]=\"'mini-scrollbar'\"\r\n [searchPlaceholder]=\"wareHouseSearchLabel\"\r\n [model]=\"selectedWarehouse\"\r\n (modelChange)=\"onSelectWarehouse($event)\"\r\n class=\"custom-height\"\r\n >\r\n </co-list-of-values>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"tab-bar\">\r\n <div class=\"tab-bar-primary\">\r\n <button *ngFor=\"let tab of tabs\" [class.active]=\"tab.active\" (click)=\"selectTab(tab)\">\r\n {{tab.title}}\r\n </button>\r\n </div>\r\n <div class=\"secondary-tab-bar\" *ngIf=\"ActivateSecondaryTabs\">\r\n <button *ngFor=\"let tab of secondaryTabs\" [class.active]=\"tab.active\" (click)=\"selectSecondaryTab(tab)\">\r\n {{tab.title}}\r\n </button>\r\n </div>\r\n </div>\r\n </div>\r\n `,\r\n encapsulation: ViewEncapsulation.None\r\n})\r\nexport class TabBarComponent {\r\n\r\n @Input()\r\n public wareHouseLabel: string;\r\n\r\n @Input()\r\n public wareHouseSearchLabel: string;\r\n\r\n @Input()\r\n public tabs: Tab[] = [];\r\n\r\n @Input()\r\n public secondaryTabs: Tab[] = [];\r\n\r\n @Input()\r\n public ActivateSecondaryTabs: boolean = false;\r\n\r\n @Input()\r\n public dataWareHouseCode: StockManagementWarehouses[] = [];\r\n\r\n @Input()\r\n public article: any;\r\n\r\n @Input()\r\n public showWarehouseSelection: boolean = false;\r\n\r\n @Output()\r\n public warehouseSelected: EventEmitter<StockManagementWarehouses> = new EventEmitter<StockManagementWarehouses>();\r\n\r\n @Input()\r\n public selectedWarehouse: any;\r\n\r\n constructor(\r\n private _stockService: StockService,\r\n ) {\r\n }\r\n\r\n public selectTab(tab: Tab): void {\r\n if (tab.clickHandler) {\r\n tab.clickHandler();\r\n }\r\n this.tabs.forEach(t => t.active = false);\r\n tab.active = true;\r\n }\r\n\r\n public selectSecondaryTab(secondaryTab: Tab): void {\r\n if (secondaryTab.clickHandler) {\r\n secondaryTab.clickHandler();\r\n }\r\n this.secondaryTabs.forEach(t => t.active = false);\r\n secondaryTab.active = true;\r\n }\r\n\r\n public onSelectWarehouse(event): void {\r\n this.warehouseSelected.emit(event);\r\n }\r\n\r\n}\r\n","import {NgModule} from \"@angular/core\";\r\nimport {CommonModule} from \"@angular/common\";\r\nimport {TabBarComponent} from \"./tab-bar.component\";\r\nimport {ListOfValuesModule} from \"@colijnit/corecomponents_v12\";\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n ListOfValuesModule,\r\n ],\r\n declarations: [\r\n TabBarComponent\r\n ],\r\n exports: [\r\n TabBarComponent\r\n ]\r\n})\r\nexport class TabBarModule {\r\n\r\n}\r\n","import {Component, Input, ViewEncapsulation} from \"@angular/core\";\r\nimport {IconCacheService} from \"../../../../service/icon-cache.service\";\r\nimport {StockHistoryBo} from \"@colijnit/articleapi/build/model/stock-history.bo\";\r\nimport {Icon} from \"../../../../enum/icon.enum\";\r\n\r\n@Component({\r\n selector: \"co-order-supply-stock-history\",\r\n template: `\r\n <co-simple-grid [data]=\"orderSupplyStockHistory\"\r\n class=\"simple-grid\"\r\n [rowsPerPage]=\"20\"\r\n >\r\n <co-simple-grid-column [headerText]=\"'MUTATION_DATE' | localize\">\r\n <ng-template #template let-row=\"row\">\r\n <span [textContent]=\"row.mutationDate | date:'dd-MM-yyyy'\"></span>\r\n </ng-template>\r\n </co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'MUTATION_TIME' | localize\" [field]=\"'mutationTime'\"></co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'AMOUNT' | localize\" [field]=\"'amount'\"></co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'WAREHOUSE' | localize\" [field]=\"'wareHouseNr'\"></co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'LOCATION' | localize\" [field]=\"'locationNr'\"></co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'DOCUMENT_NUMBER' | localize\" [field]=\"'docNr'\"></co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'LINE' | localize\" [field]=\"'transLineNr'\"></co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'STOCK_STATE' | localize\" [field]=\"'stockStateId'\"></co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'STOCK_REMARK' | localize\" [field]=\"'stockStateRemarkId'\"></co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'VALUTA' | localize\" [field]=\"'currencyCode'\"></co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'RELATION_NR' | localize\" [field]=\"'relationNr'\"></co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'USER' | localize\" [field]=\"'user'\"></co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'MUTATION_TYPE' | localize\" [field]=\"'mutationType'\"></co-simple-grid-column>\r\n </co-simple-grid>\r\n `,\r\n encapsulation: ViewEncapsulation.None\r\n})\r\nexport class OrderSupplyStockHistoryComponent {\r\n public readonly icons: typeof Icon = Icon;\r\n\r\n @Input()\r\n public orderSupplyStockHistory: StockHistoryBo[] = [];\r\n\r\n constructor(\r\n public iconCacheService: IconCacheService,\r\n ) {\r\n }\r\n\r\n}\r\n","import {Component, Input, ViewEncapsulation} from \"@angular/core\";\r\nimport {IconCacheService} from \"../../../../service/icon-cache.service\";\r\nimport {StockHistoryBo} from \"@colijnit/articleapi/build/model/stock-history.bo\";\r\nimport {Icon} from \"../../../../enum/icon.enum\";\r\n\r\n@Component({\r\n selector: \"co-order-stock-commission-history\",\r\n template: `\r\n <co-simple-grid [data]=\"orderStockCommissionHistory\"\r\n class=\"simple-grid\"\r\n [rowsPerPage]=\"20\"\r\n >\r\n <co-simple-grid-column [headerText]=\"'MUTATION_DATE' | localize\">\r\n <ng-template #template let-row=\"row\">\r\n <span [textContent]=\"row.mutationDate | date:'dd-MM-yyyy'\"></span>\r\n </ng-template>\r\n </co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'MUTATION_TIME' | localize\" [field]=\"'mutationTime'\"></co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'AMOUNT' | localize\" [field]=\"'amount'\"></co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'WAREHOUSE' | localize\" [field]=\"'wareHouseNr'\"></co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'LOCATION' | localize\" [field]=\"'locationNr'\"></co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'DOCUMENT_NUMBER' | localize\" [field]=\"'docNr'\"></co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'LINE' | localize\" [field]=\"'transLineNr'\"></co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'STOCK_STATE' | localize\" [field]=\"'stockStateId'\"></co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'STOCK_REMARK' | localize\" [field]=\"'stockStateRemarkId'\"></co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'VALUTA' | localize\" [field]=\"'currencyCode'\"></co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'RELATION_NR' | localize\" [field]=\"'relationNr'\"></co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'USER' | localize\" [field]=\"'user'\"></co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'MUTATION_TYPE' | localize\" [field]=\"'mutationType'\"></co-simple-grid-column>\r\n </co-simple-grid>\r\n `,\r\n encapsulation: ViewEncapsulation.None\r\n})\r\nexport class OrderCommissionStockHistoryComponent {\r\n public readonly icons: typeof Icon = Icon;\r\n\r\n @Input()\r\n public orderStockCommissionHistory: StockHistoryBo[] = [];\r\n\r\n constructor(\r\n public iconCacheService: IconCacheService,\r\n ) {\r\n }\r\n\r\n}\r\n","import {Component, Input, ViewEncapsulation} from \"@angular/core\";\r\nimport {IconCacheService} from \"../../../../service/icon-cache.service\";\r\nimport {StockHistoryBo} from \"@colijnit/articleapi/build/model/stock-history.bo\";\r\nimport {Icon} from \"../../../../enum/icon.enum\";\r\n\r\n@Component({\r\n selector: \"co-order-stock-history\",\r\n template: `\r\n <co-simple-grid [data]=\"orderStockHistory\"\r\n class=\"simple-grid\"\r\n [rowsPerPage]=\"20\"\r\n >\r\n <co-simple-grid-column [headerText]=\"'MUTATION_DATE' | localize\">\r\n <ng-template #template let-row=\"row\">\r\n <span [textContent]=\"row.mutationDate | date:'dd-MM-yyyy'\"></span>\r\n </ng-template>\r\n </co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'MUTATION_TIME' | localize\" [field]=\"'mutationTime'\"></co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'AMOUNT' | localize\" [field]=\"'amount'\"></co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'WAREHOUSE' | localize\" [field]=\"'wareHouseNr'\"></co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'LOCATION' | localize\" [field]=\"'locationNr'\"></co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'DOCUMENT_NUMBER' | localize\" [field]=\"'docNr'\"></co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'LINE' | localize\" [field]=\"'transLineNr'\"></co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'STOCK_STATE' | localize\" [field]=\"'stockStateId'\"></co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'STOCK_REMARK' | localize\" [field]=\"'stockStateRemarkId'\"></co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'VALUTA' | localize\" [field]=\"'currencyCode'\"></co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'RELATION_NR' | localize\" [field]=\"'relationNr'\"></co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'USER' | localize\" [field]=\"'user'\"></co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'MUTATION_TYPE' | localize\" [field]=\"'mutationType'\"></co-simple-grid-column>\r\n </co-simple-grid>\r\n `,\r\n encapsulation: ViewEncapsulation.None\r\n})\r\nexport class OrderStockHistoryComponent {\r\n public readonly icons: typeof Icon = Icon;\r\n\r\n @Input()\r\n public orderStockHistory: StockHistoryBo[] = [];\r\n\r\n constructor(\r\n public iconCacheService: IconCacheService,\r\n ) {\r\n }\r\n\r\n}\r\n","import {Component, Input, ViewEncapsulation} from \"@angular/core\";\r\nimport {IconCacheService} from \"../../../../service/icon-cache.service\";\r\nimport {StockHistoryBo} from \"@colijnit/articleapi/build/model/stock-history.bo\";\r\nimport {Icon} from \"../../../../enum/icon.enum\";\r\n\r\n@Component({\r\n selector: \"co-allocation-stock-history\",\r\n template: `\r\n <co-simple-grid [data]=\"allocationStockHistory\"\r\n class=\"simple-grid\"\r\n [rowsPerPage]=\"20\"\r\n >\r\n <co-simple-grid-column [headerText]=\"'MUTATION_DATE' | localize\">\r\n <ng-template #template let-row=\"row\">\r\n <span [textContent]=\"row.mutationDate | date:'dd-MM-yyyy'\"></span>\r\n </ng-template>\r\n </co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'MUTATION_TIME' | localize\" [field]=\"'mutationTime'\"></co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'AMOUNT' | localize\" [field]=\"'amount'\"></co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'WAREHOUSE' | localize\" [field]=\"'wareHouseNr'\"></co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'LOCATION' | localize\" [field]=\"'locationNr'\"></co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'DOCUMENT_NUMBER' | localize\" [field]=\"'docNr'\"></co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'LINE' | localize\" [field]=\"'transLineNr'\"></co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'STOCK_STATE' | localize\" [field]=\"'stockStateId'\"></co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'STOCK_REMARK' | localize\" [field]=\"'stockStateRemarkId'\"></co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'VALUTA' | localize\" [field]=\"'currencyCode'\"></co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'RELATION_NR' | localize\" [field]=\"'relationNr'\"></co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'USER' | localize\" [field]=\"'user'\"></co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'MUTATION_TYPE' | localize\" [field]=\"'mutationType'\"></co-simple-grid-column>\r\n </co-simple-grid>\r\n `,\r\n encapsulation: ViewEncapsulation.None\r\n})\r\nexport class AllocationStockHistoryComponent {\r\n public readonly icons: typeof Icon = Icon;\r\n\r\n @Input()\r\n public allocationStockHistory: StockHistoryBo[] = [];\r\n\r\n constructor(\r\n public iconCacheService: IconCacheService,\r\n ) {\r\n }\r\n\r\n}\r\n","export enum GaugeColor {\r\n Lowest = '#E0E0E0',\r\n Low = '#fff7b8',\r\n MediumLow = '#ffe367',\r\n MediumHigh = '#ffc15b',\r\n High = '#F88952',\r\n Highest = '#5FDCB3',\r\n}\r\n","import { Component, HostBinding, Input, ViewEncapsulation } from \"@angular/core\";\r\nimport { GaugeColor } from \"../../enum/gauge-color.enum\";\r\n\r\n@Component({\r\n selector: \"co-linear-gauge\",\r\n template: `\r\n <div class=\"linear-gauge\"\r\n [style.background]=\"getStyle()\"\r\n [style.border-color]=\"color\"\r\n [textContent]=\"count ? count : ''\"\r\n ></div>\r\n `,\r\n encapsulation: ViewEncapsulation.None\r\n})\r\nexport class CoLinearGaugeComponent {\r\n\r\n @Input()\r\n public set value(value: number) {\r\n this._value = value;\r\n this._setColor();\r\n }\r\n\r\n public get value(): number {\r\n return this._value;\r\n }\r\n\r\n @Input()\r\n public count: number;\r\n\r\n @HostBinding(\"class.co-linear-gauge\")\r\n public showClass() {\r\n return true;\r\n }\r\n\r\n private _value: number;\r\n public color: GaugeColor = GaugeColor.Low;\r\n\r\n public getStyle(): string {\r\n return `linear-gradient(90deg, ${this.color} 0 ${this.value}%, white ${this.value}% 100%`;\r\n }\r\n\r\n private _setColor(): void {\r\n if (this.value <= 0) {\r\n this.color = GaugeColor.Lowest;\r\n } else if (this.value >= 1 && this.value < 25) {\r\n this.color = GaugeColor.Low;\r\n } else if (this.value >= 25 && this.value < 50) {\r\n this.color = GaugeColor.MediumLow;\r\n } else if (this.value >= 50 && this.value < 75) {\r\n this.color = GaugeColor.MediumHigh;\r\n } else if (this.value >= 75 && this.value < 100) {\r\n this.color = GaugeColor.High;\r\n } else if (this.value >= 100) {\r\n this.color = GaugeColor.Highest;\r\n }\r\n }\r\n}\r\n","import { NgModule } from \"@angular/core\";\r\nimport { CommonModule } from \"@angular/common\";\r\nimport { CoLinearGaugeComponent } from \"./co-linear-gauge.component\";\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n ],\r\n declarations: [\r\n CoLinearGaugeComponent\r\n ],\r\n exports: [\r\n CoLinearGaugeComponent\r\n ]\r\n})\r\nexport class CoLinearGaugeModule {\r\n}\r\n","import {Component, ElementRef, HostBinding, Input, OnInit, ViewChild, ViewChildren, ViewEncapsulation} from '@angular/core';\r\nimport {StatusbarData} from './statusbar.component';\r\nimport {ArcElement, Chart, DoughnutController} from 'chart.js';\r\n\r\nChart.register(\r\n DoughnutController,\r\n ArcElement\r\n);\r\n\r\nexport enum GaugeColor {\r\n Lowest = '#E0E0E0',\r\n Low = '#fff7b8',\r\n MediumLow = '#ffe367',\r\n MediumHigh = '#ffc15b',\r\n High = '#F88952',\r\n Highest = '#5FDCB3',\r\n}\r\n\r\n@Component({\r\n selector: \"co-statusbar-popup\",\r\n template: `\r\n <div class=\"co-statusbar-popup-wrapper\" [overlay]=\"parentForOverlay\">\r\n <div class=\"status-descriptions\">\r\n <div *ngFor=\"let data of statusbarData; let index = index\" class=\"status-description\">\r\n <div class=\"statusbar-canvas-wrapper\">\r\n <canvas #doughnutCanvas class=\"chart-canvas\"></canvas>\r\n <span class=\"statusbar-inner-canvas-label\" [textContent]=\"data.percentage\"></span>\r\n </div>\r\n <span class=\"statusbar-description\" [textContent]=\"data.label\"></span>\r\n </div>\r\n </div>\r\n </div>\r\n `,\r\n encapsulation: ViewEncapsulation.None\r\n})\r\nexport class StatusbarPopupComponent implements OnInit {\r\n @ViewChildren('doughnutCanvas', { read: ElementRef }) set content(content) {\r\n this.doughnutCharts = content.toArray();\r\n this._prepareChartData();\r\n }\r\n\r\n @Input()\r\n public defaultColor: '#e0e0e0';\r\n\r\n @Input()\r\n public statusbarData: StatusbarData[] = [];\r\n\r\n @Input()\r\n public parentForOverlay: ElementRef;\r\n\r\n @HostBinding(\"class.co-statusbar-popup\")\r\n public showClass: boolean = true;\r\n\r\n public doughnutCharts: ElementRef[] = [];\r\n\r\n ngOnInit() {\r\n this._prepareChartData();\r\n }\r\n\r\n private _prepareChartData(): void {\r\n if (!this.doughnutCharts || this.doughnutCharts.length === 0) {\r\n return;\r\n }\r\n this.doughnutCharts.forEach((chart: ElementRef, index: number) => {\r\n new Chart(chart.nativeElement, {\r\n type: 'doughnut',\r\n data: {\r\n datasets: [{\r\n label: this.statusbarData[index].label,\r\n data: [Math.max(0.0001, this.statusbarData[index].percentage), 100 - Math.max(0.0001, this.statusbarData[index].percentage)],\r\n backgroundColor: [\r\n this._getColor(this.statusbarData[index].percentage),\r\n this._getColor(-1),\r\n ],\r\n borderWidth: 1\r\n }]\r\n },\r\n options: {\r\n cutout: '70%'\r\n }\r\n });\r\n })\r\n }\r\n\r\n private _getColor(value: number): string {\r\n if (value <= 0) {\r\n return GaugeColor.Lowest;\r\n } else if (value >= 1 && value < 25) {\r\n return GaugeColor.Low;\r\n } else if (value >= 25 && value < 50) {\r\n return GaugeColor.MediumLow;\r\n } else if (value >= 50 && value < 75) {\r\n return GaugeColor.MediumHigh;\r\n } else if (value >= 75 && value < 100) {\r\n return GaugeColor.High;\r\n } else if (value >= 100) {\r\n return GaugeColor.Highest;\r\n }\r\n }\r\n}\r\n","import { animate, state, style, transition, trigger } from \"@angular/animations\";\r\nimport {\r\n Component,\r\n ComponentRef,\r\n ElementRef,\r\n EventEmitter,\r\n HostBinding,\r\n HostListener,\r\n Input,\r\n Output,\r\n ViewEncapsulation\r\n} from '@angular/core';\r\nimport {OverlayService} from '@colijnit/corecomponents_v12';\r\nimport {StatusbarPopupComponent} from './statusbar-popup.component';\r\n\r\nexport interface StatusbarData {\r\n label: string,\r\n percentage: number,\r\n count?: number,\r\n totalCount?: number,\r\n}\r\n\r\n@Component({\r\n selector: \"co-statusbar\",\r\n template: `\r\n <div class=\"co-statusbar-wrapper\" *ngIf=\"statusbarData\" [clickOutside]=\"popupShowing\"\r\n (clickOutside)=\"handleHidePopup()\">\r\n <div class=\"statuses\">\r\n <div *ngFor=\"let data of statusbarData; let index = index\" class=\"status\">\r\n <co-linear-gauge [class.focused-status]=\"focusedStatusIndex !== undefined && focusedStatusIndex === index\"\r\n [value]=\"data.percentage\" [count]=\"data.count ? data.count : undefined\"></co-linear-gauge>\r\n </div>\r\n </div>\r\n </div>\r\n `,\r\n providers: [\r\n OverlayService\r\n ],\r\n animations: [\r\n trigger(\"showHidePopup\", [\r\n state(\"void\", style({opacity: 0})),\r\n state(\"*\", style({opacity: 1})),\r\n transition(\"void <=> *\", animate(\"250ms ease-in-out\")),\r\n ])\r\n ],\r\n encapsulation: ViewEncapsulation.None\r\n})\r\nexport class StatusbarComponent {\r\n\r\n @Input()\r\n public set statusbarData(value: StatusbarData[]) {\r\n this._statusbarData = value;\r\n this.adjustTooHighPercentages();\r\n }\r\n\r\n public get statusbarData() {\r\n return this._statusbarData;\r\n }\r\n\r\n @Input()\r\n public defaultColor: '#e0e0e0';\r\n\r\n @Input()\r\n public focusedStatusIndex: number;\r\n\r\n @Output()\r\n statusbarClick: EventEmitter<void> = new EventEmitter<void>();\r\n\r\n @HostBinding(\"class.co-statusbar\")\r\n public showClass() {\r\n return true;\r\n }\r\n\r\n @HostListener(\"click\", [\"$event\"])\r\n public handleClick(event: MouseEvent) {\r\n this.handleShowPopup(event);\r\n }\r\n\r\n public popupShowing: boolean = false;\r\n\r\n private _statusbarData: StatusbarData[];\r\n private _statusbarPopupComponentRef: ComponentRef<any>;\r\n\r\n constructor(\r\n private _elementRef: ElementRef,\r\n private _overlayService: OverlayService) {\r\n }\r\n\r\n public handleShowPopup(event: MouseEvent): void {\r\n if (this.popupShowing) {\r\n return;\r\n }\r\n event.preventDefault();\r\n event.stopPropagation();\r\n this._statusbarPopupComponentRef = this._overlayService.createComponent(StatusbarPopupComponent, {parentForOverlay: this._elementRef, statusbarData: this.statusbarData, defaultColor: this.defaultColor});\r\n this.popupShowing = true;\r\n }\r\n\r\n public handleHidePopup(): void {\r\n this._overlayService.removeComponent(this._statusbarPopupComponentRef);\r\n this.popupShowing = false;\r\n }\r\n\r\n public adjustTooHighPercentages(): void {\r\n this._statusbarData.forEach(data => data.percentage > 100 ? data.percentage = 100 : false);\r\n }\r\n}\r\n","import {NgModule} from '@angular/core';\r\nimport {CommonModule} from '@angular/common';\r\nimport {ClickoutsideModule, OverlayModule} from '@colijnit/corecomponents_v12';\r\nimport {CoLinearGaugeModule} from '../linear-gauge/co-linear-gauge.module';\r\nimport {StatusbarComponent} from './statusbar.component';\r\nimport {StatusbarPopupComponent} from './statusbar-popup.component';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n CoLinearGaugeModule,\r\n ClickoutsideModule,\r\n OverlayModule\r\n ],\r\n declarations: [\r\n StatusbarComponent,\r\n StatusbarPopupComponent\r\n ],\r\n exports: [\r\n StatusbarComponent,\r\n StatusbarPopupComponent\r\n ]\r\n})\r\nexport class StatusbarModule {\r\n}\r\n","import {Component, Input, ViewEncapsulation} from \"@angular/core\";\r\n\r\n@Component({\r\n selector: \"co-stock-statusbar\",\r\n template: `\r\n <div class=\"status-bar\">\r\n <div class=\"status-bar-block\" [ngClass]=\"{'red': value === 0, 'orange': value === 1, 'green': value === 2}\"></div>\r\n <div class=\"status-bar-block\" [ngClass]=\"{'orange': value === 1, 'green': value === 2}\"></div>\r\n <div class=\"status-bar-block\" [ngClass]=\"{'green': value === 2}\"></div>\r\n </div>\r\n `,\r\n encapsulation: ViewEncapsulation.None\r\n})\r\nexport class StockStatusbarComponent {\r\n\r\n @Input()\r\n public value: number;\r\n\r\n constructor(\r\n ) {\r\n }\r\n\r\n}\r\n","import {NgModule} from \"@angular/core\";\r\nimport {CommonModule} from \"@angular/common\";\r\nimport {StockStatusbarComponent} from \"./stock-statusbar.component\";\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n ],\r\n declarations: [\r\n StockStatusbarComponent\r\n ],\r\n exports: [\r\n StockStatusbarComponent\r\n ]\r\n})\r\nexport class StockStatusbarModule {\r\n}\r\n","import {Component, Input, ViewEncapsulation} from \"@angular/core\";\r\nimport {IconCacheService} from \"../../../../service/icon-cache.service\";\r\nimport {StockService} from \"../../../../service/stock.service\";\r\nimport {Icon} from \"../../../../enum/icon.enum\";\r\nimport {StockForecast} from \"@colijnit/articleapi/build/model/stock-forecast.bo\";\r\n\r\n@Component({\r\n selector: \"co-stock-prognose\",\r\n template: `\r\n <co-simple-grid [data]=\"stockPrognose\"\r\n class=\"simple-grid\"\r\n [rowsPerPage]=\"20\"\r\n >\r\n <co-simple-grid-column [headerText]=\"'AVAILABILITY' | localize\" [field]=\"'available'\"></co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'FREE_STOCK' | localize\" [field]=\"'freeStock'\"></co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'IN_ORDER' | localize\" [field]=\"'inOrder'\"></co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'PURCHASE_ORDER' | localize\" [field]=\"'transNr'\"></co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'PURCHASE_ORDER_DATE' | localize\" [field]=\"'transactionDate'\"></co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'DELIVERY_DATE' | localize\">\r\n <ng-template #template let-row=\"row\">\r\n <span [textContent]=\"row['arrivalDate'] | date:'dd-MM-yyyy'\"></span>\r\n </ng-template>\r\n </co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'REFERENCE' | localize\" [field]=\"'reference'\"></co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'DELIVERY_DATE_CONFIRMED' | localize\" [field]=\"'transConfirmedDate'\">\r\n </co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'DATE_DELIVERED' | localize\">\r\n <ng-template #template let-row=\"row\">\r\n <span [textContent]=\"row['transDeliveryDate'] | date:'dd-MM-yyyy'\"></span>\r\n </ng-template>\r\n </co-simple-grid-column>\r\n <co-simple-grid-column [headerText]=\"'FUTURE_FREE_STOCK' | localize\" [field]=\"'laterAvailable'\"></co-simple-grid-column>\r\n </co-simple-grid>\r\n `,\r\n encapsulation: ViewEncapsulation.None\r\n})\r\nexport class StockPrognoseComponent {\r\n public readonly icons: typeof Icon = Icon;\r\n\r\n @Input()\r\n public stockPrognose: StockForecast[] = [];\r\n\r\n constructor(\r\n public iconCacheService: IconCacheService,\r\n private _stockService: StockService,\r\n ) {\r\n }\r\n\r\n}\r\n","import {Pipe, PipeTransform} from '@angular/core';\r\nimport {LocalizeService} from './localize.service';\r\n\r\n@Pipe({\r\n name: \"localize\"\r\n})\r\nexport class LocalizePipe implements PipeTransform {\r\n\r\n constructor(private _localizeService: LocalizeService) {}\r\n\r\n transform(value: string, upperCaseFirst: boolean = true, replace: string|string[] = []): string {\r\n if (!value) {\r\n return \"\";\r\n }\r\n replace = (replace !== undefined && replace !== null) ? replace : [];\r\n if (!Array.isArray(replace)) {\r\n replace = [replace];\r\n }\r\n return this._localizeService.get(value, upperCaseFirst, ...replace);\r\n }\r\n}\r\n","import {NgModule} from '@angular/core';\r\nimport {CommonModule} from '@angular/common';\r\nimport {LocalizePipe} from './localize.pipe';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule\r\n ],\r\n declarations: [\r\n LocalizePipe\r\n ],\r\n exports: [\r\n LocalizePipe\r\n ]\r\n})\r\nexport class LocalizationModule {\r\n}\r\n","import {NgModule} from '@angular/core';\r\nimport {StockComponent} from './stock.component';\r\nimport {\r\n ButtonModule,\r\n CoDialogModule,\r\n CoDialogWizardModule,\r\n IconModule,\r\n ImageModule,\r\n InputNumberPickerModule,\r\n InputRadioButtonModule,\r\n InputTextareaModule,\r\n InputTextModule,\r\n ListOfValuesModule,\r\n SimpleGridModule,\r\n PopupModule,\r\n} from '@colijnit/corecomponents_v12';\r\nimport {CommonModule} from '@angular/common';\r\nimport {StockInformationComponent} from './stock-information/stock-information.component';\r\nimport {StockInformationGridComponent} from './stock-information-grid/stock-information-grid.component';\r\nimport {StockService} from '../../service/stock.service';\r\nimport {StockTransferComponent} from './stock-transfer/stock-transfer.component';\r\nimport {SendMethodDialogModule} from '../send-method-dialog/send-method-dialog.module';\r\nimport {StockChangeAmountComponent} from './stock-transfer/stock-change-amount.component';\r\nimport {StockTabComponent} from './components/stock-tab/stock-tab.component';\r\nimport {OrderTabComponent} from './components/order-tab/order-tab.component';\r\nimport {StockTabsComponent} from './stock-tabs/stock-tabs.component';\r\nimport {StockHistoryTabsComponent} from './stock-history-tabs/stock-history-tabs.component';\r\nimport {OrderStockTabComponent} from './components/order-stock-tab/order-stock-tab.component';\r\nimport {StockLocationComponent} from './components/stock-location/stock-location.component';\r\nimport {StockHistoryComponent} from './components/stock-history/stock-history.component';\r\nimport {TabBarModule} from '../tab-bar/tab-bar.module';\r\nimport {\r\n OrderSupplyStockHistoryComponent\r\n} from './components/order-supply-stock-history/order-supply-stock-history.component';\r\nimport {\r\n OrderCommissionStockHistoryComponent\r\n} from './components/order-commission-stock-history/order-commission-stock-history.component';\r\nimport {OrderStockHistoryComponent} from './components/order-stock-history/order-stock-history.component';\r\nimport {\r\n AllocationStockHistoryComponent\r\n} from './components/allocation-stock-history/allocation-stock-history.component';\r\nimport {StatusbarModule} from '../statusbar/statusbar.module';\r\nimport {StockStatusbarModule} from '../stock-statusbar/stock-statusbar.module';\r\nimport {StockPrognoseComponent} from './components/stock-prognose/stock-prognose.component';\r\nimport {LocalizationModule} from '../../localization/localization.module';\r\nimport {LocalizeService} from '../../localization/localize.service';\r\n\r\n@NgModule({\r\n imports: [\r\n ButtonModule,\r\n CommonModule,\r\n InputRadioButtonModule,\r\n SimpleGridModule,\r\n ImageModule,\r\n InputTextModule,\r\n SendMethodDialogModule,\r\n IconModule,\r\n InputNumberPickerModule,\r\n CoDialogWizardModule,\r\n InputTextareaModule,\r\n TabBarModule,\r\n CoDialogModule,\r\n StatusbarModule,\r\n StockStatusbarModule,\r\n ListOfValuesModule,\r\n LocalizationModule,\r\n PopupModule\r\n ],\r\n declarations: [\r\n StockComponent,\r\n StockInformationComponent,\r\n StockInformationGridComponent,\r\n StockTransferComponent,\r\n StockChangeAmountComponent,\r\n StockTabComponent,\r\n OrderTabComponent,\r\n StockTabsComponent,\r\n StockHistoryTabsComponent,\r\n OrderStockTabComponent,\r\n StockLocationComponent,\r\n StockHistoryComponent,\r\n OrderSupplyStockHistoryComponent,\r\n OrderCommissionStockHistoryComponent,\r\n OrderStockHistoryComponent,\r\n AllocationStockHistoryComponent,\r\n StockPrognoseComponent\r\n ],\r\n exports: [\r\n StockComponent\r\n ],\r\n providers: [\r\n StockService,\r\n LocalizeService\r\n ]\r\n})\r\nexport class StockModule {\r\n}\r\n","export class Translation {\r\n public ALLOCATED?: string = 'ALLOCATED';\r\n public ALLOCATION?: string = 'ALLOCATION';\r\n public ALREADY_IN_ORDER?: string = 'ALREADY_IN_ORDER';\r\n public AMOUNT?: string = 'AMOUNT';\r\n public AMOUNT_AVAILABLE?: string = 'AMOUNT_AVAILABLE';\r\n public AMOUNT_IN_STOCK?: string = 'AMOUNT_IN_STOCK';\r\n public AMOUNT_LATER_AVAILABLE?: string = 'AMOUNT_LATER_AVAILABLE';\r\n public AVAILABILITY?: string = 'AVAILABILITY';\r\n public AVAILABLE_STOCK?: string = 'AVAILABLE_STOCK';\r\n public BACK_TO_STOCK_LINES?: string = 'BACK_TO_STOCK_LINES';\r\n public BATCH?: string = 'BATCH';\r\n public CANCEL?: string = 'CANCEL';\r\n public CHOICES?: string = 'CHOICES';\r\n public CUSTOMER?: string = 'CUSTOMER';\r\n public DATE?: string = 'DATE';\r\n public DATE_DELIVERED?: string = 'DATE_DELIVERED';\r\n public DELIVERY_DATE?: string = 'DELIVERY_DATE';\r\n public DELIVERY_DATE_CONFIRMED?: string = 'DELIVERY_DATE_CONFIRMED';\r\n public DESCRIPTION?: string = 'DESCRIPTION';\r\n public DOCUMENT_NUMBER?: string = 'DOCUMENT_NUMBER';\r\n public ECONOMICAL_STOCK?: string = 'ECONOMICAL_STOCK';\r\n public FREE_STOCK?: string = 'FREE_STOCK';\r\n public FUTURE_FREE_STOCK?: string = 'FUTURE_FREE_STOCK';\r\n public HISTORY?: string = 'HISTORY';\r\n public IN_ORDER?: string = 'IN_ORDER';\r\n public LINE?: string = 'LINE';\r\n public LOCATION?: string = 'LOCATION';\r\n public LOOK_AT?: string = 'LOOK_AT';\r\n public MUTATION_DATE?: string = 'MUTATION_DATE';\r\n public MUTATION_TIME?: string = 'MUTATION_TIME';\r\n public MUTATION_TYPE?: string = 'MUTATION_TYPE';\r\n public OK?: string = 'OK';\r\n public ORDER?: string = 'ORDER';\r\n public ORDER_COMMISSION?: string = 'ORDER_COMMISSION';\r\n public ORDER_STOCK?: string = 'ORDER_STOCK';\r\n public OVERVIEW?: string = 'OVERVIEW';\r\n public PURCHASE_ORDER?: string = 'PURCHASE_ORDER';\r\n public PURCHASE_ORDER_DATE?: string = 'PURCHASE_ORDER_DATE';\r\n public PURCHASE_ORDER_NR?: string = 'PURCHASE_ORDER_NR';\r\n public PURCHASE_PRICE?: string = 'PURCHASE_PRICE';\r\n public REFERENCE?: string = 'REFERENCE';\r\n public RELATION_ID?: string = 'RELATION_ID';\r\n public RELATION_NR?: string = 'RELATION_NR';\r\n public RESERVED?: string = 'RESERVED';\r\n public SEARCH?: string = 'SEARCH';\r\n public SERIAL_NO?: string = 'SERIAL_NO';\r\n public STICKER?: string = 'STICKER';\r\n public STOCK?: string = 'STOCK';\r\n public STOCK_DETAILS?: string = 'STOCK_DETAILS';\r\n public STOCK_FORECAST?: string = 'STOCK_FORECAST';\r\n public STOCK_REMARK?: string = 'STOCK_REMARK';\r\n public STOCK_STATE?: string = 'STOCK_STATE';\r\n public STOCK_STATUS?: string = 'STOCK_STATUS';\r\n public SUPPLIER_NUMBER?: string = 'SUPPLIER_NUMBER';\r\n public TRANSFER?: string = 'TRANSFER';\r\n public USER?: string = 'USER';\r\n public VALUTA?: string = 'VALUTA';\r\n public WAREHOUSE?: string = 'WAREHOUSE';\r\n}\r\n","export enum KeyboardCode {\r\n Backspace = \"Backspace\",\r\n Digit0 = \"Digit0\",\r\n Digit1 = \"Digit1\",\r\n Digit2 = \"Digit2\",\r\n Digit3 = \"Digit3\",\r\n Digit4 = \"Digit4\",\r\n Digit5 = \"Digit5\",\r\n Digit6 = \"Digit6\",\r\n Digit7 = \"Digit7\",\r\n Digit8 = \"Digit8\",\r\n Digit9 = \"Digit9\",\r\n Enter = \"Enter\",\r\n Escape = \"Escape\",\r\n Minus = \"Minus\",\r\n Numpad0 = \"Numpad0\",\r\n Numpad1 = \"Numpad1\",\r\n Numpad2 = \"Numpad2\",\r\n Numpad3 = \"Numpad3\",\r\n Numpad4 = \"Numpad4\",\r\n Numpad5 = \"Numpad5\",\r\n Numpad6 = \"Numpad6\",\r\n Numpad7 = \"Numpad7\",\r\n Numpad8 = \"Numpad8\",\r\n Numpad9 = \"Numpad9\",\r\n NumpadDecimal = \"NumpadDecimal\",\r\n NumpadEnter = \"NumpadEnter\",\r\n NumpadSubtract = \"NumpadSubtract\",\r\n Period = \"Period\"\r\n}\r\n","import {Component, EventEmitter, HostBinding, HostListener, Input, OnInit, Output, ViewEncapsulation} from '@angular/core';\r\nimport {Icon} from '../../enum/icon.enum';\r\nimport {IconCacheService} from '../../service/icon-cache.service';\r\nimport {KeyboardCode} from '../../enum/keyboard-code.enum';\r\n\r\n@Component({\r\n selector: 'co-key-pad',\r\n template: `\r\n <div class=\"key-pad-wrapper\">\r\n <div class=\"key-pad-model-wrapper\" *ngIf=\"showValue\">\r\n <co-responsive-text class=\"key-pad-model\" [text]=\"internalModel\" [class.negative]=\"isNegative\"></co-responsive-text>\r\n </div>\r\n <div class=\"key-pad-button-wrapper\">\r\n <div class=\"key-pad-button button-7\" (click)=\"handleButtonClick('7')\"><co-responsive-text class=\"key-pad-button-text\" [text]=\"'7'\"></co-responsive-text></div>\r\n <div class=\"key-pad-button button-8\" (click)=\"handleButtonClick('8')\"><co-responsive-text class=\"key-pad-button-text\" [text]=\"'8'\"></co-responsive-text></div>\r\n <div class=\"key-pad-button button-9\" (click)=\"handleButtonClick('9')\"><co-responsive-text class=\"key-pad-button-text\" [text]=\"'9'\"></co-responsive-text></div>\r\n <div class=\"key-pad-button button-bs\" (click)=\"handleBsClick($event)\">\r\n <co-icon [iconData]=\"iconCacheService.getIcon(icons.DeleteLeftRegular)\"></co-icon>\r\n </div>\r\n <div class=\"key-pad-button button-4\" (click)=\"handleButtonClick('4')\"><co-responsive-text class=\"key-pad-button-text\" [text]=\"'4'\"></co-responsive-text></div>\r\n <div class=\"key-pad-button button-5\" (click)=\"handleButtonClick('5')\"><co-responsive-text class=\"key-pad-button-text\" [text]=\"'5'\"></co-responsive-text></div>\r\n <div class=\"key-pad-button button-6\" (click)=\"handleButtonClick('6')\"><co-responsive-text class=\"key-pad-button-text\" [text]=\"'6'\"></co-responsive-text></div>\r\n <div class=\"key-pad-button button-minus\" (click)=\"handleMinusClick($event)\"><co-responsive-text class=\"key-pad-button-text\" [text]=\"'-'\"></co-responsive-text></div>\r\n <div class=\"key-pad-button button-1\" (click)=\"handleButtonClick('1')\"><co-responsive-text class=\"key-pad-button-text\" [text]=\"'1'\"></co-responsive-text></div>\r\n <div class=\"key-pad-button button-2\" (click)=\"handleButtonClick('2')\"><co-responsive-text class=\"key-pad-button-text\" [text]=\"'2'\"></co-responsive-text></div>\r\n <div class=\"key-pad-button button-3\" (click)=\"handleButtonClick('3')\"><co-responsive-text class=\"key-pad-button-text\" [text]=\"'3'\"></co-responsive-text></div>\r\n <div class=\"key-pad-button button-enter\" (click)=\"handleEnterClick($event)\">\r\n <co-responsive-text class=\"key-pad-button-text\" [text]=\"'enter'\"></co-responsive-text>\r\n </div>\r\n <div class=\"key-pad-button button-0\" (click)=\"handleButtonClick('0')\"><co-responsive-text class=\"key-pad-button-text\" [text]=\"'0'\"></co-responsive-text></div>\r\n <div class=\"key-pad-button button-dot\" (click)=\"handleButtonClick('.')\"><co-responsive-text class=\"key-pad-button-text\" [text]=\"'.'\"></co-responsive-text></div>\r\n </div>\r\n </div>\r\n `,\r\n encapsulation: ViewEncapsulation.None\r\n})\r\nexport class KeyPadComponent {\r\n public icons: typeof Icon = Icon;\r\n\r\n @Input()\r\n public set model(value: number) {\r\n this._model = value;\r\n this._internalModel = this._model + \"\";\r\n }\r\n\r\n public get model(): number {\r\n return this._model;\r\n }\r\n\r\n @Input()\r\n public showValue: boolean = true;\r\n\r\n @Input()\r\n public resetModelOnInit: boolean = true;\r\n\r\n @Input()\r\n public emitModelChangeOnEnter: boolean = true;\r\n\r\n @Output()\r\n public modelChange: EventEmitter<number> = new EventEmitter<number>();\r\n\r\n @Output()\r\n public internalModelChange: EventEmitter<string> = new EventEmitter<string>();\r\n\r\n @Output()\r\n public enterClick: EventEmitter<void> = new EventEmitter<void>();\r\n\r\n @HostBinding('class.co-key-pad')\r\n public showClass() {\r\n return true;\r\n }\r\n\r\n @HostListener('window:keydown', ['$event'])\r\n public handleKeyDown(event: KeyboardEvent) {\r\n if (document.activeElement instanceof HTMLBodyElement) {\r\n this._keyDown(event);\r\n }\r\n }\r\n\r\n private readonly _validKeyMap: Map<KeyboardCode | string, string> = new Map<KeyboardCode, string>([\r\n [KeyboardCode.Digit0, \"0\"],\r\n [KeyboardCode.Digit1, \"1\"],\r\n [KeyboardCode.Digit2, \"2\"],\r\n [KeyboardCode.Digit3, \"3\"],\r\n [KeyboardCode.Digit4, \"4\"],\r\n [KeyboardCode.Digit5, \"5\"],\r\n [KeyboardCode.Digit6, \"6\"],\r\n [KeyboardCode.Digit7, \"7\"],\r\n [KeyboardCode.Digit8, \"8\"],\r\n [KeyboardCode.Digit9, \"9\"],\r\n [KeyboardCode.Numpad0, \"0\"],\r\n [KeyboardCode.Numpad1, \"1\"],\r\n [KeyboardCode.Numpad2, \"2\"],\r\n [KeyboardCode.Numpad3, \"3\"],\r\n [KeyboardCode.Numpad4, \"4\"],\r\n [KeyboardCode.Numpad5, \"5\"],\r\n [KeyboardCode.Numpad6, \"6\"],\r\n [KeyboardCode.Numpad7, \"7\"],\r\n [KeyboardCode.Numpad8, \"8\"],\r\n [KeyboardCode.Numpad9, \"9\"],\r\n [KeyboardCode.NumpadDecimal, \".\"],\r\n [KeyboardCode.Period, \".\"]\r\n ])\r\n\r\n private _init: boolean = true;\r\n\r\n constructor(public iconCacheService: IconCacheService) {\r\n }\r\n\r\n public set internalModel(value: string) {\r\n this._internalModel = value;\r\n this.isNegative = parseFloat(this._internalModel) < 0;\r\n this.internalModelChange.emit(this._internalModel);\r\n }\r\n\r\n public get internalModel(): string {\r\n return this._internalModel;\r\n }\r\n\r\n public isNegative: boolean = false;\r\n\r\n private _model: number = 0;\r\n private _internalModel: string = \"0\";\r\n private _maxCharacters: number = 11;\r\n\r\n public handleMinusClick(event: MouseEvent | KeyboardEvent): void {\r\n const model: number = parseFloat(this.internalModel);\r\n if (model !== 0) {\r\n if (model < 0) {\r\n this.internalModel = Math.abs(model) + \"\";\r\n } else {\r\n this.internalModel = -model + \"\";\r\n }\r\n }\r\n this._emitModelChange();\r\n }\r\n\r\n public handleClearClick(event: MouseEvent | KeyboardEvent): void {\r\n this.internalModel = \"0\";\r\n this._emitModelChange();\r\n }\r\n\r\n public handleBsClick(event: MouseEvent | KeyboardEvent): void {\r\n let wish: string = this.internalModel;\r\n wish = wish.slice(0, wish.length - 1) || \"0\";\r\n if (!isNaN(parseFloat(wish))) {\r\n this.internalModel = parseFloat(wish) + \"\";\r\n }\r\n this._emitModelChange();\r\n }\r\n\r\n public handleButtonClick(chr: string): void {\r\n this._updateModel(chr);\r\n }\r\n\r\n public handleEnterClick(event: MouseEvent | KeyboardEvent): void {\r\n this._emitModelChange(true);\r\n this.enterClick.emit();\r\n }\r\n\r\n private _updateModel(value: string): void {\r\n if (this.resetModelOnInit && this._init) {\r\n this._internalModel = \"0\";\r\n this._init = false;\r\n }\r\n if (value === undefined || value === null ||\r\n (value === '.' && this.internalModel.indexOf('.') > -1) ||\r\n this.internalModel.length >= this._maxCharacters) {\r\n return;\r\n }\r\n this.internalModel = this.internalModel !== \"0\" ? this.internalModel + value : value;\r\n this._emitModelChange();\r\n }\r\n\r\n private _keyDown(event: KeyboardEvent): void {\r\n if (this._isEnter(event)) {\r\n this.handleEnterClick(event);\r\n } else if (this._isMinus(event)) {\r\n this.handleMinusClick(event);\r\n } else if (this._isEscape(event)) {\r\n this.handleClearClick(event);\r\n } else if (this._isBackspace(event)) {\r\n this.handleBsClick(event);\r\n } else {\r\n this._updateModel(this._validKeyMap.get(event.code));\r\n }\r\n }\r\n\r\n private _isEnter(event: KeyboardEvent): boolean {\r\n return event.code === KeyboardCode.Enter || event.code === KeyboardCode.NumpadEnter;\r\n }\r\n\r\n private _isMinus(event: KeyboardEvent): boolean {\r\n return event.code === KeyboardCode.Minus || event.code === KeyboardCode.NumpadSubtract;\r\n }\r\n\r\n private _isEscape(event: KeyboardEvent): boolean {\r\n return event.code === KeyboardCode.Escape;\r\n }\r\n\r\n private _isBackspace(event: KeyboardEvent): boolean {\r\n return event.code === KeyboardCode.Backspace;\r\n }\r\n\r\n private _emitModelChange(enter: boolean = false): void {\r\n if ((enter && this.emitModelChangeOnEnter) || (!enter && !this.emitModelChangeOnEnter)) {\r\n const model: number = parseFloat(this.internalModel);\r\n if (!isNaN(model)) {\r\n if (enter && this.emitModelChangeOnEnter) {\r\n this.model = model;\r\n }\r\n this.modelChange.emit(model);\r\n }\r\n }\r\n }\r\n}\r\n","import {NgModule} from '@angular/core';\r\nimport {CommonModule} from '@angular/common';\r\nimport {KeyPadComponent} from './key-pad.component';\r\nimport {IconModule, ResponsiveTextModule} from '@colijnit/corecomponents_v12';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n IconModule,\r\n ResponsiveTextModule\r\n ],\r\n declarations: [\r\n KeyPadComponent\r\n ],\r\n exports: [\r\n KeyPadComponent\r\n ]\r\n})\r\nexport class KeyPadModule {\r\n}\r\n","import {Component, ElementRef, EventEmitter, HostBinding, Input, Output, ViewChild, ViewEncapsulation} from \"@angular/core\";\r\nimport {animate, state, style, transition, trigger} from \"@angular/animations\";\r\nimport {Icon} from \"../../enum/icon.enum\";\r\nimport {IconCacheService} from \"../../service/icon-cache.service\";\r\n\r\n\r\n@Component({\r\n selector: \"co-layout-switcher\",\r\n template: `\r\n <div class=\"mask-wrapper\" [class.mask-wrapper-active]='showMaskSidebar' @showHideSidebar>\r\n <div class=\"icon-wrapper\" (click)=\"toggleMaskSidebar()\">\r\n <co-icon class=\"icon-mask\" [iconData]=\"iconCacheService.getIcon(icon.BringForwardRegular)\" [@positionIcon]=\"showMaskSidebar\"></co-icon>\r\n\r\n <co-icon class='icon-mask-sidebar-handle' [@positionHandle]='showMaskSidebar' [iconData]=\"showMaskSidebar ? iconCacheService.getIcon(this.icon.AngleLeftSolid) : iconCacheService.getIcon(this.icon.AngleRightSolid)\"></co-icon>\r\n </div>\r\n\r\n <div class=\"mask-content\" *ngIf=\"showMaskSidebar\" @showHideSidebar>\r\n <span *ngFor='let item of this.layoutItems' [class.active]=\"this.activeIndex === this.layoutItems.indexOf(item)\" [textContent]=\"item\" (click)='activeIndex = this.layoutItems.indexOf(item)' ></span>\r\n </div>\r\n </div>\r\n\r\n `,\r\n animations: [\r\n trigger(\"showHideSidebar\", [\r\n state(\"void\", style({\"width\": \"0\"})),\r\n state(\"*\", style({\"width\": \"*\"})),\r\n transition(\"void <=> *\", animate(200))\r\n ]),\r\n trigger(\"positionIcon\", [\r\n state(\"true\", style({\"left\": \"70px\"})),\r\n state(\"false\", style({\"left\": \"10px\"})),\r\n transition(\"true <=> false\", animate(200))\r\n ]),\r\n trigger(\"positionHandle\", [\r\n state(\"true\", style({\"left\": \"15px\"})),\r\n state(\"false\", style({\"left\": \"75px\"})),\r\n transition(\"true <=> false\", animate(200))\r\n ])\r\n ],\r\n encapsulation: ViewEncapsulation.None\r\n})\r\nexport class LayoutSwitcherComponent {\r\n public readonly icon: typeof Icon = Icon;\r\n\r\n @HostBinding('class.co-layout-switcher')\r\n public showClass() {\r\n return true;\r\n }\r\n\r\n @Input()\r\n public layoutItems: string[] = [];\r\n\r\n @Output()\r\n public layoutSwitchEmit:EventEmitter<string> = new EventEmitter<string>();\r\n\r\n public get activeIndex(): number {\r\n return this._activeIndex;\r\n }\r\n\r\n public set activeIndex(index) {\r\n this._activeIndex = index;\r\n this.toggleMaskSidebar();\r\n this.layoutSwitchEmit.emit(this.layoutItems[index]);\r\n }\r\n\r\n public showMaskSidebar: boolean = false;\r\n\r\n private _activeIndex: number = 0;\r\n\r\n\r\n constructor(public iconCacheService: IconCacheService) {\r\n }\r\n\r\n public toggleMaskSidebar(): void {\r\n this.showMaskSidebar = !this.showMaskSidebar;\r\n }\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n}\r\n","import {NgModule} from \"@angular/core\";\r\nimport {CommonModule} from \"@angular/common\";\r\nimport {LayoutSwitcherComponent} from \"./layout-switcher.component\";\r\nimport {IconModule} from \"@colijnit/corecomponents_v12\";\r\n\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n IconModule\r\n ],\r\n declarations: [\r\n LayoutSwitcherComponent,\r\n ],\r\n exports: [\r\n LayoutSwitcherComponent\r\n ]\r\n})\r\nexport class LayoutSwitcherModule {\r\n\r\n}\r\n","import {\r\n ChangeDetectorRef,\r\n Component,\r\n ElementRef,\r\n EventEmitter, HostBinding,\r\n Input,\r\n Output,\r\n Renderer2,\r\n ViewChild,\r\n ViewEncapsulation\r\n} from '@angular/core';\r\nimport {animate, state, style, transition, trigger} from \"@angular/animations\";\r\nimport {CalendarView} from '../../enum/calendar-view.enum';\r\n\r\n@Component({\r\n selector: \"co-date-planning\",\r\n template: `\r\n <div class=\"sc-agenda\">\r\n <div class=\"content-wrapper\">\r\n <calendar *ngIf=\"calendarNavigation\"\r\n [view]=\"view\"\r\n [(days)]=\"days\"\r\n [selectedDate]=\"selectedDate\" (selectedDateChange)=\"doChangeSelectedDate($event)\"></calendar>\r\n <div class=\"agenda-content-wrapper mini-scrollbar\">\r\n <div class=\"agenda-content\">\r\n <agenda-header [view]=\"view\" (viewChange)=\"doChangeView($event)\"\r\n [firstAvailableDate]=\"firstAvailableDate\"\r\n [eventsPerDay]=\"eventsPerDay\"\r\n [selectedDate]=\"selectedDate\"\r\n (selectedDateChange)=\"doChangeSelectedDate($event)\"\r\n (rangeChange)=\"doChangeSelectedDate($event, true)\"></agenda-header>\r\n <agenda-view [view]=\"view\"\r\n [selectedDate]=\"selectedDate\"\r\n [eventsPerDay]=\"eventsPerDay\"\r\n (eventChecked)=\"eventChecked.emit($event)\"></agenda-view>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <co-button *ngIf=\"showButton && eventsPerDay.length > 0\" class=\"text-only select-agenda-button\"\r\n [label]=\"buttonLabel\"\r\n (click)=\"buttonClick.emit($event)\">\r\n </co-button>\r\n `,\r\n animations: [\r\n trigger(\"showHideWindow\", [\r\n state(\"void\", style({transform: \"scaleY(0)\"})),\r\n state(\"*\", style({transform: \"scaleY(1)\"})),\r\n transition(\":enter, :leave\", [\r\n animate(\"200ms ease-in-out\")\r\n ])\r\n ])\r\n ],\r\n encapsulation: ViewEncapsulation.None\r\n})\r\n\r\nexport class DatePlanningComponent {\r\n @ViewChild(\"dayStart\", { static: true })\r\n public dayStart: ElementRef;\r\n\r\n @Input()\r\n public calendarNavigation: boolean = false;\r\n\r\n @Input()\r\n public showButton: boolean = false;\r\n\r\n @Input()\r\n public selectedDate: Date;\r\n\r\n @Input()\r\n public firstAvailableDate: Date;\r\n\r\n @Input()\r\n public buttonLabel: string = \"\";\r\n\r\n @Input()\r\n public eventsPerDay: any = [];\r\n\r\n @Input()\r\n public view: CalendarView;\r\n\r\n @Output()\r\n public readonly eventChecked: EventEmitter<any> = new EventEmitter<any>();\r\n\r\n @Output()\r\n public readonly selectedDateChange: EventEmitter<Date> = new EventEmitter<Date>();\r\n\r\n @Output()\r\n public readonly rangeChange: EventEmitter<Date> = new EventEmitter<Date>();\r\n\r\n @Output()\r\n public readonly viewChange: EventEmitter<CalendarView> = new EventEmitter<CalendarView>();\r\n\r\n @Output()\r\n public readonly buttonClick: EventEmitter<MouseEvent> = new EventEmitter<MouseEvent>();\r\n\r\n @HostBinding(\"class.co-date-planning\")\r\n public showClass: boolean = true;\r\n\r\n public days: Date[] = [];\r\n private _selectedDate: Date = new Date();\r\n\r\n constructor(\r\n private _changeDetector: ChangeDetectorRef,\r\n private renderer: Renderer2\r\n ) {\r\n }\r\n\r\n public doChangeSelectedDate(date: Date, rangeChanged: boolean = false): void {\r\n this.selectedDate = new Date(date);\r\n if (rangeChanged) {\r\n this.rangeChange.next(this.selectedDate);\r\n } else {\r\n this.selectedDateChange.next(this.selectedDate);\r\n }\r\n this._changeDetector.detectChanges();\r\n }\r\n\r\n public doChangeView(view: CalendarView): void {\r\n this.view = view;\r\n this.viewChange.next(this.view);\r\n }\r\n\r\n public scrollToDayStart(): void {\r\n if (this.dayStart !== undefined) {\r\n const dayStart: any = this.renderer.selectRootElement(\"#dayStart\");\r\n if (dayStart) {\r\n setTimeout(() => {\r\n dayStart.scrollIntoView({behavior: \"instant\", block: \"center\"});\r\n });\r\n }\r\n }\r\n }\r\n\r\n}\r\n","import {Component, EventEmitter, Input, OnInit, Output, ViewEncapsulation} from \"@angular/core\";\r\n\r\n@Component({\r\n selector: \"calendar-all-years\",\r\n template: `\r\n <div *ngFor=\"let currentYear of years\"\r\n [textContent]=\"currentYear\"\r\n [class.selected-year]=\"currentYear === year\"\r\n class=\"pointer-hover\"\r\n (click)=\"year = currentYear; yearChange.emit(year)\"\r\n ></div>\r\n `,\r\n encapsulation: ViewEncapsulation.None\r\n})\r\n\r\nexport class CalendarAllYearsComponent implements OnInit {\r\n\r\n @Input()\r\n public year: number;\r\n\r\n @Output()\r\n public readonly yearChange: EventEmitter<number> = new EventEmitter<number>();\r\n\r\n public years: number[] = [];\r\n\r\n constructor() {\r\n }\r\n\r\n ngOnInit(): void {\r\n this.years.length = 0;\r\n let start: number = this._determineStart();\r\n const end: number = start + 11;\r\n while (start < end) {\r\n this.years.push(start);\r\n start++;\r\n }\r\n }\r\n\r\n private _determineStart(): number {\r\n if (this.year > 0) {\r\n let thisYear: number = this.year;\r\n let thisYearLastDigit: number = parseInt(thisYear.toString().split(\"\").pop());\r\n while (thisYearLastDigit > 0) {\r\n thisYear--;\r\n thisYearLastDigit = parseInt(thisYear.toString().split(\"\").pop());\r\n }\r\n return thisYear;\r\n }\r\n return 0;\r\n }\r\n\r\n}\r\n","// All the months. Values are corresponding dictionary keys in text_nl.\r\nexport enum Month {\r\n January = \"JANUARY\",\r\n Februrary = \"FEBRUARY\",\r\n March = \"MARCH\",\r\n April = \"APRIL\",\r\n May = \"MAY\",\r\n June = \"JUNE\",\r\n July = \"JULY\",\r\n August = \"AUGUST\",\r\n September = \"SEPTEMBER\",\r\n October = \"OCTOBER\",\r\n November = \"NOVEMBER\",\r\n December = \"DECEMBER\"\r\n}\r\n","import {Month} from \"../../enum/month.enum\";\r\n\r\n// All the months in a year. The order is important, and should remain January - to December!\r\nexport const ALL_MONTHS: Month[] = [\r\n Month.January,\r\n Month.Februrary,\r\n Month.March,\r\n Month.April,\r\n Month.May,\r\n Month.June,\r\n Month.July,\r\n Month.August,\r\n Month.September,\r\n Month.October,\r\n Month.November,\r\n Month.December\r\n];\r\n","import {Component, EventEmitter, Input, OnInit, Output, ViewEncapsulation} from \"@angular/core\";\r\nimport {ALL_MONTHS} from \"../../../../model/constant/all-months\";\r\n\r\n@Component({\r\n selector: \"calendar-all-months\",\r\n template: `\r\n <div *ngFor=\"let currentMonth of months; let index = index\"\r\n [class.selected-month]=\"month === index\"\r\n [textContent]=\"currentMonth\"\r\n class=\"pointer-hover\"\r\n (click)=\"month = index; monthChange.emit(month)\"\r\n ></div>\r\n `,\r\n encapsulation: ViewEncapsulation.None\r\n})\r\n\r\nexport class CalendarAllMonthsComponent implements OnInit {\r\n\r\n @Input()\r\n public month: number;\r\n\r\n @Input()\r\n public shortDescriptions: boolean = false;\r\n\r\n @Output()\r\n public monthChange: EventEmitter<number> = new EventEmitter<number>();\r\n\r\n public months: string[] = [];\r\n\r\n constructor() {\r\n }\r\n\r\n ngOnInit(): void {\r\n this.months.length = 0;\r\n this.months = ALL_MONTHS;\r\n }\r\n}\r\n","import {Component, DoCheck, EventEmitter, Input, Output, ViewEncapsulation} from \"@angular/core\";\r\nimport {animate, state, style, transition, trigger} from \"@angular/animations\";\r\nimport {ALL_MONTHS} from \"../../../../model/constant/all-months\";\r\nimport {Icon} from \"../../../../enum/icon.enum\";\r\nimport {IconCacheService} from \"../../../../service/icon-cache.service\";\r\n\r\n@Component({\r\n selector: \"calendar-header\",\r\n template: `\r\n <div #monthYearSelect class=\"calendar-header-row\">\r\n <co-icon class=\"pointer-hover\" [iconData]=\"iconCacheService.getIcon(icons.ArrowPointLeft)\" (click)=\"subMonth()\"></co-icon>\r\n <div (click)=\"showMonthYearSelect = true\">\r\n <div class=\"month\" [textContent]=\"currentMonth\"></div>\r\n <div class=\"year\" [textContent]=\"currentYear\"></div>\r\n </div>\r\n <co-icon class=\"pointer-hover\" [iconData]=\"iconCacheService.getIcon(icons.ArrowPointRight)\" (click)=\"addMonth()\"></co-icon>\r\n </div>\r\n <ng-template #template>\r\n <div *ngIf=\"showMonthYearSelect\"\r\n (clickOutside)=\"hideMonthYearSelection()\"\r\n class=\"select-month-year-window\" [class.expanded]=\"expanded\" @showMonthYearSelect\r\n >\r\n <div>\r\n <calendar-all-months [month]=\"currentMonth\" (monthChange)=\"setNewMonth($event)\" shortDescriptions></calendar-all-months>\r\n <div class=\"vertical-divider\"></div>\r\n <calendar-all-years [year]=\"currentYear\" (yearChange)=\"setNewYear($event)\"></calendar-all-years>\r\n </div>\r\n<!-- <default-ok-cancel-buttons-->\r\n<!-- (okClick)=\"changeMonthYear()\"-->\r\n<!-- (cancelClick)=\"showMonthYearSelect = false\"-->\r\n<!-- >-->\r\n<!-- </default-ok-cancel-buttons>-->\r\n </div>\r\n </ng-template>\r\n `,\r\n encapsulation: ViewEncapsulation.None,\r\n animations: [\r\n trigger(\"showMonthYearSelect\", [\r\n state(\"void\", style({\r\n \"transform-origin\": \"top center\",\r\n transform: \"scaleY(0)\"\r\n })),\r\n state(\"*\", style({\r\n \"transform-origin\": \"top center\",\r\n transform: \"scaleY(1)\"\r\n })),\r\n transition(\":enter, :leave\", [\r\n animate(\"200ms ease-in-out\")\r\n ])\r\n ])\r\n ]\r\n})\r\n\r\nexport class CalendarHeaderComponent implements DoCheck {\r\n\r\n @Input()\r\n public selectedDate: Date = new Date();\r\n\r\n @Output()\r\n public readonly selectedDateChange: EventEmitter<Date> = new EventEmitter<Date>();\r\n\r\n public readonly icons: typeof Icon = Icon;\r\n\r\n public showMonthYearSelect: boolean = false;\r\n\r\n public expanded: boolean = false;\r\n\r\n public currentMonth: string;\r\n\r\n public currentYear: number;\r\n\r\n public selectedMonth: number;\r\n\r\n public selectedYear: number;\r\n\r\n constructor(\r\n public iconCacheService: IconCacheService\r\n ) {\r\n }\r\n\r\n ngDoCheck(): void {\r\n if (this.selectedDate) {\r\n this.currentMonth = ALL_MONTHS[this.selectedDate.getMonth()];\r\n this.currentYear = this.selectedDate.getFullYear();\r\n }\r\n }\r\n\r\n public subMonth(): void {\r\n const newDate: Date = new Date(this.selectedDate);\r\n newDate.setMonth(newDate.getMonth() - 1);\r\n this.selectedDate = newDate;\r\n this.selectedDateChange.emit(this.selectedDate);\r\n }\r\n\r\n public addMonth(): void {\r\n const newDate: Date = new Date(this.selectedDate);\r\n newDate.setMonth(newDate.getMonth() + 1);\r\n this.selectedDate = newDate;\r\n this.selectedDateChange.emit(this.selectedDate);\r\n }\r\n\r\n public hideMonthYearSelection(): void {\r\n this.expanded = false;\r\n this.showMonthYearSelect = false;\r\n }\r\n\r\n public setNewMonth(month: number): void {\r\n this.selectedMonth = month;\r\n }\r\n\r\n public setNewYear(year: number): void {\r\n this.selectedYear = year;\r\n }\r\n\r\n public changeMonthYear(): void {\r\n this.hideMonthYearSelection();\r\n const newDate: Date = new Date(this.selectedDate);\r\n newDate.setMonth(this.selectedMonth);\r\n newDate.setFullYear(this.selectedYear);\r\n this.selectedDate = newDate;\r\n this.selectedDateChange.emit(this.selectedDate);\r\n }\r\n}\r\n","export enum CalendarView {\r\n DayView = \"DAY\",\r\n WeekView = \"WEEK\",\r\n WeekSelectView = \"WEEK_SELECT\",\r\n MonthView = \"MONTH\"\r\n}\r\n","import {Component, EventEmitter, Input, Output, ViewEncapsulation} from \"@angular/core\";\r\nimport {CalendarView} from \"../../../../enum/calendar-view.enum\";\r\n\r\n@Component({\r\n selector: \"calendar\",\r\n template: `\r\n <div class=\"sc-calendar\">\r\n <calendar-header [selectedDate]=\"selectedDate\" (selectedDateChange)=\"changeSelectedDate($event)\"></calendar-header>\r\n <calendar-view [view]=\"view\" [selectedDate]=\"selectedDate\" (selectedDateChange)=\"changeSelectedDate($event)\"></calendar-view>\r\n </div>\r\n `,\r\n encapsulation: ViewEncapsulation.None\r\n})\r\nexport class CalendarComponent {\r\n\r\n @Input()\r\n public view: CalendarView = CalendarView.WeekView;\r\n\r\n @Input()\r\n public selectedDate: Date = new Date();\r\n\r\n @Input()\r\n public days: Date[] = [];\r\n\r\n @Output()\r\n public selectedDateChange: EventEmitter<Date> = new EventEmitter<Date>();\r\n\r\n constructor() {\r\n }\r\n\r\n public changeSelectedDate(date: Date): void {\r\n this.selectedDate = date;\r\n this.selectedDateChange.emit(this.selectedDate);\r\n }\r\n}\r\n","import {Pipe, PipeTransform} from \"@angular/core\";\r\n\r\n@Pipe({\r\n name: \"arrayNumber\"\r\n})\r\nexport class ArrayNumberPipe implements PipeTransform {\r\n\r\n transform(length: number, offset: number = 0): number[] {\r\n if (!length || length < 0) {\r\n return [];\r\n }\r\n return Array.from({length: Math.round(length)}, (x, i) => i + offset);\r\n }\r\n}\r\n","// @returns true iff given value does not equals null and does not equal undefined\r\nexport function notNill(value: any): boolean {\r\n return value !== null && value !== undefined;\r\n}\r\n","import {TimePeriod} from \"../enum/time-period.enum\";\r\n\r\nexport class DateRange {\r\n public startDate: Date;\r\n public endDate: Date;\r\n public selectedTimePeriod: TimePeriod;\r\n\r\n constructor() {\r\n }\r\n}\r\n","import {Month} from \"../enum/month.enum\";\r\nimport {ALL_MONTHS} from \"../model/constant/all-months\";\r\nimport {notNill} from \"./function/not-nill.function\";\r\nimport * as moment from \"moment\";\r\nimport {Moment} from \"moment\";\r\nimport {DatePipe} from \"@angular/common\";\r\nimport {DateRange} from \"../model/date-range\";\r\n\r\nDate.prototype.toJSON = function() {\r\n return moment(this).format('YYYY-MM-DD[T]HH:mm:ss');\r\n}\r\n\r\n// static utility function holder related to dates\r\nexport class DateUtils {\r\n public static readonly BACKEND_DATE_FORMAT: string = 'YYYY-MM-DD[T]HH:mm:ss';\r\n public static datePipe: DatePipe = new DatePipe('shortDate');\r\n\r\n public static NowAsString(): string {\r\n return DateUtils.ParseDate(new Date(), DateUtils.BACKEND_DATE_FORMAT);\r\n }\r\n\r\n public static ParseDate(date: Date, format: string = \"d-m-y\"): string {\r\n if (!date) {\r\n return \"\";\r\n }\r\n\r\n const day: string = (\"0\" + date.getDate()).slice(-2);\r\n const month: string = (\"0\" + (date.getMonth() + 1)).slice(-2);\r\n const year: string = date.getFullYear() + \"\";\r\n\r\n const formatParts: string[] = format.split(\"-\");\r\n const dateParts: string[] = [];\r\n\r\n\r\n for (let i: number = 0, l: number = formatParts.length; i < l; i++) {\r\n switch (formatParts[i]) {\r\n case \"d\" :\r\n case \"DD\" :\r\n dateParts.push(day);\r\n break;\r\n case \"m\" :\r\n case \"MM\" :\r\n dateParts.push(month);\r\n break;\r\n case \"y\" :\r\n case \"YYYY\" :\r\n dateParts.push(year);\r\n break;\r\n default:\r\n break;\r\n }\r\n }\r\n return dateParts.join(\"-\");\r\n }\r\n\r\n public static GetWeekNumber(date: Date): number {\r\n date = new Date(date.getTime());\r\n date.setHours(0, 0, 0, 0);\r\n date.setDate(date.getDate() + 4 - (date.getDay() || 7));\r\n return Math.ceil((((date.getTime() - new Date(date.getFullYear(), 0, 1).getTime()) / 8.64e7) + 1) / 7);\r\n }\r\n\r\n // Returns the number of days from now, for the given date in the future. Returns negative days if given date is in the past from now.\r\n public static GetDaysFromNow(date: Date): number {\r\n return DateUtils.GetDayDifference(new Date(Date.now()), date);\r\n }\r\n\r\n public static StringAsDate(str: string, format: string = DateUtils.BACKEND_DATE_FORMAT): Date {\r\n if (notNill(str)) {\r\n if (!isNaN(Number(str))) {\r\n return new Date(str);\r\n } else {\r\n const time: any = moment(str, format, true);\r\n return time.isValid() ? new Date(time) : undefined;\r\n }\r\n } else {\r\n return undefined;\r\n }\r\n }\r\n\r\n public static MomentToDate(time: Moment): Date {\r\n if (!time || !time.isValid()) {\r\n return undefined;\r\n }\r\n\r\n const d: Date = new Date(time.format(DateUtils.BACKEND_DATE_FORMAT));\r\n d.setHours(time.hours());\r\n d.setMinutes(time.minutes());\r\n d.setSeconds(time.seconds());\r\n return d;\r\n }\r\n\r\n public static GetCurrentMonth(): Month {\r\n return ALL_MONTHS[new Date().getMonth()];\r\n }\r\n\r\n // @returns e.g. [\"FEBRUARI\", \"MARCH\", ..] if it's Februari today, otherwise e.g. [\"APRIL\", \"MAY\", ...] if it's April today\r\n public static Get12MonthsArrayWithFirstMonthIsCurrentMonth(): Month[] {\r\n const answer: Month[] = [];\r\n\r\n let monthNrToAdd: number = new Date().getMonth();\r\n for (let i: number = 0; i < 12; i++) {\r\n answer.push(ALL_MONTHS[monthNrToAdd]);\r\n monthNrToAdd = (monthNrToAdd + 1) % ALL_MONTHS.length;\r\n }\r\n\r\n return answer;\r\n }\r\n\r\n public static GetFirstDayOfWeek(date: Date): Date {\r\n if (!DateUtils._ValidDate(date)) {\r\n return null;\r\n }\r\n let firstDay: Date;\r\n const dayOfWeek: number = date.getDay() || 7;\r\n if (dayOfWeek === 1) {\r\n firstDay = new Date(date);\r\n } else {\r\n firstDay = new Date(date);\r\n firstDay.setHours(-24 * (dayOfWeek - 1));\r\n }\r\n return firstDay;\r\n }\r\n\r\n public static GetLastDayOfWeek(date: Date): Date {\r\n const firstDayOfWeek: Date = DateUtils.GetFirstDayOfWeek(date);\r\n const lastDayOfWeek: Date = new Date(firstDayOfWeek);\r\n lastDayOfWeek.setDate(firstDayOfWeek.getDate() + 6);\r\n return lastDayOfWeek;\r\n }\r\n\r\n public static GetFirstDayOfMonth(date: Date): Date {\r\n if (!DateUtils._ValidDate(date)) {\r\n return null;\r\n }\r\n const year: number = date.getFullYear();\r\n const month: number = date.getMonth();\r\n return new Date(year, month, 1);\r\n }\r\n\r\n public static GetLastDayOfMonth(date: Date): Date {\r\n if (!DateUtils._ValidDate(date)) {\r\n return null;\r\n }\r\n const year: number = date.getFullYear();\r\n const month: number = date.getMonth();\r\n return new Date(year, month + 1, 0);\r\n }\r\n\r\n public static DatesEqual(date1: Date, date2: Date): boolean {\r\n let result: boolean = false;\r\n if (DateUtils._ValidDate(date1) && DateUtils._ValidDate(date2)) {\r\n result =\r\n date1.getDate() === date2.getDate() &&\r\n date1.getMonth() === date2.getMonth() &&\r\n date1.getFullYear() === date2.getFullYear();\r\n }\r\n return result;\r\n }\r\n\r\n public static DateRangeEqual(dates1: DateRange, dates2: DateRange): boolean {\r\n return (this.DatesEqual(dates1.startDate, dates2.startDate) &&\r\n this.DatesEqual(dates1.endDate, dates2.endDate));\r\n }\r\n\r\n public static AddMinutes(date: Date, minutes: number): Date {\r\n return new Date(date.getTime() + (minutes * 60000));\r\n }\r\n\r\n public static AddDays(date: Date, days: number): Date {\r\n const result: Date = new Date(date);\r\n result.setDate(result.getDate() + days);\r\n return result;\r\n }\r\n\r\n public static AddMonths(date: Date, months: number): Date {\r\n const result: Date = new Date(date);\r\n result.setMonth(result.getMonth() + months);\r\n return result;\r\n }\r\n\r\n public static DetermineDSTBreakpoints(): { start: string, end: string } {\r\n const endOfYear: Date = new Date(new Date().getFullYear(), 11, 1);\r\n let checkDate: Date = new Date(new Date().getFullYear(), 0, 1);\r\n let offset: number = checkDate.getTimezoneOffset();\r\n\r\n const periodStart: Date = new Date();\r\n let periodStartSet: boolean = false;\r\n const periodEnd: Date = new Date();\r\n let periodEndSet: boolean = false;\r\n while (checkDate.getTime() < endOfYear.getTime()) {\r\n checkDate = this.AddMinutes(checkDate, 60);\r\n if (offset < checkDate.getTimezoneOffset()) {\r\n periodEnd.setTime(checkDate.getTime());\r\n periodEndSet = true;\r\n } else if (offset > checkDate.getTimezoneOffset()) {\r\n periodStart.setTime(checkDate.getTime());\r\n periodStartSet = true;\r\n }\r\n offset = checkDate.getTimezoneOffset();\r\n if (periodStartSet && periodEndSet) {\r\n break;\r\n }\r\n }\r\n\r\n if (periodStartSet && periodEndSet) {\r\n return {\r\n start: this._DateToTimeStringWithDateFormat(periodStart),\r\n end: this._DateToTimeStringWithDateFormat(periodEnd)\r\n };\r\n } else {\r\n return {start: undefined, end: undefined}; // important otherwise we return new Date() for both\r\n }\r\n }\r\n\r\n private static _ValidDate(date: Date): boolean {\r\n return date !== null && date !== undefined;\r\n }\r\n\r\n /**\r\n * Returns the difference between the two given days as the number of days, in float precision (date to - date from).\r\n * Returns negative values of the 'from' date is later than in time than the 'to' date.\r\n */\r\n public static GetDayDifference(from: Date, to: Date): number {\r\n if (!from || !to) {\r\n return NaN;\r\n }\r\n return ((to.getTime() - from.getTime()) / 1000 / 60 / 60 / 24);\r\n }\r\n\r\n public static IsSameDay(dateOne: Date, dateTwo: Date): boolean {\r\n return (dateOne && dateTwo &&\r\n dateOne.getDate() === dateTwo.getDate()\r\n && dateOne.getMonth() === dateTwo.getMonth()\r\n && dateOne.getFullYear() === dateTwo.getFullYear());\r\n }\r\n\r\n public static IsInBetween(date: Date, startDate: Date, endDate: Date, withTime: boolean = true): boolean {\r\n if (startDate && endDate) {\r\n if (withTime) {\r\n return (date > startDate && date < endDate);\r\n } else {\r\n const dateWithoutTime: number = new Date(date).setHours(0, 0, 0, 0),\r\n dateFromWithoutTime: number = new Date(startDate).setHours(0, 0, 0, 0),\r\n dateToWithoutTime: number = new Date(endDate).setHours(0, 0, 0, 0);\r\n return dateWithoutTime >= dateFromWithoutTime && dateWithoutTime <= dateToWithoutTime;\r\n }\r\n }\r\n }\r\n\r\n public static IsMonday(date: Date): boolean {\r\n return date.getDay() === 1;\r\n }\r\n\r\n public static IsSunday(date: Date): boolean {\r\n return date.getDay() === 0;\r\n }\r\n\r\n public static IsToday(date: Date): boolean {\r\n const today: Date = new Date();\r\n return DateUtils.IsSameDay(today, date);\r\n }\r\n\r\n // Returns date format like it would when using a pipe in the templete, ie: \"1 okt. 2020\"\r\n public static ParseDateInShortDateFormat(date: Date, locale: string): string {\r\n this.datePipe = new DatePipe(locale);\r\n const parsedDate: string = this.datePipe.transform(date);\r\n return parsedDate;\r\n }\r\n\r\n // Transforms a string that is formatted like \"'17-08-2014'<=?<='17-08-2021'\" into \"'17-08-2014' Untill '17-08-2021'\"\r\n public static getFormattedDateRangeString(dateRangeString: string, separator: string = \" - \"): string {\r\n let newString: string = dateRangeString;\r\n newString = newString.replace(\"<=?<=\", ` ${separator} `);\r\n newString = newString.replace(/'/g, \"\");\r\n\r\n return newString;\r\n }\r\n\r\n public static SetDateOrDateRangeObjectHoursZero(date: Date | DateRange): void {\r\n if (date instanceof DateRange) {\r\n if (date.startDate) {\r\n date.startDate.setHours(0, 0, 0);\r\n }\r\n if (date.endDate) {\r\n date.endDate.setHours(0, 0, 0);\r\n }\r\n } else if (!!date && (date instanceof Date)) {\r\n date.setHours(0, 0, 0, 0);\r\n }\r\n }\r\n\r\n private static _DateToTimeStringWithDateFormat(value: Date, dateFormat: string = \"d-m-y\"): string {\r\n if (!value) {\r\n return \"\";\r\n }\r\n\r\n const hours: string = value.getHours() < 10 ? \"0\" + value.getHours() : \"\" + value.getHours();\r\n const minutes: string = value.getMinutes() < 10 ? \"0\" + value.getMinutes() : \"\" + value.getMinutes();\r\n return this.ParseDate(value, dateFormat) + \" \" + [hours, minutes].join(\":\");\r\n }\r\n}\r\n","import {Component, EventEmitter, Inject, Input, LOCALE_ID, Output, ViewEncapsulation} from \"@angular/core\";\r\nimport {ArrayNumberPipe} from \"../../../../pipe/array-number.pipe\";\r\nimport {DatePipe} from \"@angular/common\";\r\nimport {DateUtils} from \"../../../../utils/date-utils\";\r\nimport {CalendarView} from \"../../../../enum/calendar-view.enum\";\r\nimport {LanguageCode} from \"../../../../enum/language-code.enum\";\r\n\r\ntype DateStamp = { day: number, inMonth: boolean, timestamp: number, week: number, selected: boolean };\r\n\r\n@Component({\r\n selector: \"calendar-view\",\r\n template: `\r\n <div class=\"calendar-content\">\r\n <div>\r\n <div class=\"week-day-header week-row\">\r\n <div class=\"week-acronym\"></div>\r\n <div *ngFor=\"let weekDay of weekDayLabel\" [textContent]=\"weekDay | ucfirst\"\r\n class=\"week-day-label\"></div>\r\n </div>\r\n <div class=\"week-row\" *ngFor=\"let week of weeks;trackBy:trackByWeek\">\r\n <div [textContent]=\"week[0].week\" class=\"week-number\"></div>\r\n <div *ngFor=\"let date of week;trackBy:trackByStamp\" class=\"week-day\"\r\n (click)=\"onDateClick(date)\" [textContent]=\"date.day\">\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n `,\r\n encapsulation: ViewEncapsulation.None\r\n})\r\n//fixme we don't have a todayDayStamp field but our template references it\r\nexport class CalendarViewComponent {\r\n\r\n @Input()\r\n public set view(value: CalendarView) {\r\n this._view = value;\r\n this._selectDays();\r\n }\r\n\r\n public get view(): CalendarView {\r\n return this._view;\r\n }\r\n\r\n @Input()\r\n public set selectedDate(value: Date) {\r\n this._selectedDate = value;\r\n this._selectedDate.setHours(0, 0, 0, 0);\r\n this._prepareWeeks();\r\n }\r\n\r\n public get selectedDate(): Date {\r\n return this._selectedDate;\r\n }\r\n\r\n @Output()\r\n public selectedDateChange: EventEmitter<Date> = new EventEmitter<Date>();\r\n\r\n public trackByStamp: Function = (index: number, stamp: DateStamp): number => {\r\n return stamp && stamp.timestamp || index;\r\n }\r\n\r\n public trackByWeek: Function = (index: number, week: DateStamp[]): number => {\r\n return week && week[0].week || index;\r\n }\r\n\r\n public weekDayLabel: string[] = [];\r\n\r\n public weeks: DateStamp[][] = [];\r\n\r\n private _selectedDate: Date = new Date();\r\n\r\n private _view: CalendarView = CalendarView.WeekView;\r\n\r\n constructor(\r\n @Inject(LOCALE_ID) private readonly _locale: LanguageCode,\r\n ) {\r\n this.selectedDate.setHours(0, 0, 0, 0);\r\n this._setLabels();\r\n }\r\n\r\n public onDateClick(date: DateStamp): void {\r\n this.selectedDate = new Date(date.timestamp);\r\n this.selectedDateChange.emit(this.selectedDate);\r\n this._selectDays();\r\n }\r\n\r\n private _setLabels(): void {\r\n const datePipe: DatePipe = new DatePipe(this._locale);\r\n\r\n const currentDay: number = this.selectedDate.getDay();\r\n const startWeekDate: Date = new Date(this.selectedDate.getTime());\r\n startWeekDate.setDate(startWeekDate.getDate() - currentDay - 1);\r\n\r\n this.weekDayLabel = new ArrayNumberPipe().transform(7).map(() => {\r\n startWeekDate.setDate(startWeekDate.getDate() + 1);\r\n return datePipe.transform(startWeekDate, \"E\");\r\n });\r\n this.weekDayLabel.push(this.weekDayLabel.shift());\r\n }\r\n\r\n private _prepareWeeks(): void {\r\n this.weeks.length = 0;\r\n\r\n const date: Date = new Date(this.selectedDate.getTime());\r\n date.setHours(0, 0, 0, 0);\r\n\r\n // go to last day of month\r\n date.setMonth(date.getMonth() + 1);\r\n date.setDate(0);\r\n const monthEndDay: number = date.getDay();\r\n const monthEndDate: number = date.getDate();\r\n\r\n // days after end of month\r\n const daysAfter: number = !monthEndDay ? 0 : 7 - monthEndDay;\r\n\r\n // go to first day of month\r\n date.setDate(1);\r\n const monthBeginDay: number = date.getDay();\r\n\r\n // days before start of month\r\n const daysBefore: number = !monthBeginDay ? 6 : monthBeginDay - 1;\r\n\r\n // go to start of calendar view\r\n date.setDate(-daysBefore + 1);\r\n\r\n // amount of weeks to display\r\n const weekCount: number = Math.ceil((daysBefore + daysAfter + monthEndDate) / 7);\r\n const weekStart: number = DateUtils.GetWeekNumber(date);\r\n const weekEnd: number = weekStart + weekCount - 1;\r\n\r\n // iterate over week count\r\n for (let i: number = weekStart; i <= weekEnd; i++) {\r\n let week: number = i;\r\n\r\n // only recalculate week when it's necessary\r\n if (weekStart > 50) {\r\n week = DateUtils.GetWeekNumber(date);\r\n }\r\n const days: DateStamp[] = [];\r\n\r\n // iterate over 7 days\r\n for (let ii: number = 1; ii <= 7; ii++) {\r\n // check if we are in the current month\r\n let inMonth: boolean = true;\r\n if (i === weekStart) {\r\n inMonth = ii > daysBefore;\r\n } else if (i === weekEnd) {\r\n inMonth = ii <= 7 - daysAfter;\r\n }\r\n\r\n const timestamp: number = date.getTime();\r\n // add dateStamp to date array\r\n days.push({\r\n week: week,\r\n inMonth: inMonth,\r\n day: date.getDate(),\r\n timestamp: timestamp,\r\n selected: this.selectedDate.getTime() === timestamp\r\n });\r\n // go one day further\r\n date.setDate(date.getDate() + 1);\r\n }\r\n this.weeks.push(days);\r\n }\r\n this._selectDays();\r\n }\r\n\r\n private _selectDays(): void {\r\n this._resetSelection();\r\n if (!this.selectedDate) {\r\n return;\r\n }\r\n const weekNumber: number = DateUtils.GetWeekNumber(this.selectedDate);\r\n const len: number = this.weeks.length;\r\n for (let i: number = 0; i < len; i++) {\r\n const leni: number = this.weeks[i].length;\r\n for (let ii: number = 0; ii < leni; ii++) {\r\n if (this.weeks[i][ii].inMonth && this.view === CalendarView.MonthView) {\r\n this.weeks[i][ii].selected = true;\r\n } else if (this.weeks[i][ii].week === weekNumber && this.view === CalendarView.WeekView) {\r\n this.weeks[i][ii].selected = true;\r\n } else if (this.weeks[i][ii].timestamp === this.selectedDate.getTime() && this.view === CalendarView.WeekSelectView) {\r\n this.weeks[i][ii].selected = true;\r\n } else if (this.weeks[i][ii].timestamp === this.selectedDate.getTime() && this.view === CalendarView.DayView) {\r\n this.weeks[i][ii].selected = true;\r\n }\r\n }\r\n }\r\n }\r\n\r\n private _resetSelection(): void {\r\n const len: number = this.weeks.length;\r\n for (let i: number = 0; i < len; i++) {\r\n const leni: number = this.weeks[i].length;\r\n for (let ii: number = 0; ii < leni; ii++) {\r\n this.weeks[i][ii].selected = false;\r\n }\r\n }\r\n }\r\n}\r\n","import {AgendaEvent} from \"./agenda-event.model\";\r\n\r\nexport class Weekday {\r\n public inView: boolean = true;\r\n public weekdayDay: number;\r\n public weekdayMonthShort: string;\r\n public weekdayMonthLong: string;\r\n public weekdayYear: number;\r\n public date: Date;\r\n public weekdayShort: string;\r\n public weekdayLong: string;\r\n public description: string;\r\n public newMonth: boolean = false;\r\n public weekdaySelected: boolean = false;\r\n public datesByTheHour: Date[] = [];\r\n public events: AgendaEvent[] = [];\r\n}\r\n","import {Weekday} from \"./weekday.model\";\r\n\r\nexport class Week {\r\n public weekDays: Weekday[] = [];\r\n}\r\n","import {DateUtils} from \"./date-utils\";\r\nimport {Weekday} from \"../model/weekday.model\";\r\nimport {Inject, LOCALE_ID} from \"@angular/core\";\r\nimport {LanguageCode} from \"../enum/language-code.enum\";\r\nimport {Week} from \"../model/week.model\";\r\n\r\nexport class CalendarUtils {\r\n public static Locale: LanguageCode = undefined;\r\n\r\n public static Now: Date = new Date();\r\n\r\n constructor(\r\n @Inject(LOCALE_ID) private readonly _locale: LanguageCode\r\n ) {\r\n CalendarUtils.Locale = _locale;\r\n }\r\n\r\n // public static GetCurrentYear(): number {\r\n // return this.Now.getFullYear();\r\n // }\r\n //\r\n // public static GetCurrentMonth(): number {\r\n // return this.Now.getUTCMonth() + 1;\r\n // }\r\n\r\n public static GetDayHours(day: Date): Date[] {\r\n const datesByTheHour: Date[] = [];\r\n if (day) {\r\n let newDate: Date = new Date(day);\r\n newDate.setHours(0, 0, 0, 0);\r\n datesByTheHour.push(newDate);\r\n for (let i: number = 0; i < 23; i++) {\r\n newDate = new Date(newDate);\r\n newDate.setHours(newDate.getHours() + 1);\r\n datesByTheHour.push(newDate);\r\n }\r\n }\r\n return datesByTheHour;\r\n }\r\n\r\n public static GetDaysOfWeek(date: Date): Week {\r\n let day: Date = DateUtils.GetFirstDayOfWeek(date);\r\n const daysOfWeek: Weekday[] = [];\r\n let options: any;\r\n let month: number;\r\n for (let i: number = 0; i < 7; i++) {\r\n const dayPerWeek: Weekday = new Weekday();\r\n const dayHours: Date[] = CalendarUtils.GetDayHours(day);\r\n dayPerWeek.newMonth = day.getMonth() !== month;\r\n dayPerWeek.weekdaySelected = day.getDay() === date.getDay();\r\n dayPerWeek.weekdayDay = day.getDate();\r\n options = { weekday: \"short\" };\r\n dayPerWeek.weekdayShort = day.toLocaleDateString(CalendarUtils.Locale, options);\r\n options = { weekday: \"long\" };\r\n dayPerWeek.weekdayLong = day.toLocaleDateString(CalendarUtils.Locale, options);\r\n\r\n options = { month: \"short\" };\r\n dayPerWeek.weekdayMonthShort = day.toLocaleDateString(CalendarUtils.Locale, options);\r\n options = { month: \"long\" };\r\n dayPerWeek.weekdayMonthLong = day.toLocaleDateString(CalendarUtils.Locale, options);\r\n dayPerWeek.weekdayYear = day.getFullYear();\r\n\r\n dayPerWeek.date = new Date(day);\r\n dayPerWeek.datesByTheHour = dayHours;\r\n daysOfWeek.push(dayPerWeek);\r\n month = day.getMonth();\r\n day = new Date(day);\r\n day.setDate(day.getDate() + 1);\r\n }\r\n const week: Week = new Week();\r\n week.weekDays = daysOfWeek;\r\n return week;\r\n }\r\n\r\n}\r\n","import {TimeWindow} from \"./time-window.bo\";\r\n\r\nexport class AgendaEvent {\r\n public id: number;\r\n public description: string;\r\n public checked: boolean = false;\r\n public showCheckbox: boolean = false;\r\n public draggable: boolean = false;\r\n public from: Date;\r\n public to: Date;\r\n public date: Date;\r\n public dayPartNo: number;\r\n public fromString: string;\r\n public toString: string;\r\n public fromToRepresentation: string;\r\n public timeWindow: TimeWindow;\r\n}\r\n","import {AgendaEvent} from \"./agenda-event.model\";\r\n\r\nexport class AgendaEventPerDay {\r\n public date: Date;\r\n public events: AgendaEvent[] = [];\r\n}\r\n","import {Week} from \"./week.model\";\r\n\r\nexport class Month {\r\n public weeks: Week[] = [];\r\n\r\n public get firstWeek(): Week {\r\n if (this.weeks && this.weeks.length > 0) {\r\n return this.weeks[0];\r\n }\r\n }\r\n}\r\n","import {AgendaEvent} from \"./agenda-event.model\";\r\n\r\nexport class Day {\r\n public day: number;\r\n public date: Date;\r\n public description: string;\r\n public datesByTheHour: Date[] = [];\r\n public events: AgendaEvent[] = [];\r\n}\r\n","import {AgendaEvent} from \"./agenda-event.model\";\r\nimport {AgendaEventPerDay} from \"./agenda-event-per-day.model\";\r\nimport {Month} from \"./month.model\";\r\nimport {Week} from \"./week.model\";\r\nimport {Day} from \"./day.model\";\r\n\r\nexport const NULL_AGENDA_EVENT: AgendaEvent = new AgendaEvent();\r\nexport const NULL_AGENDA_EVENT_PER_DAY: AgendaEventPerDay = new AgendaEventPerDay();\r\nexport const NULL_MONTH: Month = new Month();\r\nexport const NULL_WEEK: Week = new Week();\r\nexport const NULL_DAY: Day = new Day();\r\n","import {\r\n AfterContentChecked,\r\n Component,\r\n ElementRef,\r\n EventEmitter,\r\n Inject,\r\n Input,\r\n LOCALE_ID,\r\n NgZone,\r\n OnDestroy,\r\n OnInit,\r\n Output,\r\n Renderer2, ViewEncapsulation\r\n} from \"@angular/core\";\r\nimport {CalendarView} from \"../../../../enum/calendar-view.enum\";\r\nimport {LanguageCode} from \"../../../../enum/language-code.enum\";\r\nimport {Weekday} from \"../../../../model/weekday.model\";\r\nimport {Week} from \"../../../../model/week.model\";\r\nimport {CalendarUtils} from \"../../../../utils/calendar.utils\";\r\nimport {NULL_DAY} from \"../../../../model/agenda-null-objects\";\r\nimport {Day} from \"../../../../model/day.model\"\r\nimport {Icon} from \"../../../../enum/icon.enum\";\r\nimport {AgendaEventPerDay} from \"../../../../model/agenda-event-per-day.model\";\r\nimport {DateUtils} from \"../../../../utils/date-utils\";\r\nimport {IconCacheService} from \"../../../../service/icon-cache.service\";\r\n\r\n@Component({\r\n selector: \"agenda-header\",\r\n template: `\r\n <div class=\"agenda-header-wrapper\" *ngIf=\"view === viewTypes.DayView\">\r\n <div class=\"hour-label-placeholder\">\r\n <view-select [selectedView]=\"view\" (selectedViewChange)=\"changeTheView($event)\"></view-select>\r\n </div>\r\n <div class=\"week-day-label\">\r\n <co-icon class=\"pointer-hover no-user-select sub-unit-icon dark\" [iconData]=\"iconCacheService.getIcon(icons.ArrowPointLeft)\" (click)=\"subUnit()\"></co-icon>\r\n <div class=\"day-description\" [textContent]=\"day.description\"></div>\r\n <co-icon class=\"pointer-hover no-user-select add-unit-icon dark\" [iconData]=\"iconCacheService.getIcon(icons.ArrowPointRight)\" (click)=\"addUnit()\"></co-icon>\r\n </div>\r\n </div>\r\n <div class=\"agenda-header-wrapper\" *ngIf=\"view === viewTypes.WeekView\">\r\n <div class=\"hour-label-placeholder\">\r\n <view-select [selectedView]=\"view\" (selectedViewChange)=\"changeTheView($event)\"></view-select>\r\n </div>\r\n <div class=\"week-day-label\" *ngFor=\"let weekDay of weekDays; let index = index\" [class.selected]=\"weekDay.weekdaySelected\" (click)=\"setUnit(weekDay)\">\r\n <co-icon *ngIf=\"index === 0 && showBackButton\" class=\"pointer-hover no-user-select sub-unit-icon dark\" [iconData]=\"iconCacheService.getIcon(icons.ArrowPointLeft)\" (click)=\"subUnit()\"></co-icon>\r\n <div *ngIf=\"weekDay.newMonth\" [textContent]=\"weekDay.weekdayMonthLong + ' ' + weekDay.weekdayYear\" class=\"month-description\"></div>\r\n <div class=\"weekday-value\" [textContent]=\"weekDay.weekdayDay\"></div>\r\n <div class=\"weekday-description\" [textContent]=\"weekDay.weekdayShort\"></div>\r\n <co-icon *ngIf=\"index === 6\" class=\"pointer-hover no-user-select add-unit-icon dark\" [iconData]=\"iconCacheService.getIcon(icons.ArrowPointRight)\" (click)=\"addUnit()\"></co-icon>\r\n </div>\r\n </div>\r\n <div class=\"agenda-header-wrapper\" *ngIf=\"view === viewTypes.WeekSelectView\">\r\n <div class=\"week-day-label\" *ngFor=\"let weekDay of weekDays; let index = index\"\r\n [class.selected]=\"weekDay.weekdaySelected\"\r\n [class.selectable]=\"weekDay.events && weekDay.events.length > 0\"\r\n (click)=\"setUnit(weekDay)\">\r\n <co-icon *ngIf=\"index === 0 && showBackButton\" class=\"pointer-hover no-user-select sub-unit-icon dark\" [iconData]=\"iconCacheService.getIcon(icons.ArrowPointLeft)\" (click)=\"subUnit()\"></co-icon>\r\n <div class=\"weekday-description\" [textContent]=\"weekDay.weekdayShort\"></div>\r\n <div class=\"weekday-value\" [textContent]=\"weekDay.weekdayDay + ' ' + weekDay.weekdayMonthShort\"></div>\r\n <co-icon *ngIf=\"index === 6\" class=\"pointer-hover no-user-select add-unit-icon dark\" [iconData]=\"iconCacheService.getIcon(icons.ArrowPointRight)\" (click)=\"addUnit()\"></co-icon>\r\n </div>\r\n </div>\r\n <div class=\"agenda-header-wrapper\" *ngIf=\"view === viewTypes.MonthView\">\r\n <div class=\"week-day-label\" *ngFor=\"let weekDay of weekDays; let index = index\">\r\n <co-icon *ngIf=\"index === 0 && showBackButton\" class=\"pointer-hover no-user-select sub-unit-icon dark\" [iconData]=\"iconCacheService.getIcon(icons.ArrowPointLeft)\" (click)=\"subUnit()\"></co-icon>\r\n <div class=\"weekday-description\" [textContent]=\"weekDay.weekdayShort\"></div>\r\n <co-icon *ngIf=\"index === 6\" class=\"pointer-hover no-user-select add-unit-icon dark\" [iconData]=\"iconCacheService.getIcon(icons.ArrowPointRight)\" (click)=\"addUnit()\"></co-icon>\r\n </div>\r\n </div>\r\n `,\r\n encapsulation: ViewEncapsulation.None\r\n})\r\nexport class AgendaHeaderComponent implements OnInit, OnDestroy, AfterContentChecked {\r\n public readonly icons: typeof Icon = Icon;\r\n public readonly viewTypes: typeof CalendarView = CalendarView;\r\n\r\n private readonly scrollbarWidth: number = 15;\r\n\r\n @Input()\r\n public set selectedDate(value: Date) {\r\n this._selectedDate = new Date(value);\r\n this._prepareHeaderData();\r\n }\r\n\r\n public get selectedDate(): Date {\r\n return this._selectedDate;\r\n }\r\n\r\n @Input()\r\n public view: CalendarView = CalendarView.WeekSelectView;\r\n\r\n @Input()\r\n public set firstAvailableDate(value: Date) {\r\n if (value) {\r\n this._firstAvailableDate = new Date(value);\r\n this._prepareHeaderData();\r\n }\r\n }\r\n\r\n public get firstAvailableDate(): Date {\r\n return this._firstAvailableDate;\r\n }\r\n\r\n @Input()\r\n public set eventsPerDay(value: AgendaEventPerDay[]) {\r\n this._eventsPerDay = value;\r\n this._prepareHeaderData();\r\n }\r\n\r\n @Output()\r\n public viewChange: EventEmitter<CalendarView> = new EventEmitter<CalendarView>();\r\n\r\n @Output()\r\n public selectedDateChange: EventEmitter<Date> = new EventEmitter<Date>();\r\n\r\n @Output()\r\n public rangeChange: EventEmitter<Date> = new EventEmitter<Date>();\r\n\r\n public weekDays: Weekday[] = [];\r\n public day: Day = NULL_DAY;\r\n public showBackButton: boolean = true;\r\n\r\n private _selectedDate: Date;\r\n private _firstAvailableDate: Date;\r\n private _eventsPerDay: AgendaEventPerDay[] = [];\r\n\r\n constructor(\r\n @Inject(LOCALE_ID) private readonly _locale: LanguageCode,\r\n private _elementRef: ElementRef,\r\n private _renderer: Renderer2,\r\n private _ngZone: NgZone,\r\n public iconCacheService: IconCacheService\r\n ) {\r\n }\r\n\r\n ngOnDestroy(): void {\r\n window.removeEventListener(\"resize\", this._onResize);\r\n this._elementRef = undefined;\r\n }\r\n\r\n ngOnInit(): void {\r\n this._ngZone.runOutsideAngular(() => {\r\n window.addEventListener(\"resize\", this._onResize);\r\n });\r\n }\r\n\r\n ngAfterContentChecked(): void {\r\n this._resizeHost();\r\n }\r\n\r\n public subUnit(): void {\r\n if (this.selectedDate) {\r\n const newDate: Date = new Date(this.selectedDate);\r\n switch (this.view) {\r\n case CalendarView.DayView:\r\n newDate.setDate(this.selectedDate.getDate() - 1);\r\n break;\r\n case CalendarView.WeekView:\r\n newDate.setDate(this.selectedDate.getDate() - 7);\r\n break;\r\n case CalendarView.WeekSelectView:\r\n newDate.setDate(this.selectedDate.getDate() - 7);\r\n break;\r\n case CalendarView.MonthView:\r\n newDate.setMonth(this.selectedDate.getMonth() - 1);\r\n break;\r\n }\r\n this.selectedDate = newDate;\r\n this.rangeChange.emit(this.selectedDate);\r\n }\r\n }\r\n\r\n public addUnit(): void {\r\n if (this.selectedDate) {\r\n const newDate: Date = new Date(this.selectedDate);\r\n switch (this.view) {\r\n case CalendarView.DayView:\r\n newDate.setDate(this.selectedDate.getDate() + 1);\r\n break;\r\n case CalendarView.WeekView:\r\n newDate.setDate(this.selectedDate.getDate() + 7);\r\n break;\r\n case CalendarView.WeekSelectView:\r\n newDate.setDate(this.selectedDate.getDate() + 7);\r\n break;\r\n case CalendarView.MonthView:\r\n newDate.setMonth(this.selectedDate.getMonth() + 1);\r\n break;\r\n }\r\n this.selectedDate = newDate;\r\n this.rangeChange.emit(this.selectedDate);\r\n }\r\n }\r\n\r\n public setUnit(weekDay: Weekday): void {\r\n this.selectedDate = weekDay.date;\r\n this.selectedDateChange.emit(this.selectedDate);\r\n }\r\n\r\n public changeTheView(view: CalendarView): void {\r\n this.view = view;\r\n this.viewChange.emit(view);\r\n this._prepareHeaderData();\r\n }\r\n\r\n private _onResize: EventListener = async (): Promise<void> => {\r\n this._resizeHost();\r\n }\r\n\r\n /**\r\n * Need to resize the host component to size it's fixed positioned child through css\r\n */\r\n private _resizeHost(): void {\r\n if (this._elementRef) {\r\n this._renderer.setStyle(\r\n this._elementRef.nativeElement, \"width\", this._elementRef.nativeElement.parentElement.clientWidth - this.scrollbarWidth + \"px\");\r\n }\r\n }\r\n\r\n private _prepareHeaderData(): void {\r\n if (this.selectedDate) {\r\n switch (this.view) {\r\n case CalendarView.DayView:\r\n const day: Day = new Day();\r\n day.date = new Date(this.selectedDate);\r\n const options: any = { year: \"numeric\", month: \"long\", day: \"numeric\" };\r\n day.description = this.selectedDate.toLocaleDateString(this._locale, options);\r\n this.day = day;\r\n break;\r\n case CalendarView.WeekView:\r\n const weekView: Week = CalendarUtils.GetDaysOfWeek(this.selectedDate);\r\n this.weekDays = weekView.weekDays;\r\n if (this.firstAvailableDate) {\r\n this.showBackButton = this.weekDays.find(wd => DateUtils.DatesEqual(this.firstAvailableDate, wd.date)) === undefined;\r\n }\r\n break;\r\n case CalendarView.WeekSelectView:\r\n const weekSelectView: Week = CalendarUtils.GetDaysOfWeek(this.selectedDate);\r\n this.weekDays = weekSelectView.weekDays;\r\n this.weekDays.forEach((wd: Weekday) => {\r\n const evPerDay: AgendaEventPerDay = this._eventsPerDay && this._eventsPerDay.length > 0 ? this._eventsPerDay.find(e => DateUtils.DatesEqual(e.date, wd.date)) : null;\r\n if (evPerDay) {\r\n wd.events = evPerDay.events;\r\n } else {\r\n wd.weekdaySelected = false;\r\n }\r\n });\r\n if (this.firstAvailableDate) {\r\n this.showBackButton = this.weekDays.find(wd => DateUtils.DatesEqual(this.firstAvailableDate, wd.date)) === undefined;\r\n }\r\n break;\r\n case CalendarView.MonthView:\r\n const weekOfMonth: Week = CalendarUtils.GetDaysOfWeek(this.selectedDate);\r\n this.weekDays = weekOfMonth.weekDays;\r\n if (this.firstAvailableDate) {\r\n this.showBackButton = this.weekDays.find(wd => DateUtils.DatesEqual(this.firstAvailableDate, wd.date)) === undefined;\r\n }\r\n break;\r\n }\r\n }\r\n }\r\n}\r\n","import {Component, EventEmitter, Input, Output, ViewEncapsulation} from \"@angular/core\";\r\nimport {CalendarView} from \"../../../../enum/calendar-view.enum\";\r\nimport {AgendaEvent} from \"../../../../model/agenda-event.model\";\r\nimport {AgendaEventPerDay} from \"../../../../model/agenda-event-per-day.model\";\r\n\r\n@Component({\r\n selector: \"agenda-view\",\r\n template: `\r\n <div class=\"view-wrapper mini-scrollbar\" [ngSwitch]=\"view\">\r\n <agenda-day-view *ngSwitchCase=\"viewTypes.DayView\"\r\n [selectedDate]=\"selectedDate\" [eventsPerDay]=\"eventsPerDay\" (eventChecked)=\"eventChecked.emit($event)\"></agenda-day-view>\r\n <agenda-week-view *ngSwitchCase=\"viewTypes.WeekView\"\r\n [view]=\"view\" [selectedDate]=\"selectedDate\" [eventsPerDay]=\"eventsPerDay\" (eventChecked)=\"eventChecked.emit($event)\"></agenda-week-view>\r\n <agenda-week-select-view *ngSwitchCase=\"viewTypes.WeekSelectView\"\r\n [view]=\"view\" [selectedDate]=\"selectedDate\" [eventsPerDay]=\"eventsPerDay\" (eventChecked)=\"eventChecked.emit($event)\"></agenda-week-select-view>\r\n <agenda-month-view *ngSwitchCase=\"viewTypes.MonthView\"\r\n [selectedDate]=\"selectedDate\" [eventsPerDay]=\"eventsPerDay\" (eventChecked)=\"eventChecked.emit($event)\"></agenda-month-view>\r\n </div>\r\n `,\r\n encapsulation: ViewEncapsulation.None\r\n})\r\nexport class AgendaViewComponent {\r\n\r\n @Input()\r\n public view: CalendarView = CalendarView.WeekView;\r\n\r\n @Input()\r\n public selectedDate: Date;\r\n\r\n @Input()\r\n public eventsPerDay: AgendaEventPerDay[] = [];\r\n\r\n @Output()\r\n public readonly eventChecked: EventEmitter<AgendaEvent> = new EventEmitter<AgendaEvent>();\r\n\r\n public readonly viewTypes: typeof CalendarView = CalendarView;\r\n\r\n}\r\n","import {Directive, EventEmitter, Inject, Input, LOCALE_ID, Output} from \"@angular/core\";\r\nimport {LanguageCode} from \"../../../../enum/language-code.enum\";\r\nimport {AgendaEvent} from \"../../../../model/agenda-event.model\";\r\nimport {AgendaEventPerDay} from \"../../../../model/agenda-event-per-day.model\";\r\nimport {DateUtils} from \"../../../../utils/date-utils\";\r\nimport {IconCacheService} from \"../../../../service/icon-cache.service\";\r\n\r\n@Directive()\r\nexport abstract class AgendaBaseViewComponent {\r\n\r\n @Input()\r\n public set selectedDate(value: Date) {\r\n this._selectedDate = value;\r\n this._dateIsSet();\r\n }\r\n\r\n @Input()\r\n public set eventsPerDay(value: AgendaEventPerDay[]) {\r\n this._eventsPerDay = value;\r\n this._eventsAreSet();\r\n }\r\n\r\n @Output()\r\n public eventChecked: EventEmitter<AgendaEvent> = new EventEmitter<AgendaEvent>();\r\n\r\n public get selectedDate(): Date {\r\n return this._selectedDate;\r\n }\r\n\r\n public get eventsPerDate(): AgendaEventPerDay[] {\r\n return this._eventsPerDay;\r\n }\r\n\r\n private _selectedDate: Date;\r\n private _eventsPerDay: AgendaEventPerDay[] = [];\r\n\r\n constructor(\r\n @Inject(LOCALE_ID) protected readonly locale: LanguageCode,\r\n public iconCacheService: IconCacheService\r\n ) {\r\n }\r\n\r\n //overridable by descendents\r\n protected prepareViewData(): void {\r\n }\r\n\r\n protected getEventsFromDate(date: Date): AgendaEvent[] {\r\n let events: AgendaEvent[] = [];\r\n if (this.eventsPerDate) {\r\n const len: number = this.eventsPerDate.length;\r\n for (let i: number = 0; i < len; i++) {\r\n if (DateUtils.DatesEqual(date, this.eventsPerDate[i].date)) {\r\n events = this.eventsPerDate[i].events;\r\n break;\r\n }\r\n }\r\n }\r\n return events;\r\n }\r\n\r\n private _dateIsSet(): void {\r\n this.prepareViewData();\r\n }\r\n\r\n private _eventsAreSet(): void {\r\n this.prepareViewData();\r\n }\r\n}\r\n","import {Component, ViewEncapsulation} from \"@angular/core\";\r\nimport { AgendaBaseViewComponent } from \"./agenda-base-view.component\";\r\nimport {NULL_MONTH} from \"../../../../model/agenda-null-objects\";\r\nimport {Month} from \"../../../../model/month.model\";\r\nimport {Weekday} from \"../../../../model/weekday.model\";\r\nimport {Week} from \"../../../../model/week.model\";\r\nimport {DateUtils} from \"../../../../utils/date-utils\";\r\nimport {CalendarUtils} from \"../../../../utils/calendar.utils\";\r\n\r\n\r\n@Component({\r\n selector: \"agenda-month-view\",\r\n template: `\r\n <div class=\"view-wrapper\">\r\n <div class=\"hour-view-labels-wrapper\"></div>\r\n <div class=\"weeks\">\r\n <div class=\"week\" *ngFor=\"let week of weeks\" fxLayout=\"row\">\r\n <div class=\"week-day\" *ngFor=\"let weekDay of week.weekDays\" [class.not-in-month]=\"!weekDay.inView\">\r\n <div class=\"day\" [textContent]=\"weekDay.weekdayDay\"></div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n `,\r\n encapsulation: ViewEncapsulation.None\r\n})\r\nexport class AgendaMonthViewComponent extends AgendaBaseViewComponent {\r\n\r\n public month: Month = NULL_MONTH;\r\n\r\n public firstWeekDays: Weekday[] = [];\r\n\r\n public weeks: Week[] = [];\r\n\r\n protected prepareViewData(): void {\r\n const month: Month = new Month();\r\n if (this.selectedDate) {\r\n const day: Date = DateUtils.GetFirstDayOfMonth(this.selectedDate);\r\n const endOfMonth: Date = DateUtils.GetLastDayOfMonth(this.selectedDate);\r\n let oneMoreIteration: boolean = false;\r\n let continueLoop: boolean = true;\r\n\r\n while (continueLoop) {\r\n if (oneMoreIteration) {\r\n continueLoop = false;\r\n }\r\n const week: Week = CalendarUtils.GetDaysOfWeek(day);\r\n const len: number = week.weekDays.length;\r\n for (let i: number = 0; i < len; i++) {\r\n week.weekDays[i].events = this.getEventsFromDate(week.weekDays[i].date);\r\n week.weekDays[i].inView = week.weekDays[i].date.getMonth() === this.selectedDate.getMonth();\r\n }\r\n month.weeks.push(week);\r\n day.setDate(day.getDate() + 7);\r\n if (day.getTime() >= endOfMonth.getTime()) {\r\n oneMoreIteration = true;\r\n }\r\n }\r\n this.month = month;\r\n this.firstWeekDays = this.month.firstWeek.weekDays;\r\n this.weeks = month.weeks;\r\n }\r\n }\r\n\r\n}\r\n","import {Component, ViewEncapsulation} from \"@angular/core\";\r\nimport {AgendaEvent} from \"../../../../model/agenda-event.model\";\r\nimport {AgendaBaseViewComponent} from \"./agenda-base-view.component\";\r\n\r\n\r\n@Component({\r\n selector: \"agenda-day-view\",\r\n template: `\r\n <div class=\"view-wrapper\">\r\n <agenda-hour-view-labels [date]=\"selectedDate\"></agenda-hour-view-labels>\r\n <agenda-hour-view [date]=\"selectedDate\">\r\n <agenda-events\r\n [halfHourHeight]=\"40\"\r\n [events]=\"events\"\r\n (eventChecked)=\"eventChecked.emit($event)\"\r\n ></agenda-events>\r\n </agenda-hour-view>\r\n </div>\r\n `,\r\n encapsulation: ViewEncapsulation.None\r\n})\r\nexport class AgendaDayViewComponent extends AgendaBaseViewComponent {\r\n\r\n public events: AgendaEvent[] = [];\r\n\r\n protected prepareViewData(): void {\r\n if (this.eventsPerDate && this.eventsPerDate.length > 0) {\r\n this.events = this.eventsPerDate[0].events;\r\n }\r\n }\r\n}\r\n","import {Component, Input, ViewEncapsulation} from \"@angular/core\";\r\nimport {NULL_WEEK} from \"../../../../model/agenda-null-objects\";\r\nimport {CalendarUtils} from \"../../../../utils/calendar.utils\";\r\nimport {CalendarView} from \"../../../../enum/calendar-view.enum\";\r\nimport {Week} from \"../../../../model/week.model\";\r\nimport {AgendaBaseViewComponent} from \"./agenda-base-view.component\";\r\n\r\n\r\n@Component({\r\n selector: \"agenda-week-view\",\r\n template: `\r\n <div class=\"view-wrapper\">\r\n <agenda-hour-view-labels [date]=\"selectedDate\"></agenda-hour-view-labels>\r\n <div class=\"week-day\" *ngFor=\"let weekDay of week.weekDays\">\r\n <agenda-hour-view [date]=\"weekDay.date\">\r\n <agenda-events\r\n [halfHourHeight]=\"40\"\r\n [events]=\"weekDay.events\"\r\n (eventChecked)=\"eventChecked.emit($event)\"\r\n [view]=\"view\"\r\n ></agenda-events>\r\n </agenda-hour-view>\r\n </div>\r\n </div>\r\n `,\r\n encapsulation: ViewEncapsulation.None\r\n})\r\nexport class AgendaWeekViewComponent extends AgendaBaseViewComponent /*implements OnInit, OnDestroy*/ {\r\n\r\n @Input()\r\n public view: CalendarView = CalendarView.WeekView;\r\n\r\n public week: Week = NULL_WEEK;\r\n\r\n protected prepareViewData(): void {\r\n if (this.selectedDate) {\r\n // get the events\r\n const week: Week = CalendarUtils.GetDaysOfWeek(this.selectedDate);\r\n const len: number = week.weekDays.length;\r\n for (let i: number = 0; i < len; i++) {\r\n week.weekDays[i].events = this.getEventsFromDate(week.weekDays[i].date);\r\n }\r\n this.week = week;\r\n }\r\n }\r\n}\r\n","import {Component, Input, ViewEncapsulation} from \"@angular/core\";\r\nimport {AgendaBaseViewComponent} from \"./agenda-base-view.component\";\r\nimport {NULL_WEEK} from \"../../../../model/agenda-null-objects\";\r\nimport {CalendarUtils} from \"../../../../utils/calendar.utils\";\r\nimport {Icon} from \"../../../../enum/icon.enum\";\r\nimport {CalendarView} from \"../../../../enum/calendar-view.enum\";\r\nimport {Week} from \"../../../../model/week.model\";\r\n\r\n@Component({\r\n selector: \"agenda-week-select-view\",\r\n template: `\r\n <div class=\"view-wrapper week-select-view\">\r\n <div class=\"week-day\" *ngFor=\"let weekDay of week.weekDays\">\r\n <div class=\"week-select-container\" *ngIf=\"weekDay.weekdaySelected\">\r\n <div class=\"week-select-left\">\r\n <h3 [textContent]=\"'AGENDA_CHOOSE_DELIVERY_PERIOD'\"></h3>\r\n <div class=\"week-select-list mini-scrollbar\">\r\n <agenda-events\r\n [halfHourHeight]=\"40\"\r\n [events]=\"weekDay.events\"\r\n (eventChecked)=\"eventChecked.emit($event)\"\r\n [view]=\"view\"\r\n ></agenda-events>\r\n <div class=\"no-events-banner\" *ngIf=\"weekDay.events.length === 0\">\r\n <p [textContent]=\"'AGENDA_NO_PERIODS_AVAILABLE'\"></p>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"week-select-right\">\r\n <h3 [textContent]=\"'AGENDA_FOR_EVERY_PERIOD'\"></h3>\r\n <ul>\r\n <li><co-icon [iconData]=\"iconCacheService.getIcon(icons.CheckRound)\" class=\"small action-color moment-icon\"></co-icon><span [textContent]=\"'AGENDA_FOR_EVERY_PERIOD_REASON1'\"></span></li>\r\n <li><co-icon [iconData]=\"iconCacheService.getIcon(icons.CheckRound)\" class=\"small action-color moment-icon\"></co-icon><span [textContent]=\"'AGENDA_FOR_EVERY_PERIOD_REASON2'\"></span></li>\r\n </ul>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n `,\r\n encapsulation: ViewEncapsulation.None\r\n})\r\nexport class AgendaWeekSelectViewComponent extends AgendaBaseViewComponent {\r\n\r\n @Input()\r\n public view: CalendarView = CalendarView.WeekSelectView;\r\n\r\n public week: Week = NULL_WEEK;\r\n\r\n public readonly icons: typeof Icon = Icon;\r\n\r\n protected prepareViewData(): void {\r\n if (this.selectedDate) {\r\n // get the events\r\n const week: Week = CalendarUtils.GetDaysOfWeek(this.selectedDate);\r\n const len: number = week.weekDays.length;\r\n for (let i: number = 0; i < len; i++) {\r\n week.weekDays[i].events = this.getEventsFromDate(week.weekDays[i].date);\r\n }\r\n this.week = week;\r\n }\r\n }\r\n\r\n}\r\n","import {Component, Input, ViewEncapsulation} from \"@angular/core\";\r\n\r\n@Component({\r\n selector: \"agenda-hour-view\",\r\n template: `\r\n <div class=\"row-per-hour\" *ngFor=\"let dateByTheHour of datesByTheHour\">\r\n <div fxLayout=\"row\">\r\n <agenda-hour-cell [date]=\"dateByTheHour\"></agenda-hour-cell>\r\n </div>\r\n </div>\r\n <ng-content></ng-content>\r\n `,\r\n encapsulation: ViewEncapsulation.None\r\n})\r\nexport class AgendaHourViewComponent {\r\n\r\n @Input()\r\n public set date(value: Date) {\r\n this._date = new Date(value);\r\n this._prepareViewData();\r\n }\r\n\r\n public readonly datesByTheHour: Date[] = [];\r\n\r\n public get date(): Date {\r\n return this._date;\r\n }\r\n\r\n private _date: Date = new Date();\r\n\r\n // fixme remove ctrl + c, ctrl + v code duplication with AgendaHourViewLabelsComponent._prepareViewData()\r\n private _prepareViewData(): void {\r\n this.datesByTheHour.length = 0;\r\n if (this.date) {\r\n let newDate: Date = new Date(this.date);\r\n newDate.setHours(0, 0, 0, 0);\r\n this.datesByTheHour.push(newDate);\r\n for (let i: number = 0; i < 23; i++) {\r\n newDate = new Date(newDate);\r\n newDate.setHours(newDate.getHours() + 1);\r\n this.datesByTheHour.push(newDate);\r\n }\r\n }\r\n }\r\n\r\n}\r\n","import {Component, Input, ViewEncapsulation} from \"@angular/core\";\r\n\r\n@Component({\r\n selector: \"agenda-hour-cell\",\r\n template: `\r\n <div class=\"row-per-half-hour\">\r\n <agenda-half-hour-cell [date]=\"date\" [showLabel]=\"onlyLabels && !noLabels\"></agenda-half-hour-cell>\r\n <agenda-half-hour-cell [date]=\"datePlushalfHour\"></agenda-half-hour-cell>\r\n </div>\r\n `,\r\n encapsulation: ViewEncapsulation.None\r\n})\r\nexport class AgendaHourCellComponent {\r\n @Input()\r\n public onlyLabels: boolean = false;\r\n\r\n @Input()\r\n public noLabels: boolean = false;\r\n\r\n @Input()\r\n public set date(value: Date) {\r\n this._date = value;\r\n this._setNextHalfHour();\r\n }\r\n\r\n public get date(): Date {\r\n return this._date;\r\n }\r\n\r\n public datePlushalfHour: Date;\r\n\r\n private _date: Date;\r\n\r\n private _setNextHalfHour(): void {\r\n this.datePlushalfHour = new Date(this._date);\r\n this.datePlushalfHour.setMinutes(this.datePlushalfHour.getMinutes() + 30);\r\n }\r\n}\r\n","import {Component, Input, ViewEncapsulation} from \"@angular/core\";\r\n\r\n@Component({\r\n selector: \"agenda-hour-view-labels\",\r\n template: `\r\n <div class=\"row-per-hour\" *ngFor=\"let dateByTheHour of datesByTheHour\">\r\n <div>\r\n <agenda-hour-cell [date]=\"dateByTheHour\" onlyLabels [noLabels]=\"noLabels\"></agenda-hour-cell>\r\n </div>\r\n </div>\r\n `,\r\n encapsulation: ViewEncapsulation.None\r\n})\r\nexport class AgendaHourViewLabelsComponent {\r\n\r\n @Input()\r\n public set date(value: Date) {\r\n this._date = new Date(value);\r\n this._date.setDate(1);\r\n this._date.setMonth(1);\r\n this._date.setFullYear(1);\r\n this._prepareViewData();\r\n }\r\n\r\n @Input()\r\n public noLabels: boolean = false;\r\n\r\n public readonly datesByTheHour: Date[] = [];\r\n\r\n public get date(): Date {\r\n return this._date;\r\n }\r\n\r\n private _date: Date = new Date();\r\n\r\n // fixme remove ctrl + c, ctrl + v code duplication with AgendaHourViewComponent._prepareViewData()\r\n private _prepareViewData(): void {\r\n this.datesByTheHour.length = 0;\r\n if (this.date) {\r\n let newDate: Date = new Date(this.date);\r\n newDate.setHours(0, 0, 0, 0);\r\n this.datesByTheHour.push(newDate);\r\n for (let i: number = 0; i < 23; i++) {\r\n newDate = new Date(newDate);\r\n newDate.setHours(newDate.getHours() + 1);\r\n this.datesByTheHour.push(newDate);\r\n }\r\n }\r\n }\r\n}\r\n","import {Component, ElementRef, Input, OnDestroy, Renderer2, ViewChild, ViewEncapsulation} from \"@angular/core\";\r\nimport {DateUtils} from \"../../../../utils/date-utils\";\r\n\r\n\r\n@Component({\r\n selector: \"agenda-half-hour-cell\",\r\n template: `\r\n <div id=\"{{id}}\" class=\"cell-wrapper\">\r\n <div *ngIf=\"showLabel\" [class.show]=\"showLabel\" class=\"half-hour-label\">\r\n <div [textContent]=\"date | date:'HH:mm'\"></div>\r\n </div>\r\n <div *ngIf=\"showCurrentTime\" id=\"currentTime\" class=\"current-time\" #currentTime></div>\r\n <div class=\"content-wrapper\">\r\n <ng-content></ng-content>\r\n </div>\r\n </div>\r\n `,\r\n encapsulation: ViewEncapsulation.None\r\n})\r\nexport class AgendaHalfHourCellComponent implements OnDestroy {\r\n\r\n @ViewChild(\"currentTime\")\r\n public currentTimeElement: ElementRef;\r\n\r\n @Input()\r\n public set date(value: Date) {\r\n this._date = value;\r\n this._checkDate();\r\n this._checkWorkingDayStart();\r\n }\r\n\r\n public get date(): Date {\r\n return this._date;\r\n }\r\n\r\n @Input()\r\n public showLabel: boolean = false;\r\n\r\n public showCurrentTime: boolean = false;\r\n\r\n public currentTimeTop: number = 0;\r\n\r\n public id: string;\r\n\r\n private _date: Date;\r\n private _id: string;\r\n\r\n constructor(\r\n private _renderer: Renderer2\r\n ) {\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.currentTimeElement = undefined;\r\n }\r\n\r\n private _checkDate(): void {\r\n const checkDate: Date = new Date();\r\n const minutesFrom: number = this.date.getMinutes();\r\n const minutesTo: number = minutesFrom + 30;\r\n\r\n if (DateUtils.DatesEqual(this.date, checkDate)) {\r\n if (checkDate.getHours() === this.date.getHours() && (checkDate.getMinutes() > minutesFrom && checkDate.getMinutes() < minutesTo)) {\r\n this.currentTimeTop = (Math.max(checkDate.getMinutes(), .01) / 60) * 100;\r\n this._positionCurrentTime();\r\n this.showCurrentTime = true;\r\n }\r\n }\r\n }\r\n\r\n private _checkWorkingDayStart(): void {\r\n this.id = (this._date.getHours() === 8 && this._date.getMinutes() === 30) ? \"dayStart\" : \"\";\r\n }\r\n\r\n private _positionCurrentTime(): void {\r\n if (this.currentTimeElement) {\r\n this._renderer.setStyle(this.currentTimeElement.nativeElement, \"top\", this.currentTimeTop + \"%\");\r\n this.currentTimeElement.nativeElement.scrollIntoView();\r\n }\r\n }\r\n}\r\n","import {Component, EventEmitter, Input, Output, ViewEncapsulation} from \"@angular/core\";\r\nimport {CalendarView} from \"../../../../enum/calendar-view.enum\";\r\nimport {AgendaEvent} from \"../../../../model/agenda-event.model\";\r\n\r\n@Component({\r\n selector: \"agenda-events\",\r\n template: `\r\n <ng-container *ngIf=\"view !== viewTypes.WeekSelectView\">\r\n <agenda-event\r\n *ngFor=\"let event of events\"\r\n [halfHourHeight]=\"halfHourHeight\"\r\n [event]=\"event\"\r\n (eventChecked)=\"eventChecked.emit($event)\"\r\n ></agenda-event>\r\n </ng-container>\r\n <ng-container *ngIf=\"view === viewTypes.WeekSelectView\">\r\n <agenda-select-event\r\n *ngFor=\"let event of events\"\r\n [event]=\"event\"\r\n (eventChecked)=\"eventChecked.emit($event)\"\r\n ></agenda-select-event>\r\n </ng-container>\r\n `,\r\n encapsulation: ViewEncapsulation.None\r\n})\r\nexport class AgendaEventsComponent {\r\n\r\n public readonly viewTypes: typeof CalendarView = CalendarView;\r\n\r\n @Input()\r\n public view: CalendarView = CalendarView.WeekView;\r\n\r\n @Input()\r\n public type: string = \"\";\r\n\r\n @Input()\r\n public events: AgendaEvent[] = [];\r\n\r\n @Input()\r\n public halfHourHeight: number;\r\n\r\n @Output()\r\n public readonly eventChecked: EventEmitter<AgendaEvent> = new EventEmitter<AgendaEvent>();\r\n\r\n constructor() {\r\n }\r\n}\r\n","import {\r\n Component,\r\n ElementRef,\r\n EventEmitter,\r\n Input,\r\n OnDestroy,\r\n OnInit,\r\n Output,\r\n Renderer2,\r\n ViewEncapsulation\r\n} from \"@angular/core\";\r\nimport {AgendaEvent} from \"../../../../model/agenda-event.model\";\r\nimport {NULL_AGENDA_EVENT} from \"../../../../model/agenda-null-objects\";\r\nimport {Icon} from \"../../../../enum/icon.enum\";\r\nimport {IconCacheService} from \"../../../../service/icon-cache.service\";\r\n\r\n\r\n@Component({\r\n selector: \"agenda-event\",\r\n template: `\r\n <div class=\"agenda-event-wrapper\" [class.checkable]=\"event.showCheckbox\" [class.selected]=\"event.checked\" (click)=\"checkEvent($event)\">\r\n <div [textContent]=\"event.fromToRepresentation\" class=\"event-description\"></div>\r\n <co-icon *ngIf=\"event.showCheckbox\" [iconData]=\"iconCacheService.getIcon(icons.ArrowPointRight)\" [class.checked]=\"event.checked\"></co-icon>\r\n </div>\r\n `,\r\n encapsulation: ViewEncapsulation.None\r\n})\r\nexport class AgendaEventComponent implements OnInit, OnDestroy {\r\n\r\n public readonly icons: typeof Icon = Icon;\r\n\r\n @Input()\r\n public event: AgendaEvent = NULL_AGENDA_EVENT;\r\n\r\n @Input()\r\n public halfHourHeight: number;\r\n\r\n @Output()\r\n public eventChecked: EventEmitter<AgendaEvent> = new EventEmitter<AgendaEvent>();\r\n\r\n constructor(\r\n private _elementRef: ElementRef,\r\n private _renderer: Renderer2,\r\n public iconCacheService: IconCacheService\r\n ) {\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this._elementRef = undefined;\r\n }\r\n\r\n ngOnInit(): void {\r\n const hourTo: number = this.event.from.getHours();\r\n const minutesTo: number = this.event.from.getMinutes();\r\n const multiply: number = hourTo + (minutesTo / 60);\r\n const top: number = multiply * (this.halfHourHeight * 2);\r\n this._renderer.setStyle(this._elementRef.nativeElement, \"top\", top + \"px\");\r\n\r\n const hours: number = Math.abs(this.event.to.getTime() - this.event.from.getTime()) / 3600000;\r\n const height: number = hours * (this.halfHourHeight * 2) - 1;\r\n this._renderer.setStyle(this._elementRef.nativeElement, \"height\", height + \"px\");\r\n }\r\n\r\n public checkEvent(event: MouseEvent): void {\r\n this.event.checked = !this.event.checked;\r\n this.eventChecked.emit(this.event);\r\n }\r\n\r\n}\r\n","import {Pipe, PipeTransform} from \"@angular/core\";\r\n\r\n@Pipe({\r\n name: \"ucfirst\"\r\n})\r\n// Pipe capable of transforming the first character of a string-value to upper case.\r\nexport class UCfirstPipe implements PipeTransform {\r\n transform(value: string): string {\r\n if (typeof value === \"string\") {\r\n return value.charAt(0).toUpperCase() + value.slice(1);\r\n }\r\n return value;\r\n }\r\n}\r\n","import {ArrayNumberPipe} from \"./array-number.pipe\";\r\nimport {UCfirstPipe} from \"./ucfirst.pipe\";\r\n\r\nexport const MASTER_PIPES: any[] = [\r\n ArrayNumberPipe,\r\n UCfirstPipe\r\n]\r\n","// <b>Enum</b> Represents the different states of the three way thumb.\r\nexport enum ThumbThreeWayState {\r\n Left = 0,\r\n Middle = 1,\r\n Right = 2\r\n}\r\n\r\nexport function NextStateOfThumbThreeWay(state: ThumbThreeWayState): ThumbThreeWayState {\r\n switch (state) {\r\n case ThumbThreeWayState.Left:\r\n return ThumbThreeWayState.Middle;\r\n case ThumbThreeWayState.Middle:\r\n return ThumbThreeWayState.Right;\r\n case ThumbThreeWayState.Right:\r\n default:\r\n return ThumbThreeWayState.Left;\r\n }\r\n}\r\n","// Static utility functions holder related to Maps.\r\nexport class MapUtils {\r\n\r\n /**\r\n * Returns the first key from given map, for which the value filter holds true. Basically a reverse Map.get(key) function.\r\n * @param map\r\n * @param valueFilter For the first value that returns true for this filter functions, its key will be returned.\r\n */\r\n public static FindKeyByValue<K, V>(map: Map<K, V>, valueFilter: (value: V) => boolean): K {\r\n\r\n if (!map || !valueFilter) {\r\n return undefined;\r\n }\r\n\r\n let foundKey: K = undefined;\r\n let keyWasFound: boolean = false;\r\n map.forEach((value: V, key: K) => {\r\n if (!keyWasFound && valueFilter.call(this, value)) {\r\n foundKey = key;\r\n keyWasFound = true;\r\n }\r\n });\r\n return foundKey;\r\n }\r\n\r\n /**\r\n * Inserts given arrayEntry into given map, under given mapKey. What's special here, is that a NEW map entry is created with an array\r\n * containing the single [arrayEntry] item, if no entry yet existed.\r\n * @param map\r\n * @param mapKey\r\n * @param arrayEntry\r\n */\r\n public static InsertArrayItemIntoMap(map: Map<any, any>, mapKey: any, arrayEntry: any): void {\r\n if (!map) {\r\n return;\r\n }\r\n\r\n if (!map.has(mapKey)) {\r\n map.set(mapKey, [arrayEntry]);\r\n } else {\r\n map.get(mapKey).push(arrayEntry);\r\n }\r\n }\r\n}\r\n","import {Component, EventEmitter, Input, Output, ViewEncapsulation} from \"@angular/core\";\r\nimport {CalendarView} from \"../../../../enum/calendar-view.enum\";\r\nimport {ThumbThreeWayState} from \"../../../../enum/thumb-three-way-state\";\r\nimport {MapUtils} from \"../../../../utils/map-utils\";\r\n\r\n@Component({\r\n selector: \"view-select\",\r\n template: `\r\n <div class=\"select-wrapper\">\r\n <div [textContent]=\"'DAY'\" class=\"label\"></div>\r\n <div [textContent]=\"'MONTH'\" class=\"label\"></div>\r\n </div>\r\n `,\r\n encapsulation: ViewEncapsulation.None\r\n})\r\nexport class ViewSelectComponent {\r\n\r\n private readonly _viewsToThumb: Map<CalendarView, ThumbThreeWayState> = new Map<CalendarView, ThumbThreeWayState>([\r\n [CalendarView.DayView, ThumbThreeWayState.Left],\r\n [CalendarView.WeekView, ThumbThreeWayState.Middle],\r\n [CalendarView.MonthView, ThumbThreeWayState.Right]\r\n ]);\r\n\r\n @Input()\r\n public selectedView: CalendarView = CalendarView.WeekView;\r\n\r\n @Output()\r\n public selectedViewChange: EventEmitter<CalendarView> = new EventEmitter<CalendarView>();\r\n\r\n public get modelAsThumbState(): ThumbThreeWayState {\r\n return this._viewsToThumb.get(this.selectedView);\r\n }\r\n\r\n constructor() {\r\n }\r\n\r\n public onThumbStateChange(thumbState: ThumbThreeWayState): void {\r\n this.selectedView = MapUtils.FindKeyByValue<CalendarView, ThumbThreeWayState>(this._viewsToThumb, (value: ThumbThreeWayState) => {\r\n return (value === thumbState);\r\n });\r\n this.selectedViewChange.emit(this.selectedView);\r\n }\r\n}\r\n","import {Component, EventEmitter, Input, Output} from \"@angular/core\";\r\nimport {AgendaEvent} from \"../../../../model/agenda-event.model\";\r\nimport {NULL_AGENDA_EVENT} from \"../../../../model/agenda-null-objects\";\r\nimport {Icon} from \"../../../../enum/icon.enum\";\r\nimport {IconCacheService} from \"../../../../service/icon-cache.service\";\r\n\r\n@Component({\r\n selector: \"agenda-select-event\",\r\n template: `\r\n <div class=\"week-select-item\" (click)=\"checkEvent($event)\">\r\n <co-icon [iconData]=\"iconCacheService.getIcon(icons.ArrowPointRight)\" class=\"select-icon action-color\" *ngIf=\"!event.checked\"></co-icon>\r\n <co-icon [iconData]=\"iconCacheService.getIcon(icons.ArrowPointRight)\" class=\"select-icon action-color\" *ngIf=\"event.checked\"></co-icon>\r\n <div class=\"moment-name\">\r\n <small>{{ event.date | date: 'EEEE d MMMM' | uppercase }}</small>\r\n <h2>{{ event.description }}</h2>\r\n </div>\r\n </div>\r\n `\r\n})\r\nexport class AgendaSelectEventComponent {\r\n public readonly icons: typeof Icon = Icon;\r\n\r\n @Input()\r\n public event: AgendaEvent = NULL_AGENDA_EVENT;\r\n\r\n @Output()\r\n public eventChecked: EventEmitter<AgendaEvent> = new EventEmitter<AgendaEvent>();\r\n\r\n constructor(\r\n public iconCacheService: IconCacheService\r\n ) {\r\n }\r\n\r\n public checkEvent(event: MouseEvent): void {\r\n this.event.checked = !this.event.checked;\r\n this.eventChecked.emit(this.event);\r\n }\r\n\r\n}\r\n","import { NgModule } from \"@angular/core\";\r\nimport { CommonModule } from \"@angular/common\";\r\nimport {DatePlanningComponent} from \"./date-planning.component\";\r\nimport {ButtonModule, IconModule, InputDatePickerModule} from \"@colijnit/corecomponents_v12\";\r\nimport {CalendarAllYearsComponent} from \"./component/calendar/calendar-all-years.component\";\r\nimport {CalendarAllMonthsComponent} from \"./component/calendar/calendar-all-months.component\";\r\nimport {CalendarHeaderComponent} from \"./component/calendar/calendar-header.component\";\r\nimport {CalendarComponent} from \"./component/calendar/calendar.component\";\r\nimport {CalendarViewComponent} from \"./component/calendar/calendar-view.component\";\r\nimport {AgendaHeaderComponent} from \"./component/agenda/agenda-header.component\";\r\nimport {AgendaViewComponent} from \"./component/agenda/agenda-view.component\";\r\nimport {AgendaMonthViewComponent} from \"./component/agenda/agenda-month-view.component\";\r\nimport {AgendaDayViewComponent} from \"./component/agenda/agenda-day-view.component\";\r\nimport {AgendaWeekViewComponent} from \"./component/agenda/agenda-week-view.component\";\r\nimport {AgendaWeekSelectViewComponent} from \"./component/agenda/agenda-week-select-view.component\";\r\nimport {AgendaHourViewComponent} from \"./component/agenda/agenda-hour-view.component\";\r\nimport {AgendaHourCellComponent} from \"./component/agenda/agenda-hour-cell.component\";\r\nimport {AgendaHourViewLabelsComponent} from \"./component/agenda/agenda-hour-view-labels.component\";\r\nimport {AgendaHalfHourCellComponent} from \"./component/agenda/agenda-half-hour-cell.component\";\r\nimport {AgendaEventsComponent} from \"./component/agenda/agenda-events.component\";\r\nimport {AgendaEventComponent} from \"./component/agenda/agenda-event.component\";\r\nimport {MASTER_PIPES} from \"../../pipe/master-pipes\";\r\nimport {ViewSelectComponent} from \"./component/agenda/view-select.component\";\r\nimport {AgendaSelectEventComponent} from \"./component/agenda/agenda-select-event.component\";\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n InputDatePickerModule,\r\n IconModule,\r\n ButtonModule,\r\n ],\r\n declarations: [\r\n DatePlanningComponent,\r\n CalendarAllYearsComponent,\r\n CalendarAllMonthsComponent,\r\n CalendarHeaderComponent,\r\n CalendarComponent,\r\n CalendarViewComponent,\r\n AgendaHeaderComponent,\r\n AgendaViewComponent,\r\n AgendaMonthViewComponent,\r\n AgendaDayViewComponent,\r\n AgendaWeekViewComponent,\r\n AgendaWeekSelectViewComponent,\r\n AgendaHourViewComponent,\r\n AgendaHourCellComponent,\r\n AgendaHourViewLabelsComponent,\r\n AgendaHalfHourCellComponent,\r\n AgendaEventsComponent,\r\n AgendaEventComponent,\r\n ViewSelectComponent,\r\n AgendaSelectEventComponent,\r\n MASTER_PIPES\r\n ],\r\n exports: [\r\n DatePlanningComponent\r\n ]\r\n})\r\nexport class DatePlanningModule {\r\n}\r\n","import {Component, EventEmitter, HostBinding, Input, Output, ViewEncapsulation} from \"@angular/core\";\r\nimport {IconCacheService} from \"../../service/icon-cache.service\";\r\nimport {Icon} from \"../../enum/icon.enum\";\r\nimport {CdkDragDrop} from \"@angular/cdk/drag-drop\";\r\nimport {SharedService} from \"../../service/shared.service\";\r\nimport {TagTreeItem} from \"@colijnit/mainapi/build/model/tag-tree-item.bo\";\r\n\r\n@Component({\r\n selector: \"co-simple-tags\",\r\n template: `\r\n <co-dialog\r\n [headerTemplate]=\"headerTemplate\"\r\n [footerTemplate]=\"footerTemplate\"\r\n (closeClick)=\"closeClick.emit()\"\r\n >\r\n <ng-template #headerTemplate>\r\n <div class=\"header-wrapper\">\r\n <co-icon [iconData]=\"iconCacheService.getIcon(icon.TagRegular)\"></co-icon>\r\n <span class=\"co-dialog-header-title\" [textContent]=\"'Tags'\"></span>\r\n </div>\r\n </ng-template>\r\n\r\n <div class=\"dialog-content-wrapper\">\r\n <div class=\"collection-navigation co-small-scrollbar\">\r\n <span class=\"title\" [textContent]=\"'Beschikbare tags'\"></span>\r\n <co-input-search\r\n [(model)]=\"searchString\"\r\n [placeholder]=\"'Search for tag name'\"\r\n (search)=\"searchCollection()\"\r\n (modelChange)=\"searchCollection()\"\r\n (rightIconClick)=\"searchCollection()\"\r\n ></co-input-search>\r\n <div class=\"breadcrumbs\">\r\n <co-icon\r\n [iconData]=\"iconCacheService.getIcon(icon.HouseBlankRegular)\"\r\n (click)=\"setRootDisplayTags()\"\r\n ></co-icon>\r\n <div class=\"crumbs\">\r\n <span class=\"spacer\" [textContent]=\"'|'\"></span>\r\n <div class=\"crumb\" *ngFor=\"let crumb of breadCrumbs; let index = index\" (click)=\"handleCrumbClicked(crumb, index)\">\r\n <span class=\"spacer\" *ngIf=\"index !== 0\" [textContent]=\"'/'\"></span>\r\n <span [textContent]=\"crumb.description\"></span>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"collection-view\"\r\n cdkDropList\r\n cdkDropListSortingDisabled\r\n #collectionList=\"cdkDropList\"\r\n [cdkDropListData]=\"displayTags\"\r\n [cdkDropListConnectedTo]=\"[linkedList]\"\r\n ><div class=\"collection-item\"\r\n *ngFor=\"let tag of displayTags\"\r\n cdkDrag\r\n [cdkDragDisabled]=\"tag.tagType !== 'T' || linkedTags.includes(tag)\"\r\n [class.draggable]=\"tag.tagType === 'T' && !linkedTags.includes(tag)\"\r\n [class.disabled]=\"linkedTags.includes(tag)\"\r\n (click)=\"handleTagSelected(tag)\">\r\n\r\n <div class=\"collection-item\" *cdkDragPlaceholder>\r\n <co-icon *ngIf=\"tag.tagType === 'T'\" [iconData]=\"iconCacheService.getIcon(icon.TagRegular)\"></co-icon>\r\n <span [textContent]=\"tag.description\"></span>\r\n </div>\r\n\r\n <div *cdkDragPreview><co-icon [iconData]=\"iconCacheService.getIcon(icon.TagRegular)\"></co-icon></div>\r\n\r\n <co-icon *ngIf=\"tag.tagType === 'T'\" [iconData]=\"iconCacheService.getIcon(icon.TagRegular)\"></co-icon>\r\n <span [textContent]=\"tag.description\"></span>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div class=\"linked-tags-view\">\r\n <span class=\"title\" [textContent]=\"'Gekoppelde tags'\"></span>\r\n <div class=\"view-wrapper\"\r\n cdkDropList\r\n #linkedList=\"cdkDropList\"\r\n [cdkDropListData]=\"linkedTags\"\r\n (cdkDropListDropped)=\"handleAddTag($event)\">\r\n <div class=\"tag-item\" *ngFor=\"let tag of linkedTags\" [cdkDragDisabled]=\"true\" cdkDrag [style.background-color]=\"tag.color?.replace('0x', '#')\">\r\n <div class=\"placeholderLinked\" *cdkDragPlaceholder></div>\r\n\r\n <div class=\"thumbnail-description\">\r\n <co-icon *ngIf=\"!tag.image?.thumbnailBody\" [iconData]=\"iconCacheService.getIcon(icon.TagRegular)\"></co-icon>\r\n <div *ngIf=\"tag.image\" class=\"thumbnail-wrapper\">\r\n <img [src]=\"tag.image.thumbnailBodyAsDataUri\">\r\n </div>\r\n\r\n <div class=\"description-wrapper\">\r\n <span [textContent]=\"tag.parentDescription\"></span>\r\n <span class=\"description\" [textContent]=\"tag.description\"></span>\r\n </div>\r\n </div>\r\n <co-icon class=\"delete-tag\" (click)=\"deleteLinkedTag(tag)\"\r\n [iconData]=\"iconCacheService.getIcon(icon.XSolid)\"\r\n ></co-icon>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <ng-template #footerTemplate>\r\n <div class=\"co-dialog-footer-button-wrapper\">\r\n <co-button class=\"save-button\"\r\n [iconData]=\"iconCacheService.getIcon(icon.CheckDuotone)\"\r\n (click)=\"handleSaveTags()\"\r\n ></co-button>\r\n <co-button\r\n class=\"close-button\"\r\n [iconData]=\"iconCacheService.getIcon(icon.CrossSkinny)\"\r\n (click)=\"closeClick.next()\"\r\n ></co-button>\r\n </div>\r\n </ng-template>\r\n </co-dialog>\r\n `,\r\n encapsulation: ViewEncapsulation.None\r\n})\r\nexport class SimpleTagsComponent {\r\n public readonly icon: typeof Icon = Icon;\r\n\r\n @Input()\r\n public set tags(tags: TagTreeItem[]) {\r\n this._tags = tags;\r\n this.setRootDisplayTags();\r\n }\r\n\r\n @Input()\r\n public set linkedTags(tags: TagTreeItem[]) {\r\n this._linkedTags = tags;\r\n tags.forEach((tag) => this._loadThumbnail(tag));\r\n }\r\n\r\n public get linkedTags(): TagTreeItem[] {\r\n return this._linkedTags;\r\n }\r\n\r\n @Output()\r\n public closeClick: EventEmitter<void> = new EventEmitter<void>();\r\n\r\n @Output()\r\n public saveClick: EventEmitter<TagTreeItem[]> = new EventEmitter<TagTreeItem[]>();\r\n\r\n public breadCrumbs: TagTreeItem[] = [];\r\n public displayTags: TagTreeItem[] = [];\r\n public searchString: string = '';\r\n\r\n private _tags: TagTreeItem[] = [];\r\n private _linkedTags: TagTreeItem[] = [];\r\n\r\n @HostBinding(\"class.co-simple-tags\")\r\n public showClass() {\r\n return true;\r\n }\r\n\r\n constructor(\r\n public iconCacheService: IconCacheService,\r\n public sharedService: SharedService,\r\n ) { }\r\n\r\n public setRootDisplayTags(): void {\r\n this.displayTags = this._tags.filter((tag: TagTreeItem) => tag.treeLevel === 0);\r\n this.breadCrumbs = [];\r\n this.searchString = '';\r\n }\r\n\r\n public handleTagSelected(selectedTag: TagTreeItem): void {\r\n if (selectedTag.tagType === 'TR' || selectedTag.tagType === 'TG') {\r\n if (selectedTag !== this.breadCrumbs[0]) {\r\n this.breadCrumbs.push(selectedTag);\r\n }\r\n this.displayTags = this._tags.filter((tag: TagTreeItem) => {\r\n return tag.parentId === selectedTag.id && tag.treeLevel === selectedTag.treeLevel + 1\r\n });\r\n }\r\n }\r\n\r\n public handleCrumbClicked(tag: TagTreeItem, index: number): void {\r\n if (tag !== this.breadCrumbs[this.breadCrumbs.length - 1]) {\r\n this.breadCrumbs.splice(index + 1);\r\n this.handleTagSelected(tag);\r\n }\r\n }\r\n\r\n public handleAddTag(event: CdkDragDrop<TagTreeItem[], any>): void {\r\n const draggedTag: TagTreeItem = this.displayTags[event.previousIndex];\r\n if (!this._linkedTags.includes(draggedTag)) {\r\n this._linkedTags.push(this.displayTags[event.previousIndex]);\r\n this._loadThumbnail(draggedTag);\r\n }\r\n }\r\n\r\n public deleteLinkedTag(tag: TagTreeItem): void {\r\n this._linkedTags.splice(this._linkedTags.indexOf(tag), 1);\r\n }\r\n\r\n public searchCollection(): void {\r\n if (!this.searchString) {\r\n this.searchString = '';\r\n this.setRootDisplayTags();\r\n return;\r\n }\r\n if (this.searchString.length < 2) {\r\n return;\r\n }\r\n if (this.searchString === '') {\r\n this.setRootDisplayTags();\r\n return;\r\n }\r\n\r\n const matchingObjects: TagTreeItem[] = [];\r\n\r\n this._tags.filter((item) => item.tagType === 'T').forEach((obj) => {\r\n Object.values(obj).forEach((value) => {\r\n if (typeof value === 'string' || typeof value === 'number') {\r\n const stringValue = String(value).toLowerCase();\r\n if (stringValue.includes(this.searchString.toLowerCase())) {\r\n matchingObjects.push(obj);\r\n }\r\n }\r\n });\r\n });\r\n\r\n this.displayTags = matchingObjects;\r\n this.breadCrumbs = [];\r\n }\r\n\r\n public handleSaveTags(): void {\r\n this.saveClick.next(this._linkedTags);\r\n this.closeClick.next();\r\n }\r\n\r\n private _loadThumbnail(tagTreeItem: TagTreeItem): void {\r\n if (tagTreeItem.image && tagTreeItem.image.documentId && !tagTreeItem.image.thumbnailBody) {\r\n this.sharedService.getDocumentContent(tagTreeItem.image.documentId, true)\r\n .then((result) => {\r\n if (result) {\r\n tagTreeItem.image.thumbnailBody = result;\r\n }\r\n });\r\n }\r\n }\r\n}\r\n","import {NgModule} from \"@angular/core\";\r\nimport {CommonModule} from \"@angular/common\";\r\nimport {SimpleTagsComponent} from \"./simple-tags.component\";\r\nimport {ButtonModule, CoDialogModule, IconModule, InputSearchModule} from \"@colijnit/corecomponents_v12\";\r\nimport {DragDropModule} from \"@angular/cdk/drag-drop\";\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n CoDialogModule,\r\n InputSearchModule,\r\n IconModule,\r\n DragDropModule,\r\n ButtonModule\r\n ],\r\n declarations: [\r\n SimpleTagsComponent\r\n ],\r\n exports: [\r\n SimpleTagsComponent\r\n ]\r\n})\r\nexport class SimpleTagsModule {\r\n}\r\n","/*\r\n * Public API Surface of sharedcomponents\r\n */\r\n\r\nexport * from './lib/components/docsign/docsign.component';\r\nexport * from './lib/components/docsign/docsign.module';\r\nexport * from './lib/components/stock/stock.component';\r\nexport * from './lib/components/stock/stock.module';\r\nexport * from './lib/components/stock/localization/translation';\r\nexport * from './lib/components/send-method-dialog/send-method-dialog.component';\r\nexport * from './lib/components/send-method-dialog/send-method-dialog.module';\r\nexport * from './lib/components/key-pad/key-pad.component';\r\nexport * from './lib/components/key-pad/key-pad.module';\r\nexport * from './lib/components/layout-switcher/layout-switcher.component';\r\nexport * from './lib/components/layout-switcher/layout-switcher.module';\r\nexport * from './lib/components/linear-gauge/co-linear-gauge.component';\r\nexport * from './lib/components/linear-gauge/co-linear-gauge.module';\r\nexport * from './lib/components/statusbar/statusbar.component';\r\nexport * from './lib/components/statusbar/statusbar.module';\r\nexport * from './lib/components/date-planning/date-planning.component';\r\nexport * from './lib/components/date-planning/date-planning.module';\r\nexport * from './lib/components/simple-tags/simple-tags.component';\r\nexport * from './lib/components/simple-tags/simple-tags.module';\r\nexport * from './lib/service/shared.service';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n\nexport {AgendaBaseViewComponent as ɵcd} from './lib/components/date-planning/component/agenda/agenda-base-view.component';\nexport {AgendaDayViewComponent as ɵce} from './lib/components/date-planning/component/agenda/agenda-day-view.component';\nexport {AgendaEventComponent as ɵcm} from './lib/components/date-planning/component/agenda/agenda-event.component';\nexport {AgendaEventsComponent as ɵcl} from './lib/components/date-planning/component/agenda/agenda-events.component';\nexport {AgendaHalfHourCellComponent as ɵck} from './lib/components/date-planning/component/agenda/agenda-half-hour-cell.component';\nexport {AgendaHeaderComponent as ɵca} from './lib/components/date-planning/component/agenda/agenda-header.component';\nexport {AgendaHourCellComponent as ɵci} from './lib/components/date-planning/component/agenda/agenda-hour-cell.component';\nexport {AgendaHourViewLabelsComponent as ɵcj} from './lib/components/date-planning/component/agenda/agenda-hour-view-labels.component';\nexport {AgendaHourViewComponent as ɵch} from './lib/components/date-planning/component/agenda/agenda-hour-view.component';\nexport {AgendaMonthViewComponent as ɵcc} from './lib/components/date-planning/component/agenda/agenda-month-view.component';\nexport {AgendaSelectEventComponent as ɵco} from './lib/components/date-planning/component/agenda/agenda-select-event.component';\nexport {AgendaViewComponent as ɵcb} from './lib/components/date-planning/component/agenda/agenda-view.component';\nexport {AgendaWeekSelectViewComponent as ɵcg} from './lib/components/date-planning/component/agenda/agenda-week-select-view.component';\nexport {AgendaWeekViewComponent as ɵcf} from './lib/components/date-planning/component/agenda/agenda-week-view.component';\nexport {ViewSelectComponent as ɵcn} from './lib/components/date-planning/component/agenda/view-select.component';\nexport {CalendarAllMonthsComponent as ɵbv} from './lib/components/date-planning/component/calendar/calendar-all-months.component';\nexport {CalendarAllYearsComponent as ɵbu} from './lib/components/date-planning/component/calendar/calendar-all-years.component';\nexport {CalendarHeaderComponent as ɵbw} from './lib/components/date-planning/component/calendar/calendar-header.component';\nexport {CalendarViewComponent as ɵby} from './lib/components/date-planning/component/calendar/calendar-view.component';\nexport {CalendarComponent as ɵbx} from './lib/components/date-planning/component/calendar/calendar.component';\nexport {SignatureComponent as ɵa} from './lib/components/docsign/component/signature/signature.component';\nexport {SignaturesComponent as ɵb} from './lib/components/docsign/component/signatures/signatures.component';\nexport {LayoutSelectionComponent as ɵl} from './lib/components/send-method-dialog/components/layout-selection/layout-selection.component';\nexport {LayoutSelectionModule as ɵk} from './lib/components/send-method-dialog/components/layout-selection/layout-selection.module';\nexport {PrinterSelectionComponent as ɵr} from './lib/components/send-method-dialog/components/printer-selection/printer-selection.component';\nexport {PrinterSelectionModule as ɵq} from './lib/components/send-method-dialog/components/printer-selection/printer-selection.module';\nexport {SendMethodEmailComponent as ɵo} from './lib/components/send-method-dialog/components/send-method-email/send-method-email.component';\nexport {SendMethodEmailModule as ɵj} from './lib/components/send-method-dialog/components/send-method-email/send-method-email.module';\nexport {SendMethodPdfComponent as ɵu} from './lib/components/send-method-dialog/components/send-method-pdf/send-method-pdf.component';\nexport {SendMethodPdfModule as ɵt} from './lib/components/send-method-dialog/components/send-method-pdf/send-method-pdf.module';\nexport {SendMethodPrinterComponent as ɵs} from './lib/components/send-method-dialog/components/send-method-printer/send-method-printer.component';\nexport {SendMethodPrinterModule as ɵp} from './lib/components/send-method-dialog/components/send-method-printer/send-method-printer.module';\nexport {SignatureButtonComponent as ɵn} from './lib/components/send-method-dialog/components/signature-button/signature-button.component';\nexport {SignatureButtonModule as ɵm} from './lib/components/send-method-dialog/components/signature-button/signature-button.module';\nexport {SendMethodService as ɵi} from './lib/components/send-method-dialog/service/send-method.service';\nexport {StatusbarPopupComponent as ɵx} from './lib/components/statusbar/statusbar-popup.component';\nexport {StockStatusbarComponent as ɵz} from './lib/components/stock-statusbar/stock-statusbar.component';\nexport {StockStatusbarModule as ɵy} from './lib/components/stock-statusbar/stock-statusbar.module';\nexport {AllocationStockHistoryComponent as ɵbq} from './lib/components/stock/components/allocation-stock-history/allocation-stock-history.component';\nexport {OrderCommissionStockHistoryComponent as ɵbo} from './lib/components/stock/components/order-commission-stock-history/order-commission-stock-history.component';\nexport {OrderStockHistoryComponent as ɵbp} from './lib/components/stock/components/order-stock-history/order-stock-history.component';\nexport {OrderStockTabComponent as ɵbk} from './lib/components/stock/components/order-stock-tab/order-stock-tab.component';\nexport {OrderSupplyStockHistoryComponent as ɵbn} from './lib/components/stock/components/order-supply-stock-history/order-supply-stock-history.component';\nexport {OrderTabComponent as ɵbh} from './lib/components/stock/components/order-tab/order-tab.component';\nexport {StockHistoryComponent as ɵbm} from './lib/components/stock/components/stock-history/stock-history.component';\nexport {StockLocationComponent as ɵbl} from './lib/components/stock/components/stock-location/stock-location.component';\nexport {StockPrognoseComponent as ɵbr} from './lib/components/stock/components/stock-prognose/stock-prognose.component';\nexport {StockTabComponent as ɵbg} from './lib/components/stock/components/stock-tab/stock-tab.component';\nexport {StockHistoryTabsComponent as ɵbj} from './lib/components/stock/stock-history-tabs/stock-history-tabs.component';\nexport {StockInformationGridComponent as ɵbd} from './lib/components/stock/stock-information-grid/stock-information-grid.component';\nexport {StockInformationComponent as ɵbc} from './lib/components/stock/stock-information/stock-information.component';\nexport {StockTabsComponent as ɵbi} from './lib/components/stock/stock-tabs/stock-tabs.component';\nexport {StockChangeAmountComponent as ɵbf} from './lib/components/stock/stock-transfer/stock-change-amount.component';\nexport {StockTransferComponent as ɵbe} from './lib/components/stock/stock-transfer/stock-transfer.component';\nexport {TabBarComponent as ɵw} from './lib/components/tab-bar/tab-bar.component';\nexport {TabBarModule as ɵv} from './lib/components/tab-bar/tab-bar.module';\nexport {Icon as ɵbt} from './lib/enum/icon.enum';\nexport {LanguageCode as ɵbz} from './lib/enum/language-code.enum';\nexport {LocalizationModule as ɵba} from './lib/localization/localization.module';\nexport {LocalizePipe as ɵbb} from './lib/localization/localize.pipe';\nexport {LocalizeService as ɵg} from './lib/localization/localize.service';\nexport {SendMethod as ɵbs} from './lib/model/send-method';\nexport {ArrayNumberPipe as ɵcq} from './lib/pipe/array-number.pipe';\nexport {MASTER_PIPES as ɵcp} from './lib/pipe/master-pipes';\nexport {UCfirstPipe as ɵcr} from './lib/pipe/ucfirst.pipe';\nexport {DictionaryService as ɵf} from './lib/service/dictionary.service';\nexport {IconCacheService as ɵh} from './lib/service/icon-cache.service';\nexport {OptionsService as ɵe} from './lib/service/options.service';\nexport {SharedConnectorService as ɵd} from './lib/service/shared-connector.service';\nexport {StockService as ɵc} from './lib/service/stock.service';"],"names":["EventEmitter","PDFDocument","pdfjsWorker","PDFJS","Component","trigger","state","style","transition","animate","ViewEncapsulation","ViewChild","ElementRef","Input","Output","HostBinding","SignaturePad","NgModule","CommonModule","LanguageCode","Injectable","Options","BehaviorSubject","BusinessObjectFactory","Sharedapi","Articles","MainApi","Printer","SendMethod","TagTreeItem","StockHistoryBo","ArticleStockBo","StockManagementWarehouses","StockLocation","ArticleDetailsBo","StockStatus","ArticleTransactionBo","Translation","ArticleExtended","PrintStockStickers","ArticleStock","ArticleExtendedRequest","ChangeDetectorRef","DomSanitizer","Icon","ArticleStockManagement","PrintPriceStickers","ArticleTransaction","Subject","ReportingDocumentPrintSignDocBaseRequest","ReportingDocumentEmailSignDocBaseRequest","ReportingDocumentPdfBaseRequest","SendMethodType","IconModule","InputCheckboxModule","CoDialogModule","ButtonModule","GetStockHistoryRequest","ListOfValuesModule","GaugeColor","Chart","DoughnutController","ArcElement","ViewChildren","OverlayService","HostListener","ClickoutsideModule","OverlayModule","Pipe","InputRadioButtonModule","SimpleGridModule","ImageModule","InputTextModule","InputNumberPickerModule","CoDialogWizardModule","InputTextareaModule","PopupModule","ResponsiveTextModule","Renderer2","Month","moment","DatePipe","Inject","LOCALE_ID","NgZone","Directive","InputDatePickerModule","InputSearchModule","DragDropModule"],"mappings":"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"}