@sankhyalabs/ezui 0.0.0-bugfix-dev-KB-76362.1 → 0.0.0-bugfix-dev-KB-79020.0

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 (273) hide show
  1. package/dist/cjs/DataBinder-3b083480.js +445 -0
  2. package/dist/cjs/FocusResolver-885f2173.js +35 -0
  3. package/dist/cjs/ez-actions-button.cjs.entry.js +4 -3
  4. package/dist/cjs/ez-alert-list.cjs.entry.js +1 -1
  5. package/dist/cjs/ez-alert.cjs.entry.js +1 -1
  6. package/dist/cjs/ez-application.cjs.entry.js +1 -1
  7. package/dist/cjs/ez-badge.cjs.entry.js +1 -1
  8. package/dist/cjs/ez-breadcrumb.cjs.entry.js +1 -1
  9. package/dist/cjs/ez-button.cjs.entry.js +2 -2
  10. package/dist/cjs/ez-calendar.cjs.entry.js +1 -1
  11. package/dist/cjs/ez-card-item_3.cjs.entry.js +13 -20
  12. package/dist/cjs/ez-chart.cjs.entry.js +2 -2
  13. package/dist/cjs/ez-check.cjs.entry.js +1 -1
  14. package/dist/cjs/ez-chip.cjs.entry.js +1 -1
  15. package/dist/cjs/ez-collapsible-box.cjs.entry.js +1 -1
  16. package/dist/cjs/ez-combo-box.cjs.entry.js +49 -13
  17. package/dist/cjs/ez-custom-form-input_2.cjs.entry.js +5 -4
  18. package/dist/cjs/ez-date-input.cjs.entry.js +9 -3
  19. package/dist/cjs/ez-date-time-input.cjs.entry.js +9 -3
  20. package/dist/cjs/ez-dialog.cjs.entry.js +11 -3
  21. package/dist/cjs/ez-dropdown_2.cjs.entry.js +1 -1
  22. package/dist/cjs/ez-file-item.cjs.entry.js +1 -1
  23. package/dist/cjs/ez-form-view.cjs.entry.js +3 -3
  24. package/dist/cjs/ez-form.cjs.entry.js +6 -326
  25. package/dist/cjs/ez-grid.cjs.entry.js +14620 -70502
  26. package/dist/cjs/ez-guide-navigator.cjs.entry.js +1 -1
  27. package/dist/cjs/ez-icon.cjs.entry.js +2 -2
  28. package/dist/cjs/ez-list.cjs.entry.js +152 -101
  29. package/dist/cjs/ez-loading-bar.cjs.entry.js +1 -1
  30. package/dist/cjs/ez-modal-container.cjs.entry.js +1 -1
  31. package/dist/cjs/ez-modal.cjs.entry.js +2 -2
  32. package/dist/cjs/ez-multi-selection-list.cjs.entry.js +1 -1
  33. package/dist/cjs/ez-number-input.cjs.entry.js +9 -2
  34. package/dist/cjs/ez-popover.cjs.entry.js +2 -2
  35. package/dist/cjs/ez-popup.cjs.entry.js +2 -2
  36. package/dist/cjs/ez-radio-button.cjs.entry.js +1 -1
  37. package/dist/cjs/ez-scroller_2.cjs.entry.js +1 -1
  38. package/dist/cjs/ez-search.cjs.entry.js +68 -23
  39. package/dist/cjs/ez-sidebar-navigator.cjs.entry.js +1 -1
  40. package/dist/cjs/ez-split-button.cjs.entry.js +2 -2
  41. package/dist/cjs/ez-split-item.cjs.entry.js +1 -1
  42. package/dist/cjs/ez-split-panel.cjs.entry.js +15 -5
  43. package/dist/cjs/ez-tabselector.cjs.entry.js +1 -1
  44. package/dist/cjs/ez-text-area.cjs.entry.js +67 -5
  45. package/dist/cjs/ez-text-input.cjs.entry.js +80 -8
  46. package/dist/cjs/ez-time-input.cjs.entry.js +7 -1
  47. package/dist/cjs/ez-toast.cjs.entry.js +1 -1
  48. package/dist/cjs/ez-tree.cjs.entry.js +1 -1
  49. package/dist/cjs/ez-upload.cjs.entry.js +1 -1
  50. package/dist/cjs/ez-view-stack.cjs.entry.js +1 -1
  51. package/dist/cjs/ezui.cjs.js +2 -2
  52. package/dist/cjs/filter-column.cjs.entry.js +1 -1
  53. package/dist/cjs/{index-9e5554cb.js → index-a7b0c73d.js} +0 -3
  54. package/dist/cjs/loader.cjs.js +2 -2
  55. package/dist/collection/collection-manifest.json +1 -1
  56. package/dist/collection/components/ez-actions-button/ez-actions-button.js +3 -2
  57. package/dist/collection/components/ez-button/ez-button.css +2 -2
  58. package/dist/collection/components/ez-card-item/ez-card-item.css +14 -5
  59. package/dist/collection/components/ez-combo-box/ez-combo-box.css +12 -0
  60. package/dist/collection/components/ez-combo-box/ez-combo-box.js +76 -15
  61. package/dist/collection/components/ez-date-input/ez-date-input.js +35 -4
  62. package/dist/collection/components/ez-date-time-input/ez-date-time-input.js +35 -4
  63. package/dist/collection/components/ez-dialog/ez-dialog.css +3 -3
  64. package/dist/collection/components/ez-dialog/ez-dialog.js +9 -1
  65. package/dist/collection/components/ez-filter-input/ez-filter-input.css +0 -11
  66. package/dist/collection/components/ez-filter-input/ez-filter-input.js +22 -52
  67. package/dist/collection/components/ez-form/ez-form.js +1 -0
  68. package/dist/collection/components/ez-form-view/custom-input/ez-custom-form-input.js +3 -2
  69. package/dist/collection/components/ez-form-view/fieldbuilder/templates/TextInput.tpl.js +2 -2
  70. package/dist/collection/components/ez-grid/controller/ag-grid/AgGridController.js +100 -27
  71. package/dist/collection/components/ez-grid/controller/ag-grid/DataSource.js +8 -0
  72. package/dist/collection/components/ez-grid/controller/ag-grid/GridEditionManager.js +164 -46
  73. package/dist/collection/components/ez-grid/controller/ag-grid/components/EzGridCustomCellEditor.js +7 -0
  74. package/dist/collection/components/ez-grid/controller/ag-grid/editor/templates/ComboBox.tpl.js +1 -0
  75. package/dist/collection/components/ez-grid/controller/ag-grid/editor/templates/DateInput.tpl.js +1 -0
  76. package/dist/collection/components/ez-grid/controller/ag-grid/editor/templates/NumberInput.tpl.js +1 -0
  77. package/dist/collection/components/ez-grid/controller/ag-grid/editor/templates/Search.tpl.js +1 -0
  78. package/dist/collection/components/ez-grid/controller/ag-grid/editor/templates/TextInput.tpl.js +4 -1
  79. package/dist/collection/components/ez-grid/ez-grid.js +90 -3
  80. package/dist/collection/components/ez-icon/ez-icon.css +153 -149
  81. package/dist/collection/components/ez-list/ez-list.css +5 -5
  82. package/dist/collection/components/ez-list/ez-list.js +152 -170
  83. package/dist/collection/components/ez-modal/ez-modal.css +4 -0
  84. package/dist/collection/components/ez-modal/ez-modal.js +2 -2
  85. package/dist/collection/components/ez-number-input/ez-number-input.css +8 -0
  86. package/dist/collection/components/ez-number-input/ez-number-input.js +25 -0
  87. package/dist/collection/components/ez-popover/ez-popover.css +3 -10
  88. package/dist/collection/components/ez-popup/ez-popup.css +4 -8
  89. package/dist/collection/components/ez-search/ez-search.css +1 -1
  90. package/dist/collection/components/ez-search/ez-search.js +94 -24
  91. package/dist/collection/components/ez-split-button/ez-split-button.css +2 -2
  92. package/dist/collection/components/ez-split-panel/ez-split-panel.js +35 -4
  93. package/dist/collection/components/ez-split-panel/interfaces/IPanelSizeInfo.js +1 -0
  94. package/dist/collection/components/ez-text-area/ez-text-area.css +49 -0
  95. package/dist/collection/components/ez-text-area/ez-text-area.js +102 -2
  96. package/dist/collection/components/ez-text-input/ez-text-input.css +33 -53
  97. package/dist/collection/components/ez-text-input/ez-text-input.js +88 -6
  98. package/dist/collection/components/ez-time-input/ez-time-input.js +24 -0
  99. package/dist/collection/utils/FocusResolver.js +31 -0
  100. package/dist/collection/utils/ResponsiveInputUtils.js +26 -0
  101. package/dist/collection/utils/form/DataBinder.js +18 -3
  102. package/dist/collection/utils/form/FormMetadata.js +1 -1
  103. package/dist/collection/utils/interfaces/AbstractFieldMetadata.js +1 -1
  104. package/dist/custom-elements/index.js +15381 -70913
  105. package/dist/esm/DataBinder-02fa9bb9.js +441 -0
  106. package/dist/esm/FocusResolver-1ccbf850.js +33 -0
  107. package/dist/esm/ez-actions-button.entry.js +4 -3
  108. package/dist/esm/ez-alert-list.entry.js +1 -1
  109. package/dist/esm/ez-alert.entry.js +1 -1
  110. package/dist/esm/ez-application.entry.js +1 -1
  111. package/dist/esm/ez-badge.entry.js +1 -1
  112. package/dist/esm/ez-breadcrumb.entry.js +1 -1
  113. package/dist/esm/ez-button.entry.js +2 -2
  114. package/dist/esm/ez-calendar.entry.js +1 -1
  115. package/dist/esm/ez-card-item_3.entry.js +13 -20
  116. package/dist/esm/ez-chart.entry.js +2 -2
  117. package/dist/esm/ez-check.entry.js +1 -1
  118. package/dist/esm/ez-chip.entry.js +1 -1
  119. package/dist/esm/ez-collapsible-box.entry.js +1 -1
  120. package/dist/esm/ez-combo-box.entry.js +50 -14
  121. package/dist/esm/ez-custom-form-input_2.entry.js +5 -4
  122. package/dist/esm/ez-date-input.entry.js +9 -3
  123. package/dist/esm/ez-date-time-input.entry.js +9 -3
  124. package/dist/esm/ez-dialog.entry.js +11 -3
  125. package/dist/esm/ez-dropdown_2.entry.js +1 -1
  126. package/dist/esm/ez-file-item.entry.js +1 -1
  127. package/dist/esm/ez-form-view.entry.js +3 -3
  128. package/dist/esm/ez-form.entry.js +5 -325
  129. package/dist/esm/ez-grid.entry.js +14589 -70471
  130. package/dist/esm/ez-guide-navigator.entry.js +1 -1
  131. package/dist/esm/ez-icon.entry.js +2 -2
  132. package/dist/esm/ez-list.entry.js +153 -102
  133. package/dist/esm/ez-loading-bar.entry.js +1 -1
  134. package/dist/esm/ez-modal-container.entry.js +1 -1
  135. package/dist/esm/ez-modal.entry.js +2 -2
  136. package/dist/esm/ez-multi-selection-list.entry.js +1 -1
  137. package/dist/esm/ez-number-input.entry.js +9 -2
  138. package/dist/esm/ez-popover.entry.js +2 -2
  139. package/dist/esm/ez-popup.entry.js +2 -2
  140. package/dist/esm/ez-radio-button.entry.js +1 -1
  141. package/dist/esm/ez-scroller_2.entry.js +1 -1
  142. package/dist/esm/ez-search.entry.js +68 -23
  143. package/dist/esm/ez-sidebar-navigator.entry.js +1 -1
  144. package/dist/esm/ez-split-button.entry.js +2 -2
  145. package/dist/esm/ez-split-item.entry.js +1 -1
  146. package/dist/esm/ez-split-panel.entry.js +15 -5
  147. package/dist/esm/ez-tabselector.entry.js +1 -1
  148. package/dist/esm/ez-text-area.entry.js +67 -5
  149. package/dist/esm/ez-text-input.entry.js +80 -8
  150. package/dist/esm/ez-time-input.entry.js +7 -1
  151. package/dist/esm/ez-toast.entry.js +1 -1
  152. package/dist/esm/ez-tree.entry.js +1 -1
  153. package/dist/esm/ez-upload.entry.js +1 -1
  154. package/dist/esm/ez-view-stack.entry.js +1 -1
  155. package/dist/esm/ezui.js +3 -3
  156. package/dist/esm/filter-column.entry.js +1 -1
  157. package/dist/esm/{index-5a720e56.js → index-baa5e267.js} +1 -3
  158. package/dist/esm/loader.js +3 -3
  159. package/dist/ezui/ezui.esm.js +1 -1
  160. package/dist/ezui/{p-e6b38ade.entry.js → p-0306dff7.entry.js} +1 -1
  161. package/dist/ezui/p-039a95bd.entry.js +1 -0
  162. package/dist/ezui/{p-91ccae0c.entry.js → p-09de35a2.entry.js} +1 -1
  163. package/dist/ezui/p-0a75bb05.entry.js +1 -0
  164. package/dist/ezui/p-0db68715.entry.js +1 -0
  165. package/dist/ezui/p-151fc744.entry.js +1 -0
  166. package/dist/ezui/p-15d7af92.entry.js +1 -0
  167. package/dist/ezui/{p-b2f6bc0a.entry.js → p-17be134a.entry.js} +1 -1
  168. package/dist/ezui/p-19098a3f.entry.js +1 -0
  169. package/dist/ezui/{p-81461d2f.entry.js → p-1e7a8633.entry.js} +1 -1
  170. package/dist/ezui/{p-6b51c9cc.entry.js → p-1f50fa05.entry.js} +1 -1
  171. package/dist/ezui/{p-e4c7eb39.js → p-23a36bb6.js} +2 -2
  172. package/dist/ezui/p-2b46b37b.entry.js +1 -0
  173. package/dist/ezui/p-2bb2a0c4.entry.js +1 -0
  174. package/dist/ezui/p-3175fe8c.entry.js +1 -0
  175. package/dist/ezui/p-43b41d3e.entry.js +309 -0
  176. package/dist/ezui/{p-0378416a.entry.js → p-44caad9a.entry.js} +1 -1
  177. package/dist/ezui/p-455e737c.js +1 -0
  178. package/dist/ezui/p-4575d511.entry.js +1 -0
  179. package/dist/ezui/{p-7567ccdd.entry.js → p-555c9018.entry.js} +1 -1
  180. package/dist/ezui/{p-6fc26622.entry.js → p-5ed81457.entry.js} +1 -1
  181. package/dist/ezui/{p-f1c2c19e.entry.js → p-650e4b6d.entry.js} +1 -1
  182. package/dist/ezui/{p-554522db.entry.js → p-6d79930d.entry.js} +1 -1
  183. package/dist/ezui/{p-fc194825.entry.js → p-6e429cff.entry.js} +1 -1
  184. package/dist/ezui/{p-3b546374.entry.js → p-7409eeaa.entry.js} +1 -1
  185. package/dist/ezui/{p-11bfeca3.entry.js → p-77a4bd35.entry.js} +1 -1
  186. package/dist/ezui/p-783ea398.entry.js +1 -0
  187. package/dist/ezui/p-7ed30844.entry.js +1 -0
  188. package/dist/ezui/{p-e18d9e6a.entry.js → p-7fdd479f.entry.js} +1 -1
  189. package/dist/ezui/p-7fde6c1d.entry.js +1 -0
  190. package/dist/ezui/p-8481a08a.entry.js +1 -0
  191. package/dist/ezui/{p-1b08bf3c.entry.js → p-8888d9ed.entry.js} +1 -1
  192. package/dist/ezui/{p-82fa4b09.entry.js → p-8df1ca33.entry.js} +1 -1
  193. package/dist/ezui/{p-e7395eae.entry.js → p-90bcd2ba.entry.js} +1 -1
  194. package/dist/ezui/{p-a921e3e7.entry.js → p-990b4318.entry.js} +1 -1
  195. package/dist/ezui/{p-c2b20f78.entry.js → p-9f5fa3f9.entry.js} +1 -1
  196. package/dist/ezui/p-a5b91a77.entry.js +1 -0
  197. package/dist/ezui/p-a80b1287.entry.js +1 -0
  198. package/dist/ezui/{p-30951bd7.entry.js → p-baf80b13.entry.js} +1 -1
  199. package/dist/ezui/p-bc2f844e.entry.js +1 -0
  200. package/dist/ezui/p-bfad39eb.entry.js +1 -0
  201. package/dist/ezui/{p-92748142.entry.js → p-c0d9c4f8.entry.js} +1 -1
  202. package/dist/ezui/{p-b858fc6e.entry.js → p-c3045972.entry.js} +1 -1
  203. package/dist/ezui/{p-a563df31.entry.js → p-c4320a39.entry.js} +1 -1
  204. package/dist/ezui/p-cd2e78f0.entry.js +1 -0
  205. package/dist/ezui/p-d0ca26fe.entry.js +1 -0
  206. package/dist/ezui/p-dc628ed3.js +1 -0
  207. package/dist/ezui/p-dc8b36c3.entry.js +1 -0
  208. package/dist/ezui/{p-bef7daac.entry.js → p-e347df9c.entry.js} +1 -1
  209. package/dist/ezui/{p-70f1c812.entry.js → p-f9e551de.entry.js} +1 -1
  210. package/dist/ezui/p-fec696ab.entry.js +1 -0
  211. package/dist/ezui/p-ffd246f5.entry.js +1 -0
  212. package/dist/types/components/ez-actions-button/ez-actions-button.d.ts +1 -0
  213. package/dist/types/components/ez-combo-box/ez-combo-box.d.ts +7 -1
  214. package/dist/types/components/ez-date-input/ez-date-input.d.ts +6 -1
  215. package/dist/types/components/ez-date-time-input/ez-date-time-input.d.ts +6 -1
  216. package/dist/types/components/ez-dialog/ez-dialog.d.ts +2 -0
  217. package/dist/types/components/ez-filter-input/ez-filter-input.d.ts +4 -11
  218. package/dist/types/components/ez-form-view/fieldbuilder/templates/TextInput.tpl.d.ts +1 -1
  219. package/dist/types/components/ez-grid/controller/EzGridController.d.ts +12 -0
  220. package/dist/types/components/ez-grid/controller/ag-grid/AgGridController.d.ts +7 -2
  221. package/dist/types/components/ez-grid/controller/ag-grid/DataSource.d.ts +2 -1
  222. package/dist/types/components/ez-grid/controller/ag-grid/GridEditionManager.d.ts +19 -7
  223. package/dist/types/components/ez-grid/controller/ag-grid/components/EzGridCustomCellEditor.d.ts +3 -1
  224. package/dist/types/components/ez-grid/controller/ag-grid/components/EzGridCustomCellRender.d.ts +1 -1
  225. package/dist/types/components/ez-grid/controller/ag-grid/components/EzGridCustomHeader.d.ts +1 -1
  226. package/dist/types/components/ez-grid/controller/ag-grid/components/cellRendererStatus.d.ts +1 -1
  227. package/dist/types/components/ez-grid/controller/ag-grid/components/selectionHeader.d.ts +1 -1
  228. package/dist/types/components/ez-grid/controller/ag-grid/editor/EzCellEditor.d.ts +1 -1
  229. package/dist/types/components/ez-grid/controller/ag-grid/editor/EzCellRender.d.ts +1 -1
  230. package/dist/types/components/ez-grid/controller/ag-grid/editor/IUICellEditor.d.ts +1 -0
  231. package/dist/types/components/ez-grid/controller/ag-grid/mock/Server.d.ts +1 -1
  232. package/dist/types/components/ez-grid/ez-grid.d.ts +11 -1
  233. package/dist/types/components/ez-list/ez-list.d.ts +3 -26
  234. package/dist/types/components/ez-modal/ez-modal.d.ts +1 -1
  235. package/dist/types/components/ez-number-input/ez-number-input.d.ts +4 -0
  236. package/dist/types/components/ez-search/ez-search.d.ts +10 -2
  237. package/dist/types/components/ez-split-panel/ez-split-panel.d.ts +4 -0
  238. package/dist/types/components/ez-split-panel/interfaces/IPanelSizeInfo.d.ts +9 -0
  239. package/dist/types/components/ez-text-area/ez-text-area.d.ts +17 -0
  240. package/dist/types/components/ez-text-input/ez-text-input.d.ts +9 -0
  241. package/dist/types/components/ez-time-input/ez-time-input.d.ts +4 -0
  242. package/dist/types/components.d.ts +114 -44
  243. package/dist/types/utils/FocusResolver.d.ts +5 -0
  244. package/dist/types/utils/ResponsiveInputUtils.d.ts +6 -0
  245. package/dist/types/utils/form/DataBinder.d.ts +3 -0
  246. package/package.json +11 -4
  247. package/dist/cjs/RecordValidationProcessor-10846595.js +0 -108
  248. package/dist/esm/RecordValidationProcessor-9c6cc267.js +0 -105
  249. package/dist/ezui/p-00687830.entry.js +0 -1
  250. package/dist/ezui/p-044d46d5.entry.js +0 -1
  251. package/dist/ezui/p-11b09aa1.entry.js +0 -1
  252. package/dist/ezui/p-190c190f.entry.js +0 -304
  253. package/dist/ezui/p-2de9f0aa.entry.js +0 -1
  254. package/dist/ezui/p-36180f4d.entry.js +0 -1
  255. package/dist/ezui/p-3f8c33e0.entry.js +0 -1
  256. package/dist/ezui/p-52100a6e.entry.js +0 -1
  257. package/dist/ezui/p-5a40c77a.entry.js +0 -1
  258. package/dist/ezui/p-61059f6b.entry.js +0 -1
  259. package/dist/ezui/p-68267f59.entry.js +0 -1
  260. package/dist/ezui/p-6ec40dec.entry.js +0 -1
  261. package/dist/ezui/p-823cc11b.entry.js +0 -1
  262. package/dist/ezui/p-85b500bb.entry.js +0 -1
  263. package/dist/ezui/p-868b56f7.entry.js +0 -1
  264. package/dist/ezui/p-8ac13678.entry.js +0 -1
  265. package/dist/ezui/p-940760bf.entry.js +0 -1
  266. package/dist/ezui/p-9e08ddb0.entry.js +0 -1
  267. package/dist/ezui/p-b2a1398f.entry.js +0 -1
  268. package/dist/ezui/p-ba5f4ee7.entry.js +0 -1
  269. package/dist/ezui/p-d40b93a7.entry.js +0 -1
  270. package/dist/ezui/p-d4aba783.entry.js +0 -1
  271. package/dist/ezui/p-e3ec7422.entry.js +0 -1
  272. package/dist/ezui/p-f291db18.entry.js +0 -1
  273. package/dist/ezui/p-f42855b9.js +0 -1
@@ -1,15 +1,16 @@
1
- import { UserInterface } from '@sankhyalabs/core';
2
- import { KeyCode, } from 'ag-grid-community';
1
+ import { LockManager, LockManagerOperation, UserInterface } from '@sankhyalabs/core';
2
+ import { KeyCode, } from "@ag-grid-community/core";
3
3
  import { RecordValidationProcessor } from '../../../../utils/validators/recordvalidator/RecordValidationProcessor';
4
4
  import EzCellEditor from './editor/EzCellEditor';
5
5
  import EzGridCustomCellEditor from './components/EzGridCustomCellEditor';
6
6
  import EzGridCustomCellRender from './components/EzGridCustomCellRender';
7
+ import { DataBinder } from '../../../../utils';
7
8
  export default class GridEditionManager {
8
- constructor(dataUnit, useEnterLikeTab, recordsValidator, editionIsDisabled, customEditors, customRenders, enableContinuousInsert, enableGridInsert) {
9
+ constructor(dataUnit, useEnterLikeTab, recordsValidator, editionIsDisabled, customEditors, customRenders, enableContinuousInsert, enableGridInsert, lockerId) {
9
10
  this._dataUnit = dataUnit;
10
11
  this._recordValidationProcessor = new RecordValidationProcessor(this._dataUnit, {
11
12
  getRequiredFields: () => this.getRequiredFields(),
12
- markAsInvalid: (invalidField, recordId) => { this.setInvalidCell(invalidField, recordId); },
13
+ markAsInvalid: (invalidField, recordId) => { this.pushInvalidCell(invalidField, recordId); },
13
14
  getMessageForField: () => null,
14
15
  }, recordsValidator);
15
16
  this._useEnterLikeTab = useEnterLikeTab;
@@ -18,16 +19,34 @@ export default class GridEditionManager {
18
19
  this._enableGridInsert = enableGridInsert;
19
20
  this._customEditors = customEditors;
20
21
  this._customRenders = customRenders;
22
+ this._lockerId = lockerId;
21
23
  }
22
24
  configureGrid(options) {
23
25
  this._gridOptions = options;
24
26
  options.readOnlyEdit = true;
25
27
  options.onCellEditRequest = evt => this.onCellEditRequest(evt);
28
+ options.onCellEditingStarted = async (evt) => {
29
+ var _a;
30
+ if (this._dataUnit.hasNewRecord()) {
31
+ this.handleCellEditingStartedRowAdd(evt);
32
+ }
33
+ else {
34
+ this._lastCellOpened = this._lastCellEdited = { rowIndex: evt.rowIndex, column: evt.column, rowPinned: undefined };
35
+ }
36
+ (_a = this._currentEditLock) === null || _a === void 0 ? void 0 : _a.call(this);
37
+ this._currentEditLock = LockManager.lock(this._lockerId, LockManagerOperation.TASKBAR_CLICK);
38
+ };
39
+ options.onCellEditingStopped = () => {
40
+ var _a;
41
+ (_a = this._currentEditLock) === null || _a === void 0 ? void 0 : _a.call(this);
42
+ };
26
43
  options.onCellKeyDown = evt => {
27
44
  if (evt.event && evt["column"]) {
28
45
  this.onCellKeyDown(evt);
29
46
  }
30
47
  };
48
+ options.isRowSelectable = (node) => this.isSelectableRow(node);
49
+ options.onCellFocused = () => this.lockFocusWhenAddRow();
31
50
  return options;
32
51
  }
33
52
  updateCurrentEditorGuiValue(updatedRowValue) {
@@ -40,37 +59,82 @@ export default class GridEditionManager {
40
59
  const value = updatedRowValue[fieldName];
41
60
  currentEditor.setGuiValue(value);
42
61
  }
62
+ lockFocusWhenAddRow() {
63
+ var _a, _b, _c, _d;
64
+ const api = this._gridOptions.api;
65
+ const newFocusCell = api.getFocusedCell();
66
+ const rowIndex = newFocusCell === null || newFocusCell === void 0 ? void 0 : newFocusCell.rowIndex;
67
+ const recordId = (_b = (_a = this._dataUnit.getAddedRecords()) === null || _a === void 0 ? void 0 : _a[0]) === null || _b === void 0 ? void 0 : _b.__record__id__;
68
+ const rowNode = api.getRowNode(recordId);
69
+ if (!this._dataUnit.hasNewRecord() || rowIndex == (rowNode === null || rowNode === void 0 ? void 0 : rowNode.rowIndex)) {
70
+ return;
71
+ }
72
+ const lastCell = (_d = (_c = this._lastCellOpened) !== null && _c !== void 0 ? _c : this._lastCellEdited) !== null && _d !== void 0 ? _d : this._lastCellClicked;
73
+ if ((lastCell === null || lastCell === void 0 ? void 0 : lastCell.rowIndex) < (rowNode === null || rowNode === void 0 ? void 0 : rowNode.rowIndex)) {
74
+ return;
75
+ }
76
+ api.clearFocusedCell();
77
+ if (!lastCell || (rowNode === null || rowNode === void 0 ? void 0 : rowNode.rowIndex) == undefined) {
78
+ return;
79
+ }
80
+ lastCell.rowIndex = rowNode === null || rowNode === void 0 ? void 0 : rowNode.rowIndex;
81
+ this.focusOnCell(lastCell);
82
+ }
83
+ handleCellEditingStartedRowAdd(evt) {
84
+ var _a, _b, _c, _d, _e;
85
+ const nodeId = (_a = evt.node) === null || _a === void 0 ? void 0 : _a.id;
86
+ const addedRecordId = (_c = (_b = this._dataUnit.getAddedRecords()) === null || _b === void 0 ? void 0 : _b[0]) === null || _c === void 0 ? void 0 : _c.__record__id__;
87
+ if (nodeId == addedRecordId) {
88
+ this._lastCellOpened = this._lastCellEdited = { rowIndex: evt.rowIndex, column: evt === null || evt === void 0 ? void 0 : evt.column, rowPinned: undefined };
89
+ return;
90
+ }
91
+ evt.api.stopEditing();
92
+ const rowIndex = (_d = evt.api.getRowNode(addedRecordId)) === null || _d === void 0 ? void 0 : _d.rowIndex;
93
+ this._lastCellOpened = this._lastCellEdited = { rowIndex: rowIndex, column: (_e = this._lastCellEdited) === null || _e === void 0 ? void 0 : _e.column, rowPinned: undefined };
94
+ }
95
+ isSelectableRow(node) {
96
+ if (!this._dataUnit.hasNewRecord()) {
97
+ return true;
98
+ }
99
+ if (!this._dataUnit.isNewRecord(node.id)) {
100
+ return false;
101
+ }
102
+ return true;
103
+ }
43
104
  canContinuousInsert() {
44
105
  var _a;
45
106
  return this._enableContinuousInsert && (this._dataUnit.records.length - 1) === ((_a = this._lastCellEdited) === null || _a === void 0 ? void 0 : _a.rowIndex);
46
107
  }
47
- proceedAutoSave() {
108
+ async proceedAutoSave() {
48
109
  if (!this._dataUnit.isDirty()) {
49
110
  this.saveSuccess();
50
- return;
111
+ return true;
51
112
  }
52
- if (!this._isGridEdition) {
53
- return;
113
+ const currentRecord = this._dataUnit.getSelectedRecord();
114
+ if (currentRecord == undefined) {
115
+ return true;
54
116
  }
55
- const currentRercord = this._dataUnit.getSelectedRecord();
56
- if (currentRercord == undefined) {
57
- return;
117
+ this.clearInvalidCells(false);
118
+ try {
119
+ await this._recordValidationProcessor.validate(true);
120
+ await this.saveDataUnit();
121
+ this.saveSuccess();
122
+ return true;
58
123
  }
59
- this._invalidCell = undefined;
60
- this._recordValidationProcessor
61
- .validate(true)
62
- .then(() => {
63
- this._dataUnit.saveData()
64
- .then(() => this.saveSuccess())
65
- .catch(reason => this.saveFail(reason));
66
- })
67
- .catch(reason => this.saveFail(reason));
124
+ catch (reason) {
125
+ this.saveFail(reason);
126
+ return false;
127
+ }
128
+ }
129
+ async saveDataUnit() {
130
+ await this._dataUnit.saveData();
131
+ return true;
68
132
  }
69
133
  async recordValidate() {
70
134
  if (!this._dataUnit.isDirty())
71
135
  return;
72
136
  try {
73
- this._invalidCell = undefined;
137
+ this.clearInvalidCells(false);
74
138
  await this._recordValidationProcessor.validate(false);
75
139
  }
76
140
  catch (error) { }
@@ -98,6 +162,13 @@ export default class GridEditionManager {
98
162
  return { ezCellEditor: EzCellEditor };
99
163
  }
100
164
  verifyClickToEdition(api, cellClicked) {
165
+ var _a, _b;
166
+ const selectedRecordID = (_a = this._dataUnit.getSelectedRecord()) === null || _a === void 0 ? void 0 : _a.__record__id__;
167
+ if (this._dataUnit.hasNewRecord() && selectedRecordID) {
168
+ const dataUnitRecordIndex = (_b = api.getRowNode(selectedRecordID)) === null || _b === void 0 ? void 0 : _b.rowIndex;
169
+ if (dataUnitRecordIndex != cellClicked.rowIndex)
170
+ return;
171
+ }
101
172
  if (this.isSecondClick(cellClicked)) {
102
173
  api.startEditingCell({ rowIndex: cellClicked.rowIndex, colKey: cellClicked.column.getColId() });
103
174
  }
@@ -107,6 +178,9 @@ export default class GridEditionManager {
107
178
  col.cellEditor = 'ezCellEditor';
108
179
  col.editable = params => this.canEdit(params);
109
180
  col.suppressKeyboardEvent = (params) => {
181
+ if (params.event.key === KeyCode.ESCAPE && params.editing) {
182
+ return this._dataUnit.isDirty();
183
+ }
110
184
  return params.event.key === KeyCode.ENTER;
111
185
  };
112
186
  col.cellEditorSelector = (params) => {
@@ -136,10 +210,21 @@ export default class GridEditionManager {
136
210
  return col;
137
211
  }
138
212
  getRequiredFields() {
139
- return this._gridOptions.columnApi.getAllDisplayedColumns().filter(c => {
140
- const fieldDefinition = this._dataUnit.getField(c.getColId());
141
- return fieldDefinition && fieldDefinition.required;
142
- }).map(c => c.getColId());
213
+ const formRequiredFields = this.getFormRequiredFields();
214
+ return this._gridOptions.columnApi.getAllDisplayedColumns()
215
+ .filter(column => {
216
+ const fieldDefinition = this._dataUnit.getField(column.getColId());
217
+ return (fieldDefinition && fieldDefinition.required) || formRequiredFields.includes(column.getColId());
218
+ })
219
+ .map(column => column.getColId());
220
+ }
221
+ getFormRequiredFields() {
222
+ const formRequiredFields = [];
223
+ const dataBinders = DataBinder.getDataBindersByDataUnit(this._dataUnit);
224
+ dataBinders.forEach(dataBinder => {
225
+ formRequiredFields.push(...dataBinder.getFormRequiredFields());
226
+ });
227
+ return formRequiredFields;
143
228
  }
144
229
  saveSuccess() {
145
230
  var _a;
@@ -152,10 +237,11 @@ export default class GridEditionManager {
152
237
  this._isGridEdition = false;
153
238
  }
154
239
  saveFail(reason) {
155
- this.focusOnCell(this._lastCellEdited);
240
+ var _a;
241
+ this.focusOnCell((_a = this._lastCellOpened) !== null && _a !== void 0 ? _a : this._lastCellEdited);
156
242
  this._isGridEdition = false;
157
243
  if (reason) {
158
- Promise.reject(reason);
244
+ throw reason;
159
245
  }
160
246
  }
161
247
  focusOnCell(cell) {
@@ -220,6 +306,9 @@ export default class GridEditionManager {
220
306
  this.moveEditionVertically(api, 1);
221
307
  }
222
308
  moveEditionVertically(api, offset) {
309
+ if (this._dataUnit.hasNewRecord() && this._isGridEdition) {
310
+ return;
311
+ }
223
312
  const editionCell = api.getEditingCells()[0];
224
313
  if (!editionCell) {
225
314
  return;
@@ -264,41 +353,63 @@ export default class GridEditionManager {
264
353
  return true;
265
354
  }
266
355
  onCellEditRequest(event) {
267
- const fieldName = event.colDef.field;
356
+ var _a;
268
357
  const value = event.newValue;
269
- if (event.oldValue != value) {
270
- if (value instanceof Promise) {
271
- const fieldDescriptor = this._dataUnit.getField(event.colDef.colId);
272
- event.node.setData(Object.assign(Object.assign({}, event.data), { [fieldName]: (fieldDescriptor === null || fieldDescriptor === void 0 ? void 0 : fieldDescriptor.userInterface) === UserInterface.SEARCH ? value : event.oldValue }));
273
- value.then(resolved => event.node.setData(Object.assign(Object.assign({}, event.data), { [fieldName]: resolved })));
274
- }
275
- else {
276
- event.node.setData(Object.assign(Object.assign({}, event.data), { [fieldName]: value }));
277
- }
358
+ if (event.oldValue == value) {
359
+ (_a = this._currentEditLock) === null || _a === void 0 ? void 0 : _a.call(this);
360
+ return;
361
+ }
362
+ if (value instanceof Promise) {
363
+ this.handlePromiseValue(event, value);
364
+ return;
365
+ }
366
+ this.updateCellValue(event, value);
367
+ }
368
+ async handlePromiseValue(event, value) {
369
+ const fieldName = event.colDef.field;
370
+ const fieldDescriptor = this._dataUnit.getField(event.colDef.colId);
371
+ const initialValue = (fieldDescriptor === null || fieldDescriptor === void 0 ? void 0 : fieldDescriptor.userInterface) === UserInterface.SEARCH ? value : event.oldValue;
372
+ event.node.setData(Object.assign(Object.assign({}, event.data), { [fieldName]: initialValue }));
373
+ const resolved = await value;
374
+ return this.updateCellValue(event, resolved);
375
+ }
376
+ updateCellValue(event, newValue) {
377
+ var _a;
378
+ const fieldName = event.colDef.field;
379
+ event.node.setData(Object.assign(Object.assign({}, event.data), { [fieldName]: newValue }));
380
+ (_a = this._currentEditLock) === null || _a === void 0 ? void 0 : _a.call(this);
381
+ if (event.oldValue !== newValue) {
278
382
  this._isGridEdition = true;
279
- this._dataUnit.setFieldValue(fieldName, value, [event.data.__record__id__], { suppressCreateNewRecord: true });
383
+ this._dataUnit.setFieldValue(fieldName, newValue, [event.data.__record__id__], { suppressCreateNewRecord: true });
280
384
  this._lastCellEdited = { rowIndex: event.rowIndex, column: event.column, rowPinned: undefined };
281
385
  }
282
386
  }
283
387
  setCellEditors(customEditors) {
388
+ var _a;
284
389
  this._customEditors = customEditors;
390
+ (_a = this._gridOptions) === null || _a === void 0 ? void 0 : _a.api.stopEditing();
285
391
  }
286
392
  setCellRenders(customRenders) {
287
393
  this._customRenders = customRenders;
288
394
  }
289
- setInvalidCell(invalidCell, recordId) {
290
- this._invalidCell = { field: invalidCell, recordId };
395
+ pushInvalidCell(invalidField, recordId) {
396
+ this._invalidCells.push({ field: invalidField, recordId });
397
+ this._nextInvalidCell = this._invalidCells[0];
398
+ }
399
+ getInvalidCells() {
400
+ return this._invalidCells;
291
401
  }
292
- getInvalidCell() {
293
- return this._invalidCell;
402
+ getNextInvalidCell() {
403
+ return this._nextInvalidCell;
294
404
  }
295
- processContinuousInsert() {
405
+ async processContinuousInsert() {
296
406
  if (!this.canContinuousInsert())
297
407
  return;
298
408
  this._dataUnit.addRecord();
299
409
  }
300
410
  clearInvalidCells(stopEdition) {
301
- this._invalidCell = undefined;
411
+ this._invalidCells = [];
412
+ this._nextInvalidCell = undefined;
302
413
  if (stopEdition) {
303
414
  this._isGridEdition = false;
304
415
  }
@@ -309,10 +420,17 @@ export default class GridEditionManager {
309
420
  hasInvalidField(fieldName, recordId) {
310
421
  if (!this.hasInvalidCell())
311
422
  return false;
312
- return this._invalidCell.field.name === fieldName && this._invalidCell.recordId === recordId;
423
+ this._nextInvalidCell = this._invalidCells[0];
424
+ const containsFieldName = this._nextInvalidCell.field.name === fieldName;
425
+ const containsRecordId = this._nextInvalidCell.recordId === recordId;
426
+ return containsFieldName && containsRecordId;
313
427
  }
314
428
  hasInvalidCell() {
315
- if (!this._invalidCell || !this._invalidCell.field || !this._invalidCell.recordId)
429
+ var _a, _b, _c;
430
+ const hasInvalidCell = ((_a = this._invalidCells) === null || _a === void 0 ? void 0 : _a.length) > 0;
431
+ const hasField = (_b = this._invalidCells) === null || _b === void 0 ? void 0 : _b.filter(invalidCell => { invalidCell.field; });
432
+ const hasRecordId = (_c = this._invalidCells) === null || _c === void 0 ? void 0 : _c.filter(invalidCell => { invalidCell.recordId; });
433
+ if (!hasInvalidCell || !hasField || !hasRecordId)
316
434
  return false;
317
435
  return true;
318
436
  }
@@ -2,6 +2,7 @@ import { HTMLBuilder } from "@sankhyalabs/core";
2
2
  import { CustomEditorSource } from "../../../../../utils/customEditor/interfaces/ICustomEditor";
3
3
  import EzCellEditor from "../editor/EzCellEditor";
4
4
  import { getViewPortHeight } from "../editor/GridEditorUtils";
5
+ import FocusResolver from "../../../../../utils/FocusResolver";
5
6
  export default class EzGridCustomCellEditor extends EzCellEditor {
6
7
  init(params) {
7
8
  var _a, _b;
@@ -65,4 +66,10 @@ export default class EzGridCustomCellEditor extends EzCellEditor {
65
66
  return this._customGui.value;
66
67
  return this._value;
67
68
  }
69
+ afterGuiAttached() {
70
+ this.focusIn();
71
+ }
72
+ focusIn() {
73
+ FocusResolver.resolveFocus(this._customGui);
74
+ }
68
75
  }
@@ -19,6 +19,7 @@ export const buildComboBox = ({ required, props, eGridCell }) => {
19
19
  combo.options = options;
20
20
  combo.stopPropagateEnterKeyEvent = true;
21
21
  combo.listOptionsPosition = { verticalPosition: 29, bottomLimit: getViewPortHeight(eGridCell), hardPosition: true };
22
+ combo.autoFocus = true;
22
23
  return combo;
23
24
  };
24
25
  export const buildSwitch = (fieldMetadata) => {
@@ -7,6 +7,7 @@ export const buildDate = () => {
7
7
  data-is-fixed="true"
8
8
  />`);
9
9
  dateInput.valueGetter = () => dateInput.getValueAsync();
10
+ dateInput.autoFocus = true;
10
11
  return dateInput;
11
12
  };
12
13
  export const buildTime = ({ readOnly }) => {
@@ -17,5 +17,6 @@ function buildNumeric(readOnly, precision, prettyPrecision) {
17
17
  mode="slim"
18
18
  />`);
19
19
  input.valueGetter = () => input.getValueAsync();
20
+ input.autoFocus = true;
20
21
  return input;
21
22
  }
@@ -13,6 +13,7 @@ export const buildSearch = ({ name, required, readOnly, eGridCell, dataUnit }) =
13
13
  ezSearch.suppressPreLoad = true;
14
14
  ezSearch.listOptionsPosition = { verticalPosition: 29, bottomLimit: getViewPortHeight(eGridCell), hardPosition: true };
15
15
  ezSearch.stopPropagateEnterKeyEvent = true;
16
+ ezSearch.autoFocus = true;
16
17
  ezSearch.valueGetter = () => ezSearch.getValueAsync();
17
18
  return ezSearch;
18
19
  };
@@ -2,12 +2,14 @@ import { HTMLBuilder } from "@sankhyalabs/core";
2
2
  const MINIMIUM_WIDTH_TEXTAREA = 210;
3
3
  const PADDING_VALUE_TEXTAREA = 12;
4
4
  export const buildTextInput = ({ name, contextName }) => {
5
- return HTMLBuilder.parseElement(`<ez-text-input
5
+ const textInput = HTMLBuilder.parseElement(`<ez-text-input
6
6
  class="ez-grid grid_editor"
7
7
  data-field-name=${name}
8
8
  data-context-name=${contextName}
9
9
  mode="slim"
10
10
  />`);
11
+ textInput.autoFocus = true;
12
+ return textInput;
11
13
  };
12
14
  export const buildTextAreaInput = ({ eGridCell, editionManager }) => {
13
15
  const element = HTMLBuilder.parseElement(`<ez-text-area
@@ -17,6 +19,7 @@ export const buildTextAreaInput = ({ eGridCell, editionManager }) => {
17
19
  element.addEventListener('keydown', event => handlePressEnterEvent(event, element, editionManager));
18
20
  setElementInitialWidth(eGridCell, element);
19
21
  element.isPopUp = true;
22
+ element.autoFocus = true;
20
23
  return element;
21
24
  };
22
25
  function setElementInitialWidth(eGridCell, element) {
@@ -39,6 +39,7 @@ export class EzGrid {
39
39
  this.paginationCounterMode = 'show';
40
40
  this.enableGridInsert = false;
41
41
  this.enableContinuousInsert = true;
42
+ this.enableLockManger = true;
42
43
  }
43
44
  /**
44
45
  * Aplica a definição de colunas.
@@ -163,6 +164,18 @@ export class EzGrid {
163
164
  async setFocus() {
164
165
  this._gridController.setFocus();
165
166
  }
167
+ /**
168
+ * Para a edição da grade.
169
+ */
170
+ async stopEdit() {
171
+ this._gridController.stopEdit();
172
+ }
173
+ async checkStopEditOutsideClick(event) {
174
+ var _a;
175
+ if ((_a = this._container) === null || _a === void 0 ? void 0 : _a.contains(event.target))
176
+ return;
177
+ this._gridController.stopEdit();
178
+ }
166
179
  observeConfig(config) {
167
180
  this._gridController.setColumnsState(config === null || config === void 0 ? void 0 : config.columns);
168
181
  }
@@ -188,6 +201,9 @@ export class EzGrid {
188
201
  this.setSelection(this.dataUnit.getSelectionInfo());
189
202
  }
190
203
  }
204
+ async handleClick(event) {
205
+ this.checkStopEditOutsideClick(event);
206
+ }
191
207
  setSelection(selectionInfo) {
192
208
  var _a;
193
209
  this._selectionCount = (_a = selectionInfo === null || selectionInfo === void 0 ? void 0 : selectionInfo.length) !== null && _a !== void 0 ? _a : 0;
@@ -343,7 +359,7 @@ export class EzGrid {
343
359
  resetPaginationState() {
344
360
  var _a;
345
361
  this._paginationChangedByKeyboard = false;
346
- (_a = this._gridApi) === null || _a === void 0 ? void 0 : _a.clearRangeSelection();
362
+ (_a = this._gridController) === null || _a === void 0 ? void 0 : _a.resetPaginationState();
347
363
  }
348
364
  resolvePaginationClassMode() {
349
365
  if (this.paginationCounterMode == 'show')
@@ -384,7 +400,8 @@ export class EzGrid {
384
400
  if (this.dataUnit) {
385
401
  this.setSelection(this.dataUnit.getSelectionInfo());
386
402
  }
387
- }
403
+ },
404
+ enableLockManger: this.enableLockManger
388
405
  });
389
406
  if (this.config) {
390
407
  this.observeConfig(this.config);
@@ -456,8 +473,13 @@ export class EzGrid {
456
473
  this._refPaginationLabelTooltip.removeAttribute('data-tooltip');
457
474
  }
458
475
  disconnectedCallback() {
459
- var _a;
476
+ var _a, _b;
460
477
  (_a = this._headerOverflowWatcher) === null || _a === void 0 ? void 0 : _a.destroy();
478
+ (_b = this._gridController) === null || _b === void 0 ? void 0 : _b.destroy();
479
+ }
480
+ connectedCallback() {
481
+ var _a;
482
+ (_a = this._gridController) === null || _a === void 0 ? void 0 : _a.registryListeners();
461
483
  }
462
484
  componentWillRender() {
463
485
  this.configSelectionCounter();
@@ -778,6 +800,24 @@ export class EzGrid {
778
800
  "attribute": "enable-continuous-insert",
779
801
  "reflect": false,
780
802
  "defaultValue": "true"
803
+ },
804
+ "enableLockManger": {
805
+ "type": "boolean",
806
+ "mutable": false,
807
+ "complexType": {
808
+ "original": "boolean",
809
+ "resolved": "boolean",
810
+ "references": {}
811
+ },
812
+ "required": false,
813
+ "optional": true,
814
+ "docs": {
815
+ "tags": [],
816
+ "text": "Ativa inser\u00E7\u00E3o de registros no modo grade."
817
+ },
818
+ "attribute": "enable-lock-manger",
819
+ "reflect": false,
820
+ "defaultValue": "true"
781
821
  }
782
822
  };
783
823
  }
@@ -1282,6 +1322,47 @@ export class EzGrid {
1282
1322
  "text": "Atribui o foco para a grade.",
1283
1323
  "tags": []
1284
1324
  }
1325
+ },
1326
+ "stopEdit": {
1327
+ "complexType": {
1328
+ "signature": "() => Promise<void>",
1329
+ "parameters": [],
1330
+ "references": {
1331
+ "Promise": {
1332
+ "location": "global"
1333
+ }
1334
+ },
1335
+ "return": "Promise<void>"
1336
+ },
1337
+ "docs": {
1338
+ "text": "Para a edi\u00E7\u00E3o da grade.",
1339
+ "tags": []
1340
+ }
1341
+ },
1342
+ "checkStopEditOutsideClick": {
1343
+ "complexType": {
1344
+ "signature": "(event: MouseEvent) => Promise<void>",
1345
+ "parameters": [{
1346
+ "tags": [],
1347
+ "text": ""
1348
+ }],
1349
+ "references": {
1350
+ "Promise": {
1351
+ "location": "global"
1352
+ },
1353
+ "MouseEvent": {
1354
+ "location": "global"
1355
+ },
1356
+ "Node": {
1357
+ "location": "global"
1358
+ }
1359
+ },
1360
+ "return": "Promise<void>"
1361
+ },
1362
+ "docs": {
1363
+ "text": "",
1364
+ "tags": []
1365
+ }
1285
1366
  }
1286
1367
  };
1287
1368
  }
@@ -1305,6 +1386,12 @@ export class EzGrid {
1305
1386
  "target": undefined,
1306
1387
  "capture": false,
1307
1388
  "passive": false
1389
+ }, {
1390
+ "name": "click",
1391
+ "method": "handleClick",
1392
+ "target": undefined,
1393
+ "capture": true,
1394
+ "passive": false
1308
1395
  }];
1309
1396
  }
1310
1397
  }