@colijnit/sharedcomponents 1.0.61 → 1.0.63

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 (486) hide show
  1. package/3rdpartylicenses.txt +1200 -0
  2. package/README.md +24 -24
  3. package/bundles/colijnit-sharedcomponents.umd.js +9887 -9851
  4. package/bundles/colijnit-sharedcomponents.umd.js.map +1 -1
  5. package/colijnit-sharedcomponents.d.ts +91 -91
  6. package/colijnit-sharedcomponents.metadata.json +1 -1
  7. package/esm2015/colijnit-sharedcomponents.js +91 -91
  8. package/esm2015/lib/assets/dictionary/text.properties.js +11 -11
  9. package/esm2015/lib/businessobject/build-images-and-documentation-result.js +2 -2
  10. package/esm2015/lib/businessobject/co-document-right.bo.js +3 -3
  11. package/esm2015/lib/businessobject/drag-drop-container-element.js +2 -2
  12. package/esm2015/lib/businessobject/drag-drop-container.js +7 -7
  13. package/esm2015/lib/components/activity-list/activity-list.component.js +130 -130
  14. package/esm2015/lib/components/activity-list/activity-list.module.js +24 -24
  15. package/esm2015/lib/components/app-file-dropzone/app-file-dropzone.component.js +47 -47
  16. package/esm2015/lib/components/app-file-dropzone/app-file-dropzone.module.js +20 -20
  17. package/esm2015/lib/components/date-planning/component/agenda/agenda-base-view.component.js +61 -61
  18. package/esm2015/lib/components/date-planning/component/agenda/agenda-day-view.component.js +36 -36
  19. package/esm2015/lib/components/date-planning/component/agenda/agenda-event.component.js +56 -56
  20. package/esm2015/lib/components/date-planning/component/agenda/agenda-events.component.js +47 -47
  21. package/esm2015/lib/components/date-planning/component/agenda/agenda-half-hour-cell.component.js +68 -68
  22. package/esm2015/lib/components/date-planning/component/agenda/agenda-header.component.js +243 -243
  23. package/esm2015/lib/components/date-planning/component/agenda/agenda-hour-cell.component.js +36 -36
  24. package/esm2015/lib/components/date-planning/component/agenda/agenda-hour-view-labels.component.js +50 -50
  25. package/esm2015/lib/components/date-planning/component/agenda/agenda-hour-view.component.js +46 -46
  26. package/esm2015/lib/components/date-planning/component/agenda/agenda-month-view.component.js +61 -61
  27. package/esm2015/lib/components/date-planning/component/agenda/agenda-select-event.component.js +39 -39
  28. package/esm2015/lib/components/date-planning/component/agenda/agenda-view.component.js +35 -35
  29. package/esm2015/lib/components/date-planning/component/agenda/agenda-week-select-view.component.js +64 -64
  30. package/esm2015/lib/components/date-planning/component/agenda/agenda-week-view.component.js +48 -48
  31. package/esm2015/lib/components/date-planning/component/agenda/view-select.component.js +42 -42
  32. package/esm2015/lib/components/date-planning/component/calendar/calendar-all-months.component.js +34 -34
  33. package/esm2015/lib/components/date-planning/component/calendar/calendar-all-years.component.js +48 -48
  34. package/esm2015/lib/components/date-planning/component/calendar/calendar-header.component.js +107 -107
  35. package/esm2015/lib/components/date-planning/component/calendar/calendar-view.component.js +178 -178
  36. package/esm2015/lib/components/date-planning/component/calendar/calendar.component.js +34 -34
  37. package/esm2015/lib/components/date-planning/date-planning.component.js +113 -113
  38. package/esm2015/lib/components/date-planning/date-planning.module.js +63 -63
  39. package/esm2015/lib/components/docsign/component/signature/signature.component.js +75 -75
  40. package/esm2015/lib/components/docsign/component/signatures/signatures.component.js +44 -44
  41. package/esm2015/lib/components/docsign/docsign.component.js +242 -242
  42. package/esm2015/lib/components/docsign/docsign.module.js +23 -23
  43. package/esm2015/lib/components/file-upload/file-upload.component.js +189 -189
  44. package/esm2015/lib/components/file-upload/file-upload.module.js +25 -25
  45. package/esm2015/lib/components/file-upload-popup/file-upload-popup.component.js +397 -397
  46. package/esm2015/lib/components/file-upload-popup/file-upload-popup.module.js +30 -30
  47. package/esm2015/lib/components/files-upload/components/base-file-upload.component.js +469 -469
  48. package/esm2015/lib/components/files-upload/components/drag-drop-container.component.js +115 -115
  49. package/esm2015/lib/components/files-upload/files-upload.component.js +131 -131
  50. package/esm2015/lib/components/files-upload/files-upload.module.js +47 -47
  51. package/esm2015/lib/components/image-display/image-display.component.js +36 -36
  52. package/esm2015/lib/components/image-display/image-display.module.js +23 -23
  53. package/esm2015/lib/components/key-pad/key-pad.component.js +200 -200
  54. package/esm2015/lib/components/key-pad/key-pad.module.js +22 -22
  55. package/esm2015/lib/components/layout-switcher/layout-switcher.component.js +74 -74
  56. package/esm2015/lib/components/layout-switcher/layout-switcher.module.js +21 -21
  57. package/esm2015/lib/components/linear-gauge/co-linear-gauge.component.js +59 -59
  58. package/esm2015/lib/components/linear-gauge/co-linear-gauge.module.js +19 -19
  59. package/esm2015/lib/components/multi-property-toggler/multiple-property-toggler.component.js +89 -89
  60. package/esm2015/lib/components/multi-property-toggler/multiple-property-toggler.module.js +21 -21
  61. package/esm2015/lib/components/send-method-dialog/components/layout-selection/layout-selection.component.js +79 -79
  62. package/esm2015/lib/components/send-method-dialog/components/layout-selection/layout-selection.module.js +21 -21
  63. package/esm2015/lib/components/send-method-dialog/components/printer-selection/printer-selection.component.js +85 -85
  64. package/esm2015/lib/components/send-method-dialog/components/printer-selection/printer-selection.module.js +21 -21
  65. package/esm2015/lib/components/send-method-dialog/components/send-method-email/send-method-email.component.js +64 -64
  66. package/esm2015/lib/components/send-method-dialog/components/send-method-email/send-method-email.module.js +26 -26
  67. package/esm2015/lib/components/send-method-dialog/components/send-method-pdf/send-method-pdf.component.js +40 -40
  68. package/esm2015/lib/components/send-method-dialog/components/send-method-pdf/send-method-pdf.module.js +23 -23
  69. package/esm2015/lib/components/send-method-dialog/components/send-method-printer/send-method-printer.component.js +61 -61
  70. package/esm2015/lib/components/send-method-dialog/components/send-method-printer/send-method-printer.module.js +28 -28
  71. package/esm2015/lib/components/send-method-dialog/components/signature-button/signature-button.component.js +38 -38
  72. package/esm2015/lib/components/send-method-dialog/components/signature-button/signature-button.module.js +21 -21
  73. package/esm2015/lib/components/send-method-dialog/model/email-address-viewmodel.js +7 -7
  74. package/esm2015/lib/components/send-method-dialog/send-method-dialog.component.js +258 -258
  75. package/esm2015/lib/components/send-method-dialog/send-method-dialog.module.js +35 -35
  76. package/esm2015/lib/components/send-method-dialog/send-method-params.interface.js +2 -2
  77. package/esm2015/lib/components/send-method-dialog/service/send-method.service.js +59 -59
  78. package/esm2015/lib/components/simple-tags/simple-tags.component.js +229 -229
  79. package/esm2015/lib/components/simple-tags/simple-tags.module.js +26 -26
  80. package/esm2015/lib/components/statusbar/statusbar-popup.component.js +97 -97
  81. package/esm2015/lib/components/statusbar/statusbar.component.js +81 -81
  82. package/esm2015/lib/components/statusbar/statusbar.module.js +27 -27
  83. package/esm2015/lib/components/stock/components/allocation-stock-history/allocation-stock-history.component.js +47 -47
  84. package/esm2015/lib/components/stock/components/order-commission-stock-history/order-commission-stock-history.component.js +47 -47
  85. package/esm2015/lib/components/stock/components/order-stock-history/order-stock-history.component.js +47 -47
  86. package/esm2015/lib/components/stock/components/order-stock-tab/order-stock-tab.component.js +47 -47
  87. package/esm2015/lib/components/stock/components/order-supply-stock-history/order-supply-stock-history.component.js +47 -47
  88. package/esm2015/lib/components/stock/components/order-tab/order-tab.component.js +67 -67
  89. package/esm2015/lib/components/stock/components/stock-history/stock-history.component.js +53 -53
  90. package/esm2015/lib/components/stock/components/stock-location/stock-location.component.js +251 -240
  91. package/esm2015/lib/components/stock/components/stock-prognose/stock-prognose.component.js +52 -52
  92. package/esm2015/lib/components/stock/components/stock-tab/stock-tab.component.js +39 -41
  93. package/esm2015/lib/components/stock/localization/translation.js +70 -63
  94. package/esm2015/lib/components/stock/stock-history-tabs/stock-history-tabs.component.js +33 -33
  95. package/esm2015/lib/components/stock/stock-information/stock-information.component.js +49 -48
  96. package/esm2015/lib/components/stock/stock-information-grid/stock-information-grid.component.js +457 -457
  97. package/esm2015/lib/components/stock/stock-tabs/stock-tabs.component.js +243 -241
  98. package/esm2015/lib/components/stock/stock-transfer/co-drop-down-list-fields.interface.js +2 -2
  99. package/esm2015/lib/components/stock/stock-transfer/stock-change-amount.component.js +72 -72
  100. package/esm2015/lib/components/stock/stock-transfer/stock-transfer.component.js +160 -149
  101. package/esm2015/lib/components/stock/stock.component.js +238 -193
  102. package/esm2015/lib/components/stock/stock.module.js +80 -80
  103. package/esm2015/lib/components/stock-statusbar/stock-statusbar.component.js +23 -23
  104. package/esm2015/lib/components/stock-statusbar/stock-statusbar.module.js +19 -19
  105. package/esm2015/lib/components/tab-bar/tab-bar.component.js +90 -88
  106. package/esm2015/lib/components/tab-bar/tab-bar.module.js +21 -21
  107. package/esm2015/lib/components/tab-bar/tab.interface.js +2 -2
  108. package/esm2015/lib/components/tile-renderer/tile-render.component.js +80 -80
  109. package/esm2015/lib/components/tile-renderer/tile-render.module.js +26 -26
  110. package/esm2015/lib/decorator/input-boolean.decorator.js +34 -34
  111. package/esm2015/lib/enum/calendar-view.enum.js +9 -9
  112. package/esm2015/lib/enum/document-email-report.enum.js +18 -18
  113. package/esm2015/lib/enum/domain-multiple-name.enum.js +13 -13
  114. package/esm2015/lib/enum/file-type.js +14 -14
  115. package/esm2015/lib/enum/files-upload-config-objects.js +3 -3
  116. package/esm2015/lib/enum/gauge-color.enum.js +10 -10
  117. package/esm2015/lib/enum/icon.enum.js +48 -44
  118. package/esm2015/lib/enum/internal-param.enum.js +38 -38
  119. package/esm2015/lib/enum/keyboard-code.enum.js +32 -32
  120. package/esm2015/lib/enum/language-code.enum.js +8 -8
  121. package/esm2015/lib/enum/month.enum.js +17 -17
  122. package/esm2015/lib/enum/read-write-access-config-names.enum.js +2 -2
  123. package/esm2015/lib/enum/table-name.enum.js +86 -86
  124. package/esm2015/lib/enum/tag-category.enum.js +22 -22
  125. package/esm2015/lib/enum/tags-component-config-names.js +2 -2
  126. package/esm2015/lib/enum/thumb-three-way-state.js +19 -19
  127. package/esm2015/lib/enum/tile-size-type.js +7 -7
  128. package/esm2015/lib/enum/time-period.enum.js +11 -11
  129. package/esm2015/lib/event/co-drag-event.js +2 -2
  130. package/esm2015/lib/event/co-drop-event.js +2 -2
  131. package/esm2015/lib/interface/key-value-pair.js +2 -2
  132. package/esm2015/lib/interface/operation-callback-simple-function.js +4 -4
  133. package/esm2015/lib/localization/localization.module.js +19 -19
  134. package/esm2015/lib/localization/localize.pipe.js +26 -26
  135. package/esm2015/lib/localization/localize.service.js +30 -30
  136. package/esm2015/lib/localization/translation.js +3 -3
  137. package/esm2015/lib/model/agenda-event-per-day.model.js +6 -6
  138. package/esm2015/lib/model/agenda-event.model.js +8 -8
  139. package/esm2015/lib/model/agenda-null-objects.js +11 -11
  140. package/esm2015/lib/model/constant/all-months.js +17 -17
  141. package/esm2015/lib/model/date-range.js +5 -5
  142. package/esm2015/lib/model/day.model.js +7 -7
  143. package/esm2015/lib/model/icon-svg.js +47 -43
  144. package/esm2015/lib/model/month.model.js +11 -11
  145. package/esm2015/lib/model/send-method.js +8 -8
  146. package/esm2015/lib/model/settings.js +4 -4
  147. package/esm2015/lib/model/tag-tree-item.bo.js +16 -16
  148. package/esm2015/lib/model/time-window.bo.js +26 -26
  149. package/esm2015/lib/model/tree-object.js +15 -15
  150. package/esm2015/lib/model/week.model.js +6 -6
  151. package/esm2015/lib/model/weekday.model.js +10 -10
  152. package/esm2015/lib/pipe/array-number.pipe.js +15 -15
  153. package/esm2015/lib/pipe/file-type-image.pipe.js +51 -51
  154. package/esm2015/lib/pipe/master-pipes.js +9 -9
  155. package/esm2015/lib/pipe/ucfirst.pipe.js +16 -16
  156. package/esm2015/lib/service/dictionary.service.js +76 -76
  157. package/esm2015/lib/service/drag-drop.service.js +365 -365
  158. package/esm2015/lib/service/icon-cache.service.js +51 -51
  159. package/esm2015/lib/service/options.service.js +48 -48
  160. package/esm2015/lib/service/shared-connector.service.js +433 -433
  161. package/esm2015/lib/service/shared.service.js +60 -60
  162. package/esm2015/lib/service/stock.service.js +110 -110
  163. package/esm2015/lib/utils/array-utils.js +202 -202
  164. package/esm2015/lib/utils/calendar.utils.js +68 -68
  165. package/esm2015/lib/utils/check-precision-and-scale-result.js +2 -2
  166. package/esm2015/lib/utils/check-within-stepped-bounds-result.js +2 -2
  167. package/esm2015/lib/utils/co-document-shared-field-logic.js +50 -50
  168. package/esm2015/lib/utils/date-utils.js +264 -264
  169. package/esm2015/lib/utils/enum-utils.js +128 -128
  170. package/esm2015/lib/utils/function/not-nill.function.js +5 -5
  171. package/esm2015/lib/utils/is-nill.function.js +5 -5
  172. package/esm2015/lib/utils/map-utils.js +41 -41
  173. package/esm2015/lib/utils/number-utils.js +390 -390
  174. package/esm2015/lib/utils/object-utils.js +278 -278
  175. package/esm2015/lib/utils/ref-code-utils.js +49 -49
  176. package/esm2015/lib/utils/string-utils.js +93 -93
  177. package/esm2015/public-api.js +31 -31
  178. package/favicon.ico +0 -0
  179. package/fesm2015/colijnit-sharedcomponents.js +10410 -10328
  180. package/fesm2015/colijnit-sharedcomponents.js.map +1 -1
  181. package/index.html +12 -0
  182. package/lib/assets/dictionary/text.properties.d.ts +3 -3
  183. package/lib/businessobject/build-images-and-documentation-result.d.ts +5 -5
  184. package/lib/businessobject/co-document-right.bo.d.ts +6 -6
  185. package/lib/businessobject/drag-drop-container-element.d.ts +6 -6
  186. package/lib/businessobject/drag-drop-container.d.ts +6 -6
  187. package/lib/components/access/read-write-access.scss +25 -25
  188. package/lib/components/access/style/_layout.scss +23 -23
  189. package/lib/components/access/style/_material-definition.scss +12 -12
  190. package/lib/components/access/style/_theme.scss +4 -4
  191. package/lib/components/access/style/material.scss +4 -4
  192. package/lib/components/activity-list/activity-list.component.d.ts +33 -33
  193. package/lib/components/activity-list/activity-list.module.d.ts +2 -2
  194. package/lib/components/activity-list/style/_layout.scss +68 -68
  195. package/lib/components/activity-list/style/_theme.scss +4 -4
  196. package/lib/components/activity-list/style/material.scss +4 -4
  197. package/lib/components/app-file-dropzone/app-file-dropzone.component.d.ts +14 -14
  198. package/lib/components/app-file-dropzone/app-file-dropzone.module.d.ts +2 -2
  199. package/lib/components/app-file-dropzone/style/_layout.scss +61 -61
  200. package/lib/components/app-file-dropzone/style/_theme.scss +4 -4
  201. package/lib/components/app-file-dropzone/style/material.scss +4 -4
  202. package/lib/components/date-planning/component/agenda/agenda-base-view.component.d.ts +21 -21
  203. package/lib/components/date-planning/component/agenda/agenda-day-view.component.d.ts +7 -7
  204. package/lib/components/date-planning/component/agenda/agenda-event.component.d.ts +18 -18
  205. package/lib/components/date-planning/component/agenda/agenda-events.component.d.ts +13 -13
  206. package/lib/components/date-planning/component/agenda/agenda-half-hour-cell.component.d.ts +18 -18
  207. package/lib/components/date-planning/component/agenda/agenda-header.component.d.ts +48 -48
  208. package/lib/components/date-planning/component/agenda/agenda-hour-cell.component.d.ts +9 -9
  209. package/lib/components/date-planning/component/agenda/agenda-hour-view-labels.component.d.ts +8 -8
  210. package/lib/components/date-planning/component/agenda/agenda-hour-view.component.d.ts +7 -7
  211. package/lib/components/date-planning/component/agenda/agenda-month-view.component.d.ts +10 -10
  212. package/lib/components/date-planning/component/agenda/agenda-select-event.component.d.ts +12 -12
  213. package/lib/components/date-planning/component/agenda/agenda-view.component.d.ts +12 -12
  214. package/lib/components/date-planning/component/agenda/agenda-week-select-view.component.d.ts +10 -10
  215. package/lib/components/date-planning/component/agenda/agenda-week-view.component.d.ts +9 -9
  216. package/lib/components/date-planning/component/agenda/style/_layout.scss +443 -443
  217. package/lib/components/date-planning/component/agenda/style/_material-definition.scss +12 -12
  218. package/lib/components/date-planning/component/agenda/style/_theme.scss +7 -7
  219. package/lib/components/date-planning/component/agenda/style/material.scss +5 -5
  220. package/lib/components/date-planning/component/agenda/view-select.component.d.ts +11 -11
  221. package/lib/components/date-planning/component/calendar/calendar-all-months.component.d.ts +9 -9
  222. package/lib/components/date-planning/component/calendar/calendar-all-years.component.d.ts +9 -9
  223. package/lib/components/date-planning/component/calendar/calendar-header.component.d.ts +23 -23
  224. package/lib/components/date-planning/component/calendar/calendar-view.component.d.ts +31 -31
  225. package/lib/components/date-planning/component/calendar/calendar.component.d.ts +10 -10
  226. package/lib/components/date-planning/component/calendar/style/_layout.scss +167 -167
  227. package/lib/components/date-planning/component/calendar/style/_material-definition.scss +7 -7
  228. package/lib/components/date-planning/component/calendar/style/_theme.scss +7 -7
  229. package/lib/components/date-planning/component/calendar/style/material.scss +5 -5
  230. package/lib/components/date-planning/date-planning.component.d.ts +28 -28
  231. package/lib/components/date-planning/date-planning.module.d.ts +2 -2
  232. package/lib/components/date-planning/style/_layout.scss +45 -45
  233. package/lib/components/date-planning/style/_theme.scss +5 -5
  234. package/lib/components/date-planning/style/material.scss +7 -7
  235. package/lib/components/docsign/component/signature/signature.component.d.ts +16 -16
  236. package/lib/components/docsign/component/signature/style/_layout.scss +40 -40
  237. package/lib/components/docsign/component/signature/style/_material-definition.scss +11 -11
  238. package/lib/components/docsign/component/signature/style/_theme.scss +13 -13
  239. package/lib/components/docsign/component/signature/style/material.scss +4 -4
  240. package/lib/components/docsign/component/signatures/signatures.component.d.ts +12 -12
  241. package/lib/components/docsign/component/signatures/style/_layout.scss +13 -13
  242. package/lib/components/docsign/component/signatures/style/_material-definition.scss +1 -1
  243. package/lib/components/docsign/component/signatures/style/_theme.scss +4 -4
  244. package/lib/components/docsign/component/signatures/style/material.scss +5 -5
  245. package/lib/components/docsign/docsign.component.d.ts +94 -94
  246. package/lib/components/docsign/docsign.module.d.ts +2 -2
  247. package/lib/components/docsign/style/_layout.scss +40 -40
  248. package/lib/components/docsign/style/_material-definition.scss +12 -12
  249. package/lib/components/docsign/style/_theme.scss +12 -12
  250. package/lib/components/docsign/style/material.scss +15 -15
  251. package/lib/components/file-upload/file-upload.component.d.ts +42 -42
  252. package/lib/components/file-upload/file-upload.module.d.ts +2 -2
  253. package/lib/components/file-upload/style/_layout.scss +59 -59
  254. package/lib/components/file-upload/style/_material-definition.scss +2 -2
  255. package/lib/components/file-upload/style/_theme.scss +4 -4
  256. package/lib/components/file-upload/style/material.scss +4 -4
  257. package/lib/components/file-upload-popup/file-upload-popup.component.d.ts +75 -75
  258. package/lib/components/file-upload-popup/file-upload-popup.module.d.ts +2 -2
  259. package/lib/components/file-upload-popup/style/_layout.scss +48 -48
  260. package/lib/components/file-upload-popup/style/_material-definition.scss +2 -2
  261. package/lib/components/file-upload-popup/style/_theme.scss +5 -5
  262. package/lib/components/file-upload-popup/style/material.scss +4 -4
  263. package/lib/components/files-upload/components/base-file-upload.component.d.ts +98 -98
  264. package/lib/components/files-upload/components/drag-drop-container.component.d.ts +34 -34
  265. package/lib/components/files-upload/files-upload.component.d.ts +32 -32
  266. package/lib/components/files-upload/files-upload.module.d.ts +2 -2
  267. package/lib/components/files-upload/style/_layout.scss +49 -49
  268. package/lib/components/files-upload/style/_theme.scss +5 -5
  269. package/lib/components/files-upload/style/material.scss +4 -4
  270. package/lib/components/image-display/image-display.component.d.ts +14 -14
  271. package/lib/components/image-display/image-display.module.d.ts +2 -2
  272. package/lib/components/image-display/style/_layout.scss +56 -56
  273. package/lib/components/image-display/style/_material-definition.scss +4 -4
  274. package/lib/components/image-display/style/_theme.scss +6 -6
  275. package/lib/components/image-display/style/material.scss +3 -3
  276. package/lib/components/key-pad/key-pad.component.d.ts +38 -38
  277. package/lib/components/key-pad/key-pad.module.d.ts +2 -2
  278. package/lib/components/key-pad/style/_layout.scss +160 -160
  279. package/lib/components/key-pad/style/_material-definition.scss +19 -19
  280. package/lib/components/key-pad/style/_theme.scss +35 -35
  281. package/lib/components/key-pad/style/material.scss +4 -4
  282. package/lib/components/layout-switcher/layout-switcher.component.d.ts +16 -16
  283. package/lib/components/layout-switcher/layout-switcher.module.d.ts +2 -2
  284. package/lib/components/layout-switcher/style/_layout.scss +94 -94
  285. package/lib/components/layout-switcher/style/_material-definition.scss +16 -16
  286. package/lib/components/layout-switcher/style/_theme.scss +4 -4
  287. package/lib/components/layout-switcher/style/material.scss +6 -6
  288. package/lib/components/linear-gauge/co-linear-gauge.component.d.ts +11 -11
  289. package/lib/components/linear-gauge/co-linear-gauge.module.d.ts +2 -2
  290. package/lib/components/linear-gauge/style/_layout.scss +20 -20
  291. package/lib/components/linear-gauge/style/_material-definition.scss +8 -8
  292. package/lib/components/linear-gauge/style/_theme.scss +4 -4
  293. package/lib/components/linear-gauge/style/material.scss +6 -6
  294. package/lib/components/login/style/_layout.scss +57 -57
  295. package/lib/components/login/style/_material-definition.scss +23 -23
  296. package/lib/components/login/style/_theme.scss +7 -7
  297. package/lib/components/login/style/material.scss +4 -4
  298. package/lib/components/multi-property-toggler/multiple-property-toggler.component.d.ts +27 -27
  299. package/lib/components/multi-property-toggler/multiple-property-toggler.module.d.ts +2 -2
  300. package/lib/components/multi-property-toggler/style/_layout.scss +24 -24
  301. package/lib/components/multi-property-toggler/style/_theme.scss +4 -4
  302. package/lib/components/multi-property-toggler/style/material.scss +4 -4
  303. package/lib/components/screen-config-generator/style/_layout.scss +95 -95
  304. package/lib/components/screen-config-generator/style/_theme.scss +4 -4
  305. package/lib/components/screen-config-generator/style/material.scss +4 -4
  306. package/lib/components/send-method-dialog/components/layout-selection/layout-selection.component.d.ts +19 -19
  307. package/lib/components/send-method-dialog/components/layout-selection/layout-selection.module.d.ts +2 -2
  308. package/lib/components/send-method-dialog/components/layout-selection/style/_layout.scss +44 -44
  309. package/lib/components/send-method-dialog/components/layout-selection/style/_material-definition.scss +19 -19
  310. package/lib/components/send-method-dialog/components/layout-selection/style/_theme.scss +17 -17
  311. package/lib/components/send-method-dialog/components/layout-selection/style/material.scss +4 -4
  312. package/lib/components/send-method-dialog/components/printer-selection/printer-selection.component.d.ts +19 -19
  313. package/lib/components/send-method-dialog/components/printer-selection/printer-selection.module.d.ts +2 -2
  314. package/lib/components/send-method-dialog/components/printer-selection/style/_layout.scss +69 -69
  315. package/lib/components/send-method-dialog/components/printer-selection/style/_material-definition.scss +37 -37
  316. package/lib/components/send-method-dialog/components/printer-selection/style/_theme.scss +23 -23
  317. package/lib/components/send-method-dialog/components/printer-selection/style/material.scss +4 -4
  318. package/lib/components/send-method-dialog/components/send-method-email/send-method-email.component.d.ts +14 -14
  319. package/lib/components/send-method-dialog/components/send-method-email/send-method-email.module.d.ts +2 -2
  320. package/lib/components/send-method-dialog/components/send-method-email/style/_layout.scss +29 -29
  321. package/lib/components/send-method-dialog/components/send-method-email/style/_material-definition.scss +8 -8
  322. package/lib/components/send-method-dialog/components/send-method-email/style/_theme.scss +5 -5
  323. package/lib/components/send-method-dialog/components/send-method-email/style/material.scss +4 -4
  324. package/lib/components/send-method-dialog/components/send-method-pdf/send-method-pdf.component.d.ts +8 -8
  325. package/lib/components/send-method-dialog/components/send-method-pdf/send-method-pdf.module.d.ts +2 -2
  326. package/lib/components/send-method-dialog/components/send-method-pdf/style/_layout.scss +25 -25
  327. package/lib/components/send-method-dialog/components/send-method-pdf/style/_material-definition.scss +5 -5
  328. package/lib/components/send-method-dialog/components/send-method-pdf/style/_theme.scss +5 -5
  329. package/lib/components/send-method-dialog/components/send-method-pdf/style/material.scss +4 -4
  330. package/lib/components/send-method-dialog/components/send-method-printer/send-method-printer.component.d.ts +13 -13
  331. package/lib/components/send-method-dialog/components/send-method-printer/send-method-printer.module.d.ts +2 -2
  332. package/lib/components/send-method-dialog/components/send-method-printer/style/_layout.scss +30 -30
  333. package/lib/components/send-method-dialog/components/send-method-printer/style/_material-definition.scss +5 -5
  334. package/lib/components/send-method-dialog/components/send-method-printer/style/_theme.scss +5 -5
  335. package/lib/components/send-method-dialog/components/send-method-printer/style/material.scss +4 -4
  336. package/lib/components/send-method-dialog/components/signature-button/signature-button.component.d.ts +12 -12
  337. package/lib/components/send-method-dialog/components/signature-button/signature-button.module.d.ts +2 -2
  338. package/lib/components/send-method-dialog/components/signature-button/style/_layout.scss +28 -28
  339. package/lib/components/send-method-dialog/components/signature-button/style/_material-definition.scss +8 -8
  340. package/lib/components/send-method-dialog/components/signature-button/style/_theme.scss +4 -4
  341. package/lib/components/send-method-dialog/components/signature-button/style/material.scss +4 -4
  342. package/lib/components/send-method-dialog/model/email-address-viewmodel.d.ts +5 -5
  343. package/lib/components/send-method-dialog/send-method-dialog.component.d.ts +71 -71
  344. package/lib/components/send-method-dialog/send-method-dialog.module.d.ts +2 -2
  345. package/lib/components/send-method-dialog/send-method-params.interface.d.ts +13 -13
  346. package/lib/components/send-method-dialog/service/send-method.service.d.ts +23 -23
  347. package/lib/components/send-method-dialog/style/_layout.scss +165 -165
  348. package/lib/components/send-method-dialog/style/_material-definition.scss +48 -48
  349. package/lib/components/send-method-dialog/style/_theme.scss +33 -33
  350. package/lib/components/send-method-dialog/style/material.scss +10 -10
  351. package/lib/components/simple-tags/simple-tags.component.d.ts +31 -31
  352. package/lib/components/simple-tags/simple-tags.module.d.ts +2 -2
  353. package/lib/components/simple-tags/style/_layout.scss +272 -272
  354. package/lib/components/simple-tags/style/_material-definition.scss +39 -39
  355. package/lib/components/simple-tags/style/_theme.scss +4 -4
  356. package/lib/components/simple-tags/style/material.scss +4 -4
  357. package/lib/components/statusbar/statusbar-popup.component.d.ts +21 -21
  358. package/lib/components/statusbar/statusbar.component.d.ts +26 -26
  359. package/lib/components/statusbar/statusbar.module.d.ts +2 -2
  360. package/lib/components/statusbar/style/_layout.scss +70 -70
  361. package/lib/components/statusbar/style/_material-definition.scss +23 -23
  362. package/lib/components/statusbar/style/_theme.scss +13 -13
  363. package/lib/components/statusbar/style/material.scss +5 -5
  364. package/lib/components/stock/components/allocation-stock-history/allocation-stock-history.component.d.ts +9 -9
  365. package/lib/components/stock/components/order-commission-stock-history/order-commission-stock-history.component.d.ts +9 -9
  366. package/lib/components/stock/components/order-stock-history/order-stock-history.component.d.ts +9 -9
  367. package/lib/components/stock/components/order-stock-tab/order-stock-tab.component.d.ts +11 -11
  368. package/lib/components/stock/components/order-supply-stock-history/order-supply-stock-history.component.d.ts +9 -9
  369. package/lib/components/stock/components/order-tab/order-tab.component.d.ts +20 -20
  370. package/lib/components/stock/components/stock-history/stock-history.component.d.ts +13 -13
  371. package/lib/components/stock/components/stock-location/stock-location.component.d.ts +52 -50
  372. package/lib/components/stock/components/stock-prognose/stock-prognose.component.d.ts +11 -11
  373. package/lib/components/stock/components/stock-tab/stock-tab.component.d.ts +7 -9
  374. package/lib/components/stock/localization/translation.d.ts +67 -60
  375. package/lib/components/stock/stock-history-tabs/stock-history-tabs.component.d.ts +7 -7
  376. package/lib/components/stock/stock-information/stock-information.component.d.ts +9 -8
  377. package/lib/components/stock/stock-information-grid/stock-information-grid.component.d.ts +75 -75
  378. package/lib/components/stock/stock-tabs/stock-tabs.component.d.ts +56 -56
  379. package/lib/components/stock/stock-transfer/co-drop-down-list-fields.interface.d.ts +4 -4
  380. package/lib/components/stock/stock-transfer/stock-change-amount.component.d.ts +18 -18
  381. package/lib/components/stock/stock-transfer/stock-transfer.component.d.ts +38 -42
  382. package/lib/components/stock/stock.component.d.ts +64 -57
  383. package/lib/components/stock/stock.module.d.ts +2 -2
  384. package/lib/components/stock/style/_layout.scss +421 -286
  385. package/lib/components/stock/style/_material-definition.scss +25 -25
  386. package/lib/components/stock/style/_theme.scss +5 -5
  387. package/lib/components/stock/style/material.scss +4 -4
  388. package/lib/components/stock-statusbar/stock-statusbar.component.d.ts +4 -4
  389. package/lib/components/stock-statusbar/stock-statusbar.module.d.ts +2 -2
  390. package/lib/components/stock-statusbar/style/_layout.scss +24 -24
  391. package/lib/components/stock-statusbar/style/material.scss +4 -4
  392. package/lib/components/tab-bar/style/_layout.scss +78 -78
  393. package/lib/components/tab-bar/style/_material-definition.scss +6 -6
  394. package/lib/components/tab-bar/style/material.scss +4 -4
  395. package/lib/components/tab-bar/tab-bar.component.d.ts +21 -21
  396. package/lib/components/tab-bar/tab-bar.module.d.ts +2 -2
  397. package/lib/components/tab-bar/tab.interface.d.ts +5 -5
  398. package/lib/components/tags/component/style/_layout.scss +67 -67
  399. package/lib/components/tags/component/style/_material-definition.scss +1 -1
  400. package/lib/components/tags/component/style/_theme.scss +8 -8
  401. package/lib/components/tags/component/style/material.scss +3 -3
  402. package/lib/components/tags/component/tag-join-label/style/_layout.scss +97 -97
  403. package/lib/components/tags/component/tag-join-label/style/_material-definition.scss +4 -4
  404. package/lib/components/tags/component/tag-join-label/style/_theme.scss +8 -8
  405. package/lib/components/tags/component/tag-join-label/style/material.scss +3 -3
  406. package/lib/components/tile-renderer/style/_layout.scss +90 -90
  407. package/lib/components/tile-renderer/style/_theme.scss +4 -4
  408. package/lib/components/tile-renderer/style/material.scss +4 -4
  409. package/lib/components/tile-renderer/tile-render.component.d.ts +31 -31
  410. package/lib/components/tile-renderer/tile-render.module.d.ts +2 -2
  411. package/lib/decorator/input-boolean.decorator.d.ts +8 -8
  412. package/lib/enum/calendar-view.enum.d.ts +7 -7
  413. package/lib/enum/document-email-report.enum.d.ts +15 -15
  414. package/lib/enum/domain-multiple-name.enum.d.ts +10 -10
  415. package/lib/enum/file-type.d.ts +7 -7
  416. package/lib/enum/files-upload-config-objects.d.ts +22 -22
  417. package/lib/enum/gauge-color.enum.d.ts +8 -8
  418. package/lib/enum/icon.enum.d.ts +46 -42
  419. package/lib/enum/internal-param.enum.d.ts +34 -34
  420. package/lib/enum/keyboard-code.enum.d.ts +30 -30
  421. package/lib/enum/language-code.enum.d.ts +6 -6
  422. package/lib/enum/month.enum.d.ts +14 -14
  423. package/lib/enum/read-write-access-config-names.enum.d.ts +4 -4
  424. package/lib/enum/table-name.enum.d.ts +84 -84
  425. package/lib/enum/tag-category.enum.d.ts +19 -19
  426. package/lib/enum/tags-component-config-names.d.ts +4 -4
  427. package/lib/enum/thumb-three-way-state.d.ts +6 -6
  428. package/lib/enum/tile-size-type.d.ts +4 -4
  429. package/lib/enum/time-period.enum.d.ts +8 -8
  430. package/lib/event/co-drag-event.d.ts +5 -5
  431. package/lib/event/co-drop-event.d.ts +8 -8
  432. package/lib/interface/key-value-pair.d.ts +4 -4
  433. package/lib/interface/operation-callback-simple-function.d.ts +4 -4
  434. package/lib/localization/localization.module.d.ts +2 -2
  435. package/lib/localization/localize.pipe.d.ts +7 -7
  436. package/lib/localization/localize.service.d.ts +7 -7
  437. package/lib/localization/translation.d.ts +2 -2
  438. package/lib/model/agenda-event-per-day.model.d.ts +5 -5
  439. package/lib/model/agenda-event.model.d.ts +17 -17
  440. package/lib/model/agenda-null-objects.d.ts +10 -10
  441. package/lib/model/constant/all-months.d.ts +2 -2
  442. package/lib/model/date-range.d.ts +7 -7
  443. package/lib/model/day.model.d.ts +8 -8
  444. package/lib/model/icon-svg.d.ts +4 -4
  445. package/lib/model/month.model.d.ts +5 -5
  446. package/lib/model/send-method.d.ts +7 -7
  447. package/lib/model/settings.d.ts +3 -3
  448. package/lib/model/tag-tree-item.bo.d.ts +18 -18
  449. package/lib/model/time-window.bo.d.ts +13 -13
  450. package/lib/model/tree-object.d.ts +8 -8
  451. package/lib/model/week.model.d.ts +4 -4
  452. package/lib/model/weekday.model.d.ts +16 -16
  453. package/lib/pipe/array-number.pipe.d.ts +4 -4
  454. package/lib/pipe/file-type-image.pipe.d.ts +12 -12
  455. package/lib/pipe/master-pipes.d.ts +1 -1
  456. package/lib/pipe/ucfirst.pipe.d.ts +4 -4
  457. package/lib/service/dictionary.service.d.ts +21 -21
  458. package/lib/service/drag-drop.service.d.ts +86 -86
  459. package/lib/service/icon-cache.service.d.ts +18 -18
  460. package/lib/service/options.service.d.ts +13 -13
  461. package/lib/service/shared-connector.service.d.ts +55 -55
  462. package/lib/service/shared.service.d.ts +18 -18
  463. package/lib/service/stock.service.d.ts +41 -41
  464. package/lib/style/_mixin.scss +14 -14
  465. package/lib/style/_variables.scss +21 -21
  466. package/lib/style/sharedcomponents-globals.scss +10 -10
  467. package/lib/utils/array-utils.d.ts +63 -63
  468. package/lib/utils/calendar.utils.d.ts +10 -10
  469. package/lib/utils/check-precision-and-scale-result.d.ts +4 -4
  470. package/lib/utils/check-within-stepped-bounds-result.d.ts +8 -8
  471. package/lib/utils/co-document-shared-field-logic.d.ts +7 -7
  472. package/lib/utils/date-utils.d.ts +44 -44
  473. package/lib/utils/enum-utils.d.ts +31 -31
  474. package/lib/utils/function/not-nill.function.d.ts +1 -1
  475. package/lib/utils/is-nill.function.d.ts +1 -1
  476. package/lib/utils/map-utils.d.ts +16 -16
  477. package/lib/utils/number-utils.d.ts +125 -125
  478. package/lib/utils/object-utils.d.ts +40 -40
  479. package/lib/utils/ref-code-utils.d.ts +10 -10
  480. package/lib/utils/string-utils.d.ts +38 -38
  481. package/main.b63cf8c6791cb3e37f3c.js +1 -0
  482. package/package.json +1 -1
  483. package/polyfills.907fe9d1887c5de17993.js +1 -0
  484. package/public-api.d.ts +27 -27
  485. package/runtime.8aac21847ed3d3829cca.js +1 -0
  486. package/styles.6807e7b997183dacbe3b.css +1 -0
@@ -1,242 +1,242 @@
1
- import { __awaiter } from "tslib";
2
- import { Component, ElementRef, EventEmitter, HostBinding, Input, Output, ViewChild, ViewEncapsulation } from "@angular/core";
3
- import { animate, state, style, transition, trigger } from "@angular/animations";
4
- import { PDFDocument } from "pdf-lib";
5
- import * as PDFJS from "pdfjs-dist/legacy/build/pdf";
6
- import pdfjsWorker from "pdfjs-dist/build/pdf.worker.entry";
7
- export class DocsignComponent {
8
- constructor() {
9
- this.saveButtonLabel = 'SAVE';
10
- this.clearButtonLabel = 'CLEAR';
11
- this.signDocumentButtonLabel = 'SIGN_DOCUMENT';
12
- this.cancelButtonLabel = 'CANCEL';
13
- this.pdfSaved = new EventEmitter();
14
- this.cancelClick = new EventEmitter();
15
- this.showSignaturePopup = false;
16
- this.showSigBuyer = false;
17
- this.showSigSeller = false;
18
- this.showSignatures = false;
19
- }
20
- /**
21
- * Load an existing [[PDFDocument]]. The input data can be provided in
22
- * multiple formats:
23
- *
24
- * | Type | Contents |
25
- * | ------------- | ------------------------------------------------------ |
26
- * | `string` | A base64 encoded string (or data URI) containing a PDF |
27
- * | `Uint8Array` | The raw bytes of a PDF |
28
- * | `ArrayBuffer` | The raw bytes of a PDF |
29
- *
30
- * For example:
31
- * ```js
32
- * import { PDFDocument } from 'pdf-lib'
33
- *
34
- * // pdf=string
35
- * const base64 =
36
- * 'JVBERi0xLjcKJYGBgYEKCjUgMCBvYmoKPDwKL0ZpbHRlciAvRmxhdGVEZWNvZGUKL0xlbm' +
37
- * 'd0aCAxMDQKPj4Kc3RyZWFtCniccwrhMlAAwaJ0Ln2P1Jyy1JLM5ERdc0MjCwUjE4WQNC4Q' +
38
- * '6cNlCFZkqGCqYGSqEJLLZWNuYGZiZmbkYuZsZmlmZGRgZmluDCQNzc3NTM2NzdzMXMxMjQ' +
39
- * 'ztFEKyuEK0uFxDuAAOERdVCmVuZHN0cmVhbQplbmRvYmoKCjYgMCBvYmoKPDwKL0ZpbHRl' +
40
- * 'ciAvRmxhdGVEZWNvZGUKL1R5cGUgL09ialN0bQovTiA0Ci9GaXJzdCAyMAovTGVuZ3RoID' +
41
- * 'IxNQo+PgpzdHJlYW0KeJxVj9GqwjAMhu/zFHkBzTo3nCCCiiKIHPEICuJF3cKoSCu2E8/b' +
42
- * '20wPIr1p8v9/8kVhgilmGfawX2CGaVrgcAi0/bsy0lrX7IGWpvJ4iJYEN3gEmrrGBlQwGs' +
43
- * 'HHO9VBX1wNrxAqMX87RBD5xpJuddqwd82tjAHxzV1U5LPgy52DKXWnr1Lheg+j/c/pzGVr' +
44
- * 'iqV0VlwZPXGPCJjElw/ybkwUmeoWgxesDXGhHJC/D/iikp1Av80ptKU0FdBEe25pPihAM1' +
45
- * 'u6ytgaaWfs2Hrz35CJT1+EWmAKZW5kc3RyZWFtCmVuZG9iagoKNyAwIG9iago8PAovU2l6' +
46
- * 'ZSA4Ci9Sb290IDIgMCBSCi9GaWx0ZXIgL0ZsYXRlRGVjb2RlCi9UeXBlIC9YUmVmCi9MZW' +
47
- * '5ndGggMzgKL1cgWyAxIDIgMiBdCi9JbmRleCBbIDAgOCBdCj4+CnN0cmVhbQp4nBXEwREA' +
48
- * 'EBAEsCwz3vrvRmOOyyOoGhZdutHN2MT55fIAVocD+AplbmRzdHJlYW0KZW5kb2JqCgpzdG' +
49
- * 'FydHhyZWYKNTEwCiUlRU9G'
50
- *
51
- * const dataUri = 'data:application/pdf;base64,' + base64
52
- *
53
- * const pdfDoc1 = await PDFDocument.load(base64)
54
- * const pdfDoc2 = await PDFDocument.load(dataUri)
55
- *
56
- * // pdf=Uint8Array
57
- * import fs from 'fs'
58
- * const uint8Array = fs.readFileSync('with_update_sections.pdf')
59
- * const pdfDoc3 = await PDFDocument.load(uint8Array)
60
- *
61
- * // pdf=ArrayBuffer
62
- * const url = 'https://pdf-lib.js.org/assets/with_update_sections.pdf'
63
- * const arrayBuffer = await fetch(url).then(res => res.arrayBuffer())
64
- * const pdfDoc4 = await PDFDocument.load(arrayBuffer)
65
- *
66
- * ```
67
- *
68
- * @param pdf The input data containing a PDF document.
69
- * @param options The options to be used when loading the document.
70
- * @returns Resolves with a document loaded from the input.
71
- */
72
- set pdf(value) {
73
- if (value) {
74
- this._handlePdfData(value);
75
- this._openPDF();
76
- }
77
- }
78
- get pdf() {
79
- return this._pdf;
80
- }
81
- showClass() {
82
- return true;
83
- }
84
- saveFirstSignature(sig) {
85
- this._saveSignature(sig, this.sigBuyerPosition);
86
- this.showSigBuyer = false;
87
- this._savePdf();
88
- }
89
- saveSecondSignature(sig) {
90
- this._saveSignature(sig, this.sigSellerPosition);
91
- this.showSigSeller = false;
92
- this._savePdf();
93
- }
94
- _openPDF() {
95
- return __awaiter(this, void 0, void 0, function* () {
96
- // first create reader to check signatures
97
- this._checkSignatures();
98
- this.pdfDoc = yield PDFDocument.load(this._pdf, {
99
- updateMetadata: false
100
- });
101
- const pdfDataUri = yield this.pdfDoc.saveAsBase64({ dataUri: true });
102
- this.iframe.nativeElement.src = pdfDataUri;
103
- });
104
- }
105
- _savePdf() {
106
- return __awaiter(this, void 0, void 0, function* () {
107
- if (!this.showSigBuyer && !this.showSigSeller) {
108
- // ready, save the pdf and emit result
109
- const result = yield this.pdfDoc.saveAsBase64();
110
- this.pdfSaved.next(result);
111
- }
112
- });
113
- }
114
- _checkSignatures() {
115
- return __awaiter(this, void 0, void 0, function* () {
116
- let pdfWorkerSrc;
117
- if (window.hasOwnProperty('pdfWorkerSrc') &&
118
- typeof window.pdfWorkerSrc === 'string' &&
119
- window.pdfWorkerSrc) {
120
- pdfWorkerSrc = window.pdfWorkerSrc;
121
- }
122
- else {
123
- pdfWorkerSrc = pdfjsWorker;
124
- }
125
- PDFJS.GlobalWorkerOptions.workerSrc = pdfWorkerSrc;
126
- const pdfReader = yield PDFJS.getDocument(this._pdf).promise;
127
- const numPages = pdfReader.numPages;
128
- for (let i = 0; i < numPages; i++) {
129
- const page = yield pdfReader.getPage(i + 1);
130
- const text = yield page.getTextContent();
131
- page.cleanup();
132
- if (this.firstSignatureField) {
133
- this.sigBuyerPosition = this._getPositionSignature(text, this.firstSignatureField);
134
- if (this.sigBuyerPosition.width > 0 && this.sigBuyerPosition.height > 0) {
135
- this.sigBuyerPosition.page = i;
136
- this.showSigBuyer = true;
137
- }
138
- }
139
- if (this.secondSignatureField) {
140
- this.sigSellerPosition = this._getPositionSignature(text, this.secondSignatureField);
141
- if (this.sigSellerPosition.width > 0 && this.sigSellerPosition.height > 0) {
142
- this.sigSellerPosition.page = i;
143
- this.showSigSeller = true;
144
- }
145
- }
146
- }
147
- });
148
- }
149
- _getPositionSignature(textItem, signatureField) {
150
- const sigItem = textItem.items.find((i) => i.str.toLowerCase() === signatureField.toLowerCase());
151
- if (sigItem) {
152
- textItem.items.slice(textItem.items.indexOf(sigItem), 1);
153
- return {
154
- x: sigItem.transform[4],
155
- y: sigItem.transform[5],
156
- width: sigItem.width,
157
- height: sigItem.height,
158
- page: 0
159
- };
160
- }
161
- return { x: 0, y: 0, width: 0, height: 0, page: 0 };
162
- }
163
- _saveSignature(sig, dimensions) {
164
- return __awaiter(this, void 0, void 0, function* () {
165
- const jpgImage = yield this.pdfDoc.embedPng(sig);
166
- const page = yield this.pdfDoc.getPage(dimensions.page);
167
- page.drawImage(jpgImage, {
168
- x: ((dimensions.x + (dimensions.width / 2)) - (200 / 2)),
169
- y: ((dimensions.y + (dimensions.height / 2)) - (100 / 2)),
170
- width: 200,
171
- height: 100
172
- });
173
- });
174
- }
175
- _handlePdfData(pdfData) {
176
- if (typeof pdfData === 'string') {
177
- this._preparePDF(pdfData);
178
- }
179
- else {
180
- this._pdf = pdfData;
181
- }
182
- }
183
- _preparePDF(base64) {
184
- var binary_string = window.atob(base64);
185
- var len = binary_string.length;
186
- var bytes = new Uint8Array(len);
187
- for (var i = 0; i < len; i++) {
188
- bytes[i] = binary_string.charCodeAt(i);
189
- }
190
- this._pdf = bytes;
191
- }
192
- }
193
- DocsignComponent.decorators = [
194
- { type: Component, args: [{
195
- selector: "co-docsign",
196
- template: `
197
- <iframe #iframe></iframe>
198
- <co-signatures *ngIf="showSignatures" @showHideSignature
199
- [showFirstSignature]="showSigBuyer"
200
- [firstSignatureTitle]="firstSignatureLabel"
201
- [showSecondSignature]="showSigSeller"
202
- [secondSignatureTitle]="secondSignatureLabel"
203
- [saveButtonLabel]="saveButtonLabel"
204
- [clearButtonLabel]="clearButtonLabel"
205
- (saveFirstSignature)="saveFirstSignature($event)"
206
- (saveSecondSignature)="saveSecondSignature($event)"
207
- ></co-signatures>
208
- <input type="button" *ngIf="(showSigBuyer || showSigSeller) && !showSignatures" class="button button-sign-document"
209
- [value]="signDocumentButtonLabel"
210
- (click)="showSignatures = true"
211
- />
212
- <input type="button" class="button button-cancel"
213
- [value]="cancelButtonLabel"
214
- (click)="cancelClick.emit($event)"
215
- />
216
- `,
217
- animations: [
218
- trigger("showHideSignature", [
219
- state("void", style({ transform: "translate(-50%, -50%) scale(0)" })),
220
- state("*", style({ transform: "translate(-50%, -50%) scale(1)" })),
221
- transition("void <=> *", animate("200ms ease-in-out")),
222
- ])
223
- ],
224
- encapsulation: ViewEncapsulation.None
225
- },] }
226
- ];
227
- DocsignComponent.propDecorators = {
228
- iframe: [{ type: ViewChild, args: ["iframe", { read: ElementRef },] }],
229
- pdf: [{ type: Input }],
230
- firstSignatureLabel: [{ type: Input }],
231
- firstSignatureField: [{ type: Input }],
232
- secondSignatureLabel: [{ type: Input }],
233
- secondSignatureField: [{ type: Input }],
234
- saveButtonLabel: [{ type: Input }],
235
- clearButtonLabel: [{ type: Input }],
236
- signDocumentButtonLabel: [{ type: Input }],
237
- cancelButtonLabel: [{ type: Input }],
238
- pdfSaved: [{ type: Output }],
239
- cancelClick: [{ type: Output }],
240
- showClass: [{ type: HostBinding, args: ['class.co-docsign',] }]
241
- };
242
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9jc2lnbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zaGFyZWRjb21wb25lbnRzL3NyYy9saWIvY29tcG9uZW50cy9kb2NzaWduL2RvY3NpZ24uY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLFVBQVUsRUFBRSxZQUFZLEVBQUUsV0FBVyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFFLGlCQUFpQixFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQzVILE9BQU8sRUFBQyxPQUFPLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxVQUFVLEVBQUUsT0FBTyxFQUFDLE1BQU0scUJBQXFCLENBQUM7QUFDL0UsT0FBTyxFQUFDLFdBQVcsRUFBQyxNQUFNLFNBQVMsQ0FBQztBQUNwQyxPQUFPLEtBQUssS0FBSyxNQUFNLDZCQUE2QixDQUFDO0FBQ3JELE9BQU8sV0FBVyxNQUFNLG1DQUFtQyxDQUFDO0FBMkM1RCxNQUFNLE9BQU8sZ0JBQWdCO0lBaEM3QjtRQWlIUyxvQkFBZSxHQUFXLE1BQU0sQ0FBQztRQUdqQyxxQkFBZ0IsR0FBVyxPQUFPLENBQUM7UUFHbkMsNEJBQXVCLEdBQVcsZUFBZSxDQUFDO1FBR2xELHNCQUFpQixHQUFXLFFBQVEsQ0FBQztRQUdyQyxhQUFRLEdBQXlCLElBQUksWUFBWSxFQUFVLENBQUM7UUFHNUQsZ0JBQVcsR0FBNkIsSUFBSSxZQUFZLEVBQWMsQ0FBQztRQU92RSx1QkFBa0IsR0FBWSxLQUFLLENBQUM7UUFDcEMsaUJBQVksR0FBWSxLQUFLLENBQUM7UUFFOUIsa0JBQWEsR0FBWSxLQUFLLENBQUM7UUFFL0IsbUJBQWMsR0FBWSxLQUFLLENBQUM7SUFrSHpDLENBQUM7SUExTkM7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztPQW1ERztJQUNI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Q0FZTCxLQUFLO2tDQUdMLEtBQUs7bUNBR0wsS0FBSzttQ0FHTCxLQUFLOzhCQUdMLEtBQUs7K0JBR0wsS0FBSztzQ0FHTCxLQUFLO2dDQUdMLEtBQUs7dUJBR0wsTUFBTTswQkFHTixNQUFNO3dCQUdOLFdBQVcsU0FBQyxrQkFBa0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbXBvbmVudCwgRWxlbWVudFJlZiwgRXZlbnRFbWl0dGVyLCBIb3N0QmluZGluZywgSW5wdXQsIE91dHB1dCwgVmlld0NoaWxkLCBWaWV3RW5jYXBzdWxhdGlvbn0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7YW5pbWF0ZSwgc3RhdGUsIHN0eWxlLCB0cmFuc2l0aW9uLCB0cmlnZ2VyfSBmcm9tIFwiQGFuZ3VsYXIvYW5pbWF0aW9uc1wiO1xuaW1wb3J0IHtQREZEb2N1bWVudH0gZnJvbSBcInBkZi1saWJcIjtcbmltcG9ydCAqIGFzIFBERkpTIGZyb20gXCJwZGZqcy1kaXN0L2xlZ2FjeS9idWlsZC9wZGZcIjtcbmltcG9ydCBwZGZqc1dvcmtlciBmcm9tIFwicGRmanMtZGlzdC9idWlsZC9wZGYud29ya2VyLmVudHJ5XCI7XG5pbXBvcnQge1RleHRJdGVtfSBmcm9tIFwicGRmanMtZGlzdC90eXBlcy9zcmMvZGlzcGxheS9hcGlcIjtcblxuZXhwb3J0IGludGVyZmFjZSBUZXh0RGltZW5zaW9uIHtcbiAgeDogbnVtYmVyLFxuICB5OiBudW1iZXIsXG4gIHdpZHRoOiBudW1iZXIsXG4gIGhlaWdodDogbnVtYmVyLFxuICBwYWdlOiBudW1iZXJcbn1cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiBcImNvLWRvY3NpZ25cIixcbiAgdGVtcGxhdGU6IGBcbiAgICA8aWZyYW1lICNpZnJhbWU+PC9pZnJhbWU+XG4gICAgPGNvLXNpZ25hdHVyZXMgKm5nSWY9XCJzaG93U2lnbmF0dXJlc1wiIEBzaG93SGlkZVNpZ25hdHVyZVxuICAgICAgICAgICAgICAgICAgICAgW3Nob3dGaXJzdFNpZ25hdHVyZV09XCJzaG93U2lnQnV5ZXJcIlxuICAgICAgICAgICAgICAgICAgICAgW2ZpcnN0U2lnbmF0dXJlVGl0bGVdPVwiZmlyc3RTaWduYXR1cmVMYWJlbFwiXG4gICAgICAgICAgICAgICAgICAgICBbc2hvd1NlY29uZFNpZ25hdHVyZV09XCJzaG93U2lnU2VsbGVyXCJcbiAgICAgICAgICAgICAgICAgICAgIFtzZWNvbmRTaWduYXR1cmVUaXRsZV09XCJzZWNvbmRTaWduYXR1cmVMYWJlbFwiXG4gICAgICAgICAgICAgICAgICAgICBbc2F2ZUJ1dHRvbkxhYmVsXT1cInNhdmVCdXR0b25MYWJlbFwiXG4gICAgICAgICAgICAgICAgICAgICBbY2xlYXJCdXR0b25MYWJlbF09XCJjbGVhckJ1dHRvbkxhYmVsXCJcbiAgICAgICAgICAgICAgICAgICAgIChzYXZlRmlyc3RTaWduYXR1cmUpPVwic2F2ZUZpcnN0U2lnbmF0dXJlKCRldmVudClcIlxuICAgICAgICAgICAgICAgICAgICAgKHNhdmVTZWNvbmRTaWduYXR1cmUpPVwic2F2ZVNlY29uZFNpZ25hdHVyZSgkZXZlbnQpXCJcbiAgICA+PC9jby1zaWduYXR1cmVzPlxuICAgIDxpbnB1dCB0eXBlPVwiYnV0dG9uXCIgKm5nSWY9XCIoc2hvd1NpZ0J1eWVyIHx8IHNob3dTaWdTZWxsZXIpICYmICFzaG93U2lnbmF0dXJlc1wiIGNsYXNzPVwiYnV0dG9uIGJ1dHRvbi1zaWduLWRvY3VtZW50XCJcbiAgICAgICAgICAgW3ZhbHVlXT1cInNpZ25Eb2N1bWVudEJ1dHRvbkxhYmVsXCJcbiAgICAgICAgICAgKGNsaWNrKT1cInNob3dTaWduYXR1cmVzID0gdHJ1ZVwiXG4gICAgLz5cbiAgICA8aW5wdXQgdHlwZT1cImJ1dHRvblwiIGNsYXNzPVwiYnV0dG9uIGJ1dHRvbi1jYW5jZWxcIlxuICAgICAgICAgICBbdmFsdWVdPVwiY2FuY2VsQnV0dG9uTGFiZWxcIlxuICAgICAgICAgICAoY2xpY2spPVwiY2FuY2VsQ2xpY2suZW1pdCgkZXZlbnQpXCJcbiAgICAvPlxuICBgLFxuICBhbmltYXRpb25zOiBbXG4gICAgdHJpZ2dlcihcInNob3dIaWRlU2lnbmF0dXJlXCIsIFtcbiAgICAgIHN0YXRlKFwidm9pZFwiLCBzdHlsZSh7dHJhbnNmb3JtOiBcInRyYW5zbGF0ZSgtNTAlLCAtNTAlKSBzY2FsZSgwKVwifSkpLFxuICAgICAgc3RhdGUoXCIqXCIsIHN0eWxlKHt0cmFuc2Zvcm06IFwidHJhbnNsYXRlKC01MCUsIC01MCUpIHNjYWxlKDEpXCJ9KSksXG4gICAgICB0cmFuc2l0aW9uKFwidm9pZCA8PT4gKlwiLCBhbmltYXRlKFwiMjAwbXMgZWFzZS1pbi1vdXRcIikpLFxuICAgIF0pXG4gIF0sXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmVcbn0pXG5leHBvcnQgY2xhc3MgRG9jc2lnbkNvbXBvbmVudCB7XG4gIEBWaWV3Q2hpbGQoXCJpZnJhbWVcIiwgeyByZWFkOiBFbGVtZW50UmVmIH0pXG4gIHB1YmxpYyBpZnJhbWU6IEVsZW1lbnRSZWY7XG5cbiAgLyoqXG4gICAqIExvYWQgYW4gZXhpc3RpbmcgW1tQREZEb2N1bWVudF1dLiBUaGUgaW5wdXQgZGF0YSBjYW4gYmUgcHJvdmlkZWQgaW5cbiAgICogbXVsdGlwbGUgZm9ybWF0czpcbiAgICpcbiAgICogfCBUeXBlICAgICAgICAgIHwgQ29udGVudHMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHxcbiAgICogfCAtLS0tLS0tLS0tLS0tIHwgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIHxcbiAgICogfCBgc3RyaW5nYCAgICAgIHwgQSBiYXNlNjQgZW5jb2RlZCBzdHJpbmcgKG9yIGRhdGEgVVJJKSBjb250YWluaW5nIGEgUERGIHxcbiAgICogfCBgVWludDhBcnJheWAgIHwgVGhlIHJhdyBieXRlcyBvZiBhIFBERiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHxcbiAgICogfCBgQXJyYXlCdWZmZXJgIHwgVGhlIHJhdyBieXRlcyBvZiBhIFBERiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHxcbiAgICpcbiAgICogRm9yIGV4YW1wbGU6XG4gICAqIGBgYGpzXG4gICAqIGltcG9ydCB7IFBERkRvY3VtZW50IH0gZnJvbSAncGRmLWxpYidcbiAgICpcbiAgICogLy8gcGRmPXN0cmluZ1xuICAgKiBjb25zdCBiYXNlNjQgPVxuICAgKiAgJ0pWQkVSaTB4TGpjS0pZR0JnWUVLQ2pVZ01DQnZZbW9LUER3S0wwWnBiSFJsY2lBdlJteGhkR1ZFWldOdlpHVUtMMHhsYm0nICtcbiAgICogICdkMGFDQXhNRFFLUGo0S2MzUnlaV0Z0Q25pY2N3cmhNbEFBd2FKMExuMlAxSnl5MUpMTTVFUmRjME1qQ3dVakU0V1FOQzRRJyArXG4gICAqICAnNmNObENGWmtxR0NxWUdTcUVKTExaV051WUdaaVptYmtZdVpzWm1sbVpHUmdabWx1RENRTnpjM05UTTJOemR6TVhNeE1qUScgK1xuICAgKiAgJ3p0RkVLeXVFSzB1RnhEdUFBT0VSZFZDbVZ1WkhOMGNtVmhiUXBsYm1Sdlltb0tDallnTUNCdlltb0tQRHdLTDBacGJIUmwnICtcbiAgICogICdjaUF2Um14aGRHVkVaV052WkdVS0wxUjVjR1VnTDA5aWFsTjBiUW92VGlBMENpOUdhWEp6ZENBeU1Bb3ZUR1Z1WjNSb0lEJyArXG4gICAqICAnSXhOUW8rUGdwemRISmxZVzBLZUp4Vmo5R3F3akFNaHUvekZIa0J6VG8zbkNDQ2lpS0lIUEVJQ3VKRjNjS29TQ3UyRTgvYicgK1xuICAgKiAgJzIwd1BJcjFwOHY5LzhrVmhnaWxtR2Zhd1gyQ0dhVnJnY0FpMC9ic3kwbHJYN0lHV3B2SjRpSllFTjNnRW1yckdCbFF3R3MnICtcbiAgICogICdISE85VkJYMXdOcnhBcU1YODdSQkQ1eHBKdWRkcXdkODJ0akFIeHpWMVU1TFBneTUyREtYV25yMUxoZWcrai9jL3B6R1ZyJyArXG4gICAqICAnaXFWMFZsd1pQWEdQQ0pqRWx3L3lia3dVbWVvV2d4ZXNEWEdoSEpDL0QvaWlrcDFBdjgwcHRLVTBGZEJFZTI1cFBpaEFNMScgK1xuICAgKiAgJ3U2eXRnYWFXZnMySHJ6MzVDSlQxK0VXbUFLWlc1a2MzUnlaV0Z0Q21WdVpHOWlhZ29LTnlBd0lHOWlhZ284UEFvdlUybDYnICtcbiAgICogICdaU0E0Q2k5U2IyOTBJRElnTUNCU0NpOUdhV3gwWlhJZ0wwWnNZWFJsUkdWamIyUmxDaTlVZVhCbElDOVlVbVZtQ2k5TVpXJyArXG4gICAqICAnNW5kR2dnTXpnS0wxY2dXeUF4SURJZ01pQmRDaTlKYm1SbGVDQmJJREFnT0NCZENqNCtDbk4wY21WaGJRcDRuQlhFd1JFQScgK1xuICAgKiAgJ0VCQUVzQ3d6M3ZydlJtT095eU9vR2haZHV0SE4yTVQ1NWZJQVZvY0QrQXBsYm1SemRISmxZVzBLWlc1a2IySnFDZ3B6ZEcnICtcbiAgICogICdGeWRIaHlaV1lLTlRFd0NpVWxSVTlHJ1xuICAgKlxuICAgKiBjb25zdCBkYXRhVXJpID0gJ2RhdGE6YXBwbGljYXRpb24vcGRmO2Jhc2U2NCwnICsgYmFzZTY0XG4gICAqXG4gICAqIGNvbnN0IHBkZkRvYzEgPSBhd2FpdCBQREZEb2N1bWVudC5sb2FkKGJhc2U2NClcbiAgICogY29uc3QgcGRmRG9jMiA9IGF3YWl0IFBERkRvY3VtZW50LmxvYWQoZGF0YVVyaSlcbiAgICpcbiAgICogLy8gcGRmPVVpbnQ4QXJyYXlcbiAgICogaW1wb3J0IGZzIGZyb20gJ2ZzJ1xuICAgKiBjb25zdCB1aW50OEFycmF5ID0gZnMucmVhZEZpbGVTeW5jKCd3aXRoX3VwZGF0ZV9zZWN0aW9ucy5wZGYnKVxuICAgKiBjb25zdCBwZGZEb2MzID0gYXdhaXQgUERGRG9jdW1lbnQubG9hZCh1aW50OEFycmF5KVxuICAgKlxuICAgKiAvLyBwZGY9QXJyYXlCdWZmZXJcbiAgICogY29uc3QgdXJsID0gJ2h0dHBzOi8vcGRmLWxpYi5qcy5vcmcvYXNzZXRzL3dpdGhfdXBkYXRlX3NlY3Rpb25zLnBkZidcbiAgICogY29uc3QgYXJyYXlCdWZmZXIgPSBhd2FpdCBmZXRjaCh1cmwpLnRoZW4ocmVzID0+IHJlcy5hcnJheUJ1ZmZlcigpKVxuICAgKiBjb25zdCBwZGZEb2M0ID0gYXdhaXQgUERGRG9jdW1lbnQubG9hZChhcnJheUJ1ZmZlcilcbiAgICpcbiAgICogYGBgXG4gICAqXG4gICAqIEBwYXJhbSBwZGYgVGhlIGlucHV0IGRhdGEgY29udGFpbmluZyBhIFBERiBkb2N1bWVudC5cbiAgICogQHBhcmFtIG9wdGlvbnMgVGhlIG9wdGlvbnMgdG8gYmUgdXNlZCB3aGVuIGxvYWRpbmcgdGhlIGRvY3VtZW50LlxuICAgKiBAcmV0dXJucyBSZXNvbHZlcyB3aXRoIGEgZG9jdW1lbnQgbG9hZGVkIGZyb20gdGhlIGlucHV0LlxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIHNldCBwZGYodmFsdWU6IGFueSkge1xuICAgIGlmICh2YWx1ZSkge1xuICAgICAgdGhpcy5faGFuZGxlUGRmRGF0YSh2YWx1ZSk7XG4gICAgICB0aGlzLl9vcGVuUERGKCk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGdldCBwZGYoKTogYW55IHtcbiAgICByZXR1cm4gdGhpcy5fcGRmO1xuICB9XG5cbiAgQElucHV0KClcbiAgcHVibGljIGZpcnN0U2lnbmF0dXJlTGFiZWw6IHN0cmluZztcblxuICBASW5wdXQoKVxuICBwdWJsaWMgZmlyc3RTaWduYXR1cmVGaWVsZDogc3RyaW5nO1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZWNvbmRTaWduYXR1cmVMYWJlbDogc3RyaW5nO1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZWNvbmRTaWduYXR1cmVGaWVsZDogc3RyaW5nO1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzYXZlQnV0dG9uTGFiZWw6IHN0cmluZyA9ICdTQVZFJztcblxuICBASW5wdXQoKVxuICBwdWJsaWMgY2xlYXJCdXR0b25MYWJlbDogc3RyaW5nID0gJ0NMRUFSJztcblxuICBASW5wdXQoKVxuICBwdWJsaWMgc2lnbkRvY3VtZW50QnV0dG9uTGFiZWw6IHN0cmluZyA9ICdTSUdOX0RPQ1VNRU5UJztcblxuICBASW5wdXQoKVxuICBwdWJsaWMgY2FuY2VsQnV0dG9uTGFiZWw6IHN0cmluZyA9ICdDQU5DRUwnO1xuXG4gIEBPdXRwdXQoKVxuICBwdWJsaWMgcGRmU2F2ZWQ6IEV2ZW50RW1pdHRlcjxzdHJpbmc+ID0gbmV3IEV2ZW50RW1pdHRlcjxzdHJpbmc+KCk7XG5cbiAgQE91dHB1dCgpXG4gIHB1YmxpYyBjYW5jZWxDbGljazogRXZlbnRFbWl0dGVyPE1vdXNlRXZlbnQ+ID0gbmV3IEV2ZW50RW1pdHRlcjxNb3VzZUV2ZW50PigpO1xuXG4gIEBIb3N0QmluZGluZygnY2xhc3MuY28tZG9jc2lnbicpXG4gIHB1YmxpYyBzaG93Q2xhc3MoKSB7XG4gICAgcmV0dXJuIHRydWU7XG4gIH1cblxuICBwdWJsaWMgc2hvd1NpZ25hdHVyZVBvcHVwOiBib29sZWFuID0gZmFsc2U7XG4gIHB1YmxpYyBzaG93U2lnQnV5ZXI6IGJvb2xlYW4gPSBmYWxzZTtcbiAgcHVibGljIHNpZ0J1eWVyUG9zaXRpb246IFRleHREaW1lbnNpb247XG4gIHB1YmxpYyBzaG93U2lnU2VsbGVyOiBib29sZWFuID0gZmFsc2U7XG4gIHB1YmxpYyBzaWdTZWxsZXJQb3NpdGlvbjogVGV4dERpbWVuc2lvbjtcbiAgcHVibGljIHNob3dTaWduYXR1cmVzOiBib29sZWFuID0gZmFsc2U7XG5cbiAgcHVibGljIHBkZkRvYzogUERGRG9jdW1lbnQ7XG5cbiAgcHJpdmF0ZSBfcGRmOiBhbnk7XG5cbiAgcHVibGljIHNhdmVGaXJzdFNpZ25hdHVyZShzaWc6IHN0cmluZyk6IHZvaWQge1xuICAgIHRoaXMuX3NhdmVTaWduYXR1cmUoc2lnLCB0aGlzLnNpZ0J1eWVyUG9zaXRpb24pO1xuICAgIHRoaXMuc2hvd1NpZ0J1eWVyID0gZmFsc2U7XG4gICAgdGhpcy5fc2F2ZVBkZigpO1xuICB9XG5cbiAgcHVibGljIHNhdmVTZWNvbmRTaWduYXR1cmUoc2lnOiBzdHJpbmcpOiB2b2lkIHtcbiAgICB0aGlzLl9zYXZlU2lnbmF0dXJlKHNpZywgdGhpcy5zaWdTZWxsZXJQb3NpdGlvbik7XG4gICAgdGhpcy5zaG93U2lnU2VsbGVyID0gZmFsc2U7XG4gICAgdGhpcy5fc2F2ZVBkZigpO1xuICB9XG5cbiAgcHJpdmF0ZSBhc3luYyBfb3BlblBERigpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICAvLyBmaXJzdCBjcmVhdGUgcmVhZGVyIHRvIGNoZWNrIHNpZ25hdHVyZXNcbiAgICB0aGlzLl9jaGVja1NpZ25hdHVyZXMoKTtcblxuICAgIHRoaXMucGRmRG9jID0gYXdhaXQgUERGRG9jdW1lbnQubG9hZCh0aGlzLl9wZGYsIHtcbiAgICAgIHVwZGF0ZU1ldGFkYXRhOiBmYWxzZVxuICAgIH0pO1xuICAgIGNvbnN0IHBkZkRhdGFVcmkgPSBhd2FpdCB0aGlzLnBkZkRvYy5zYXZlQXNCYXNlNjQoeyBkYXRhVXJpOiB0cnVlIH0pO1xuICAgIHRoaXMuaWZyYW1lLm5hdGl2ZUVsZW1lbnQuc3JjID0gcGRmRGF0YVVyaTtcbiAgfVxuXG4gIHByaXZhdGUgYXN5bmMgX3NhdmVQZGYoKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgaWYgKCF0aGlzLnNob3dTaWdCdXllciAmJiAhdGhpcy5zaG93U2lnU2VsbGVyKSB7XG4gICAgICAvLyByZWFkeSwgc2F2ZSB0aGUgcGRmIGFuZCBlbWl0IHJlc3VsdFxuICAgICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgdGhpcy5wZGZEb2Muc2F2ZUFzQmFzZTY0KCk7XG4gICAgICB0aGlzLnBkZlNhdmVkLm5leHQocmVzdWx0KTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGFzeW5jIF9jaGVja1NpZ25hdHVyZXMoKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgbGV0IHBkZldvcmtlclNyYztcbiAgICBpZiAod2luZG93Lmhhc093blByb3BlcnR5KCdwZGZXb3JrZXJTcmMnKSAmJlxuICAgICAgdHlwZW9mICh3aW5kb3cgYXMgYW55KS5wZGZXb3JrZXJTcmMgPT09ICdzdHJpbmcnICYmXG4gICAgICAod2luZG93IGFzIGFueSkucGRmV29ya2VyU3JjKSB7XG4gICAgICBwZGZXb3JrZXJTcmMgPSAod2luZG93IGFzIGFueSkucGRmV29ya2VyU3JjO1xuICAgIH1cbiAgICBlbHNlIHtcbiAgICAgIHBkZldvcmtlclNyYyA9IHBkZmpzV29ya2VyO1xuICAgIH1cbiAgICBQREZKUy5HbG9iYWxXb3JrZXJPcHRpb25zLndvcmtlclNyYyA9IHBkZldvcmtlclNyYztcbiAgICBjb25zdCBwZGZSZWFkZXIgPSBhd2FpdCBQREZKUy5nZXREb2N1bWVudCh0aGlzLl9wZGYpLnByb21pc2U7XG4gICAgY29uc3QgbnVtUGFnZXMgPSBwZGZSZWFkZXIubnVtUGFnZXM7XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBudW1QYWdlczsgaSsrKSB7XG4gICAgICBjb25zdCBwYWdlID0gYXdhaXQgcGRmUmVhZGVyLmdldFBhZ2UoaSArIDEpO1xuICAgICAgY29uc3QgdGV4dCA9IGF3YWl0IHBhZ2UuZ2V0VGV4dENvbnRlbnQoKTtcbiAgICAgIHBhZ2UuY2xlYW51cCgpO1xuICAgICAgaWYgKHRoaXMuZmlyc3RTaWduYXR1cmVGaWVsZCkge1xuICAgICAgICB0aGlzLnNpZ0J1eWVyUG9zaXRpb24gPSB0aGlzLl9nZXRQb3NpdGlvblNpZ25hdHVyZSh0ZXh0LCB0aGlzLmZpcnN0U2lnbmF0dXJlRmllbGQpO1xuICAgICAgICBpZiAodGhpcy5zaWdCdXllclBvc2l0aW9uLndpZHRoID4gMCAmJiB0aGlzLnNpZ0J1eWVyUG9zaXRpb24uaGVpZ2h0ID4gMCkge1xuICAgICAgICAgIHRoaXMuc2lnQnV5ZXJQb3NpdGlvbi5wYWdlID0gaTtcbiAgICAgICAgICB0aGlzLnNob3dTaWdCdXllciA9IHRydWU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIGlmICh0aGlzLnNlY29uZFNpZ25hdHVyZUZpZWxkKSB7XG4gICAgICAgIHRoaXMuc2lnU2VsbGVyUG9zaXRpb24gPSB0aGlzLl9nZXRQb3NpdGlvblNpZ25hdHVyZSh0ZXh0LCB0aGlzLnNlY29uZFNpZ25hdHVyZUZpZWxkKTtcbiAgICAgICAgaWYgKHRoaXMuc2lnU2VsbGVyUG9zaXRpb24ud2lkdGggPiAwICYmIHRoaXMuc2lnU2VsbGVyUG9zaXRpb24uaGVpZ2h0ID4gMCkge1xuICAgICAgICAgIHRoaXMuc2lnU2VsbGVyUG9zaXRpb24ucGFnZSA9IGk7XG4gICAgICAgICAgdGhpcy5zaG93U2lnU2VsbGVyID0gdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgX2dldFBvc2l0aW9uU2lnbmF0dXJlKHRleHRJdGVtOiBhbnksIHNpZ25hdHVyZUZpZWxkOiBzdHJpbmcpOiBUZXh0RGltZW5zaW9uIHtcbiAgICBjb25zdCBzaWdJdGVtOiBUZXh0SXRlbSA9IDxUZXh0SXRlbT50ZXh0SXRlbS5pdGVtcy5maW5kKChpOiBhbnkpID0+IGkuc3RyLnRvTG93ZXJDYXNlKCkgPT09IHNpZ25hdHVyZUZpZWxkLnRvTG93ZXJDYXNlKCkpO1xuICAgIGlmIChzaWdJdGVtKSB7XG4gICAgICB0ZXh0SXRlbS5pdGVtcy5zbGljZSh0ZXh0SXRlbS5pdGVtcy5pbmRleE9mKHNpZ0l0ZW0pLCAxKTtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIHg6IHNpZ0l0ZW0udHJhbnNmb3JtWzRdLFxuICAgICAgICB5OiBzaWdJdGVtLnRyYW5zZm9ybVs1XSxcbiAgICAgICAgd2lkdGg6IHNpZ0l0ZW0ud2lkdGgsXG4gICAgICAgIGhlaWdodDogc2lnSXRlbS5oZWlnaHQsXG4gICAgICAgIHBhZ2U6IDBcbiAgICAgIH07XG4gICAgfVxuICAgIHJldHVybiB7eDogMCwgeTogMCwgd2lkdGg6IDAsIGhlaWdodDogMCwgcGFnZTogMH1cbiAgfVxuXG4gIHByaXZhdGUgYXN5bmMgX3NhdmVTaWduYXR1cmUoc2lnOiBzdHJpbmcsIGRpbWVuc2lvbnM6IFRleHREaW1lbnNpb24pOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBjb25zdCBqcGdJbWFnZSA9IGF3YWl0IHRoaXMucGRmRG9jLmVtYmVkUG5nKHNpZyk7XG4gICAgY29uc3QgcGFnZSA9IGF3YWl0IHRoaXMucGRmRG9jLmdldFBhZ2UoZGltZW5zaW9ucy5wYWdlKTtcbiAgICBwYWdlLmRyYXdJbWFnZShqcGdJbWFnZSwge1xuICAgICAgeDogKChkaW1lbnNpb25zLnggKyAoZGltZW5zaW9ucy53aWR0aCAvIDIpKSAtICgyMDAgLyAyKSksXG4gICAgICB5OiAoKGRpbWVuc2lvbnMueSArIChkaW1lbnNpb25zLmhlaWdodCAvIDIpKSAtICgxMDAgLyAyKSksXG4gICAgICB3aWR0aDogMjAwLFxuICAgICAgaGVpZ2h0OiAxMDBcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgX2hhbmRsZVBkZkRhdGEocGRmRGF0YTogYW55KSB7XG4gICAgaWYgKHR5cGVvZiBwZGZEYXRhID09PSAnc3RyaW5nJykge1xuICAgICAgdGhpcy5fcHJlcGFyZVBERihwZGZEYXRhKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5fcGRmID0gcGRmRGF0YTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIF9wcmVwYXJlUERGKGJhc2U2NDogc3RyaW5nKTogdm9pZCB7XG4gICAgdmFyIGJpbmFyeV9zdHJpbmcgPSB3aW5kb3cuYXRvYihiYXNlNjQpO1xuICAgIHZhciBsZW4gPSBiaW5hcnlfc3RyaW5nLmxlbmd0aDtcbiAgICB2YXIgYnl0ZXMgPSBuZXcgVWludDhBcnJheShsZW4pO1xuICAgIGZvciAodmFyIGkgPSAwOyBpIDwgbGVuOyBpKyspIHtcbiAgICAgIGJ5dGVzW2ldID0gYmluYXJ5X3N0cmluZy5jaGFyQ29kZUF0KGkpO1xuICAgIH1cbiAgICB0aGlzLl9wZGYgPSBieXRlcztcbiAgfVxufVxuIl19
1
+ import { __awaiter } from "tslib";
2
+ import { Component, ElementRef, EventEmitter, HostBinding, Input, Output, ViewChild, ViewEncapsulation } from "@angular/core";
3
+ import { animate, state, style, transition, trigger } from "@angular/animations";
4
+ import { PDFDocument } from "pdf-lib";
5
+ import * as PDFJS from "pdfjs-dist/legacy/build/pdf";
6
+ import pdfjsWorker from "pdfjs-dist/build/pdf.worker.entry";
7
+ export class DocsignComponent {
8
+ constructor() {
9
+ this.saveButtonLabel = 'SAVE';
10
+ this.clearButtonLabel = 'CLEAR';
11
+ this.signDocumentButtonLabel = 'SIGN_DOCUMENT';
12
+ this.cancelButtonLabel = 'CANCEL';
13
+ this.pdfSaved = new EventEmitter();
14
+ this.cancelClick = new EventEmitter();
15
+ this.showSignaturePopup = false;
16
+ this.showSigBuyer = false;
17
+ this.showSigSeller = false;
18
+ this.showSignatures = false;
19
+ }
20
+ /**
21
+ * Load an existing [[PDFDocument]]. The input data can be provided in
22
+ * multiple formats:
23
+ *
24
+ * | Type | Contents |
25
+ * | ------------- | ------------------------------------------------------ |
26
+ * | `string` | A base64 encoded string (or data URI) containing a PDF |
27
+ * | `Uint8Array` | The raw bytes of a PDF |
28
+ * | `ArrayBuffer` | The raw bytes of a PDF |
29
+ *
30
+ * For example:
31
+ * ```js
32
+ * import { PDFDocument } from 'pdf-lib'
33
+ *
34
+ * // pdf=string
35
+ * const base64 =
36
+ * 'JVBERi0xLjcKJYGBgYEKCjUgMCBvYmoKPDwKL0ZpbHRlciAvRmxhdGVEZWNvZGUKL0xlbm' +
37
+ * 'd0aCAxMDQKPj4Kc3RyZWFtCniccwrhMlAAwaJ0Ln2P1Jyy1JLM5ERdc0MjCwUjE4WQNC4Q' +
38
+ * '6cNlCFZkqGCqYGSqEJLLZWNuYGZiZmbkYuZsZmlmZGRgZmluDCQNzc3NTM2NzdzMXMxMjQ' +
39
+ * 'ztFEKyuEK0uFxDuAAOERdVCmVuZHN0cmVhbQplbmRvYmoKCjYgMCBvYmoKPDwKL0ZpbHRl' +
40
+ * 'ciAvRmxhdGVEZWNvZGUKL1R5cGUgL09ialN0bQovTiA0Ci9GaXJzdCAyMAovTGVuZ3RoID' +
41
+ * 'IxNQo+PgpzdHJlYW0KeJxVj9GqwjAMhu/zFHkBzTo3nCCCiiKIHPEICuJF3cKoSCu2E8/b' +
42
+ * '20wPIr1p8v9/8kVhgilmGfawX2CGaVrgcAi0/bsy0lrX7IGWpvJ4iJYEN3gEmrrGBlQwGs' +
43
+ * 'HHO9VBX1wNrxAqMX87RBD5xpJuddqwd82tjAHxzV1U5LPgy52DKXWnr1Lheg+j/c/pzGVr' +
44
+ * 'iqV0VlwZPXGPCJjElw/ybkwUmeoWgxesDXGhHJC/D/iikp1Av80ptKU0FdBEe25pPihAM1' +
45
+ * 'u6ytgaaWfs2Hrz35CJT1+EWmAKZW5kc3RyZWFtCmVuZG9iagoKNyAwIG9iago8PAovU2l6' +
46
+ * 'ZSA4Ci9Sb290IDIgMCBSCi9GaWx0ZXIgL0ZsYXRlRGVjb2RlCi9UeXBlIC9YUmVmCi9MZW' +
47
+ * '5ndGggMzgKL1cgWyAxIDIgMiBdCi9JbmRleCBbIDAgOCBdCj4+CnN0cmVhbQp4nBXEwREA' +
48
+ * 'EBAEsCwz3vrvRmOOyyOoGhZdutHN2MT55fIAVocD+AplbmRzdHJlYW0KZW5kb2JqCgpzdG' +
49
+ * 'FydHhyZWYKNTEwCiUlRU9G'
50
+ *
51
+ * const dataUri = 'data:application/pdf;base64,' + base64
52
+ *
53
+ * const pdfDoc1 = await PDFDocument.load(base64)
54
+ * const pdfDoc2 = await PDFDocument.load(dataUri)
55
+ *
56
+ * // pdf=Uint8Array
57
+ * import fs from 'fs'
58
+ * const uint8Array = fs.readFileSync('with_update_sections.pdf')
59
+ * const pdfDoc3 = await PDFDocument.load(uint8Array)
60
+ *
61
+ * // pdf=ArrayBuffer
62
+ * const url = 'https://pdf-lib.js.org/assets/with_update_sections.pdf'
63
+ * const arrayBuffer = await fetch(url).then(res => res.arrayBuffer())
64
+ * const pdfDoc4 = await PDFDocument.load(arrayBuffer)
65
+ *
66
+ * ```
67
+ *
68
+ * @param pdf The input data containing a PDF document.
69
+ * @param options The options to be used when loading the document.
70
+ * @returns Resolves with a document loaded from the input.
71
+ */
72
+ set pdf(value) {
73
+ if (value) {
74
+ this._handlePdfData(value);
75
+ this._openPDF();
76
+ }
77
+ }
78
+ get pdf() {
79
+ return this._pdf;
80
+ }
81
+ showClass() {
82
+ return true;
83
+ }
84
+ saveFirstSignature(sig) {
85
+ this._saveSignature(sig, this.sigBuyerPosition);
86
+ this.showSigBuyer = false;
87
+ this._savePdf();
88
+ }
89
+ saveSecondSignature(sig) {
90
+ this._saveSignature(sig, this.sigSellerPosition);
91
+ this.showSigSeller = false;
92
+ this._savePdf();
93
+ }
94
+ _openPDF() {
95
+ return __awaiter(this, void 0, void 0, function* () {
96
+ // first create reader to check signatures
97
+ this._checkSignatures();
98
+ this.pdfDoc = yield PDFDocument.load(this._pdf, {
99
+ updateMetadata: false
100
+ });
101
+ const pdfDataUri = yield this.pdfDoc.saveAsBase64({ dataUri: true });
102
+ this.iframe.nativeElement.src = pdfDataUri;
103
+ });
104
+ }
105
+ _savePdf() {
106
+ return __awaiter(this, void 0, void 0, function* () {
107
+ if (!this.showSigBuyer && !this.showSigSeller) {
108
+ // ready, save the pdf and emit result
109
+ const result = yield this.pdfDoc.saveAsBase64();
110
+ this.pdfSaved.next(result);
111
+ }
112
+ });
113
+ }
114
+ _checkSignatures() {
115
+ return __awaiter(this, void 0, void 0, function* () {
116
+ let pdfWorkerSrc;
117
+ if (window.hasOwnProperty('pdfWorkerSrc') &&
118
+ typeof window.pdfWorkerSrc === 'string' &&
119
+ window.pdfWorkerSrc) {
120
+ pdfWorkerSrc = window.pdfWorkerSrc;
121
+ }
122
+ else {
123
+ pdfWorkerSrc = pdfjsWorker;
124
+ }
125
+ PDFJS.GlobalWorkerOptions.workerSrc = pdfWorkerSrc;
126
+ const pdfReader = yield PDFJS.getDocument(this._pdf).promise;
127
+ const numPages = pdfReader.numPages;
128
+ for (let i = 0; i < numPages; i++) {
129
+ const page = yield pdfReader.getPage(i + 1);
130
+ const text = yield page.getTextContent();
131
+ page.cleanup();
132
+ if (this.firstSignatureField) {
133
+ this.sigBuyerPosition = this._getPositionSignature(text, this.firstSignatureField);
134
+ if (this.sigBuyerPosition.width > 0 && this.sigBuyerPosition.height > 0) {
135
+ this.sigBuyerPosition.page = i;
136
+ this.showSigBuyer = true;
137
+ }
138
+ }
139
+ if (this.secondSignatureField) {
140
+ this.sigSellerPosition = this._getPositionSignature(text, this.secondSignatureField);
141
+ if (this.sigSellerPosition.width > 0 && this.sigSellerPosition.height > 0) {
142
+ this.sigSellerPosition.page = i;
143
+ this.showSigSeller = true;
144
+ }
145
+ }
146
+ }
147
+ });
148
+ }
149
+ _getPositionSignature(textItem, signatureField) {
150
+ const sigItem = textItem.items.find((i) => i.str.toLowerCase() === signatureField.toLowerCase());
151
+ if (sigItem) {
152
+ textItem.items.slice(textItem.items.indexOf(sigItem), 1);
153
+ return {
154
+ x: sigItem.transform[4],
155
+ y: sigItem.transform[5],
156
+ width: sigItem.width,
157
+ height: sigItem.height,
158
+ page: 0
159
+ };
160
+ }
161
+ return { x: 0, y: 0, width: 0, height: 0, page: 0 };
162
+ }
163
+ _saveSignature(sig, dimensions) {
164
+ return __awaiter(this, void 0, void 0, function* () {
165
+ const jpgImage = yield this.pdfDoc.embedPng(sig);
166
+ const page = yield this.pdfDoc.getPage(dimensions.page);
167
+ page.drawImage(jpgImage, {
168
+ x: ((dimensions.x + (dimensions.width / 2)) - (200 / 2)),
169
+ y: ((dimensions.y + (dimensions.height / 2)) - (100 / 2)),
170
+ width: 200,
171
+ height: 100
172
+ });
173
+ });
174
+ }
175
+ _handlePdfData(pdfData) {
176
+ if (typeof pdfData === 'string') {
177
+ this._preparePDF(pdfData);
178
+ }
179
+ else {
180
+ this._pdf = pdfData;
181
+ }
182
+ }
183
+ _preparePDF(base64) {
184
+ var binary_string = window.atob(base64);
185
+ var len = binary_string.length;
186
+ var bytes = new Uint8Array(len);
187
+ for (var i = 0; i < len; i++) {
188
+ bytes[i] = binary_string.charCodeAt(i);
189
+ }
190
+ this._pdf = bytes;
191
+ }
192
+ }
193
+ DocsignComponent.decorators = [
194
+ { type: Component, args: [{
195
+ selector: "co-docsign",
196
+ template: `
197
+ <iframe #iframe></iframe>
198
+ <co-signatures *ngIf="showSignatures" @showHideSignature
199
+ [showFirstSignature]="showSigBuyer"
200
+ [firstSignatureTitle]="firstSignatureLabel"
201
+ [showSecondSignature]="showSigSeller"
202
+ [secondSignatureTitle]="secondSignatureLabel"
203
+ [saveButtonLabel]="saveButtonLabel"
204
+ [clearButtonLabel]="clearButtonLabel"
205
+ (saveFirstSignature)="saveFirstSignature($event)"
206
+ (saveSecondSignature)="saveSecondSignature($event)"
207
+ ></co-signatures>
208
+ <input type="button" *ngIf="(showSigBuyer || showSigSeller) && !showSignatures" class="button button-sign-document"
209
+ [value]="signDocumentButtonLabel"
210
+ (click)="showSignatures = true"
211
+ />
212
+ <input type="button" class="button button-cancel"
213
+ [value]="cancelButtonLabel"
214
+ (click)="cancelClick.emit($event)"
215
+ />
216
+ `,
217
+ animations: [
218
+ trigger("showHideSignature", [
219
+ state("void", style({ transform: "translate(-50%, -50%) scale(0)" })),
220
+ state("*", style({ transform: "translate(-50%, -50%) scale(1)" })),
221
+ transition("void <=> *", animate("200ms ease-in-out")),
222
+ ])
223
+ ],
224
+ encapsulation: ViewEncapsulation.None
225
+ },] }
226
+ ];
227
+ DocsignComponent.propDecorators = {
228
+ iframe: [{ type: ViewChild, args: ["iframe", { read: ElementRef },] }],
229
+ pdf: [{ type: Input }],
230
+ firstSignatureLabel: [{ type: Input }],
231
+ firstSignatureField: [{ type: Input }],
232
+ secondSignatureLabel: [{ type: Input }],
233
+ secondSignatureField: [{ type: Input }],
234
+ saveButtonLabel: [{ type: Input }],
235
+ clearButtonLabel: [{ type: Input }],
236
+ signDocumentButtonLabel: [{ type: Input }],
237
+ cancelButtonLabel: [{ type: Input }],
238
+ pdfSaved: [{ type: Output }],
239
+ cancelClick: [{ type: Output }],
240
+ showClass: [{ type: HostBinding, args: ['class.co-docsign',] }]
241
+ };
242
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9jc2lnbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zaGFyZWRjb21wb25lbnRzL3NyYy9saWIvY29tcG9uZW50cy9kb2NzaWduL2RvY3NpZ24uY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLFVBQVUsRUFBRSxZQUFZLEVBQUUsV0FBVyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFFLGlCQUFpQixFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQzVILE9BQU8sRUFBQyxPQUFPLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxVQUFVLEVBQUUsT0FBTyxFQUFDLE1BQU0scUJBQXFCLENBQUM7QUFDL0UsT0FBTyxFQUFDLFdBQVcsRUFBQyxNQUFNLFNBQVMsQ0FBQztBQUNwQyxPQUFPLEtBQUssS0FBSyxNQUFNLDZCQUE2QixDQUFDO0FBQ3JELE9BQU8sV0FBVyxNQUFNLG1DQUFtQyxDQUFDO0FBMkM1RCxNQUFNLE9BQU8sZ0JBQWdCO0lBaEM3QjtRQWlIUyxvQkFBZSxHQUFXLE1BQU0sQ0FBQztRQUdqQyxxQkFBZ0IsR0FBVyxPQUFPLENBQUM7UUFHbkMsNEJBQXVCLEdBQVcsZUFBZSxDQUFDO1FBR2xELHNCQUFpQixHQUFXLFFBQVEsQ0FBQztRQUdyQyxhQUFRLEdBQXlCLElBQUksWUFBWSxFQUFVLENBQUM7UUFHNUQsZ0JBQVcsR0FBNkIsSUFBSSxZQUFZLEVBQWMsQ0FBQztRQU92RSx1QkFBa0IsR0FBWSxLQUFLLENBQUM7UUFDcEMsaUJBQVksR0FBWSxLQUFLLENBQUM7UUFFOUIsa0JBQWEsR0FBWSxLQUFLLENBQUM7UUFFL0IsbUJBQWMsR0FBWSxLQUFLLENBQUM7SUFrSHpDLENBQUM7SUExTkM7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztPQW1ERztJQUNI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Q0FZTCxLQUFLO2tDQUdMLEtBQUs7bUNBR0wsS0FBSzttQ0FHTCxLQUFLOzhCQUdMLEtBQUs7K0JBR0wsS0FBSztzQ0FHTCxLQUFLO2dDQUdMLEtBQUs7dUJBR0wsTUFBTTswQkFHTixNQUFNO3dCQUdOLFdBQVcsU0FBQyxrQkFBa0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbXBvbmVudCwgRWxlbWVudFJlZiwgRXZlbnRFbWl0dGVyLCBIb3N0QmluZGluZywgSW5wdXQsIE91dHB1dCwgVmlld0NoaWxkLCBWaWV3RW5jYXBzdWxhdGlvbn0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHthbmltYXRlLCBzdGF0ZSwgc3R5bGUsIHRyYW5zaXRpb24sIHRyaWdnZXJ9IGZyb20gXCJAYW5ndWxhci9hbmltYXRpb25zXCI7XHJcbmltcG9ydCB7UERGRG9jdW1lbnR9IGZyb20gXCJwZGYtbGliXCI7XHJcbmltcG9ydCAqIGFzIFBERkpTIGZyb20gXCJwZGZqcy1kaXN0L2xlZ2FjeS9idWlsZC9wZGZcIjtcclxuaW1wb3J0IHBkZmpzV29ya2VyIGZyb20gXCJwZGZqcy1kaXN0L2J1aWxkL3BkZi53b3JrZXIuZW50cnlcIjtcclxuaW1wb3J0IHtUZXh0SXRlbX0gZnJvbSBcInBkZmpzLWRpc3QvdHlwZXMvc3JjL2Rpc3BsYXkvYXBpXCI7XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIFRleHREaW1lbnNpb24ge1xyXG4gIHg6IG51bWJlcixcclxuICB5OiBudW1iZXIsXHJcbiAgd2lkdGg6IG51bWJlcixcclxuICBoZWlnaHQ6IG51bWJlcixcclxuICBwYWdlOiBudW1iZXJcclxufVxyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6IFwiY28tZG9jc2lnblwiLFxyXG4gIHRlbXBsYXRlOiBgXHJcbiAgICA8aWZyYW1lICNpZnJhbWU+PC9pZnJhbWU+XHJcbiAgICA8Y28tc2lnbmF0dXJlcyAqbmdJZj1cInNob3dTaWduYXR1cmVzXCIgQHNob3dIaWRlU2lnbmF0dXJlXHJcbiAgICAgICAgICAgICAgICAgICAgIFtzaG93Rmlyc3RTaWduYXR1cmVdPVwic2hvd1NpZ0J1eWVyXCJcclxuICAgICAgICAgICAgICAgICAgICAgW2ZpcnN0U2lnbmF0dXJlVGl0bGVdPVwiZmlyc3RTaWduYXR1cmVMYWJlbFwiXHJcbiAgICAgICAgICAgICAgICAgICAgIFtzaG93U2Vjb25kU2lnbmF0dXJlXT1cInNob3dTaWdTZWxsZXJcIlxyXG4gICAgICAgICAgICAgICAgICAgICBbc2Vjb25kU2lnbmF0dXJlVGl0bGVdPVwic2Vjb25kU2lnbmF0dXJlTGFiZWxcIlxyXG4gICAgICAgICAgICAgICAgICAgICBbc2F2ZUJ1dHRvbkxhYmVsXT1cInNhdmVCdXR0b25MYWJlbFwiXHJcbiAgICAgICAgICAgICAgICAgICAgIFtjbGVhckJ1dHRvbkxhYmVsXT1cImNsZWFyQnV0dG9uTGFiZWxcIlxyXG4gICAgICAgICAgICAgICAgICAgICAoc2F2ZUZpcnN0U2lnbmF0dXJlKT1cInNhdmVGaXJzdFNpZ25hdHVyZSgkZXZlbnQpXCJcclxuICAgICAgICAgICAgICAgICAgICAgKHNhdmVTZWNvbmRTaWduYXR1cmUpPVwic2F2ZVNlY29uZFNpZ25hdHVyZSgkZXZlbnQpXCJcclxuICAgID48L2NvLXNpZ25hdHVyZXM+XHJcbiAgICA8aW5wdXQgdHlwZT1cImJ1dHRvblwiICpuZ0lmPVwiKHNob3dTaWdCdXllciB8fCBzaG93U2lnU2VsbGVyKSAmJiAhc2hvd1NpZ25hdHVyZXNcIiBjbGFzcz1cImJ1dHRvbiBidXR0b24tc2lnbi1kb2N1bWVudFwiXHJcbiAgICAgICAgICAgW3ZhbHVlXT1cInNpZ25Eb2N1bWVudEJ1dHRvbkxhYmVsXCJcclxuICAgICAgICAgICAoY2xpY2spPVwic2hvd1NpZ25hdHVyZXMgPSB0cnVlXCJcclxuICAgIC8+XHJcbiAgICA8aW5wdXQgdHlwZT1cImJ1dHRvblwiIGNsYXNzPVwiYnV0dG9uIGJ1dHRvbi1jYW5jZWxcIlxyXG4gICAgICAgICAgIFt2YWx1ZV09XCJjYW5jZWxCdXR0b25MYWJlbFwiXHJcbiAgICAgICAgICAgKGNsaWNrKT1cImNhbmNlbENsaWNrLmVtaXQoJGV2ZW50KVwiXHJcbiAgICAvPlxyXG4gIGAsXHJcbiAgYW5pbWF0aW9uczogW1xyXG4gICAgdHJpZ2dlcihcInNob3dIaWRlU2lnbmF0dXJlXCIsIFtcclxuICAgICAgc3RhdGUoXCJ2b2lkXCIsIHN0eWxlKHt0cmFuc2Zvcm06IFwidHJhbnNsYXRlKC01MCUsIC01MCUpIHNjYWxlKDApXCJ9KSksXHJcbiAgICAgIHN0YXRlKFwiKlwiLCBzdHlsZSh7dHJhbnNmb3JtOiBcInRyYW5zbGF0ZSgtNTAlLCAtNTAlKSBzY2FsZSgxKVwifSkpLFxyXG4gICAgICB0cmFuc2l0aW9uKFwidm9pZCA8PT4gKlwiLCBhbmltYXRlKFwiMjAwbXMgZWFzZS1pbi1vdXRcIikpLFxyXG4gICAgXSlcclxuICBdLFxyXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmVcclxufSlcclxuZXhwb3J0IGNsYXNzIERvY3NpZ25Db21wb25lbnQge1xyXG4gIEBWaWV3Q2hpbGQoXCJpZnJhbWVcIiwgeyByZWFkOiBFbGVtZW50UmVmIH0pXHJcbiAgcHVibGljIGlmcmFtZTogRWxlbWVudFJlZjtcclxuXHJcbiAgLyoqXHJcbiAgICogTG9hZCBhbiBleGlzdGluZyBbW1BERkRvY3VtZW50XV0uIFRoZSBpbnB1dCBkYXRhIGNhbiBiZSBwcm92aWRlZCBpblxyXG4gICAqIG11bHRpcGxlIGZvcm1hdHM6XHJcbiAgICpcclxuICAgKiB8IFR5cGUgICAgICAgICAgfCBDb250ZW50cyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfFxyXG4gICAqIHwgLS0tLS0tLS0tLS0tLSB8IC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSB8XHJcbiAgICogfCBgc3RyaW5nYCAgICAgIHwgQSBiYXNlNjQgZW5jb2RlZCBzdHJpbmcgKG9yIGRhdGEgVVJJKSBjb250YWluaW5nIGEgUERGIHxcclxuICAgKiB8IGBVaW50OEFycmF5YCAgfCBUaGUgcmF3IGJ5dGVzIG9mIGEgUERGICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfFxyXG4gICAqIHwgYEFycmF5QnVmZmVyYCB8IFRoZSByYXcgYnl0ZXMgb2YgYSBQREYgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8XHJcbiAgICpcclxuICAgKiBGb3IgZXhhbXBsZTpcclxuICAgKiBgYGBqc1xyXG4gICAqIGltcG9ydCB7IFBERkRvY3VtZW50IH0gZnJvbSAncGRmLWxpYidcclxuICAgKlxyXG4gICAqIC8vIHBkZj1zdHJpbmdcclxuICAgKiBjb25zdCBiYXNlNjQgPVxyXG4gICAqICAnSlZCRVJpMHhMamNLSllHQmdZRUtDalVnTUNCdlltb0tQRHdLTDBacGJIUmxjaUF2Um14aGRHVkVaV052WkdVS0wweGxibScgK1xyXG4gICAqICAnZDBhQ0F4TURRS1BqNEtjM1J5WldGdENuaWNjd3JoTWxBQXdhSjBMbjJQMUp5eTFKTE01RVJkYzBNakN3VWpFNFdRTkM0UScgK1xyXG4gICAqICAnNmNObENGWmtxR0NxWUdTcUVKTExaV051WUdaaVptYmtZdVpzWm1sbVpHUmdabWx1RENRTnpjM05UTTJOemR6TVhNeE1qUScgK1xyXG4gICAqICAnenRGRUt5dUVLMHVGeER1QUFPRVJkVkNtVnVaSE4wY21WaGJRcGxibVJ2WW1vS0NqWWdNQ0J2WW1vS1BEd0tMMFpwYkhSbCcgK1xyXG4gICAqICAnY2lBdlJteGhkR1ZFWldOdlpHVUtMMVI1Y0dVZ0wwOWlhbE4wYlFvdlRpQTBDaTlHYVhKemRDQXlNQW92VEdWdVozUm9JRCcgK1xyXG4gICAqICAnSXhOUW8rUGdwemRISmxZVzBLZUp4Vmo5R3F3akFNaHUvekZIa0J6VG8zbkNDQ2lpS0lIUEVJQ3VKRjNjS29TQ3UyRTgvYicgK1xyXG4gICAqICAnMjB3UElyMXA4djkvOGtWaGdpbG1HZmF3WDJDR2FWcmdjQWkwL2JzeTBsclg3SUdXcHZKNGlKWUVOM2dFbXJyR0JsUXdHcycgK1xyXG4gICAqICAnSEhPOVZCWDF3TnJ4QXFNWDg3UkJENXhwSnVkZHF3ZDgydGpBSHh6VjFVNUxQZ3k1MkRLWFducjFMaGVnK2ovYy9wekdWcicgK1xyXG4gICAqICAnaXFWMFZsd1pQWEdQQ0pqRWx3L3lia3dVbWVvV2d4ZXNEWEdoSEpDL0QvaWlrcDFBdjgwcHRLVTBGZEJFZTI1cFBpaEFNMScgK1xyXG4gICAqICAndTZ5dGdhYVdmczJIcnozNUNKVDErRVdtQUtaVzVrYzNSeVpXRnRDbVZ1Wkc5aWFnb0tOeUF3SUc5aWFnbzhQQW92VTJsNicgK1xyXG4gICAqICAnWlNBNENpOVNiMjkwSURJZ01DQlNDaTlHYVd4MFpYSWdMMFpzWVhSbFJHVmpiMlJsQ2k5VWVYQmxJQzlZVW1WbUNpOU1aVycgK1xyXG4gICAqICAnNW5kR2dnTXpnS0wxY2dXeUF4SURJZ01pQmRDaTlKYm1SbGVDQmJJREFnT0NCZENqNCtDbk4wY21WaGJRcDRuQlhFd1JFQScgK1xyXG4gICAqICAnRUJBRXNDd3ozdnJ2Um1PT3l5T29HaFpkdXRITjJNVDU1ZklBVm9jRCtBcGxibVJ6ZEhKbFlXMEtaVzVrYjJKcUNncHpkRycgK1xyXG4gICAqICAnRnlkSGh5WldZS05URXdDaVVsUlU5RydcclxuICAgKlxyXG4gICAqIGNvbnN0IGRhdGFVcmkgPSAnZGF0YTphcHBsaWNhdGlvbi9wZGY7YmFzZTY0LCcgKyBiYXNlNjRcclxuICAgKlxyXG4gICAqIGNvbnN0IHBkZkRvYzEgPSBhd2FpdCBQREZEb2N1bWVudC5sb2FkKGJhc2U2NClcclxuICAgKiBjb25zdCBwZGZEb2MyID0gYXdhaXQgUERGRG9jdW1lbnQubG9hZChkYXRhVXJpKVxyXG4gICAqXHJcbiAgICogLy8gcGRmPVVpbnQ4QXJyYXlcclxuICAgKiBpbXBvcnQgZnMgZnJvbSAnZnMnXHJcbiAgICogY29uc3QgdWludDhBcnJheSA9IGZzLnJlYWRGaWxlU3luYygnd2l0aF91cGRhdGVfc2VjdGlvbnMucGRmJylcclxuICAgKiBjb25zdCBwZGZEb2MzID0gYXdhaXQgUERGRG9jdW1lbnQubG9hZCh1aW50OEFycmF5KVxyXG4gICAqXHJcbiAgICogLy8gcGRmPUFycmF5QnVmZmVyXHJcbiAgICogY29uc3QgdXJsID0gJ2h0dHBzOi8vcGRmLWxpYi5qcy5vcmcvYXNzZXRzL3dpdGhfdXBkYXRlX3NlY3Rpb25zLnBkZidcclxuICAgKiBjb25zdCBhcnJheUJ1ZmZlciA9IGF3YWl0IGZldGNoKHVybCkudGhlbihyZXMgPT4gcmVzLmFycmF5QnVmZmVyKCkpXHJcbiAgICogY29uc3QgcGRmRG9jNCA9IGF3YWl0IFBERkRvY3VtZW50LmxvYWQoYXJyYXlCdWZmZXIpXHJcbiAgICpcclxuICAgKiBgYGBcclxuICAgKlxyXG4gICAqIEBwYXJhbSBwZGYgVGhlIGlucHV0IGRhdGEgY29udGFpbmluZyBhIFBERiBkb2N1bWVudC5cclxuICAgKiBAcGFyYW0gb3B0aW9ucyBUaGUgb3B0aW9ucyB0byBiZSB1c2VkIHdoZW4gbG9hZGluZyB0aGUgZG9jdW1lbnQuXHJcbiAgICogQHJldHVybnMgUmVzb2x2ZXMgd2l0aCBhIGRvY3VtZW50IGxvYWRlZCBmcm9tIHRoZSBpbnB1dC5cclxuICAgKi9cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBzZXQgcGRmKHZhbHVlOiBhbnkpIHtcclxuICAgIGlmICh2YWx1ZSkge1xyXG4gICAgICB0aGlzLl9oYW5kbGVQZGZEYXRhKHZhbHVlKTtcclxuICAgICAgdGhpcy5fb3BlblBERigpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldCBwZGYoKTogYW55IHtcclxuICAgIHJldHVybiB0aGlzLl9wZGY7XHJcbiAgfVxyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBmaXJzdFNpZ25hdHVyZUxhYmVsOiBzdHJpbmc7XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIGZpcnN0U2lnbmF0dXJlRmllbGQ6IHN0cmluZztcclxuXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgc2Vjb25kU2lnbmF0dXJlTGFiZWw6IHN0cmluZztcclxuXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgc2Vjb25kU2lnbmF0dXJlRmllbGQ6IHN0cmluZztcclxuXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgc2F2ZUJ1dHRvbkxhYmVsOiBzdHJpbmcgPSAnU0FWRSc7XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIGNsZWFyQnV0dG9uTGFiZWw6IHN0cmluZyA9ICdDTEVBUic7XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIHNpZ25Eb2N1bWVudEJ1dHRvbkxhYmVsOiBzdHJpbmcgPSAnU0lHTl9ET0NVTUVOVCc7XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIGNhbmNlbEJ1dHRvbkxhYmVsOiBzdHJpbmcgPSAnQ0FOQ0VMJztcclxuXHJcbiAgQE91dHB1dCgpXHJcbiAgcHVibGljIHBkZlNhdmVkOiBFdmVudEVtaXR0ZXI8c3RyaW5nPiA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nPigpO1xyXG5cclxuICBAT3V0cHV0KClcclxuICBwdWJsaWMgY2FuY2VsQ2xpY2s6IEV2ZW50RW1pdHRlcjxNb3VzZUV2ZW50PiA9IG5ldyBFdmVudEVtaXR0ZXI8TW91c2VFdmVudD4oKTtcclxuXHJcbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5jby1kb2NzaWduJylcclxuICBwdWJsaWMgc2hvd0NsYXNzKCkge1xyXG4gICAgcmV0dXJuIHRydWU7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgc2hvd1NpZ25hdHVyZVBvcHVwOiBib29sZWFuID0gZmFsc2U7XHJcbiAgcHVibGljIHNob3dTaWdCdXllcjogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIHB1YmxpYyBzaWdCdXllclBvc2l0aW9uOiBUZXh0RGltZW5zaW9uO1xyXG4gIHB1YmxpYyBzaG93U2lnU2VsbGVyOiBib29sZWFuID0gZmFsc2U7XHJcbiAgcHVibGljIHNpZ1NlbGxlclBvc2l0aW9uOiBUZXh0RGltZW5zaW9uO1xyXG4gIHB1YmxpYyBzaG93U2lnbmF0dXJlczogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICBwdWJsaWMgcGRmRG9jOiBQREZEb2N1bWVudDtcclxuXHJcbiAgcHJpdmF0ZSBfcGRmOiBhbnk7XHJcblxyXG4gIHB1YmxpYyBzYXZlRmlyc3RTaWduYXR1cmUoc2lnOiBzdHJpbmcpOiB2b2lkIHtcclxuICAgIHRoaXMuX3NhdmVTaWduYXR1cmUoc2lnLCB0aGlzLnNpZ0J1eWVyUG9zaXRpb24pO1xyXG4gICAgdGhpcy5zaG93U2lnQnV5ZXIgPSBmYWxzZTtcclxuICAgIHRoaXMuX3NhdmVQZGYoKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBzYXZlU2Vjb25kU2lnbmF0dXJlKHNpZzogc3RyaW5nKTogdm9pZCB7XHJcbiAgICB0aGlzLl9zYXZlU2lnbmF0dXJlKHNpZywgdGhpcy5zaWdTZWxsZXJQb3NpdGlvbik7XHJcbiAgICB0aGlzLnNob3dTaWdTZWxsZXIgPSBmYWxzZTtcclxuICAgIHRoaXMuX3NhdmVQZGYoKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgYXN5bmMgX29wZW5QREYoKTogUHJvbWlzZTx2b2lkPiB7XHJcbiAgICAvLyBmaXJzdCBjcmVhdGUgcmVhZGVyIHRvIGNoZWNrIHNpZ25hdHVyZXNcclxuICAgIHRoaXMuX2NoZWNrU2lnbmF0dXJlcygpO1xyXG5cclxuICAgIHRoaXMucGRmRG9jID0gYXdhaXQgUERGRG9jdW1lbnQubG9hZCh0aGlzLl9wZGYsIHtcclxuICAgICAgdXBkYXRlTWV0YWRhdGE6IGZhbHNlXHJcbiAgICB9KTtcclxuICAgIGNvbnN0IHBkZkRhdGFVcmkgPSBhd2FpdCB0aGlzLnBkZkRvYy5zYXZlQXNCYXNlNjQoeyBkYXRhVXJpOiB0cnVlIH0pO1xyXG4gICAgdGhpcy5pZnJhbWUubmF0aXZlRWxlbWVudC5zcmMgPSBwZGZEYXRhVXJpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBhc3luYyBfc2F2ZVBkZigpOiBQcm9taXNlPHZvaWQ+IHtcclxuICAgIGlmICghdGhpcy5zaG93U2lnQnV5ZXIgJiYgIXRoaXMuc2hvd1NpZ1NlbGxlcikge1xyXG4gICAgICAvLyByZWFkeSwgc2F2ZSB0aGUgcGRmIGFuZCBlbWl0IHJlc3VsdFxyXG4gICAgICBjb25zdCByZXN1bHQgPSBhd2FpdCB0aGlzLnBkZkRvYy5zYXZlQXNCYXNlNjQoKTtcclxuICAgICAgdGhpcy5wZGZTYXZlZC5uZXh0KHJlc3VsdCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGFzeW5jIF9jaGVja1NpZ25hdHVyZXMoKTogUHJvbWlzZTx2b2lkPiB7XHJcbiAgICBsZXQgcGRmV29ya2VyU3JjO1xyXG4gICAgaWYgKHdpbmRvdy5oYXNPd25Qcm9wZXJ0eSgncGRmV29ya2VyU3JjJykgJiZcclxuICAgICAgdHlwZW9mICh3aW5kb3cgYXMgYW55KS5wZGZXb3JrZXJTcmMgPT09ICdzdHJpbmcnICYmXHJcbiAgICAgICh3aW5kb3cgYXMgYW55KS5wZGZXb3JrZXJTcmMpIHtcclxuICAgICAgcGRmV29ya2VyU3JjID0gKHdpbmRvdyBhcyBhbnkpLnBkZldvcmtlclNyYztcclxuICAgIH1cclxuICAgIGVsc2Uge1xyXG4gICAgICBwZGZXb3JrZXJTcmMgPSBwZGZqc1dvcmtlcjtcclxuICAgIH1cclxuICAgIFBERkpTLkdsb2JhbFdvcmtlck9wdGlvbnMud29ya2VyU3JjID0gcGRmV29ya2VyU3JjO1xyXG4gICAgY29uc3QgcGRmUmVhZGVyID0gYXdhaXQgUERGSlMuZ2V0RG9jdW1lbnQodGhpcy5fcGRmKS5wcm9taXNlO1xyXG4gICAgY29uc3QgbnVtUGFnZXMgPSBwZGZSZWFkZXIubnVtUGFnZXM7XHJcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IG51bVBhZ2VzOyBpKyspIHtcclxuICAgICAgY29uc3QgcGFnZSA9IGF3YWl0IHBkZlJlYWRlci5nZXRQYWdlKGkgKyAxKTtcclxuICAgICAgY29uc3QgdGV4dCA9IGF3YWl0IHBhZ2UuZ2V0VGV4dENvbnRlbnQoKTtcclxuICAgICAgcGFnZS5jbGVhbnVwKCk7XHJcbiAgICAgIGlmICh0aGlzLmZpcnN0U2lnbmF0dXJlRmllbGQpIHtcclxuICAgICAgICB0aGlzLnNpZ0J1eWVyUG9zaXRpb24gPSB0aGlzLl9nZXRQb3NpdGlvblNpZ25hdHVyZSh0ZXh0LCB0aGlzLmZpcnN0U2lnbmF0dXJlRmllbGQpO1xyXG4gICAgICAgIGlmICh0aGlzLnNpZ0J1eWVyUG9zaXRpb24ud2lkdGggPiAwICYmIHRoaXMuc2lnQnV5ZXJQb3NpdGlvbi5oZWlnaHQgPiAwKSB7XHJcbiAgICAgICAgICB0aGlzLnNpZ0J1eWVyUG9zaXRpb24ucGFnZSA9IGk7XHJcbiAgICAgICAgICB0aGlzLnNob3dTaWdCdXllciA9IHRydWU7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIGlmICh0aGlzLnNlY29uZFNpZ25hdHVyZUZpZWxkKSB7XHJcbiAgICAgICAgdGhpcy5zaWdTZWxsZXJQb3NpdGlvbiA9IHRoaXMuX2dldFBvc2l0aW9uU2lnbmF0dXJlKHRleHQsIHRoaXMuc2Vjb25kU2lnbmF0dXJlRmllbGQpO1xyXG4gICAgICAgIGlmICh0aGlzLnNpZ1NlbGxlclBvc2l0aW9uLndpZHRoID4gMCAmJiB0aGlzLnNpZ1NlbGxlclBvc2l0aW9uLmhlaWdodCA+IDApIHtcclxuICAgICAgICAgIHRoaXMuc2lnU2VsbGVyUG9zaXRpb24ucGFnZSA9IGk7XHJcbiAgICAgICAgICB0aGlzLnNob3dTaWdTZWxsZXIgPSB0cnVlO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfZ2V0UG9zaXRpb25TaWduYXR1cmUodGV4dEl0ZW06IGFueSwgc2lnbmF0dXJlRmllbGQ6IHN0cmluZyk6IFRleHREaW1lbnNpb24ge1xyXG4gICAgY29uc3Qgc2lnSXRlbTogVGV4dEl0ZW0gPSA8VGV4dEl0ZW0+dGV4dEl0ZW0uaXRlbXMuZmluZCgoaTogYW55KSA9PiBpLnN0ci50b0xvd2VyQ2FzZSgpID09PSBzaWduYXR1cmVGaWVsZC50b0xvd2VyQ2FzZSgpKTtcclxuICAgIGlmIChzaWdJdGVtKSB7XHJcbiAgICAgIHRleHRJdGVtLml0ZW1zLnNsaWNlKHRleHRJdGVtLml0ZW1zLmluZGV4T2Yoc2lnSXRlbSksIDEpO1xyXG4gICAgICByZXR1cm4ge1xyXG4gICAgICAgIHg6IHNpZ0l0ZW0udHJhbnNmb3JtWzRdLFxyXG4gICAgICAgIHk6IHNpZ0l0ZW0udHJhbnNmb3JtWzVdLFxyXG4gICAgICAgIHdpZHRoOiBzaWdJdGVtLndpZHRoLFxyXG4gICAgICAgIGhlaWdodDogc2lnSXRlbS5oZWlnaHQsXHJcbiAgICAgICAgcGFnZTogMFxyXG4gICAgICB9O1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIHt4OiAwLCB5OiAwLCB3aWR0aDogMCwgaGVpZ2h0OiAwLCBwYWdlOiAwfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBhc3luYyBfc2F2ZVNpZ25hdHVyZShzaWc6IHN0cmluZywgZGltZW5zaW9uczogVGV4dERpbWVuc2lvbik6IFByb21pc2U8dm9pZD4ge1xyXG4gICAgY29uc3QganBnSW1hZ2UgPSBhd2FpdCB0aGlzLnBkZkRvYy5lbWJlZFBuZyhzaWcpO1xyXG4gICAgY29uc3QgcGFnZSA9IGF3YWl0IHRoaXMucGRmRG9jLmdldFBhZ2UoZGltZW5zaW9ucy5wYWdlKTtcclxuICAgIHBhZ2UuZHJhd0ltYWdlKGpwZ0ltYWdlLCB7XHJcbiAgICAgIHg6ICgoZGltZW5zaW9ucy54ICsgKGRpbWVuc2lvbnMud2lkdGggLyAyKSkgLSAoMjAwIC8gMikpLFxyXG4gICAgICB5OiAoKGRpbWVuc2lvbnMueSArIChkaW1lbnNpb25zLmhlaWdodCAvIDIpKSAtICgxMDAgLyAyKSksXHJcbiAgICAgIHdpZHRoOiAyMDAsXHJcbiAgICAgIGhlaWdodDogMTAwXHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgX2hhbmRsZVBkZkRhdGEocGRmRGF0YTogYW55KSB7XHJcbiAgICBpZiAodHlwZW9mIHBkZkRhdGEgPT09ICdzdHJpbmcnKSB7XHJcbiAgICAgIHRoaXMuX3ByZXBhcmVQREYocGRmRGF0YSk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLl9wZGYgPSBwZGZEYXRhO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfcHJlcGFyZVBERihiYXNlNjQ6IHN0cmluZyk6IHZvaWQge1xyXG4gICAgdmFyIGJpbmFyeV9zdHJpbmcgPSB3aW5kb3cuYXRvYihiYXNlNjQpO1xyXG4gICAgdmFyIGxlbiA9IGJpbmFyeV9zdHJpbmcubGVuZ3RoO1xyXG4gICAgdmFyIGJ5dGVzID0gbmV3IFVpbnQ4QXJyYXkobGVuKTtcclxuICAgIGZvciAodmFyIGkgPSAwOyBpIDwgbGVuOyBpKyspIHtcclxuICAgICAgYnl0ZXNbaV0gPSBiaW5hcnlfc3RyaW5nLmNoYXJDb2RlQXQoaSk7XHJcbiAgICB9XHJcbiAgICB0aGlzLl9wZGYgPSBieXRlcztcclxuICB9XHJcbn1cclxuIl19
@@ -1,23 +1,23 @@
1
- import { NgModule } from "@angular/core";
2
- import { CommonModule } from "@angular/common";
3
- import { DocsignComponent } from "./docsign.component";
4
- import { SignatureComponent } from "./component/signature/signature.component";
5
- import { SignaturesComponent } from "./component/signatures/signatures.component";
6
- export class DocsignModule {
7
- }
8
- DocsignModule.decorators = [
9
- { type: NgModule, args: [{
10
- imports: [
11
- CommonModule
12
- ],
13
- declarations: [
14
- DocsignComponent,
15
- SignatureComponent,
16
- SignaturesComponent
17
- ],
18
- exports: [
19
- DocsignComponent
20
- ]
21
- },] }
22
- ];
23
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9jc2lnbi5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zaGFyZWRjb21wb25lbnRzL3NyYy9saWIvY29tcG9uZW50cy9kb2NzaWduL2RvY3NpZ24ubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDdkMsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBQzdDLE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLHFCQUFxQixDQUFDO0FBQ3JELE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLDJDQUEyQyxDQUFDO0FBQzdFLE9BQU8sRUFBQyxtQkFBbUIsRUFBQyxNQUFNLDZDQUE2QyxDQUFDO0FBZWhGLE1BQU0sT0FBTyxhQUFhOzs7WUFiekIsUUFBUSxTQUFDO2dCQUNSLE9BQU8sRUFBRTtvQkFDUCxZQUFZO2lCQUNiO2dCQUNELFlBQVksRUFBRTtvQkFDWixnQkFBZ0I7b0JBQ2hCLGtCQUFrQjtvQkFDbEIsbUJBQW1CO2lCQUNwQjtnQkFDRCxPQUFPLEVBQUU7b0JBQ1AsZ0JBQWdCO2lCQUNqQjthQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtOZ01vZHVsZX0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7Q29tbW9uTW9kdWxlfSBmcm9tIFwiQGFuZ3VsYXIvY29tbW9uXCI7XG5pbXBvcnQge0RvY3NpZ25Db21wb25lbnR9IGZyb20gXCIuL2RvY3NpZ24uY29tcG9uZW50XCI7XG5pbXBvcnQge1NpZ25hdHVyZUNvbXBvbmVudH0gZnJvbSBcIi4vY29tcG9uZW50L3NpZ25hdHVyZS9zaWduYXR1cmUuY29tcG9uZW50XCI7XG5pbXBvcnQge1NpZ25hdHVyZXNDb21wb25lbnR9IGZyb20gXCIuL2NvbXBvbmVudC9zaWduYXR1cmVzL3NpZ25hdHVyZXMuY29tcG9uZW50XCI7XG5cbkBOZ01vZHVsZSh7XG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGVcbiAgXSxcbiAgZGVjbGFyYXRpb25zOiBbXG4gICAgRG9jc2lnbkNvbXBvbmVudCxcbiAgICBTaWduYXR1cmVDb21wb25lbnQsXG4gICAgU2lnbmF0dXJlc0NvbXBvbmVudFxuICBdLFxuICBleHBvcnRzOiBbXG4gICAgRG9jc2lnbkNvbXBvbmVudFxuICBdXG59KVxuZXhwb3J0IGNsYXNzIERvY3NpZ25Nb2R1bGUge1xuXG59XG4iXX0=
1
+ import { NgModule } from "@angular/core";
2
+ import { CommonModule } from "@angular/common";
3
+ import { DocsignComponent } from "./docsign.component";
4
+ import { SignatureComponent } from "./component/signature/signature.component";
5
+ import { SignaturesComponent } from "./component/signatures/signatures.component";
6
+ export class DocsignModule {
7
+ }
8
+ DocsignModule.decorators = [
9
+ { type: NgModule, args: [{
10
+ imports: [
11
+ CommonModule
12
+ ],
13
+ declarations: [
14
+ DocsignComponent,
15
+ SignatureComponent,
16
+ SignaturesComponent
17
+ ],
18
+ exports: [
19
+ DocsignComponent
20
+ ]
21
+ },] }
22
+ ];
23
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9jc2lnbi5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zaGFyZWRjb21wb25lbnRzL3NyYy9saWIvY29tcG9uZW50cy9kb2NzaWduL2RvY3NpZ24ubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDdkMsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBQzdDLE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLHFCQUFxQixDQUFDO0FBQ3JELE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLDJDQUEyQyxDQUFDO0FBQzdFLE9BQU8sRUFBQyxtQkFBbUIsRUFBQyxNQUFNLDZDQUE2QyxDQUFDO0FBZWhGLE1BQU0sT0FBTyxhQUFhOzs7WUFiekIsUUFBUSxTQUFDO2dCQUNSLE9BQU8sRUFBRTtvQkFDUCxZQUFZO2lCQUNiO2dCQUNELFlBQVksRUFBRTtvQkFDWixnQkFBZ0I7b0JBQ2hCLGtCQUFrQjtvQkFDbEIsbUJBQW1CO2lCQUNwQjtnQkFDRCxPQUFPLEVBQUU7b0JBQ1AsZ0JBQWdCO2lCQUNqQjthQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtOZ01vZHVsZX0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHtDb21tb25Nb2R1bGV9IGZyb20gXCJAYW5ndWxhci9jb21tb25cIjtcclxuaW1wb3J0IHtEb2NzaWduQ29tcG9uZW50fSBmcm9tIFwiLi9kb2NzaWduLmNvbXBvbmVudFwiO1xyXG5pbXBvcnQge1NpZ25hdHVyZUNvbXBvbmVudH0gZnJvbSBcIi4vY29tcG9uZW50L3NpZ25hdHVyZS9zaWduYXR1cmUuY29tcG9uZW50XCI7XHJcbmltcG9ydCB7U2lnbmF0dXJlc0NvbXBvbmVudH0gZnJvbSBcIi4vY29tcG9uZW50L3NpZ25hdHVyZXMvc2lnbmF0dXJlcy5jb21wb25lbnRcIjtcclxuXHJcbkBOZ01vZHVsZSh7XHJcbiAgaW1wb3J0czogW1xyXG4gICAgQ29tbW9uTW9kdWxlXHJcbiAgXSxcclxuICBkZWNsYXJhdGlvbnM6IFtcclxuICAgIERvY3NpZ25Db21wb25lbnQsXHJcbiAgICBTaWduYXR1cmVDb21wb25lbnQsXHJcbiAgICBTaWduYXR1cmVzQ29tcG9uZW50XHJcbiAgXSxcclxuICBleHBvcnRzOiBbXHJcbiAgICBEb2NzaWduQ29tcG9uZW50XHJcbiAgXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgRG9jc2lnbk1vZHVsZSB7XHJcblxyXG59XHJcbiJdfQ==