@simpleangularcontrols/sac-common 10.0.0-rc.21 → 10.0.0-rc.22

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 (539) hide show
  1. package/README.md +16 -16
  2. package/bundles/simpleangularcontrols-sac-common.umd.js +12390 -12358
  3. package/bundles/simpleangularcontrols-sac-common.umd.js.map +1 -1
  4. package/bundles/simpleangularcontrols-sac-common.umd.min.js +1 -1
  5. package/bundles/simpleangularcontrols-sac-common.umd.min.js.map +1 -1
  6. package/common/basedatetimecontrol.d.ts +169 -169
  7. package/common/basedatetimecontrol.ngfactory.d.ts +1 -1
  8. package/common/baseinputcontrol.d.ts +38 -38
  9. package/common/baseinputcontrol.ngfactory.d.ts +1 -1
  10. package/common/baselistcontrol.d.ts +43 -43
  11. package/common/baselistcontrol.ngfactory.d.ts +1 -1
  12. package/common/basemodelcontrol.d.ts +280 -280
  13. package/common/basemodelcontrol.ngfactory.d.ts +1 -1
  14. package/common/baseselectcontrol.d.ts +14 -14
  15. package/common/baseselectcontrol.ngfactory.d.ts +1 -1
  16. package/common/baseuploadcontrol.d.ts +300 -300
  17. package/common/baseuploadcontrol.ngfactory.d.ts +1 -1
  18. package/components/browser/browser.d.ts +267 -267
  19. package/components/browser/browser.ngfactory.d.ts +1 -1
  20. package/components/browser/models/browserfile.d.ts +17 -17
  21. package/components/browser/models/browserfile.ngfactory.d.ts +1 -1
  22. package/components/browser/models/browserfiledeleterequest.d.ts +18 -18
  23. package/components/browser/models/browserfiledeleterequest.ngfactory.d.ts +1 -1
  24. package/components/browser/models/browserfilerenamerequest.d.ts +22 -22
  25. package/components/browser/models/browserfilerenamerequest.ngfactory.d.ts +1 -1
  26. package/components/browser/models/browserfileresponse.d.ts +10 -10
  27. package/components/browser/models/browserfileresponse.ngfactory.d.ts +1 -1
  28. package/components/browser/models/browserfilesaverequest.d.ts +22 -22
  29. package/components/browser/models/browserfilesaverequest.ngfactory.d.ts +1 -1
  30. package/components/browser/models/browsernode.d.ts +34 -34
  31. package/components/browser/models/browsernode.ngfactory.d.ts +1 -1
  32. package/components/browser/models/browsernodedeleterequest.d.ts +14 -14
  33. package/components/browser/models/browsernodedeleterequest.ngfactory.d.ts +1 -1
  34. package/components/browser/models/browsernodenewrequest.d.ts +18 -18
  35. package/components/browser/models/browsernodenewrequest.ngfactory.d.ts +1 -1
  36. package/components/browser/models/browsernoderenamerequest.d.ts +18 -18
  37. package/components/browser/models/browsernoderenamerequest.ngfactory.d.ts +1 -1
  38. package/components/browser/models/browsernoderequest.d.ts +18 -18
  39. package/components/browser/models/browsernoderequest.ngfactory.d.ts +1 -1
  40. package/components/browser/models/browsernoderesponse.d.ts +10 -10
  41. package/components/browser/models/browsernoderesponse.ngfactory.d.ts +1 -1
  42. package/controls/buttons/button.d.ts +70 -70
  43. package/controls/buttons/button.ngfactory.d.ts +1 -1
  44. package/controls/checkbox/checkbox.d.ts +32 -32
  45. package/controls/checkbox/checkbox.ngfactory.d.ts +1 -1
  46. package/controls/checkbox/radiobutton.d.ts +114 -114
  47. package/controls/checkbox/radiobutton.ngfactory.d.ts +1 -1
  48. package/controls/checkbox/radiobuttons.d.ts +60 -60
  49. package/controls/checkbox/radiobuttons.ngfactory.d.ts +1 -1
  50. package/controls/confirm/confirm.button.d.ts +25 -25
  51. package/controls/confirm/confirm.button.ngfactory.d.ts +1 -1
  52. package/controls/confirm/confirm.d.ts +49 -49
  53. package/controls/confirm/confirm.ngfactory.d.ts +1 -1
  54. package/controls/confirm/confirm.service.d.ts +63 -63
  55. package/controls/confirm/confirm.service.ngfactory.d.ts +1 -1
  56. package/controls/contextmenu/contextmenu.d.ts +120 -120
  57. package/controls/contextmenu/contextmenu.interface.d.ts +3 -3
  58. package/controls/contextmenu/contextmenu.interface.ngfactory.d.ts +1 -1
  59. package/controls/contextmenu/contextmenu.ngfactory.d.ts +1 -1
  60. package/controls/contextmenu/contextmenuanchor.d.ts +15 -15
  61. package/controls/contextmenu/contextmenuanchor.ngfactory.d.ts +1 -1
  62. package/controls/contextmenu/contextmenucontainer.d.ts +15 -15
  63. package/controls/contextmenu/contextmenucontainer.ngfactory.d.ts +1 -1
  64. package/controls/contextmenu/contextmenuitem.d.ts +10 -10
  65. package/controls/contextmenu/contextmenuitem.ngfactory.d.ts +1 -1
  66. package/controls/contextmenu/contextmenuitembutton.d.ts +67 -67
  67. package/controls/contextmenu/contextmenuitembutton.ngfactory.d.ts +1 -1
  68. package/controls/datetime/date.d.ts +117 -117
  69. package/controls/datetime/date.ngfactory.d.ts +1 -1
  70. package/controls/datetime/dateselector.d.ts +161 -161
  71. package/controls/datetime/dateselector.ngfactory.d.ts +1 -1
  72. package/controls/datetime/datetime.d.ts +131 -131
  73. package/controls/datetime/datetime.ngfactory.d.ts +1 -1
  74. package/controls/datetime/time.d.ts +111 -111
  75. package/controls/datetime/time.ngfactory.d.ts +1 -1
  76. package/controls/dialog/dialog.d.ts +93 -93
  77. package/controls/dialog/dialog.ngfactory.d.ts +1 -1
  78. package/controls/form/form.d.ts +47 -47
  79. package/controls/form/form.ngfactory.d.ts +1 -1
  80. package/controls/grid/grid.d.ts +127 -127
  81. package/controls/grid/grid.ngfactory.d.ts +1 -1
  82. package/controls/grid/gridbutton.d.ts +33 -33
  83. package/controls/grid/gridbutton.ngfactory.d.ts +1 -1
  84. package/controls/grid/gridcolumn.d.ts +28 -28
  85. package/controls/grid/gridcolumn.ngfactory.d.ts +1 -1
  86. package/controls/grid/gridcolumnaction.d.ts +15 -15
  87. package/controls/grid/gridcolumnaction.ngfactory.d.ts +1 -1
  88. package/controls/grid/gridcolumnbase.d.ts +94 -94
  89. package/controls/grid/gridcolumnbase.ngfactory.d.ts +1 -1
  90. package/controls/grid/gridimage.d.ts +9 -9
  91. package/controls/grid/gridimage.ngfactory.d.ts +1 -1
  92. package/controls/grid/model.d.ts +92 -92
  93. package/controls/grid/model.ngfactory.d.ts +1 -1
  94. package/controls/grid/paging.d.ts +145 -145
  95. package/controls/grid/paging.ngfactory.d.ts +1 -1
  96. package/controls/input/input.d.ts +35 -35
  97. package/controls/input/input.ngfactory.d.ts +1 -1
  98. package/controls/input/inputarea.d.ts +26 -26
  99. package/controls/input/inputarea.ngfactory.d.ts +1 -1
  100. package/controls/input/inputcurrency.d.ts +11 -11
  101. package/controls/input/inputcurrency.ngfactory.d.ts +1 -1
  102. package/controls/input/inputdecimal.d.ts +59 -59
  103. package/controls/input/inputdecimal.ngfactory.d.ts +1 -1
  104. package/controls/input/inputemail.d.ts +19 -19
  105. package/controls/input/inputemail.ngfactory.d.ts +1 -1
  106. package/controls/input/inputinteger.d.ts +59 -59
  107. package/controls/input/inputinteger.ngfactory.d.ts +1 -1
  108. package/controls/input/inputpassword.d.ts +23 -23
  109. package/controls/input/inputpassword.ngfactory.d.ts +1 -1
  110. package/controls/input/inputsearch.d.ts +32 -32
  111. package/controls/input/inputsearch.ngfactory.d.ts +1 -1
  112. package/controls/layout/formlayout.d.ts +62 -62
  113. package/controls/layout/formlayout.ngfactory.d.ts +1 -1
  114. package/controls/list/buildvaluestring.d.ts +6 -6
  115. package/controls/list/buildvaluestring.ngfactory.d.ts +1 -1
  116. package/controls/list/dropdown.d.ts +96 -96
  117. package/controls/list/dropdown.ngfactory.d.ts +1 -1
  118. package/controls/list/dropdownoptions.d.ts +38 -38
  119. package/controls/list/dropdownoptions.ngfactory.d.ts +1 -1
  120. package/controls/list/list.module.d.ts +2 -2
  121. package/controls/list/list.module.ngfactory.d.ts +3 -3
  122. package/controls/list/listbox.d.ts +86 -86
  123. package/controls/list/listbox.ngfactory.d.ts +1 -1
  124. package/controls/multilanguage/multilanguageinput.d.ts +102 -102
  125. package/controls/multilanguage/multilanguageinput.ngfactory.d.ts +1 -1
  126. package/controls/multilanguage/multilanguageinputarea.d.ts +107 -107
  127. package/controls/multilanguage/multilanguageinputarea.ngfactory.d.ts +1 -1
  128. package/controls/static/formcontainer.d.ts +35 -35
  129. package/controls/static/formcontainer.ngfactory.d.ts +1 -1
  130. package/controls/static/staticlabel.d.ts +18 -18
  131. package/controls/static/staticlabel.ngfactory.d.ts +1 -1
  132. package/controls/tabs/tab.d.ts +45 -45
  133. package/controls/tabs/tab.ngfactory.d.ts +1 -1
  134. package/controls/tabs/tabitem.d.ts +30 -30
  135. package/controls/tabs/tabitem.ngfactory.d.ts +1 -1
  136. package/controls/tinymce/tinymce.d.ts +149 -149
  137. package/controls/tinymce/tinymce.ngfactory.d.ts +1 -1
  138. package/controls/tinymce/tinymcedialogsettings.d.ts +27 -27
  139. package/controls/tinymce/tinymcedialogsettings.ngfactory.d.ts +1 -1
  140. package/controls/tinymce/tinymcedialogsettingsmeta.d.ts +9 -9
  141. package/controls/tinymce/tinymcedialogsettingsmeta.ngfactory.d.ts +1 -1
  142. package/controls/tinymce/tinymceinstance.d.ts +10 -10
  143. package/controls/tinymce/tinymceinstance.ngfactory.d.ts +1 -1
  144. package/controls/tooltip/tooltip.d.ts +145 -145
  145. package/controls/tooltip/tooltip.ngfactory.d.ts +1 -1
  146. package/controls/treeview/treeview.d.ts +185 -185
  147. package/controls/treeview/treeview.ngfactory.d.ts +1 -1
  148. package/controls/upload/dropzonemultiple.d.ts +70 -70
  149. package/controls/upload/dropzonemultiple.ngfactory.d.ts +1 -1
  150. package/controls/upload/dropzonesingle.d.ts +47 -47
  151. package/controls/upload/dropzonesingle.ngfactory.d.ts +1 -1
  152. package/controls/upload/uploadmultiple.d.ts +50 -50
  153. package/controls/upload/uploadmultiple.ngfactory.d.ts +1 -1
  154. package/controls/upload/uploadsingle.d.ts +27 -27
  155. package/controls/upload/uploadsingle.ngfactory.d.ts +1 -1
  156. package/controls/validation/validationsummary.d.ts +60 -60
  157. package/controls/validation/validationsummary.ngfactory.d.ts +1 -1
  158. package/controls/wizard/wizard.d.ts +73 -73
  159. package/controls/wizard/wizard.ngfactory.d.ts +1 -1
  160. package/controls/wizard/wizarditem.d.ts +25 -25
  161. package/controls/wizard/wizarditem.ngfactory.d.ts +1 -1
  162. package/enums/ButtonRoleType.d.ts +1 -1
  163. package/enums/ButtonRoleType.ngfactory.d.ts +1 -1
  164. package/enums/ControlHeight.d.ts +17 -17
  165. package/enums/ControlHeight.ngfactory.d.ts +1 -1
  166. package/enums/IconType.d.ts +7 -7
  167. package/enums/IconType.ngfactory.d.ts +1 -1
  168. package/esm2015/common/basedatetimecontrol.js +319 -319
  169. package/esm2015/common/basedatetimecontrol.ngfactory.js +7 -7
  170. package/esm2015/common/baseinputcontrol.js +73 -73
  171. package/esm2015/common/baseinputcontrol.ngfactory.js +7 -7
  172. package/esm2015/common/baselistcontrol.js +55 -55
  173. package/esm2015/common/baselistcontrol.ngfactory.js +7 -7
  174. package/esm2015/common/basemodelcontrol.js +535 -535
  175. package/esm2015/common/basemodelcontrol.ngfactory.js +7 -7
  176. package/esm2015/common/baseselectcontrol.js +26 -26
  177. package/esm2015/common/baseselectcontrol.ngfactory.js +7 -7
  178. package/esm2015/common/baseuploadcontrol.js +490 -490
  179. package/esm2015/common/baseuploadcontrol.ngfactory.js +7 -7
  180. package/esm2015/components/browser/browser.js +545 -545
  181. package/esm2015/components/browser/browser.ngfactory.js +7 -7
  182. package/esm2015/components/browser/models/browserfile.js +1 -1
  183. package/esm2015/components/browser/models/browserfile.ngfactory.js +7 -7
  184. package/esm2015/components/browser/models/browserfiledeleterequest.js +13 -13
  185. package/esm2015/components/browser/models/browserfiledeleterequest.ngfactory.js +7 -7
  186. package/esm2015/components/browser/models/browserfilerenamerequest.js +13 -13
  187. package/esm2015/components/browser/models/browserfilerenamerequest.ngfactory.js +7 -7
  188. package/esm2015/components/browser/models/browserfileresponse.js +1 -1
  189. package/esm2015/components/browser/models/browserfileresponse.ngfactory.js +7 -7
  190. package/esm2015/components/browser/models/browserfilesaverequest.js +13 -13
  191. package/esm2015/components/browser/models/browserfilesaverequest.ngfactory.js +7 -7
  192. package/esm2015/components/browser/models/browsernode.js +1 -1
  193. package/esm2015/components/browser/models/browsernode.ngfactory.js +7 -7
  194. package/esm2015/components/browser/models/browsernodedeleterequest.js +13 -13
  195. package/esm2015/components/browser/models/browsernodedeleterequest.ngfactory.js +7 -7
  196. package/esm2015/components/browser/models/browsernodenewrequest.js +13 -13
  197. package/esm2015/components/browser/models/browsernodenewrequest.ngfactory.js +7 -7
  198. package/esm2015/components/browser/models/browsernoderenamerequest.js +13 -13
  199. package/esm2015/components/browser/models/browsernoderenamerequest.ngfactory.js +7 -7
  200. package/esm2015/components/browser/models/browsernoderequest.js +13 -13
  201. package/esm2015/components/browser/models/browsernoderequest.ngfactory.js +7 -7
  202. package/esm2015/components/browser/models/browsernoderesponse.js +1 -1
  203. package/esm2015/components/browser/models/browsernoderesponse.ngfactory.js +7 -7
  204. package/esm2015/controls/buttons/button.js +141 -141
  205. package/esm2015/controls/buttons/button.ngfactory.js +7 -7
  206. package/esm2015/controls/checkbox/checkbox.js +56 -56
  207. package/esm2015/controls/checkbox/checkbox.ngfactory.js +7 -7
  208. package/esm2015/controls/checkbox/radiobutton.js +164 -164
  209. package/esm2015/controls/checkbox/radiobutton.ngfactory.js +7 -7
  210. package/esm2015/controls/checkbox/radiobuttons.js +113 -113
  211. package/esm2015/controls/checkbox/radiobuttons.ngfactory.js +7 -7
  212. package/esm2015/controls/confirm/confirm.button.js +32 -32
  213. package/esm2015/controls/confirm/confirm.button.ngfactory.js +7 -7
  214. package/esm2015/controls/confirm/confirm.js +75 -75
  215. package/esm2015/controls/confirm/confirm.ngfactory.js +7 -7
  216. package/esm2015/controls/confirm/confirm.service.js +87 -87
  217. package/esm2015/controls/confirm/confirm.service.ngfactory.js +7 -7
  218. package/esm2015/controls/contextmenu/contextmenu.interface.js +1 -1
  219. package/esm2015/controls/contextmenu/contextmenu.interface.ngfactory.js +7 -7
  220. package/esm2015/controls/contextmenu/contextmenu.js +193 -193
  221. package/esm2015/controls/contextmenu/contextmenu.ngfactory.js +7 -7
  222. package/esm2015/controls/contextmenu/contextmenuanchor.js +22 -22
  223. package/esm2015/controls/contextmenu/contextmenuanchor.ngfactory.js +7 -7
  224. package/esm2015/controls/contextmenu/contextmenucontainer.js +22 -22
  225. package/esm2015/controls/contextmenu/contextmenucontainer.ngfactory.js +7 -7
  226. package/esm2015/controls/contextmenu/contextmenuitem.js +21 -21
  227. package/esm2015/controls/contextmenu/contextmenuitem.ngfactory.js +7 -7
  228. package/esm2015/controls/contextmenu/contextmenuitembutton.js +106 -106
  229. package/esm2015/controls/contextmenu/contextmenuitembutton.ngfactory.js +7 -7
  230. package/esm2015/controls/datetime/date.js +213 -213
  231. package/esm2015/controls/datetime/date.ngfactory.js +7 -7
  232. package/esm2015/controls/datetime/dateselector.js +458 -458
  233. package/esm2015/controls/datetime/dateselector.ngfactory.js +7 -7
  234. package/esm2015/controls/datetime/datetime.js +229 -229
  235. package/esm2015/controls/datetime/datetime.ngfactory.js +7 -7
  236. package/esm2015/controls/datetime/time.js +212 -212
  237. package/esm2015/controls/datetime/time.ngfactory.js +7 -7
  238. package/esm2015/controls/dialog/dialog.js +165 -165
  239. package/esm2015/controls/dialog/dialog.ngfactory.js +7 -7
  240. package/esm2015/controls/form/form.js +110 -110
  241. package/esm2015/controls/form/form.ngfactory.js +7 -7
  242. package/esm2015/controls/grid/grid.js +144 -144
  243. package/esm2015/controls/grid/grid.ngfactory.js +7 -7
  244. package/esm2015/controls/grid/gridbutton.js +60 -60
  245. package/esm2015/controls/grid/gridbutton.ngfactory.js +7 -7
  246. package/esm2015/controls/grid/gridcolumn.js +56 -56
  247. package/esm2015/controls/grid/gridcolumn.ngfactory.js +7 -7
  248. package/esm2015/controls/grid/gridcolumnaction.js +27 -27
  249. package/esm2015/controls/grid/gridcolumnaction.ngfactory.js +7 -7
  250. package/esm2015/controls/grid/gridcolumnbase.js +138 -138
  251. package/esm2015/controls/grid/gridcolumnbase.ngfactory.js +7 -7
  252. package/esm2015/controls/grid/gridimage.js +13 -13
  253. package/esm2015/controls/grid/gridimage.ngfactory.js +7 -7
  254. package/esm2015/controls/grid/model.js +100 -100
  255. package/esm2015/controls/grid/model.ngfactory.js +7 -7
  256. package/esm2015/controls/grid/paging.js +252 -252
  257. package/esm2015/controls/grid/paging.ngfactory.js +7 -7
  258. package/esm2015/controls/input/input.js +64 -64
  259. package/esm2015/controls/input/input.ngfactory.js +7 -7
  260. package/esm2015/controls/input/inputarea.js +61 -61
  261. package/esm2015/controls/input/inputarea.ngfactory.js +7 -7
  262. package/esm2015/controls/input/inputcurrency.js +31 -31
  263. package/esm2015/controls/input/inputcurrency.ngfactory.js +7 -7
  264. package/esm2015/controls/input/inputdecimal.js +146 -146
  265. package/esm2015/controls/input/inputdecimal.ngfactory.js +7 -7
  266. package/esm2015/controls/input/inputemail.js +41 -41
  267. package/esm2015/controls/input/inputemail.ngfactory.js +7 -7
  268. package/esm2015/controls/input/inputinteger.js +130 -130
  269. package/esm2015/controls/input/inputinteger.ngfactory.js +7 -7
  270. package/esm2015/controls/input/inputpassword.js +46 -46
  271. package/esm2015/controls/input/inputpassword.ngfactory.js +7 -7
  272. package/esm2015/controls/input/inputsearch.js +66 -66
  273. package/esm2015/controls/input/inputsearch.ngfactory.js +7 -7
  274. package/esm2015/controls/layout/formlayout.js +82 -82
  275. package/esm2015/controls/layout/formlayout.ngfactory.js +7 -7
  276. package/esm2015/controls/list/buildvaluestring.js +18 -18
  277. package/esm2015/controls/list/buildvaluestring.ngfactory.js +7 -7
  278. package/esm2015/controls/list/dropdown.js +172 -172
  279. package/esm2015/controls/list/dropdown.ngfactory.js +7 -7
  280. package/esm2015/controls/list/dropdownoptions.js +72 -72
  281. package/esm2015/controls/list/dropdownoptions.ngfactory.js +7 -7
  282. package/esm2015/controls/list/list.module.js +11 -11
  283. package/esm2015/controls/list/list.module.ngfactory.js +7 -7
  284. package/esm2015/controls/list/listbox.js +187 -187
  285. package/esm2015/controls/list/listbox.ngfactory.js +7 -7
  286. package/esm2015/controls/multilanguage/multilanguageinput.js +224 -224
  287. package/esm2015/controls/multilanguage/multilanguageinput.ngfactory.js +7 -7
  288. package/esm2015/controls/multilanguage/multilanguageinputarea.js +225 -225
  289. package/esm2015/controls/multilanguage/multilanguageinputarea.ngfactory.js +7 -7
  290. package/esm2015/controls/static/formcontainer.js +61 -61
  291. package/esm2015/controls/static/formcontainer.ngfactory.js +7 -7
  292. package/esm2015/controls/static/staticlabel.js +31 -31
  293. package/esm2015/controls/static/staticlabel.ngfactory.js +7 -7
  294. package/esm2015/controls/tabs/tab.js +72 -72
  295. package/esm2015/controls/tabs/tab.ngfactory.js +7 -7
  296. package/esm2015/controls/tabs/tabitem.js +32 -32
  297. package/esm2015/controls/tabs/tabitem.ngfactory.js +7 -7
  298. package/esm2015/controls/tinymce/tinymce.js +238 -238
  299. package/esm2015/controls/tinymce/tinymce.ngfactory.js +7 -7
  300. package/esm2015/controls/tinymce/tinymcedialogsettings.js +13 -13
  301. package/esm2015/controls/tinymce/tinymcedialogsettings.ngfactory.js +7 -7
  302. package/esm2015/controls/tinymce/tinymcedialogsettingsmeta.js +4 -4
  303. package/esm2015/controls/tinymce/tinymcedialogsettingsmeta.ngfactory.js +7 -7
  304. package/esm2015/controls/tinymce/tinymceinstance.js +1 -1
  305. package/esm2015/controls/tinymce/tinymceinstance.ngfactory.js +7 -7
  306. package/esm2015/controls/tooltip/tooltip.js +242 -242
  307. package/esm2015/controls/tooltip/tooltip.ngfactory.js +7 -7
  308. package/esm2015/controls/treeview/treeview.js +367 -367
  309. package/esm2015/controls/treeview/treeview.ngfactory.js +7 -7
  310. package/esm2015/controls/upload/dropzonemultiple.js +161 -163
  311. package/esm2015/controls/upload/dropzonemultiple.ngfactory.js +7 -7
  312. package/esm2015/controls/upload/dropzonesingle.js +108 -108
  313. package/esm2015/controls/upload/dropzonesingle.ngfactory.js +7 -7
  314. package/esm2015/controls/upload/uploadmultiple.js +121 -121
  315. package/esm2015/controls/upload/uploadmultiple.ngfactory.js +7 -7
  316. package/esm2015/controls/upload/uploadsingle.js +59 -55
  317. package/esm2015/controls/upload/uploadsingle.ngfactory.js +7 -7
  318. package/esm2015/controls/validation/validationsummary.js +133 -133
  319. package/esm2015/controls/validation/validationsummary.ngfactory.js +7 -7
  320. package/esm2015/controls/wizard/wizard.js +139 -139
  321. package/esm2015/controls/wizard/wizard.ngfactory.js +7 -7
  322. package/esm2015/controls/wizard/wizarditem.js +27 -27
  323. package/esm2015/controls/wizard/wizarditem.ngfactory.js +7 -7
  324. package/esm2015/enums/ButtonRoleType.js +1 -1
  325. package/esm2015/enums/ButtonRoleType.ngfactory.js +7 -7
  326. package/esm2015/enums/ControlHeight.js +19 -19
  327. package/esm2015/enums/ControlHeight.ngfactory.js +7 -7
  328. package/esm2015/enums/IconType.js +9 -9
  329. package/esm2015/enums/IconType.ngfactory.js +7 -7
  330. package/esm2015/interfaces/ISacConfigurationService.js +1 -1
  331. package/esm2015/interfaces/ISacConfigurationService.ngfactory.js +7 -7
  332. package/esm2015/interfaces/ISacFileBrowserService.js +1 -1
  333. package/esm2015/interfaces/ISacFileBrowserService.ngfactory.js +7 -7
  334. package/esm2015/interfaces/ISacIconService.js +1 -1
  335. package/esm2015/interfaces/ISacIconService.ngfactory.js +7 -7
  336. package/esm2015/interfaces/ISacLabelSizes.js +1 -1
  337. package/esm2015/interfaces/ISacLabelSizes.ngfactory.js +7 -7
  338. package/esm2015/interfaces/ISacLanguageService.js +1 -1
  339. package/esm2015/interfaces/ISacLanguageService.ngfactory.js +7 -7
  340. package/esm2015/interfaces/ISacLocalisationService.js +1 -1
  341. package/esm2015/interfaces/ISacLocalisationService.ngfactory.js +7 -7
  342. package/esm2015/interfaces/ISacUploadEventCompleteState.js +1 -1
  343. package/esm2015/interfaces/ISacUploadEventCompleteState.ngfactory.js +7 -7
  344. package/esm2015/interfaces/ISacValidationKeyService.js +1 -1
  345. package/esm2015/interfaces/ISacValidationKeyService.ngfactory.js +7 -7
  346. package/esm2015/interfaces/iabstractcontrollabel.js +1 -1
  347. package/esm2015/interfaces/iabstractcontrollabel.ngfactory.js +7 -7
  348. package/esm2015/interfaces/iconfirmcomponent.js +1 -1
  349. package/esm2015/interfaces/iconfirmcomponent.ngfactory.js +7 -7
  350. package/esm2015/interfaces/idatetimecontrol.js +1 -1
  351. package/esm2015/interfaces/idatetimecontrol.ngfactory.js +7 -7
  352. package/esm2015/interfaces/iuploadcontrol.js +1 -1
  353. package/esm2015/interfaces/iuploadcontrol.ngfactory.js +7 -7
  354. package/esm2015/interfaces/treeviewaction.interface.js +1 -1
  355. package/esm2015/interfaces/treeviewaction.interface.ngfactory.js +7 -7
  356. package/esm2015/models/languagemodel.js +13 -13
  357. package/esm2015/models/languagemodel.ngfactory.js +7 -7
  358. package/esm2015/public_api.js +108 -108
  359. package/esm2015/public_api.ngfactory.js +7 -7
  360. package/esm2015/services/index.js +7 -7
  361. package/esm2015/services/index.ngfactory.js +7 -7
  362. package/esm2015/services/sac-configuration.service.js +103 -103
  363. package/esm2015/services/sac-configuration.service.ngfactory.js +7 -7
  364. package/esm2015/services/sac-filebrowser.service.js +203 -203
  365. package/esm2015/services/sac-filebrowser.service.ngfactory.js +7 -7
  366. package/esm2015/services/sac-icon.service.js +191 -191
  367. package/esm2015/services/sac-icon.service.ngfactory.js +7 -7
  368. package/esm2015/services/sac-language.service.js +43 -43
  369. package/esm2015/services/sac-language.service.ngfactory.js +7 -7
  370. package/esm2015/services/sac-localisation.service.js +349 -349
  371. package/esm2015/services/sac-localisation.service.ngfactory.js +7 -7
  372. package/esm2015/services/sac-validationkey.service.js +159 -159
  373. package/esm2015/services/sac-validationkey.service.ngfactory.js +7 -7
  374. package/esm2015/simpleangularcontrols-sac-common.js +5 -5
  375. package/esm2015/simpleangularcontrols-sac-common.ngfactory.js +7 -7
  376. package/esm2015/utilities/convertion.js +32 -32
  377. package/esm2015/utilities/convertion.ngfactory.js +7 -7
  378. package/esm2015/utilities/datatypes.js +9 -9
  379. package/esm2015/utilities/datatypes.ngfactory.js +7 -7
  380. package/esm2015/utilities/enums.js +20 -20
  381. package/esm2015/utilities/enums.ngfactory.js +7 -7
  382. package/esm2015/utilities/guid.js +18 -18
  383. package/esm2015/utilities/guid.ngfactory.js +7 -7
  384. package/esm2015/utilities/interpolation.js +50 -50
  385. package/esm2015/utilities/interpolation.ngfactory.js +7 -7
  386. package/esm2015/utilities/popuphelper.js +343 -343
  387. package/esm2015/utilities/popuphelper.ngfactory.js +7 -7
  388. package/esm2015/utilities/positioning.js +301 -301
  389. package/esm2015/utilities/positioning.ngfactory.js +7 -7
  390. package/esm2015/validation/email.validator.js +13 -13
  391. package/esm2015/validation/email.validator.ngfactory.js +7 -7
  392. package/esm2015/validation/equals.validator.js +14 -14
  393. package/esm2015/validation/equals.validator.ngfactory.js +7 -7
  394. package/esm2015/validation/index.js +3 -3
  395. package/esm2015/validation/index.ngfactory.js +7 -7
  396. package/esm2015/validation/invaliddate.validator.js +14 -14
  397. package/esm2015/validation/invaliddate.validator.ngfactory.js +7 -7
  398. package/esm2015/validation/isDateValid.js +23 -23
  399. package/esm2015/validation/isDateValid.ngfactory.js +7 -7
  400. package/esm2015/validation/maxdate.validator.js +21 -21
  401. package/esm2015/validation/maxdate.validator.ngfactory.js +7 -7
  402. package/esm2015/validation/maxtime.validator.js +21 -21
  403. package/esm2015/validation/maxtime.validator.ngfactory.js +7 -7
  404. package/esm2015/validation/maxvalue.validator.js +16 -16
  405. package/esm2015/validation/maxvalue.validator.ngfactory.js +7 -7
  406. package/esm2015/validation/mindate.validator.js +21 -21
  407. package/esm2015/validation/mindate.validator.ngfactory.js +7 -7
  408. package/esm2015/validation/minfiles.validator.js +19 -19
  409. package/esm2015/validation/minfiles.validator.ngfactory.js +7 -7
  410. package/esm2015/validation/mintextlength.validator.js +23 -23
  411. package/esm2015/validation/mintextlength.validator.ngfactory.js +7 -7
  412. package/esm2015/validation/mintime.validator.js +21 -21
  413. package/esm2015/validation/mintime.validator.ngfactory.js +7 -7
  414. package/esm2015/validation/minvalue.validator.js +16 -16
  415. package/esm2015/validation/minvalue.validator.ngfactory.js +7 -7
  416. package/esm2015/validation/multilanguagerequired.validator.js +22 -22
  417. package/esm2015/validation/multilanguagerequired.validator.ngfactory.js +7 -7
  418. package/esm2015/validation/multilanguagerequiredany.validator.js +22 -22
  419. package/esm2015/validation/multilanguagerequiredany.validator.ngfactory.js +7 -7
  420. package/esm2015/validation/notequals.validator.js +14 -14
  421. package/esm2015/validation/notequals.validator.ngfactory.js +7 -7
  422. package/esm2015/validation/pattern.validator.js +16 -16
  423. package/esm2015/validation/pattern.validator.ngfactory.js +7 -7
  424. package/esm2015/validation/required.validator.js +13 -13
  425. package/esm2015/validation/required.validator.ngfactory.js +7 -7
  426. package/esm2015/validation/validation.class.js +218 -218
  427. package/esm2015/validation/validation.class.ngfactory.js +7 -7
  428. package/esm2015/validation/validationerrorcreator.js +11 -11
  429. package/esm2015/validation/validationerrorcreator.ngfactory.js +7 -7
  430. package/esm2015/validation/validationerroritem.js +27 -27
  431. package/esm2015/validation/validationerroritem.ngfactory.js +7 -7
  432. package/fesm2015/simpleangularcontrols-sac-common.js +10664 -10662
  433. package/fesm2015/simpleangularcontrols-sac-common.js.map +1 -1
  434. package/interfaces/ISacConfigurationService.d.ts +58 -58
  435. package/interfaces/ISacConfigurationService.ngfactory.d.ts +1 -1
  436. package/interfaces/ISacFileBrowserService.d.ts +65 -65
  437. package/interfaces/ISacFileBrowserService.ngfactory.d.ts +1 -1
  438. package/interfaces/ISacIconService.d.ts +113 -113
  439. package/interfaces/ISacIconService.ngfactory.d.ts +1 -1
  440. package/interfaces/ISacLabelSizes.d.ts +26 -26
  441. package/interfaces/ISacLabelSizes.ngfactory.d.ts +1 -1
  442. package/interfaces/ISacLanguageService.d.ts +12 -12
  443. package/interfaces/ISacLanguageService.ngfactory.d.ts +1 -1
  444. package/interfaces/ISacLocalisationService.d.ts +10 -10
  445. package/interfaces/ISacLocalisationService.ngfactory.d.ts +1 -1
  446. package/interfaces/ISacUploadEventCompleteState.d.ts +5 -5
  447. package/interfaces/ISacUploadEventCompleteState.ngfactory.d.ts +1 -1
  448. package/interfaces/ISacValidationKeyService.d.ts +52 -52
  449. package/interfaces/ISacValidationKeyService.ngfactory.d.ts +1 -1
  450. package/interfaces/iabstractcontrollabel.d.ts +6 -6
  451. package/interfaces/iabstractcontrollabel.ngfactory.d.ts +1 -1
  452. package/interfaces/iconfirmcomponent.d.ts +18 -18
  453. package/interfaces/iconfirmcomponent.ngfactory.d.ts +1 -1
  454. package/interfaces/idatetimecontrol.d.ts +7 -7
  455. package/interfaces/idatetimecontrol.ngfactory.d.ts +1 -1
  456. package/interfaces/iuploadcontrol.d.ts +9 -9
  457. package/interfaces/iuploadcontrol.ngfactory.d.ts +1 -1
  458. package/interfaces/treeviewaction.interface.d.ts +4 -4
  459. package/interfaces/treeviewaction.interface.ngfactory.d.ts +1 -1
  460. package/models/languagemodel.d.ts +22 -22
  461. package/models/languagemodel.ngfactory.d.ts +1 -1
  462. package/package.json +1 -1
  463. package/public_api.d.ts +86 -86
  464. package/public_api.ngfactory.d.ts +1 -1
  465. package/services/index.d.ts +6 -6
  466. package/services/index.ngfactory.d.ts +1 -1
  467. package/services/sac-configuration.service.d.ts +121 -121
  468. package/services/sac-configuration.service.ngfactory.d.ts +1 -1
  469. package/services/sac-filebrowser.service.d.ts +140 -140
  470. package/services/sac-filebrowser.service.ngfactory.d.ts +1 -1
  471. package/services/sac-icon.service.d.ts +232 -232
  472. package/services/sac-icon.service.ngfactory.d.ts +1 -1
  473. package/services/sac-language.service.d.ts +26 -26
  474. package/services/sac-language.service.ngfactory.d.ts +1 -1
  475. package/services/sac-localisation.service.d.ts +137 -137
  476. package/services/sac-localisation.service.ngfactory.d.ts +1 -1
  477. package/services/sac-validationkey.service.d.ts +55 -55
  478. package/services/sac-validationkey.service.ngfactory.d.ts +1 -1
  479. package/simpleangularcontrols-sac-common-10.0.0-rc.22.tgz +0 -0
  480. package/simpleangularcontrols-sac-common.d.ts +4 -4
  481. package/simpleangularcontrols-sac-common.metadata.json +1 -1
  482. package/simpleangularcontrols-sac-common.ngfactory.d.ts +1 -1
  483. package/utilities/convertion.d.ts +15 -15
  484. package/utilities/convertion.ngfactory.d.ts +1 -1
  485. package/utilities/datatypes.d.ts +6 -6
  486. package/utilities/datatypes.ngfactory.d.ts +1 -1
  487. package/utilities/enums.d.ts +12 -12
  488. package/utilities/enums.ngfactory.d.ts +1 -1
  489. package/utilities/guid.d.ts +4 -4
  490. package/utilities/guid.ngfactory.d.ts +1 -1
  491. package/utilities/interpolation.d.ts +21 -21
  492. package/utilities/interpolation.ngfactory.d.ts +1 -1
  493. package/utilities/popuphelper.d.ts +83 -83
  494. package/utilities/popuphelper.ngfactory.d.ts +1 -1
  495. package/utilities/positioning.d.ts +82 -82
  496. package/utilities/positioning.ngfactory.d.ts +1 -1
  497. package/validation/email.validator.d.ts +2 -2
  498. package/validation/email.validator.ngfactory.d.ts +1 -1
  499. package/validation/equals.validator.d.ts +2 -2
  500. package/validation/equals.validator.ngfactory.d.ts +1 -1
  501. package/validation/index.d.ts +2 -2
  502. package/validation/index.ngfactory.d.ts +1 -1
  503. package/validation/invaliddate.validator.d.ts +2 -2
  504. package/validation/invaliddate.validator.ngfactory.d.ts +1 -1
  505. package/validation/isDateValid.d.ts +5 -5
  506. package/validation/isDateValid.ngfactory.d.ts +1 -1
  507. package/validation/maxdate.validator.d.ts +2 -2
  508. package/validation/maxdate.validator.ngfactory.d.ts +1 -1
  509. package/validation/maxtime.validator.d.ts +2 -2
  510. package/validation/maxtime.validator.ngfactory.d.ts +1 -1
  511. package/validation/maxvalue.validator.d.ts +2 -2
  512. package/validation/maxvalue.validator.ngfactory.d.ts +1 -1
  513. package/validation/mindate.validator.d.ts +2 -2
  514. package/validation/mindate.validator.ngfactory.d.ts +1 -1
  515. package/validation/minfiles.validator.d.ts +2 -2
  516. package/validation/minfiles.validator.ngfactory.d.ts +1 -1
  517. package/validation/mintextlength.validator.d.ts +2 -2
  518. package/validation/mintextlength.validator.ngfactory.d.ts +1 -1
  519. package/validation/mintime.validator.d.ts +2 -2
  520. package/validation/mintime.validator.ngfactory.d.ts +1 -1
  521. package/validation/minvalue.validator.d.ts +2 -2
  522. package/validation/minvalue.validator.ngfactory.d.ts +1 -1
  523. package/validation/multilanguagerequired.validator.d.ts +3 -3
  524. package/validation/multilanguagerequired.validator.ngfactory.d.ts +1 -1
  525. package/validation/multilanguagerequiredany.validator.d.ts +3 -3
  526. package/validation/multilanguagerequiredany.validator.ngfactory.d.ts +1 -1
  527. package/validation/notequals.validator.d.ts +2 -2
  528. package/validation/notequals.validator.ngfactory.d.ts +1 -1
  529. package/validation/pattern.validator.d.ts +2 -2
  530. package/validation/pattern.validator.ngfactory.d.ts +1 -1
  531. package/validation/required.validator.d.ts +2 -2
  532. package/validation/required.validator.ngfactory.d.ts +1 -1
  533. package/validation/validation.class.d.ts +158 -158
  534. package/validation/validation.class.ngfactory.d.ts +1 -1
  535. package/validation/validationerrorcreator.d.ts +1 -1
  536. package/validation/validationerrorcreator.ngfactory.d.ts +1 -1
  537. package/validation/validationerroritem.d.ts +33 -33
  538. package/validation/validationerroritem.ngfactory.d.ts +1 -1
  539. package/simpleangularcontrols-sac-common-10.0.0-rc.21.tgz +0 -0
@@ -1,187 +1,187 @@
1
- // tsco:ignore
2
- import { Directive, ElementRef, Input, QueryList, Renderer2, ViewChildren, } from '@angular/core';
3
- import { SacBaseSelectControl } from '../../common/baseselectcontrol';
4
- import { Validation } from '../../validation';
5
- // #endregion Interfaces
6
- // #region Classes
7
- /**
8
- * Basis Komponente für SacListboxOption
9
- */
10
- export class SacListboxOptionCommon {
11
- // #endregion Properties
12
- // #region Constructors
13
- /**
14
- * Konstruktor
15
- * @param _element: ElementRef
16
- * @param _renderer: Renderer2
17
- */
18
- constructor(_element, _renderer, _listbox) {
19
- this._element = _element;
20
- this._renderer = _renderer;
21
- this._listbox = _listbox;
22
- // #region Properties
23
- /**
24
- * Value von Selected Option Item
25
- */
26
- this._value = null;
27
- if (this._listbox) {
28
- this._listbox.registerOption(this);
29
- }
30
- }
31
- // #endregion Constructors
32
- // #region Public Getters And Setters
33
- /**
34
- * NgValue des Controls. Wird für die Mehrfachauswahl benötigt
35
- */
36
- set ngvalue(value) {
37
- if (this._listbox) {
38
- this._value = value;
39
- }
40
- }
41
- /**
42
- * Definiert den Wert der Listbox
43
- */
44
- set value(value) {
45
- if (this._listbox) {
46
- this._value = value;
47
- }
48
- }
49
- get value() {
50
- return this._value;
51
- }
52
- // #endregion Public Getters And Setters
53
- // #region Public Methods
54
- /**
55
- * Methode ergibt den Status der Elemente, die selektiert wurden
56
- * @param selected Element ist selektiert
57
- */
58
- _setSelected(selected) {
59
- this._renderer.setProperty(this._element.nativeElement, 'selected', selected);
60
- }
61
- /**
62
- * OnDestroy Event
63
- */
64
- ngOnDestroy() {
65
- if (this._listbox) {
66
- this._listbox.unregisterOption(this);
67
- }
68
- }
69
- }
70
- SacListboxOptionCommon.decorators = [
71
- { type: Directive }
72
- ];
73
- SacListboxOptionCommon.ctorParameters = () => [
74
- { type: ElementRef },
75
- { type: Renderer2 },
76
- { type: SacListboxCommon }
77
- ];
78
- SacListboxOptionCommon.propDecorators = {
79
- ngvalue: [{ type: Input }],
80
- value: [{ type: Input }]
81
- };
82
- /**
83
- * Komponente für SacListboxCommon. Extends SacBaseSelectControl
84
- */
85
- export class SacListboxCommon extends SacBaseSelectControl {
86
- constructor() {
87
- // #region Properties
88
- super(...arguments);
89
- /**
90
- * Anzahl der Zeilen
91
- */
92
- this.rowsize = 5;
93
- /**
94
- * Resource Key für Validation Message Required bei Control
95
- */
96
- this.validationmessagerequired = this.validationKeyService.ValidationErrorRequired;
97
- /**
98
- * Resource Key für Validation Message Required in Validation Summary
99
- */
100
- this.validationmessagesummaryrequired = this.validationKeyService.ValidationErrorSummaryRequired;
101
- /**
102
- * OptionMap
103
- */
104
- this.optionlist = new Array();
105
- // #endregion Public Methods
106
- }
107
- // #endregion Properties
108
- // #region Public Methods
109
- /**
110
- * Getter für selektierte Elemente
111
- */
112
- getSelectedItems(selectelement) {
113
- const selectedValues = new Array();
114
- if (selectelement.hasOwnProperty('selectedOptions')) {
115
- const options = selectelement.selectedOptions;
116
- for (let i = 0; i < options.length; i++) {
117
- const opt = options.item(i);
118
- selectedValues.push(opt.value);
119
- }
120
- }
121
- else {
122
- // Degrade on IE
123
- const options = selectelement.options;
124
- for (let i = 0; i < options.length; i++) {
125
- const opt = options.item(i);
126
- if (opt.selected) {
127
- selectedValues.push(opt.value);
128
- }
129
- }
130
- this.setValue(selectedValues);
131
- }
132
- }
133
- /**
134
- * Registriert ein Listbox Element
135
- * @param option Listbox Option Item das registriert werden soll
136
- */
137
- registerOption(option) {
138
- this.optionlist.push(option);
139
- }
140
- /**
141
- * Hebt die Registration eines Listbox Items auf
142
- * @param option Listbox Option Item das deregistriert werden soll
143
- */
144
- unregisterOption(option) {
145
- const index = this.optionlist.indexOf(option);
146
- this.optionlist.splice(index, 1);
147
- }
148
- /**
149
- * Validator Methode
150
- */
151
- validateData(c) {
152
- let error = null;
153
- if (this.isrequired) {
154
- error = Validation.required(this.validationmessagerequired, this.validationmessagesummaryrequired)(c);
155
- }
156
- return error;
157
- }
158
- /**
159
- * Methode schreibt neuen Wert
160
- */
161
- writeValue(value) {
162
- if (this.optionlist && value) {
163
- this.optionlist.forEach((itm) => {
164
- if (value.indexOf(itm.value) >= 0) {
165
- itm._setSelected(true);
166
- }
167
- });
168
- }
169
- super.writeValue(value);
170
- }
171
- }
172
- SacListboxCommon.decorators = [
173
- { type: Directive }
174
- ];
175
- SacListboxCommon.propDecorators = {
176
- rowsize: [{ type: Input }],
177
- validationmessagerequired: [{ type: Input }],
178
- validationmessagesummaryrequired: [{ type: Input }],
179
- contentOptions: [{ type: ViewChildren, args: [SacListboxOptionCommon,] }]
180
- };
181
- /**
182
- * Wrapper für HTML Select
183
- */
184
- class HTMLCollection {
185
- }
186
- // #endregion Classes
187
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlzdGJveC5qcyIsInNvdXJjZVJvb3QiOiJDOi9Qcm9qZWt0ZS9zaW1wbGVhbmd1bGFyY29udHJvbHMtbmcxMC9jaC5qbmV0d29yay5zYWMtY29udHJvbHMvcHJvamVjdHMvc2FjLWNvbW1vbi9zcmMvIiwic291cmNlcyI6WyJjb250cm9scy9saXN0L2xpc3Rib3gudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYztBQUNkLE9BQU8sRUFDTCxTQUFTLEVBQ1QsVUFBVSxFQUNWLEtBQUssRUFFTCxTQUFTLEVBQ1QsU0FBUyxFQUNULFlBQVksR0FDYixNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUN0RSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFzQjlDLHdCQUF3QjtBQUV4QixrQkFBa0I7QUFFbEI7O0dBRUc7QUFFSCxNQUFNLE9BQU8sc0JBQXNCO0lBUWpDLHdCQUF3QjtJQUV4Qix1QkFBdUI7SUFFdkI7Ozs7T0FJRztJQUNILFlBQ1UsUUFBb0IsRUFDcEIsU0FBb0IsRUFDcEIsUUFBMEI7UUFGMUIsYUFBUSxHQUFSLFFBQVEsQ0FBWTtRQUNwQixjQUFTLEdBQVQsU0FBUyxDQUFXO1FBQ3BCLGFBQVEsR0FBUixRQUFRLENBQWtCO1FBbkJwQyxxQkFBcUI7UUFFckI7O1dBRUc7UUFDSyxXQUFNLEdBQVEsSUFBSSxDQUFDO1FBZ0J6QixJQUFJLElBQUksQ0FBQyxRQUFRLEVBQUU7WUFDakIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLENBQUM7U0FDcEM7SUFDSCxDQUFDO0lBRUQsMEJBQTBCO0lBRTFCLHFDQUFxQztJQUVyQzs7T0FFRztJQUNILElBQ1csT0FBTyxDQUFDLEtBQVU7UUFDM0IsSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFO1lBQ2pCLElBQUksQ0FBQyxNQUFNLEdBQUcsS0FBSyxDQUFDO1NBQ3JCO0lBQ0gsQ0FBQztJQUVEOztPQUVHO0lBQ0gsSUFDVyxLQUFLLENBQUMsS0FBVTtRQUN6QixJQUFJLElBQUksQ0FBQyxRQUFRLEVBQUU7WUFDakIsSUFBSSxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUM7U0FDckI7SUFDSCxDQUFDO0lBRUQsSUFBVyxLQUFLO1FBQ2QsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDO0lBQ3JCLENBQUM7SUFFRCx3Q0FBd0M7SUFFeEMseUJBQXlCO0lBRXpCOzs7T0FHRztJQUNJLFlBQVksQ0FBQyxRQUFpQjtRQUNuQyxJQUFJLENBQUMsU0FBUyxDQUFDLFdBQVcsQ0FDeEIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxhQUFhLEVBQzNCLFVBQVUsRUFDVixRQUFRLENBQ1QsQ0FBQztJQUNKLENBQUM7SUFFRDs7T0FFRztJQUNJLFdBQVc7UUFDaEIsSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFO1lBQ2pCLElBQUksQ0FBQyxRQUFRLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLENBQUM7U0FDdEM7SUFDSCxDQUFDOzs7WUEvRUYsU0FBUzs7O1lBdENSLFVBQVU7WUFJVixTQUFTO1lBdURXLGdCQUFnQjs7O3NCQWNuQyxLQUFLO29CQVVMLEtBQUs7O0FBdUNSOztHQUVHO0FBRUgsTUFBTSxPQUFPLGdCQUFpQixTQUFRLG9CQUFtQztJQUR6RTtRQUVFLHFCQUFxQjs7UUFFckI7O1dBRUc7UUFDYSxZQUFPLEdBQVcsQ0FBQyxDQUFDO1FBQ3BDOztXQUVHO1FBQ2EsOEJBQXlCLEdBQ3ZDLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyx1QkFBdUIsQ0FBQztRQUVwRDs7V0FFRztRQUVJLHFDQUFnQyxHQUNyQyxJQUFJLENBQUMsb0JBQW9CLENBQUMsOEJBQThCLENBQUM7UUFRM0Q7O1dBRUc7UUFDSSxlQUFVLEdBQ2YsSUFBSSxLQUFLLEVBQTBCLENBQUM7UUFnRnRDLDRCQUE0QjtJQUM5QixDQUFDO0lBL0VDLHdCQUF3QjtJQUV4Qix5QkFBeUI7SUFFekI7O09BRUc7SUFDSSxnQkFBZ0IsQ0FBQyxhQUFrQjtRQUN4QyxNQUFNLGNBQWMsR0FBa0IsSUFBSSxLQUFLLEVBQVUsQ0FBQztRQUUxRCxJQUFJLGFBQWEsQ0FBQyxjQUFjLENBQUMsaUJBQWlCLENBQUMsRUFBRTtZQUNuRCxNQUFNLE9BQU8sR0FBbUIsYUFBYSxDQUFDLGVBQWUsQ0FBQztZQUM5RCxLQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsT0FBTyxDQUFDLE1BQU0sRUFBRSxDQUFDLEVBQUUsRUFBRTtnQkFDdkMsTUFBTSxHQUFHLEdBQWUsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztnQkFDeEMsY0FBYyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUM7YUFDaEM7U0FDRjthQUFNO1lBQ0wsZ0JBQWdCO1lBQ2hCLE1BQU0sT0FBTyxHQUFtQyxhQUFhLENBQUMsT0FBTyxDQUFDO1lBQ3RFLEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxPQUFPLENBQUMsTUFBTSxFQUFFLENBQUMsRUFBRSxFQUFFO2dCQUN2QyxNQUFNLEdBQUcsR0FBZSxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO2dCQUN4QyxJQUFJLEdBQUcsQ0FBQyxRQUFRLEVBQUU7b0JBQ2hCLGNBQWMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDO2lCQUNoQzthQUNGO1lBRUQsSUFBSSxDQUFDLFFBQVEsQ0FBQyxjQUFjLENBQUMsQ0FBQztTQUMvQjtJQUNILENBQUM7SUFFRDs7O09BR0c7SUFDSSxjQUFjLENBQUMsTUFBOEI7UUFDbEQsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDL0IsQ0FBQztJQUVEOzs7T0FHRztJQUNJLGdCQUFnQixDQUFDLE1BQThCO1FBQ3BELE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQzlDLElBQUksQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FBQztJQUNuQyxDQUFDO0lBRUQ7O09BRUc7SUFDSSxZQUFZLENBQUMsQ0FBa0I7UUFDcEMsSUFBSSxLQUFLLEdBQTRCLElBQUksQ0FBQztRQUUxQyxJQUFJLElBQUksQ0FBQyxVQUFVLEVBQUU7WUFDbkIsS0FBSyxHQUFHLFVBQVUsQ0FBQyxRQUFRLENBQ3pCLElBQUksQ0FBQyx5QkFBeUIsRUFDOUIsSUFBSSxDQUFDLGdDQUFnQyxDQUN0QyxDQUFDLENBQUMsQ0FBQyxDQUFDO1NBQ047UUFFRCxPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7SUFFRDs7T0FFRztJQUNJLFVBQVUsQ0FBQyxLQUFvQjtRQUNwQyxJQUFJLElBQUksQ0FBQyxVQUFVLElBQUksS0FBSyxFQUFFO1lBQzVCLElBQUksQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUU7Z0JBQzlCLElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxFQUFFO29CQUNqQyxHQUFHLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxDQUFDO2lCQUN4QjtZQUNILENBQUMsQ0FBQyxDQUFDO1NBQ0o7UUFFRCxLQUFLLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzFCLENBQUM7OztZQTdHRixTQUFTOzs7c0JBT1AsS0FBSzt3Q0FJTCxLQUFLOytDQU1MLEtBQUs7NkJBT0wsWUFBWSxTQUFDLHNCQUFzQjs7QUEwRnRDOztHQUVHO0FBQ0gsTUFBZSxjQUFjO0NBa0I1QjtBQUVELHFCQUFxQiIsInNvdXJjZXNDb250ZW50IjpbIi8vIHRzY286aWdub3JlXHJcbmltcG9ydCB7XHJcbiAgRGlyZWN0aXZlLFxyXG4gIEVsZW1lbnRSZWYsXHJcbiAgSW5wdXQsXHJcbiAgT25EZXN0cm95LFxyXG4gIFF1ZXJ5TGlzdCxcclxuICBSZW5kZXJlcjIsXHJcbiAgVmlld0NoaWxkcmVuLFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBBYnN0cmFjdENvbnRyb2wsIFZhbGlkYXRpb25FcnJvcnMgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IFNhY0Jhc2VTZWxlY3RDb250cm9sIH0gZnJvbSAnLi4vLi4vY29tbW9uL2Jhc2VzZWxlY3Rjb250cm9sJztcclxuaW1wb3J0IHsgVmFsaWRhdGlvbiB9IGZyb20gJy4uLy4uL3ZhbGlkYXRpb24nO1xyXG5cclxuLy8gI3JlZ2lvbiBJbnRlcmZhY2VzXHJcblxyXG4vKipcclxuICogV3JhcHBlciBmw7xyIEhUTUwgT3B0aW9uc1xyXG4gKi9cclxuaW50ZXJmYWNlIEhUTUxPcHRpb24ge1xyXG4gIC8vICNyZWdpb24gUHJvcGVydGllc1xyXG5cclxuICAvKipcclxuICAgKiBCb29sZWFuIFByb3BlcnR5IGbDvHIgU2VsZWt0aWVydGUgRWxlbWVudGVcclxuICAgKi9cclxuICBzZWxlY3RlZDogYm9vbGVhbjtcclxuICAvKipcclxuICAgKiBXZXJ0XHJcbiAgICovXHJcbiAgdmFsdWU6IHN0cmluZztcclxuXHJcbiAgLy8gI2VuZHJlZ2lvbiBQcm9wZXJ0aWVzXHJcbn1cclxuXHJcbi8vICNlbmRyZWdpb24gSW50ZXJmYWNlc1xyXG5cclxuLy8gI3JlZ2lvbiBDbGFzc2VzXHJcblxyXG4vKipcclxuICogQmFzaXMgS29tcG9uZW50ZSBmw7xyIFNhY0xpc3Rib3hPcHRpb25cclxuICovXHJcbkBEaXJlY3RpdmUoKVxyXG5leHBvcnQgY2xhc3MgU2FjTGlzdGJveE9wdGlvbkNvbW1vbiBpbXBsZW1lbnRzIE9uRGVzdHJveSB7XHJcbiAgLy8gI3JlZ2lvbiBQcm9wZXJ0aWVzXHJcblxyXG4gIC8qKlxyXG4gICAqIFZhbHVlIHZvbiBTZWxlY3RlZCBPcHRpb24gSXRlbVxyXG4gICAqL1xyXG4gIHByaXZhdGUgX3ZhbHVlOiBhbnkgPSBudWxsO1xyXG5cclxuICAvLyAjZW5kcmVnaW9uIFByb3BlcnRpZXNcclxuXHJcbiAgLy8gI3JlZ2lvbiBDb25zdHJ1Y3RvcnNcclxuXHJcbiAgLyoqXHJcbiAgICogS29uc3RydWt0b3JcclxuICAgKiBAcGFyYW0gX2VsZW1lbnQ6IEVsZW1lbnRSZWZcclxuICAgKiBAcGFyYW0gX3JlbmRlcmVyOiBSZW5kZXJlcjJcclxuICAgKi9cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByaXZhdGUgX2VsZW1lbnQ6IEVsZW1lbnRSZWYsXHJcbiAgICBwcml2YXRlIF9yZW5kZXJlcjogUmVuZGVyZXIyLFxyXG4gICAgcHJpdmF0ZSBfbGlzdGJveDogU2FjTGlzdGJveENvbW1vblxyXG4gICkge1xyXG4gICAgaWYgKHRoaXMuX2xpc3Rib3gpIHtcclxuICAgICAgdGhpcy5fbGlzdGJveC5yZWdpc3Rlck9wdGlvbih0aGlzKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8vICNlbmRyZWdpb24gQ29uc3RydWN0b3JzXHJcblxyXG4gIC8vICNyZWdpb24gUHVibGljIEdldHRlcnMgQW5kIFNldHRlcnNcclxuXHJcbiAgLyoqXHJcbiAgICogTmdWYWx1ZSBkZXMgQ29udHJvbHMuIFdpcmQgZsO8ciBkaWUgTWVocmZhY2hhdXN3YWhsIGJlbsO2dGlndFxyXG4gICAqL1xyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIHNldCBuZ3ZhbHVlKHZhbHVlOiBhbnkpIHtcclxuICAgIGlmICh0aGlzLl9saXN0Ym94KSB7XHJcbiAgICAgIHRoaXMuX3ZhbHVlID0gdmFsdWU7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBEZWZpbmllcnQgZGVuIFdlcnQgZGVyIExpc3Rib3hcclxuICAgKi9cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBzZXQgdmFsdWUodmFsdWU6IGFueSkge1xyXG4gICAgaWYgKHRoaXMuX2xpc3Rib3gpIHtcclxuICAgICAgdGhpcy5fdmFsdWUgPSB2YWx1ZTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXQgdmFsdWUoKTogYW55IHtcclxuICAgIHJldHVybiB0aGlzLl92YWx1ZTtcclxuICB9XHJcblxyXG4gIC8vICNlbmRyZWdpb24gUHVibGljIEdldHRlcnMgQW5kIFNldHRlcnNcclxuXHJcbiAgLy8gI3JlZ2lvbiBQdWJsaWMgTWV0aG9kc1xyXG5cclxuICAvKipcclxuICAgKiBNZXRob2RlIGVyZ2lidCBkZW4gU3RhdHVzIGRlciBFbGVtZW50ZSwgZGllIHNlbGVrdGllcnQgd3VyZGVuXHJcbiAgICogQHBhcmFtIHNlbGVjdGVkIEVsZW1lbnQgaXN0IHNlbGVrdGllcnRcclxuICAgKi9cclxuICBwdWJsaWMgX3NldFNlbGVjdGVkKHNlbGVjdGVkOiBib29sZWFuKSB7XHJcbiAgICB0aGlzLl9yZW5kZXJlci5zZXRQcm9wZXJ0eShcclxuICAgICAgdGhpcy5fZWxlbWVudC5uYXRpdmVFbGVtZW50LFxyXG4gICAgICAnc2VsZWN0ZWQnLFxyXG4gICAgICBzZWxlY3RlZFxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIE9uRGVzdHJveSBFdmVudFxyXG4gICAqL1xyXG4gIHB1YmxpYyBuZ09uRGVzdHJveSgpOiB2b2lkIHtcclxuICAgIGlmICh0aGlzLl9saXN0Ym94KSB7XHJcbiAgICAgIHRoaXMuX2xpc3Rib3gudW5yZWdpc3Rlck9wdGlvbih0aGlzKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8vICNlbmRyZWdpb24gUHVibGljIE1ldGhvZHNcclxufVxyXG5cclxuLyoqXHJcbiAqIEtvbXBvbmVudGUgZsO8ciBTYWNMaXN0Ym94Q29tbW9uLiBFeHRlbmRzIFNhY0Jhc2VTZWxlY3RDb250cm9sXHJcbiAqL1xyXG5ARGlyZWN0aXZlKClcclxuZXhwb3J0IGNsYXNzIFNhY0xpc3Rib3hDb21tb24gZXh0ZW5kcyBTYWNCYXNlU2VsZWN0Q29udHJvbDxBcnJheTxzdHJpbmc+PiB7XHJcbiAgLy8gI3JlZ2lvbiBQcm9wZXJ0aWVzXHJcblxyXG4gIC8qKlxyXG4gICAqIEFuemFobCBkZXIgWmVpbGVuXHJcbiAgICovXHJcbiAgQElucHV0KCkgcHVibGljIHJvd3NpemU6IG51bWJlciA9IDU7XHJcbiAgLyoqXHJcbiAgICogUmVzb3VyY2UgS2V5IGbDvHIgVmFsaWRhdGlvbiBNZXNzYWdlIFJlcXVpcmVkIGJlaSBDb250cm9sXHJcbiAgICovXHJcbiAgQElucHV0KCkgcHVibGljIHZhbGlkYXRpb25tZXNzYWdlcmVxdWlyZWQ6IHN0cmluZyA9XHJcbiAgICB0aGlzLnZhbGlkYXRpb25LZXlTZXJ2aWNlLlZhbGlkYXRpb25FcnJvclJlcXVpcmVkO1xyXG5cclxuICAvKipcclxuICAgKiBSZXNvdXJjZSBLZXkgZsO8ciBWYWxpZGF0aW9uIE1lc3NhZ2UgUmVxdWlyZWQgaW4gVmFsaWRhdGlvbiBTdW1tYXJ5XHJcbiAgICovXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgdmFsaWRhdGlvbm1lc3NhZ2VzdW1tYXJ5cmVxdWlyZWQ6IHN0cmluZyA9XHJcbiAgICB0aGlzLnZhbGlkYXRpb25LZXlTZXJ2aWNlLlZhbGlkYXRpb25FcnJvclN1bW1hcnlSZXF1aXJlZDtcclxuXHJcbiAgLyoqXHJcbiAgICogVmlld0NoaWxkcmVuIE1ldGhvZGVcclxuICAgKi9cclxuICBAVmlld0NoaWxkcmVuKFNhY0xpc3Rib3hPcHRpb25Db21tb24pXHJcbiAgcHVibGljIGNvbnRlbnRPcHRpb25zOiBRdWVyeUxpc3Q8U2FjTGlzdGJveE9wdGlvbkNvbW1vbj47XHJcblxyXG4gIC8qKlxyXG4gICAqIE9wdGlvbk1hcFxyXG4gICAqL1xyXG4gIHB1YmxpYyBvcHRpb25saXN0OiBBcnJheTxTYWNMaXN0Ym94T3B0aW9uQ29tbW9uPiA9XHJcbiAgICBuZXcgQXJyYXk8U2FjTGlzdGJveE9wdGlvbkNvbW1vbj4oKTtcclxuXHJcbiAgLy8gI2VuZHJlZ2lvbiBQcm9wZXJ0aWVzXHJcblxyXG4gIC8vICNyZWdpb24gUHVibGljIE1ldGhvZHNcclxuXHJcbiAgLyoqXHJcbiAgICogR2V0dGVyIGbDvHIgc2VsZWt0aWVydGUgRWxlbWVudGVcclxuICAgKi9cclxuICBwdWJsaWMgZ2V0U2VsZWN0ZWRJdGVtcyhzZWxlY3RlbGVtZW50OiBhbnkpIHtcclxuICAgIGNvbnN0IHNlbGVjdGVkVmFsdWVzOiBBcnJheTxzdHJpbmc+ID0gbmV3IEFycmF5PHN0cmluZz4oKTtcclxuXHJcbiAgICBpZiAoc2VsZWN0ZWxlbWVudC5oYXNPd25Qcm9wZXJ0eSgnc2VsZWN0ZWRPcHRpb25zJykpIHtcclxuICAgICAgY29uc3Qgb3B0aW9uczogSFRNTENvbGxlY3Rpb24gPSBzZWxlY3RlbGVtZW50LnNlbGVjdGVkT3B0aW9ucztcclxuICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBvcHRpb25zLmxlbmd0aDsgaSsrKSB7XHJcbiAgICAgICAgY29uc3Qgb3B0OiBIVE1MT3B0aW9uID0gb3B0aW9ucy5pdGVtKGkpO1xyXG4gICAgICAgIHNlbGVjdGVkVmFsdWVzLnB1c2gob3B0LnZhbHVlKTtcclxuICAgICAgfVxyXG4gICAgfSBlbHNlIHtcclxuICAgICAgLy8gRGVncmFkZSBvbiBJRVxyXG4gICAgICBjb25zdCBvcHRpb25zOiBIVE1MQ29sbGVjdGlvbiA9IDxIVE1MQ29sbGVjdGlvbj5zZWxlY3RlbGVtZW50Lm9wdGlvbnM7XHJcbiAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgb3B0aW9ucy5sZW5ndGg7IGkrKykge1xyXG4gICAgICAgIGNvbnN0IG9wdDogSFRNTE9wdGlvbiA9IG9wdGlvbnMuaXRlbShpKTtcclxuICAgICAgICBpZiAob3B0LnNlbGVjdGVkKSB7XHJcbiAgICAgICAgICBzZWxlY3RlZFZhbHVlcy5wdXNoKG9wdC52YWx1ZSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICB0aGlzLnNldFZhbHVlKHNlbGVjdGVkVmFsdWVzKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFJlZ2lzdHJpZXJ0IGVpbiBMaXN0Ym94IEVsZW1lbnRcclxuICAgKiBAcGFyYW0gb3B0aW9uIExpc3Rib3ggT3B0aW9uIEl0ZW0gZGFzIHJlZ2lzdHJpZXJ0IHdlcmRlbiBzb2xsXHJcbiAgICovXHJcbiAgcHVibGljIHJlZ2lzdGVyT3B0aW9uKG9wdGlvbjogU2FjTGlzdGJveE9wdGlvbkNvbW1vbik6IHZvaWQge1xyXG4gICAgdGhpcy5vcHRpb25saXN0LnB1c2gob3B0aW9uKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEhlYnQgZGllIFJlZ2lzdHJhdGlvbiBlaW5lcyBMaXN0Ym94IEl0ZW1zIGF1ZlxyXG4gICAqIEBwYXJhbSBvcHRpb24gTGlzdGJveCBPcHRpb24gSXRlbSBkYXMgZGVyZWdpc3RyaWVydCB3ZXJkZW4gc29sbFxyXG4gICAqL1xyXG4gIHB1YmxpYyB1bnJlZ2lzdGVyT3B0aW9uKG9wdGlvbjogU2FjTGlzdGJveE9wdGlvbkNvbW1vbik6IHZvaWQge1xyXG4gICAgY29uc3QgaW5kZXggPSB0aGlzLm9wdGlvbmxpc3QuaW5kZXhPZihvcHRpb24pO1xyXG4gICAgdGhpcy5vcHRpb25saXN0LnNwbGljZShpbmRleCwgMSk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBWYWxpZGF0b3IgTWV0aG9kZVxyXG4gICAqL1xyXG4gIHB1YmxpYyB2YWxpZGF0ZURhdGEoYzogQWJzdHJhY3RDb250cm9sKTogVmFsaWRhdGlvbkVycm9ycyB8IG51bGwge1xyXG4gICAgbGV0IGVycm9yOiBWYWxpZGF0aW9uRXJyb3JzIHwgbnVsbCA9IG51bGw7XHJcblxyXG4gICAgaWYgKHRoaXMuaXNyZXF1aXJlZCkge1xyXG4gICAgICBlcnJvciA9IFZhbGlkYXRpb24ucmVxdWlyZWQoXHJcbiAgICAgICAgdGhpcy52YWxpZGF0aW9ubWVzc2FnZXJlcXVpcmVkLFxyXG4gICAgICAgIHRoaXMudmFsaWRhdGlvbm1lc3NhZ2VzdW1tYXJ5cmVxdWlyZWRcclxuICAgICAgKShjKTtcclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4gZXJyb3I7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBNZXRob2RlIHNjaHJlaWJ0IG5ldWVuIFdlcnRcclxuICAgKi9cclxuICBwdWJsaWMgd3JpdGVWYWx1ZSh2YWx1ZTogQXJyYXk8c3RyaW5nPikge1xyXG4gICAgaWYgKHRoaXMub3B0aW9ubGlzdCAmJiB2YWx1ZSkge1xyXG4gICAgICB0aGlzLm9wdGlvbmxpc3QuZm9yRWFjaCgoaXRtKSA9PiB7XHJcbiAgICAgICAgaWYgKHZhbHVlLmluZGV4T2YoaXRtLnZhbHVlKSA+PSAwKSB7XHJcbiAgICAgICAgICBpdG0uX3NldFNlbGVjdGVkKHRydWUpO1xyXG4gICAgICAgIH1cclxuICAgICAgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgc3VwZXIud3JpdGVWYWx1ZSh2YWx1ZSk7XHJcbiAgfVxyXG5cclxuICAvLyAjZW5kcmVnaW9uIFB1YmxpYyBNZXRob2RzXHJcbn1cclxuXHJcbi8qKlxyXG4gKiBXcmFwcGVyIGbDvHIgSFRNTCBTZWxlY3RcclxuICovXHJcbmFic3RyYWN0IGNsYXNzIEhUTUxDb2xsZWN0aW9uIHtcclxuICAvLyAjcmVnaW9uIFByb3BlcnRpZXNcclxuXHJcbiAgLyoqXHJcbiAgICogTMOkbmdlXHJcbiAgICovXHJcbiAgcHVibGljIGxlbmd0aDogbnVtYmVyO1xyXG5cclxuICAvLyAjZW5kcmVnaW9uIFByb3BlcnRpZXNcclxuXHJcbiAgLy8gI3JlZ2lvbiBQdWJsaWMgQWJzdHJhY3QgTWV0aG9kc1xyXG5cclxuICAvKipcclxuICAgKiBPcHRpb24tSXRlbVxyXG4gICAqL1xyXG4gIHB1YmxpYyBhYnN0cmFjdCBpdGVtKF86IG51bWJlcik6IEhUTUxPcHRpb247XHJcblxyXG4gIC8vICNlbmRyZWdpb24gUHVibGljIEFic3RyYWN0IE1ldGhvZHNcclxufVxyXG5cclxuLy8gI2VuZHJlZ2lvbiBDbGFzc2VzXHJcbiJdfQ==
1
+ // tsco:ignore
2
+ import { Directive, ElementRef, Input, QueryList, Renderer2, ViewChildren, } from '@angular/core';
3
+ import { SacBaseSelectControl } from '../../common/baseselectcontrol';
4
+ import { Validation } from '../../validation';
5
+ // #endregion Interfaces
6
+ // #region Classes
7
+ /**
8
+ * Basis Komponente für SacListboxOption
9
+ */
10
+ export class SacListboxOptionCommon {
11
+ // #endregion Properties
12
+ // #region Constructors
13
+ /**
14
+ * Konstruktor
15
+ * @param _element: ElementRef
16
+ * @param _renderer: Renderer2
17
+ */
18
+ constructor(_element, _renderer, _listbox) {
19
+ this._element = _element;
20
+ this._renderer = _renderer;
21
+ this._listbox = _listbox;
22
+ // #region Properties
23
+ /**
24
+ * Value von Selected Option Item
25
+ */
26
+ this._value = null;
27
+ if (this._listbox) {
28
+ this._listbox.registerOption(this);
29
+ }
30
+ }
31
+ // #endregion Constructors
32
+ // #region Public Getters And Setters
33
+ /**
34
+ * NgValue des Controls. Wird für die Mehrfachauswahl benötigt
35
+ */
36
+ set ngvalue(value) {
37
+ if (this._listbox) {
38
+ this._value = value;
39
+ }
40
+ }
41
+ /**
42
+ * Definiert den Wert der Listbox
43
+ */
44
+ set value(value) {
45
+ if (this._listbox) {
46
+ this._value = value;
47
+ }
48
+ }
49
+ get value() {
50
+ return this._value;
51
+ }
52
+ // #endregion Public Getters And Setters
53
+ // #region Public Methods
54
+ /**
55
+ * Methode ergibt den Status der Elemente, die selektiert wurden
56
+ * @param selected Element ist selektiert
57
+ */
58
+ _setSelected(selected) {
59
+ this._renderer.setProperty(this._element.nativeElement, 'selected', selected);
60
+ }
61
+ /**
62
+ * OnDestroy Event
63
+ */
64
+ ngOnDestroy() {
65
+ if (this._listbox) {
66
+ this._listbox.unregisterOption(this);
67
+ }
68
+ }
69
+ }
70
+ SacListboxOptionCommon.decorators = [
71
+ { type: Directive }
72
+ ];
73
+ SacListboxOptionCommon.ctorParameters = () => [
74
+ { type: ElementRef },
75
+ { type: Renderer2 },
76
+ { type: SacListboxCommon }
77
+ ];
78
+ SacListboxOptionCommon.propDecorators = {
79
+ ngvalue: [{ type: Input }],
80
+ value: [{ type: Input }]
81
+ };
82
+ /**
83
+ * Komponente für SacListboxCommon. Extends SacBaseSelectControl
84
+ */
85
+ export class SacListboxCommon extends SacBaseSelectControl {
86
+ constructor() {
87
+ // #region Properties
88
+ super(...arguments);
89
+ /**
90
+ * Anzahl der Zeilen
91
+ */
92
+ this.rowsize = 5;
93
+ /**
94
+ * Resource Key für Validation Message Required bei Control
95
+ */
96
+ this.validationmessagerequired = this.validationKeyService.ValidationErrorRequired;
97
+ /**
98
+ * Resource Key für Validation Message Required in Validation Summary
99
+ */
100
+ this.validationmessagesummaryrequired = this.validationKeyService.ValidationErrorSummaryRequired;
101
+ /**
102
+ * OptionMap
103
+ */
104
+ this.optionlist = new Array();
105
+ // #endregion Public Methods
106
+ }
107
+ // #endregion Properties
108
+ // #region Public Methods
109
+ /**
110
+ * Getter für selektierte Elemente
111
+ */
112
+ getSelectedItems(selectelement) {
113
+ const selectedValues = new Array();
114
+ if (selectelement.hasOwnProperty('selectedOptions')) {
115
+ const options = selectelement.selectedOptions;
116
+ for (let i = 0; i < options.length; i++) {
117
+ const opt = options.item(i);
118
+ selectedValues.push(opt.value);
119
+ }
120
+ }
121
+ else {
122
+ // Degrade on IE
123
+ const options = selectelement.options;
124
+ for (let i = 0; i < options.length; i++) {
125
+ const opt = options.item(i);
126
+ if (opt.selected) {
127
+ selectedValues.push(opt.value);
128
+ }
129
+ }
130
+ this.setValue(selectedValues);
131
+ }
132
+ }
133
+ /**
134
+ * Registriert ein Listbox Element
135
+ * @param option Listbox Option Item das registriert werden soll
136
+ */
137
+ registerOption(option) {
138
+ this.optionlist.push(option);
139
+ }
140
+ /**
141
+ * Hebt die Registration eines Listbox Items auf
142
+ * @param option Listbox Option Item das deregistriert werden soll
143
+ */
144
+ unregisterOption(option) {
145
+ const index = this.optionlist.indexOf(option);
146
+ this.optionlist.splice(index, 1);
147
+ }
148
+ /**
149
+ * Validator Methode
150
+ */
151
+ validateData(c) {
152
+ let error = null;
153
+ if (this.isrequired) {
154
+ error = Validation.required(this.validationmessagerequired, this.validationmessagesummaryrequired)(c);
155
+ }
156
+ return error;
157
+ }
158
+ /**
159
+ * Methode schreibt neuen Wert
160
+ */
161
+ writeValue(value) {
162
+ if (this.optionlist && value) {
163
+ this.optionlist.forEach((itm) => {
164
+ if (value.indexOf(itm.value) >= 0) {
165
+ itm._setSelected(true);
166
+ }
167
+ });
168
+ }
169
+ super.writeValue(value);
170
+ }
171
+ }
172
+ SacListboxCommon.decorators = [
173
+ { type: Directive }
174
+ ];
175
+ SacListboxCommon.propDecorators = {
176
+ rowsize: [{ type: Input }],
177
+ validationmessagerequired: [{ type: Input }],
178
+ validationmessagesummaryrequired: [{ type: Input }],
179
+ contentOptions: [{ type: ViewChildren, args: [SacListboxOptionCommon,] }]
180
+ };
181
+ /**
182
+ * Wrapper für HTML Select
183
+ */
184
+ class HTMLCollection {
185
+ }
186
+ // #endregion Classes
187
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlzdGJveC5qcyIsInNvdXJjZVJvb3QiOiIvaG9tZS9ydW5uZXIvd29yay9zaW1wbGVhbmd1bGFyY29udHJvbHMvc2ltcGxlYW5ndWxhcmNvbnRyb2xzL2NoLmpuZXR3b3JrLnNhYy1jb250cm9scy9wcm9qZWN0cy9zYWMtY29tbW9uL3NyYy8iLCJzb3VyY2VzIjpbImNvbnRyb2xzL2xpc3QvbGlzdGJveC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjO0FBQ2QsT0FBTyxFQUNMLFNBQVMsRUFDVCxVQUFVLEVBQ1YsS0FBSyxFQUVMLFNBQVMsRUFDVCxTQUFTLEVBQ1QsWUFBWSxHQUNiLE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ3RFLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQXNCOUMsd0JBQXdCO0FBRXhCLGtCQUFrQjtBQUVsQjs7R0FFRztBQUVILE1BQU0sT0FBTyxzQkFBc0I7SUFRakMsd0JBQXdCO0lBRXhCLHVCQUF1QjtJQUV2Qjs7OztPQUlHO0lBQ0gsWUFDVSxRQUFvQixFQUNwQixTQUFvQixFQUNwQixRQUEwQjtRQUYxQixhQUFRLEdBQVIsUUFBUSxDQUFZO1FBQ3BCLGNBQVMsR0FBVCxTQUFTLENBQVc7UUFDcEIsYUFBUSxHQUFSLFFBQVEsQ0FBa0I7UUFuQnBDLHFCQUFxQjtRQUVyQjs7V0FFRztRQUNLLFdBQU0sR0FBUSxJQUFJLENBQUM7UUFnQnpCLElBQUksSUFBSSxDQUFDLFFBQVEsRUFBRTtZQUNqQixJQUFJLENBQUMsUUFBUSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsQ0FBQztTQUNwQztJQUNILENBQUM7SUFFRCwwQkFBMEI7SUFFMUIscUNBQXFDO0lBRXJDOztPQUVHO0lBQ0gsSUFDVyxPQUFPLENBQUMsS0FBVTtRQUMzQixJQUFJLElBQUksQ0FBQyxRQUFRLEVBQUU7WUFDakIsSUFBSSxDQUFDLE1BQU0sR0FBRyxL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UUFDOUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBQ25DLENBQUM7SUFFRDs7T0FFRztJQUNJLFlBQVksQ0FBQyxDQUFrQjtRQUNwQyxJQUFJLEtBQUssR0FBNEIsSUFBSSxDQUFDO1FBRTFDLElBQUksSUFBSSxDQUFDLFVBQVUsRUFBRTtZQUNuQixLQUFLLEdBQUcsVUFBVSxDQUFDLFFBQVEsQ0FDekIsSUFBSSxDQUFDLHlCQUF5QixFQUM5QixJQUFJLENBQUMsZ0NBQWdDLENBQ3RDLENBQUMsQ0FBQyxDQUFDLENBQUM7U0FDTjtRQUVELE9BQU8sS0FBSyxDQUFDO0lBQ2YsQ0FBQztJQUVEOztPQUVHO0lBQ0ksVUFBVSxDQUFDLEtBQW9CO1FBQ3BDLElBQUksSUFBSSxDQUFDLFVBQVUsSUFBSSxLQUFLLEVBQUU7WUFDNUIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsQ0FBQyxHQUFHLEVBQUUsRUFBRTtnQkFDOUIsSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLEVBQUU7b0JBQ2pDLEdBQUcsQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLENBQUM7aUJBQ3hCO1lBQ0gsQ0FBQyxDQUFDLENBQUM7U0FDSjtRQUVELEtBQUssQ0FBQyxVQUFVLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDMUIsQ0FBQzs7O1lBN0dGLFNBQVM7OztzQkFPUCxLQUFLO3dDQUlMLEtBQUs7K0NBTUwsS0FBSzs2QkFPTCxZQUFZLFNBQUMsc0JBQXNCOztBQTBGdEM7O0dBRUc7QUFDSCxNQUFlLGNBQWM7Q0FrQjVCO0FBRUQscUJBQXFCIiwic291cmNlc0NvbnRlbnQiOlsiLy8gdHNjbzppZ25vcmVcbmltcG9ydCB7XG4gIERpcmVjdGl2ZSxcbiAgRWxlbWVudFJlZixcbiAgSW5wdXQsXG4gIE9uRGVzdHJveSxcbiAgUXVlcnlMaXN0LFxuICBSZW5kZXJlcjIsXG4gIFZpZXdDaGlsZHJlbixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBYnN0cmFjdENvbnRyb2wsIFZhbGlkYXRpb25FcnJvcnMgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBTYWNCYXNlU2VsZWN0Q29udHJvbCB9IGZyb20gJy4uLy4uL2NvbW1vbi9iYXNlc2VsZWN0Y29udHJvbCc7XG5pbXBvcnQgeyBWYWxpZGF0aW9uIH0gZnJvbSAnLi4vLi4vdmFsaWRhdGlvbic7XG5cbi8vICNyZWdpb24gSW50ZXJmYWNlc1xuXG4vKipcbiAqIFdyYXBwZXIgZsO8ciBIVE1MIE9wdGlvbnNcbiAqL1xuaW50ZXJmYWNlIEhUTUxPcHRpb24ge1xuICAvLyAjcmVnaW9uIFByb3BlcnRpZXNcblxuICAvKipcbiAgICogQm9vbGVhbiBQcm9wZXJ0eSBmw7xyIFNlbGVrdGllcnRlIEVsZW1lbnRlXG4gICAqL1xuICBzZWxlY3RlZDogYm9vbGVhbjtcbiAgLyoqXG4gICAqIFdlcnRcbiAgICovXG4gIHZhbHVlOiBzdHJpbmc7XG5cbiAgLy8gI2VuZHJlZ2lvbiBQcm9wZXJ0aWVzXG59XG5cbi8vICNlbmRyZWdpb24gSW50ZXJmYWNlc1xuXG4vLyAjcmVnaW9uIENsYXNzZXNcblxuLyoqXG4gKiBCYXNpcyBLb21wb25lbnRlIGbDvHIgU2FjTGlzdGJveE9wdGlvblxuICovXG5ARGlyZWN0aXZlKClcbmV4cG9ydCBjbGFzcyBTYWNMaXN0Ym94T3B0aW9uQ29tbW9uIGltcGxlbWVudHMgT25EZXN0cm95IHtcbiAgLy8gI3JlZ2lvbiBQcm9wZXJ0aWVzXG5cbiAgLyoqXG4gICAqIFZhbHVlIHZvbiBTZWxlY3RlZCBPcHRpb24gSXRlbVxuICAgKi9cbiAgcHJpdmF0ZSBfdmFsdWU6IGFueSA9IG51bGw7XG5cbiAgLy8gI2VuZHJlZ2lvbiBQcm9wZXJ0aWVzXG5cbiAgLy8gI3JlZ2lvbiBDb25zdHJ1Y3RvcnNcblxuICAvKipcbiAgICogS29uc3RydWt0b3JcbiAgICogQHBhcmFtIF9lbGVtZW50OiBFbGVtZW50UmVmXG4gICAqIEBwYXJhbSBfcmVuZGVyZXI6IFJlbmRlcmVyMlxuICAgKi9cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBfZWxlbWVudDogRWxlbWVudFJlZixcbiAgICBwcml2YXRlIF9yZW5kZXJlcjogUmVuZGVyZXIyLFxuICAgIHByaXZhdGUgX2xpc3Rib3g6IFNhY0xpc3Rib3hDb21tb25cbiAgKSB7XG4gICAgaWYgKHRoaXMuX2xpc3Rib3gpIHtcbiAgICAgIHRoaXMuX2xpc3Rib3gucmVnaXN0ZXJPcHRpb24odGhpcyk7XG4gICAgfVxuICB9XG5cbiAgLy8gI2VuZHJlZ2lvbiBDb25zdHJ1Y3RvcnNcblxuICAvLyAjcmVnaW9uIFB1YmxpYyBHZXR0ZXJzIEFuZCBTZXR0ZXJzXG5cbiAgLyoqXG4gICAqIE5nVmFsdWUgZGVzIENvbnRyb2xzLiBXaXJkIGbDvHIgZGllIE1laHJmYWNoYXVzd2FobCBiZW7DtnRpZ3RcbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXQgbmd2YWx1ZSh2YWx1ZTogYW55KSB7XG4gICAgaWYgKHRoaXMuX2xpc3Rib3gpIHtcbiAgICAgIHRoaXMuX3ZhbHVlID0gdmFsdWU7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIERlZmluaWVydCBkZW4gV2VydCBkZXIgTGlzdGJveFxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIHNldCB2YWx1ZSh2YWx1ZTogYW55KSB7XG4gICAgaWYgKHRoaXMuX2xpc3Rib3gpIHtcbiAgICAgIHRoaXMuX3ZhbHVlID0gdmFsdWU7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGdldCB2YWx1ZSgpOiBhbnkge1xuICAgIHJldHVybiB0aGlzLl92YWx1ZTtcbiAgfVxuXG4gIC8vICNlbmRyZWdpb24gUHVibGljIEdldHRlcnMgQW5kIFNldHRlcnNcblxuICAvLyAjcmVnaW9uIFB1YmxpYyBNZXRob2RzXG5cbiAgLyoqXG4gICAqIE1ldGhvZGUgZXJnaWJ0IGRlbiBTdGF0dXMgZGVyIEVsZW1lbnRlLCBkaWUgc2VsZWt0aWVydCB3dXJkZW5cbiAgICogQHBhcmFtIHNlbGVjdGVkIEVsZW1lbnQgaXN0IHNlbGVrdGllcnRcbiAgICovXG4gIHB1YmxpYyBfc2V0U2VsZWN0ZWQoc2VsZWN0ZWQ6IGJvb2xlYW4pIHtcbiAgICB0aGlzLl9yZW5kZXJlci5zZXRQcm9wZXJ0eShcbiAgICAgIHRoaXMuX2VsZW1lbnQubmF0aXZlRWxlbWVudCxcbiAgICAgICdzZWxlY3RlZCcsXG4gICAgICBzZWxlY3RlZFxuICAgICk7XG4gIH1cblxuICAvKipcbiAgICogT25EZXN0cm95IEV2ZW50XG4gICAqL1xuICBwdWJsaWMgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuX2xpc3Rib3gpIHtcbiAgICAgIHRoaXMuX2xpc3Rib3gudW5yZWdpc3Rlck9wdGlvbih0aGlzKTtcbiAgICB9XG4gIH1cblxuICAvLyAjZW5kcmVnaW9uIFB1YmxpYyBNZXRob2RzXG59XG5cbi8qKlxuICogS29tcG9uZW50ZSBmw7xyIFNhY0xpc3Rib3hDb21tb24uIEV4dGVuZHMgU2FjQmFzZVNlbGVjdENvbnRyb2xcbiAqL1xuQERpcmVjdGl2ZSgpXG5leHBvcnQgY2xhc3MgU2FjTGlzdGJveENvbW1vbiBleHRlbmRzIFNhY0Jhc2VTZWxlY3RDb250cm9sPEFycmF5PHN0cmluZz4+IHtcbiAgLy8gI3JlZ2lvbiBQcm9wZXJ0aWVzXG5cbiAgLyoqXG4gICAqIEFuemFobCBkZXIgWmVpbGVuXG4gICAqL1xuICBASW5wdXQoKSBwdWJsaWMgcm93c2l6ZTogbnVtYmVyID0gNTtcbiAgLyoqXG4gICAqIFJlc291cmNlIEtleSBmw7xyIFZhbGlkYXRpb24gTWVzc2FnZSBSZXF1aXJlZCBiZWkgQ29udHJvbFxuICAgKi9cbiAgQElucHV0KCkgcHVibGljIHZhbGlkYXRpb25tZXNzYWdlcmVxdWlyZWQ6IHN0cmluZyA9XG4gICAgdGhpcy52YWxpZGF0aW9uS2V5U2VydmljZS5WYWxpZGF0aW9uRXJyb3JSZXF1aXJlZDtcblxuICAvKipcbiAgICogUmVzb3VyY2UgS2V5IGbDvHIgVmFsaWRhdGlvbiBNZXNzYWdlIFJlcXVpcmVkIGluIFZhbGlkYXRpb24gU3VtbWFyeVxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIHZhbGlkYXRpb25tZXNzYWdlc3VtbWFyeXJlcXVpcmVkOiBzdHJpbmcgPVxuICAgIHRoaXMudmFsaWRhdGlvbktleVNlcnZpY2UuVmFsaWRhdGlvbkVycm9yU3VtbWFyeVJlcXVpcmVkO1xuXG4gIC8qKlxuICAgKiBWaWV3Q2hpbGRyZW4gTWV0aG9kZVxuICAgKi9cbiAgQFZpZXdDaGlsZHJlbihTYWNMaXN0Ym94T3B0aW9uQ29tbW9uKVxuICBwdWJsaWMgY29udGVudE9wdGlvbnM6IFF1ZXJ5TGlzdDxTYWNMaXN0Ym94T3B0aW9uQ29tbW9uPjtcblxuICAvKipcbiAgICogT3B0aW9uTWFwXG4gICAqL1xuICBwdWJsaWMgb3B0aW9ubGlzdDogQXJyYXk8U2FjTGlzdGJveE9wdGlvbkNvbW1vbj4gPVxuICAgIG5ldyBBcnJheTxTYWNMaXN0Ym94T3B0aW9uQ29tbW9uPigpO1xuXG4gIC8vICNlbmRyZWdpb24gUHJvcGVydGllc1xuXG4gIC8vICNyZWdpb24gUHVibGljIE1ldGhvZHNcblxuICAvKipcbiAgICogR2V0dGVyIGbDvHIgc2VsZWt0aWVydGUgRWxlbWVudGVcbiAgICovXG4gIHB1YmxpYyBnZXRTZWxlY3RlZEl0ZW1zKHNlbGVjdGVsZW1lbnQ6IGFueSkge1xuICAgIGNvbnN0IHNlbGVjdGVkVmFsdWVzOiBBcnJheTxzdHJpbmc+ID0gbmV3IEFycmF5PHN0cmluZz4oKTtcblxuICAgIGlmIChzZWxlY3RlbGVtZW50Lmhhc093blByb3BlcnR5KCdzZWxlY3RlZE9wdGlvbnMnKSkge1xuICAgICAgY29uc3Qgb3B0aW9uczogSFRNTENvbGxlY3Rpb24gPSBzZWxlY3RlbGVtZW50LnNlbGVjdGVkT3B0aW9ucztcbiAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgb3B0aW9ucy5sZW5ndGg7IGkrKykge1xuICAgICAgICBjb25zdCBvcHQ6IEhUTUxPcHRpb24gPSBvcHRpb25zLml0ZW0oaSk7XG4gICAgICAgIHNlbGVjdGVkVmFsdWVzLnB1c2gob3B0LnZhbHVlKTtcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgLy8gRGVncmFkZSBvbiBJRVxuICAgICAgY29uc3Qgb3B0aW9uczogSFRNTENvbGxlY3Rpb24gPSA8SFRNTENvbGxlY3Rpb24+c2VsZWN0ZWxlbWVudC5vcHRpb25zO1xuICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBvcHRpb25zLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgIGNvbnN0IG9wdDogSFRNTE9wdGlvbiA9IG9wdGlvbnMuaXRlbShpKTtcbiAgICAgICAgaWYgKG9wdC5zZWxlY3RlZCkge1xuICAgICAgICAgIHNlbGVjdGVkVmFsdWVzLnB1c2gob3B0LnZhbHVlKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICB0aGlzLnNldFZhbHVlKHNlbGVjdGVkVmFsdWVzKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogUmVnaXN0cmllcnQgZWluIExpc3Rib3ggRWxlbWVudFxuICAgKiBAcGFyYW0gb3B0aW9uIExpc3Rib3ggT3B0aW9uIEl0ZW0gZGFzIHJlZ2lzdHJpZXJ0IHdlcmRlbiBzb2xsXG4gICAqL1xuICBwdWJsaWMgcmVnaXN0ZXJPcHRpb24ob3B0aW9uOiBTYWNMaXN0Ym94T3B0aW9uQ29tbW9uKTogdm9pZCB7XG4gICAgdGhpcy5vcHRpb25saXN0LnB1c2gob3B0aW9uKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBIZWJ0IGRpZSBSZWdpc3RyYXRpb24gZWluZXMgTGlzdGJveCBJdGVtcyBhdWZcbiAgICogQHBhcmFtIG9wdGlvbiBMaXN0Ym94IE9wdGlvbiBJdGVtIGRhcyBkZXJlZ2lzdHJpZXJ0IHdlcmRlbiBzb2xsXG4gICAqL1xuICBwdWJsaWMgdW5yZWdpc3Rlck9wdGlvbihvcHRpb246IFNhY0xpc3Rib3hPcHRpb25Db21tb24pOiB2b2lkIHtcbiAgICBjb25zdCBpbmRleCA9IHRoaXMub3B0aW9ubGlzdC5pbmRleE9mKG9wdGlvbik7XG4gICAgdGhpcy5vcHRpb25saXN0LnNwbGljZShpbmRleCwgMSk7XG4gIH1cblxuICAvKipcbiAgICogVmFsaWRhdG9yIE1ldGhvZGVcbiAgICovXG4gIHB1YmxpYyB2YWxpZGF0ZURhdGEoYzogQWJzdHJhY3RDb250cm9sKTogVmFsaWRhdGlvbkVycm9ycyB8IG51bGwge1xuICAgIGxldCBlcnJvcjogVmFsaWRhdGlvbkVycm9ycyB8IG51bGwgPSBudWxsO1xuXG4gICAgaWYgKHRoaXMuaXNyZXF1aXJlZCkge1xuICAgICAgZXJyb3IgPSBWYWxpZGF0aW9uLnJlcXVpcmVkKFxuICAgICAgICB0aGlzLnZhbGlkYXRpb25tZXNzYWdlcmVxdWlyZWQsXG4gICAgICAgIHRoaXMudmFsaWRhdGlvbm1lc3NhZ2VzdW1tYXJ5cmVxdWlyZWRcbiAgICAgICkoYyk7XG4gICAgfVxuXG4gICAgcmV0dXJuIGVycm9yO1xuICB9XG5cbiAgLyoqXG4gICAqIE1ldGhvZGUgc2NocmVpYnQgbmV1ZW4gV2VydFxuICAgKi9cbiAgcHVibGljIHdyaXRlVmFsdWUodmFsdWU6IEFycmF5PHN0cmluZz4pIHtcbiAgICBpZiAodGhpcy5vcHRpb25saXN0ICYmIHZhbHVlKSB7XG4gICAgICB0aGlzLm9wdGlvbmxpc3QuZm9yRWFjaCgoaXRtKSA9PiB7XG4gICAgICAgIGlmICh2YWx1ZS5pbmRleE9mKGl0bS52YWx1ZSkgPj0gMCkge1xuICAgICAgICAgIGl0bS5fc2V0U2VsZWN0ZWQodHJ1ZSk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH1cblxuICAgIHN1cGVyLndyaXRlVmFsdWUodmFsdWUpO1xuICB9XG5cbiAgLy8gI2VuZHJlZ2lvbiBQdWJsaWMgTWV0aG9kc1xufVxuXG4vKipcbiAqIFdyYXBwZXIgZsO8ciBIVE1MIFNlbGVjdFxuICovXG5hYnN0cmFjdCBjbGFzcyBIVE1MQ29sbGVjdGlvbiB7XG4gIC8vICNyZWdpb24gUHJvcGVydGllc1xuXG4gIC8qKlxuICAgKiBMw6RuZ2VcbiAgICovXG4gIHB1YmxpYyBsZW5ndGg6IG51bWJlcjtcblxuICAvLyAjZW5kcmVnaW9uIFByb3BlcnRpZXNcblxuICAvLyAjcmVnaW9uIFB1YmxpYyBBYnN0cmFjdCBNZXRob2RzXG5cbiAgLyoqXG4gICAqIE9wdGlvbi1JdGVtXG4gICAqL1xuICBwdWJsaWMgYWJzdHJhY3QgaXRlbShfOiBudW1iZXIpOiBIVE1MT3B0aW9uO1xuXG4gIC8vICNlbmRyZWdpb24gUHVibGljIEFic3RyYWN0IE1ldGhvZHNcbn1cblxuLy8gI2VuZHJlZ2lvbiBDbGFzc2VzXG4iXX0=
@@ -1,7 +1,7 @@
1
- /**
2
- * @fileoverview This file was generated by the Angular template compiler. Do not edit.
3
- *
4
- * @suppress {suspiciousCode,uselessCode,missingProperties,missingOverride,checkTypes,extraRequire}
5
- * tslint:disable
6
- */
7
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlzdGJveC5uZ2ZhY3RvcnkuanMiLCJzb3VyY2VSb290IjoiQzovUHJvamVrdGUvc2ltcGxlYW5ndWxhcmNvbnRyb2xzLW5nMTAvY2guam5ldHdvcmsuc2FjLWNvbnRyb2xzL3Byb2plY3RzL3NhYy1jb21tb24vc3JjLyIsInNvdXJjZXMiOlsiY29udHJvbHMvbGlzdC9saXN0Ym94Lm5nZmFjdG9yeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgaTAgZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pMC5Db21wb25lbnRGYWN0b3J5O1xuIl19
1
+ /**
2
+ * @fileoverview This file was generated by the Angular template compiler. Do not edit.
3
+ *
4
+ * @suppress {suspiciousCode,uselessCode,missingProperties,missingOverride,checkTypes,extraRequire}
5
+ * tslint:disable
6
+ */
7
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlzdGJveC5uZ2ZhY3RvcnkuanMiLCJzb3VyY2VSb290IjoiL2hvbWUvcnVubmVyL3dvcmsvc2ltcGxlYW5ndWxhcmNvbnRyb2xzL3NpbXBsZWFuZ3VsYXJjb250cm9scy9jaC5qbmV0d29yay5zYWMtY29udHJvbHMvcHJvamVjdHMvc2FjLWNvbW1vbi9zcmMvIiwic291cmNlcyI6WyJjb250cm9scy9saXN0L2xpc3Rib3gubmdmYWN0b3J5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBpMCBmcm9tICdAYW5ndWxhci9jb3JlJztcbmkwLkNvbXBvbmVudEZhY3Rvcnk7XG4iXX0=