smart-webcomponents 18.0.0 → 18.0.1

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 (737) hide show
  1. package/package.json +1 -1
  2. package/source/angular/accordion/index.ts +1 -0
  3. package/source/angular/accordion/public_api.ts +5 -0
  4. package/source/angular/accordion/smart.accordion.module.ts +13 -0
  5. package/source/angular/accordion/smart.accordion.ts +370 -0
  6. package/source/angular/accordion/smart.accordionitem.ts +142 -0
  7. package/source/angular/accordion/smart.element.ts +104 -0
  8. package/source/angular/array/index.ts +1 -0
  9. package/source/angular/array/public_api.ts +3 -0
  10. package/source/angular/array/smart.array.module.ts +12 -0
  11. package/source/angular/array/smart.array.ts +817 -0
  12. package/source/angular/array/smart.element.ts +104 -0
  13. package/source/angular/barcode/index.ts +1 -0
  14. package/source/angular/barcode/public_api.ts +3 -0
  15. package/source/angular/barcode/smart.barcode.module.ts +12 -0
  16. package/source/angular/barcode/smart.barcode.ts +306 -0
  17. package/source/angular/barcode/smart.element.ts +104 -0
  18. package/source/angular/bootstrap/bootstrap.button.ts +160 -0
  19. package/source/angular/bootstrap/bootstrap.checkbox.ts +165 -0
  20. package/source/angular/bootstrap/bootstrap.circular.ts +151 -0
  21. package/source/angular/bootstrap/bootstrap.dropdown.ts +253 -0
  22. package/source/angular/bootstrap/bootstrap.fileinput.ts +133 -0
  23. package/source/angular/bootstrap/bootstrap.input.ts +160 -0
  24. package/source/angular/bootstrap/bootstrap.inputgroup.ts +178 -0
  25. package/source/angular/bootstrap/bootstrap.modal.ts +204 -0
  26. package/source/angular/bootstrap/bootstrap.progressbar.ts +151 -0
  27. package/source/angular/bootstrap/bootstrap.radiobutton.ts +156 -0
  28. package/source/angular/bootstrap/bootstrap.range.ts +133 -0
  29. package/source/angular/bootstrap/bootstrap.splitbutton.ts +253 -0
  30. package/source/angular/bootstrap/bootstrap.switchbutton.ts +165 -0
  31. package/source/angular/bootstrap/bootstrap.tabs.ts +175 -0
  32. package/source/angular/bootstrap/bootstrap.textarea.ts +160 -0
  33. package/source/angular/bootstrap/bootstrap.togglebutton.ts +156 -0
  34. package/source/angular/bootstrap/index.ts +1 -0
  35. package/source/angular/bootstrap/public_api.ts +17 -0
  36. package/source/angular/bootstrap/smart.element.ts +104 -0
  37. package/source/angular/breadcrumb/index.ts +1 -0
  38. package/source/angular/breadcrumb/public_api.ts +3 -0
  39. package/source/angular/breadcrumb/smart.breadcrumb.module.ts +12 -0
  40. package/source/angular/breadcrumb/smart.breadcrumb.ts +306 -0
  41. package/source/angular/breadcrumb/smart.element.ts +104 -0
  42. package/source/angular/button/index.ts +1 -0
  43. package/source/angular/button/public_api.ts +9 -0
  44. package/source/angular/button/smart.button.module.ts +15 -0
  45. package/source/angular/button/smart.button.ts +230 -0
  46. package/source/angular/button/smart.element.ts +104 -0
  47. package/source/angular/button/smart.powerbutton.ts +283 -0
  48. package/source/angular/button/smart.repeatbutton.ts +214 -0
  49. package/source/angular/button/smart.togglebutton.ts +235 -0
  50. package/source/angular/buttongroup/index.ts +1 -0
  51. package/source/angular/buttongroup/public_api.ts +3 -0
  52. package/source/angular/buttongroup/smart.buttongroup.module.ts +12 -0
  53. package/source/angular/buttongroup/smart.buttongroup.ts +229 -0
  54. package/source/angular/buttongroup/smart.element.ts +104 -0
  55. package/source/angular/calendar/index.ts +1 -0
  56. package/source/angular/calendar/public_api.ts +3 -0
  57. package/source/angular/calendar/smart.calendar.module.ts +12 -0
  58. package/source/angular/calendar/smart.calendar.ts +787 -0
  59. package/source/angular/calendar/smart.element.ts +104 -0
  60. package/source/angular/card/index.ts +1 -0
  61. package/source/angular/card/public_api.ts +3 -0
  62. package/source/angular/card/smart.card.module.ts +12 -0
  63. package/source/angular/card/smart.card.ts +220 -0
  64. package/source/angular/card/smart.element.ts +104 -0
  65. package/source/angular/cardview/index.ts +1 -0
  66. package/source/angular/cardview/public_api.ts +3 -0
  67. package/source/angular/cardview/smart.cardview.module.ts +12 -0
  68. package/source/angular/cardview/smart.cardview.ts +573 -0
  69. package/source/angular/cardview/smart.element.ts +104 -0
  70. package/source/angular/carousel/index.ts +1 -0
  71. package/source/angular/carousel/public_api.ts +3 -0
  72. package/source/angular/carousel/smart.carousel.module.ts +12 -0
  73. package/source/angular/carousel/smart.carousel.ts +414 -0
  74. package/source/angular/carousel/smart.element.ts +104 -0
  75. package/source/angular/chart/index.ts +1 -0
  76. package/source/angular/chart/public_api.ts +3 -0
  77. package/source/angular/chart/smart.chart.module.ts +12 -0
  78. package/source/angular/chart/smart.chart.ts +930 -0
  79. package/source/angular/chart/smart.element.ts +104 -0
  80. package/source/angular/checkbox/index.ts +1 -0
  81. package/source/angular/checkbox/public_api.ts +3 -0
  82. package/source/angular/checkbox/smart.checkbox.module.ts +12 -0
  83. package/source/angular/checkbox/smart.checkbox.ts +341 -0
  84. package/source/angular/checkbox/smart.element.ts +104 -0
  85. package/source/angular/checkinput/index.ts +1 -0
  86. package/source/angular/checkinput/public_api.ts +3 -0
  87. package/source/angular/checkinput/smart.checkinput.module.ts +12 -0
  88. package/source/angular/checkinput/smart.checkinput.ts +497 -0
  89. package/source/angular/checkinput/smart.element.ts +104 -0
  90. package/source/angular/chip/index.ts +1 -0
  91. package/source/angular/chip/public_api.ts +3 -0
  92. package/source/angular/chip/smart.chip.module.ts +12 -0
  93. package/source/angular/chip/smart.chip.ts +221 -0
  94. package/source/angular/chip/smart.element.ts +104 -0
  95. package/source/angular/colorinput/index.ts +1 -0
  96. package/source/angular/colorinput/public_api.ts +3 -0
  97. package/source/angular/colorinput/smart.colorinput.module.ts +12 -0
  98. package/source/angular/colorinput/smart.colorinput.ts +456 -0
  99. package/source/angular/colorinput/smart.element.ts +104 -0
  100. package/source/angular/colorpanel/index.ts +1 -0
  101. package/source/angular/colorpanel/public_api.ts +3 -0
  102. package/source/angular/colorpanel/smart.colorpanel.module.ts +12 -0
  103. package/source/angular/colorpanel/smart.colorpanel.ts +501 -0
  104. package/source/angular/colorpanel/smart.element.ts +104 -0
  105. package/source/angular/colorpicker/index.ts +1 -0
  106. package/source/angular/colorpicker/public_api.ts +3 -0
  107. package/source/angular/colorpicker/smart.colorpicker.module.ts +12 -0
  108. package/source/angular/colorpicker/smart.colorpicker.ts +756 -0
  109. package/source/angular/colorpicker/smart.element.ts +104 -0
  110. package/source/angular/columnpanel/index.ts +1 -0
  111. package/source/angular/columnpanel/public_api.ts +3 -0
  112. package/source/angular/columnpanel/smart.columnpanel.module.ts +12 -0
  113. package/source/angular/columnpanel/smart.columnpanel.ts +183 -0
  114. package/source/angular/columnpanel/smart.element.ts +104 -0
  115. package/source/angular/combobox/index.ts +1 -0
  116. package/source/angular/combobox/public_api.ts +7 -0
  117. package/source/angular/combobox/smart.combobox.module.ts +14 -0
  118. package/source/angular/combobox/smart.combobox.ts +1154 -0
  119. package/source/angular/combobox/smart.element.ts +104 -0
  120. package/source/angular/combobox/smart.listitem.ts +162 -0
  121. package/source/angular/combobox/smart.listitemsgroup.ts +72 -0
  122. package/source/angular/countryinput/index.ts +1 -0
  123. package/source/angular/countryinput/public_api.ts +3 -0
  124. package/source/angular/countryinput/smart.countryinput.module.ts +12 -0
  125. package/source/angular/countryinput/smart.countryinput.ts +391 -0
  126. package/source/angular/countryinput/smart.element.ts +104 -0
  127. package/source/angular/customizationdialog/index.ts +1 -0
  128. package/source/angular/customizationdialog/public_api.ts +3 -0
  129. package/source/angular/customizationdialog/smart.customizationdialog.module.ts +12 -0
  130. package/source/angular/customizationdialog/smart.customizationdialog.ts +311 -0
  131. package/source/angular/customizationdialog/smart.element.ts +104 -0
  132. package/source/angular/dateinput/index.ts +1 -0
  133. package/source/angular/dateinput/public_api.ts +3 -0
  134. package/source/angular/dateinput/smart.dateinput.module.ts +12 -0
  135. package/source/angular/dateinput/smart.dateinput.ts +465 -0
  136. package/source/angular/dateinput/smart.element.ts +104 -0
  137. package/source/angular/daterangeinput/index.ts +1 -0
  138. package/source/angular/daterangeinput/public_api.ts +3 -0
  139. package/source/angular/daterangeinput/smart.daterangeinput.module.ts +12 -0
  140. package/source/angular/daterangeinput/smart.daterangeinput.ts +456 -0
  141. package/source/angular/daterangeinput/smart.element.ts +104 -0
  142. package/source/angular/datetimepicker/index.ts +1 -0
  143. package/source/angular/datetimepicker/public_api.ts +3 -0
  144. package/source/angular/datetimepicker/smart.datetimepicker.module.ts +12 -0
  145. package/source/angular/datetimepicker/smart.datetimepicker.ts +835 -0
  146. package/source/angular/datetimepicker/smart.element.ts +104 -0
  147. package/source/angular/dockinglayout/index.ts +1 -0
  148. package/source/angular/dockinglayout/public_api.ts +3 -0
  149. package/source/angular/dockinglayout/smart.dockinglayout.module.ts +12 -0
  150. package/source/angular/dockinglayout/smart.dockinglayout.ts +866 -0
  151. package/source/angular/dockinglayout/smart.element.ts +104 -0
  152. package/source/angular/dropdownbutton/index.ts +1 -0
  153. package/source/angular/dropdownbutton/public_api.ts +3 -0
  154. package/source/angular/dropdownbutton/smart.dropdownbutton.module.ts +12 -0
  155. package/source/angular/dropdownbutton/smart.dropdownbutton.ts +542 -0
  156. package/source/angular/dropdownbutton/smart.element.ts +104 -0
  157. package/source/angular/dropdownlist/index.ts +1 -0
  158. package/source/angular/dropdownlist/public_api.ts +7 -0
  159. package/source/angular/dropdownlist/smart.dropdownlist.module.ts +14 -0
  160. package/source/angular/dropdownlist/smart.dropdownlist.ts +1111 -0
  161. package/source/angular/dropdownlist/smart.element.ts +104 -0
  162. package/source/angular/dropdownlist/smart.listitem.ts +162 -0
  163. package/source/angular/dropdownlist/smart.listitemsgroup.ts +72 -0
  164. package/source/angular/editor/index.ts +1 -0
  165. package/source/angular/editor/public_api.ts +3 -0
  166. package/source/angular/editor/smart.editor.module.ts +12 -0
  167. package/source/angular/editor/smart.editor.ts +1353 -0
  168. package/source/angular/editor/smart.element.ts +104 -0
  169. package/source/angular/element/index.ts +1 -0
  170. package/source/angular/element/public_api.ts +3 -0
  171. package/source/angular/element/smart.element.module.ts +10 -0
  172. package/source/angular/element/smart.element.ts +104 -0
  173. package/source/angular/fileupload/index.ts +1 -0
  174. package/source/angular/fileupload/public_api.ts +3 -0
  175. package/source/angular/fileupload/smart.element.ts +104 -0
  176. package/source/angular/fileupload/smart.fileupload.module.ts +12 -0
  177. package/source/angular/fileupload/smart.fileupload.ts +517 -0
  178. package/source/angular/filterbuilder/index.ts +1 -0
  179. package/source/angular/filterbuilder/public_api.ts +3 -0
  180. package/source/angular/filterbuilder/smart.element.ts +104 -0
  181. package/source/angular/filterbuilder/smart.filterbuilder.module.ts +12 -0
  182. package/source/angular/filterbuilder/smart.filterbuilder.ts +506 -0
  183. package/source/angular/filterpanel/index.ts +1 -0
  184. package/source/angular/filterpanel/public_api.ts +3 -0
  185. package/source/angular/filterpanel/smart.element.ts +104 -0
  186. package/source/angular/filterpanel/smart.filterpanel.module.ts +12 -0
  187. package/source/angular/filterpanel/smart.filterpanel.ts +334 -0
  188. package/source/angular/form/index.ts +1 -0
  189. package/source/angular/form/public_api.ts +7 -0
  190. package/source/angular/form/smart.element.ts +104 -0
  191. package/source/angular/form/smart.form.module.ts +14 -0
  192. package/source/angular/form/smart.form.ts +288 -0
  193. package/source/angular/form/smart.formcontrol.ts +336 -0
  194. package/source/angular/form/smart.formgroup.ts +238 -0
  195. package/source/angular/ganttchart/index.ts +1 -0
  196. package/source/angular/ganttchart/public_api.ts +3 -0
  197. package/source/angular/ganttchart/smart.element.ts +104 -0
  198. package/source/angular/ganttchart/smart.ganttchart.module.ts +12 -0
  199. package/source/angular/ganttchart/smart.ganttchart.ts +2214 -0
  200. package/source/angular/gauge/index.ts +1 -0
  201. package/source/angular/gauge/public_api.ts +3 -0
  202. package/source/angular/gauge/smart.element.ts +104 -0
  203. package/source/angular/gauge/smart.gauge.module.ts +12 -0
  204. package/source/angular/gauge/smart.gauge.ts +650 -0
  205. package/source/angular/grid/index.ts +1 -0
  206. package/source/angular/grid/public_api.ts +3 -0
  207. package/source/angular/grid/smart.element.ts +104 -0
  208. package/source/angular/grid/smart.grid.module.ts +12 -0
  209. package/source/angular/grid/smart.grid.ts +3154 -0
  210. package/source/angular/grouppanel/index.ts +1 -0
  211. package/source/angular/grouppanel/public_api.ts +3 -0
  212. package/source/angular/grouppanel/smart.element.ts +104 -0
  213. package/source/angular/grouppanel/smart.grouppanel.module.ts +12 -0
  214. package/source/angular/grouppanel/smart.grouppanel.ts +220 -0
  215. package/source/angular/index.d.ts +33688 -0
  216. package/source/angular/input/index.ts +1 -0
  217. package/source/angular/input/public_api.ts +3 -0
  218. package/source/angular/input/smart.element.ts +104 -0
  219. package/source/angular/input/smart.input.module.ts +12 -0
  220. package/source/angular/input/smart.input.ts +590 -0
  221. package/source/angular/kanban/index.ts +1 -0
  222. package/source/angular/kanban/public_api.ts +3 -0
  223. package/source/angular/kanban/smart.element.ts +104 -0
  224. package/source/angular/kanban/smart.kanban.module.ts +12 -0
  225. package/source/angular/kanban/smart.kanban.ts +1700 -0
  226. package/source/angular/layout/index.ts +1 -0
  227. package/source/angular/layout/public_api.ts +11 -0
  228. package/source/angular/layout/smart.element.ts +104 -0
  229. package/source/angular/layout/smart.layout.module.ts +16 -0
  230. package/source/angular/layout/smart.layout.ts +363 -0
  231. package/source/angular/layout/smart.layoutgroup.ts +140 -0
  232. package/source/angular/layout/smart.layoutitem.ts +129 -0
  233. package/source/angular/layout/smart.tablayoutgroup.ts +147 -0
  234. package/source/angular/layout/smart.tablayoutitem.ts +138 -0
  235. package/source/angular/led/index.ts +1 -0
  236. package/source/angular/led/public_api.ts +3 -0
  237. package/source/angular/led/smart.element.ts +104 -0
  238. package/source/angular/led/smart.led.module.ts +12 -0
  239. package/source/angular/led/smart.led.ts +280 -0
  240. package/source/angular/listbox/index.ts +1 -0
  241. package/source/angular/listbox/public_api.ts +7 -0
  242. package/source/angular/listbox/smart.element.ts +104 -0
  243. package/source/angular/listbox/smart.listbox.module.ts +14 -0
  244. package/source/angular/listbox/smart.listbox.ts +1036 -0
  245. package/source/angular/listbox/smart.listitem.ts +162 -0
  246. package/source/angular/listbox/smart.listitemsgroup.ts +72 -0
  247. package/source/angular/listmenu/index.ts +1 -0
  248. package/source/angular/listmenu/public_api.ts +7 -0
  249. package/source/angular/listmenu/smart.element.ts +104 -0
  250. package/source/angular/listmenu/smart.listmenu.module.ts +14 -0
  251. package/source/angular/listmenu/smart.listmenu.ts +597 -0
  252. package/source/angular/listmenu/smart.menuitem.ts +126 -0
  253. package/source/angular/listmenu/smart.menuitemsgroup.ts +153 -0
  254. package/source/angular/map/index.ts +1 -0
  255. package/source/angular/map/public_api.ts +3 -0
  256. package/source/angular/map/smart.element.ts +104 -0
  257. package/source/angular/map/smart.map.module.ts +12 -0
  258. package/source/angular/map/smart.map.ts +128 -0
  259. package/source/angular/maskedtextbox/index.ts +1 -0
  260. package/source/angular/maskedtextbox/public_api.ts +3 -0
  261. package/source/angular/maskedtextbox/smart.element.ts +104 -0
  262. package/source/angular/maskedtextbox/smart.maskedtextbox.module.ts +12 -0
  263. package/source/angular/maskedtextbox/smart.maskedtextbox.ts +539 -0
  264. package/source/angular/menu/index.ts +1 -0
  265. package/source/angular/menu/public_api.ts +7 -0
  266. package/source/angular/menu/smart.element.ts +104 -0
  267. package/source/angular/menu/smart.menu.module.ts +14 -0
  268. package/source/angular/menu/smart.menu.ts +695 -0
  269. package/source/angular/menu/smart.menuitem.ts +126 -0
  270. package/source/angular/menu/smart.menuitemsgroup.ts +153 -0
  271. package/source/angular/multicolumnfilterpanel/index.ts +1 -0
  272. package/source/angular/multicolumnfilterpanel/public_api.ts +3 -0
  273. package/source/angular/multicolumnfilterpanel/smart.element.ts +104 -0
  274. package/source/angular/multicolumnfilterpanel/smart.multicolumnfilterpanel.module.ts +12 -0
  275. package/source/angular/multicolumnfilterpanel/smart.multicolumnfilterpanel.ts +256 -0
  276. package/source/angular/multicomboinput/index.ts +1 -0
  277. package/source/angular/multicomboinput/public_api.ts +3 -0
  278. package/source/angular/multicomboinput/smart.element.ts +104 -0
  279. package/source/angular/multicomboinput/smart.multicomboinput.module.ts +12 -0
  280. package/source/angular/multicomboinput/smart.multicomboinput.ts +542 -0
  281. package/source/angular/multiinput/index.ts +1 -0
  282. package/source/angular/multiinput/public_api.ts +3 -0
  283. package/source/angular/multiinput/smart.element.ts +104 -0
  284. package/source/angular/multiinput/smart.multiinput.module.ts +12 -0
  285. package/source/angular/multiinput/smart.multiinput.ts +497 -0
  286. package/source/angular/multilinetextbox/index.ts +1 -0
  287. package/source/angular/multilinetextbox/public_api.ts +7 -0
  288. package/source/angular/multilinetextbox/smart.element.ts +104 -0
  289. package/source/angular/multilinetextbox/smart.listitem.ts +162 -0
  290. package/source/angular/multilinetextbox/smart.listitemsgroup.ts +72 -0
  291. package/source/angular/multilinetextbox/smart.multilinetextbox.module.ts +14 -0
  292. package/source/angular/multilinetextbox/smart.multilinetextbox.ts +561 -0
  293. package/source/angular/multisplitbutton/index.ts +1 -0
  294. package/source/angular/multisplitbutton/public_api.ts +7 -0
  295. package/source/angular/multisplitbutton/smart.element.ts +104 -0
  296. package/source/angular/multisplitbutton/smart.listitem.ts +162 -0
  297. package/source/angular/multisplitbutton/smart.listitemsgroup.ts +72 -0
  298. package/source/angular/multisplitbutton/smart.multisplitbutton.module.ts +14 -0
  299. package/source/angular/multisplitbutton/smart.multisplitbutton.ts +620 -0
  300. package/source/angular/numberinput/index.ts +1 -0
  301. package/source/angular/numberinput/public_api.ts +3 -0
  302. package/source/angular/numberinput/smart.element.ts +104 -0
  303. package/source/angular/numberinput/smart.numberinput.module.ts +12 -0
  304. package/source/angular/numberinput/smart.numberinput.ts +398 -0
  305. package/source/angular/numerictextbox/index.ts +1 -0
  306. package/source/angular/numerictextbox/public_api.ts +3 -0
  307. package/source/angular/numerictextbox/smart.element.ts +104 -0
  308. package/source/angular/numerictextbox/smart.numerictextbox.module.ts +12 -0
  309. package/source/angular/numerictextbox/smart.numerictextbox.ts +648 -0
  310. package/source/angular/pager/index.ts +1 -0
  311. package/source/angular/pager/public_api.ts +3 -0
  312. package/source/angular/pager/smart.element.ts +104 -0
  313. package/source/angular/pager/smart.pager.module.ts +12 -0
  314. package/source/angular/pager/smart.pager.ts +386 -0
  315. package/source/angular/passwordinput/index.ts +1 -0
  316. package/source/angular/passwordinput/public_api.ts +3 -0
  317. package/source/angular/passwordinput/smart.element.ts +104 -0
  318. package/source/angular/passwordinput/smart.passwordinput.module.ts +12 -0
  319. package/source/angular/passwordinput/smart.passwordinput.ts +218 -0
  320. package/source/angular/passwordtextbox/index.ts +1 -0
  321. package/source/angular/passwordtextbox/public_api.ts +3 -0
  322. package/source/angular/passwordtextbox/smart.element.ts +104 -0
  323. package/source/angular/passwordtextbox/smart.passwordtextbox.module.ts +12 -0
  324. package/source/angular/passwordtextbox/smart.passwordtextbox.ts +463 -0
  325. package/source/angular/path/index.ts +1 -0
  326. package/source/angular/path/public_api.ts +3 -0
  327. package/source/angular/path/smart.element.ts +104 -0
  328. package/source/angular/path/smart.path.module.ts +12 -0
  329. package/source/angular/path/smart.path.ts +491 -0
  330. package/source/angular/phoneinput/index.ts +1 -0
  331. package/source/angular/phoneinput/public_api.ts +3 -0
  332. package/source/angular/phoneinput/smart.element.ts +104 -0
  333. package/source/angular/phoneinput/smart.phoneinput.module.ts +12 -0
  334. package/source/angular/phoneinput/smart.phoneinput.ts +493 -0
  335. package/source/angular/pivottable/index.ts +1 -0
  336. package/source/angular/pivottable/public_api.ts +3 -0
  337. package/source/angular/pivottable/smart.element.ts +104 -0
  338. package/source/angular/pivottable/smart.pivottable.module.ts +12 -0
  339. package/source/angular/pivottable/smart.pivottable.ts +840 -0
  340. package/source/angular/progressbar/index.ts +1 -0
  341. package/source/angular/progressbar/public_api.ts +5 -0
  342. package/source/angular/progressbar/smart.circularprogressbar.ts +223 -0
  343. package/source/angular/progressbar/smart.element.ts +104 -0
  344. package/source/angular/progressbar/smart.progressbar.module.ts +13 -0
  345. package/source/angular/progressbar/smart.progressbar.ts +235 -0
  346. package/source/angular/qrcode/index.ts +1 -0
  347. package/source/angular/qrcode/public_api.ts +3 -0
  348. package/source/angular/qrcode/smart.element.ts +104 -0
  349. package/source/angular/qrcode/smart.qrcode.module.ts +12 -0
  350. package/source/angular/qrcode/smart.qrcode.ts +333 -0
  351. package/source/angular/querybuilder/index.ts +1 -0
  352. package/source/angular/querybuilder/public_api.ts +3 -0
  353. package/source/angular/querybuilder/smart.element.ts +104 -0
  354. package/source/angular/querybuilder/smart.querybuilder.module.ts +12 -0
  355. package/source/angular/querybuilder/smart.querybuilder.ts +460 -0
  356. package/source/angular/radiobutton/index.ts +1 -0
  357. package/source/angular/radiobutton/public_api.ts +3 -0
  358. package/source/angular/radiobutton/smart.element.ts +104 -0
  359. package/source/angular/radiobutton/smart.radiobutton.module.ts +12 -0
  360. package/source/angular/radiobutton/smart.radiobutton.ts +350 -0
  361. package/source/angular/rating/index.ts +1 -0
  362. package/source/angular/rating/public_api.ts +3 -0
  363. package/source/angular/rating/smart.element.ts +104 -0
  364. package/source/angular/rating/smart.rating.module.ts +12 -0
  365. package/source/angular/rating/smart.rating.ts +309 -0
  366. package/source/angular/ribbon/index.ts +1 -0
  367. package/source/angular/ribbon/public_api.ts +9 -0
  368. package/source/angular/ribbon/smart.element.ts +104 -0
  369. package/source/angular/ribbon/smart.ribbon.module.ts +15 -0
  370. package/source/angular/ribbon/smart.ribbon.ts +427 -0
  371. package/source/angular/ribbon/smart.ribbongroup.ts +126 -0
  372. package/source/angular/ribbon/smart.ribbonitem.ts +180 -0
  373. package/source/angular/ribbon/smart.ribbontab.ts +99 -0
  374. package/source/angular/scheduler/index.ts +1 -0
  375. package/source/angular/scheduler/public_api.ts +3 -0
  376. package/source/angular/scheduler/smart.element.ts +104 -0
  377. package/source/angular/scheduler/smart.scheduler.module.ts +12 -0
  378. package/source/angular/scheduler/smart.scheduler.ts +2337 -0
  379. package/source/angular/scrollbar/index.ts +1 -0
  380. package/source/angular/scrollbar/public_api.ts +3 -0
  381. package/source/angular/scrollbar/smart.element.ts +104 -0
  382. package/source/angular/scrollbar/smart.scrollbar.module.ts +12 -0
  383. package/source/angular/scrollbar/smart.scrollbar.ts +260 -0
  384. package/source/angular/slider/index.ts +1 -0
  385. package/source/angular/slider/public_api.ts +3 -0
  386. package/source/angular/slider/smart.element.ts +104 -0
  387. package/source/angular/slider/smart.slider.module.ts +12 -0
  388. package/source/angular/slider/smart.slider.ts +632 -0
  389. package/source/angular/sortable/index.ts +1 -0
  390. package/source/angular/sortable/public_api.ts +3 -0
  391. package/source/angular/sortable/smart.element.ts +104 -0
  392. package/source/angular/sortable/smart.sortable.module.ts +12 -0
  393. package/source/angular/sortable/smart.sortable.ts +217 -0
  394. package/source/angular/sortpanel/index.ts +1 -0
  395. package/source/angular/sortpanel/public_api.ts +3 -0
  396. package/source/angular/sortpanel/smart.element.ts +104 -0
  397. package/source/angular/sortpanel/smart.sortpanel.module.ts +12 -0
  398. package/source/angular/sortpanel/smart.sortpanel.ts +180 -0
  399. package/source/angular/splitter/index.ts +1 -0
  400. package/source/angular/splitter/public_api.ts +7 -0
  401. package/source/angular/splitter/smart.element.ts +104 -0
  402. package/source/angular/splitter/smart.splitter.module.ts +14 -0
  403. package/source/angular/splitter/smart.splitter.ts +530 -0
  404. package/source/angular/splitter/smart.splitterbar.ts +121 -0
  405. package/source/angular/splitter/smart.splitteritem.ts +192 -0
  406. package/source/angular/switchbutton/index.ts +1 -0
  407. package/source/angular/switchbutton/public_api.ts +3 -0
  408. package/source/angular/switchbutton/smart.element.ts +104 -0
  409. package/source/angular/switchbutton/smart.switchbutton.module.ts +12 -0
  410. package/source/angular/switchbutton/smart.switchbutton.ts +386 -0
  411. package/source/angular/table/index.ts +1 -0
  412. package/source/angular/table/public_api.ts +3 -0
  413. package/source/angular/table/smart.element.ts +104 -0
  414. package/source/angular/table/smart.table.module.ts +12 -0
  415. package/source/angular/table/smart.table.ts +1507 -0
  416. package/source/angular/tabs/index.ts +1 -0
  417. package/source/angular/tabs/public_api.ts +7 -0
  418. package/source/angular/tabs/smart.element.ts +104 -0
  419. package/source/angular/tabs/smart.tabitem.ts +126 -0
  420. package/source/angular/tabs/smart.tabitemsgroup.ts +81 -0
  421. package/source/angular/tabs/smart.tabs.module.ts +14 -0
  422. package/source/angular/tabs/smart.tabs.ts +622 -0
  423. package/source/angular/tank/index.ts +1 -0
  424. package/source/angular/tank/public_api.ts +3 -0
  425. package/source/angular/tank/smart.element.ts +104 -0
  426. package/source/angular/tank/smart.tank.module.ts +12 -0
  427. package/source/angular/tank/smart.tank.ts +593 -0
  428. package/source/angular/textarea/index.ts +1 -0
  429. package/source/angular/textarea/public_api.ts +3 -0
  430. package/source/angular/textarea/smart.element.ts +104 -0
  431. package/source/angular/textarea/smart.textarea.module.ts +12 -0
  432. package/source/angular/textarea/smart.textarea.ts +519 -0
  433. package/source/angular/textbox/index.ts +1 -0
  434. package/source/angular/textbox/public_api.ts +7 -0
  435. package/source/angular/textbox/smart.element.ts +104 -0
  436. package/source/angular/textbox/smart.listitem.ts +162 -0
  437. package/source/angular/textbox/smart.listitemsgroup.ts +72 -0
  438. package/source/angular/textbox/smart.textbox.module.ts +14 -0
  439. package/source/angular/textbox/smart.textbox.ts +708 -0
  440. package/source/angular/threedchart/index.ts +1 -0
  441. package/source/angular/threedchart/public_api.ts +3 -0
  442. package/source/angular/threedchart/smart.element.ts +104 -0
  443. package/source/angular/threedchart/smart.threedchart.module.ts +12 -0
  444. package/source/angular/threedchart/smart.threedchart.ts +1052 -0
  445. package/source/angular/timeinput/index.ts +1 -0
  446. package/source/angular/timeinput/public_api.ts +3 -0
  447. package/source/angular/timeinput/smart.element.ts +104 -0
  448. package/source/angular/timeinput/smart.timeinput.module.ts +12 -0
  449. package/source/angular/timeinput/smart.timeinput.ts +427 -0
  450. package/source/angular/timepicker/index.ts +1 -0
  451. package/source/angular/timepicker/public_api.ts +3 -0
  452. package/source/angular/timepicker/smart.element.ts +104 -0
  453. package/source/angular/timepicker/smart.timepicker.module.ts +12 -0
  454. package/source/angular/timepicker/smart.timepicker.ts +370 -0
  455. package/source/angular/toast/index.ts +1 -0
  456. package/source/angular/toast/public_api.ts +3 -0
  457. package/source/angular/toast/smart.element.ts +104 -0
  458. package/source/angular/toast/smart.toast.module.ts +12 -0
  459. package/source/angular/toast/smart.toast.ts +405 -0
  460. package/source/angular/tooltip/index.ts +1 -0
  461. package/source/angular/tooltip/public_api.ts +3 -0
  462. package/source/angular/tooltip/smart.element.ts +104 -0
  463. package/source/angular/tooltip/smart.tooltip.module.ts +12 -0
  464. package/source/angular/tooltip/smart.tooltip.ts +339 -0
  465. package/source/angular/tree/index.ts +1 -0
  466. package/source/angular/tree/public_api.ts +7 -0
  467. package/source/angular/tree/smart.element.ts +104 -0
  468. package/source/angular/tree/smart.tree.module.ts +14 -0
  469. package/source/angular/tree/smart.tree.ts +1042 -0
  470. package/source/angular/tree/smart.treeitem.ts +135 -0
  471. package/source/angular/tree/smart.treeitemsgroup.ts +135 -0
  472. package/source/angular/validator/index.ts +1 -0
  473. package/source/angular/validator/public_api.ts +3 -0
  474. package/source/angular/validator/smart.element.ts +104 -0
  475. package/source/angular/validator/smart.validator.module.ts +12 -0
  476. package/source/angular/validator/smart.validator.ts +124 -0
  477. package/source/angular/window/index.ts +1 -0
  478. package/source/angular/window/public_api.ts +3 -0
  479. package/source/angular/window/smart.element.ts +104 -0
  480. package/source/angular/window/smart.window.module.ts +12 -0
  481. package/source/angular/window/smart.window.ts +1180 -0
  482. package/source/react/accordion/accordion.jsx +508 -0
  483. package/source/react/accordion/accordion.tsx +516 -0
  484. package/source/react/accordion/accordionitem.jsx +257 -0
  485. package/source/react/accordion/accordionitem.tsx +279 -0
  486. package/source/react/alertwindow/alertwindow.jsx +1437 -0
  487. package/source/react/alertwindow/alertwindow.tsx +1399 -0
  488. package/source/react/array/array.jsx +953 -0
  489. package/source/react/array/array.tsx +959 -0
  490. package/source/react/barcode/barcode.jsx +442 -0
  491. package/source/react/barcode/barcode.tsx +468 -0
  492. package/source/react/breadcrumb/breadcrumb.jsx +445 -0
  493. package/source/react/breadcrumb/breadcrumb.tsx +455 -0
  494. package/source/react/button/button.jsx +377 -0
  495. package/source/react/button/button.tsx +409 -0
  496. package/source/react/button/powerbutton.jsx +347 -0
  497. package/source/react/button/powerbutton.tsx +373 -0
  498. package/source/react/button/repeatbutton.jsx +371 -0
  499. package/source/react/button/repeatbutton.tsx +397 -0
  500. package/source/react/button/togglebutton.jsx +383 -0
  501. package/source/react/button/togglebutton.tsx +401 -0
  502. package/source/react/buttongroup/buttongroup.jsx +386 -0
  503. package/source/react/buttongroup/buttongroup.tsx +412 -0
  504. package/source/react/calendar/calendar.jsx +914 -0
  505. package/source/react/calendar/calendar.tsx +916 -0
  506. package/source/react/card/card.jsx +359 -0
  507. package/source/react/card/card.tsx +373 -0
  508. package/source/react/cardview/cardview.jsx +710 -0
  509. package/source/react/cardview/cardview.tsx +706 -0
  510. package/source/react/carousel/carousel.jsx +592 -0
  511. package/source/react/carousel/carousel.tsx +606 -0
  512. package/source/react/chart/chart.jsx +1060 -0
  513. package/source/react/chart/chart.tsx +1046 -0
  514. package/source/react/checkbox/checkbox.jsx +407 -0
  515. package/source/react/checkbox/checkbox.tsx +425 -0
  516. package/source/react/checkinput/checkinput.jsx +612 -0
  517. package/source/react/checkinput/checkinput.tsx +638 -0
  518. package/source/react/chip/chip.jsx +375 -0
  519. package/source/react/chip/chip.tsx +401 -0
  520. package/source/react/colorinput/colorinput.jsx +562 -0
  521. package/source/react/colorinput/colorinput.tsx +588 -0
  522. package/source/react/colorpanel/colorpanel.jsx +616 -0
  523. package/source/react/colorpanel/colorpanel.tsx +630 -0
  524. package/source/react/colorpicker/colorpicker.jsx +892 -0
  525. package/source/react/colorpicker/colorpicker.tsx +874 -0
  526. package/source/react/columnpanel/columnpanel.jsx +322 -0
  527. package/source/react/columnpanel/columnpanel.tsx +344 -0
  528. package/source/react/combobox/combobox.jsx +1287 -0
  529. package/source/react/combobox/combobox.tsx +1277 -0
  530. package/source/react/combobox/listitem.jsx +325 -0
  531. package/source/react/combobox/listitem.tsx +355 -0
  532. package/source/react/combobox/listitemsgroup.jsx +205 -0
  533. package/source/react/combobox/listitemsgroup.tsx +235 -0
  534. package/source/react/countryinput/countryinput.jsx +455 -0
  535. package/source/react/countryinput/countryinput.tsx +473 -0
  536. package/source/react/customizationdialog/customizationdialog.jsx +471 -0
  537. package/source/react/customizationdialog/customizationdialog.tsx +485 -0
  538. package/source/react/dateinput/dateinput.jsx +559 -0
  539. package/source/react/dateinput/dateinput.tsx +585 -0
  540. package/source/react/daterangeinput/daterangeinput.jsx +562 -0
  541. package/source/react/daterangeinput/daterangeinput.tsx +588 -0
  542. package/source/react/datetimepicker/datetimepicker.jsx +1013 -0
  543. package/source/react/datetimepicker/datetimepicker.tsx +1023 -0
  544. package/source/react/dialogwindow/dialogwindow.jsx +1437 -0
  545. package/source/react/dialogwindow/dialogwindow.tsx +1399 -0
  546. package/source/react/dockinglayout/dockinglayout.jsx +969 -0
  547. package/source/react/dockinglayout/dockinglayout.tsx +975 -0
  548. package/source/react/dropdownbutton/dropdownbutton.jsx +711 -0
  549. package/source/react/dropdownbutton/dropdownbutton.tsx +709 -0
  550. package/source/react/dropdownlist/dropdownlist.jsx +1223 -0
  551. package/source/react/dropdownlist/dropdownlist.tsx +1209 -0
  552. package/source/react/dropdownlist/listitem.jsx +325 -0
  553. package/source/react/dropdownlist/listitem.tsx +355 -0
  554. package/source/react/dropdownlist/listitemsgroup.jsx +205 -0
  555. package/source/react/dropdownlist/listitemsgroup.tsx +235 -0
  556. package/source/react/editor/editor.jsx +1465 -0
  557. package/source/react/editor/editor.tsx +1383 -0
  558. package/source/react/element/element.jsx +438 -0
  559. package/source/react/element/element.tsx +460 -0
  560. package/source/react/fileupload/fileupload.jsx +689 -0
  561. package/source/react/fileupload/fileupload.tsx +691 -0
  562. package/source/react/filterbuilder/filterbuilder.jsx +654 -0
  563. package/source/react/filterbuilder/filterbuilder.tsx +644 -0
  564. package/source/react/filterpanel/filterpanel.jsx +479 -0
  565. package/source/react/filterpanel/filterpanel.tsx +497 -0
  566. package/source/react/form/form.jsx +429 -0
  567. package/source/react/form/form.tsx +463 -0
  568. package/source/react/form/formcontrol.jsx +541 -0
  569. package/source/react/form/formcontrol.tsx +571 -0
  570. package/source/react/form/formgroup.jsx +380 -0
  571. package/source/react/form/formgroup.tsx +410 -0
  572. package/source/react/ganttchart/ganttchart.jsx +2344 -0
  573. package/source/react/ganttchart/ganttchart.tsx +2262 -0
  574. package/source/react/gauge/gauge.jsx +801 -0
  575. package/source/react/gauge/gauge.tsx +827 -0
  576. package/source/react/grid/grid.jsx +3021 -0
  577. package/source/react/grid/grid.tsx +2897 -0
  578. package/source/react/grouppanel/grouppanel.jsx +359 -0
  579. package/source/react/grouppanel/grouppanel.tsx +373 -0
  580. package/source/react/input/input.jsx +672 -0
  581. package/source/react/input/input.tsx +682 -0
  582. package/source/react/kanban/kanban.jsx +1894 -0
  583. package/source/react/kanban/kanban.tsx +1810 -0
  584. package/source/react/layout/layout.jsx +495 -0
  585. package/source/react/layout/layout.tsx +501 -0
  586. package/source/react/layout/layoutgroup.jsx +279 -0
  587. package/source/react/layout/layoutgroup.tsx +309 -0
  588. package/source/react/layout/layoutitem.jsx +265 -0
  589. package/source/react/layout/layoutitem.tsx +295 -0
  590. package/source/react/layout/tablayoutgroup.jsx +289 -0
  591. package/source/react/layout/tablayoutgroup.tsx +319 -0
  592. package/source/react/layout/tablayoutitem.jsx +277 -0
  593. package/source/react/layout/tablayoutitem.tsx +307 -0
  594. package/source/react/led/led.jsx +458 -0
  595. package/source/react/led/led.tsx +484 -0
  596. package/source/react/listbox/listbox.jsx +1119 -0
  597. package/source/react/listbox/listbox.tsx +1109 -0
  598. package/source/react/listbox/listitem.jsx +325 -0
  599. package/source/react/listbox/listitem.tsx +355 -0
  600. package/source/react/listbox/listitemsgroup.jsx +205 -0
  601. package/source/react/listbox/listitemsgroup.tsx +235 -0
  602. package/source/react/listmenu/listmenu.jsx +786 -0
  603. package/source/react/listmenu/listmenu.tsx +796 -0
  604. package/source/react/listmenu/menuitem.jsx +277 -0
  605. package/source/react/listmenu/menuitem.tsx +307 -0
  606. package/source/react/listmenu/menuitemsgroup.jsx +313 -0
  607. package/source/react/listmenu/menuitemsgroup.tsx +343 -0
  608. package/source/react/map/map.jsx +279 -0
  609. package/source/react/map/map.tsx +309 -0
  610. package/source/react/maskedtextbox/maskedtextbox.jsx +663 -0
  611. package/source/react/maskedtextbox/maskedtextbox.tsx +681 -0
  612. package/source/react/menu/menu.jsx +863 -0
  613. package/source/react/menu/menu.tsx +857 -0
  614. package/source/react/menu/menuitem.jsx +277 -0
  615. package/source/react/menu/menuitem.tsx +307 -0
  616. package/source/react/menu/menuitemsgroup.jsx +313 -0
  617. package/source/react/menu/menuitemsgroup.tsx +343 -0
  618. package/source/react/multicolumnfilterpanel/multicolumnfilterpanel.jsx +407 -0
  619. package/source/react/multicolumnfilterpanel/multicolumnfilterpanel.tsx +421 -0
  620. package/source/react/multicomboinput/multicomboinput.jsx +672 -0
  621. package/source/react/multicomboinput/multicomboinput.tsx +698 -0
  622. package/source/react/multiinput/multiinput.jsx +612 -0
  623. package/source/react/multiinput/multiinput.tsx +638 -0
  624. package/source/react/multilinetextbox/listitem.jsx +325 -0
  625. package/source/react/multilinetextbox/listitem.tsx +355 -0
  626. package/source/react/multilinetextbox/listitemsgroup.jsx +205 -0
  627. package/source/react/multilinetextbox/listitemsgroup.tsx +235 -0
  628. package/source/react/multilinetextbox/multilinetextbox.jsx +684 -0
  629. package/source/react/multilinetextbox/multilinetextbox.tsx +714 -0
  630. package/source/react/multilinewindow/multilinewindow.jsx +1437 -0
  631. package/source/react/multilinewindow/multilinewindow.tsx +1399 -0
  632. package/source/react/multisplitbutton/listitem.jsx +325 -0
  633. package/source/react/multisplitbutton/listitem.tsx +355 -0
  634. package/source/react/multisplitbutton/listitemsgroup.jsx +205 -0
  635. package/source/react/multisplitbutton/listitemsgroup.tsx +235 -0
  636. package/source/react/multisplitbutton/multisplitbutton.jsx +797 -0
  637. package/source/react/multisplitbutton/multisplitbutton.tsx +795 -0
  638. package/source/react/numberinput/numberinput.jsx +459 -0
  639. package/source/react/numberinput/numberinput.tsx +485 -0
  640. package/source/react/numerictextbox/numerictextbox.jsx +767 -0
  641. package/source/react/numerictextbox/numerictextbox.tsx +769 -0
  642. package/source/react/pager/pager.jsx +570 -0
  643. package/source/react/pager/pager.tsx +592 -0
  644. package/source/react/passwordinput/passwordinput.jsx +363 -0
  645. package/source/react/passwordinput/passwordinput.tsx +385 -0
  646. package/source/react/passwordtextbox/passwordtextbox.jsx +569 -0
  647. package/source/react/passwordtextbox/passwordtextbox.tsx +591 -0
  648. package/source/react/path/path.jsx +675 -0
  649. package/source/react/path/path.tsx +673 -0
  650. package/source/react/phoneinput/phoneinput.jsx +527 -0
  651. package/source/react/phoneinput/phoneinput.tsx +545 -0
  652. package/source/react/pivottable/pivottable.jsx +1036 -0
  653. package/source/react/pivottable/pivottable.tsx +1030 -0
  654. package/source/react/progressbar/circularprogressbar.jsx +383 -0
  655. package/source/react/progressbar/circularprogressbar.tsx +409 -0
  656. package/source/react/progressbar/progressbar.jsx +397 -0
  657. package/source/react/progressbar/progressbar.tsx +425 -0
  658. package/source/react/progresswindow/progresswindow.jsx +1437 -0
  659. package/source/react/progresswindow/progresswindow.tsx +1399 -0
  660. package/source/react/promptwindow/promptwindow.jsx +1437 -0
  661. package/source/react/promptwindow/promptwindow.tsx +1399 -0
  662. package/source/react/qrcode/qrcode.jsx +478 -0
  663. package/source/react/qrcode/qrcode.tsx +504 -0
  664. package/source/react/querybuilder/querybuilder.jsx +635 -0
  665. package/source/react/querybuilder/querybuilder.tsx +637 -0
  666. package/source/react/radiobutton/radiobutton.jsx +419 -0
  667. package/source/react/radiobutton/radiobutton.tsx +437 -0
  668. package/source/react/rating/rating.jsx +361 -0
  669. package/source/react/rating/rating.tsx +387 -0
  670. package/source/react/ribbon/ribbon.jsx +535 -0
  671. package/source/react/ribbon/ribbon.tsx +527 -0
  672. package/source/react/ribbon/ribbongroup.jsx +277 -0
  673. package/source/react/ribbon/ribbongroup.tsx +307 -0
  674. package/source/react/ribbon/ribbonitem.jsx +349 -0
  675. package/source/react/ribbon/ribbonitem.tsx +379 -0
  676. package/source/react/ribbon/ribbontab.jsx +241 -0
  677. package/source/react/ribbon/ribbontab.tsx +271 -0
  678. package/source/react/scheduler/scheduler.jsx +2510 -0
  679. package/source/react/scheduler/scheduler.tsx +2398 -0
  680. package/source/react/scrollbar/scrollbar.jsx +426 -0
  681. package/source/react/scrollbar/scrollbar.tsx +452 -0
  682. package/source/react/slider/slider.jsx +777 -0
  683. package/source/react/slider/slider.tsx +803 -0
  684. package/source/react/sortable/sortable.jsx +365 -0
  685. package/source/react/sortable/sortable.tsx +391 -0
  686. package/source/react/sortpanel/sortpanel.jsx +319 -0
  687. package/source/react/sortpanel/sortpanel.tsx +341 -0
  688. package/source/react/splitter/splitter.jsx +659 -0
  689. package/source/react/splitter/splitter.tsx +677 -0
  690. package/source/react/splitter/splitterbar.jsx +251 -0
  691. package/source/react/splitter/splitterbar.tsx +281 -0
  692. package/source/react/splitter/splitteritem.jsx +334 -0
  693. package/source/react/splitter/splitteritem.tsx +364 -0
  694. package/source/react/switchbutton/switchbutton.jsx +467 -0
  695. package/source/react/switchbutton/switchbutton.tsx +485 -0
  696. package/source/react/table/table.jsx +1688 -0
  697. package/source/react/table/table.tsx +1654 -0
  698. package/source/react/tabs/tabitem.jsx +265 -0
  699. package/source/react/tabs/tabitem.tsx +295 -0
  700. package/source/react/tabs/tabitemsgroup.jsx +217 -0
  701. package/source/react/tabs/tabitemsgroup.tsx +247 -0
  702. package/source/react/tabs/tabs.jsx +766 -0
  703. package/source/react/tabs/tabs.tsx +772 -0
  704. package/source/react/tabswindow/tabswindow.jsx +1437 -0
  705. package/source/react/tabswindow/tabswindow.tsx +1399 -0
  706. package/source/react/tank/tank.jsx +726 -0
  707. package/source/react/tank/tank.tsx +752 -0
  708. package/source/react/textarea/textarea.jsx +619 -0
  709. package/source/react/textarea/textarea.tsx +641 -0
  710. package/source/react/textbox/listitem.jsx +325 -0
  711. package/source/react/textbox/listitem.tsx +355 -0
  712. package/source/react/textbox/listitemsgroup.jsx +205 -0
  713. package/source/react/textbox/listitemsgroup.tsx +235 -0
  714. package/source/react/textbox/textbox.jsx +888 -0
  715. package/source/react/textbox/textbox.tsx +914 -0
  716. package/source/react/threedchart/threedchart.jsx +1182 -0
  717. package/source/react/threedchart/threedchart.tsx +1168 -0
  718. package/source/react/timeinput/timeinput.jsx +509 -0
  719. package/source/react/timeinput/timeinput.tsx +535 -0
  720. package/source/react/timepicker/timepicker.jsx +452 -0
  721. package/source/react/timepicker/timepicker.tsx +478 -0
  722. package/source/react/toast/toast.jsx +556 -0
  723. package/source/react/toast/toast.tsx +558 -0
  724. package/source/react/tooltip/tooltip.jsx +499 -0
  725. package/source/react/tooltip/tooltip.tsx +513 -0
  726. package/source/react/tree/tree.jsx +1222 -0
  727. package/source/react/tree/tree.tsx +1208 -0
  728. package/source/react/tree/treeitem.jsx +289 -0
  729. package/source/react/tree/treeitem.tsx +319 -0
  730. package/source/react/tree/treeitemsgroup.jsx +289 -0
  731. package/source/react/tree/treeitemsgroup.tsx +319 -0
  732. package/source/react/validator/validator.jsx +248 -0
  733. package/source/react/validator/validator.tsx +278 -0
  734. package/source/react/waitwindow/waitwindow.jsx +1437 -0
  735. package/source/react/waitwindow/waitwindow.tsx +1399 -0
  736. package/source/react/window/window.jsx +1421 -0
  737. package/source/react/window/window.tsx +1399 -0
@@ -0,0 +1,3021 @@
1
+ import React from "react";
2
+ /**
3
+ Data Grid UI Component that covers everything from paging, sorting, grouping, filtering, and editing to row and column virtualization, right-to-left layout, export to Excel and PDF and Accessibility.
4
+ */
5
+ export class Grid extends React.Component {
6
+ // Gets the id of the React component.
7
+ get id() {
8
+ if (!this._id) {
9
+ this._id = 'Grid' + Math.floor((1 + Math.random()) * 0x10000).toString(16).substring(1);
10
+ }
11
+
12
+ return this._id;
13
+ }
14
+ /** An object containing settings related to the grid's appearance.
15
+ * Property type: GridAppearance
16
+ */
17
+ get appearance() {
18
+ return this.nativeElement ? this.nativeElement.appearance : undefined;
19
+ }
20
+ set appearance(value) {
21
+ if (this.nativeElement) {
22
+ this.nativeElement.appearance = value;
23
+ }
24
+ }
25
+
26
+ /** An object containing settings related to the grid's behavior.
27
+ * Property type: GridBehavior
28
+ */
29
+ get behavior() {
30
+ return this.nativeElement ? this.nativeElement.behavior : undefined;
31
+ }
32
+ set behavior(value) {
33
+ if (this.nativeElement) {
34
+ this.nativeElement.behavior = value;
35
+ }
36
+ }
37
+
38
+ /** Sets or gets the id of the current user. Has to correspond to the id of an item from the users property/array. Depending on the current user, different privileges are enabled. If no current user is set, privileges depend on the element's properties.
39
+ * Property type: string | number
40
+ */
41
+ get currentUser() {
42
+ return this.nativeElement ? this.nativeElement.currentUser : undefined;
43
+ }
44
+ set currentUser(value) {
45
+ if (this.nativeElement) {
46
+ this.nativeElement.currentUser = value;
47
+ }
48
+ }
49
+
50
+ /** Describes the column header settings.
51
+ * Property type: GridColumnHeader
52
+ */
53
+ get columnHeader() {
54
+ return this.nativeElement ? this.nativeElement.columnHeader : undefined;
55
+ }
56
+ set columnHeader(value) {
57
+ if (this.nativeElement) {
58
+ this.nativeElement.columnHeader = value;
59
+ }
60
+ }
61
+
62
+ /** The clipboard property is used to enable/disable clipboard operations with Ctrl+C, Ctrl+X and Ctrl+V keyboard navigations..
63
+ * Property type: GridClipboard
64
+ */
65
+ get clipboard() {
66
+ return this.nativeElement ? this.nativeElement.clipboard : undefined;
67
+ }
68
+ set clipboard(value) {
69
+ if (this.nativeElement) {
70
+ this.nativeElement.clipboard = value;
71
+ }
72
+ }
73
+
74
+ /** The columns property is used to describe all columns displayed in the grid.
75
+ * Property type: {label: string, dataField: string}[] | string[] | number | GridColumn[]
76
+ */
77
+ get columns() {
78
+ return this.nativeElement ? this.nativeElement.columns : undefined;
79
+ }
80
+ set columns(value) {
81
+ if (this.nativeElement) {
82
+ this.nativeElement.columns = value;
83
+ }
84
+ }
85
+
86
+ /** Context Menu is the drop-down menu displayed after right-clicking a Grid row. It allows you to delete row, edit cell or row depending on the edit mode. The 'contextMenuItemCustom' dataSource option allows you to add custom menu item to the context menu. You can replace the context menu by using the 'selector' property and setting it to ID of a Smart.Menu component.
87
+ * Property type: GridContextMenu
88
+ */
89
+ get contextMenu() {
90
+ return this.nativeElement ? this.nativeElement.contextMenu : undefined;
91
+ }
92
+ set contextMenu(value) {
93
+ if (this.nativeElement) {
94
+ this.nativeElement.contextMenu = value;
95
+ }
96
+ }
97
+
98
+ /** Column Menu is the drop-down menu displayed after clicking the column header's drop-down button, which is displayed when you hover the column header. It allows you to customize column settings. For example: Sort, Filter or Group the Grid by the current column.
99
+ * Property type: GridColumnMenu
100
+ */
101
+ get columnMenu() {
102
+ return this.nativeElement ? this.nativeElement.columnMenu : undefined;
103
+ }
104
+ set columnMenu(value) {
105
+ if (this.nativeElement) {
106
+ this.nativeElement.columnMenu = value;
107
+ }
108
+ }
109
+
110
+ /** Describes the settings of the column groups.
111
+ * Property type: GridColumnGroup[]
112
+ */
113
+ get columnGroups() {
114
+ return this.nativeElement ? this.nativeElement.columnGroups : undefined;
115
+ }
116
+ set columnGroups(value) {
117
+ if (this.nativeElement) {
118
+ this.nativeElement.columnGroups = value;
119
+ }
120
+ }
121
+
122
+ /** Sets or gets details about conditional formatting to be applied to the Grid's cells.
123
+ * Property type: GridConditionalFormatting[]
124
+ */
125
+ get conditionalFormatting() {
126
+ return this.nativeElement ? this.nativeElement.conditionalFormatting : undefined;
127
+ }
128
+ set conditionalFormatting(value) {
129
+ if (this.nativeElement) {
130
+ this.nativeElement.conditionalFormatting = value;
131
+ }
132
+ }
133
+
134
+ /** Sets the Grid Charting Data Visualization.
135
+ * Property type: GridCharting
136
+ */
137
+ get charting() {
138
+ return this.nativeElement ? this.nativeElement.charting : undefined;
139
+ }
140
+ set charting(value) {
141
+ if (this.nativeElement) {
142
+ this.nativeElement.charting = value;
143
+ }
144
+ }
145
+
146
+ /** Sets the TreeGrid checkboxes.
147
+ * Property type: GridCheckBoxes
148
+ */
149
+ get checkBoxes() {
150
+ return this.nativeElement ? this.nativeElement.checkBoxes : undefined;
151
+ }
152
+ set checkBoxes(value) {
153
+ if (this.nativeElement) {
154
+ this.nativeElement.checkBoxes = value;
155
+ }
156
+ }
157
+
158
+ /** Sets the Grid Data Export options.
159
+ * Property type: GridDataExport
160
+ */
161
+ get dataExport() {
162
+ return this.nativeElement ? this.nativeElement.dataExport : undefined;
163
+ }
164
+ set dataExport(value) {
165
+ if (this.nativeElement) {
166
+ this.nativeElement.dataExport = value;
167
+ }
168
+ }
169
+
170
+ /** Sets the grid's data source. The value of dataSource can be an instance of JQX.DataAdapter or an Array.
171
+ * Property type: any
172
+ */
173
+ get dataSource() {
174
+ return this.nativeElement ? this.nativeElement.dataSource : undefined;
175
+ }
176
+ set dataSource(value) {
177
+ if (this.nativeElement) {
178
+ this.nativeElement.dataSource = value;
179
+ }
180
+ }
181
+
182
+ /** Sets the grid's data source settings when the dataSource property is set to an Array or URL.
183
+ * Property type: GridDataSourceSettings
184
+ */
185
+ get dataSourceSettings() {
186
+ return this.nativeElement ? this.nativeElement.dataSourceSettings : undefined;
187
+ }
188
+ set dataSourceSettings(value) {
189
+ if (this.nativeElement) {
190
+ this.nativeElement.dataSourceSettings = value;
191
+ }
192
+ }
193
+
194
+ /** Describes the grid's editing settings.
195
+ * Property type: GridEditing
196
+ */
197
+ get editing() {
198
+ return this.nativeElement ? this.nativeElement.editing : undefined;
199
+ }
200
+ set editing(value) {
201
+ if (this.nativeElement) {
202
+ this.nativeElement.editing = value;
203
+ }
204
+ }
205
+
206
+ /** Describes the grid's filtering settings.
207
+ * Property type: GridFiltering
208
+ */
209
+ get filtering() {
210
+ return this.nativeElement ? this.nativeElement.filtering : undefined;
211
+ }
212
+ set filtering(value) {
213
+ if (this.nativeElement) {
214
+ this.nativeElement.filtering = value;
215
+ }
216
+ }
217
+
218
+ /** Describes the footer settings of the grid.
219
+ * Property type: GridFooter
220
+ */
221
+ get footer() {
222
+ return this.nativeElement ? this.nativeElement.footer : undefined;
223
+ }
224
+ set footer(value) {
225
+ if (this.nativeElement) {
226
+ this.nativeElement.footer = value;
227
+ }
228
+ }
229
+
230
+ /** Sets or gets whether Excel-like formulas can be passed as cell values. Formulas are always preceded by the = sign and are re-evaluated when cell values are changed. This feature depends on the third-party free plug-in formula-parser (the file formula-parser.min.js has to be referenced).
231
+ * Property type: boolean
232
+ */
233
+ get formulas() {
234
+ return this.nativeElement ? this.nativeElement.formulas : undefined;
235
+ }
236
+ set formulas(value) {
237
+ if (this.nativeElement) {
238
+ this.nativeElement.formulas = value;
239
+ }
240
+ }
241
+
242
+ /** Describes the grid's grouping settings.
243
+ * Property type: GridGrouping
244
+ */
245
+ get grouping() {
246
+ return this.nativeElement ? this.nativeElement.grouping : undefined;
247
+ }
248
+ set grouping(value) {
249
+ if (this.nativeElement) {
250
+ this.nativeElement.grouping = value;
251
+ }
252
+ }
253
+
254
+ /** Describes the settings for the group header.
255
+ * Property type: GridGroupHeader
256
+ */
257
+ get groupHeader() {
258
+ return this.nativeElement ? this.nativeElement.groupHeader : undefined;
259
+ }
260
+ set groupHeader(value) {
261
+ if (this.nativeElement) {
262
+ this.nativeElement.groupHeader = value;
263
+ }
264
+ }
265
+
266
+ /** Describes the header settings of the grid.
267
+ * Property type: GridHeader
268
+ */
269
+ get header() {
270
+ return this.nativeElement ? this.nativeElement.header : undefined;
271
+ }
272
+ set header(value) {
273
+ if (this.nativeElement) {
274
+ this.nativeElement.header = value;
275
+ }
276
+ }
277
+
278
+ /** An object containing settings related to the grid's layout.
279
+ * Property type: GridLayout
280
+ */
281
+ get layout() {
282
+ return this.nativeElement ? this.nativeElement.layout : undefined;
283
+ }
284
+ set layout(value) {
285
+ if (this.nativeElement) {
286
+ this.nativeElement.layout = value;
287
+ }
288
+ }
289
+
290
+ /** Sets or gets the language. Used in conjunction with the property messages.
291
+ * Property type: string
292
+ */
293
+ get locale() {
294
+ return this.nativeElement ? this.nativeElement.locale : undefined;
295
+ }
296
+ set locale(value) {
297
+ if (this.nativeElement) {
298
+ this.nativeElement.locale = value;
299
+ }
300
+ }
301
+
302
+ /** Sets the messages values.
303
+ * Property type: any
304
+ */
305
+ get messages() {
306
+ return this.nativeElement ? this.nativeElement.messages : undefined;
307
+ }
308
+ set messages(value) {
309
+ if (this.nativeElement) {
310
+ this.nativeElement.messages = value;
311
+ }
312
+ }
313
+
314
+ /** Callback function(chart: JQX.Chart) called when the chart has been initialized. You can use this function to customize the Chart element settings.
315
+ * Property type: {(cell: GridCell): void}
316
+ */
317
+ get onCellValue() {
318
+ return this.nativeElement ? this.nativeElement.onCellValue : undefined;
319
+ }
320
+ set onCellValue(value) {
321
+ if (this.nativeElement) {
322
+ this.nativeElement.onCellValue = value;
323
+ }
324
+ }
325
+
326
+ /** Callback function() called when the grid has been rendered.
327
+ * Property type: {(cells: GridCell[], oldValues: any[], values: any[], confirm: {(commit: boolean): void}): void}
328
+ */
329
+ get onCellUpdate() {
330
+ return this.nativeElement ? this.nativeElement.onCellUpdate : undefined;
331
+ }
332
+ set onCellUpdate(value) {
333
+ if (this.nativeElement) {
334
+ this.nativeElement.onCellUpdate = value;
335
+ }
336
+ }
337
+
338
+ /** Callback function() called when the grid has been rendered for first time and bindings are completed. The component is ready.
339
+ * Property type: {(cell: GridCell): void}
340
+ */
341
+ get onCellRender() {
342
+ return this.nativeElement ? this.nativeElement.onCellRender : undefined;
343
+ }
344
+ set onCellRender(value) {
345
+ if (this.nativeElement) {
346
+ this.nativeElement.onCellRender = value;
347
+ }
348
+ }
349
+
350
+ /** Describes the paging settings.
351
+ * Property type: {(id: string, dataField: string, value: any): boolean}
352
+ */
353
+ get onCellBeginEdit() {
354
+ return this.nativeElement ? this.nativeElement.onCellBeginEdit : undefined;
355
+ }
356
+ set onCellBeginEdit(value) {
357
+ if (this.nativeElement) {
358
+ this.nativeElement.onCellBeginEdit = value;
359
+ }
360
+ }
361
+
362
+ /** Describes the pager settings.
363
+ * Property type: {(): void}
364
+ */
365
+ get onBeforeInit() {
366
+ return this.nativeElement ? this.nativeElement.onBeforeInit : undefined;
367
+ }
368
+ set onBeforeInit(value) {
369
+ if (this.nativeElement) {
370
+ this.nativeElement.onBeforeInit = value;
371
+ }
372
+ }
373
+
374
+ /** Sets the row details.
375
+ * Property type: {(): void}
376
+ */
377
+ get onInit() {
378
+ return this.nativeElement ? this.nativeElement.onInit : undefined;
379
+ }
380
+ set onInit(value) {
381
+ if (this.nativeElement) {
382
+ this.nativeElement.onInit = value;
383
+ }
384
+ }
385
+
386
+ /** Sets or gets the rows CSS class rules. Different CSS class names are conditionally applied. Example: rowCSSRules: { 'cell-class-1': settings => settings.data.quantity === 5, 'cell-class-2': settings => settings.data.quantity < 5, 'cell-class-3': settings => settings.data.quantity > 5 }. The settings object contains the following properties: index, data, row, api.
387
+ * Property type: {(): void}
388
+ */
389
+ get onAfterInit() {
390
+ return this.nativeElement ? this.nativeElement.onAfterInit : undefined;
391
+ }
392
+ set onAfterInit(value) {
393
+ if (this.nativeElement) {
394
+ this.nativeElement.onAfterInit = value;
395
+ }
396
+ }
397
+
398
+ /** Sets or gets the value indicating whether the element is aligned to support locales using right-to-left fonts.
399
+ * Property type: any
400
+ */
401
+ get onChartInit() {
402
+ return this.nativeElement ? this.nativeElement.onChartInit : undefined;
403
+ }
404
+ set onChartInit(value) {
405
+ if (this.nativeElement) {
406
+ this.nativeElement.onChartInit = value;
407
+ }
408
+ }
409
+
410
+ /** The rows property is used to describe all rows displayed in the grid.
411
+ * Property type: any
412
+ */
413
+ get onRender() {
414
+ return this.nativeElement ? this.nativeElement.onRender : undefined;
415
+ }
416
+ set onRender(value) {
417
+ if (this.nativeElement) {
418
+ this.nativeElement.onRender = value;
419
+ }
420
+ }
421
+
422
+ /** Sets the scroll mode settings.
423
+ * Property type: any
424
+ */
425
+ get onLoad() {
426
+ return this.nativeElement ? this.nativeElement.onLoad : undefined;
427
+ }
428
+ set onLoad(value) {
429
+ if (this.nativeElement) {
430
+ this.nativeElement.onLoad = value;
431
+ }
432
+ }
433
+
434
+ /** Describes the summary row settings.
435
+ * Property type: {(event: KeyboardEvent): void}
436
+ */
437
+ get onKey() {
438
+ return this.nativeElement ? this.nativeElement.onKey : undefined;
439
+ }
440
+ set onKey(value) {
441
+ if (this.nativeElement) {
442
+ this.nativeElement.onKey = value;
443
+ }
444
+ }
445
+
446
+ /** Sets the grid's state settings.
447
+ * Property type: {(index: number, row: GridRow): void}
448
+ */
449
+ get onRowInit() {
450
+ return this.nativeElement ? this.nativeElement.onRowInit : undefined;
451
+ }
452
+ set onRowInit(value) {
453
+ if (this.nativeElement) {
454
+ this.nativeElement.onRowInit = value;
455
+ }
456
+ }
457
+
458
+ /** Describes the selection settings.
459
+ * Property type: {(index: number, row: GridRow, details: HTMLElement): void}
460
+ */
461
+ get onRowDetailInit() {
462
+ return this.nativeElement ? this.nativeElement.onRowDetailInit : undefined;
463
+ }
464
+ set onRowDetailInit(value) {
465
+ if (this.nativeElement) {
466
+ this.nativeElement.onRowDetailInit = value;
467
+ }
468
+ }
469
+
470
+ /** Describes sorting settings.
471
+ * Property type: {(index: number, row: GridRow, details: HTMLElement): void}
472
+ */
473
+ get onRowDetailUpdated() {
474
+ return this.nativeElement ? this.nativeElement.onRowDetailUpdated : undefined;
475
+ }
476
+ set onRowDetailUpdated(value) {
477
+ if (this.nativeElement) {
478
+ this.nativeElement.onRowDetailUpdated = value;
479
+ }
480
+ }
481
+
482
+ /** Sets the grid users. Expects an array with 'id', 'name' and optionally 'color' and 'image' properties.
483
+ * Property type: {(index: number, row: GridRow, history: any[]): void}
484
+ */
485
+ get onRowHistory() {
486
+ return this.nativeElement ? this.nativeElement.onRowHistory : undefined;
487
+ }
488
+ set onRowHistory(value) {
489
+ if (this.nativeElement) {
490
+ this.nativeElement.onRowHistory = value;
491
+ }
492
+ }
493
+
494
+ /** Sets the grid's image and filter upload settings for the image and attachment columns.
495
+ * Property type: {(index: number, row: GridRow, history: any[]): void}
496
+ */
497
+ get onRowStyle() {
498
+ return this.nativeElement ? this.nativeElement.onRowStyle : undefined;
499
+ }
500
+ set onRowStyle(value) {
501
+ if (this.nativeElement) {
502
+ this.nativeElement.onRowStyle = value;
503
+ }
504
+ }
505
+
506
+ /** Sets the current data view. The possible values are 'grid', 'kanban' and 'card'.
507
+ * Property type: {(index: number[], row: GridRow[]): void}
508
+ */
509
+ get onRowInserted() {
510
+ return this.nativeElement ? this.nativeElement.onRowInserted : undefined;
511
+ }
512
+ set onRowInserted(value) {
513
+ if (this.nativeElement) {
514
+ this.nativeElement.onRowInserted = value;
515
+ }
516
+ }
517
+
518
+ /** undefined
519
+ * Property type: {(indexes: number[], rows: GridRow[]): void}
520
+ */
521
+ get onRowRemoved() {
522
+ return this.nativeElement ? this.nativeElement.onRowRemoved : undefined;
523
+ }
524
+ set onRowRemoved(value) {
525
+ if (this.nativeElement) {
526
+ this.nativeElement.onRowRemoved = value;
527
+ }
528
+ }
529
+
530
+ /** undefined
531
+ * Property type: {(index: number[], row: GridRow[], oldValues: any[], values: any[], confirm: {(commit: boolean): void}): void}
532
+ */
533
+ get onRowUpdate() {
534
+ return this.nativeElement ? this.nativeElement.onRowUpdate : undefined;
535
+ }
536
+ set onRowUpdate(value) {
537
+ if (this.nativeElement) {
538
+ this.nativeElement.onRowUpdate = value;
539
+ }
540
+ }
541
+
542
+ /** undefined
543
+ * Property type: {(index: number[], row: GridRow[]): void}
544
+ */
545
+ get onRowUpdated() {
546
+ return this.nativeElement ? this.nativeElement.onRowUpdated : undefined;
547
+ }
548
+ set onRowUpdated(value) {
549
+ if (this.nativeElement) {
550
+ this.nativeElement.onRowUpdated = value;
551
+ }
552
+ }
553
+
554
+ /** undefined
555
+ * Property type: {(index: number, data: any, row: GridRow[]): void}
556
+ */
557
+ get onRowClass() {
558
+ return this.nativeElement ? this.nativeElement.onRowClass : undefined;
559
+ }
560
+ set onRowClass(value) {
561
+ if (this.nativeElement) {
562
+ this.nativeElement.onRowClass = value;
563
+ }
564
+ }
565
+
566
+ /** undefined
567
+ * Property type: {(index: number, dataField: string, cellValue: any, data: any, row: GridRow[]): void}
568
+ */
569
+ get onCellClass() {
570
+ return this.nativeElement ? this.nativeElement.onCellClass : undefined;
571
+ }
572
+ set onCellClass(value) {
573
+ if (this.nativeElement) {
574
+ this.nativeElement.onCellClass = value;
575
+ }
576
+ }
577
+
578
+ /** undefined
579
+ * Property type: {(index: number, column: GridColumn): void}
580
+ */
581
+ get onColumnInit() {
582
+ return this.nativeElement ? this.nativeElement.onColumnInit : undefined;
583
+ }
584
+ set onColumnInit(value) {
585
+ if (this.nativeElement) {
586
+ this.nativeElement.onColumnInit = value;
587
+ }
588
+ }
589
+
590
+ /** undefined
591
+ * Property type: {(index: number, column: GridColumn): void}
592
+ */
593
+ get onColumnInserted() {
594
+ return this.nativeElement ? this.nativeElement.onColumnInserted : undefined;
595
+ }
596
+ set onColumnInserted(value) {
597
+ if (this.nativeElement) {
598
+ this.nativeElement.onColumnInserted = value;
599
+ }
600
+ }
601
+
602
+ /** undefined
603
+ * Property type: {(index: number, column: GridColumn): void}
604
+ */
605
+ get onColumnRemoved() {
606
+ return this.nativeElement ? this.nativeElement.onColumnRemoved : undefined;
607
+ }
608
+ set onColumnRemoved(value) {
609
+ if (this.nativeElement) {
610
+ this.nativeElement.onColumnRemoved = value;
611
+ }
612
+ }
613
+
614
+ /** undefined
615
+ * Property type: {(index: number, column: GridColumn): void}
616
+ */
617
+ get onColumnUpdated() {
618
+ return this.nativeElement ? this.nativeElement.onColumnUpdated : undefined;
619
+ }
620
+ set onColumnUpdated(value) {
621
+ if (this.nativeElement) {
622
+ this.nativeElement.onColumnUpdated = value;
623
+ }
624
+ }
625
+
626
+ /** undefined
627
+ * Property type: {(dataField: string, cloneColumnDataField: string, index: number, duplicateCells: boolean): void}
628
+ */
629
+ get onColumnClone() {
630
+ return this.nativeElement ? this.nativeElement.onColumnClone : undefined;
631
+ }
632
+ set onColumnClone(value) {
633
+ if (this.nativeElement) {
634
+ this.nativeElement.onColumnClone = value;
635
+ }
636
+ }
637
+
638
+ /** undefined
639
+ * Property type: {(name: string, command: any, details: GridCell, event: Event | KeyboardEvent | PointerEvent, handled: boolean): void}
640
+ */
641
+ get onCommand() {
642
+ return this.nativeElement ? this.nativeElement.onCommand : undefined;
643
+ }
644
+ set onCommand(value) {
645
+ if (this.nativeElement) {
646
+ this.nativeElement.onCommand = value;
647
+ }
648
+ }
649
+
650
+ /** undefined
651
+ * Property type: GridPaging
652
+ */
653
+ get paging() {
654
+ return this.nativeElement ? this.nativeElement.paging : undefined;
655
+ }
656
+ set paging(value) {
657
+ if (this.nativeElement) {
658
+ this.nativeElement.paging = value;
659
+ }
660
+ }
661
+
662
+ /** undefined
663
+ * Property type: GridPager
664
+ */
665
+ get pager() {
666
+ return this.nativeElement ? this.nativeElement.pager : undefined;
667
+ }
668
+ set pager(value) {
669
+ if (this.nativeElement) {
670
+ this.nativeElement.pager = value;
671
+ }
672
+ }
673
+
674
+ /** undefined
675
+ * Property type: GridRowDetail
676
+ */
677
+ get rowDetail() {
678
+ return this.nativeElement ? this.nativeElement.rowDetail : undefined;
679
+ }
680
+ set rowDetail(value) {
681
+ if (this.nativeElement) {
682
+ this.nativeElement.rowDetail = value;
683
+ }
684
+ }
685
+
686
+ /** undefined
687
+ * Property type: any
688
+ */
689
+ get rowCSSRules() {
690
+ return this.nativeElement ? this.nativeElement.rowCSSRules : undefined;
691
+ }
692
+ set rowCSSRules(value) {
693
+ if (this.nativeElement) {
694
+ this.nativeElement.rowCSSRules = value;
695
+ }
696
+ }
697
+
698
+ /** undefined
699
+ * Property type: boolean
700
+ */
701
+ get rightToLeft() {
702
+ return this.nativeElement ? this.nativeElement.rightToLeft : undefined;
703
+ }
704
+ set rightToLeft(value) {
705
+ if (this.nativeElement) {
706
+ this.nativeElement.rightToLeft = value;
707
+ }
708
+ }
709
+
710
+ /** undefined
711
+ * Property type: GridRow[]
712
+ */
713
+ get rows() {
714
+ return this.nativeElement ? this.nativeElement.rows : undefined;
715
+ }
716
+ set rows(value) {
717
+ if (this.nativeElement) {
718
+ this.nativeElement.rows = value;
719
+ }
720
+ }
721
+
722
+ /** undefined
723
+ * Property type: Scrolling | string
724
+ */
725
+ get scrolling() {
726
+ return this.nativeElement ? this.nativeElement.scrolling : undefined;
727
+ }
728
+ set scrolling(value) {
729
+ if (this.nativeElement) {
730
+ this.nativeElement.scrolling = value;
731
+ }
732
+ }
733
+
734
+ /** undefined
735
+ * Property type: GridSummaryRow
736
+ */
737
+ get summaryRow() {
738
+ return this.nativeElement ? this.nativeElement.summaryRow : undefined;
739
+ }
740
+ set summaryRow(value) {
741
+ if (this.nativeElement) {
742
+ this.nativeElement.summaryRow = value;
743
+ }
744
+ }
745
+
746
+ /** undefined
747
+ * Property type: GridStateSettings
748
+ */
749
+ get stateSettings() {
750
+ return this.nativeElement ? this.nativeElement.stateSettings : undefined;
751
+ }
752
+ set stateSettings(value) {
753
+ if (this.nativeElement) {
754
+ this.nativeElement.stateSettings = value;
755
+ }
756
+ }
757
+
758
+ /** undefined
759
+ * Property type: GridSelection
760
+ */
761
+ get selection() {
762
+ return this.nativeElement ? this.nativeElement.selection : undefined;
763
+ }
764
+ set selection(value) {
765
+ if (this.nativeElement) {
766
+ this.nativeElement.selection = value;
767
+ }
768
+ }
769
+
770
+ /** undefined
771
+ * Property type: GridSorting
772
+ */
773
+ get sorting() {
774
+ return this.nativeElement ? this.nativeElement.sorting : undefined;
775
+ }
776
+ set sorting(value) {
777
+ if (this.nativeElement) {
778
+ this.nativeElement.sorting = value;
779
+ }
780
+ }
781
+
782
+ /** undefined
783
+ * Property type: any[]
784
+ */
785
+ get users() {
786
+ return this.nativeElement ? this.nativeElement.users : undefined;
787
+ }
788
+ set users(value) {
789
+ if (this.nativeElement) {
790
+ this.nativeElement.users = value;
791
+ }
792
+ }
793
+
794
+ /** undefined
795
+ * Property type: GridUploadSettings
796
+ */
797
+ get uploadSettings() {
798
+ return this.nativeElement ? this.nativeElement.uploadSettings : undefined;
799
+ }
800
+ set uploadSettings(value) {
801
+ if (this.nativeElement) {
802
+ this.nativeElement.uploadSettings = value;
803
+ }
804
+ }
805
+
806
+ /** undefined
807
+ * Property type: string
808
+ */
809
+ get view() {
810
+ return this.nativeElement ? this.nativeElement.view : undefined;
811
+ }
812
+ set view(value) {
813
+ if (this.nativeElement) {
814
+ this.nativeElement.view = value;
815
+ }
816
+ }
817
+
818
+
819
+ // Gets the properties of the React component.
820
+ get properties() {
821
+ return ["appearance","behavior","currentUser","columnHeader","clipboard","columns","contextMenu","columnMenu","columnGroups","conditionalFormatting","charting","checkBoxes","dataExport","dataSource","dataSourceSettings","editing","filtering","footer","formulas","grouping","groupHeader","header","layout","locale","messages","onCellValue","onCellUpdate","onCellRender","onCellBeginEdit","onBeforeInit","onInit","onAfterInit","onChartInit","onRender","onLoad","onKey","onRowInit","onRowDetailInit","onRowDetailUpdated","onRowHistory","onRowStyle","onRowInserted","onRowRemoved","onRowUpdate","onRowUpdated","onRowClass","onCellClass","onColumnInit","onColumnInserted","onColumnRemoved","onColumnUpdated","onColumnClone","onCommand","paging","pager","rowDetail","rowCSSRules","rightToLeft","rows","scrolling","summaryRow","stateSettings","selection","sorting","users","uploadSettings","view"];
822
+ }
823
+ /** This event is triggered, when the edit begins. After the event occurs, editing starts. If you need to prevent the editing for specific cells, rows or columns, you can call event.preventDefault();.
824
+ * @param event. The custom event. Custom event was created with: event.detail( id, dataField, row, column, cell, data, value)
825
+ * id - The edited row id.
826
+ * dataField - The edited column data field.
827
+ * row - The edited row.
828
+ * column - The edited column.
829
+ * cell - The edited cell.
830
+ * data - The edited row's data.
831
+ * value - The edited cell's value.
832
+ */
833
+ _onBeginEdit = null; get onBeginEdit() {
834
+ return this._onBeginEdit;
835
+ }
836
+ set onBeginEdit(value) {
837
+ this._onBeginEdit = value;
838
+ }
839
+ /** This event is triggered, when the Grid's header toolbar is displayed and the 'OK' button of a header dropdown is clicked. For example, when you open the columns customize panel, reorder columns and click the 'OK' button.
840
+ * @param event. The custom event. Custom event was created with: event.detail( type)
841
+ * type - The type of dropdown. Possible values: 'filter', 'sort', 'search', 'group', 'format', 'customize'
842
+ */
843
+ _onBatchChange = null; get onBatchChange() {
844
+ return this._onBatchChange;
845
+ }
846
+ set onBatchChange(value) {
847
+ this._onBatchChange = value;
848
+ }
849
+ /** This event is triggered, when the Grid's header toolbar is displayed and the 'Cancel' button of a header dropdown is clicked.
850
+ * @param event. The custom event. Custom event was created with: event.detail( type)
851
+ * type - The type of dropdown. Possible values: 'filter', 'sort', 'search', 'group', 'format', 'customize'
852
+ */
853
+ _onBatchCancel = null; get onBatchCancel() {
854
+ return this._onBatchCancel;
855
+ }
856
+ set onBatchCancel(value) {
857
+ this._onBatchCancel = value;
858
+ }
859
+ /** This event is triggered, when the selection is changed. When you select with a drag, the event is triggered when the drag starts and ends.
860
+ * @param event. The custom event. Custom event was created with: event.detail( started, finished, originalEvent)
861
+ * started - The flag is <em>true</em>, when the selection starts. The flag is <em>false</em>, when the selection ends and when the user changes the selection by dragging.
862
+ * finished - The flag is <em>true</em>, when the selection ends. The flag is <em>false</em>, when the selection starts and when the user changes the selection by dragging.
863
+ * originalEvent - The original event object, which is 'pointer', 'touch' or 'mouse' Event object, depending on the device type and web browser
864
+ */
865
+ _onChange = null; get onChange() {
866
+ return this._onChange;
867
+ }
868
+ set onChange(value) {
869
+ this._onChange = value;
870
+ }
871
+ /** This event is triggered, when the user clicks on the header of a column.
872
+ * @param event. The custom event. Custom event was created with: event.detail( column, dataField, originalEvent)
873
+ * column - The clicked column.
874
+ * dataField - The column's data field.
875
+ * originalEvent - The original event object, which is 'pointer', 'touch' or 'mouse' Event object, depending on the device type and web browser
876
+ */
877
+ _onColumnClick = null; get onColumnClick() {
878
+ return this._onColumnClick;
879
+ }
880
+ set onColumnClick(value) {
881
+ this._onColumnClick = value;
882
+ }
883
+ /** This event is triggered, when the user double clicks on the header of a column.
884
+ * @param event. The custom event. Custom event was created with: event.detail( column, dataField, originalEvent)
885
+ * column - The double-clicked column.
886
+ * dataField - The column's data field.
887
+ * originalEvent - The original event object, which is 'pointer', 'touch' or 'mouse' Event object, depending on the device type and web browser
888
+ */
889
+ _onColumnDoubleClick = null; get onColumnDoubleClick() {
890
+ return this._onColumnDoubleClick;
891
+ }
892
+ set onColumnDoubleClick(value) {
893
+ this._onColumnDoubleClick = value;
894
+ }
895
+ /** This event is triggered, when the user resized a column.
896
+ * @param event. The custom event. Custom event was created with: event.detail( column, dataField, oldWidth, width)
897
+ * column - The resized column.
898
+ * dataField - The column's data field.
899
+ * oldWidth - The old width of the column.
900
+ * width - The new width of the column.
901
+ */
902
+ _onColumnResize = null; get onColumnResize() {
903
+ return this._onColumnResize;
904
+ }
905
+ set onColumnResize(value) {
906
+ this._onColumnResize = value;
907
+ }
908
+ /** This event is triggered, when the user starts a column drag.
909
+ * @param event. The custom event. Custom event was created with: event.detail( column, dataField, index, originalEvent)
910
+ * column - The column.
911
+ * dataField - The column's data field.
912
+ * index - The column's index
913
+ * originalEvent - The origianl Event object.
914
+ */
915
+ _onColumnDragStart = null; get onColumnDragStart() {
916
+ return this._onColumnDragStart;
917
+ }
918
+ set onColumnDragStart(value) {
919
+ this._onColumnDragStart = value;
920
+ }
921
+ /** This event is triggered, when a column property is changed.
922
+ * @param event. The custom event. Custom event was created with: event.detail( column, propertyName, oldValue, value)
923
+ * column - The resized column.
924
+ * propertyName - The changed property's name.
925
+ * oldValue - The old value(s) of the column.
926
+ * value - The new value(s) of the column.
927
+ */
928
+ _onColumnChange = null; get onColumnChange() {
929
+ return this._onColumnChange;
930
+ }
931
+ set onColumnChange(value) {
932
+ this._onColumnChange = value;
933
+ }
934
+ /** This event is triggered, when the user drags a column.
935
+ * @param event. The custom event. Custom event was created with: event.detail( column, dataField, index, data, originalEvent)
936
+ * column - The column.
937
+ * dataField - The column's data field.
938
+ * index - The column's index
939
+ * data - The dragging object. data.feedback and data.feedbackLine are HTML Elements which are displayed while the user drags. The object has error(), success() and data() methods which you can call to set the feedback state.
940
+ * originalEvent - The origianl Event object.
941
+ */
942
+ _onColumnDragging = null; get onColumnDragging() {
943
+ return this._onColumnDragging;
944
+ }
945
+ set onColumnDragging(value) {
946
+ this._onColumnDragging = value;
947
+ }
948
+ /** This event is triggered, when the user drops a column.
949
+ * @param event. The custom event. Custom event was created with: event.detail( column, dataField, index, newIndex, data, originalEvent)
950
+ * column - The column.
951
+ * dataField - The column's data field.
952
+ * index - The column's index
953
+ * newIndex - The column's new index
954
+ * data - The dragging object. data.feedback and data.feedbackLine are HTML Elements which are displayed while the user drags. The object has error(), success() and data() methods which you can call to set the feedback state.
955
+ * originalEvent - The origianl Event object.
956
+ */
957
+ _onColumnDragEnd = null; get onColumnDragEnd() {
958
+ return this._onColumnDragEnd;
959
+ }
960
+ set onColumnDragEnd(value) {
961
+ this._onColumnDragEnd = value;
962
+ }
963
+ /** This event is triggered, when the user reorders a column.
964
+ * @param event. The custom event. Custom event was created with: event.detail( column, dataField, index, newIndex, data, originalEvent)
965
+ * column - The column.
966
+ * dataField - The column's data field.
967
+ * index - The column's index
968
+ * newIndex - The column's new index
969
+ * data - The dragging object. data.feedback and data.feedbackLine are HTML Elements which are displayed while the user drags. The object has error(), success() and data() methods which you can call to set the feedback state.
970
+ * originalEvent - The origianl Event object.
971
+ */
972
+ _onColumnReorder = null; get onColumnReorder() {
973
+ return this._onColumnReorder;
974
+ }
975
+ set onColumnReorder(value) {
976
+ this._onColumnReorder = value;
977
+ }
978
+ /** This event is triggered, when the user enters a comment in the row edit dialog.
979
+ * @param event. The custom event. Custom event was created with: event.detail( id, comment)
980
+ * id - The row's id.
981
+ * comment - The comment object. The comment object has 'text: string', 'id: string', 'userId: string | number', and 'time: date' fields. The 'text' is the comment's text. 'id' is the comment's unique id, 'userId' is the user's id who entered the comment and 'time' is a javascript date object.
982
+ */
983
+ _onCommentAdd = null; get onCommentAdd() {
984
+ return this._onCommentAdd;
985
+ }
986
+ set onCommentAdd(value) {
987
+ this._onCommentAdd = value;
988
+ }
989
+ /** This event is triggered, when the user removes a comment in the row edit dialog.
990
+ * @param event. The custom event. Custom event was created with: event.detail( id, comment)
991
+ * id - The row's id.
992
+ * comment - The comment object. The comment object has 'text: string', 'id: string', 'userId: string | number', and 'time: date' fields. The 'text' is the comment's text. 'id' is the comment's unique id, 'userId' is the user's id who entered the comment and 'time' is a javascript date object.
993
+ */
994
+ _onCommentRemove = null; get onCommentRemove() {
995
+ return this._onCommentRemove;
996
+ }
997
+ set onCommentRemove(value) {
998
+ this._onCommentRemove = value;
999
+ }
1000
+ /** This event is triggered, when the user clicks on a context menu item.
1001
+ * @param event. The custom event. Custom event was created with: event.detail( id, dataField, command)
1002
+ * id - The row's id.
1003
+ * dataField - The column's data field.
1004
+ * command - Command function.
1005
+ */
1006
+ _onContextMenuItemClick = null; get onContextMenuItemClick() {
1007
+ return this._onContextMenuItemClick;
1008
+ }
1009
+ set onContextMenuItemClick(value) {
1010
+ this._onContextMenuItemClick = value;
1011
+ }
1012
+ /** This event is triggered, when the user starts a row drag.
1013
+ * @param event. The custom event. Custom event was created with: event.detail( row, id, index, originalEvent)
1014
+ * row - The row.
1015
+ * id - The row's id
1016
+ * index - The row's index
1017
+ * originalEvent - The origianl Event object.
1018
+ */
1019
+ _onRowDragStart = null; get onRowDragStart() {
1020
+ return this._onRowDragStart;
1021
+ }
1022
+ set onRowDragStart(value) {
1023
+ this._onRowDragStart = value;
1024
+ }
1025
+ /** This event is triggered, when the user drags a row.
1026
+ * @param event. The custom event. Custom event was created with: event.detail( row, id, index, data, originalEvent)
1027
+ * row - The row.
1028
+ * id - The row's id
1029
+ * index - The row's index
1030
+ * data - The dragging object. data.feedback and data.feedbackLine are HTML Elements which are displayed while the user drags. The object has error(), success() and data() methods which you can call to set the feedback state.
1031
+ * originalEvent - The origianl Event object.
1032
+ */
1033
+ _onRowDragging = null; get onRowDragging() {
1034
+ return this._onRowDragging;
1035
+ }
1036
+ set onRowDragging(value) {
1037
+ this._onRowDragging = value;
1038
+ }
1039
+ /** This event is triggered, when the user drags a row.
1040
+ * @param event. The custom event. Custom event was created with: event.detail( row, id, index, newIndex, data, originalEvent)
1041
+ * row - The row.
1042
+ * id - The row's id
1043
+ * index - The row's index
1044
+ * newIndex - The row's new index
1045
+ * data - The dragging object. data.feedback and data.feedbackLine are HTML Elements which are displayed while the user drags. The object has error(), success() and data() methods which you can call to set the feedback state.
1046
+ * originalEvent - The origianl Event object.
1047
+ */
1048
+ _onRowDragEnd = null; get onRowDragEnd() {
1049
+ return this._onRowDragEnd;
1050
+ }
1051
+ set onRowDragEnd(value) {
1052
+ this._onRowDragEnd = value;
1053
+ }
1054
+ /** This event is triggered, when the user reorders a row.
1055
+ * @param event. The custom event. Custom event was created with: event.detail( row, id, index, newIndex, data, originalEvent)
1056
+ * row - The row.
1057
+ * id - The row's id
1058
+ * index - The row's index
1059
+ * newIndex - The row's new index
1060
+ * data - The dragging object. data.feedback and data.feedbackLine are HTML Elements which are displayed while the user drags. The object has error(), success() and data() methods which you can call to set the feedback state.
1061
+ * originalEvent - The origianl Event object.
1062
+ */
1063
+ _onRowReorder = null; get onRowReorder() {
1064
+ return this._onRowReorder;
1065
+ }
1066
+ set onRowReorder(value) {
1067
+ this._onRowReorder = value;
1068
+ }
1069
+ /** This event is triggered, when the user expands a row of the grid. The Grid is in TreeGrid/Grouping mode.
1070
+ * @param event. The custom event. Custom event was created with: event.detail( row, id, originalEvent)
1071
+ * row - The expanded row.
1072
+ * id - The row's id
1073
+ * originalEvent - The original event object, which is 'pointer', 'touch' or 'mouse' Event object, depending on the device type and web browser
1074
+ */
1075
+ _onRowExpand = null; get onRowExpand() {
1076
+ return this._onRowExpand;
1077
+ }
1078
+ set onRowExpand(value) {
1079
+ this._onRowExpand = value;
1080
+ }
1081
+ /** This event is triggered, when the user collapsed a row of the grid. The Grid is in TreeGrid/Grouping mode.
1082
+ * @param event. The custom event. Custom event was created with: event.detail( row, id, originalEvent)
1083
+ * row - The collapsed row.
1084
+ * id - The row's id
1085
+ * originalEvent - The original event object, which is 'pointer', 'touch' or 'mouse' Event object, depending on the device type and web browser
1086
+ */
1087
+ _onRowCollapse = null; get onRowCollapse() {
1088
+ return this._onRowCollapse;
1089
+ }
1090
+ set onRowCollapse(value) {
1091
+ this._onRowCollapse = value;
1092
+ }
1093
+ /** This event is triggered, when the user clicks on a row of the grid.
1094
+ * @param event. The custom event. Custom event was created with: event.detail( row, originalEvent, id, data, isRightClick, pageX, pageY)
1095
+ * row - The clicked row.
1096
+ * originalEvent - The original event object, which is 'pointer', 'touch' or 'mouse' Event object, depending on the device type and web browser
1097
+ * id - Gets the row id.
1098
+ * data - Gets the row data.
1099
+ * isRightClick - Gets whether the pointing device's right button is clicked.
1100
+ * pageX - Gets the click's X position.
1101
+ * pageY - Gets the click's Y position.
1102
+ */
1103
+ _onRowClick = null; get onRowClick() {
1104
+ return this._onRowClick;
1105
+ }
1106
+ set onRowClick(value) {
1107
+ this._onRowClick = value;
1108
+ }
1109
+ /** This event is triggered, when the user double clicks on a row of the grid.
1110
+ * @param event. The custom event. Custom event was created with: event.detail( row, originalEvent, id, data, isRightClick, pageX, pageY)
1111
+ * row - The double-clicked row.
1112
+ * originalEvent - The original event object, which is 'pointer', 'touch' or 'mouse' Event object, depending on the device type and web browser
1113
+ * id - Gets the row id.
1114
+ * data - Gets the row data.
1115
+ * isRightClick - Gets whether the pointing device's right button is clicked.
1116
+ * pageX - Gets the click's X position.
1117
+ * pageY - Gets the click's Y position.
1118
+ */
1119
+ _onRowDoubleClick = null; get onRowDoubleClick() {
1120
+ return this._onRowDoubleClick;
1121
+ }
1122
+ set onRowDoubleClick(value) {
1123
+ this._onRowDoubleClick = value;
1124
+ }
1125
+ /** This event is triggered, when the user resized a row.
1126
+ * @param event. The custom event. Custom event was created with: event.detail( row, id, oldHeight, height)
1127
+ * row - The resized row.
1128
+ * id - Gets the row id.
1129
+ * oldHeight - The old height of the row.
1130
+ * height - The new height of the row.
1131
+ */
1132
+ _onRowResize = null; get onRowResize() {
1133
+ return this._onRowResize;
1134
+ }
1135
+ set onRowResize(value) {
1136
+ this._onRowResize = value;
1137
+ }
1138
+ /** This event is triggered, when the user clicks on the row header's star.
1139
+ * @param event. The custom event. Custom event was created with: event.detail( row, originalEvent, id, value)
1140
+ * row - The clicked row.
1141
+ * originalEvent - The original event object, which is 'pointer', 'touch' or 'mouse' Event object, depending on the device type and web browser
1142
+ * id - Gets the row id.
1143
+ * value - Gets whether the row is starred or not.
1144
+ */
1145
+ _onRowStarred = null; get onRowStarred() {
1146
+ return this._onRowStarred;
1147
+ }
1148
+ set onRowStarred(value) {
1149
+ this._onRowStarred = value;
1150
+ }
1151
+ /** This event is triggered, when the user clicks on a cell of the grid.
1152
+ * @param event. The custom event. Custom event was created with: event.detail( cell, originalEvent, id, dataField, value, isRightClick, pageX, pageY)
1153
+ * cell - The clicked cell.
1154
+ * originalEvent - The original event object, which is 'pointer', 'touch' or 'mouse' Event object, depending on the device type and web browser
1155
+ * id - Gets the row id.
1156
+ * dataField - Gets the column dataField.
1157
+ * value - Gets the cell value.
1158
+ * isRightClick - Gets whether the pointing device's right button is clicked.
1159
+ * pageX - Gets the click's X position.
1160
+ * pageY - Gets the click's Y position.
1161
+ */
1162
+ _onCellClick = null; get onCellClick() {
1163
+ return this._onCellClick;
1164
+ }
1165
+ set onCellClick(value) {
1166
+ this._onCellClick = value;
1167
+ }
1168
+ /** This event is triggered, when the user double clicks on a cell of the grid.
1169
+ * @param event. The custom event. Custom event was created with: event.detail( cell, originalEvent, id, dataField, value, isRightClick, pageX, pageY)
1170
+ * cell - The double-clicked cell.
1171
+ * originalEvent - The original event object, which is 'pointer', 'touch' or 'mouse' Event object, depending on the device type and web browser
1172
+ * id - Gets the row id.
1173
+ * dataField - Gets the column dataField.
1174
+ * value - Gets the cell value.
1175
+ * isRightClick - Gets whether the pointing device's right button is clicked.
1176
+ * pageX - Gets the click's X position.
1177
+ * pageY - Gets the click's Y position.
1178
+ */
1179
+ _onCellDoubleClick = null; get onCellDoubleClick() {
1180
+ return this._onCellDoubleClick;
1181
+ }
1182
+ set onCellDoubleClick(value) {
1183
+ this._onCellDoubleClick = value;
1184
+ }
1185
+ /** This event is triggered, when the edit ends.
1186
+ * @param event. The custom event. Custom event was created with: event.detail( id, dataField, row, column, cell, data, value)
1187
+ * id - The edited row id.
1188
+ * dataField - The edited column data field.
1189
+ * row - The edited row.
1190
+ * column - The edited column.
1191
+ * cell - The edited cell.
1192
+ * data - The edited row's data.
1193
+ * value - The edited cell's value.
1194
+ */
1195
+ _onEndEdit = null; get onEndEdit() {
1196
+ return this._onEndEdit;
1197
+ }
1198
+ set onEndEdit(value) {
1199
+ this._onEndEdit = value;
1200
+ }
1201
+ /** This event is triggered, when a filter is added or removed.
1202
+ * @param event. The custom event. Custom event was created with: event.detail( columns, data, expressions)
1203
+ * columns - Array of columns.
1204
+ * data - Array of {dataField: string, filter: object}. <em>dataField</em> is the column's data field. <em>filter</em> is a FilterGroup object.
1205
+ * expressions - Array of {dataField: string, filter: string}. <em>dataField</em> is the column's data field. <em>filter</em> is a filter expression like 'startsWith B'. In each array item, you will have an object with column's name and filter string. Example: [['firstName', 'contains Andrew or contains Nancy'], ['quantity', '&lt;= 3 and &gt;= 8']], [['firstName', 'EQUAL' 'Andrew' or 'EQUAL' 'Antoni' or 'EQUAL' 'Beate']], [['lastName','CONTAINS' 'burke' or 'CONTAINS' 'peterson']]. Filter conditions used in the filter expressions: '=', 'EQUAL','&lt;&gt;', 'NOT_EQUAL', '!=', '&lt;', 'LESS_THAN','&gt;', 'GREATER_THAN', '&lt;=', 'LESS_THAN_OR_EQUAL', '&gt;=', 'GREATER_THAN_OR_EQUAL','starts with', 'STARTS_WITH','ends with', 'ENDS_WITH', '', 'EMPTY', 'CONTAINS','DOES_NOT_CONTAIN', 'NULL','NOT_NULL'
1206
+ */
1207
+ _onFilter = null; get onFilter() {
1208
+ return this._onFilter;
1209
+ }
1210
+ set onFilter(value) {
1211
+ this._onFilter = value;
1212
+ }
1213
+ /** This event is triggered, when the rows grouping is changed.
1214
+ * @param event. The custom event. Custom event was created with: event.detail( groups)
1215
+ * groups - Array of column data fields.
1216
+ */
1217
+ _onGroup = null; get onGroup() {
1218
+ return this._onGroup;
1219
+ }
1220
+ set onGroup(value) {
1221
+ this._onGroup = value;
1222
+ }
1223
+ /** This event is triggered, when the add new column dialog is opened.
1224
+ * @param event. The custom event. Custom event was created with: event.detail( dataField)
1225
+ * dataField - The column data field.
1226
+ */
1227
+ _onOpenColumnDialog = null; get onOpenColumnDialog() {
1228
+ return this._onOpenColumnDialog;
1229
+ }
1230
+ set onOpenColumnDialog(value) {
1231
+ this._onOpenColumnDialog = value;
1232
+ }
1233
+ /** This event is triggered, when the add new column dialog is closed.
1234
+ * @param event. The custom event. Custom event was created with: event.detail( dataField)
1235
+ * dataField - The column data field.
1236
+ */
1237
+ _onCloseColumnDialog = null; get onCloseColumnDialog() {
1238
+ return this._onCloseColumnDialog;
1239
+ }
1240
+ set onCloseColumnDialog(value) {
1241
+ this._onCloseColumnDialog = value;
1242
+ }
1243
+ /** This event is triggered, when the grid is resized.
1244
+ * @param event. The custom event. */
1245
+ _onResize = null; get onResize() {
1246
+ return this._onResize;
1247
+ }
1248
+ set onResize(value) {
1249
+ this._onResize = value;
1250
+ }
1251
+ /** This event is triggered when the user touches and holds on the row for at least 300ms.
1252
+ * @param event. The custom event. Custom event was created with: event.detail( row, originalEvent)
1253
+ * row - The tapped row.
1254
+ * originalEvent - The original event object, which is 'pointer', 'touch' or 'mouse' Event object, depending on the device type and web browser
1255
+ */
1256
+ _onRowTap = null; get onRowTap() {
1257
+ return this._onRowTap;
1258
+ }
1259
+ set onRowTap(value) {
1260
+ this._onRowTap = value;
1261
+ }
1262
+ /** This event is triggered when the user touches and holds on the cell for at least 300ms.
1263
+ * @param event. The custom event. Custom event was created with: event.detail( cell, originalEvent)
1264
+ * cell - The tapped row.
1265
+ * originalEvent - The original event object, which is 'pointer', 'touch' or 'mouse' Event object, depending on the device type and web browser
1266
+ */
1267
+ _onCellTap = null; get onCellTap() {
1268
+ return this._onCellTap;
1269
+ }
1270
+ set onCellTap(value) {
1271
+ this._onCellTap = value;
1272
+ }
1273
+ /** This event is triggered, when the user changes the pages.
1274
+ * @param event. The custom event. */
1275
+ _onPage = null; get onPage() {
1276
+ return this._onPage;
1277
+ }
1278
+ set onPage(value) {
1279
+ this._onPage = value;
1280
+ }
1281
+ /** This event is triggered, when a sorting column is added or removed.
1282
+ * @param event. The custom event. Custom event was created with: event.detail( columns, data, sortDataFields, sortDataTypes, sortOrders, sortIndexes)
1283
+ * columns - Array of columns.
1284
+ * data - Array of {dataField: string, sortOrder: string, sortIndex: number}. <em>dataField</em> is the column's data field. <em>sortOrder</em> is 'asc' or 'desc', <em>sortIndex</em> is the index of the column in multi column sorting.
1285
+ * sortDataFields - Array of column data fields.
1286
+ * sortDataTypes - Array of column data types. The values in the array would be 'string', 'date', 'boolean' or 'number'.
1287
+ * sortOrders - Array of column orders. The values in the array would be 'asc' or 'desc'.
1288
+ * sortIndexes - Array of column sort indexes. When multiple sorting is applied the sort index is an important parameter as it specifies the priority of sorting.
1289
+ */
1290
+ _onSort = null; get onSort() {
1291
+ return this._onSort;
1292
+ }
1293
+ set onSort(value) {
1294
+ this._onSort = value;
1295
+ }
1296
+ /** This event is triggered, when the user reaches the bottom of the grid.
1297
+ * @param event. The custom event. */
1298
+ _onScrollBottomReached = null; get onScrollBottomReached() {
1299
+ return this._onScrollBottomReached;
1300
+ }
1301
+ set onScrollBottomReached(value) {
1302
+ this._onScrollBottomReached = value;
1303
+ }
1304
+ /** This event is triggered, when the user reaches the top of the grid.
1305
+ * @param event. The custom event. */
1306
+ _onScrollTopReached = null; get onScrollTopReached() {
1307
+ return this._onScrollTopReached;
1308
+ }
1309
+ set onScrollTopReached(value) {
1310
+ this._onScrollTopReached = value;
1311
+ }
1312
+
1313
+ // Gets the events of the React component.
1314
+ get eventListeners() {
1315
+ return ["onBeginEdit","onBatchChange","onBatchCancel","onChange","onColumnClick","onColumnDoubleClick","onColumnResize","onColumnDragStart","onColumnChange","onColumnDragging","onColumnDragEnd","onColumnReorder","onCommentAdd","onCommentRemove","onContextMenuItemClick","onRowDragStart","onRowDragging","onRowDragEnd","onRowReorder","onRowExpand","onRowCollapse","onRowClick","onRowDoubleClick","onRowResize","onRowStarred","onCellClick","onCellDoubleClick","onEndEdit","onFilter","onGroup","onOpenColumnDialog","onCloseColumnDialog","onResize","onRowTap","onCellTap","onPage","onSort","onScrollBottomReached","onScrollTopReached"];
1316
+ }
1317
+ /** Adds a row. When batch editing is enabled, the row is not saved until the batch edit is saved.
1318
+ * @param {any} data. row data matching the data source
1319
+ * @param {boolean} insertAtBottom?. Determines whether to add the new row to the bottom or top of the collection. The default value is 'true'
1320
+ * @param {{(row: GridRow): void}} callback?. Sets a callback function, which is called after the new row is added. The callback's argument is the new row.
1321
+ */
1322
+ addRow(data, insertAtBottom, callback){
1323
+ if (this.nativeElement.isRendered) {
1324
+ this.nativeElement.addRow(data, insertAtBottom, callback);
1325
+ }
1326
+ else
1327
+ {
1328
+ this.nativeElement.whenRendered(() => {
1329
+ this.nativeElement.addRow(data, insertAtBottom, callback);
1330
+ });
1331
+ }
1332
+ }
1333
+
1334
+ /** Adds a new row and puts it into edit mode. When batch editing is enabled, the row is not saved until the batch edit is saved.
1335
+ * @param {string} position?. 'near' or 'far'
1336
+ * @returns {boolean}
1337
+ */
1338
+ addNewRow(position) {
1339
+ const result = this.nativeElement.addNewRow(position);
1340
+ return result;
1341
+ }
1342
+
1343
+ /** Adds a new column.
1344
+ * @param {any} column. A Grid column object. See 'columns' property.
1345
+ * @returns {boolean}
1346
+ */
1347
+ addNewColumn(column) {
1348
+ const result = this.nativeElement.addNewColumn(column);
1349
+ return result;
1350
+ }
1351
+
1352
+ /** Adds a new unbound row to the top or bottom. Unbound rows are not part of the Grid's dataSource. They become part of the dataSource, after an unbound row is edited.
1353
+ * @param {number} count. The count of unbound rows.
1354
+ * @param {string} position?. 'near' or 'far'
1355
+ * @returns {boolean}
1356
+ */
1357
+ addUnboundRow(count, position) {
1358
+ const result = this.nativeElement.addUnboundRow(count, position);
1359
+ return result;
1360
+ }
1361
+
1362
+ /** Adds a filter to a column. This method will apply a filter to the Grid data. Example for adding multiple filters to a column: grid.addFilter('lastName', ['CONTAINS "burke"', 'or', 'CONTAINS "peterson"']). Example for adding single filter to a column: grid.addFilter('lastName', 'CONTAINS "burke"'). Example for adding numeric filter: grid.addFilter('quantity', '&lt;= 5')
1363
+ * @param {string} dataField. column bound data field. For example, if you have a column with dataField: 'firstName', set 'firstName' here.
1364
+ * @param {string} filter. Filter expression like: 'startsWith B'. Example 2: ['contains Andrew or contains Nancy'], Example 3: ['quantity', '&lt;= 3 and &gt;= 8']. Filter conditions which you can use in the expressions: '=', 'EQUAL','&lt;&gt;', 'NOT_EQUAL', '!=', '&lt;', 'LESS_THAN','&gt;', 'GREATER_THAN', '&lt;=', 'LESS_THAN_OR_EQUAL', '&gt;=', 'GREATER_THAN_OR_EQUAL','starts with', 'STARTS_WITH','ends with', 'ENDS_WITH', '', 'EMPTY', 'CONTAINS','DOES_NOT_CONTAIN', 'NULL','NOT_NULL'
1365
+ * @param {boolean} refreshFilters?. Set this to false, if you will use multiple 'addFilter' calls. By doing this, you will avoid unnecessary renders.
1366
+ */
1367
+ addFilter(dataField, filter, refreshFilters){
1368
+ if (this.nativeElement.isRendered) {
1369
+ this.nativeElement.addFilter(dataField, filter, refreshFilters);
1370
+ }
1371
+ else
1372
+ {
1373
+ this.nativeElement.whenRendered(() => {
1374
+ this.nativeElement.addFilter(dataField, filter, refreshFilters);
1375
+ });
1376
+ }
1377
+ }
1378
+
1379
+ /** Groups the Grid by a data field. This method will add a group to the Grid when grouping is enabled.
1380
+ * @param {string} dataField. column bound data field. For example, if you have a column with dataField: 'firstName', set 'firstName' here.
1381
+ */
1382
+ addGroup(dataField){
1383
+ if (this.nativeElement.isRendered) {
1384
+ this.nativeElement.addGroup(dataField);
1385
+ }
1386
+ else
1387
+ {
1388
+ this.nativeElement.whenRendered(() => {
1389
+ this.nativeElement.addGroup(dataField);
1390
+ });
1391
+ }
1392
+ }
1393
+
1394
+ /** Sorts the Grid by a data field. This method will add a sorting to the Grid when sorting is enabled.
1395
+ * @param {string} dataField. column bound data field. For example, if you have a column with dataField: 'firstName', set 'firstName' here.
1396
+ * @param {string} sortOrder. column's sort order. Use 'asc' or 'desc'.
1397
+ */
1398
+ addSort(dataField, sortOrder){
1399
+ if (this.nativeElement.isRendered) {
1400
+ this.nativeElement.addSort(dataField, sortOrder);
1401
+ }
1402
+ else
1403
+ {
1404
+ this.nativeElement.whenRendered(() => {
1405
+ this.nativeElement.addSort(dataField, sortOrder);
1406
+ });
1407
+ }
1408
+ }
1409
+
1410
+ /** Auto-sizes grid rows. This method will update the height of all Grid rows.
1411
+ */
1412
+ autoSizeRows(){
1413
+ if (this.nativeElement.isRendered) {
1414
+ this.nativeElement.autoSizeRows();
1415
+ }
1416
+ else
1417
+ {
1418
+ this.nativeElement.whenRendered(() => {
1419
+ this.nativeElement.autoSizeRows();
1420
+ });
1421
+ }
1422
+ }
1423
+
1424
+ /** Auto-sizes grid columns. This method will update the width of all Grid columns.
1425
+ */
1426
+ autoSizeColumns(){
1427
+ if (this.nativeElement.isRendered) {
1428
+ this.nativeElement.autoSizeColumns();
1429
+ }
1430
+ else
1431
+ {
1432
+ this.nativeElement.whenRendered(() => {
1433
+ this.nativeElement.autoSizeColumns();
1434
+ });
1435
+ }
1436
+ }
1437
+
1438
+ /** Auto-sizes grid column. This method will update the width of a Grid column by measuring the cells and column header label width.
1439
+ * @param {string} dataField?. column bound data field. For example, if you have a column with dataField: 'firstName', set 'firstName' here.
1440
+ */
1441
+ autoSizeColumn(dataField){
1442
+ if (this.nativeElement.isRendered) {
1443
+ this.nativeElement.autoSizeColumn(dataField);
1444
+ }
1445
+ else
1446
+ {
1447
+ this.nativeElement.whenRendered(() => {
1448
+ this.nativeElement.autoSizeColumn(dataField);
1449
+ });
1450
+ }
1451
+ }
1452
+
1453
+ /** This method returns true, if all rows in the Grid are selected.
1454
+ * @returns {boolean}
1455
+ */
1456
+ areAllRowsSelected() {
1457
+ const result = this.nativeElement.areAllRowsSelected();
1458
+ return result;
1459
+ }
1460
+
1461
+ /** Starts an update operation. This is appropriate when calling multiple methods or set multiple properties at once.
1462
+ */
1463
+ beginUpdate(){
1464
+ if (this.nativeElement.isRendered) {
1465
+ this.nativeElement.beginUpdate();
1466
+ }
1467
+ else
1468
+ {
1469
+ this.nativeElement.whenRendered(() => {
1470
+ this.nativeElement.beginUpdate();
1471
+ });
1472
+ }
1473
+ }
1474
+
1475
+ /** Begins row, cell or column. This method allows you to programmatically start a cell, row or column editing. After calling it, an editor HTMLElement will be created and displayed in the Grid.
1476
+ * @param {string | number} rowId. row bound id
1477
+ * @param {string} dataField?. column bound data field. For example, if you have a column with dataField: 'firstName', set 'firstName' here.
1478
+ */
1479
+ beginEdit(rowId, dataField){
1480
+ if (this.nativeElement.isRendered) {
1481
+ this.nativeElement.beginEdit(rowId, dataField);
1482
+ }
1483
+ else
1484
+ {
1485
+ this.nativeElement.whenRendered(() => {
1486
+ this.nativeElement.beginEdit(rowId, dataField);
1487
+ });
1488
+ }
1489
+ }
1490
+
1491
+ /** Clears all filters. Refreshes the view and updates all filter input components.
1492
+ */
1493
+ clearFilter(){
1494
+ if (this.nativeElement.isRendered) {
1495
+ this.nativeElement.clearFilter();
1496
+ }
1497
+ else
1498
+ {
1499
+ this.nativeElement.whenRendered(() => {
1500
+ this.nativeElement.clearFilter();
1501
+ });
1502
+ }
1503
+ }
1504
+
1505
+ /** Clears all data groups. Refreshes the view and updates the DataGrid component.
1506
+ */
1507
+ clearGroups(){
1508
+ if (this.nativeElement.isRendered) {
1509
+ this.nativeElement.clearGroups();
1510
+ }
1511
+ else
1512
+ {
1513
+ this.nativeElement.whenRendered(() => {
1514
+ this.nativeElement.clearGroups();
1515
+ });
1516
+ }
1517
+ }
1518
+
1519
+ /** Clears all sorting. Refreshes the view and updates the DataGrid component.
1520
+ */
1521
+ clearSort(){
1522
+ if (this.nativeElement.isRendered) {
1523
+ this.nativeElement.clearSort();
1524
+ }
1525
+ else
1526
+ {
1527
+ this.nativeElement.whenRendered(() => {
1528
+ this.nativeElement.clearSort();
1529
+ });
1530
+ }
1531
+ }
1532
+
1533
+ /** Clears the selection that user have made. All row, cell and column selection highlights will be removed.
1534
+ */
1535
+ clearSelection(){
1536
+ if (this.nativeElement.isRendered) {
1537
+ this.nativeElement.clearSelection();
1538
+ }
1539
+ else
1540
+ {
1541
+ this.nativeElement.whenRendered(() => {
1542
+ this.nativeElement.clearSelection();
1543
+ });
1544
+ }
1545
+ }
1546
+
1547
+ /** Cancels the editing. This method closes the cell editor and cancels the changes.
1548
+ */
1549
+ cancelEdit(){
1550
+ if (this.nativeElement.isRendered) {
1551
+ this.nativeElement.cancelEdit();
1552
+ }
1553
+ else
1554
+ {
1555
+ this.nativeElement.whenRendered(() => {
1556
+ this.nativeElement.cancelEdit();
1557
+ });
1558
+ }
1559
+ }
1560
+
1561
+ /** Checks a TreeGrid row. This method updates the row's check-box.
1562
+ * @param {string | number} rowId. row bound id
1563
+ */
1564
+ checkRow(rowId){
1565
+ if (this.nativeElement.isRendered) {
1566
+ this.nativeElement.checkRow(rowId);
1567
+ }
1568
+ else
1569
+ {
1570
+ this.nativeElement.whenRendered(() => {
1571
+ this.nativeElement.checkRow(rowId);
1572
+ });
1573
+ }
1574
+ }
1575
+
1576
+ /** Checks all TreeGrid or Grouping rows. This method updates all check-boxes in the TreeGrid or Grouping rows.
1577
+ */
1578
+ checkAllRows(){
1579
+ if (this.nativeElement.isRendered) {
1580
+ this.nativeElement.checkAllRows();
1581
+ }
1582
+ else
1583
+ {
1584
+ this.nativeElement.whenRendered(() => {
1585
+ this.nativeElement.checkAllRows();
1586
+ });
1587
+ }
1588
+ }
1589
+
1590
+ /** Clears the user selection and empties the data source. The Grid will display 'No Rows' in the view.
1591
+ */
1592
+ clearRows(){
1593
+ if (this.nativeElement.isRendered) {
1594
+ this.nativeElement.clearRows();
1595
+ }
1596
+ else
1597
+ {
1598
+ this.nativeElement.whenRendered(() => {
1599
+ this.nativeElement.clearRows();
1600
+ });
1601
+ }
1602
+ }
1603
+
1604
+ /** Closes the column drop-down menu.
1605
+ */
1606
+ closeMenu(){
1607
+ if (this.nativeElement.isRendered) {
1608
+ this.nativeElement.closeMenu();
1609
+ }
1610
+ else
1611
+ {
1612
+ this.nativeElement.whenRendered(() => {
1613
+ this.nativeElement.closeMenu();
1614
+ });
1615
+ }
1616
+ }
1617
+
1618
+ /** Collapses a TreeGrid or Grouping row.
1619
+ * @param {string | number} rowId. row bound id
1620
+ */
1621
+ collapseRow(rowId){
1622
+ if (this.nativeElement.isRendered) {
1623
+ this.nativeElement.collapseRow(rowId);
1624
+ }
1625
+ else
1626
+ {
1627
+ this.nativeElement.whenRendered(() => {
1628
+ this.nativeElement.collapseRow(rowId);
1629
+ });
1630
+ }
1631
+ }
1632
+
1633
+ /** Collapses all TreeGrid or Grouping rows.
1634
+ */
1635
+ collapseAllRows(){
1636
+ if (this.nativeElement.isRendered) {
1637
+ this.nativeElement.collapseAllRows();
1638
+ }
1639
+ else
1640
+ {
1641
+ this.nativeElement.whenRendered(() => {
1642
+ this.nativeElement.collapseAllRows();
1643
+ });
1644
+ }
1645
+ }
1646
+
1647
+ /** Creates a Chart, when charting is enabled.
1648
+ * @param {string} type. Chart's type
1649
+ * @param {any} dataSource?. Chart's data source
1650
+ */
1651
+ createChart(type, dataSource){
1652
+ if (this.nativeElement.isRendered) {
1653
+ this.nativeElement.createChart(type, dataSource);
1654
+ }
1655
+ else
1656
+ {
1657
+ this.nativeElement.whenRendered(() => {
1658
+ this.nativeElement.createChart(type, dataSource);
1659
+ });
1660
+ }
1661
+ }
1662
+
1663
+ /** Delete a row. When batch editing is enabled, the row is not saved until the batch edit is saved.
1664
+ * @param {string | number} rowId. row bound id
1665
+ * @param {{(row: GridRow): void}} callback?. Sets a callback function, which is called after the row is deleted. The callback's argument is the deleted row.
1666
+ */
1667
+ deleteRow(rowId, callback){
1668
+ if (this.nativeElement.isRendered) {
1669
+ this.nativeElement.deleteRow(rowId, callback);
1670
+ }
1671
+ else
1672
+ {
1673
+ this.nativeElement.whenRendered(() => {
1674
+ this.nativeElement.deleteRow(rowId, callback);
1675
+ });
1676
+ }
1677
+ }
1678
+
1679
+ /** Scrolls to a row or cell. This method scrolls to a row or cell, when scrolling is necessary. If pagination is enabled, it will automatically change the page.
1680
+ * @param {string | number} rowId. row bound id
1681
+ * @param {string} dataField?. column bound data field. For example, if you have a column with dataField: 'firstName', set 'firstName' here.
1682
+ * @returns {boolean}
1683
+ */
1684
+ ensureVisible(rowId, dataField) {
1685
+ const result = this.nativeElement.ensureVisible(rowId, dataField);
1686
+ return result;
1687
+ }
1688
+
1689
+ /** Ends the editing. This method confirms all changes and closes the opened cell editor(s).
1690
+ */
1691
+ endEdit(){
1692
+ if (this.nativeElement.isRendered) {
1693
+ this.nativeElement.endEdit();
1694
+ }
1695
+ else
1696
+ {
1697
+ this.nativeElement.whenRendered(() => {
1698
+ this.nativeElement.endEdit();
1699
+ });
1700
+ }
1701
+ }
1702
+
1703
+ /** Ends the update operation. This method will resume the rendering and will refresh the Grid.
1704
+ * @param {boolean} refresh?. The flag that control the calls of the refresh method.
1705
+ */
1706
+ endUpdate(refresh){
1707
+ if (this.nativeElement.isRendered) {
1708
+ this.nativeElement.endUpdate(refresh);
1709
+ }
1710
+ else
1711
+ {
1712
+ this.nativeElement.whenRendered(() => {
1713
+ this.nativeElement.endUpdate(refresh);
1714
+ });
1715
+ }
1716
+ }
1717
+
1718
+ /** Expands a TreeGrid or Grouping row. For example, if you want to expand the first group, then its second sub grup, then the first sub sub group, you can use: grid.expandRow('0.1.0');
1719
+ * @param {string | number} rowId. row bound id
1720
+ */
1721
+ expandRow(rowId){
1722
+ if (this.nativeElement.isRendered) {
1723
+ this.nativeElement.expandRow(rowId);
1724
+ }
1725
+ else
1726
+ {
1727
+ this.nativeElement.whenRendered(() => {
1728
+ this.nativeElement.expandRow(rowId);
1729
+ });
1730
+ }
1731
+ }
1732
+
1733
+ /** Expands rows to a given group level. For example 'grid.expandRowsToGroupLevel(1);' means that all groups at the root level will be expanded.
1734
+ * @param {number} level. row group level
1735
+ */
1736
+ expandRowsToGroupLevel(level){
1737
+ if (this.nativeElement.isRendered) {
1738
+ this.nativeElement.expandRowsToGroupLevel(level);
1739
+ }
1740
+ else
1741
+ {
1742
+ this.nativeElement.whenRendered(() => {
1743
+ this.nativeElement.expandRowsToGroupLevel(level);
1744
+ });
1745
+ }
1746
+ }
1747
+
1748
+ /** Expands all TreeGrid or Grouping rows.
1749
+ */
1750
+ expandAllRows(){
1751
+ if (this.nativeElement.isRendered) {
1752
+ this.nativeElement.expandAllRows();
1753
+ }
1754
+ else
1755
+ {
1756
+ this.nativeElement.whenRendered(() => {
1757
+ this.nativeElement.expandAllRows();
1758
+ });
1759
+ }
1760
+ }
1761
+
1762
+ /** Exports the Grid data to .XLSX, .PDF, .JSON, .XML, .CSV, .TSV, .HTML, .JPEG or .PNG. The method uses the options of the dataExport property.
1763
+ * @param {string} Dataformat. 'xlsx', 'pdf', 'json', 'xml', 'csv', 'tsv', 'html', 'png', 'jpeg'.
1764
+ */
1765
+ exportData(Dataformat){
1766
+ if (this.nativeElement.isRendered) {
1767
+ this.nativeElement.exportData(Dataformat);
1768
+ }
1769
+ else
1770
+ {
1771
+ this.nativeElement.whenRendered(() => {
1772
+ this.nativeElement.exportData(Dataformat);
1773
+ });
1774
+ }
1775
+ }
1776
+
1777
+ /** Finds entries by using a query and returns an array of row ids. Example: const rows = grid.find('nancy'); returns all rows that have 'nancy' value. Example 2: const rows = grid.find('nancy, davolio'); returns all rows that have 'nancy' and 'davolio' values in the same row. Example 3: const rows = grid.find(5, 'quantity', '>'); returns all rows where the value of the 'quantity' field is > 5.
1778
+ * @param {string} query. Search query
1779
+ * @param {string} dataField?. Column data field.
1780
+ * @param {string} condition?. Conditions which you can use in the expressions: '=', 'EQUAL','&lt;&gt;', 'NOT_EQUAL', '!=', '&lt;', 'LESS_THAN','&gt;', 'GREATER_THAN', '&lt;=', 'LESS_THAN_OR_EQUAL', '&gt;=', 'GREATER_THAN_OR_EQUAL','starts with', 'STARTS_WITH','ends with', 'ENDS_WITH', '', 'EMPTY', 'CONTAINS','DOES_NOT_CONTAIN', 'NULL','NOT_NULL'
1781
+ * @returns {any[]}
1782
+ */
1783
+ find(query, dataField, condition) {
1784
+ const result = this.nativeElement.find(query, dataField, condition);
1785
+ return result;
1786
+ }
1787
+
1788
+ /** Finds entries by using a query and returns an array of cells. Each cell in the array is also an array in this format: [id, dataField, value]. Example: const cells = grid.findCells('nancy'); returns all cells that have 'nancy' value. Example 2: const cells = grid.findCells('nancy, davolio'); returns all cells that have 'nancy' and 'davolio' values.
1789
+ * @param {string} query. Search query. You can enter multiple search strings, by using ','. Example: 'nancy, davolio'
1790
+ * @returns {any[]}
1791
+ */
1792
+ findCells(query) {
1793
+ const result = this.nativeElement.findCells(query);
1794
+ return result;
1795
+ }
1796
+
1797
+ /** Filter by all columns. This method works like a global filter and applies a filter to all grid columns.
1798
+ * @param {string} query. Filter query to filter by.
1799
+ * @param {string} dataType?. Optionally filter by a specific data type like 'string', 'boolean', 'date', 'number'.
1800
+ */
1801
+ filterBy(query, dataType){
1802
+ if (this.nativeElement.isRendered) {
1803
+ this.nativeElement.filterBy(query, dataType);
1804
+ }
1805
+ else
1806
+ {
1807
+ this.nativeElement.whenRendered(() => {
1808
+ this.nativeElement.filterBy(query, dataType);
1809
+ });
1810
+ }
1811
+ }
1812
+
1813
+ /** Navigates to a page, when paging is enabled.
1814
+ * @param {number} index. page index
1815
+ */
1816
+ goToPage(index){
1817
+ if (this.nativeElement.isRendered) {
1818
+ this.nativeElement.goToPage(index);
1819
+ }
1820
+ else
1821
+ {
1822
+ this.nativeElement.whenRendered(() => {
1823
+ this.nativeElement.goToPage(index);
1824
+ });
1825
+ }
1826
+ }
1827
+
1828
+ /** Navigates to the next page, when grid paging is enabled.
1829
+ */
1830
+ nextPage(){
1831
+ if (this.nativeElement.isRendered) {
1832
+ this.nativeElement.nextPage();
1833
+ }
1834
+ else
1835
+ {
1836
+ this.nativeElement.whenRendered(() => {
1837
+ this.nativeElement.nextPage();
1838
+ });
1839
+ }
1840
+ }
1841
+
1842
+ /** Navigates to the prev page, when grid paging is enabled.
1843
+ */
1844
+ prevPage(){
1845
+ if (this.nativeElement.isRendered) {
1846
+ this.nativeElement.prevPage();
1847
+ }
1848
+ else
1849
+ {
1850
+ this.nativeElement.whenRendered(() => {
1851
+ this.nativeElement.prevPage();
1852
+ });
1853
+ }
1854
+ }
1855
+
1856
+ /** Navigates to the first page, when grid paging is enabled.
1857
+ */
1858
+ firstPage(){
1859
+ if (this.nativeElement.isRendered) {
1860
+ this.nativeElement.firstPage();
1861
+ }
1862
+ else
1863
+ {
1864
+ this.nativeElement.whenRendered(() => {
1865
+ this.nativeElement.firstPage();
1866
+ });
1867
+ }
1868
+ }
1869
+
1870
+ /** Navigates to the last page, when grid paging is enabled.
1871
+ */
1872
+ lastPage(){
1873
+ if (this.nativeElement.isRendered) {
1874
+ this.nativeElement.lastPage();
1875
+ }
1876
+ else
1877
+ {
1878
+ this.nativeElement.whenRendered(() => {
1879
+ this.nativeElement.lastPage();
1880
+ });
1881
+ }
1882
+ }
1883
+
1884
+ /** Focuses and selects a cell or row. The keyboard navigation starts from the focused cell or row. Any previously applied selection will be cleared after calling this method.
1885
+ * @param {string | number} rowId. row bound id
1886
+ * @param {string} dataField?. column bound data field
1887
+ */
1888
+ focusAndSelect(rowId, dataField){
1889
+ if (this.nativeElement.isRendered) {
1890
+ this.nativeElement.focusAndSelect(rowId, dataField);
1891
+ }
1892
+ else
1893
+ {
1894
+ this.nativeElement.whenRendered(() => {
1895
+ this.nativeElement.focusAndSelect(rowId, dataField);
1896
+ });
1897
+ }
1898
+ }
1899
+
1900
+ /** Iterates through each row in the grid and calls the callback for each row. This is similar to the forEach method on a JavaScript array. This is called for each row, ignoring grouping, filtering or sorting applied in the Grid.
1901
+ * @param {any} rowCallback. Callback function with a row object as parameter. Example: grid.forEachRow((row) => { console.log(row.id) });
1902
+ */
1903
+ forEachRow(rowCallback){
1904
+ if (this.nativeElement.isRendered) {
1905
+ this.nativeElement.forEachRow(rowCallback);
1906
+ }
1907
+ else
1908
+ {
1909
+ this.nativeElement.whenRendered(() => {
1910
+ this.nativeElement.forEachRow(rowCallback);
1911
+ });
1912
+ }
1913
+ }
1914
+
1915
+ /** Similar to forEachRow. Iterates through each row in the grid and calls the callback for each row. This method takes into account filtering and sorting applied to the Grid.
1916
+ * @param {any} rowCallback. Callback function with a row object as parameter. Example: grid.forEachRow((row) => { console.log(row.id) });
1917
+ */
1918
+ forEachRowAfterFilterAndSort(rowCallback){
1919
+ if (this.nativeElement.isRendered) {
1920
+ this.nativeElement.forEachRowAfterFilterAndSort(rowCallback);
1921
+ }
1922
+ else
1923
+ {
1924
+ this.nativeElement.whenRendered(() => {
1925
+ this.nativeElement.forEachRowAfterFilterAndSort(rowCallback);
1926
+ });
1927
+ }
1928
+ }
1929
+
1930
+ /** Gets the maximum position of the vertical scrollbar. You can use this method in combination with the setVerticalScrollValue to apply a new scroll position.
1931
+ * @returns {number}
1932
+ */
1933
+ getVerticalScrollMax() {
1934
+ const result = this.nativeElement.getVerticalScrollMax();
1935
+ return result;
1936
+ }
1937
+
1938
+ /** Gets the position of the vertical scrollbar.
1939
+ * @returns {number}
1940
+ */
1941
+ getVerticalScrollValue() {
1942
+ const result = this.nativeElement.getVerticalScrollValue();
1943
+ return result;
1944
+ }
1945
+
1946
+ /** Gets the maximum position of the horizontal scrollbar. You can use this method in combination with the setHorizontalScrollValue to apply a new scroll position.
1947
+ * @returns {number}
1948
+ */
1949
+ getHorizontalScrollMax() {
1950
+ const result = this.nativeElement.getHorizontalScrollMax();
1951
+ return result;
1952
+ }
1953
+
1954
+ /** Gets the position of the horizontal scrollbar.
1955
+ * @returns {number}
1956
+ */
1957
+ getHorizontalScrollValue() {
1958
+ const result = this.nativeElement.getHorizontalScrollValue();
1959
+ return result;
1960
+ }
1961
+
1962
+ /** Gets the columns array. Each item in the array contains the column properties which are dynamically set by the user interaction and the columns initialization data properties such as: 'label', 'dataField', 'dataType', 'visible'.
1963
+ * @returns {any}
1964
+ */
1965
+ getColumns() {
1966
+ const result = this.nativeElement.getColumns();
1967
+ return result;
1968
+ }
1969
+
1970
+ /** Gets the editing cell(s), when the grid is editing.
1971
+ * @returns {any[]}
1972
+ */
1973
+ getEditCells() {
1974
+ const result = this.nativeElement.getEditCells();
1975
+ return result;
1976
+ }
1977
+
1978
+ /** Gets the groups array.
1979
+ * @returns {any[]}
1980
+ */
1981
+ getGroups() {
1982
+ const result = this.nativeElement.getGroups();
1983
+ return result;
1984
+ }
1985
+
1986
+ /** Gets an array of columns with applied sorting. Each member in the array is with column's data field used as a key and 'sortOrder' and 'sortIndex' as a value.
1987
+ * @returns {{[dataField: string]: { sortOrder: string, sortIndex: number }}}
1988
+ */
1989
+ getSortedColumns() {
1990
+ const result = this.nativeElement.getSortedColumns();
1991
+ return result;
1992
+ }
1993
+
1994
+ /** Gets the selection.
1995
+ * @returns {any}
1996
+ */
1997
+ getSelection() {
1998
+ const result = this.nativeElement.getSelection();
1999
+ return result;
2000
+ }
2001
+
2002
+ /** Gets an Array where each item is an Array of row id and row data. If the Grid is used in virtual mode, the row data parameter is empty object, because the data is loaded on demand.
2003
+ * @returns {any[]}
2004
+ */
2005
+ getSelectedRows() {
2006
+ const result = this.nativeElement.getSelectedRows();
2007
+ return result;
2008
+ }
2009
+
2010
+ /** Gets the selected row ids.
2011
+ * @returns {any[]}
2012
+ */
2013
+ getSelectedRowIds() {
2014
+ const result = this.nativeElement.getSelectedRowIds();
2015
+ return result;
2016
+ }
2017
+
2018
+ /** Gets the selected row indexes.
2019
+ * @returns {any[]}
2020
+ */
2021
+ getSelectedRowIndexes() {
2022
+ const result = this.nativeElement.getSelectedRowIndexes();
2023
+ return result;
2024
+ }
2025
+
2026
+ /** Gets the selected cells. The method returns an array of cell. Each cell is an array with row id, column data field and cell value.
2027
+ * @returns {any[]}
2028
+ */
2029
+ getSelectedCells() {
2030
+ const result = this.nativeElement.getSelectedCells();
2031
+ return result;
2032
+ }
2033
+
2034
+ /** Gets an array of columns with applied filters.
2035
+ * @returns {any}
2036
+ */
2037
+ getFilteredColumns() {
2038
+ const result = this.nativeElement.getFilteredColumns();
2039
+ return result;
2040
+ }
2041
+
2042
+ /** Gets an array of rows, which are visible and match the applied filter.
2043
+ * @returns {any}
2044
+ */
2045
+ getVisibleRows() {
2046
+ const result = this.nativeElement.getVisibleRows();
2047
+ return result;
2048
+ }
2049
+
2050
+ /** Gets the result of the getVisibleRows or the rows hierarchy, when the Grid is in TreeGrid/Grouping mode.
2051
+ * @returns {any}
2052
+ */
2053
+ getViewRows() {
2054
+ const result = this.nativeElement.getViewRows();
2055
+ return result;
2056
+ }
2057
+
2058
+ /** Gets a JSON object with the following fields: 'sort', 'columns', 'expandedRows', 'filter', 'groups', 'paging', 'selectedCells', 'selectedrows'. The 'sort' represents an object which contains the sorted columns. Each key in that json object is the column's dataField item which has sortOrder: string and sortIndex: int properties. The sortOrder could be either 'asc' or 'desc'. Similarly, the filter object contains the filtered columns. Each key in that object is a column data field and each value has 'filters' array property with the applied filters to the column. The 'columns' property contains an array of columns with saved properties such as visible, width and freeze. The 'expandedRows' property contains the indexes of the expanded rows. The 'groups' property contains the grouped column data fields and the selectedCells and selectedRows include information about the cells or rows selection. These depend on the selection mode used in the Grid. The 'paging' object includes the sub-properties 'count', 'index' and 'size' which determine the count of pages, the current page's index and the page size.
2059
+ * @returns {any}
2060
+ */
2061
+ getState() {
2062
+ const result = this.nativeElement.getState();
2063
+ return result;
2064
+ }
2065
+
2066
+ /** Gets the changes from the batch edit.
2067
+ * @returns {{ upDated: [{ id: string, dataField: string, oldValue: Object, newValue: Object }], deleted: [{id: string, data: Object}], added: [{id: string, data: Object}] }}
2068
+ */
2069
+ getBatchEditChanges() {
2070
+ const result = this.nativeElement.getBatchEditChanges();
2071
+ return result;
2072
+ }
2073
+
2074
+ /** Gets a value of a cell.
2075
+ * @param {string | number} rowId. row bound id
2076
+ * @param {string} dataField. column bound data field. For example, if you have a column with dataField: 'firstName', set 'firstName' here.
2077
+ * @returns {any}
2078
+ */
2079
+ getCellValue(rowId, dataField) {
2080
+ const result = this.nativeElement.getCellValue(rowId, dataField);
2081
+ return result;
2082
+ }
2083
+
2084
+ /** Gets a column. Returns a Grid column object.
2085
+ * @param {string} dataField. column bound data field. For example, if you have a column with dataField: 'firstName', set 'firstName' here.
2086
+ * @returns {GridColumn}
2087
+ */
2088
+ getColumn(dataField) {
2089
+ const result = this.nativeElement.getColumn(dataField);
2090
+ return result;
2091
+ }
2092
+
2093
+ /** Gets a value of a column.
2094
+ * @param {string} dataField. column bound data field. For example, if you have a column with dataField: 'firstName', set 'firstName' here.
2095
+ * @param {string} propertyName. The property name.
2096
+ * @returns {any}
2097
+ */
2098
+ getColumnProperty(dataField, propertyName) {
2099
+ const result = this.nativeElement.getColumnProperty(dataField, propertyName);
2100
+ return result;
2101
+ }
2102
+
2103
+ /** Gets a value of a row.
2104
+ * @param {string | number} rowId. row bound id
2105
+ * @param {string} propertyName. The property name.
2106
+ * @returns {any}
2107
+ */
2108
+ getRowProperty(rowId, propertyName) {
2109
+ const result = this.nativeElement.getRowProperty(rowId, propertyName);
2110
+ return result;
2111
+ }
2112
+
2113
+ /** Gets a row. Returns a Grid row object.
2114
+ * @param {string | number} rowId. row bound id
2115
+ * @returns {GridRow}
2116
+ */
2117
+ getRow(rowId) {
2118
+ const result = this.nativeElement.getRow(rowId);
2119
+ return result;
2120
+ }
2121
+
2122
+ /** Gets a row by its index. Returns a Grid row object.
2123
+ * @param {number} rowIndex. row bound index
2124
+ * @returns {GridRow}
2125
+ */
2126
+ getRowByIndex(rowIndex) {
2127
+ const result = this.nativeElement.getRowByIndex(rowIndex);
2128
+ return result;
2129
+ }
2130
+
2131
+ /** Gets the Data source data associated to the row.
2132
+ * @param {string | number} rowId. row bound id
2133
+ * @returns {any}
2134
+ */
2135
+ getRowData(rowId) {
2136
+ const result = this.nativeElement.getRowData(rowId);
2137
+ return result;
2138
+ }
2139
+
2140
+ /** Gets the Row's id by a row index.
2141
+ * @param {number} rowIndex. row index
2142
+ * @returns {string | number}
2143
+ */
2144
+ getRowId(rowIndex) {
2145
+ const result = this.nativeElement.getRowId(rowIndex);
2146
+ return result;
2147
+ }
2148
+
2149
+ /** Gets whether a column's drop-down menu is opened.
2150
+ * @returns {boolean}
2151
+ */
2152
+ hasMenu() {
2153
+ const result = this.nativeElement.hasMenu();
2154
+ return result;
2155
+ }
2156
+
2157
+ /** This method returns true, if any rows in the Grid are selected.
2158
+ * @returns {boolean}
2159
+ */
2160
+ hasSelectedRows() {
2161
+ const result = this.nativeElement.hasSelectedRows();
2162
+ return result;
2163
+ }
2164
+
2165
+ /** Hides the Details of a Row, when row details are enabled.
2166
+ * @param {string | number} rowId. row bound id
2167
+ */
2168
+ hideDetail(rowId){
2169
+ if (this.nativeElement.isRendered) {
2170
+ this.nativeElement.hideDetail(rowId);
2171
+ }
2172
+ else
2173
+ {
2174
+ this.nativeElement.whenRendered(() => {
2175
+ this.nativeElement.hideDetail(rowId);
2176
+ });
2177
+ }
2178
+ }
2179
+
2180
+ /** Highlights a column. Highlights a Grid column.
2181
+ * @param {string} dataField. column bound data field. For example, if you have a column with dataField: 'firstName', set 'firstName' here.
2182
+ */
2183
+ highlightColumn(dataField){
2184
+ if (this.nativeElement.isRendered) {
2185
+ this.nativeElement.highlightColumn(dataField);
2186
+ }
2187
+ else
2188
+ {
2189
+ this.nativeElement.whenRendered(() => {
2190
+ this.nativeElement.highlightColumn(dataField);
2191
+ });
2192
+ }
2193
+ }
2194
+
2195
+ /** Highlights a cell. Calling the method a second time toggle the highlight state.
2196
+ * @param {string | number} rowId. row bound id
2197
+ * @param {string} dataField. column bound data field. For example, if you have a column with dataField: 'firstName', set 'firstName' here.
2198
+ * @param {string} className?. CSS Class Name
2199
+ */
2200
+ highlightCell(rowId, dataField, className){
2201
+ if (this.nativeElement.isRendered) {
2202
+ this.nativeElement.highlightCell(rowId, dataField, className);
2203
+ }
2204
+ else
2205
+ {
2206
+ this.nativeElement.whenRendered(() => {
2207
+ this.nativeElement.highlightCell(rowId, dataField, className);
2208
+ });
2209
+ }
2210
+ }
2211
+
2212
+ /** Highlights a row. Calling the method a second time toggle the highlight state.
2213
+ * @param {string | number} rowId. row bound id
2214
+ * @param {string} className?. CSS Class Name
2215
+ */
2216
+ highlightRow(rowId, className){
2217
+ if (this.nativeElement.isRendered) {
2218
+ this.nativeElement.highlightRow(rowId, className);
2219
+ }
2220
+ else
2221
+ {
2222
+ this.nativeElement.whenRendered(() => {
2223
+ this.nativeElement.highlightRow(rowId, className);
2224
+ });
2225
+ }
2226
+ }
2227
+
2228
+ /** Inserts a row. When batch editing is enabled, the row is not saved until the batch edit is saved.
2229
+ * @param {any} data. row data matching the data source
2230
+ * @param {number} index?. Determines the insert index. The default value is the last index.
2231
+ * @param {{(row: GridRow): void}} callback?. Sets a callback function, which is called after the new row is added. The callback's argument is the new row.
2232
+ */
2233
+ insertRow(data, index, callback){
2234
+ if (this.nativeElement.isRendered) {
2235
+ this.nativeElement.insertRow(data, index, callback);
2236
+ }
2237
+ else
2238
+ {
2239
+ this.nativeElement.whenRendered(() => {
2240
+ this.nativeElement.insertRow(data, index, callback);
2241
+ });
2242
+ }
2243
+ }
2244
+
2245
+ /** Loads a previously saved Grid state. You can pass a state name when there is a state which was previously saved with the saveState(stateName) method call or a state object returned by the saveState or getState method calls. The state object is required to be a JSON object with the following fields: 'sort', 'columns', 'expandedRows', 'filter', 'groups', 'paging', 'selectedCells', 'selectedrows'. The 'sort' represents an object which contains the sorted columns. Each key in that json object is the column's dataField item which has sortOrder: string and sortIndex: int properties. The sortOrder could be either 'asc' or 'desc'. Similarly, the filter object contains the filtered columns. Each key in that object is a column data field and each value has 'filters' array property with the applied filters to the column. The 'columns' property contains an array of columns with saved properties such as visible, width and freeze. The 'expandedRows' property contains the indexes of the expanded rows. The 'groups' property contains the grouped column data fields and the selectedCells and selectedRows include information about the cells or rows selection. These depend on the selection mode used in the Grid. The 'paging' object includes the sub-properties 'count', 'index' and 'size' which determine the count of pages, the current page's index and the page size.
2246
+ * @param {any} state. state name or state object
2247
+ * @returns {any}
2248
+ */
2249
+ loadState(state) {
2250
+ const result = this.nativeElement.loadState(state);
2251
+ return result;
2252
+ }
2253
+
2254
+ /** Opens a column drop-down menu.
2255
+ * @param {string} dataField. column bound data field. For example, if you have a column with dataField: 'firstName', set 'firstName' here.
2256
+ */
2257
+ openMenu(dataField){
2258
+ if (this.nativeElement.isRendered) {
2259
+ this.nativeElement.openMenu(dataField);
2260
+ }
2261
+ else
2262
+ {
2263
+ this.nativeElement.whenRendered(() => {
2264
+ this.nativeElement.openMenu(dataField);
2265
+ });
2266
+ }
2267
+ }
2268
+
2269
+ /** Opens a context menu. Note that context menu should be enabled.
2270
+ * @param {number} left. Left Position.
2271
+ * @param {number} top. Top Position.
2272
+ */
2273
+ openContextMenu(left, top){
2274
+ if (this.nativeElement.isRendered) {
2275
+ this.nativeElement.openContextMenu(left, top);
2276
+ }
2277
+ else
2278
+ {
2279
+ this.nativeElement.whenRendered(() => {
2280
+ this.nativeElement.openContextMenu(left, top);
2281
+ });
2282
+ }
2283
+ }
2284
+
2285
+ /** Prints the Grid data. The method uses the options of the dataExport property. When printed, the Grid will not display any scrollbars so all rows and columns will be displayed. The grid will auto resize width and height to fit all contents. To customize the printing options, you can use the dataExport property.
2286
+ */
2287
+ print(){
2288
+ if (this.nativeElement.isRendered) {
2289
+ this.nativeElement.print();
2290
+ }
2291
+ else
2292
+ {
2293
+ this.nativeElement.whenRendered(() => {
2294
+ this.nativeElement.print();
2295
+ });
2296
+ }
2297
+ }
2298
+
2299
+ /** Renders the grid. This method will make a full-refresh like in the initial Grid creation. It will create Rows, Columns and Cells HTML Elements and then refresh the Grid layout.
2300
+ */
2301
+ refresh(){
2302
+ if (this.nativeElement.isRendered) {
2303
+ this.nativeElement.refresh();
2304
+ }
2305
+ else
2306
+ {
2307
+ this.nativeElement.whenRendered(() => {
2308
+ this.nativeElement.refresh();
2309
+ });
2310
+ }
2311
+ }
2312
+
2313
+ /** Refreshes the grid with the current property values. This method will refresh the Grid layout.
2314
+ */
2315
+ refreshView(){
2316
+ if (this.nativeElement.isRendered) {
2317
+ this.nativeElement.refreshView();
2318
+ }
2319
+ else
2320
+ {
2321
+ this.nativeElement.whenRendered(() => {
2322
+ this.nativeElement.refreshView();
2323
+ });
2324
+ }
2325
+ }
2326
+
2327
+ /** Refreshes the grid cells in view. The method is useful for live-updates of cell values.
2328
+ */
2329
+ resetState(){
2330
+ if (this.nativeElement.isRendered) {
2331
+ this.nativeElement.resetState();
2332
+ }
2333
+ else
2334
+ {
2335
+ this.nativeElement.whenRendered(() => {
2336
+ this.nativeElement.resetState();
2337
+ });
2338
+ }
2339
+ }
2340
+
2341
+ /** Resets the Grid state.
2342
+ * @param {string} dataField. column bound data field. For example, if you have a column with dataField: 'firstName', set 'firstName' here.
2343
+ * @param {boolean} refreshFilters?. Set this to false, if you need to make multiple removeFilter calls.
2344
+ */
2345
+ removeFilter(dataField, refreshFilters){
2346
+ if (this.nativeElement.isRendered) {
2347
+ this.nativeElement.removeFilter(dataField, refreshFilters);
2348
+ }
2349
+ else
2350
+ {
2351
+ this.nativeElement.whenRendered(() => {
2352
+ this.nativeElement.removeFilter(dataField, refreshFilters);
2353
+ });
2354
+ }
2355
+ }
2356
+
2357
+ /** Removes a column filter.
2358
+ * @param {string} dataField. column bound data field. For example, if you have a column with dataField: 'firstName', set 'firstName' here.
2359
+ */
2360
+ removeGroup(dataField){
2361
+ if (this.nativeElement.isRendered) {
2362
+ this.nativeElement.removeGroup(dataField);
2363
+ }
2364
+ else
2365
+ {
2366
+ this.nativeElement.whenRendered(() => {
2367
+ this.nativeElement.removeGroup(dataField);
2368
+ });
2369
+ }
2370
+ }
2371
+
2372
+ /** Removes a group by data field. This method will remove a group to the Grid when grouping is enabled.
2373
+ * @param {string} dataField. column bound data field. For example, if you have a column with dataField: 'firstName', set 'firstName' here.
2374
+ */
2375
+ removeSort(dataField){
2376
+ if (this.nativeElement.isRendered) {
2377
+ this.nativeElement.removeSort(dataField);
2378
+ }
2379
+ else
2380
+ {
2381
+ this.nativeElement.whenRendered(() => {
2382
+ this.nativeElement.removeSort(dataField);
2383
+ });
2384
+ }
2385
+ }
2386
+
2387
+ /** Removes a sorting by data field. This method will remove a sorting from a Grid column.
2388
+ */
2389
+ refreshSort(){
2390
+ if (this.nativeElement.isRendered) {
2391
+ this.nativeElement.refreshSort();
2392
+ }
2393
+ else
2394
+ {
2395
+ this.nativeElement.whenRendered(() => {
2396
+ this.nativeElement.refreshSort();
2397
+ });
2398
+ }
2399
+ }
2400
+
2401
+ /** Re-sorts the Grid by using the already applied column sortings and re-renders the Grid.
2402
+ */
2403
+ revertBatchEdit(){
2404
+ if (this.nativeElement.isRendered) {
2405
+ this.nativeElement.revertBatchEdit();
2406
+ }
2407
+ else
2408
+ {
2409
+ this.nativeElement.whenRendered(() => {
2410
+ this.nativeElement.revertBatchEdit();
2411
+ });
2412
+ }
2413
+ }
2414
+
2415
+ /** Reverts the batch edit changes. This method cancels all changes made by the end-user.
2416
+ * @param {string | number} dataField. The data field or column index of the first grid column.
2417
+ * @param {string | number} referenceDataField. The data field or column index of the second grid column.
2418
+ * @param {boolean} insertAfter?. Determines whether to insert the first column after the reference column.
2419
+ */
2420
+ reorderColumns(dataField, referenceDataField, insertAfter){
2421
+ if (this.nativeElement.isRendered) {
2422
+ this.nativeElement.reorderColumns(dataField, referenceDataField, insertAfter);
2423
+ }
2424
+ else
2425
+ {
2426
+ this.nativeElement.whenRendered(() => {
2427
+ this.nativeElement.reorderColumns(dataField, referenceDataField, insertAfter);
2428
+ });
2429
+ }
2430
+ }
2431
+
2432
+ /** Reorders two DataGrid columns.
2433
+ * @param {string} name?. state name
2434
+ * @returns {any}
2435
+ */
2436
+ saveState(name) {
2437
+ const result = this.nativeElement.saveState(name);
2438
+ return result;
2439
+ }
2440
+
2441
+ /** Saves the Grid state and returns a JSON object with the following fields: 'sort', 'columns', 'expandedRows', 'filter', 'groups', 'paging', 'selectedCells', 'selectedrows'. The 'sort' represents an object which contains the sorted columns. Each key in that json object is the column's dataField item which has sortOrder: string and sortIndex: int properties. The sortOrder could be either 'asc' or 'desc'. Similarly, the filter object contains the filtered columns. Each key in that object is a column data field and each value has 'filters' array property with the applied filters to the column. The 'columns' property contains an array of columns with saved properties such as visible, width and freeze. The 'expandedRows' property contains the indexes of the expanded rows. The 'groups' property contains the grouped column data fields and the selectedCells and selectedRows include information about the cells or rows selection. These depend on the selection mode used in the Grid. The 'paging' object includes the sub-properties 'count', 'index' and 'size' which determine the count of pages, the current page's index and the page size.
2442
+ * @param {string} dataField. column bound data field. For example, if you have a column with dataField: 'firstName', set 'firstName' here.
2443
+ * @param {string | null} sortOrder. column's sort order. Use 'asc', 'desc' or null.
2444
+ */
2445
+ sortBy(dataField, sortOrder){
2446
+ if (this.nativeElement.isRendered) {
2447
+ this.nativeElement.sortBy(dataField, sortOrder);
2448
+ }
2449
+ else
2450
+ {
2451
+ this.nativeElement.whenRendered(() => {
2452
+ this.nativeElement.sortBy(dataField, sortOrder);
2453
+ });
2454
+ }
2455
+ }
2456
+
2457
+ /** Sorts the Grid by a data field. This method will add or remove sorting, when sorting is enabled. To remove the sorting, use 'null' for the sortOrder parameter.
2458
+ * @param {string | number} dataField. The data field or column index of the first grid column.
2459
+ * @param {string | number} referenceDataField. The data field or column index of the second grid column.
2460
+ */
2461
+ swapColumns(dataField, referenceDataField){
2462
+ if (this.nativeElement.isRendered) {
2463
+ this.nativeElement.swapColumns(dataField, referenceDataField);
2464
+ }
2465
+ else
2466
+ {
2467
+ this.nativeElement.whenRendered(() => {
2468
+ this.nativeElement.swapColumns(dataField, referenceDataField);
2469
+ });
2470
+ }
2471
+ }
2472
+
2473
+ /** Swaps two DataGrid columns.
2474
+ */
2475
+ saveBatchEdit(){
2476
+ if (this.nativeElement.isRendered) {
2477
+ this.nativeElement.saveBatchEdit();
2478
+ }
2479
+ else
2480
+ {
2481
+ this.nativeElement.whenRendered(() => {
2482
+ this.nativeElement.saveBatchEdit();
2483
+ });
2484
+ }
2485
+ }
2486
+
2487
+ /** Saves the batch edit changes. This method confirms the editing changes made by the end-user.
2488
+ * @param {string | number} rowId. row bound id
2489
+ * @param {string} dataField?. column bound data field
2490
+ */
2491
+ select(rowId, dataField){
2492
+ if (this.nativeElement.isRendered) {
2493
+ this.nativeElement.select(rowId, dataField);
2494
+ }
2495
+ else
2496
+ {
2497
+ this.nativeElement.whenRendered(() => {
2498
+ this.nativeElement.select(rowId, dataField);
2499
+ });
2500
+ }
2501
+ }
2502
+
2503
+ /** Selects a row, cell or column.
2504
+ * @param {string | number} rowId. row bound id
2505
+ * @param {string} dataField. column bound data field
2506
+ * @param {string | number} endRowId. row bound id
2507
+ * @param {string} endDataField. column bound data field
2508
+ */
2509
+ selectRange(rowId, dataField, endRowId, endDataField){
2510
+ if (this.nativeElement.isRendered) {
2511
+ this.nativeElement.selectRange(rowId, dataField, endRowId, endDataField);
2512
+ }
2513
+ else
2514
+ {
2515
+ this.nativeElement.whenRendered(() => {
2516
+ this.nativeElement.selectRange(rowId, dataField, endRowId, endDataField);
2517
+ });
2518
+ }
2519
+ }
2520
+
2521
+ /** Selects a range of rows, cells or columns. The result of the method depends on the selection configuration of the Grid.
2522
+ * @param {string | number} rowId. row bound id
2523
+ * @param {string | number} endRowId. row bound id
2524
+ */
2525
+ selectRowsRange(rowId, endRowId){
2526
+ if (this.nativeElement.isRendered) {
2527
+ this.nativeElement.selectRowsRange(rowId, endRowId);
2528
+ }
2529
+ else
2530
+ {
2531
+ this.nativeElement.whenRendered(() => {
2532
+ this.nativeElement.selectRowsRange(rowId, endRowId);
2533
+ });
2534
+ }
2535
+ }
2536
+
2537
+ /** Selects a range of rows.
2538
+ * @param {(string | number)[]} rowId. Array of row ids
2539
+ */
2540
+ selectRows(rowId){
2541
+ if (this.nativeElement.isRendered) {
2542
+ this.nativeElement.selectRows(rowId);
2543
+ }
2544
+ else
2545
+ {
2546
+ this.nativeElement.whenRendered(() => {
2547
+ this.nativeElement.selectRows(rowId);
2548
+ });
2549
+ }
2550
+ }
2551
+
2552
+ /** Selects multiple rows by their ids.
2553
+ */
2554
+ selectAllRows(){
2555
+ if (this.nativeElement.isRendered) {
2556
+ this.nativeElement.selectAllRows();
2557
+ }
2558
+ else
2559
+ {
2560
+ this.nativeElement.whenRendered(() => {
2561
+ this.nativeElement.selectAllRows();
2562
+ });
2563
+ }
2564
+ }
2565
+
2566
+ /** Selects all rows.
2567
+ * @param {number[]} rowIndex. Array of row indexes
2568
+ */
2569
+ selectRowsByIndex(rowIndex){
2570
+ if (this.nativeElement.isRendered) {
2571
+ this.nativeElement.selectRowsByIndex(rowIndex);
2572
+ }
2573
+ else
2574
+ {
2575
+ this.nativeElement.whenRendered(() => {
2576
+ this.nativeElement.selectRowsByIndex(rowIndex);
2577
+ });
2578
+ }
2579
+ }
2580
+
2581
+ /** Selects multiple rows by their index.
2582
+ * @param {string} query. Search query
2583
+ * @param {string} dataField?. Column data field.
2584
+ * @param {string} condition?. Conditions which you can use in the expressions: '=', 'EQUAL','&lt;&gt;', 'NOT_EQUAL', '!=', '&lt;', 'LESS_THAN','&gt;', 'GREATER_THAN', '&lt;=', 'LESS_THAN_OR_EQUAL', '&gt;=', 'GREATER_THAN_OR_EQUAL','starts with', 'STARTS_WITH','ends with', 'ENDS_WITH', '', 'EMPTY', 'CONTAINS','DOES_NOT_CONTAIN', 'NULL','NOT_NULL'
2585
+ */
2586
+ selectRowsByQuery(query, dataField, condition){
2587
+ if (this.nativeElement.isRendered) {
2588
+ this.nativeElement.selectRowsByQuery(query, dataField, condition);
2589
+ }
2590
+ else
2591
+ {
2592
+ this.nativeElement.whenRendered(() => {
2593
+ this.nativeElement.selectRowsByQuery(query, dataField, condition);
2594
+ });
2595
+ }
2596
+ }
2597
+
2598
+ /** Selects rows by using a query. Example: grid.selectRowsByQuery('nancy'); selects all rows that have 'nancy' value. Example 2: grid.selectRowsByQuery('nancy, davolio'); selects all rows that have 'nancy' and 'davolio' values in the same row. Example 3: grid.selectRowsByQuery(5, 'quantity', '>'); selects all rows where the value of the 'quantity' field is > 5.
2599
+ * @param {(string | number)[]} rowIds. Array of row ids
2600
+ * @param {string[]} dataFields. Array of data fields.
2601
+ */
2602
+ selectCells(rowIds, dataFields){
2603
+ if (this.nativeElement.isRendered) {
2604
+ this.nativeElement.selectCells(rowIds, dataFields);
2605
+ }
2606
+ else
2607
+ {
2608
+ this.nativeElement.whenRendered(() => {
2609
+ this.nativeElement.selectCells(rowIds, dataFields);
2610
+ });
2611
+ }
2612
+ }
2613
+
2614
+ /** Selects multiple cells by their ids and dataFields. Example: grid.selectCells([0, 1, 2], ['firstName', 'quantity', 'date']); - selects the 'firstName', 'quantity' and 'date' cells from the first, second and third rows.
2615
+ * @param {string} query. Search query
2616
+ */
2617
+ selectCellsByQuery(query){
2618
+ if (this.nativeElement.isRendered) {
2619
+ this.nativeElement.selectCellsByQuery(query);
2620
+ }
2621
+ else
2622
+ {
2623
+ this.nativeElement.whenRendered(() => {
2624
+ this.nativeElement.selectCellsByQuery(query);
2625
+ });
2626
+ }
2627
+ }
2628
+
2629
+ /** Selects cells by using a query. Example: grid.selectCellsByQuery('nancy'); selects all cells that have 'nancy' value. Example 2: grid.selectCellsByQuery('nancy, davolio'); selects all cells that have 'nancy' and 'davolio' values in the same row.
2630
+ * @param {string | number} rowId. row bound id
2631
+ * @param {string} dataField. column bound data field. For example, if you have a column with dataField: 'firstName', set 'firstName' here.
2632
+ * @param {string | number | Date | boolean} value. New Cell value.
2633
+ */
2634
+ setCellValue(rowId, dataField, value){
2635
+ if (this.nativeElement.isRendered) {
2636
+ this.nativeElement.setCellValue(rowId, dataField, value);
2637
+ }
2638
+ else
2639
+ {
2640
+ this.nativeElement.whenRendered(() => {
2641
+ this.nativeElement.setCellValue(rowId, dataField, value);
2642
+ });
2643
+ }
2644
+ }
2645
+
2646
+ /** Sets a new value to a cell.
2647
+ * @param {GridColumn[]} columns. Columns array.
2648
+ */
2649
+ setColumns(columns){
2650
+ if (this.nativeElement.isRendered) {
2651
+ this.nativeElement.setColumns(columns);
2652
+ }
2653
+ else
2654
+ {
2655
+ this.nativeElement.whenRendered(() => {
2656
+ this.nativeElement.setColumns(columns);
2657
+ });
2658
+ }
2659
+ }
2660
+
2661
+ /** Sets new columns to the Grid. The grid will redraw all the column headers, and then redraw all of the rows. By using 'setColumns', the grid will compare the new columns passed as argument to the method with existing columns. The Grid will automatically create new columns, keep old columns if they already exist and remove columns which are not in the 'setColumns' method argument. The benefit of that is that the state of the column like(sort, filter, width or other) will be kept, if the column exsits after the new columns are applied.
2662
+ * @param {string} dataField. column bound data field. For example, if you have a column with dataField: 'firstName', set 'firstName' here.
2663
+ * @param {string} propertyName. The column property's name.
2664
+ * @param {any} value. The new property value.
2665
+ */
2666
+ setColumnProperty(dataField, propertyName, value){
2667
+ if (this.nativeElement.isRendered) {
2668
+ this.nativeElement.setColumnProperty(dataField, propertyName, value);
2669
+ }
2670
+ else
2671
+ {
2672
+ this.nativeElement.whenRendered(() => {
2673
+ this.nativeElement.setColumnProperty(dataField, propertyName, value);
2674
+ });
2675
+ }
2676
+ }
2677
+
2678
+ /** Sets a property to a column.
2679
+ * @param {string | number} rowId. row bound id
2680
+ * @param {string} propertyName. The row property's name.
2681
+ * @param {any} value. The new property value.
2682
+ */
2683
+ setRowProperty(rowId, propertyName, value){
2684
+ if (this.nativeElement.isRendered) {
2685
+ this.nativeElement.setRowProperty(rowId, propertyName, value);
2686
+ }
2687
+ else
2688
+ {
2689
+ this.nativeElement.whenRendered(() => {
2690
+ this.nativeElement.setRowProperty(rowId, propertyName, value);
2691
+ });
2692
+ }
2693
+ }
2694
+
2695
+ /** Sets a property to a row.
2696
+ * @param {string | number} rowId. row bound id
2697
+ * @param {{background?: string, color?: string, fontSize?: string, fontFamily?: string, textDecoration?: string, fontStyle?: string, fontWeight?: string}} rowStyle. The row style object. The object may have one or all of the following properties: 'background', 'color', 'fontSize', 'fontFamily', 'textDecoration', 'fontStyle', 'fontWeight'.
2698
+ */
2699
+ setRowStyle(rowId, rowStyle){
2700
+ if (this.nativeElement.isRendered) {
2701
+ this.nativeElement.setRowStyle(rowId, rowStyle);
2702
+ }
2703
+ else
2704
+ {
2705
+ this.nativeElement.whenRendered(() => {
2706
+ this.nativeElement.setRowStyle(rowId, rowStyle);
2707
+ });
2708
+ }
2709
+ }
2710
+
2711
+ /** Sets a style to a row.
2712
+ * @param {string | number} rowId. row bound id
2713
+ * @param {string} dataField. Column bound field name.
2714
+ * @param {{background?: string, color?: string, fontSize?: string, fontFamily?: string, textDecoration?: string, fontStyle?: string, fontWeight?: string}} rowStyle. The cell style object. The object may have one or all of the following properties: 'background', 'color', 'fontSize', 'fontFamily', 'textDecoration', 'fontStyle', 'fontWeight'.
2715
+ */
2716
+ setCellStyle(rowId, dataField, rowStyle){
2717
+ if (this.nativeElement.isRendered) {
2718
+ this.nativeElement.setCellStyle(rowId, dataField, rowStyle);
2719
+ }
2720
+ else
2721
+ {
2722
+ this.nativeElement.whenRendered(() => {
2723
+ this.nativeElement.setCellStyle(rowId, dataField, rowStyle);
2724
+ });
2725
+ }
2726
+ }
2727
+
2728
+ /** Sets a style to a row.
2729
+ * @param {number} value. The new scroll position
2730
+ */
2731
+ setVerticalScrollValue(value){
2732
+ if (this.nativeElement.isRendered) {
2733
+ this.nativeElement.setVerticalScrollValue(value);
2734
+ }
2735
+ else
2736
+ {
2737
+ this.nativeElement.whenRendered(() => {
2738
+ this.nativeElement.setVerticalScrollValue(value);
2739
+ });
2740
+ }
2741
+ }
2742
+
2743
+ /** Sets the position of the vertical scrollbar. You can use this method in combination with the getVerticalScrollValue and getVerticalScrollMax.
2744
+ * @param {number} value. The new scroll position
2745
+ */
2746
+ setHorizontalScrollValue(value){
2747
+ if (this.nativeElement.isRendered) {
2748
+ this.nativeElement.setHorizontalScrollValue(value);
2749
+ }
2750
+ else
2751
+ {
2752
+ this.nativeElement.whenRendered(() => {
2753
+ this.nativeElement.setHorizontalScrollValue(value);
2754
+ });
2755
+ }
2756
+ }
2757
+
2758
+ /** Sets the position of the horizontal scrollbar. You can use this method in combination with the getHorizontalScrollValue and getHorizontalScrollMax.
2759
+ * @param {string | number} rowId. row bound id
2760
+ */
2761
+ showDetail(rowId){
2762
+ if (this.nativeElement.isRendered) {
2763
+ this.nativeElement.showDetail(rowId);
2764
+ }
2765
+ else
2766
+ {
2767
+ this.nativeElement.whenRendered(() => {
2768
+ this.nativeElement.showDetail(rowId);
2769
+ });
2770
+ }
2771
+ }
2772
+
2773
+ /** Shows the Details of a Row, when row details are enabled.
2774
+ * @param {string | number} rowId. row bound id
2775
+ * @param {any} data. row data matching the data source
2776
+ * @param {{(row: GridRow): void}} callback?. Sets a callback function, which is called after the row is updated. The callback's argument is the updated row.
2777
+ */
2778
+ updateRow(rowId, data, callback){
2779
+ if (this.nativeElement.isRendered) {
2780
+ this.nativeElement.updateRow(rowId, data, callback);
2781
+ }
2782
+ else
2783
+ {
2784
+ this.nativeElement.whenRendered(() => {
2785
+ this.nativeElement.updateRow(rowId, data, callback);
2786
+ });
2787
+ }
2788
+ }
2789
+
2790
+ /** Updates a row. When batch editing is enabled, the row is not saved until the batch edit is saved.
2791
+ * @param {string | number} rowId. row bound id
2792
+ * @param {string} dataField?. column bound data field. For example, if you have a column with dataField: 'firstName', set 'firstName' here.
2793
+ */
2794
+ unselect(rowId, dataField){
2795
+ if (this.nativeElement.isRendered) {
2796
+ this.nativeElement.unselect(rowId, dataField);
2797
+ }
2798
+ else
2799
+ {
2800
+ this.nativeElement.whenRendered(() => {
2801
+ this.nativeElement.unselect(rowId, dataField);
2802
+ });
2803
+ }
2804
+ }
2805
+
2806
+ /** Unselects a row, cell or column.
2807
+ * @param {string | number} rowId. row bound id
2808
+ */
2809
+ uncheckRow(rowId){
2810
+ if (this.nativeElement.isRendered) {
2811
+ this.nativeElement.uncheckRow(rowId);
2812
+ }
2813
+ else
2814
+ {
2815
+ this.nativeElement.whenRendered(() => {
2816
+ this.nativeElement.uncheckRow(rowId);
2817
+ });
2818
+ }
2819
+ }
2820
+
2821
+ /** Unchecks a TreeGrid row. Sets its check-box to false.
2822
+ */
2823
+ uncheckAllRows(){
2824
+ if (this.nativeElement.isRendered) {
2825
+ this.nativeElement.uncheckAllRows();
2826
+ }
2827
+ else
2828
+ {
2829
+ this.nativeElement.whenRendered(() => {
2830
+ this.nativeElement.uncheckAllRows();
2831
+ });
2832
+ }
2833
+ }
2834
+
2835
+ /** Unchecks all TreeGrid or Grouping rows. Sets all check-boxes to false.
2836
+ * @param {string | number} rowId. row bound id
2837
+ */
2838
+ toggleRow(rowId){
2839
+ if (this.nativeElement.isRendered) {
2840
+ this.nativeElement.toggleRow(rowId);
2841
+ }
2842
+ else
2843
+ {
2844
+ this.nativeElement.whenRendered(() => {
2845
+ this.nativeElement.toggleRow(rowId);
2846
+ });
2847
+ }
2848
+ }
2849
+
2850
+
2851
+
2852
+ constructor(props) {
2853
+ super(props);
2854
+ this.componentRef = React.createRef();
2855
+ }
2856
+
2857
+ componentDidRender(initialize) {
2858
+ const that = this;
2859
+ const props = {};
2860
+ const events = {};
2861
+ let styles = null;
2862
+ const stringifyCircularJSON = obj => {
2863
+ const seen = new WeakSet();
2864
+ return JSON.stringify(obj, (k, v) => {
2865
+ if (v !== null && typeof v === 'object') {
2866
+ if (seen.has(v)) return;
2867
+ seen.add(v);
2868
+ }
2869
+
2870
+ if (k === 'Smart') {
2871
+ return v;
2872
+ }
2873
+
2874
+ return v;
2875
+ });
2876
+ };
2877
+
2878
+ for(let prop in that.props) {
2879
+ if (prop === 'children') {
2880
+ continue;
2881
+ }
2882
+
2883
+ if (prop === 'style') {
2884
+ styles = that.props[prop];
2885
+ continue;
2886
+ }
2887
+
2888
+ if (prop.startsWith('on') && that.properties.indexOf(prop) === -1) {
2889
+ events[prop] = that.props[prop];
2890
+ continue;
2891
+ }
2892
+
2893
+ props[prop] = that.props[prop];
2894
+ }
2895
+
2896
+ if (initialize) {
2897
+ that.nativeElement = this.componentRef.current;
2898
+ if (that.nativeElement && !that.nativeElement.isCompleted) {
2899
+ that.nativeElement.reactStateProps = JSON.parse(stringifyCircularJSON(props));
2900
+ }
2901
+ }
2902
+
2903
+ if (initialize && that.nativeElement && that.nativeElement.isCompleted) {
2904
+ // return;
2905
+ }
2906
+
2907
+
2908
+ for(let prop in props) {
2909
+ if (prop === 'class' || prop === 'className') {
2910
+ const classNames = props[prop].trim().split(' ');
2911
+
2912
+ if (that.nativeElement._classNames) {
2913
+ const oldClassNames = that.nativeElement._classNames;
2914
+ for(let className in oldClassNames) {
2915
+ if (that.nativeElement.classList.contains(oldClassNames[className]) && oldClassNames[className] !== "") {
2916
+ that.nativeElement.classList.remove(oldClassNames[className]);
2917
+ }
2918
+ }
2919
+ }
2920
+
2921
+ that.nativeElement._classNames = classNames;
2922
+
2923
+ for(let className in classNames) {
2924
+ if (!that.nativeElement.classList.contains(classNames[className]) && classNames[className] !== "") {
2925
+ that.nativeElement.classList.add(classNames[className]);
2926
+ }
2927
+ }
2928
+
2929
+ continue;
2930
+ }
2931
+
2932
+ if (props[prop] !== that.nativeElement[prop]) {
2933
+ const normalizeProp = (str) => {
2934
+ return str.replace(/-([a-z])/g, function (g) {
2935
+ return g[1].toUpperCase();
2936
+ });
2937
+ }
2938
+
2939
+ if (prop === 'hover' || prop === 'active' || prop === 'focus' || prop === 'selected') {
2940
+ that.nativeElement.setAttribute(prop, '');
2941
+ }
2942
+
2943
+ const normalizedProp = normalizeProp(prop);
2944
+
2945
+ if (that.nativeElement[normalizedProp] === undefined) {
2946
+ that.nativeElement.setAttribute(prop, props[prop]);
2947
+ }
2948
+
2949
+ if (props[prop] !== undefined) {
2950
+ if (typeof props[prop] === 'object' && that.nativeElement.reactStateProps && !initialize) {
2951
+ if (stringifyCircularJSON(props[prop]) === stringifyCircularJSON(that.nativeElement.reactStateProps[normalizedProp])) {
2952
+ continue;
2953
+ }
2954
+ }
2955
+
2956
+ that.nativeElement[normalizedProp] = props[prop];
2957
+ }
2958
+ }
2959
+ }
2960
+
2961
+
2962
+ for(let eventName in events) {
2963
+ that[eventName] = events[eventName];
2964
+ that.nativeElement[eventName.toLowerCase()] = events[eventName];
2965
+ }
2966
+
2967
+ if (initialize) {
2968
+ Smart.Render();
2969
+
2970
+ if (that.onCreate) {
2971
+ that.onCreate();
2972
+ }
2973
+
2974
+ that.nativeElement.whenRendered(() => {
2975
+ if (that.onReady) {
2976
+ that.onReady();
2977
+ }
2978
+ });
2979
+ }
2980
+
2981
+ // setup styles.
2982
+
2983
+ if (styles) {
2984
+ for(let styleName in styles) {
2985
+ that.nativeElement.style[styleName] = styles[styleName];
2986
+ }
2987
+ }
2988
+ }
2989
+
2990
+ componentDidMount() {
2991
+ this.componentDidRender(true);
2992
+ }
2993
+
2994
+ componentDidUpdate() {
2995
+ this.componentDidRender(false);
2996
+ }
2997
+
2998
+ componentWillUnmount() {
2999
+ const that = this;
3000
+
3001
+ if (!that.nativeElement) {
3002
+ return;
3003
+ }
3004
+
3005
+ that.nativeElement.whenRenderedCallbacks = [];
3006
+
3007
+ for(let i = 0; i < that.eventListeners.length; i++){
3008
+ const eventName = that.eventListeners[i];
3009
+
3010
+ that.nativeElement.removeEventListener(eventName.substring(2).toLowerCase(), that[eventName]);
3011
+ }
3012
+ }
3013
+
3014
+ render() {
3015
+ return (
3016
+ React.createElement("smart-grid", { ref: this.componentRef }, this.props.children)
3017
+ )
3018
+ }
3019
+ }
3020
+
3021
+ export default Grid;