@simpleangularcontrols/sac-bootstrap3 13.0.0-rc.13 → 13.0.0-rc.15

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 (449) hide show
  1. package/README.md +27 -27
  2. package/controls/buttons/button.d.ts +6 -6
  3. package/controls/buttons/button.module.d.ts +8 -8
  4. package/controls/buttons/button.module.ngfactory.d.ts +3 -3
  5. package/controls/buttons/button.module.ngsummary.d.ts +1 -1
  6. package/controls/buttons/button.ngfactory.d.ts +3 -3
  7. package/controls/buttons/button.ngsummary.d.ts +1 -1
  8. package/controls/checkbox/checkbox.d.ts +14 -14
  9. package/controls/checkbox/checkbox.module.d.ts +12 -12
  10. package/controls/checkbox/checkbox.module.ngfactory.d.ts +3 -3
  11. package/controls/checkbox/checkbox.module.ngsummary.d.ts +1 -1
  12. package/controls/checkbox/checkbox.ngfactory.d.ts +3 -3
  13. package/controls/checkbox/checkbox.ngsummary.d.ts +1 -1
  14. package/controls/checkbox/radiobutton.d.ts +10 -10
  15. package/controls/checkbox/radiobutton.ngfactory.d.ts +3 -3
  16. package/controls/checkbox/radiobutton.ngsummary.d.ts +1 -1
  17. package/controls/checkbox/radiobuttons.d.ts +14 -14
  18. package/controls/checkbox/radiobuttons.ngfactory.d.ts +3 -3
  19. package/controls/checkbox/radiobuttons.ngsummary.d.ts +1 -1
  20. package/controls/confirm/confirm.d.ts +6 -6
  21. package/controls/confirm/confirm.module.d.ts +19 -19
  22. package/controls/confirm/confirm.module.ngfactory.d.ts +3 -3
  23. package/controls/confirm/confirm.module.ngsummary.d.ts +1 -1
  24. package/controls/confirm/confirm.ngfactory.d.ts +3 -3
  25. package/controls/confirm/confirm.ngsummary.d.ts +1 -1
  26. package/controls/confirm/confirm.service.d.ts +57 -57
  27. package/controls/confirm/confirm.service.ngfactory.d.ts +3 -3
  28. package/controls/confirm/confirm.service.ngsummary.d.ts +1 -1
  29. package/controls/contextmenu/contextmenu.d.ts +19 -19
  30. package/controls/contextmenu/contextmenu.module.d.ts +12 -12
  31. package/controls/contextmenu/contextmenu.module.ngfactory.d.ts +3 -3
  32. package/controls/contextmenu/contextmenu.module.ngsummary.d.ts +1 -1
  33. package/controls/contextmenu/contextmenu.ngfactory.d.ts +3 -3
  34. package/controls/contextmenu/contextmenu.ngsummary.d.ts +1 -1
  35. package/controls/contextmenu/contextmenuanchor.d.ts +15 -15
  36. package/controls/contextmenu/contextmenuanchor.ngfactory.d.ts +3 -3
  37. package/controls/contextmenu/contextmenuanchor.ngsummary.d.ts +1 -1
  38. package/controls/contextmenu/contextmenucontainer.d.ts +15 -15
  39. package/controls/contextmenu/contextmenucontainer.ngfactory.d.ts +3 -3
  40. package/controls/contextmenu/contextmenucontainer.ngsummary.d.ts +1 -1
  41. package/controls/contextmenu/contextmenuitembutton.d.ts +19 -17
  42. package/controls/contextmenu/contextmenuitembutton.d.ts.map +1 -1
  43. package/controls/contextmenu/contextmenuitembutton.ngfactory.d.ts +3 -3
  44. package/controls/contextmenu/contextmenuitembutton.ngsummary.d.ts +1 -1
  45. package/controls/contextmenu/contextmenuitemsplitter.d.ts +9 -9
  46. package/controls/contextmenu/contextmenuitemsplitter.ngfactory.d.ts +3 -3
  47. package/controls/contextmenu/contextmenuitemsplitter.ngsummary.d.ts +1 -1
  48. package/controls/datetime/date.d.ts +16 -16
  49. package/controls/datetime/date.ngfactory.d.ts +3 -3
  50. package/controls/datetime/date.ngsummary.d.ts +1 -1
  51. package/controls/datetime/dateselector.d.ts +6 -6
  52. package/controls/datetime/dateselector.ngfactory.d.ts +3 -3
  53. package/controls/datetime/dateselector.ngsummary.d.ts +1 -1
  54. package/controls/datetime/datetime.d.ts +16 -16
  55. package/controls/datetime/datetime.module.d.ts +14 -14
  56. package/controls/datetime/datetime.module.ngfactory.d.ts +3 -3
  57. package/controls/datetime/datetime.module.ngsummary.d.ts +1 -1
  58. package/controls/datetime/datetime.ngfactory.d.ts +3 -3
  59. package/controls/datetime/datetime.ngsummary.d.ts +1 -1
  60. package/controls/datetime/time.d.ts +16 -16
  61. package/controls/datetime/time.ngfactory.d.ts +3 -3
  62. package/controls/datetime/time.ngsummary.d.ts +1 -1
  63. package/controls/dialog/dialog.d.ts +14 -14
  64. package/controls/dialog/dialog.module.d.ts +8 -8
  65. package/controls/dialog/dialog.module.ngfactory.d.ts +3 -3
  66. package/controls/dialog/dialog.module.ngsummary.d.ts +1 -1
  67. package/controls/dialog/dialog.ngfactory.d.ts +3 -3
  68. package/controls/dialog/dialog.ngsummary.d.ts +1 -1
  69. package/controls/form/form.d.ts +31 -31
  70. package/controls/form/form.module.d.ts +10 -10
  71. package/controls/form/form.module.ngfactory.d.ts +3 -3
  72. package/controls/form/form.module.ngsummary.d.ts +1 -1
  73. package/controls/form/form.ngfactory.d.ts +3 -3
  74. package/controls/form/form.ngsummary.d.ts +1 -1
  75. package/controls/form/inheritform.directive.d.ts +27 -27
  76. package/controls/form/inheritform.directive.ngfactory.d.ts +3 -3
  77. package/controls/form/inheritform.directive.ngsummary.d.ts +1 -1
  78. package/controls/grid/grid.d.ts +9 -9
  79. package/controls/grid/grid.module.d.ts +14 -14
  80. package/controls/grid/grid.module.ngfactory.d.ts +3 -3
  81. package/controls/grid/grid.module.ngsummary.d.ts +1 -1
  82. package/controls/grid/grid.ngfactory.d.ts +3 -3
  83. package/controls/grid/grid.ngsummary.d.ts +1 -1
  84. package/controls/grid/gridbutton.d.ts +13 -13
  85. package/controls/grid/gridbutton.ngfactory.d.ts +3 -3
  86. package/controls/grid/gridbutton.ngsummary.d.ts +1 -1
  87. package/controls/grid/gridcolumn.d.ts +9 -9
  88. package/controls/grid/gridcolumn.ngfactory.d.ts +3 -3
  89. package/controls/grid/gridcolumn.ngsummary.d.ts +1 -1
  90. package/controls/grid/gridcolumnaction.d.ts +9 -9
  91. package/controls/grid/gridcolumnaction.ngfactory.d.ts +3 -3
  92. package/controls/grid/gridcolumnaction.ngsummary.d.ts +1 -1
  93. package/controls/grid/gridimage.d.ts +7 -7
  94. package/controls/grid/gridimage.ngfactory.d.ts +3 -3
  95. package/controls/grid/gridimage.ngsummary.d.ts +1 -1
  96. package/controls/grid/paging.d.ts +11 -11
  97. package/controls/grid/paging.ngfactory.d.ts +3 -3
  98. package/controls/grid/paging.ngsummary.d.ts +1 -1
  99. package/controls/input/input.d.ts +14 -14
  100. package/controls/input/input.module.d.ts +18 -18
  101. package/controls/input/input.module.ngfactory.d.ts +3 -3
  102. package/controls/input/input.module.ngsummary.d.ts +1 -1
  103. package/controls/input/input.ngfactory.d.ts +3 -3
  104. package/controls/input/input.ngsummary.d.ts +1 -1
  105. package/controls/input/inputarea.d.ts +26 -26
  106. package/controls/input/inputarea.ngfactory.d.ts +3 -3
  107. package/controls/input/inputarea.ngsummary.d.ts +1 -1
  108. package/controls/input/inputcurrency.d.ts +14 -14
  109. package/controls/input/inputcurrency.ngfactory.d.ts +3 -3
  110. package/controls/input/inputcurrency.ngsummary.d.ts +1 -1
  111. package/controls/input/inputdecimal.d.ts +14 -14
  112. package/controls/input/inputdecimal.ngfactory.d.ts +3 -3
  113. package/controls/input/inputdecimal.ngsummary.d.ts +1 -1
  114. package/controls/input/inputemail.d.ts +14 -14
  115. package/controls/input/inputemail.ngfactory.d.ts +3 -3
  116. package/controls/input/inputemail.ngsummary.d.ts +1 -1
  117. package/controls/input/inputinteger.d.ts +14 -14
  118. package/controls/input/inputinteger.ngfactory.d.ts +3 -3
  119. package/controls/input/inputinteger.ngsummary.d.ts +1 -1
  120. package/controls/input/inputpassword.d.ts +14 -14
  121. package/controls/input/inputpassword.ngfactory.d.ts +3 -3
  122. package/controls/input/inputpassword.ngsummary.d.ts +1 -1
  123. package/controls/input/inputsearch.d.ts +14 -14
  124. package/controls/input/inputsearch.ngfactory.d.ts +3 -3
  125. package/controls/input/inputsearch.ngsummary.d.ts +1 -1
  126. package/controls/layout/formlayout.directive.d.ts +6 -6
  127. package/controls/layout/formlayout.directive.ngfactory.d.ts +3 -3
  128. package/controls/layout/formlayout.directive.ngsummary.d.ts +1 -1
  129. package/controls/layout/layout.module.d.ts +12 -12
  130. package/controls/layout/layout.module.ngfactory.d.ts +3 -3
  131. package/controls/layout/layout.module.ngsummary.d.ts +1 -1
  132. package/controls/layout/tocontrolheight.pipe.d.ts +12 -12
  133. package/controls/layout/tocontrolheight.pipe.ngfactory.d.ts +3 -3
  134. package/controls/layout/tocontrolheight.pipe.ngsummary.d.ts +1 -1
  135. package/controls/layout/tocontrolwidthcss.pipe.d.ts +19 -19
  136. package/controls/layout/tocontrolwidthcss.pipe.ngfactory.d.ts +3 -3
  137. package/controls/layout/tocontrolwidthcss.pipe.ngsummary.d.ts +1 -1
  138. package/controls/layout/tolabelheight.pipe.d.ts +12 -12
  139. package/controls/layout/tolabelheight.pipe.ngfactory.d.ts +3 -3
  140. package/controls/layout/tolabelheight.pipe.ngsummary.d.ts +1 -1
  141. package/controls/layout/tolabelwidthcss.pipe.d.ts +13 -13
  142. package/controls/layout/tolabelwidthcss.pipe.ngfactory.d.ts +3 -3
  143. package/controls/layout/tolabelwidthcss.pipe.ngsummary.d.ts +1 -1
  144. package/controls/list/dropdown.d.ts +27 -27
  145. package/controls/list/dropdown.ngfactory.d.ts +4 -4
  146. package/controls/list/dropdown.ngsummary.d.ts +2 -2
  147. package/controls/list/list.module.d.ts +13 -13
  148. package/controls/list/list.module.ngfactory.d.ts +3 -3
  149. package/controls/list/list.module.ngsummary.d.ts +1 -1
  150. package/controls/list/listbox.d.ts +14 -14
  151. package/controls/list/listbox.ngfactory.d.ts +3 -3
  152. package/controls/list/listbox.ngsummary.d.ts +1 -1
  153. package/controls/static/formcontainer.d.ts +28 -28
  154. package/controls/static/formcontainer.ngfactory.d.ts +3 -3
  155. package/controls/static/formcontainer.ngsummary.d.ts +1 -1
  156. package/controls/static/staticlabel.d.ts +14 -14
  157. package/controls/static/staticlabel.module.d.ts +11 -11
  158. package/controls/static/staticlabel.module.ngfactory.d.ts +3 -3
  159. package/controls/static/staticlabel.module.ngsummary.d.ts +1 -1
  160. package/controls/static/staticlabel.ngfactory.d.ts +3 -3
  161. package/controls/static/staticlabel.ngsummary.d.ts +1 -1
  162. package/controls/tabs/tab.d.ts +10 -10
  163. package/controls/tabs/tab.ngfactory.d.ts +3 -3
  164. package/controls/tabs/tab.ngsummary.d.ts +1 -1
  165. package/controls/tabs/tabitem.d.ts +6 -6
  166. package/controls/tabs/tabitem.ngfactory.d.ts +3 -3
  167. package/controls/tabs/tabitem.ngsummary.d.ts +1 -1
  168. package/controls/tabs/tabs.module.d.ts +9 -9
  169. package/controls/tabs/tabs.module.ngfactory.d.ts +3 -3
  170. package/controls/tabs/tabs.module.ngsummary.d.ts +1 -1
  171. package/controls/tinymce/tinymce.d.ts +23 -23
  172. package/controls/tinymce/tinymce.module.d.ts +14 -14
  173. package/controls/tinymce/tinymce.module.ngfactory.d.ts +3 -3
  174. package/controls/tinymce/tinymce.module.ngsummary.d.ts +1 -1
  175. package/controls/tinymce/tinymce.ngfactory.d.ts +3 -3
  176. package/controls/tinymce/tinymce.ngsummary.d.ts +1 -1
  177. package/controls/tooltip/tooltip.d.ts +37 -37
  178. package/controls/tooltip/tooltip.module.d.ts +8 -8
  179. package/controls/tooltip/tooltip.module.ngfactory.d.ts +3 -3
  180. package/controls/tooltip/tooltip.module.ngsummary.d.ts +1 -1
  181. package/controls/tooltip/tooltip.ngfactory.d.ts +3 -3
  182. package/controls/tooltip/tooltip.ngsummary.d.ts +1 -1
  183. package/controls/treeview/treeview.d.ts +17 -17
  184. package/controls/treeview/treeview.module.d.ts +11 -11
  185. package/controls/treeview/treeview.module.ngfactory.d.ts +3 -3
  186. package/controls/treeview/treeview.module.ngsummary.d.ts +1 -1
  187. package/controls/treeview/treeview.ngfactory.d.ts +3 -3
  188. package/controls/treeview/treeview.ngsummary.d.ts +1 -1
  189. package/controls/upload/dropzonemultiple.d.ts +24 -24
  190. package/controls/upload/dropzonemultiple.ngfactory.d.ts +3 -3
  191. package/controls/upload/dropzonemultiple.ngsummary.d.ts +1 -1
  192. package/controls/upload/dropzonesingle.d.ts +24 -24
  193. package/controls/upload/dropzonesingle.ngfactory.d.ts +3 -3
  194. package/controls/upload/dropzonesingle.ngsummary.d.ts +1 -1
  195. package/controls/upload/upload.d.ts +16 -16
  196. package/controls/upload/upload.module.d.ts +14 -14
  197. package/controls/upload/upload.module.ngfactory.d.ts +3 -3
  198. package/controls/upload/upload.module.ngsummary.d.ts +1 -1
  199. package/controls/upload/upload.ngfactory.d.ts +3 -3
  200. package/controls/upload/upload.ngsummary.d.ts +1 -1
  201. package/controls/upload/uploadmultiple.d.ts +16 -16
  202. package/controls/upload/uploadmultiple.ngfactory.d.ts +3 -3
  203. package/controls/upload/uploadmultiple.ngsummary.d.ts +1 -1
  204. package/controls/validation/validationsummary.d.ts +14 -14
  205. package/controls/validation/validationsummary.module.d.ts +8 -8
  206. package/controls/validation/validationsummary.module.ngfactory.d.ts +3 -3
  207. package/controls/validation/validationsummary.module.ngsummary.d.ts +1 -1
  208. package/controls/validation/validationsummary.ngfactory.d.ts +3 -3
  209. package/controls/validation/validationsummary.ngsummary.d.ts +1 -1
  210. package/controls/wizard/wizard.d.ts +10 -10
  211. package/controls/wizard/wizard.module.d.ts +9 -9
  212. package/controls/wizard/wizard.module.ngfactory.d.ts +3 -3
  213. package/controls/wizard/wizard.module.ngsummary.d.ts +1 -1
  214. package/controls/wizard/wizard.ngfactory.d.ts +3 -3
  215. package/controls/wizard/wizard.ngsummary.d.ts +1 -1
  216. package/controls/wizard/wizarditem.d.ts +6 -6
  217. package/controls/wizard/wizarditem.ngfactory.d.ts +3 -3
  218. package/controls/wizard/wizarditem.ngsummary.d.ts +1 -1
  219. package/esm2020/controls/buttons/button.mjs +13 -13
  220. package/esm2020/controls/buttons/button.module.mjs +22 -22
  221. package/esm2020/controls/buttons/button.module.ngfactory.mjs +3 -3
  222. package/esm2020/controls/buttons/button.module.ngsummary.mjs +1 -1
  223. package/esm2020/controls/buttons/button.ngfactory.mjs +3 -3
  224. package/esm2020/controls/buttons/button.ngsummary.mjs +1 -1
  225. package/esm2020/controls/checkbox/checkbox.mjs +54 -54
  226. package/esm2020/controls/checkbox/checkbox.module.mjs +44 -44
  227. package/esm2020/controls/checkbox/checkbox.module.ngfactory.mjs +3 -3
  228. package/esm2020/controls/checkbox/checkbox.module.ngsummary.mjs +1 -1
  229. package/esm2020/controls/checkbox/checkbox.ngfactory.mjs +3 -3
  230. package/esm2020/controls/checkbox/checkbox.ngsummary.mjs +1 -1
  231. package/esm2020/controls/checkbox/radiobutton.mjs +26 -26
  232. package/esm2020/controls/checkbox/radiobutton.ngfactory.mjs +3 -3
  233. package/esm2020/controls/checkbox/radiobutton.ngsummary.mjs +1 -1
  234. package/esm2020/controls/checkbox/radiobuttons.mjs +54 -54
  235. package/esm2020/controls/checkbox/radiobuttons.ngfactory.mjs +3 -3
  236. package/esm2020/controls/checkbox/radiobuttons.ngsummary.mjs +1 -1
  237. package/esm2020/controls/confirm/confirm.mjs +15 -15
  238. package/esm2020/controls/confirm/confirm.module.mjs +34 -34
  239. package/esm2020/controls/confirm/confirm.module.ngfactory.mjs +3 -3
  240. package/esm2020/controls/confirm/confirm.module.ngsummary.mjs +1 -1
  241. package/esm2020/controls/confirm/confirm.ngfactory.mjs +3 -3
  242. package/esm2020/controls/confirm/confirm.ngsummary.mjs +1 -1
  243. package/esm2020/controls/confirm/confirm.service.mjs +103 -103
  244. package/esm2020/controls/confirm/confirm.service.ngfactory.mjs +3 -3
  245. package/esm2020/controls/confirm/confirm.service.ngsummary.mjs +1 -1
  246. package/esm2020/controls/contextmenu/contextmenu.mjs +34 -34
  247. package/esm2020/controls/contextmenu/contextmenu.module.mjs +40 -40
  248. package/esm2020/controls/contextmenu/contextmenu.module.ngfactory.mjs +3 -3
  249. package/esm2020/controls/contextmenu/contextmenu.module.ngsummary.mjs +1 -1
  250. package/esm2020/controls/contextmenu/contextmenu.ngfactory.mjs +3 -3
  251. package/esm2020/controls/contextmenu/contextmenu.ngsummary.mjs +1 -1
  252. package/esm2020/controls/contextmenu/contextmenuanchor.mjs +36 -36
  253. package/esm2020/controls/contextmenu/contextmenuanchor.ngfactory.mjs +3 -3
  254. package/esm2020/controls/contextmenu/contextmenuanchor.ngsummary.mjs +1 -1
  255. package/esm2020/controls/contextmenu/contextmenucontainer.mjs +36 -36
  256. package/esm2020/controls/contextmenu/contextmenucontainer.ngfactory.mjs +3 -3
  257. package/esm2020/controls/contextmenu/contextmenucontainer.ngsummary.mjs +1 -1
  258. package/esm2020/controls/contextmenu/contextmenuitembutton.mjs +54 -45
  259. package/esm2020/controls/contextmenu/contextmenuitembutton.ngfactory.mjs +3 -3
  260. package/esm2020/controls/contextmenu/contextmenuitembutton.ngsummary.mjs +1 -1
  261. package/esm2020/controls/contextmenu/contextmenuitemsplitter.mjs +25 -25
  262. package/esm2020/controls/contextmenu/contextmenuitemsplitter.ngfactory.mjs +3 -3
  263. package/esm2020/controls/contextmenu/contextmenuitemsplitter.ngsummary.mjs +1 -1
  264. package/esm2020/controls/datetime/date.mjs +64 -64
  265. package/esm2020/controls/datetime/date.ngfactory.mjs +3 -3
  266. package/esm2020/controls/datetime/date.ngsummary.mjs +1 -1
  267. package/esm2020/controls/datetime/dateselector.mjs +13 -13
  268. package/esm2020/controls/datetime/dateselector.ngfactory.mjs +3 -3
  269. package/esm2020/controls/datetime/dateselector.ngsummary.mjs +1 -1
  270. package/esm2020/controls/datetime/datetime.mjs +59 -59
  271. package/esm2020/controls/datetime/datetime.module.mjs +53 -53
  272. package/esm2020/controls/datetime/datetime.module.ngfactory.mjs +3 -3
  273. package/esm2020/controls/datetime/datetime.module.ngsummary.mjs +1 -1
  274. package/esm2020/controls/datetime/datetime.ngfactory.mjs +3 -3
  275. package/esm2020/controls/datetime/datetime.ngsummary.mjs +1 -1
  276. package/esm2020/controls/datetime/time.mjs +59 -59
  277. package/esm2020/controls/datetime/time.ngfactory.mjs +3 -3
  278. package/esm2020/controls/datetime/time.ngsummary.mjs +1 -1
  279. package/esm2020/controls/dialog/dialog.mjs +48 -48
  280. package/esm2020/controls/dialog/dialog.module.mjs +22 -22
  281. package/esm2020/controls/dialog/dialog.module.ngfactory.mjs +3 -3
  282. package/esm2020/controls/dialog/dialog.module.ngsummary.mjs +1 -1
  283. package/esm2020/controls/dialog/dialog.ngfactory.mjs +3 -3
  284. package/esm2020/controls/dialog/dialog.ngsummary.mjs +1 -1
  285. package/esm2020/controls/form/form.mjs +52 -52
  286. package/esm2020/controls/form/form.module.mjs +20 -20
  287. package/esm2020/controls/form/form.module.ngfactory.mjs +3 -3
  288. package/esm2020/controls/form/form.module.ngsummary.mjs +1 -1
  289. package/esm2020/controls/form/form.ngfactory.mjs +3 -3
  290. package/esm2020/controls/form/form.ngsummary.mjs +1 -1
  291. package/esm2020/controls/form/inheritform.directive.mjs +68 -68
  292. package/esm2020/controls/form/inheritform.directive.ngfactory.mjs +3 -3
  293. package/esm2020/controls/form/inheritform.directive.ngsummary.mjs +1 -1
  294. package/esm2020/controls/grid/grid.mjs +28 -28
  295. package/esm2020/controls/grid/grid.module.mjs +48 -48
  296. package/esm2020/controls/grid/grid.module.ngfactory.mjs +3 -3
  297. package/esm2020/controls/grid/grid.module.ngsummary.mjs +1 -1
  298. package/esm2020/controls/grid/grid.ngfactory.mjs +3 -3
  299. package/esm2020/controls/grid/grid.ngsummary.mjs +1 -1
  300. package/esm2020/controls/grid/gridbutton.mjs +40 -40
  301. package/esm2020/controls/grid/gridbutton.ngfactory.mjs +3 -3
  302. package/esm2020/controls/grid/gridbutton.ngsummary.mjs +1 -1
  303. package/esm2020/controls/grid/gridcolumn.mjs +27 -27
  304. package/esm2020/controls/grid/gridcolumn.ngfactory.mjs +3 -3
  305. package/esm2020/controls/grid/gridcolumn.ngsummary.mjs +1 -1
  306. package/esm2020/controls/grid/gridcolumnaction.mjs +28 -28
  307. package/esm2020/controls/grid/gridcolumnaction.ngfactory.mjs +3 -3
  308. package/esm2020/controls/grid/gridcolumnaction.ngsummary.mjs +1 -1
  309. package/esm2020/controls/grid/gridimage.mjs +22 -22
  310. package/esm2020/controls/grid/gridimage.ngfactory.mjs +3 -3
  311. package/esm2020/controls/grid/gridimage.ngsummary.mjs +1 -1
  312. package/esm2020/controls/grid/paging.mjs +25 -25
  313. package/esm2020/controls/grid/paging.ngfactory.mjs +3 -3
  314. package/esm2020/controls/grid/paging.ngsummary.mjs +1 -1
  315. package/esm2020/controls/input/input.mjs +47 -47
  316. package/esm2020/controls/input/input.module.mjs +76 -76
  317. package/esm2020/controls/input/input.module.ngfactory.mjs +3 -3
  318. package/esm2020/controls/input/input.module.ngsummary.mjs +1 -1
  319. package/esm2020/controls/input/input.ngfactory.mjs +3 -3
  320. package/esm2020/controls/input/input.ngsummary.mjs +1 -1
  321. package/esm2020/controls/input/inputarea.mjs +67 -67
  322. package/esm2020/controls/input/inputarea.ngfactory.mjs +3 -3
  323. package/esm2020/controls/input/inputarea.ngsummary.mjs +1 -1
  324. package/esm2020/controls/input/inputcurrency.mjs +55 -55
  325. package/esm2020/controls/input/inputcurrency.ngfactory.mjs +3 -3
  326. package/esm2020/controls/input/inputcurrency.ngsummary.mjs +1 -1
  327. package/esm2020/controls/input/inputdecimal.mjs +55 -55
  328. package/esm2020/controls/input/inputdecimal.ngfactory.mjs +3 -3
  329. package/esm2020/controls/input/inputdecimal.ngsummary.mjs +1 -1
  330. package/esm2020/controls/input/inputemail.mjs +55 -55
  331. package/esm2020/controls/input/inputemail.ngfactory.mjs +3 -3
  332. package/esm2020/controls/input/inputemail.ngsummary.mjs +1 -1
  333. package/esm2020/controls/input/inputinteger.mjs +55 -55
  334. package/esm2020/controls/input/inputinteger.ngfactory.mjs +3 -3
  335. package/esm2020/controls/input/inputinteger.ngsummary.mjs +1 -1
  336. package/esm2020/controls/input/inputpassword.mjs +55 -55
  337. package/esm2020/controls/input/inputpassword.ngfactory.mjs +3 -3
  338. package/esm2020/controls/input/inputpassword.ngsummary.mjs +1 -1
  339. package/esm2020/controls/input/inputsearch.mjs +55 -55
  340. package/esm2020/controls/input/inputsearch.ngfactory.mjs +3 -3
  341. package/esm2020/controls/input/inputsearch.ngsummary.mjs +1 -1
  342. package/esm2020/controls/layout/formlayout.directive.mjs +14 -14
  343. package/esm2020/controls/layout/formlayout.directive.ngfactory.mjs +3 -3
  344. package/esm2020/controls/layout/formlayout.directive.ngsummary.mjs +1 -1
  345. package/esm2020/controls/layout/layout.module.mjs +42 -42
  346. package/esm2020/controls/layout/layout.module.ngfactory.mjs +3 -3
  347. package/esm2020/controls/layout/layout.module.ngsummary.mjs +1 -1
  348. package/esm2020/controls/layout/tocontrolheight.pipe.mjs +33 -33
  349. package/esm2020/controls/layout/tocontrolheight.pipe.ngfactory.mjs +3 -3
  350. package/esm2020/controls/layout/tocontrolheight.pipe.ngsummary.mjs +1 -1
  351. package/esm2020/controls/layout/tocontrolwidthcss.pipe.mjs +51 -51
  352. package/esm2020/controls/layout/tocontrolwidthcss.pipe.ngfactory.mjs +3 -3
  353. package/esm2020/controls/layout/tocontrolwidthcss.pipe.ngsummary.mjs +1 -1
  354. package/esm2020/controls/layout/tolabelheight.pipe.mjs +33 -33
  355. package/esm2020/controls/layout/tolabelheight.pipe.ngfactory.mjs +3 -3
  356. package/esm2020/controls/layout/tolabelheight.pipe.ngsummary.mjs +1 -1
  357. package/esm2020/controls/layout/tolabelwidthcss.pipe.mjs +35 -35
  358. package/esm2020/controls/layout/tolabelwidthcss.pipe.ngfactory.mjs +3 -3
  359. package/esm2020/controls/layout/tolabelwidthcss.pipe.ngsummary.mjs +1 -1
  360. package/esm2020/controls/list/dropdown.mjs +81 -81
  361. package/esm2020/controls/list/dropdown.ngfactory.mjs +3 -3
  362. package/esm2020/controls/list/dropdown.ngsummary.mjs +2 -2
  363. package/esm2020/controls/list/list.module.mjs +51 -51
  364. package/esm2020/controls/list/list.module.ngfactory.mjs +3 -3
  365. package/esm2020/controls/list/list.module.ngsummary.mjs +1 -1
  366. package/esm2020/controls/list/listbox.mjs +59 -59
  367. package/esm2020/controls/list/listbox.ngfactory.mjs +3 -3
  368. package/esm2020/controls/list/listbox.ngsummary.mjs +1 -1
  369. package/esm2020/controls/static/formcontainer.mjs +68 -68
  370. package/esm2020/controls/static/formcontainer.ngfactory.mjs +3 -3
  371. package/esm2020/controls/static/formcontainer.ngsummary.mjs +1 -1
  372. package/esm2020/controls/static/staticlabel.mjs +54 -54
  373. package/esm2020/controls/static/staticlabel.module.mjs +31 -31
  374. package/esm2020/controls/static/staticlabel.module.ngfactory.mjs +3 -3
  375. package/esm2020/controls/static/staticlabel.module.ngsummary.mjs +1 -1
  376. package/esm2020/controls/static/staticlabel.ngfactory.mjs +3 -3
  377. package/esm2020/controls/static/staticlabel.ngsummary.mjs +1 -1
  378. package/esm2020/controls/tabs/tab.mjs +20 -20
  379. package/esm2020/controls/tabs/tab.ngfactory.mjs +3 -3
  380. package/esm2020/controls/tabs/tab.ngsummary.mjs +1 -1
  381. package/esm2020/controls/tabs/tabitem.mjs +13 -13
  382. package/esm2020/controls/tabs/tabitem.ngfactory.mjs +3 -3
  383. package/esm2020/controls/tabs/tabitem.ngsummary.mjs +1 -1
  384. package/esm2020/controls/tabs/tabs.module.mjs +23 -23
  385. package/esm2020/controls/tabs/tabs.module.ngfactory.mjs +3 -3
  386. package/esm2020/controls/tabs/tabs.module.ngsummary.mjs +1 -1
  387. package/esm2020/controls/tinymce/tinymce.mjs +68 -68
  388. package/esm2020/controls/tinymce/tinymce.module.mjs +46 -46
  389. package/esm2020/controls/tinymce/tinymce.module.ngfactory.mjs +3 -3
  390. package/esm2020/controls/tinymce/tinymce.module.ngsummary.mjs +1 -1
  391. package/esm2020/controls/tinymce/tinymce.ngfactory.mjs +3 -3
  392. package/esm2020/controls/tinymce/tinymce.ngsummary.mjs +1 -1
  393. package/esm2020/controls/tooltip/tooltip.mjs +50 -50
  394. package/esm2020/controls/tooltip/tooltip.module.mjs +18 -18
  395. package/esm2020/controls/tooltip/tooltip.module.ngfactory.mjs +3 -3
  396. package/esm2020/controls/tooltip/tooltip.module.ngsummary.mjs +1 -1
  397. package/esm2020/controls/tooltip/tooltip.ngfactory.mjs +3 -3
  398. package/esm2020/controls/tooltip/tooltip.ngsummary.mjs +1 -1
  399. package/esm2020/controls/treeview/treeview.mjs +56 -56
  400. package/esm2020/controls/treeview/treeview.module.mjs +21 -21
  401. package/esm2020/controls/treeview/treeview.module.ngfactory.mjs +3 -3
  402. package/esm2020/controls/treeview/treeview.module.ngsummary.mjs +1 -1
  403. package/esm2020/controls/treeview/treeview.ngfactory.mjs +3 -3
  404. package/esm2020/controls/treeview/treeview.ngsummary.mjs +1 -1
  405. package/esm2020/controls/upload/dropzonemultiple.mjs +68 -68
  406. package/esm2020/controls/upload/dropzonemultiple.ngfactory.mjs +3 -3
  407. package/esm2020/controls/upload/dropzonemultiple.ngsummary.mjs +1 -1
  408. package/esm2020/controls/upload/dropzonesingle.mjs +68 -68
  409. package/esm2020/controls/upload/dropzonesingle.ngfactory.mjs +3 -3
  410. package/esm2020/controls/upload/dropzonesingle.ngsummary.mjs +1 -1
  411. package/esm2020/controls/upload/upload.mjs +57 -57
  412. package/esm2020/controls/upload/upload.module.mjs +32 -32
  413. package/esm2020/controls/upload/upload.module.ngfactory.mjs +3 -3
  414. package/esm2020/controls/upload/upload.module.ngsummary.mjs +1 -1
  415. package/esm2020/controls/upload/upload.ngfactory.mjs +3 -3
  416. package/esm2020/controls/upload/upload.ngsummary.mjs +1 -1
  417. package/esm2020/controls/upload/uploadmultiple.mjs +57 -57
  418. package/esm2020/controls/upload/uploadmultiple.ngfactory.mjs +3 -3
  419. package/esm2020/controls/upload/uploadmultiple.ngsummary.mjs +1 -1
  420. package/esm2020/controls/validation/validationsummary.mjs +41 -41
  421. package/esm2020/controls/validation/validationsummary.module.mjs +22 -22
  422. package/esm2020/controls/validation/validationsummary.module.ngfactory.mjs +3 -3
  423. package/esm2020/controls/validation/validationsummary.module.ngsummary.mjs +1 -1
  424. package/esm2020/controls/validation/validationsummary.ngfactory.mjs +3 -3
  425. package/esm2020/controls/validation/validationsummary.ngsummary.mjs +1 -1
  426. package/esm2020/controls/wizard/wizard.mjs +25 -25
  427. package/esm2020/controls/wizard/wizard.module.mjs +23 -23
  428. package/esm2020/controls/wizard/wizard.module.ngfactory.mjs +3 -3
  429. package/esm2020/controls/wizard/wizard.module.ngsummary.mjs +1 -1
  430. package/esm2020/controls/wizard/wizard.ngfactory.mjs +3 -3
  431. package/esm2020/controls/wizard/wizard.ngsummary.mjs +1 -1
  432. package/esm2020/controls/wizard/wizarditem.mjs +12 -12
  433. package/esm2020/controls/wizard/wizarditem.ngfactory.mjs +3 -3
  434. package/esm2020/controls/wizard/wizarditem.ngsummary.mjs +1 -1
  435. package/esm2020/public_api.mjs +76 -76
  436. package/esm2020/public_api.ngfactory.mjs +1 -1
  437. package/esm2020/public_api.ngsummary.mjs +1 -1
  438. package/esm2020/simpleangularcontrols-sac-bootstrap3.mjs +4 -4
  439. package/fesm2015/simpleangularcontrols-sac-bootstrap3.mjs +2447 -2438
  440. package/fesm2015/simpleangularcontrols-sac-bootstrap3.mjs.map +1 -1
  441. package/fesm2020/simpleangularcontrols-sac-bootstrap3.mjs +2391 -2382
  442. package/fesm2020/simpleangularcontrols-sac-bootstrap3.mjs.map +1 -1
  443. package/package.json +43 -43
  444. package/public_api.d.ts +70 -70
  445. package/public_api.ngfactory.d.ts +1 -1
  446. package/public_api.ngsummary.d.ts +1 -1
  447. package/simpleangularcontrols-sac-bootstrap3-13.0.0-rc.15.tgz +0 -0
  448. package/simpleangularcontrols-sac-bootstrap3.d.ts +5 -5
  449. package/simpleangularcontrols-sac-bootstrap3-13.0.0-rc.13.tgz +0 -0
@@ -1,57 +1,57 @@
1
- import { Component, Host, Optional, forwardRef, } from '@angular/core';
2
- import { NG_VALIDATORS, NG_VALUE_ACCESSOR } from '@angular/forms';
3
- import { SacUploadMultipleCommon } from '@simpleangularcontrols/sac-common';
4
- import * as i0 from "@angular/core";
5
- import * as i1 from "../layout/formlayout.directive";
6
- import * as i2 from "../tooltip/tooltip";
7
- import * as i3 from "@angular/common";
8
- import * as i4 from "../layout/tolabelheight.pipe";
9
- import * as i5 from "../layout/tolabelwidthcss.pipe";
10
- import * as i6 from "../layout/tocontrolwidthcss.pipe";
11
- // https://github.com/kukhariev/ngx-uploadx/
12
- export class SacUploadMultipleComponent extends SacUploadMultipleCommon {
13
- // #region Constructors
14
- /**
15
- * Constructor
16
- * @param formLayout SacFormLayout to define scoped layout settings
17
- * @param injector Injector for injecting services
18
- * @param renderer Angular rendering engine
19
- * @param ngZone ngZone to manage external javascripts
20
- */
21
- constructor(formLayout, injector, renderer, ngZone) {
22
- super(formLayout, injector, renderer, ngZone);
23
- }
24
- }
25
- SacUploadMultipleComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacUploadMultipleComponent, deps: [{ token: i1.SacFormLayoutDirective, host: true, optional: true }, { token: i0.Injector }, { token: i0.Renderer2 }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
26
- SacUploadMultipleComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.7", type: SacUploadMultipleComponent, selector: "sac-uploadmultiple", providers: [
27
- {
28
- provide: NG_VALUE_ACCESSOR,
29
- multi: true,
30
- useExisting: SacUploadMultipleComponent,
31
- },
32
- {
33
- provide: NG_VALIDATORS,
34
- multi: true,
35
- useExisting: forwardRef(() => SacUploadMultipleComponent),
36
- },
37
- ], usesInheritance: true, ngImport: i0, template: "<div\r\n id=\"{{ name }}\"\r\n class=\"row form-group\"\r\n [class.has-error]=\"invalid && (dirty || touched)\"\r\n [ngClass]=\"componentHeight | toLabelHeight\">\r\n <label\r\n *ngIf=\"disablelabel === false && !isAdaptiveLabel\"\r\n id=\"{{ name }}label\"\r\n for=\"{{ name }}_uploadinput\"\r\n class=\"col-xs-12 control-label\"\r\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toLabelWidthCss) : 'sr-only']\"\r\n [class.required]=\"isrequired\">\r\n <span class=\"text\">{{ label }}</span>\r\n <sac-tooltip\r\n *ngIf=\"helptextmode === 'tooltip' && helptext\"\r\n [tooltiptext]=\"helptext\"\r\n [inlinemode]=\"true\">\r\n <span\r\n [class]=\"HelptextTooltipIcon\"\r\n style=\"margin-left: 5px\">\r\n </span>\r\n </sac-tooltip>\r\n </label>\r\n <div\r\n class=\"col-xs-12\"\r\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toControlWidthCss) : '']\">\r\n <div class=\"upload-component\">\r\n <div class=\"row\">\r\n <div\r\n class=\"col-xs-12\"\r\n [style.display]=\"helptextmode === 'tooltip' && helptext && disablelabel ? 'flex' : null\">\r\n <div\r\n class=\"btn-group\"\r\n [class.btn-group-sm]=\"componentHeight === ControlHeight.Small\"\r\n [class.btn-group-lg]=\"componentHeight === ControlHeight.Large\">\r\n <div\r\n class=\"btn upload-input custom-file\"\r\n [class.disabled]=\"maxfiles > 0 && uploads.length >= maxfiles\"\r\n [class.btn-default]=\"!(invalid && (dirty || touched))\"\r\n [class.btn-danger]=\"invalid && (dirty || touched)\">\r\n <i [class]=\"IconBrowse\"></i>\r\n <span class=\"upload-browse\">Browse</span>\r\n <input\r\n id=\"{{ name }}_uploadinput\"\r\n type=\"file\"\r\n class=\"custom-file-input\"\r\n #files\r\n (click)=\"files.value = ''\"\r\n (uploadxState)=\"onUpload($event)\"\r\n multiple\r\n [disabled]=\"maxfiles > 0 && uploads.length >= maxfiles\" />\r\n </div>\r\n\r\n <div\r\n class=\"btn-group\"\r\n [class.btn-group-sm]=\"componentHeight === ControlHeight.Small\"\r\n [class.btn-group-lg]=\"componentHeight === ControlHeight.Large\">\r\n <!-- image-preview-clear button -->\r\n <a\r\n class=\"btn\"\r\n (click)=\"cancelAll()\"\r\n [attr.disabled]=\"HasQueueItem() === false ? 'disabled' : null\"\r\n [class.btn-default]=\"!(invalid && (dirty || touched))\"\r\n [class.btn-danger]=\"invalid && (dirty || touched)\">\r\n <span [class]=\"IconDelete\"></span>\r\n </a>\r\n <a\r\n *ngIf=\"(autoupload === false && enablepause) || (autoupload && enablepause && IsPaused() === false)\"\r\n class=\"btn\"\r\n (click)=\"pauseAll()\"\r\n [attr.disabled]=\"IsUploading() === false ? 'disabled' : null\"\r\n [class.btn-default]=\"!(invalid && (dirty || touched))\"\r\n [class.btn-danger]=\"invalid && (dirty || touched)\">\r\n <span [class]=\"IconPause\"></span>\r\n </a>\r\n <a\r\n *ngIf=\"autoupload && enablepause && IsPaused() === true\"\r\n class=\"btn\"\r\n (click)=\"uploadAll()\"\r\n [class.btn-default]=\"!(invalid && (dirty || touched))\"\r\n [class.btn-danger]=\"invalid && (dirty || touched)\">\r\n <span [class]=\"IconContinue\"></span>\r\n </a>\r\n <a\r\n *ngIf=\"autoupload === false\"\r\n class=\"btn\"\r\n (click)=\"uploadAll()\"\r\n [attr.disabled]=\"IsStateToUpload() === false ? 'disabled' : null\"\r\n [class.btn-default]=\"!(invalid && (dirty || touched))\"\r\n [class.btn-danger]=\"invalid && (dirty || touched)\">\r\n <span [class]=\"IconUpload\"></span> {{ lngResourceService.GetString(validationKeyService.UploadButtonUpload) | async }}\r\n </a>\r\n </div>\r\n </div>\r\n\r\n <div\r\n *ngIf=\"helptextmode === 'tooltip' && helptext && disablelabel\"\r\n class=\"form-control-static\"\r\n style=\"margin-left: 5px\">\r\n <sac-tooltip\r\n *ngIf=\"helptextmode === 'tooltip' && helptext\"\r\n [tooltiptext]=\"helptext\"\r\n [inlinemode]=\"true\">\r\n <span\r\n [class]=\"HelptextTooltipIcon\"\r\n style=\"margin-left: 5px; margin-right: 5px\">\r\n </span>\r\n </sac-tooltip>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div\r\n *ngFor=\"let file of uploads\"\r\n style=\"margin-top: 5px\">\r\n <div\r\n class=\"input-group upload-component upload-multiple\"\r\n [class.input-group-sm]=\"componentHeight === ControlHeight.Small\"\r\n [class.input-group-lg]=\"componentHeight === ControlHeight.Large\">\r\n <div class=\"form-control upload-progress\">\r\n <div class=\"progress\">\r\n <div\r\n class=\"progress-bar\"\r\n [class.progress-bar-success]=\"file.progress === 100\"\r\n role=\"progressbar\"\r\n [attr.aria-valuenow]=\"file.progress\"\r\n aria-valuemin=\"0\"\r\n aria-valuemax=\"100\"\r\n [style.width.%]=\"file.progress\">\r\n <span class=\"progress-text text-dark\">{{ file.name }}</span>\r\n </div>\r\n </div>\r\n </div>\r\n <div\r\n class=\"input-group-btn\"\r\n [class.input-group-sm]=\"componentHeight === ControlHeight.Small\"\r\n [class.input-group-lg]=\"componentHeight === ControlHeight.Large\">\r\n <!-- image-preview-clear button -->\r\n <a\r\n class=\"btn\"\r\n (click)=\"cancel(file.uploadId)\"\r\n [class.btn-default]=\"!(invalid && (dirty || touched))\"\r\n [class.btn-danger]=\"invalid && (dirty || touched)\">\r\n <span [class]=\"IconDelete\"></span>\r\n </a>\r\n <a\r\n *ngIf=\"(autoupload === false && enablepause) || (autoupload && enablepause && file.status !== 'paused')\"\r\n class=\"btn\"\r\n (click)=\"pause(file.uploadId)\"\r\n [attr.disabled]=\"file.status !== 'uploading' ? 'disabled' : null\"\r\n [class.btn-default]=\"!(invalid && (dirty || touched))\"\r\n [class.btn-danger]=\"invalid && (dirty || touched)\">\r\n <span [class]=\"IconPause\"></span>\r\n </a>\r\n <a\r\n *ngIf=\"autoupload && enablepause && file.status === 'paused'\"\r\n class=\"btn\"\r\n (click)=\"upload(file.uploadId)\"\r\n [class.btn-default]=\"!(invalid && (dirty || touched))\"\r\n [class.btn-danger]=\"invalid && (dirty || touched)\">\r\n <span [class]=\"IconContinue\"></span>\r\n </a>\r\n <a\r\n *ngIf=\"autoupload === false\"\r\n class=\"btn\"\r\n (click)=\"upload(file.uploadId)\"\r\n [attr.disabled]=\"file.status !== 'added' && file.status !== 'paused' ? 'disabled' : null\"\r\n [class.btn-default]=\"!(invalid && (dirty || touched))\"\r\n [class.btn-danger]=\"invalid && (dirty || touched)\">\r\n <span [class]=\"IconUpload\"></span> {{ lngResourceService.GetString(validationKeyService.UploadButtonUpload) | async }}\r\n </a>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <p\r\n *ngIf=\"helptextmode === 'text' && helptext\"\r\n class=\"help-block\">\r\n {{ helptext }}\r\n </p>\r\n <div\r\n class=\"help-block help-block-error\"\r\n *ngIf=\"isinlineerrorenabled && invalid && (dirty || touched)\">\r\n {{ GetErrorMessage() | async }}\r\n </div>\r\n </div>\r\n</div>\r\n", styles: [".upload-component .upload-input{position:relative}.upload-component .custom-file>i{margin-right:15px}.upload-component .custom-file .custom-file-input{inset:0;position:absolute;overflow:hidden;z-index:2;width:100%;margin:0;display:inline-block;opacity:0}.upload-component.upload-multiple .upload-progress .progress{border-top-right-radius:0;border-bottom-right-radius:0}.upload-component.upload-single .upload-progress .progress{border-radius:0}.upload-component .upload-progress{padding:0}.upload-component .upload-progress .progress{height:100%}.upload-component .upload-progress .progress .progress-text{position:absolute;left:0;right:0;top:50%;transform:translateY(-50%);display:table-cell;line-height:34px;height:34px;color:#000}.dropzone{min-height:120px;width:100%;text-align:center;border-style:dashed;border-width:2px;padding-top:50px;padding-bottom:50px;position:relative}.dropzone.active{background-color:#add8e6}.dropzone .progress{border-radius:0}.dropzone .progress .progress-bar{display:flex;justify-content:center;text-align:center;flex-direction:column;border-top-right-radius:0;border-bottom-right-radius:0}.dropzone .progress .progress-bar .progress-text{position:absolute;left:0;right:0;top:50%;transform:translateY(-50%);display:table-cell;line-height:34px;height:34px;color:#000}.dropzone input[type=file]{position:absolute;inset:0;opacity:0;width:100%}.dropzone .dropzone-uploadstates{max-width:450px;margin-left:auto;margin-right:auto;margin-top:6px;width:80%}\n"], components: [{ type: i2.SacTooltipComponent, selector: "sac-tooltip" }], directives: [{ type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], pipes: { "toLabelHeight": i4.SacToLabelHeightPipe, "toLabelWidthCss": i5.SacToLabelWidthCssPipe, "toControlWidthCss": i6.SacToControlWidthCssPipe, "async": i3.AsyncPipe } });
38
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacUploadMultipleComponent, decorators: [{
39
- type: Component,
40
- args: [{ selector: 'sac-uploadmultiple', providers: [
41
- {
42
- provide: NG_VALUE_ACCESSOR,
43
- multi: true,
44
- useExisting: SacUploadMultipleComponent,
45
- },
46
- {
47
- provide: NG_VALIDATORS,
48
- multi: true,
49
- useExisting: forwardRef(() => SacUploadMultipleComponent),
50
- },
51
- ], template: "<div\r\n id=\"{{ name }}\"\r\n class=\"row form-group\"\r\n [class.has-error]=\"invalid && (dirty || touched)\"\r\n [ngClass]=\"componentHeight | toLabelHeight\">\r\n <label\r\n *ngIf=\"disablelabel === false && !isAdaptiveLabel\"\r\n id=\"{{ name }}label\"\r\n for=\"{{ name }}_uploadinput\"\r\n class=\"col-xs-12 control-label\"\r\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toLabelWidthCss) : 'sr-only']\"\r\n [class.required]=\"isrequired\">\r\n <span class=\"text\">{{ label }}</span>\r\n <sac-tooltip\r\n *ngIf=\"helptextmode === 'tooltip' && helptext\"\r\n [tooltiptext]=\"helptext\"\r\n [inlinemode]=\"true\">\r\n <span\r\n [class]=\"HelptextTooltipIcon\"\r\n style=\"margin-left: 5px\">\r\n </span>\r\n </sac-tooltip>\r\n </label>\r\n <div\r\n class=\"col-xs-12\"\r\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toControlWidthCss) : '']\">\r\n <div class=\"upload-component\">\r\n <div class=\"row\">\r\n <div\r\n class=\"col-xs-12\"\r\n [style.display]=\"helptextmode === 'tooltip' && helptext && disablelabel ? 'flex' : null\">\r\n <div\r\n class=\"btn-group\"\r\n [class.btn-group-sm]=\"componentHeight === ControlHeight.Small\"\r\n [class.btn-group-lg]=\"componentHeight === ControlHeight.Large\">\r\n <div\r\n class=\"btn upload-input custom-file\"\r\n [class.disabled]=\"maxfiles > 0 && uploads.length >= maxfiles\"\r\n [class.btn-default]=\"!(invalid && (dirty || touched))\"\r\n [class.btn-danger]=\"invalid && (dirty || touched)\">\r\n <i [class]=\"IconBrowse\"></i>\r\n <span class=\"upload-browse\">Browse</span>\r\n <input\r\n id=\"{{ name }}_uploadinput\"\r\n type=\"file\"\r\n class=\"custom-file-input\"\r\n #files\r\n (click)=\"files.value = ''\"\r\n (uploadxState)=\"onUpload($event)\"\r\n multiple\r\n [disabled]=\"maxfiles > 0 && uploads.length >= maxfiles\" />\r\n </div>\r\n\r\n <div\r\n class=\"btn-group\"\r\n [class.btn-group-sm]=\"componentHeight === ControlHeight.Small\"\r\n [class.btn-group-lg]=\"componentHeight === ControlHeight.Large\">\r\n <!-- image-preview-clear button -->\r\n <a\r\n class=\"btn\"\r\n (click)=\"cancelAll()\"\r\n [attr.disabled]=\"HasQueueItem() === false ? 'disabled' : null\"\r\n [class.btn-default]=\"!(invalid && (dirty || touched))\"\r\n [class.btn-danger]=\"invalid && (dirty || touched)\">\r\n <span [class]=\"IconDelete\"></span>\r\n </a>\r\n <a\r\n *ngIf=\"(autoupload === false && enablepause) || (autoupload && enablepause && IsPaused() === false)\"\r\n class=\"btn\"\r\n (click)=\"pauseAll()\"\r\n [attr.disabled]=\"IsUploading() === false ? 'disabled' : null\"\r\n [class.btn-default]=\"!(invalid && (dirty || touched))\"\r\n [class.btn-danger]=\"invalid && (dirty || touched)\">\r\n <span [class]=\"IconPause\"></span>\r\n </a>\r\n <a\r\n *ngIf=\"autoupload && enablepause && IsPaused() === true\"\r\n class=\"btn\"\r\n (click)=\"uploadAll()\"\r\n [class.btn-default]=\"!(invalid && (dirty || touched))\"\r\n [class.btn-danger]=\"invalid && (dirty || touched)\">\r\n <span [class]=\"IconContinue\"></span>\r\n </a>\r\n <a\r\n *ngIf=\"autoupload === false\"\r\n class=\"btn\"\r\n (click)=\"uploadAll()\"\r\n [attr.disabled]=\"IsStateToUpload() === false ? 'disabled' : null\"\r\n [class.btn-default]=\"!(invalid && (dirty || touched))\"\r\n [class.btn-danger]=\"invalid && (dirty || touched)\">\r\n <span [class]=\"IconUpload\"></span> {{ lngResourceService.GetString(validationKeyService.UploadButtonUpload) | async }}\r\n </a>\r\n </div>\r\n </div>\r\n\r\n <div\r\n *ngIf=\"helptextmode === 'tooltip' && helptext && disablelabel\"\r\n class=\"form-control-static\"\r\n style=\"margin-left: 5px\">\r\n <sac-tooltip\r\n *ngIf=\"helptextmode === 'tooltip' && helptext\"\r\n [tooltiptext]=\"helptext\"\r\n [inlinemode]=\"true\">\r\n <span\r\n [class]=\"HelptextTooltipIcon\"\r\n style=\"margin-left: 5px; margin-right: 5px\">\r\n </span>\r\n </sac-tooltip>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div\r\n *ngFor=\"let file of uploads\"\r\n style=\"margin-top: 5px\">\r\n <div\r\n class=\"input-group upload-component upload-multiple\"\r\n [class.input-group-sm]=\"componentHeight === ControlHeight.Small\"\r\n [class.input-group-lg]=\"componentHeight === ControlHeight.Large\">\r\n <div class=\"form-control upload-progress\">\r\n <div class=\"progress\">\r\n <div\r\n class=\"progress-bar\"\r\n [class.progress-bar-success]=\"file.progress === 100\"\r\n role=\"progressbar\"\r\n [attr.aria-valuenow]=\"file.progress\"\r\n aria-valuemin=\"0\"\r\n aria-valuemax=\"100\"\r\n [style.width.%]=\"file.progress\">\r\n <span class=\"progress-text text-dark\">{{ file.name }}</span>\r\n </div>\r\n </div>\r\n </div>\r\n <div\r\n class=\"input-group-btn\"\r\n [class.input-group-sm]=\"componentHeight === ControlHeight.Small\"\r\n [class.input-group-lg]=\"componentHeight === ControlHeight.Large\">\r\n <!-- image-preview-clear button -->\r\n <a\r\n class=\"btn\"\r\n (click)=\"cancel(file.uploadId)\"\r\n [class.btn-default]=\"!(invalid && (dirty || touched))\"\r\n [class.btn-danger]=\"invalid && (dirty || touched)\">\r\n <span [class]=\"IconDelete\"></span>\r\n </a>\r\n <a\r\n *ngIf=\"(autoupload === false && enablepause) || (autoupload && enablepause && file.status !== 'paused')\"\r\n class=\"btn\"\r\n (click)=\"pause(file.uploadId)\"\r\n [attr.disabled]=\"file.status !== 'uploading' ? 'disabled' : null\"\r\n [class.btn-default]=\"!(invalid && (dirty || touched))\"\r\n [class.btn-danger]=\"invalid && (dirty || touched)\">\r\n <span [class]=\"IconPause\"></span>\r\n </a>\r\n <a\r\n *ngIf=\"autoupload && enablepause && file.status === 'paused'\"\r\n class=\"btn\"\r\n (click)=\"upload(file.uploadId)\"\r\n [class.btn-default]=\"!(invalid && (dirty || touched))\"\r\n [class.btn-danger]=\"invalid && (dirty || touched)\">\r\n <span [class]=\"IconContinue\"></span>\r\n </a>\r\n <a\r\n *ngIf=\"autoupload === false\"\r\n class=\"btn\"\r\n (click)=\"upload(file.uploadId)\"\r\n [attr.disabled]=\"file.status !== 'added' && file.status !== 'paused' ? 'disabled' : null\"\r\n [class.btn-default]=\"!(invalid && (dirty || touched))\"\r\n [class.btn-danger]=\"invalid && (dirty || touched)\">\r\n <span [class]=\"IconUpload\"></span> {{ lngResourceService.GetString(validationKeyService.UploadButtonUpload) | async }}\r\n </a>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <p\r\n *ngIf=\"helptextmode === 'text' && helptext\"\r\n class=\"help-block\">\r\n {{ helptext }}\r\n </p>\r\n <div\r\n class=\"help-block help-block-error\"\r\n *ngIf=\"isinlineerrorenabled && invalid && (dirty || touched)\">\r\n {{ GetErrorMessage() | async }}\r\n </div>\r\n </div>\r\n</div>\r\n", styles: [".upload-component .upload-input{position:relative}.upload-component .custom-file>i{margin-right:15px}.upload-component .custom-file .custom-file-input{inset:0;position:absolute;overflow:hidden;z-index:2;width:100%;margin:0;display:inline-block;opacity:0}.upload-component.upload-multiple .upload-progress .progress{border-top-right-radius:0;border-bottom-right-radius:0}.upload-component.upload-single .upload-progress .progress{border-radius:0}.upload-component .upload-progress{padding:0}.upload-component .upload-progress .progress{height:100%}.upload-component .upload-progress .progress .progress-text{position:absolute;left:0;right:0;top:50%;transform:translateY(-50%);display:table-cell;line-height:34px;height:34px;color:#000}.dropzone{min-height:120px;width:100%;text-align:center;border-style:dashed;border-width:2px;padding-top:50px;padding-bottom:50px;position:relative}.dropzone.active{background-color:#add8e6}.dropzone .progress{border-radius:0}.dropzone .progress .progress-bar{display:flex;justify-content:center;text-align:center;flex-direction:column;border-top-right-radius:0;border-bottom-right-radius:0}.dropzone .progress .progress-bar .progress-text{position:absolute;left:0;right:0;top:50%;transform:translateY(-50%);display:table-cell;line-height:34px;height:34px;color:#000}.dropzone input[type=file]{position:absolute;inset:0;opacity:0;width:100%}.dropzone .dropzone-uploadstates{max-width:450px;margin-left:auto;margin-right:auto;margin-top:6px;width:80%}\n"] }]
52
- }], ctorParameters: function () { return [{ type: i1.SacFormLayoutDirective, decorators: [{
53
- type: Host
54
- }, {
55
- type: Optional
56
- }] }, { type: i0.Injector }, { type: i0.Renderer2 }, { type: i0.NgZone }]; } });
57
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXBsb2FkbXVsdGlwbGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zYWMtYm9vdHN0cmFwMy9zcmMvY29udHJvbHMvdXBsb2FkL3VwbG9hZG11bHRpcGxlLnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2FjLWJvb3RzdHJhcDMvc3JjL2NvbnRyb2xzL3VwbG9hZC91cGxvYWRtdWx0aXBsZS5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBQ1QsSUFBSSxFQUdKLFFBQVEsRUFFUixVQUFVLEdBQ1gsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLGFBQWEsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLG1DQUFtQyxDQUFDOzs7Ozs7OztBQUc1RSw0Q0FBNEM7QUFtQjVDLE1BQU0sT0FBTywwQkFBMkIsU0FBUSx1QkFBdUI7SUFDckUsdUJBQXVCO0lBRXZCOzs7Ozs7T0FNRztJQUNILFlBQ3NCLFVBQWtDLEVBQ3RELFFBQWtCLEVBQ2xCLFFBQW1CLEVBQ25CLE1BQWM7UUFFZCxLQUFLLENBQUMsVUFBVSxFQUFFLFFBQVEsRUFBRSxRQUFRLEVBQUUsTUFBTSxDQUFDLENBQUM7SUFDaEQsQ0FBQzs7dUhBakJVLDBCQUEwQjsyR0FBMUIsMEJBQTBCLDZDQWIxQjtRQUNUO1lBQ0UsT0FBTyxFQUFFLGlCQUFpQjtZQUMxQixLQUFLLEVBQUUsSUFBSTtZQUNYLFdBQVcsRUFBRSwwQkFBMEI7U0FDeEM7UUFDRDtZQUNFLE9BQU8sRUFBRSxhQUFhO1lBQ3RCLEtBQUssRUFBRSxJQUFJO1lBQ1gsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQywwQkFBMEIsQ0FBQztTQUMxRDtLQUNGLGlEQzlCSCxnMlVBNExBOzJGRDVKYSwwQkFBMEI7a0JBakJ0QyxTQUFTOytCQUNFLG9CQUFvQixhQUduQjt3QkFDVDs0QkFDRSxPQUFPLEVBQUUsaUJBQWlCOzRCQUMxQixLQUFLLEVBQUUsSUFBSTs0QkFDWCxXQUFXLDRCQUE0Qjt5QkFDeEM7d0JBQ0Q7NEJBQ0UsT0FBTyxFQUFFLGFBQWE7NEJBQ3RCLEtBQUssRUFBRSxJQUFJOzRCQUNYLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLDJCQUEyQixDQUFDO3lCQUMxRDtxQkFDRjs7MEJBYUUsSUFBSTs7MEJBQUksUUFBUSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgQ29tcG9uZW50LFxyXG4gIEhvc3QsXHJcbiAgSW5qZWN0b3IsXHJcbiAgTmdab25lLFxyXG4gIE9wdGlvbmFsLFxyXG4gIFJlbmRlcmVyMixcclxuICBmb3J3YXJkUmVmLFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBOR19WQUxJREFUT1JTLCBOR19WQUxVRV9BQ0NFU1NPUiB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgU2FjVXBsb2FkTXVsdGlwbGVDb21tb24gfSBmcm9tICdAc2ltcGxlYW5ndWxhcmNvbnRyb2xzL3NhYy1jb21tb24nO1xyXG5pbXBvcnQgeyBTYWNGb3JtTGF5b3V0RGlyZWN0aXZlIH0gZnJvbSAnLi4vbGF5b3V0L2Zvcm1sYXlvdXQuZGlyZWN0aXZlJztcclxuXHJcbi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9rdWtoYXJpZXYvbmd4LXVwbG9hZHgvXHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ3NhYy11cGxvYWRtdWx0aXBsZScsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3VwbG9hZG11bHRpcGxlLmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL3VwbG9hZC5zY3NzJ10sXHJcbiAgcHJvdmlkZXJzOiBbXHJcbiAgICB7XHJcbiAgICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxyXG4gICAgICBtdWx0aTogdHJ1ZSxcclxuICAgICAgdXNlRXhpc3Rpbmc6IFNhY1VwbG9hZE11bHRpcGxlQ29tcG9uZW50LFxyXG4gICAgfSxcclxuICAgIHtcclxuICAgICAgcHJvdmlkZTogTkdfVkFMSURBVE9SUyxcclxuICAgICAgbXVsdGk6IHRydWUsXHJcbiAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IFNhY1VwbG9hZE11bHRpcGxlQ29tcG9uZW50KSxcclxuICAgIH0sXHJcbiAgXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIFNhY1VwbG9hZE11bHRpcGxlQ29tcG9uZW50IGV4dGVuZHMgU2FjVXBsb2FkTXVsdGlwbGVDb21tb24ge1xyXG4gIC8vICNyZWdpb24gQ29uc3RydWN0b3JzXHJcblxyXG4gIC8qKlxyXG4gICAqIENvbnN0cnVjdG9yXHJcbiAgICogQHBhcmFtIGZvcm1MYXlvdXQgU2FjRm9ybUxheW91dCB0byBkZWZpbmUgc2NvcGVkIGxheW91dCBzZXR0aW5nc1xyXG4gICAqIEBwYXJhbSBpbmplY3RvciBJbmplY3RvciBmb3IgaW5qZWN0aW5nIHNlcnZpY2VzXHJcbiAgICogQHBhcmFtIHJlbmRlcmVyIEFuZ3VsYXIgcmVuZGVyaW5nIGVuZ2luZVxyXG4gICAqIEBwYXJhbSBuZ1pvbmUgbmdab25lIHRvIG1hbmFnZSBleHRlcm5hbCBqYXZhc2NyaXB0c1xyXG4gICAqL1xyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgQEhvc3QoKSBAT3B0aW9uYWwoKSBmb3JtTGF5b3V0OiBTYWNGb3JtTGF5b3V0RGlyZWN0aXZlLFxyXG4gICAgaW5qZWN0b3I6IEluamVjdG9yLFxyXG4gICAgcmVuZGVyZXI6IFJlbmRlcmVyMixcclxuICAgIG5nWm9uZTogTmdab25lXHJcbiAgKSB7XHJcbiAgICBzdXBlcihmb3JtTGF5b3V0LCBpbmplY3RvciwgcmVuZGVyZXIsIG5nWm9uZSk7XHJcbiAgfVxyXG5cclxuICAvLyAjZW5kcmVnaW9uIENvbnN0cnVjdG9yc1xyXG59XHJcbiIsIjxkaXZcclxuICAgIGlkPVwie3sgbmFtZSB9fVwiXHJcbiAgICBjbGFzcz1cInJvdyBmb3JtLWdyb3VwXCJcclxuICAgIFtjbGFzcy5oYXMtZXJyb3JdPVwiaW52YWxpZCAmJiAoZGlydHkgfHwgdG91Y2hlZClcIlxyXG4gICAgW25nQ2xhc3NdPVwiY29tcG9uZW50SGVpZ2h0IHwgdG9MYWJlbEhlaWdodFwiPlxyXG4gICAgPGxhYmVsXHJcbiAgICAgICAgKm5nSWY9XCJkaXNhYmxlbGFiZWwgPT09IGZhbHNlICYmICFpc0FkYXB0aXZlTGFiZWxcIlxyXG4gICAgICAgIGlkPVwie3sgbmFtZSB9fWxhYmVsXCJcclxuICAgICAgICBmb3I9XCJ7eyBuYW1lIH19X3VwbG9hZGlucHV0XCJcclxuICAgICAgICBjbGFzcz1cImNvbC14cy0xMiBjb250cm9sLWxhYmVsXCJcclxuICAgICAgICBbbmdDbGFzc109XCJbZGlzYWJsZWxhYmVsID09PSBmYWxzZSA/ICh0aGlzLmxhYmVsU2l6ZXMgfCB0b0xhYmVsV2lkdGhDc3MpIDogJ3NyLW9ubHknXVwiXHJcbiAgICAgICAgW2NsYXNzLnJlcXVpcmVkXT1cImlzcmVxdWlyZWRcIj5cclxuICAgICAgICA8c3BhbiBjbGFzcz1cInRleHRcIj57eyBsYWJlbCB9fTwvc3Bhbj5cclxuICAgICAgICA8c2FjLXRvb2x0aXBcclxuICAgICAgICAgICAgKm5nSWY9XCJoZWxwdGV4dG1vZGUgPT09ICd0b29sdGlwJyAmJiBoZWxwdGV4dFwiXHJcbiAgICAgICAgICAgIFt0b29sdGlwdGV4dF09XCJoZWxwdGV4dFwiXHJcbiAgICAgICAgICAgIFtpbmxpbmVtb2RlXT1cInRydWVcIj5cclxuICAgICAgICAgICAgPHNwYW5cclxuICAgICAgICAgICAgICAgIFtjbGFzc109XCJIZWxwdGV4dFRvb2x0aXBJY29uXCJcclxuICAgICAgICAgICAgICAgIHN0eWxlPVwibWFyZ2luLWxlZnQ6IDVweFwiPlxyXG4gICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgPC9zYWMtdG9vbHRpcD5cclxuICAgIDwvbGFiZWw+XHJcbiAgICA8ZGl2XHJcbiAgICAgICAgY2xhc3M9XCJjb2wteHMtMTJcIlxyXG4gICAgICAgIFtuZ0NsYXNzXT1cIltkaXNhYmxlbGFiZWwgPT09IGZhbHNlID8gKHRoaXMubGFiZWxTaXplcyB8IHRvQ29udHJvbFdpZHRoQ3NzKSA6ICcnXVwiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJ1cGxvYWQtY29tcG9uZW50XCI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJyb3dcIj5cclxuICAgICAgICAgICAgICAgIDxkaXZcclxuICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImNvbC14cy0xMlwiXHJcbiAgICAgICAgICAgICAgICAgICAgW3N0eWxlLmRpc3BsYXldPVwiaGVscHRleHRtb2RlID09PSAndG9vbHRpcCcgJiYgaGVscHRleHQgJiYgZGlzYWJsZWxhYmVsID8gJ2ZsZXgnIDogbnVsbFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXZcclxuICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJidG4tZ3JvdXBcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBbY2xhc3MuYnRuLWdyb3VwLXNtXT1cImNvbXBvbmVudEhlaWdodCA9PT0gQ29udHJvbEhlaWdodC5TbWFsbFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtjbGFzcy5idG4tZ3JvdXAtbGddPVwiY29tcG9uZW50SGVpZ2h0ID09PSBDb250cm9sSGVpZ2h0LkxhcmdlXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXZcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiYnRuIHVwbG9hZC1pbnB1dCBjdXN0b20tZmlsZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbY2xhc3MuZGlzYWJsZWRdPVwibWF4ZmlsZXMgPiAwICYmIHVwbG9hZHMubGVuZ3RoID49IG1heGZpbGVzXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtjbGFzcy5idG4tZGVmYXVsdF09XCIhKGludmFsaWQgJiYgKGRpcnR5IHx8IHRvdWNoZWQpKVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbY2xhc3MuYnRuLWRhbmdlcl09XCJpbnZhbGlkICYmIChkaXJ0eSB8fCB0b3VjaGVkKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGkgW2NsYXNzXT1cIkljb25Ccm93c2VcIj48L2k+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInVwbG9hZC1icm93c2VcIj5Ccm93c2U8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW5wdXRcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZD1cInt7IG5hbWUgfX1fdXBsb2FkaW5wdXRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU9XCJmaWxlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImN1c3RvbS1maWxlLWlucHV0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjZmlsZXNcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwiZmlsZXMudmFsdWUgPSAnJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKHVwbG9hZHhTdGF0ZSk9XCJvblVwbG9hZCgkZXZlbnQpXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtdWx0aXBsZVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtkaXNhYmxlZF09XCJtYXhmaWxlcyA+IDAgJiYgdXBsb2Fkcy5sZW5ndGggPj0gbWF4ZmlsZXNcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXZcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiYnRuLWdyb3VwXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtjbGFzcy5idG4tZ3JvdXAtc21dPVwiY29tcG9uZW50SGVpZ2h0ID09PSBDb250cm9sSGVpZ2h0LlNtYWxsXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtjbGFzcy5idG4tZ3JvdXAtbGddPVwiY29tcG9uZW50SGVpZ2h0ID09PSBDb250cm9sSGVpZ2h0LkxhcmdlXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8IS0tIGltYWdlLXByZXZpZXctY2xlYXIgYnV0dG9uIC0tPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGFcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImJ0blwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cImNhbmNlbEFsbCgpXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbYXR0ci5kaXNhYmxlZF09XCJIYXNRdWV1ZUl0ZW0oKSA9PT0gZmFsc2UgPyAnZGlzYWJsZWQnIDogbnVsbFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2NsYXNzLmJ0bi1kZWZhdWx0XT1cIiEoaW52YWxpZCAmJiAoZGlydHkgfHwgdG91Y2hlZCkpXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbY2xhc3MuYnRuLWRhbmdlcl09XCJpbnZhbGlkICYmIChkaXJ0eSB8fCB0b3VjaGVkKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIFtjbGFzc109XCJJY29uRGVsZXRlXCI+PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGFcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cIihhdXRvdXBsb2FkID09PSBmYWxzZSAmJiBlbmFibGVwYXVzZSkgfHwgKGF1dG91cGxvYWQgJiYgZW5hYmxlcGF1c2UgJiYgSXNQYXVzZWQoKSA9PT0gZmFsc2UpXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImJ0blwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cInBhdXNlQWxsKClcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFthdHRyLmRpc2FibGVkXT1cIklzVXBsb2FkaW5nKCkgPT09IGZhbHNlID8gJ2Rpc2FibGVkJyA6IG51bGxcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtjbGFzcy5idG4tZGVmYXVsdF09XCIhKGludmFsaWQgJiYgKGRpcnR5IHx8IHRvdWNoZWQpKVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2NsYXNzLmJ0bi1kYW5nZXJdPVwiaW52YWxpZCAmJiAoZGlydHkgfHwgdG91Y2hlZClcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBbY2xhc3NdPVwiSWNvblBhdXNlXCI+PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGFcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cImF1dG91cGxvYWQgJiYgZW5hYmxlcGF1c2UgJiYgSXNQYXVzZWQoKSA9PT0gdHJ1ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJidG5cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJ1cGxvYWRBbGwoKVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2NsYXNzLmJ0bi1kZWZhdWx0XT1cIiEoaW52YWxpZCAmJiAoZGlydHkgfHwgdG91Y2hlZCkpXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbY2xhc3MuYnRuLWRhbmdlcl09XCJpbnZhbGlkICYmIChkaXJ0eSB8fCB0b3VjaGVkKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIFtjbGFzc109XCJJY29uQ29udGludWVcIj48L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiYXV0b3VwbG9hZCA9PT0gZmFsc2VcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiYnRuXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwidXBsb2FkQWxsKClcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFthdHRyLmRpc2FibGVkXT1cIklzU3RhdGVUb1VwbG9hZCgpID09PSBmYWxzZSA/ICdkaXNhYmxlZCcgOiBudWxsXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbY2xhc3MuYnRuLWRlZmF1bHRdPVwiIShpbnZhbGlkICYmIChkaXJ0eSB8fCB0b3VjaGVkKSlcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtjbGFzcy5idG4tZGFuZ2VyXT1cImludmFsaWQgJiYgKGRpcnR5IHx8IHRvdWNoZWQpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gW2NsYXNzXT1cIkljb25VcGxvYWRcIj48L3NwYW4+IHt7IGxuZ1Jlc291cmNlU2VydmljZS5HZXRTdHJpbmcodmFsaWRhdGlvbktleVNlcnZpY2UuVXBsb2FkQnV0dG9uVXBsb2FkKSB8IGFzeW5jIH19XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiaGVscHRleHRtb2RlID09PSAndG9vbHRpcCcgJiYgaGVscHRleHQgJiYgZGlzYWJsZWxhYmVsXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJmb3JtLWNvbnRyb2wtc3RhdGljXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgc3R5bGU9XCJtYXJnaW4tbGVmdDogNXB4XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxzYWMtdG9vbHRpcFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJoZWxwdGV4dG1vZGUgPT09ICd0b29sdGlwJyAmJiBoZWxwdGV4dFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbdG9vbHRpcHRleHRdPVwiaGVscHRleHRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW2lubGluZW1vZGVdPVwidHJ1ZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbY2xhc3NdPVwiSGVscHRleHRUb29sdGlwSWNvblwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3R5bGU9XCJtYXJnaW4tbGVmdDogNXB4OyBtYXJnaW4tcmlnaHQ6IDVweFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3NhYy10b29sdGlwPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICAgICAgPGRpdlxyXG4gICAgICAgICAgICAgICAgKm5nRm9yPVwibGV0IGZpbGUgb2YgdXBsb2Fkc1wiXHJcbiAgICAgICAgICAgICAgICBzdHlsZT1cIm1hcmdpbi10b3A6IDVweFwiPlxyXG4gICAgICAgICAgICAgICAgPGRpdlxyXG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiaW5wdXQtZ3JvdXAgdXBsb2FkLWNvbXBvbmVudCB1cGxvYWQtbXVsdGlwbGVcIlxyXG4gICAgICAgICAgICAgICAgICAgIFtjbGFzcy5pbnB1dC1ncm91cC1zbV09XCJjb21wb25lbnRIZWlnaHQgPT09IENvbnRyb2xIZWlnaHQuU21hbGxcIlxyXG4gICAgICAgICAgICAgICAgICAgIFtjbGFzcy5pbnB1dC1ncm91cC1sZ109XCJjb21wb25lbnRIZWlnaHQgPT09IENvbnRyb2xIZWlnaHQuTGFyZ2VcIj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZm9ybS1jb250cm9sIHVwbG9hZC1wcm9ncmVzc1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicHJvZ3Jlc3NcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXZcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInByb2dyZXNzLWJhclwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2NsYXNzLnByb2dyZXNzLWJhci1zdWNjZXNzXT1cImZpbGUucHJvZ3Jlc3MgPT09IDEwMFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcm9sZT1cInByb2dyZXNzYmFyXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbYXR0ci5hcmlhLXZhbHVlbm93XT1cImZpbGUucHJvZ3Jlc3NcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFyaWEtdmFsdWVtaW49XCIwXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhcmlhLXZhbHVlbWF4PVwiMTAwXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbc3R5bGUud2lkdGguJV09XCJmaWxlLnByb2dyZXNzXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJwcm9ncmVzcy10ZXh0IHRleHQtZGFya1wiPnt7IGZpbGUubmFtZSB9fTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiaW5wdXQtZ3JvdXAtYnRuXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgW2NsYXNzLmlucHV0LWdyb3VwLXNtXT1cImNvbXBvbmVudEhlaWdodCA9PT0gQ29udHJvbEhlaWdodC5TbWFsbFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtjbGFzcy5pbnB1dC1ncm91cC1sZ109XCJjb21wb25lbnRIZWlnaHQgPT09IENvbnRyb2xIZWlnaHQuTGFyZ2VcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSBpbWFnZS1wcmV2aWV3LWNsZWFyIGJ1dHRvbiAtLT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGFcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiYnRuXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJjYW5jZWwoZmlsZS51cGxvYWRJZClcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW2NsYXNzLmJ0bi1kZWZhdWx0XT1cIiEoaW52YWxpZCAmJiAoZGlydHkgfHwgdG91Y2hlZCkpXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtjbGFzcy5idG4tZGFuZ2VyXT1cImludmFsaWQgJiYgKGRpcnR5IHx8IHRvdWNoZWQpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBbY2xhc3NdPVwiSWNvbkRlbGV0ZVwiPjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9hPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8YVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCIoYXV0b3VwbG9hZCA9PT0gZmFsc2UgJiYgZW5hYmxlcGF1c2UpIHx8IChhdXRvdXBsb2FkICYmIGVuYWJsZXBhdXNlICYmIGZpbGUuc3RhdHVzICE9PSAncGF1c2VkJylcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJidG5cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cInBhdXNlKGZpbGUudXBsb2FkSWQpXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFthdHRyLmRpc2FibGVkXT1cImZpbGUuc3RhdHVzICE9PSAndXBsb2FkaW5nJyA/ICdkaXNhYmxlZCcgOiBudWxsXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtjbGFzcy5idG4tZGVmYXVsdF09XCIhKGludmFsaWQgJiYgKGRpcnR5IHx8IHRvdWNoZWQpKVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbY2xhc3MuYnRuLWRhbmdlcl09XCJpbnZhbGlkICYmIChkaXJ0eSB8fCB0b3VjaGVkKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gW2NsYXNzXT1cIkljb25QYXVzZVwiPjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9hPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8YVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJhdXRvdXBsb2FkICYmIGVuYWJsZXBhdXNlICYmIGZpbGUuc3RhdHVzID09PSAncGF1c2VkJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImJ0blwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwidXBsb2FkKGZpbGUudXBsb2FkSWQpXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtjbGFzcy5idG4tZGVmYXVsdF09XCIhKGludmFsaWQgJiYgKGRpcnR5IHx8IHRvdWNoZWQpKVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbY2xhc3MuYnRuLWRhbmdlcl09XCJpbnZhbGlkICYmIChkaXJ0eSB8fCB0b3VjaGVkKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gW2NsYXNzXT1cIkljb25Db250aW51ZVwiPjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9hPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8YVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJhdXRvdXBsb2FkID09PSBmYWxzZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImJ0blwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwidXBsb2FkKGZpbGUudXBsb2FkSWQpXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFthdHRyLmRpc2FibGVkXT1cImZpbGUuc3RhdHVzICE9PSAnYWRkZWQnICYmIGZpbGUuc3RhdHVzICE9PSAncGF1c2VkJyA/ICdkaXNhYmxlZCcgOiBudWxsXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtjbGFzcy5idG4tZGVmYXVsdF09XCIhKGludmFsaWQgJiYgKGRpcnR5IHx8IHRvdWNoZWQpKVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbY2xhc3MuYnRuLWRhbmdlcl09XCJpbnZhbGlkICYmIChkaXJ0eSB8fCB0b3VjaGVkKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gW2NsYXNzXT1cIkljb25VcGxvYWRcIj48L3NwYW4+IHt7IGxuZ1Jlc291cmNlU2VydmljZS5HZXRTdHJpbmcodmFsaWRhdGlvbktleVNlcnZpY2UuVXBsb2FkQnV0dG9uVXBsb2FkKSB8IGFzeW5jIH19XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvYT5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgPHBcclxuICAgICAgICAgICAgKm5nSWY9XCJoZWxwdGV4dG1vZGUgPT09ICd0ZXh0JyAmJiBoZWxwdGV4dFwiXHJcbiAgICAgICAgICAgIGNsYXNzPVwiaGVscC1ibG9ja1wiPlxyXG4gICAgICAgICAgICB7eyBoZWxwdGV4dCB9fVxyXG4gICAgICAgIDwvcD5cclxuICAgICAgICA8ZGl2XHJcbiAgICAgICAgICAgIGNsYXNzPVwiaGVscC1ibG9jayBoZWxwLWJsb2NrLWVycm9yXCJcclxuICAgICAgICAgICAgKm5nSWY9XCJpc2lubGluZWVycm9yZW5hYmxlZCAmJiBpbnZhbGlkICYmIChkaXJ0eSB8fCB0b3VjaGVkKVwiPlxyXG4gICAgICAgICAgICB7eyBHZXRFcnJvck1lc3NhZ2UoKSB8IGFzeW5jIH19XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuPC9kaXY+XHJcbiJdfQ==
1
+ import { Component, Host, Optional, forwardRef, } from '@angular/core';
2
+ import { NG_VALIDATORS, NG_VALUE_ACCESSOR } from '@angular/forms';
3
+ import { SacUploadMultipleCommon } from '@simpleangularcontrols/sac-common';
4
+ import * as i0 from "@angular/core";
5
+ import * as i1 from "../layout/formlayout.directive";
6
+ import * as i2 from "../tooltip/tooltip";
7
+ import * as i3 from "@angular/common";
8
+ import * as i4 from "../layout/tolabelheight.pipe";
9
+ import * as i5 from "../layout/tolabelwidthcss.pipe";
10
+ import * as i6 from "../layout/tocontrolwidthcss.pipe";
11
+ // https://github.com/kukhariev/ngx-uploadx/
12
+ export class SacUploadMultipleComponent extends SacUploadMultipleCommon {
13
+ // #region Constructors
14
+ /**
15
+ * Constructor
16
+ * @param formLayout SacFormLayout to define scoped layout settings
17
+ * @param injector Injector for injecting services
18
+ * @param renderer Angular rendering engine
19
+ * @param ngZone ngZone to manage external javascripts
20
+ */
21
+ constructor(formLayout, injector, renderer, ngZone) {
22
+ super(formLayout, injector, renderer, ngZone);
23
+ }
24
+ }
25
+ SacUploadMultipleComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacUploadMultipleComponent, deps: [{ token: i1.SacFormLayoutDirective, host: true, optional: true }, { token: i0.Injector }, { token: i0.Renderer2 }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
26
+ SacUploadMultipleComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.7", type: SacUploadMultipleComponent, selector: "sac-uploadmultiple", providers: [
27
+ {
28
+ provide: NG_VALUE_ACCESSOR,
29
+ multi: true,
30
+ useExisting: SacUploadMultipleComponent,
31
+ },
32
+ {
33
+ provide: NG_VALIDATORS,
34
+ multi: true,
35
+ useExisting: forwardRef(() => SacUploadMultipleComponent),
36
+ },
37
+ ], usesInheritance: true, ngImport: i0, template: "<div\n id=\"{{ name }}\"\n class=\"row form-group\"\n [class.has-error]=\"invalid && (dirty || touched)\"\n [ngClass]=\"componentHeight | toLabelHeight\">\n <label\n *ngIf=\"disablelabel === false && !isAdaptiveLabel\"\n id=\"{{ name }}label\"\n for=\"{{ name }}_uploadinput\"\n class=\"col-xs-12 control-label\"\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toLabelWidthCss) : 'sr-only']\"\n [class.required]=\"isrequired\">\n <span class=\"text\">{{ label }}</span>\n <sac-tooltip\n *ngIf=\"helptextmode === 'tooltip' && helptext\"\n [tooltiptext]=\"helptext\"\n [inlinemode]=\"true\">\n <span\n [class]=\"HelptextTooltipIcon\"\n style=\"margin-left: 5px\">\n </span>\n </sac-tooltip>\n </label>\n <div\n class=\"col-xs-12\"\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toControlWidthCss) : '']\">\n <div class=\"upload-component\">\n <div class=\"row\">\n <div\n class=\"col-xs-12\"\n [style.display]=\"helptextmode === 'tooltip' && helptext && disablelabel ? 'flex' : null\">\n <div\n class=\"btn-group\"\n [class.btn-group-sm]=\"componentHeight === ControlHeight.Small\"\n [class.btn-group-lg]=\"componentHeight === ControlHeight.Large\">\n <div\n class=\"btn upload-input custom-file\"\n [class.disabled]=\"maxfiles > 0 && uploads.length >= maxfiles\"\n [class.btn-default]=\"!(invalid && (dirty || touched))\"\n [class.btn-danger]=\"invalid && (dirty || touched)\">\n <i [class]=\"IconBrowse\"></i>\n <span class=\"upload-browse\">{{ buttonbrowse ? buttonbrowse : (lngResourceService.GetString(validationKeyService.UploadButtonBrowse) | async) }}</span>\n <input\n id=\"{{ name }}_uploadinput\"\n type=\"file\"\n class=\"custom-file-input\"\n #files\n (click)=\"files.value = ''\"\n (uploadxState)=\"onUpload($event)\"\n multiple\n [disabled]=\"maxfiles > 0 && uploads.length >= maxfiles\" />\n </div>\n\n <div\n class=\"btn-group\"\n [class.btn-group-sm]=\"componentHeight === ControlHeight.Small\"\n [class.btn-group-lg]=\"componentHeight === ControlHeight.Large\">\n <!-- image-preview-clear button -->\n <a\n class=\"btn\"\n (click)=\"cancelAll()\"\n [attr.disabled]=\"HasQueueItem() === false ? 'disabled' : null\"\n [class.btn-default]=\"!(invalid && (dirty || touched))\"\n [class.btn-danger]=\"invalid && (dirty || touched)\">\n <span [class]=\"IconDelete\"></span>\n </a>\n <a\n *ngIf=\"(autoupload === false && enablepause) || (autoupload && enablepause && IsPaused() === false)\"\n class=\"btn\"\n (click)=\"pauseAll()\"\n [attr.disabled]=\"IsUploading() === false ? 'disabled' : null\"\n [class.btn-default]=\"!(invalid && (dirty || touched))\"\n [class.btn-danger]=\"invalid && (dirty || touched)\">\n <span [class]=\"IconPause\"></span>\n </a>\n <a\n *ngIf=\"autoupload && enablepause && IsPaused() === true\"\n class=\"btn\"\n (click)=\"uploadAll()\"\n [class.btn-default]=\"!(invalid && (dirty || touched))\"\n [class.btn-danger]=\"invalid && (dirty || touched)\">\n <span [class]=\"IconContinue\"></span>\n </a>\n <a\n *ngIf=\"autoupload === false\"\n class=\"btn\"\n (click)=\"uploadAll()\"\n [attr.disabled]=\"IsStateToUpload() === false ? 'disabled' : null\"\n [class.btn-default]=\"!(invalid && (dirty || touched))\"\n [class.btn-danger]=\"invalid && (dirty || touched)\">\n <span [class]=\"IconUpload\"></span>\n {{ buttonupload ? buttonupload : (lngResourceService.GetString(validationKeyService.UploadButtonUpload) | async) }}\n </a>\n </div>\n </div>\n\n <div\n *ngIf=\"helptextmode === 'tooltip' && helptext && disablelabel\"\n class=\"form-control-static\"\n style=\"margin-left: 5px\">\n <sac-tooltip\n *ngIf=\"helptextmode === 'tooltip' && helptext\"\n [tooltiptext]=\"helptext\"\n [inlinemode]=\"true\">\n <span\n [class]=\"HelptextTooltipIcon\"\n style=\"margin-left: 5px; margin-right: 5px\">\n </span>\n </sac-tooltip>\n </div>\n </div>\n </div>\n\n <div\n *ngFor=\"let file of uploads\"\n style=\"margin-top: 5px\">\n <div\n class=\"input-group upload-component upload-multiple\"\n [class.input-group-sm]=\"componentHeight === ControlHeight.Small\"\n [class.input-group-lg]=\"componentHeight === ControlHeight.Large\">\n <div class=\"form-control upload-progress\">\n <div class=\"progress\">\n <div\n class=\"progress-bar\"\n [class.progress-bar-success]=\"file.progress === 100\"\n role=\"progressbar\"\n [attr.aria-valuenow]=\"file.progress\"\n aria-valuemin=\"0\"\n aria-valuemax=\"100\"\n [style.width.%]=\"file.progress\">\n <span class=\"progress-text text-dark\">{{ file.name }}</span>\n </div>\n </div>\n </div>\n <div\n class=\"input-group-btn\"\n [class.input-group-sm]=\"componentHeight === ControlHeight.Small\"\n [class.input-group-lg]=\"componentHeight === ControlHeight.Large\">\n <!-- image-preview-clear button -->\n <a\n class=\"btn\"\n (click)=\"cancel(file.uploadId)\"\n [class.btn-default]=\"!(invalid && (dirty || touched))\"\n [class.btn-danger]=\"invalid && (dirty || touched)\">\n <span [class]=\"IconDelete\"></span>\n </a>\n <a\n *ngIf=\"(autoupload === false && enablepause) || (autoupload && enablepause && file.status !== 'paused')\"\n class=\"btn\"\n (click)=\"pause(file.uploadId)\"\n [attr.disabled]=\"file.status !== 'uploading' ? 'disabled' : null\"\n [class.btn-default]=\"!(invalid && (dirty || touched))\"\n [class.btn-danger]=\"invalid && (dirty || touched)\">\n <span [class]=\"IconPause\"></span>\n </a>\n <a\n *ngIf=\"autoupload && enablepause && file.status === 'paused'\"\n class=\"btn\"\n (click)=\"upload(file.uploadId)\"\n [class.btn-default]=\"!(invalid && (dirty || touched))\"\n [class.btn-danger]=\"invalid && (dirty || touched)\">\n <span [class]=\"IconContinue\"></span>\n </a>\n <a\n *ngIf=\"autoupload === false\"\n class=\"btn\"\n (click)=\"upload(file.uploadId)\"\n [attr.disabled]=\"file.status !== 'added' && file.status !== 'paused' ? 'disabled' : null\"\n [class.btn-default]=\"!(invalid && (dirty || touched))\"\n [class.btn-danger]=\"invalid && (dirty || touched)\">\n <span [class]=\"IconUpload\"></span> {{ buttonupload ? buttonupload : (lngResourceService.GetString(validationKeyService.UploadButtonUpload) | async) }}\n </a>\n </div>\n </div>\n </div>\n </div>\n\n <p\n *ngIf=\"helptextmode === 'text' && helptext\"\n class=\"help-block\">\n {{ helptext }}\n </p>\n <div\n class=\"help-block help-block-error\"\n *ngIf=\"isinlineerrorenabled && invalid && (dirty || touched)\">\n {{ GetErrorMessage() | async }}\n </div>\n </div>\n</div>\n", styles: [".upload-component .upload-input{position:relative}.upload-component .custom-file>i{margin-right:15px}.upload-component .custom-file .custom-file-input{inset:0;position:absolute;overflow:hidden;z-index:2;width:100%;margin:0;display:inline-block;opacity:0}.upload-component.upload-multiple .upload-progress .progress{border-top-right-radius:0;border-bottom-right-radius:0}.upload-component.upload-single .upload-progress .progress{border-radius:0}.upload-component .upload-progress{padding:0}.upload-component .upload-progress .progress{height:100%}.upload-component .upload-progress .progress .progress-text{position:absolute;left:0;right:0;top:50%;transform:translateY(-50%);display:table-cell;line-height:34px;height:34px;color:#000}.dropzone{min-height:120px;width:100%;text-align:center;border-style:dashed;border-width:2px;padding-top:50px;padding-bottom:50px;position:relative}.dropzone.active{background-color:#add8e6}.dropzone .progress{border-radius:0}.dropzone .progress .progress-bar{display:flex;justify-content:center;text-align:center;flex-direction:column;border-top-right-radius:0;border-bottom-right-radius:0}.dropzone .progress .progress-bar .progress-text{position:absolute;left:0;right:0;top:50%;transform:translateY(-50%);display:table-cell;line-height:34px;height:34px;color:#000}.dropzone input[type=file]{position:absolute;inset:0;opacity:0;width:100%}.dropzone .dropzone-uploadstates{max-width:450px;margin-left:auto;margin-right:auto;margin-top:6px;width:80%}\n"], components: [{ type: i2.SacTooltipComponent, selector: "sac-tooltip" }], directives: [{ type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], pipes: { "toLabelHeight": i4.SacToLabelHeightPipe, "toLabelWidthCss": i5.SacToLabelWidthCssPipe, "toControlWidthCss": i6.SacToControlWidthCssPipe, "async": i3.AsyncPipe } });
38
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacUploadMultipleComponent, decorators: [{
39
+ type: Component,
40
+ args: [{ selector: 'sac-uploadmultiple', providers: [
41
+ {
42
+ provide: NG_VALUE_ACCESSOR,
43
+ multi: true,
44
+ useExisting: SacUploadMultipleComponent,
45
+ },
46
+ {
47
+ provide: NG_VALIDATORS,
48
+ multi: true,
49
+ useExisting: forwardRef(() => SacUploadMultipleComponent),
50
+ },
51
+ ], template: "<div\n id=\"{{ name }}\"\n class=\"row form-group\"\n [class.has-error]=\"invalid && (dirty || touched)\"\n [ngClass]=\"componentHeight | toLabelHeight\">\n <label\n *ngIf=\"disablelabel === false && !isAdaptiveLabel\"\n id=\"{{ name }}label\"\n for=\"{{ name }}_uploadinput\"\n class=\"col-xs-12 control-label\"\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toLabelWidthCss) : 'sr-only']\"\n [class.required]=\"isrequired\">\n <span class=\"text\">{{ label }}</span>\n <sac-tooltip\n *ngIf=\"helptextmode === 'tooltip' && helptext\"\n [tooltiptext]=\"helptext\"\n [inlinemode]=\"true\">\n <span\n [class]=\"HelptextTooltipIcon\"\n style=\"margin-left: 5px\">\n </span>\n </sac-tooltip>\n </label>\n <div\n class=\"col-xs-12\"\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toControlWidthCss) : '']\">\n <div class=\"upload-component\">\n <div class=\"row\">\n <div\n class=\"col-xs-12\"\n [style.display]=\"helptextmode === 'tooltip' && helptext && disablelabel ? 'flex' : null\">\n <div\n class=\"btn-group\"\n [class.btn-group-sm]=\"componentHeight === ControlHeight.Small\"\n [class.btn-group-lg]=\"componentHeight === ControlHeight.Large\">\n <div\n class=\"btn upload-input custom-file\"\n [class.disabled]=\"maxfiles > 0 && uploads.length >= maxfiles\"\n [class.btn-default]=\"!(invalid && (dirty || touched))\"\n [class.btn-danger]=\"invalid && (dirty || touched)\">\n <i [class]=\"IconBrowse\"></i>\n <span class=\"upload-browse\">{{ buttonbrowse ? buttonbrowse : (lngResourceService.GetString(validationKeyService.UploadButtonBrowse) | async) }}</span>\n <input\n id=\"{{ name }}_uploadinput\"\n type=\"file\"\n class=\"custom-file-input\"\n #files\n (click)=\"files.value = ''\"\n (uploadxState)=\"onUpload($event)\"\n multiple\n [disabled]=\"maxfiles > 0 && uploads.length >= maxfiles\" />\n </div>\n\n <div\n class=\"btn-group\"\n [class.btn-group-sm]=\"componentHeight === ControlHeight.Small\"\n [class.btn-group-lg]=\"componentHeight === ControlHeight.Large\">\n <!-- image-preview-clear button -->\n <a\n class=\"btn\"\n (click)=\"cancelAll()\"\n [attr.disabled]=\"HasQueueItem() === false ? 'disabled' : null\"\n [class.btn-default]=\"!(invalid && (dirty || touched))\"\n [class.btn-danger]=\"invalid && (dirty || touched)\">\n <span [class]=\"IconDelete\"></span>\n </a>\n <a\n *ngIf=\"(autoupload === false && enablepause) || (autoupload && enablepause && IsPaused() === false)\"\n class=\"btn\"\n (click)=\"pauseAll()\"\n [attr.disabled]=\"IsUploading() === false ? 'disabled' : null\"\n [class.btn-default]=\"!(invalid && (dirty || touched))\"\n [class.btn-danger]=\"invalid && (dirty || touched)\">\n <span [class]=\"IconPause\"></span>\n </a>\n <a\n *ngIf=\"autoupload && enablepause && IsPaused() === true\"\n class=\"btn\"\n (click)=\"uploadAll()\"\n [class.btn-default]=\"!(invalid && (dirty || touched))\"\n [class.btn-danger]=\"invalid && (dirty || touched)\">\n <span [class]=\"IconContinue\"></span>\n </a>\n <a\n *ngIf=\"autoupload === false\"\n class=\"btn\"\n (click)=\"uploadAll()\"\n [attr.disabled]=\"IsStateToUpload() === false ? 'disabled' : null\"\n [class.btn-default]=\"!(invalid && (dirty || touched))\"\n [class.btn-danger]=\"invalid && (dirty || touched)\">\n <span [class]=\"IconUpload\"></span>\n {{ buttonupload ? buttonupload : (lngResourceService.GetString(validationKeyService.UploadButtonUpload) | async) }}\n </a>\n </div>\n </div>\n\n <div\n *ngIf=\"helptextmode === 'tooltip' && helptext && disablelabel\"\n class=\"form-control-static\"\n style=\"margin-left: 5px\">\n <sac-tooltip\n *ngIf=\"helptextmode === 'tooltip' && helptext\"\n [tooltiptext]=\"helptext\"\n [inlinemode]=\"true\">\n <span\n [class]=\"HelptextTooltipIcon\"\n style=\"margin-left: 5px; margin-right: 5px\">\n </span>\n </sac-tooltip>\n </div>\n </div>\n </div>\n\n <div\n *ngFor=\"let file of uploads\"\n style=\"margin-top: 5px\">\n <div\n class=\"input-group upload-component upload-multiple\"\n [class.input-group-sm]=\"componentHeight === ControlHeight.Small\"\n [class.input-group-lg]=\"componentHeight === ControlHeight.Large\">\n <div class=\"form-control upload-progress\">\n <div class=\"progress\">\n <div\n class=\"progress-bar\"\n [class.progress-bar-success]=\"file.progress === 100\"\n role=\"progressbar\"\n [attr.aria-valuenow]=\"file.progress\"\n aria-valuemin=\"0\"\n aria-valuemax=\"100\"\n [style.width.%]=\"file.progress\">\n <span class=\"progress-text text-dark\">{{ file.name }}</span>\n </div>\n </div>\n </div>\n <div\n class=\"input-group-btn\"\n [class.input-group-sm]=\"componentHeight === ControlHeight.Small\"\n [class.input-group-lg]=\"componentHeight === ControlHeight.Large\">\n <!-- image-preview-clear button -->\n <a\n class=\"btn\"\n (click)=\"cancel(file.uploadId)\"\n [class.btn-default]=\"!(invalid && (dirty || touched))\"\n [class.btn-danger]=\"invalid && (dirty || touched)\">\n <span [class]=\"IconDelete\"></span>\n </a>\n <a\n *ngIf=\"(autoupload === false && enablepause) || (autoupload && enablepause && file.status !== 'paused')\"\n class=\"btn\"\n (click)=\"pause(file.uploadId)\"\n [attr.disabled]=\"file.status !== 'uploading' ? 'disabled' : null\"\n [class.btn-default]=\"!(invalid && (dirty || touched))\"\n [class.btn-danger]=\"invalid && (dirty || touched)\">\n <span [class]=\"IconPause\"></span>\n </a>\n <a\n *ngIf=\"autoupload && enablepause && file.status === 'paused'\"\n class=\"btn\"\n (click)=\"upload(file.uploadId)\"\n [class.btn-default]=\"!(invalid && (dirty || touched))\"\n [class.btn-danger]=\"invalid && (dirty || touched)\">\n <span [class]=\"IconContinue\"></span>\n </a>\n <a\n *ngIf=\"autoupload === false\"\n class=\"btn\"\n (click)=\"upload(file.uploadId)\"\n [attr.disabled]=\"file.status !== 'added' && file.status !== 'paused' ? 'disabled' : null\"\n [class.btn-default]=\"!(invalid && (dirty || touched))\"\n [class.btn-danger]=\"invalid && (dirty || touched)\">\n <span [class]=\"IconUpload\"></span> {{ buttonupload ? buttonupload : (lngResourceService.GetString(validationKeyService.UploadButtonUpload) | async) }}\n </a>\n </div>\n </div>\n </div>\n </div>\n\n <p\n *ngIf=\"helptextmode === 'text' && helptext\"\n class=\"help-block\">\n {{ helptext }}\n </p>\n <div\n class=\"help-block help-block-error\"\n *ngIf=\"isinlineerrorenabled && invalid && (dirty || touched)\">\n {{ GetErrorMessage() | async }}\n </div>\n </div>\n</div>\n", styles: [".upload-component .upload-input{position:relative}.upload-component .custom-file>i{margin-right:15px}.upload-component .custom-file .custom-file-input{inset:0;position:absolute;overflow:hidden;z-index:2;width:100%;margin:0;display:inline-block;opacity:0}.upload-component.upload-multiple .upload-progress .progress{border-top-right-radius:0;border-bottom-right-radius:0}.upload-component.upload-single .upload-progress .progress{border-radius:0}.upload-component .upload-progress{padding:0}.upload-component .upload-progress .progress{height:100%}.upload-component .upload-progress .progress .progress-text{position:absolute;left:0;right:0;top:50%;transform:translateY(-50%);display:table-cell;line-height:34px;height:34px;color:#000}.dropzone{min-height:120px;width:100%;text-align:center;border-style:dashed;border-width:2px;padding-top:50px;padding-bottom:50px;position:relative}.dropzone.active{background-color:#add8e6}.dropzone .progress{border-radius:0}.dropzone .progress .progress-bar{display:flex;justify-content:center;text-align:center;flex-direction:column;border-top-right-radius:0;border-bottom-right-radius:0}.dropzone .progress .progress-bar .progress-text{position:absolute;left:0;right:0;top:50%;transform:translateY(-50%);display:table-cell;line-height:34px;height:34px;color:#000}.dropzone input[type=file]{position:absolute;inset:0;opacity:0;width:100%}.dropzone .dropzone-uploadstates{max-width:450px;margin-left:auto;margin-right:auto;margin-top:6px;width:80%}\n"] }]
52
+ }], ctorParameters: function () { return [{ type: i1.SacFormLayoutDirective, decorators: [{
53
+ type: Host
54
+ }, {
55
+ type: Optional
56
+ }] }, { type: i0.Injector }, { type: i0.Renderer2 }, { type: i0.NgZone }]; } });
57
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXBsb2FkbXVsdGlwbGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zYWMtYm9vdHN0cmFwMy9zcmMvY29udHJvbHMvdXBsb2FkL3VwbG9hZG11bHRpcGxlLnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2FjLWJvb3RzdHJhcDMvc3JjL2NvbnRyb2xzL3VwbG9hZC91cGxvYWRtdWx0aXBsZS5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBQ1QsSUFBSSxFQUdKLFFBQVEsRUFFUixVQUFVLEdBQ1gsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLGFBQWEsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLG1DQUFtQyxDQUFDOzs7Ozs7OztBQUc1RSw0Q0FBNEM7QUFtQjVDLE1BQU0sT0FBTywwQkFBMkIsU0FBUSx1QkFBdUI7SUFDckUsdUJBQXVCO0lBRXZCOzs7Ozs7T0FNRztJQUNILFlBQ3NCLFVBQWtDLEVBQ3RELFFBQWtCLEVBQ2xCLFFBQW1CLEVBQ25CLE1BQWM7UUFFZCxLQUFLLENBQUMsVUFBVSxFQUFFLFFBQVEsRUFBRSxRQUFRLEVBQUUsTUFBTSxDQUFDLENBQUM7SUFDaEQsQ0FBQzs7dUhBakJVLDBCQUEwQjsyR0FBMUIsMEJBQTBCLDZDQWIxQjtRQUNUO1lBQ0UsT0FBTyxFQUFFLGlCQUFpQjtZQUMxQixLQUFLLEVBQUUsSUFBSTtZQUNYLFdBQVcsRUFBRSwwQkFBMEI7U0FDeEM7UUFDRDtZQUNFLE9BQU8sRUFBRSxhQUFhO1lBQ3RCLEtBQUssRUFBRSxJQUFJO1lBQ1gsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQywwQkFBMEIsQ0FBQztTQUMxRDtLQUNGLGlEQzlCSCxzclVBNkxBOzJGRDdKYSwwQkFBMEI7a0JBakJ0QyxTQUFTOytCQUNFLG9CQUFvQixhQUduQjt3QkFDVDs0QkFDRSxPQUFPLEVBQUUsaUJBQWlCOzRCQUMxQixLQUFLLEVBQUUsSUFBSTs0QkFDWCxXQUFXLDRCQUE0Qjt5QkFDeEM7d0JBQ0Q7NEJBQ0UsT0FBTyxFQUFFLGFBQWE7NEJBQ3RCLEtBQUssRUFBRSxJQUFJOzRCQUNYLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLDJCQUEyQixDQUFDO3lCQUMxRDtxQkFDRjs7MEJBYUUsSUFBSTs7MEJBQUksUUFBUSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENvbXBvbmVudCxcbiAgSG9zdCxcbiAgSW5qZWN0b3IsXG4gIE5nWm9uZSxcbiAgT3B0aW9uYWwsXG4gIFJlbmRlcmVyMixcbiAgZm9yd2FyZFJlZixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOR19WQUxJREFUT1JTLCBOR19WQUxVRV9BQ0NFU1NPUiB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IFNhY1VwbG9hZE11bHRpcGxlQ29tbW9uIH0gZnJvbSAnQHNpbXBsZWFuZ3VsYXJjb250cm9scy9zYWMtY29tbW9uJztcbmltcG9ydCB7IFNhY0Zvcm1MYXlvdXREaXJlY3RpdmUgfSBmcm9tICcuLi9sYXlvdXQvZm9ybWxheW91dC5kaXJlY3RpdmUnO1xuXG4vLyBodHRwczovL2dpdGh1Yi5jb20va3VraGFyaWV2L25neC11cGxvYWR4L1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdzYWMtdXBsb2FkbXVsdGlwbGUnLFxuICB0ZW1wbGF0ZVVybDogJy4vdXBsb2FkbXVsdGlwbGUuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3VwbG9hZC5zY3NzJ10sXG4gIHByb3ZpZGVyczogW1xuICAgIHtcbiAgICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxuICAgICAgbXVsdGk6IHRydWUsXG4gICAgICB1c2VFeGlzdGluZzogU2FjVXBsb2FkTXVsdGlwbGVDb21wb25lbnQsXG4gICAgfSxcbiAgICB7XG4gICAgICBwcm92aWRlOiBOR19WQUxJREFUT1JTLFxuICAgICAgbXVsdGk6IHRydWUsXG4gICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBTYWNVcGxvYWRNdWx0aXBsZUNvbXBvbmVudCksXG4gICAgfSxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgU2FjVXBsb2FkTXVsdGlwbGVDb21wb25lbnQgZXh0ZW5kcyBTYWNVcGxvYWRNdWx0aXBsZUNvbW1vbiB7XG4gIC8vICNyZWdpb24gQ29uc3RydWN0b3JzXG5cbiAgLyoqXG4gICAqIENvbnN0cnVjdG9yXG4gICAqIEBwYXJhbSBmb3JtTGF5b3V0IFNhY0Zvcm1MYXlvdXQgdG8gZGVmaW5lIHNjb3BlZCBsYXlvdXQgc2V0dGluZ3NcbiAgICogQHBhcmFtIGluamVjdG9yIEluamVjdG9yIGZvciBpbmplY3Rpbmcgc2VydmljZXNcbiAgICogQHBhcmFtIHJlbmRlcmVyIEFuZ3VsYXIgcmVuZGVyaW5nIGVuZ2luZVxuICAgKiBAcGFyYW0gbmdab25lIG5nWm9uZSB0byBtYW5hZ2UgZXh0ZXJuYWwgamF2YXNjcmlwdHNcbiAgICovXG4gIGNvbnN0cnVjdG9yKFxuICAgIEBIb3N0KCkgQE9wdGlvbmFsKCkgZm9ybUxheW91dDogU2FjRm9ybUxheW91dERpcmVjdGl2ZSxcbiAgICBpbmplY3RvcjogSW5qZWN0b3IsXG4gICAgcmVuZGVyZXI6IFJlbmRlcmVyMixcbiAgICBuZ1pvbmU6IE5nWm9uZVxuICApIHtcbiAgICBzdXBlcihmb3JtTGF5b3V0LCBpbmplY3RvciwgcmVuZGVyZXIsIG5nWm9uZSk7XG4gIH1cblxuICAvLyAjZW5kcmVnaW9uIENvbnN0cnVjdG9yc1xufVxuIiwiPGRpdlxuICAgIGlkPVwie3sgbmFtZSB9fVwiXG4gICAgY2xhc3M9XCJyb3cgZm9ybS1ncm91cFwiXG4gICAgW2NsYXNzLmhhcy1lcnJvcl09XCJpbnZhbGlkICYmIChkaXJ0eSB8fCB0b3VjaGVkKVwiXG4gICAgW25nQ2xhc3NdPVwiY29tcG9uZW50SGVpZ2h0IHwgdG9MYWJlbEhlaWdodFwiPlxuICAgIDxsYWJlbFxuICAgICAgICAqbmdJZj1cImRpc2FibGVsYWJlbCA9PT0gZmFsc2UgJiYgIWlzQWRhcHRpdmVMYWJlbFwiXG4gICAgICAgIGlkPVwie3sgbmFtZSB9fWxhYmVsXCJcbiAgICAgICAgZm9yPVwie3sgbmFtZSB9fV91cGxvYWRpbnB1dFwiXG4gICAgICAgIGNsYXNzPVwiY29sLXhzLTEyIGNvbnRyb2wtbGFiZWxcIlxuICAgICAgICBbbmdDbGFzc109XCJbZGlzYWJsZWxhYmVsID09PSBmYWxzZSA/ICh0aGlzLmxhYmVsU2l6ZXMgfCB0b0xhYmVsV2lkdGhDc3MpIDogJ3NyLW9ubHknXVwiXG4gICAgICAgIFtjbGFzcy5yZXF1aXJlZF09XCJpc3JlcXVpcmVkXCI+XG4gICAgICAgIDxzcGFuIGNsYXNzPVwidGV4dFwiPnt7IGxhYmVsIH19PC9zcGFuPlxuICAgICAgICA8c2FjLXRvb2x0aXBcbiAgICAgICAgICAgICpuZ0lmPVwiaGVscHRleHRtb2RlID09PSAndG9vbHRpcCcgJiYgaGVscHRleHRcIlxuICAgICAgICAgICAgW3Rvb2x0aXB0ZXh0XT1cImhlbHB0ZXh0XCJcbiAgICAgICAgICAgIFtpbmxpbmVtb2RlXT1cInRydWVcIj5cbiAgICAgICAgICAgIDxzcGFuXG4gICAgICAgICAgICAgICAgW2NsYXNzXT1cIkhlbHB0ZXh0VG9vbHRpcEljb25cIlxuICAgICAgICAgICAgICAgIHN0eWxlPVwibWFyZ2luLWxlZnQ6IDVweFwiPlxuICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICA8L3NhYy10b29sdGlwPlxuICAgIDwvbGFiZWw+XG4gICAgPGRpdlxuICAgICAgICBjbGFzcz1cImNvbC14cy0xMlwiXG4gICAgICAgIFtuZ0NsYXNzXT1cIltkaXNhYmxlbGFiZWwgPT09IGZhbHNlID8gKHRoaXMubGFiZWxTaXplcyB8IHRvQ29udHJvbFdpZHRoQ3NzKSA6ICcnXVwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwidXBsb2FkLWNvbXBvbmVudFwiPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInJvd1wiPlxuICAgICAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJjb2wteHMtMTJcIlxuICAgICAgICAgICAgICAgICAgICBbc3R5bGUuZGlzcGxheV09XCJoZWxwdGV4dG1vZGUgPT09ICd0b29sdGlwJyAmJiBoZWxwdGV4dCAmJiBkaXNhYmxlbGFiZWwgPyAnZmxleCcgOiBudWxsXCI+XG4gICAgICAgICAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiYnRuLWdyb3VwXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtjbGFzcy5idG4tZ3JvdXAtc21dPVwiY29tcG9uZW50SGVpZ2h0ID09PSBDb250cm9sSGVpZ2h0LlNtYWxsXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtjbGFzcy5idG4tZ3JvdXAtbGddPVwiY29tcG9uZW50SGVpZ2h0ID09PSBDb250cm9sSGVpZ2h0LkxhcmdlXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJidG4gdXBsb2FkLWlucHV0IGN1c3RvbS1maWxlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbY2xhc3MuZGlzYWJsZWRdPVwibWF4ZmlsZXMgPiAwICYmIHVwbG9hZHMubGVuZ3RoID49IG1heGZpbGVzXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbY2xhc3MuYnRuLWRlZmF1bHRdPVwiIShpbnZhbGlkICYmIChkaXJ0eSB8fCB0b3VjaGVkKSlcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtjbGFzcy5idG4tZGFuZ2VyXT1cImludmFsaWQgJiYgKGRpcnR5IHx8IHRvdWNoZWQpXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGkgW2NsYXNzXT1cIkljb25Ccm93c2VcIj48L2k+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ1cGxvYWQtYnJvd3NlXCI+e3sgYnV0dG9uYnJvd3NlID8gYnV0dG9uYnJvd3NlIDogKGxuZ1Jlc291cmNlU2VydmljZS5HZXRTdHJpbmcodmFsaWRhdGlvbktleVNlcnZpY2UuVXBsb2FkQnV0dG9uQnJvd3NlKSB8IGFzeW5jKSB9fTwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW5wdXRcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWQ9XCJ7eyBuYW1lIH19X3VwbG9hZGlucHV0XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHlwZT1cImZpbGVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImN1c3RvbS1maWxlLWlucHV0XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgI2ZpbGVzXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJmaWxlcy52YWx1ZSA9ICcnXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKHVwbG9hZHhTdGF0ZSk9XCJvblVwbG9hZCgkZXZlbnQpXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbXVsdGlwbGVcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2Rpc2FibGVkXT1cIm1heGZpbGVzID4gMCAmJiB1cGxvYWRzLmxlbmd0aCA+PSBtYXhmaWxlc1wiIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cblxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiYnRuLWdyb3VwXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbY2xhc3MuYnRuLWdyb3VwLXNtXT1cImNvbXBvbmVudEhlaWdodCA9PT0gQ29udHJvbEhlaWdodC5TbWFsbFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW2NsYXNzLmJ0bi1ncm91cC1sZ109XCJjb21wb25lbnRIZWlnaHQgPT09IENvbnRyb2xIZWlnaHQuTGFyZ2VcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8IS0tIGltYWdlLXByZXZpZXctY2xlYXIgYnV0dG9uIC0tPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiYnRuXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cImNhbmNlbEFsbCgpXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2F0dHIuZGlzYWJsZWRdPVwiSGFzUXVldWVJdGVtKCkgPT09IGZhbHNlID8gJ2Rpc2FibGVkJyA6IG51bGxcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbY2xhc3MuYnRuLWRlZmF1bHRdPVwiIShpbnZhbGlkICYmIChkaXJ0eSB8fCB0b3VjaGVkKSlcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbY2xhc3MuYnRuLWRhbmdlcl09XCJpbnZhbGlkICYmIChkaXJ0eSB8fCB0b3VjaGVkKVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBbY2xhc3NdPVwiSWNvbkRlbGV0ZVwiPjwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGFcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCIoYXV0b3VwbG9hZCA9PT0gZmFsc2UgJiYgZW5hYmxlcGF1c2UpIHx8IChhdXRvdXBsb2FkICYmIGVuYWJsZXBhdXNlICYmIElzUGF1c2VkKCkgPT09IGZhbHNlKVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiYnRuXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cInBhdXNlQWxsKClcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbYXR0ci5kaXNhYmxlZF09XCJJc1VwbG9hZGluZygpID09PSBmYWxzZSA/ICdkaXNhYmxlZCcgOiBudWxsXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2NsYXNzLmJ0bi1kZWZhdWx0XT1cIiEoaW52YWxpZCAmJiAoZGlydHkgfHwgdG91Y2hlZCkpXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2NsYXNzLmJ0bi1kYW5nZXJdPVwiaW52YWxpZCAmJiAoZGlydHkgfHwgdG91Y2hlZClcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gW2NsYXNzXT1cIkljb25QYXVzZVwiPjwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGFcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJhdXRvdXBsb2FkICYmIGVuYWJsZXBhdXNlICYmIElzUGF1c2VkKCkgPT09IHRydWVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImJ0blwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJ1cGxvYWRBbGwoKVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtjbGFzcy5idG4tZGVmYXVsdF09XCIhKGludmFsaWQgJiYgKGRpcnR5IHx8IHRvdWNoZWQpKVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtjbGFzcy5idG4tZGFuZ2VyXT1cImludmFsaWQgJiYgKGRpcnR5IHx8IHRvdWNoZWQpXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIFtjbGFzc109XCJJY29uQ29udGludWVcIj48L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiYXV0b3VwbG9hZCA9PT0gZmFsc2VcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImJ0blwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJ1cGxvYWRBbGwoKVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFthdHRyLmRpc2FibGVkXT1cIklzU3RhdGVUb1VwbG9hZCgpID09PSBmYWxzZSA/ICdkaXNhYmxlZCcgOiBudWxsXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2NsYXNzLmJ0bi1kZWZhdWx0XT1cIiEoaW52YWxpZCAmJiAoZGlydHkgfHwgdG91Y2hlZCkpXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2NsYXNzLmJ0bi1kYW5nZXJdPVwiaW52YWxpZCAmJiAoZGlydHkgfHwgdG91Y2hlZClcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gW2NsYXNzXT1cIkljb25VcGxvYWRcIj48L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7IGJ1dHRvbnVwbG9hZCA/IGJ1dHRvbnVwbG9hZCA6IChsbmdSZXNvdXJjZVNlcnZpY2UuR2V0U3RyaW5nKHZhbGlkYXRpb25LZXlTZXJ2aWNlLlVwbG9hZEJ1dHRvblVwbG9hZCkgfCBhc3luYykgfX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJoZWxwdGV4dG1vZGUgPT09ICd0b29sdGlwJyAmJiBoZWxwdGV4dCAmJiBkaXNhYmxlbGFiZWxcIlxuICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJmb3JtLWNvbnRyb2wtc3RhdGljXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIHN0eWxlPVwibWFyZ2luLWxlZnQ6IDVweFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHNhYy10b29sdGlwXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJoZWxwdGV4dG1vZGUgPT09ICd0b29sdGlwJyAmJiBoZWxwdGV4dFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW3Rvb2x0aXB0ZXh0XT1cImhlbHB0ZXh0XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbaW5saW5lbW9kZV09XCJ0cnVlXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2NsYXNzXT1cIkhlbHB0ZXh0VG9vbHRpcEljb25cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHlsZT1cIm1hcmdpbi1sZWZ0OiA1cHg7IG1hcmdpbi1yaWdodDogNXB4XCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9zYWMtdG9vbHRpcD5cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cblxuICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAgICpuZ0Zvcj1cImxldCBmaWxlIG9mIHVwbG9hZHNcIlxuICAgICAgICAgICAgICAgIHN0eWxlPVwibWFyZ2luLXRvcDogNXB4XCI+XG4gICAgICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImlucHV0LWdyb3VwIHVwbG9hZC1jb21wb25lbnQgdXBsb2FkLW11bHRpcGxlXCJcbiAgICAgICAgICAgICAgICAgICAgW2NsYXNzLmlucHV0LWdyb3VwLXNtXT1cImNvbXBvbmVudEhlaWdodCA9PT0gQ29udHJvbEhlaWdodC5TbWFsbFwiXG4gICAgICAgICAgICAgICAgICAgIFtjbGFzcy5pbnB1dC1ncm91cC1sZ109XCJjb21wb25lbnRIZWlnaHQgPT09IENvbnRyb2xIZWlnaHQuTGFyZ2VcIj5cbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZvcm0tY29udHJvbCB1cGxvYWQtcHJvZ3Jlc3NcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJwcm9ncmVzc1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJwcm9ncmVzcy1iYXJcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbY2xhc3MucHJvZ3Jlc3MtYmFyLXN1Y2Nlc3NdPVwiZmlsZS5wcm9ncmVzcyA9PT0gMTAwXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcm9sZT1cInByb2dyZXNzYmFyXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2F0dHIuYXJpYS12YWx1ZW5vd109XCJmaWxlLnByb2dyZXNzXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXJpYS12YWx1ZW1pbj1cIjBcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhcmlhLXZhbHVlbWF4PVwiMTAwXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3N0eWxlLndpZHRoLiVdPVwiZmlsZS5wcm9ncmVzc1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInByb2dyZXNzLXRleHQgdGV4dC1kYXJrXCI+e3sgZmlsZS5uYW1lIH19PC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImlucHV0LWdyb3VwLWJ0blwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbY2xhc3MuaW5wdXQtZ3JvdXAtc21dPVwiY29tcG9uZW50SGVpZ2h0ID09PSBDb250cm9sSGVpZ2h0LlNtYWxsXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtjbGFzcy5pbnB1dC1ncm91cC1sZ109XCJjb21wb25lbnRIZWlnaHQgPT09IENvbnRyb2xIZWlnaHQuTGFyZ2VcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gaW1hZ2UtcHJldmlldy1jbGVhciBidXR0b24gLS0+XG4gICAgICAgICAgICAgICAgICAgICAgICA8YVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiYnRuXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwiY2FuY2VsKGZpbGUudXBsb2FkSWQpXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbY2xhc3MuYnRuLWRlZmF1bHRdPVwiIShpbnZhbGlkICYmIChkaXJ0eSB8fCB0b3VjaGVkKSlcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtjbGFzcy5idG4tZGFuZ2VyXT1cImludmFsaWQgJiYgKGRpcnR5IHx8IHRvdWNoZWQpXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gW2NsYXNzXT1cIkljb25EZWxldGVcIj48L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L2E+XG4gICAgICAgICAgICAgICAgICAgICAgICA8YVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiKGF1dG91cGxvYWQgPT09IGZhbHNlICYmIGVuYWJsZXBhdXNlKSB8fCAoYXV0b3VwbG9hZCAmJiBlbmFibGVwYXVzZSAmJiBmaWxlLnN0YXR1cyAhPT0gJ3BhdXNlZCcpXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImJ0blwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cInBhdXNlKGZpbGUudXBsb2FkSWQpXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbYXR0ci5kaXNhYmxlZF09XCJmaWxlLnN0YXR1cyAhPT0gJ3VwbG9hZGluZycgPyAnZGlzYWJsZWQnIDogbnVsbFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW2NsYXNzLmJ0bi1kZWZhdWx0XT1cIiEoaW52YWxpZCAmJiAoZGlydHkgfHwgdG91Y2hlZCkpXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbY2xhc3MuYnRuLWRhbmdlcl09XCJpbnZhbGlkICYmIChkaXJ0eSB8fCB0b3VjaGVkKVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIFtjbGFzc109XCJJY29uUGF1c2VcIj48L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L2E+XG4gICAgICAgICAgICAgICAgICAgICAgICA8YVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiYXV0b3VwbG9hZCAmJiBlbmFibGVwYXVzZSAmJiBmaWxlLnN0YXR1cyA9PT0gJ3BhdXNlZCdcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiYnRuXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwidXBsb2FkKGZpbGUudXBsb2FkSWQpXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbY2xhc3MuYnRuLWRlZmF1bHRdPVwiIShpbnZhbGlkICYmIChkaXJ0eSB8fCB0b3VjaGVkKSlcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtjbGFzcy5idG4tZGFuZ2VyXT1cImludmFsaWQgJiYgKGRpcnR5IHx8IHRvdWNoZWQpXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gW2NsYXNzXT1cIkljb25Db250aW51ZVwiPjwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvYT5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxhXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJhdXRvdXBsb2FkID09PSBmYWxzZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJidG5cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJ1cGxvYWQoZmlsZS51cGxvYWRJZClcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFthdHRyLmRpc2FibGVkXT1cImZpbGUuc3RhdHVzICE9PSAnYWRkZWQnICYmIGZpbGUuc3RhdHVzICE9PSAncGF1c2VkJyA/ICdkaXNhYmxlZCcgOiBudWxsXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbY2xhc3MuYnRuLWRlZmF1bHRdPVwiIShpbnZhbGlkICYmIChkaXJ0eSB8fCB0b3VjaGVkKSlcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtjbGFzcy5idG4tZGFuZ2VyXT1cImludmFsaWQgJiYgKGRpcnR5IHx8IHRvdWNoZWQpXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gW2NsYXNzXT1cIkljb25VcGxvYWRcIj48L3NwYW4+IHt7IGJ1dHRvbnVwbG9hZCA/IGJ1dHRvbnVwbG9hZCA6IChsbmdSZXNvdXJjZVNlcnZpY2UuR2V0U3RyaW5nKHZhbGlkYXRpb25LZXlTZXJ2aWNlLlVwbG9hZEJ1dHRvblVwbG9hZCkgfCBhc3luYykgfX1cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvYT5cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgPHBcbiAgICAgICAgICAgICpuZ0lmPVwiaGVscHRleHRtb2RlID09PSAndGV4dCcgJiYgaGVscHRleHRcIlxuICAgICAgICAgICAgY2xhc3M9XCJoZWxwLWJsb2NrXCI+XG4gICAgICAgICAgICB7eyBoZWxwdGV4dCB9fVxuICAgICAgICA8L3A+XG4gICAgICAgIDxkaXZcbiAgICAgICAgICAgIGNsYXNzPVwiaGVscC1ibG9jayBoZWxwLWJsb2NrLWVycm9yXCJcbiAgICAgICAgICAgICpuZ0lmPVwiaXNpbmxpbmVlcnJvcmVuYWJsZWQgJiYgaW52YWxpZCAmJiAoZGlydHkgfHwgdG91Y2hlZClcIj5cbiAgICAgICAgICAgIHt7IEdldEVycm9yTWVzc2FnZSgpIHwgYXN5bmMgfX1cbiAgICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG48L2Rpdj5cbiJdfQ==
@@ -1,4 +1,4 @@
1
- import * as i0 from '@angular/core';
2
- import { SacUploadMultipleComponent } from './uploadmultiple';
3
- export const ɵNonEmptyModule = true;
1
+ import * as i0 from '@angular/core';
2
+ import { SacUploadMultipleComponent } from './uploadmultiple';
3
+ export const ɵNonEmptyModule = true;
4
4
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXBsb2FkbXVsdGlwbGUubmdmYWN0b3J5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2FjLWJvb3RzdHJhcDMvc3JjL2NvbnRyb2xzL3VwbG9hZC91cGxvYWRtdWx0aXBsZS5uZ2ZhY3RvcnkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDcEMsT0FBTyxFQUFDLDBCQUEwQixFQUFDLE1BQU0sa0JBQWtCLENBQUM7QUFFNUQsTUFBTSxDQUFDLE1BQU0sZUFBZSxHQUFHLElBQUksQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIGkwIGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtTYWNVcGxvYWRNdWx0aXBsZUNvbXBvbmVudH0gZnJvbSAnLi91cGxvYWRtdWx0aXBsZSc7XG5leHBvcnQgY29uc3QgU2FjVXBsb2FkTXVsdGlwbGVDb21wb25lbnROZ0ZhY3Rvcnk6IGkwLsm1TmdNb2R1bGVGYWN0b3J5PGFueT4gPSBuZXcgaTAuybVOZ01vZHVsZUZhY3RvcnkoU2FjVXBsb2FkTXVsdGlwbGVDb21wb25lbnQpO1xuZXhwb3J0IGNvbnN0IMm1Tm9uRW1wdHlNb2R1bGUgPSB0cnVlOyJdfQ==
@@ -1,2 +1,2 @@
1
- export const SacUploadMultipleComponentNgSummary = null;
1
+ export const SacUploadMultipleComponentNgSummary = null;
2
2
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXBsb2FkbXVsdGlwbGUubmdzdW1tYXJ5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2FjLWJvb3RzdHJhcDMvc3JjL2NvbnRyb2xzL3VwbG9hZC91cGxvYWRtdWx0aXBsZS5uZ3N1bW1hcnkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFDLE1BQU0sbUNBQW1DLEdBQVEsSUFBSSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNvbnN0IFNhY1VwbG9hZE11bHRpcGxlQ29tcG9uZW50TmdTdW1tYXJ5OiBhbnkgPSBudWxsOyJdfQ==
@@ -1,41 +1,41 @@
1
- import { Component, Host, Optional } from '@angular/core';
2
- import { ControlContainer, NG_VALUE_ACCESSOR } from '@angular/forms';
3
- import { SacValidationSummaryCommon } from '@simpleangularcontrols/sac-common';
4
- import { SacFormDirective } from '../form/form';
5
- import * as i0 from "@angular/core";
6
- import * as i1 from "../form/form";
7
- import * as i2 from "@angular/common";
8
- export class SacValidationSummaryComponent extends SacValidationSummaryCommon {
9
- // #region Constructors
10
- /**
11
- * Constructor
12
- * @param formControl Instance of Form Component to receive invalid form controls
13
- * @param injector Injector for injecting services
14
- */
15
- constructor(formControl, injector) {
16
- super(formControl, injector);
17
- }
18
- }
19
- SacValidationSummaryComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacValidationSummaryComponent, deps: [{ token: i1.SacFormDirective, host: true, optional: true }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component });
20
- SacValidationSummaryComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.7", type: SacValidationSummaryComponent, selector: "sac-validationsummary", providers: [
21
- {
22
- provide: NG_VALUE_ACCESSOR,
23
- multi: true,
24
- useExisting: SacValidationSummaryComponent,
25
- },
26
- ], usesInheritance: true, ngImport: i0, template: "<div class=\"alert alert-danger\" role=\"alert\" *ngIf=\"hasErrors\" [id]=\"name\">\r\n <ul>\r\n <li *ngFor=\"let error of formErrors\">\r\n {{error | async}}\r\n </li>\r\n </ul>\r\n</div>\r\n", directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], pipes: { "async": i2.AsyncPipe }, viewProviders: [{ provide: ControlContainer, useExisting: SacFormDirective }] });
27
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacValidationSummaryComponent, decorators: [{
28
- type: Component,
29
- args: [{ selector: 'sac-validationsummary', providers: [
30
- {
31
- provide: NG_VALUE_ACCESSOR,
32
- multi: true,
33
- useExisting: SacValidationSummaryComponent,
34
- },
35
- ], viewProviders: [{ provide: ControlContainer, useExisting: SacFormDirective }], template: "<div class=\"alert alert-danger\" role=\"alert\" *ngIf=\"hasErrors\" [id]=\"name\">\r\n <ul>\r\n <li *ngFor=\"let error of formErrors\">\r\n {{error | async}}\r\n </li>\r\n </ul>\r\n</div>\r\n" }]
36
- }], ctorParameters: function () { return [{ type: i1.SacFormDirective, decorators: [{
37
- type: Host
38
- }, {
39
- type: Optional
40
- }] }, { type: i0.Injector }]; } });
41
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFsaWRhdGlvbnN1bW1hcnkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zYWMtYm9vdHN0cmFwMy9zcmMvY29udHJvbHMvdmFsaWRhdGlvbi92YWxpZGF0aW9uc3VtbWFyeS50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NhYy1ib290c3RyYXAzL3NyYy9jb250cm9scy92YWxpZGF0aW9uL3ZhbGlkYXRpb25zdW1tYXJ5Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxJQUFJLEVBQVksUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3BFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3JFLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQy9FLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGNBQWMsQ0FBQzs7OztBQWdCaEQsTUFBTSxPQUFPLDZCQUE4QixTQUFRLDBCQUEwQjtJQUMzRSx1QkFBdUI7SUFFdkI7Ozs7T0FJRztJQUNILFlBQ3NCLFdBQTZCLEVBQ2pELFFBQWtCO1FBRWxCLEtBQUssQ0FBQyxXQUFXLEVBQUUsUUFBUSxDQUFDLENBQUM7SUFDL0IsQ0FBQzs7MEhBYlUsNkJBQTZCOzhHQUE3Qiw2QkFBNkIsZ0RBVjdCO1FBQ1Q7WUFDRSxPQUFPLEVBQUUsaUJBQWlCO1lBQzFCLEtBQUssRUFBRSxJQUFJO1lBQ1gsV0FBVyxFQUFFLDZCQUE2QjtTQUMzQztLQUNGLGlEQ2ZILCtNQU9BLDRQRFVpQixDQUFDLEVBQUUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLFdBQVcsRUFBRSxnQkFBZ0IsRUFBRSxDQUFDOzJGQUVsRSw2QkFBNkI7a0JBZHpDLFNBQVM7K0JBQ0UsdUJBQXVCLGFBR3RCO3dCQUNUOzRCQUNFLE9BQU8sRUFBRSxpQkFBaUI7NEJBQzFCLEtBQUssRUFBRSxJQUFJOzRCQUNYLFdBQVcsK0JBQStCO3lCQUMzQztxQkFDRixpQkFFYyxDQUFDLEVBQUUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLFdBQVcsRUFBRSxnQkFBZ0IsRUFBRSxDQUFDOzswQkFXMUUsSUFBSTs7MEJBQUksUUFBUSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSG9zdCwgSW5qZWN0b3IsIE9wdGlvbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IENvbnRyb2xDb250YWluZXIsIE5HX1ZBTFVFX0FDQ0VTU09SIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBTYWNWYWxpZGF0aW9uU3VtbWFyeUNvbW1vbiB9IGZyb20gJ0BzaW1wbGVhbmd1bGFyY29udHJvbHMvc2FjLWNvbW1vbic7XHJcbmltcG9ydCB7IFNhY0Zvcm1EaXJlY3RpdmUgfSBmcm9tICcuLi9mb3JtL2Zvcm0nO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdzYWMtdmFsaWRhdGlvbnN1bW1hcnknLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi92YWxpZGF0aW9uc3VtbWFyeS5odG1sJyxcclxuICAvLyBWYWx1ZSBBY2Nlc3MgUHJvdmlkZXIgcmVnaXN0cmllcmVuLCBkYW1pdCBXZXJ0IHZpYSBNb2RlbCBnZXNjaHJpZWJlbiB1bmQgZ2VsZXNlbiB3ZXJkZW4ga2FublxyXG4gIHByb3ZpZGVyczogW1xyXG4gICAge1xyXG4gICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcclxuICAgICAgbXVsdGk6IHRydWUsXHJcbiAgICAgIHVzZUV4aXN0aW5nOiBTYWNWYWxpZGF0aW9uU3VtbWFyeUNvbXBvbmVudCxcclxuICAgIH0sXHJcbiAgXSxcclxuICAvLyBWaWV3IFByb3ZpZGVyLCBkYW1pdCBkYXMgRm9ybXVsYXIgYW4gZGFzIENvbnRyb2wgZ2VidW5kZW4gd2VyZGVuIGthbm5cclxuICB2aWV3UHJvdmlkZXJzOiBbeyBwcm92aWRlOiBDb250cm9sQ29udGFpbmVyLCB1c2VFeGlzdGluZzogU2FjRm9ybURpcmVjdGl2ZSB9XSxcclxufSlcclxuZXhwb3J0IGNsYXNzIFNhY1ZhbGlkYXRpb25TdW1tYXJ5Q29tcG9uZW50IGV4dGVuZHMgU2FjVmFsaWRhdGlvblN1bW1hcnlDb21tb24ge1xyXG4gIC8vICNyZWdpb24gQ29uc3RydWN0b3JzXHJcblxyXG4gIC8qKlxyXG4gICAqIENvbnN0cnVjdG9yXHJcbiAgICogQHBhcmFtIGZvcm1Db250cm9sIEluc3RhbmNlIG9mIEZvcm0gQ29tcG9uZW50IHRvIHJlY2VpdmUgaW52YWxpZCBmb3JtIGNvbnRyb2xzXHJcbiAgICogQHBhcmFtIGluamVjdG9yIEluamVjdG9yIGZvciBpbmplY3Rpbmcgc2VydmljZXNcclxuICAgKi9cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIEBIb3N0KCkgQE9wdGlvbmFsKCkgZm9ybUNvbnRyb2w6IFNhY0Zvcm1EaXJlY3RpdmUsXHJcbiAgICBpbmplY3RvcjogSW5qZWN0b3JcclxuICApIHtcclxuICAgIHN1cGVyKGZvcm1Db250cm9sLCBpbmplY3Rvcik7XHJcbiAgfVxyXG5cclxuICAvLyAjZW5kcmVnaW9uIENvbnN0cnVjdG9yc1xyXG59XHJcbiIsIjxkaXYgY2xhc3M9XCJhbGVydCBhbGVydC1kYW5nZXJcIiByb2xlPVwiYWxlcnRcIiAqbmdJZj1cImhhc0Vycm9yc1wiIFtpZF09XCJuYW1lXCI+XHJcbiAgPHVsPlxyXG4gICAgPGxpICpuZ0Zvcj1cImxldCBlcnJvciBvZiBmb3JtRXJyb3JzXCI+XHJcbiAgICAgIHt7ZXJyb3IgfCBhc3luY319XHJcbiAgICA8L2xpPlxyXG4gIDwvdWw+XHJcbjwvZGl2PlxyXG4iXX0=
1
+ import { Component, Host, Optional } from '@angular/core';
2
+ import { ControlContainer, NG_VALUE_ACCESSOR } from '@angular/forms';
3
+ import { SacValidationSummaryCommon } from '@simpleangularcontrols/sac-common';
4
+ import { SacFormDirective } from '../form/form';
5
+ import * as i0 from "@angular/core";
6
+ import * as i1 from "../form/form";
7
+ import * as i2 from "@angular/common";
8
+ export class SacValidationSummaryComponent extends SacValidationSummaryCommon {
9
+ // #region Constructors
10
+ /**
11
+ * Constructor
12
+ * @param formControl Instance of Form Component to receive invalid form controls
13
+ * @param injector Injector for injecting services
14
+ */
15
+ constructor(formControl, injector) {
16
+ super(formControl, injector);
17
+ }
18
+ }
19
+ SacValidationSummaryComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacValidationSummaryComponent, deps: [{ token: i1.SacFormDirective, host: true, optional: true }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component });
20
+ SacValidationSummaryComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.7", type: SacValidationSummaryComponent, selector: "sac-validationsummary", providers: [
21
+ {
22
+ provide: NG_VALUE_ACCESSOR,
23
+ multi: true,
24
+ useExisting: SacValidationSummaryComponent,
25
+ },
26
+ ], usesInheritance: true, ngImport: i0, template: "<div class=\"alert alert-danger\" role=\"alert\" *ngIf=\"hasErrors\" [id]=\"name\">\n <ul>\n <li *ngFor=\"let error of formErrors\">\n {{error | async}}\n </li>\n </ul>\n</div>\n", directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], pipes: { "async": i2.AsyncPipe }, viewProviders: [{ provide: ControlContainer, useExisting: SacFormDirective }] });
27
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacValidationSummaryComponent, decorators: [{
28
+ type: Component,
29
+ args: [{ selector: 'sac-validationsummary', providers: [
30
+ {
31
+ provide: NG_VALUE_ACCESSOR,
32
+ multi: true,
33
+ useExisting: SacValidationSummaryComponent,
34
+ },
35
+ ], viewProviders: [{ provide: ControlContainer, useExisting: SacFormDirective }], template: "<div class=\"alert alert-danger\" role=\"alert\" *ngIf=\"hasErrors\" [id]=\"name\">\n <ul>\n <li *ngFor=\"let error of formErrors\">\n {{error | async}}\n </li>\n </ul>\n</div>\n" }]
36
+ }], ctorParameters: function () { return [{ type: i1.SacFormDirective, decorators: [{
37
+ type: Host
38
+ }, {
39
+ type: Optional
40
+ }] }, { type: i0.Injector }]; } });
41
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFsaWRhdGlvbnN1bW1hcnkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zYWMtYm9vdHN0cmFwMy9zcmMvY29udHJvbHMvdmFsaWRhdGlvbi92YWxpZGF0aW9uc3VtbWFyeS50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NhYy1ib290c3RyYXAzL3NyYy9jb250cm9scy92YWxpZGF0aW9uL3ZhbGlkYXRpb25zdW1tYXJ5Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxJQUFJLEVBQVksUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3BFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3JFLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQy9FLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGNBQWMsQ0FBQzs7OztBQWdCaEQsTUFBTSxPQUFPLDZCQUE4QixTQUFRLDBCQUEwQjtJQUMzRSx1QkFBdUI7SUFFdkI7Ozs7T0FJRztJQUNILFlBQ3NCLFdBQTZCLEVBQ2pELFFBQWtCO1FBRWxCLEtBQUssQ0FBQyxXQUFXLEVBQUUsUUFBUSxDQUFDLENBQUM7SUFDL0IsQ0FBQzs7MEhBYlUsNkJBQTZCOzhHQUE3Qiw2QkFBNkIsZ0RBVjdCO1FBQ1Q7WUFDRSxPQUFPLEVBQUUsaUJBQWlCO1lBQzFCLEtBQUssRUFBRSxJQUFJO1lBQ1gsV0FBVyxFQUFFLDZCQUE2QjtTQUMzQztLQUNGLGlEQ2ZILGlNQU9BLDRQRFVpQixDQUFDLEVBQUUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLFdBQVcsRUFBRSxnQkFBZ0IsRUFBRSxDQUFDOzJGQUVsRSw2QkFBNkI7a0JBZHpDLFNBQVM7K0JBQ0UsdUJBQXVCLGFBR3RCO3dCQUNUOzRCQUNFLE9BQU8sRUFBRSxpQkFBaUI7NEJBQzFCLEtBQUssRUFBRSxJQUFJOzRCQUNYLFdBQVcsK0JBQStCO3lCQUMzQztxQkFDRixpQkFFYyxDQUFDLEVBQUUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLFdBQVcsRUFBRSxnQkFBZ0IsRUFBRSxDQUFDOzswQkFXMUUsSUFBSTs7MEJBQUksUUFBUSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSG9zdCwgSW5qZWN0b3IsIE9wdGlvbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb250cm9sQ29udGFpbmVyLCBOR19WQUxVRV9BQ0NFU1NPUiB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IFNhY1ZhbGlkYXRpb25TdW1tYXJ5Q29tbW9uIH0gZnJvbSAnQHNpbXBsZWFuZ3VsYXJjb250cm9scy9zYWMtY29tbW9uJztcbmltcG9ydCB7IFNhY0Zvcm1EaXJlY3RpdmUgfSBmcm9tICcuLi9mb3JtL2Zvcm0nO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdzYWMtdmFsaWRhdGlvbnN1bW1hcnknLFxuICB0ZW1wbGF0ZVVybDogJy4vdmFsaWRhdGlvbnN1bW1hcnkuaHRtbCcsXG4gIC8vIFZhbHVlIEFjY2VzcyBQcm92aWRlciByZWdpc3RyaWVyZW4sIGRhbWl0IFdlcnQgdmlhIE1vZGVsIGdlc2NocmllYmVuIHVuZCBnZWxlc2VuIHdlcmRlbiBrYW5uXG4gIHByb3ZpZGVyczogW1xuICAgIHtcbiAgICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxuICAgICAgbXVsdGk6IHRydWUsXG4gICAgICB1c2VFeGlzdGluZzogU2FjVmFsaWRhdGlvblN1bW1hcnlDb21wb25lbnQsXG4gICAgfSxcbiAgXSxcbiAgLy8gVmlldyBQcm92aWRlciwgZGFtaXQgZGFzIEZvcm11bGFyIGFuIGRhcyBDb250cm9sIGdlYnVuZGVuIHdlcmRlbiBrYW5uXG4gIHZpZXdQcm92aWRlcnM6IFt7IHByb3ZpZGU6IENvbnRyb2xDb250YWluZXIsIHVzZUV4aXN0aW5nOiBTYWNGb3JtRGlyZWN0aXZlIH1dLFxufSlcbmV4cG9ydCBjbGFzcyBTYWNWYWxpZGF0aW9uU3VtbWFyeUNvbXBvbmVudCBleHRlbmRzIFNhY1ZhbGlkYXRpb25TdW1tYXJ5Q29tbW9uIHtcbiAgLy8gI3JlZ2lvbiBDb25zdHJ1Y3RvcnNcblxuICAvKipcbiAgICogQ29uc3RydWN0b3JcbiAgICogQHBhcmFtIGZvcm1Db250cm9sIEluc3RhbmNlIG9mIEZvcm0gQ29tcG9uZW50IHRvIHJlY2VpdmUgaW52YWxpZCBmb3JtIGNvbnRyb2xzXG4gICAqIEBwYXJhbSBpbmplY3RvciBJbmplY3RvciBmb3IgaW5qZWN0aW5nIHNlcnZpY2VzXG4gICAqL1xuICBjb25zdHJ1Y3RvcihcbiAgICBASG9zdCgpIEBPcHRpb25hbCgpIGZvcm1Db250cm9sOiBTYWNGb3JtRGlyZWN0aXZlLFxuICAgIGluamVjdG9yOiBJbmplY3RvclxuICApIHtcbiAgICBzdXBlcihmb3JtQ29udHJvbCwgaW5qZWN0b3IpO1xuICB9XG5cbiAgLy8gI2VuZHJlZ2lvbiBDb25zdHJ1Y3RvcnNcbn1cbiIsIjxkaXYgY2xhc3M9XCJhbGVydCBhbGVydC1kYW5nZXJcIiByb2xlPVwiYWxlcnRcIiAqbmdJZj1cImhhc0Vycm9yc1wiIFtpZF09XCJuYW1lXCI+XG4gIDx1bD5cbiAgICA8bGkgKm5nRm9yPVwibGV0IGVycm9yIG9mIGZvcm1FcnJvcnNcIj5cbiAgICAgIHt7ZXJyb3IgfCBhc3luY319XG4gICAgPC9saT5cbiAgPC91bD5cbjwvZGl2PlxuIl19
@@ -1,22 +1,22 @@
1
- import { NgModule } from '@angular/core';
2
- import { SacValidationSummaryComponent } from './validationsummary';
3
- import { CommonModule } from '@angular/common';
4
- import * as i0 from "@angular/core";
5
- export class SACBootstrap3ValidationSummaryModule {
6
- }
7
- SACBootstrap3ValidationSummaryModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SACBootstrap3ValidationSummaryModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
8
- SACBootstrap3ValidationSummaryModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SACBootstrap3ValidationSummaryModule, declarations: [SacValidationSummaryComponent], imports: [CommonModule], exports: [SacValidationSummaryComponent] });
9
- SACBootstrap3ValidationSummaryModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SACBootstrap3ValidationSummaryModule, imports: [[
10
- CommonModule
11
- ]] });
12
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SACBootstrap3ValidationSummaryModule, decorators: [{
13
- type: NgModule,
14
- args: [{
15
- declarations: [SacValidationSummaryComponent],
16
- imports: [
17
- CommonModule
18
- ],
19
- exports: [SacValidationSummaryComponent]
20
- }]
21
- }] });
22
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFsaWRhdGlvbnN1bW1hcnkubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2FjLWJvb3RzdHJhcDMvc3JjL2NvbnRyb2xzL3ZhbGlkYXRpb24vdmFsaWRhdGlvbnN1bW1hcnkubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLDZCQUE2QixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDcEUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDOztBQVMvQyxNQUFNLE9BQU8sb0NBQW9DOztpSUFBcEMsb0NBQW9DO2tJQUFwQyxvQ0FBb0MsaUJBTmhDLDZCQUE2QixhQUUxQyxZQUFZLGFBRUosNkJBQTZCO2tJQUU1QixvQ0FBb0MsWUFMdEM7WUFDUCxZQUFZO1NBQ2I7MkZBR1Usb0NBQW9DO2tCQVBoRCxRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBRSxDQUFDLDZCQUE2QixDQUFDO29CQUM3QyxPQUFPLEVBQUU7d0JBQ1AsWUFBWTtxQkFDYjtvQkFDRCxPQUFPLEVBQUUsQ0FBQyw2QkFBNkIsQ0FBQztpQkFDekMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBTYWNWYWxpZGF0aW9uU3VtbWFyeUNvbXBvbmVudCB9IGZyb20gJy4vdmFsaWRhdGlvbnN1bW1hcnknO1xyXG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5cclxuQE5nTW9kdWxlKHtcclxuICBkZWNsYXJhdGlvbnM6IFtTYWNWYWxpZGF0aW9uU3VtbWFyeUNvbXBvbmVudF0sXHJcbiAgaW1wb3J0czogW1xyXG4gICAgQ29tbW9uTW9kdWxlXHJcbiAgXSxcclxuICBleHBvcnRzOiBbU2FjVmFsaWRhdGlvblN1bW1hcnlDb21wb25lbnRdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBTQUNCb290c3RyYXAzVmFsaWRhdGlvblN1bW1hcnlNb2R1bGUgeyB9XHJcbiJdfQ==
1
+ import { NgModule } from '@angular/core';
2
+ import { SacValidationSummaryComponent } from './validationsummary';
3
+ import { CommonModule } from '@angular/common';
4
+ import * as i0 from "@angular/core";
5
+ export class SACBootstrap3ValidationSummaryModule {
6
+ }
7
+ SACBootstrap3ValidationSummaryModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SACBootstrap3ValidationSummaryModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
8
+ SACBootstrap3ValidationSummaryModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SACBootstrap3ValidationSummaryModule, declarations: [SacValidationSummaryComponent], imports: [CommonModule], exports: [SacValidationSummaryComponent] });
9
+ SACBootstrap3ValidationSummaryModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SACBootstrap3ValidationSummaryModule, imports: [[
10
+ CommonModule
11
+ ]] });
12
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SACBootstrap3ValidationSummaryModule, decorators: [{
13
+ type: NgModule,
14
+ args: [{
15
+ declarations: [SacValidationSummaryComponent],
16
+ imports: [
17
+ CommonModule
18
+ ],
19
+ exports: [SacValidationSummaryComponent]
20
+ }]
21
+ }] });
22
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFsaWRhdGlvbnN1bW1hcnkubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2FjLWJvb3RzdHJhcDMvc3JjL2NvbnRyb2xzL3ZhbGlkYXRpb24vdmFsaWRhdGlvbnN1bW1hcnkubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLDZCQUE2QixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDcEUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDOztBQVMvQyxNQUFNLE9BQU8sb0NBQW9DOztpSUFBcEMsb0NBQW9DO2tJQUFwQyxvQ0FBb0MsaUJBTmhDLDZCQUE2QixhQUUxQyxZQUFZLGFBRUosNkJBQTZCO2tJQUU1QixvQ0FBb0MsWUFMdEM7WUFDUCxZQUFZO1NBQ2I7MkZBR1Usb0NBQW9DO2tCQVBoRCxRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBRSxDQUFDLDZCQUE2QixDQUFDO29CQUM3QyxPQUFPLEVBQUU7d0JBQ1AsWUFBWTtxQkFDYjtvQkFDRCxPQUFPLEVBQUUsQ0FBQyw2QkFBNkIsQ0FBQztpQkFDekMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU2FjVmFsaWRhdGlvblN1bW1hcnlDb21wb25lbnQgfSBmcm9tICcuL3ZhbGlkYXRpb25zdW1tYXJ5JztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5cbkBOZ01vZHVsZSh7XG4gIGRlY2xhcmF0aW9uczogW1NhY1ZhbGlkYXRpb25TdW1tYXJ5Q29tcG9uZW50XSxcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZVxuICBdLFxuICBleHBvcnRzOiBbU2FjVmFsaWRhdGlvblN1bW1hcnlDb21wb25lbnRdXG59KVxuZXhwb3J0IGNsYXNzIFNBQ0Jvb3RzdHJhcDNWYWxpZGF0aW9uU3VtbWFyeU1vZHVsZSB7IH1cbiJdfQ==
@@ -1,4 +1,4 @@
1
- import * as i0 from '@angular/core';
2
- import { SACBootstrap3ValidationSummaryModule } from './validationsummary.module';
3
- export const SACBootstrap3ValidationSummaryModuleNgFactory = i0.ɵnoSideEffects(function () { return new i0.ɵNgModuleFactory(SACBootstrap3ValidationSummaryModule); });
1
+ import * as i0 from '@angular/core';
2
+ import { SACBootstrap3ValidationSummaryModule } from './validationsummary.module';
3
+ export const SACBootstrap3ValidationSummaryModuleNgFactory = i0.ɵnoSideEffects(function () { return new i0.ɵNgModuleFactory(SACBootstrap3ValidationSummaryModule); });
4
4
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFsaWRhdGlvbnN1bW1hcnkubW9kdWxlLm5nZmFjdG9yeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NhYy1ib290c3RyYXAzL3NyYy9jb250cm9scy92YWxpZGF0aW9uL3ZhbGlkYXRpb25zdW1tYXJ5Lm1vZHVsZS5uZ2ZhY3RvcnkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDcEMsT0FBTyxFQUFDLG9DQUFvQyxFQUFDLE1BQU0sNEJBQTRCLENBQUM7QUFDaEYsTUFBTSxDQUFDLE1BQU0sNkNBQTZDLDBDQUE2QixJQUFJLEVBQUUsQ0FBQyxnQkFBZ0IsQ0FBQyxvQ0FBb0MsQ0FBQyxJQUFBLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBpMCBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7U0FDQm9vdHN0cmFwM1ZhbGlkYXRpb25TdW1tYXJ5TW9kdWxlfSBmcm9tICcuL3ZhbGlkYXRpb25zdW1tYXJ5Lm1vZHVsZSc7XG5leHBvcnQgY29uc3QgU0FDQm9vdHN0cmFwM1ZhbGlkYXRpb25TdW1tYXJ5TW9kdWxlTmdGYWN0b3J5OiBpMC7JtU5nTW9kdWxlRmFjdG9yeTxhbnk+ID0gbmV3IGkwLsm1TmdNb2R1bGVGYWN0b3J5KFNBQ0Jvb3RzdHJhcDNWYWxpZGF0aW9uU3VtbWFyeU1vZHVsZSk7XG5leHBvcnQgY29uc3QgybVOb25FbXB0eU1vZHVsZSA9IHRydWU7Il19
@@ -1,2 +1,2 @@
1
- export const SACBootstrap3ValidationSummaryModuleNgSummary = null;
1
+ export const SACBootstrap3ValidationSummaryModuleNgSummary = null;
2
2
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFsaWRhdGlvbnN1bW1hcnkubW9kdWxlLm5nc3VtbWFyeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NhYy1ib290c3RyYXAzL3NyYy9jb250cm9scy92YWxpZGF0aW9uL3ZhbGlkYXRpb25zdW1tYXJ5Lm1vZHVsZS5uZ3N1bW1hcnkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFDLE1BQU0sNkNBQTZDLEdBQVEsSUFBSSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNvbnN0IFNBQ0Jvb3RzdHJhcDNWYWxpZGF0aW9uU3VtbWFyeU1vZHVsZU5nU3VtbWFyeTogYW55ID0gbnVsbDsiXX0=
@@ -1,4 +1,4 @@
1
- import * as i0 from '@angular/core';
2
- import { SacValidationSummaryComponent } from './validationsummary';
3
- export const ɵNonEmptyModule = true;
1
+ import * as i0 from '@angular/core';
2
+ import { SacValidationSummaryComponent } from './validationsummary';
3
+ export const ɵNonEmptyModule = true;
4
4
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFsaWRhdGlvbnN1bW1hcnkubmdmYWN0b3J5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2FjLWJvb3RzdHJhcDMvc3JjL2NvbnRyb2xzL3ZhbGlkYXRpb24vdmFsaWRhdGlvbnN1bW1hcnkubmdmYWN0b3J5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3BDLE9BQU8sRUFBQyw2QkFBNkIsRUFBQyxNQUFNLHFCQUFxQixDQUFDO0FBRWxFLE1BQU0sQ0FBQyxNQUFNLGVBQWUsR0FBRyxJQUFJLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBpMCBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7U2FjVmFsaWRhdGlvblN1bW1hcnlDb21wb25lbnR9IGZyb20gJy4vdmFsaWRhdGlvbnN1bW1hcnknO1xuZXhwb3J0IGNvbnN0IFNhY1ZhbGlkYXRpb25TdW1tYXJ5Q29tcG9uZW50TmdGYWN0b3J5OiBpMC7JtU5nTW9kdWxlRmFjdG9yeTxhbnk+ID0gbmV3IGkwLsm1TmdNb2R1bGVGYWN0b3J5KFNhY1ZhbGlkYXRpb25TdW1tYXJ5Q29tcG9uZW50KTtcbmV4cG9ydCBjb25zdCDJtU5vbkVtcHR5TW9kdWxlID0gdHJ1ZTsiXX0=
@@ -1,2 +1,2 @@
1
- export const SacValidationSummaryComponentNgSummary = null;
1
+ export const SacValidationSummaryComponentNgSummary = null;
2
2
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFsaWRhdGlvbnN1bW1hcnkubmdzdW1tYXJ5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2FjLWJvb3RzdHJhcDMvc3JjL2NvbnRyb2xzL3ZhbGlkYXRpb24vdmFsaWRhdGlvbnN1bW1hcnkubmdzdW1tYXJ5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sQ0FBQyxNQUFNLHNDQUFzQyxHQUFRLElBQUksQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjb25zdCBTYWNWYWxpZGF0aW9uU3VtbWFyeUNvbXBvbmVudE5nU3VtbWFyeTogYW55ID0gbnVsbDsiXX0=