@zeedhi/common 3.0.6 → 3.1.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 (546) hide show
  1. package/coverage/clover.xml +5680 -0
  2. package/coverage/coverage-final.json +147 -0
  3. package/coverage/lcov-report/base.css +224 -0
  4. package/coverage/lcov-report/block-navigation.js +87 -0
  5. package/coverage/lcov-report/favicon.png +0 -0
  6. package/coverage/lcov-report/index.html +1331 -0
  7. package/coverage/lcov-report/prettify.css +1 -0
  8. package/coverage/lcov-report/prettify.js +2 -0
  9. package/coverage/lcov-report/sort-arrow-sprite.png +0 -0
  10. package/coverage/lcov-report/sorter.js +210 -0
  11. package/coverage/lcov-report/src/components/index.html +116 -0
  12. package/coverage/lcov-report/src/components/index.ts.html +730 -0
  13. package/coverage/lcov-report/src/components/tek-grid/columns-searcher.ts.html +151 -0
  14. package/coverage/lcov-report/src/components/tek-grid/dynamic-filter-datasource-factory.ts.html +145 -0
  15. package/coverage/lcov-report/src/components/tek-grid/filter-helper.ts.html +145 -0
  16. package/coverage/lcov-report/src/components/tek-grid/grid-filter-button.ts.html +1351 -0
  17. package/coverage/lcov-report/src/components/tek-grid/grouped-data-manager.ts.html +1429 -0
  18. package/coverage/lcov-report/src/components/tek-grid/grouped-data-selector.ts.html +205 -0
  19. package/coverage/lcov-report/src/components/tek-grid/grouped-view-navigator.ts.html +340 -0
  20. package/coverage/lcov-report/src/components/tek-grid/index.html +326 -0
  21. package/coverage/lcov-report/src/components/tek-grid/index.ts.html +139 -0
  22. package/coverage/lcov-report/src/components/tek-grid/interfaces.ts.html +1072 -0
  23. package/coverage/lcov-report/src/components/tek-grid/keymap-grouped.ts.html +148 -0
  24. package/coverage/lcov-report/src/components/tek-grid/layout-options.ts.html +829 -0
  25. package/coverage/lcov-report/src/components/tek-grid/tek-datasource/index.html +161 -0
  26. package/coverage/lcov-report/src/components/tek-grid/tek-datasource/index.ts.html +94 -0
  27. package/coverage/lcov-report/src/components/tek-grid/tek-datasource/interfaces.ts.html +193 -0
  28. package/coverage/lcov-report/src/components/tek-grid/tek-datasource/tek-memory-datasource.ts.html +1027 -0
  29. package/coverage/lcov-report/src/components/tek-grid/tek-datasource/tek-rest-datasource.ts.html +757 -0
  30. package/coverage/lcov-report/src/components/tek-grid/tek-grid-column.ts.html +664 -0
  31. package/coverage/lcov-report/src/components/tek-grid/tek-grid-columns-button/index.html +131 -0
  32. package/coverage/lcov-report/src/components/tek-grid/tek-grid-columns-button/tek-grid-columns-button-controller.ts.html +169 -0
  33. package/coverage/lcov-report/src/components/tek-grid/tek-grid-columns-button/tek-grid-columns-button.ts.html +196 -0
  34. package/coverage/lcov-report/src/components/tek-grid/tek-grid-controller.ts.html +505 -0
  35. package/coverage/lcov-report/src/components/tek-grid/tek-grid-events.ts.html +400 -0
  36. package/coverage/lcov-report/src/components/tek-grid/tek-grid-toolbar-provider/export-options/button-option.ts.html +163 -0
  37. package/coverage/lcov-report/src/components/tek-grid/tek-grid-toolbar-provider/export-options/index.html +146 -0
  38. package/coverage/lcov-report/src/components/tek-grid/tek-grid-toolbar-provider/export-options/index.ts.html +94 -0
  39. package/coverage/lcov-report/src/components/tek-grid/tek-grid-toolbar-provider/export-options/multi-option.ts.html +340 -0
  40. package/coverage/lcov-report/src/components/tek-grid/tek-grid-toolbar-provider/index.html +131 -0
  41. package/coverage/lcov-report/src/components/tek-grid/tek-grid-toolbar-provider/index.ts.html +91 -0
  42. package/coverage/lcov-report/src/components/tek-grid/tek-grid-toolbar-provider/tek-grid-toolbar-provider.ts.html +1186 -0
  43. package/coverage/lcov-report/src/components/tek-grid/tek-grid.ts.html +3451 -0
  44. package/coverage/lcov-report/src/components/zd-alert/alert.ts.html +502 -0
  45. package/coverage/lcov-report/src/components/zd-alert/index.html +116 -0
  46. package/coverage/lcov-report/src/components/zd-badge/badge.ts.html +226 -0
  47. package/coverage/lcov-report/src/components/zd-badge/index.html +116 -0
  48. package/coverage/lcov-report/src/components/zd-breadcrumbs/breadcrumbs.ts.html +226 -0
  49. package/coverage/lcov-report/src/components/zd-breadcrumbs/index.html +116 -0
  50. package/coverage/lcov-report/src/components/zd-button/button.ts.html +706 -0
  51. package/coverage/lcov-report/src/components/zd-button/index.html +116 -0
  52. package/coverage/lcov-report/src/components/zd-button-group/button-group.ts.html +412 -0
  53. package/coverage/lcov-report/src/components/zd-button-group/index.html +116 -0
  54. package/coverage/lcov-report/src/components/zd-card/card.ts.html +748 -0
  55. package/coverage/lcov-report/src/components/zd-card/index.html +116 -0
  56. package/coverage/lcov-report/src/components/zd-carousel/carousel.ts.html +949 -0
  57. package/coverage/lcov-report/src/components/zd-carousel/index.html +116 -0
  58. package/coverage/lcov-report/src/components/zd-checkbox/checkbox.ts.html +148 -0
  59. package/coverage/lcov-report/src/components/zd-checkbox/index.html +116 -0
  60. package/coverage/lcov-report/src/components/zd-checkbox-multiple/checkbox-multiple.ts.html +313 -0
  61. package/coverage/lcov-report/src/components/zd-checkbox-multiple/index.html +116 -0
  62. package/coverage/lcov-report/src/components/zd-chip/chip.ts.html +352 -0
  63. package/coverage/lcov-report/src/components/zd-chip/index.html +116 -0
  64. package/coverage/lcov-report/src/components/zd-code-editor/code-editor.ts.html +1045 -0
  65. package/coverage/lcov-report/src/components/zd-code-editor/index.html +116 -0
  66. package/coverage/lcov-report/src/components/zd-code-viewer/code-viewer.ts.html +682 -0
  67. package/coverage/lcov-report/src/components/zd-code-viewer/index.html +116 -0
  68. package/coverage/lcov-report/src/components/zd-col/col.ts.html +250 -0
  69. package/coverage/lcov-report/src/components/zd-col/index.html +116 -0
  70. package/coverage/lcov-report/src/components/zd-collapse-card/collapse-card.ts.html +343 -0
  71. package/coverage/lcov-report/src/components/zd-collapse-card/index.html +116 -0
  72. package/coverage/lcov-report/src/components/zd-component/child-not-found.ts.html +109 -0
  73. package/coverage/lcov-report/src/components/zd-component/component-render.ts.html +160 -0
  74. package/coverage/lcov-report/src/components/zd-component/component.ts.html +1075 -0
  75. package/coverage/lcov-report/src/components/zd-component/index.html +146 -0
  76. package/coverage/lcov-report/src/components/zd-container/container.ts.html +289 -0
  77. package/coverage/lcov-report/src/components/zd-container/index.html +116 -0
  78. package/coverage/lcov-report/src/components/zd-currency/currency.ts.html +259 -0
  79. package/coverage/lcov-report/src/components/zd-currency/index.html +116 -0
  80. package/coverage/lcov-report/src/components/zd-date-input/date-input.ts.html +1441 -0
  81. package/coverage/lcov-report/src/components/zd-date-input/index.html +131 -0
  82. package/coverage/lcov-report/src/components/zd-date-input/utils.ts.html +136 -0
  83. package/coverage/lcov-report/src/components/zd-date-range/date-range.ts.html +1864 -0
  84. package/coverage/lcov-report/src/components/zd-date-range/index.html +131 -0
  85. package/coverage/lcov-report/src/components/zd-date-range/utils.ts.html +178 -0
  86. package/coverage/lcov-report/src/components/zd-dialog/dialog.ts.html +541 -0
  87. package/coverage/lcov-report/src/components/zd-dialog/index.html +116 -0
  88. package/coverage/lcov-report/src/components/zd-divider/divider.ts.html +178 -0
  89. package/coverage/lcov-report/src/components/zd-divider/index.html +116 -0
  90. package/coverage/lcov-report/src/components/zd-dropdown/dropdown.ts.html +460 -0
  91. package/coverage/lcov-report/src/components/zd-dropdown/index.html +116 -0
  92. package/coverage/lcov-report/src/components/zd-field-group/field-group.ts.html +325 -0
  93. package/coverage/lcov-report/src/components/zd-field-group/index.html +116 -0
  94. package/coverage/lcov-report/src/components/zd-footer/footer.ts.html +451 -0
  95. package/coverage/lcov-report/src/components/zd-footer/index.html +116 -0
  96. package/coverage/lcov-report/src/components/zd-form/form.ts.html +1075 -0
  97. package/coverage/lcov-report/src/components/zd-form/index.html +116 -0
  98. package/coverage/lcov-report/src/components/zd-frame/frame.ts.html +763 -0
  99. package/coverage/lcov-report/src/components/zd-frame/index.html +116 -0
  100. package/coverage/lcov-report/src/components/zd-frame-page/frame-page.ts.html +169 -0
  101. package/coverage/lcov-report/src/components/zd-frame-page/index.html +116 -0
  102. package/coverage/lcov-report/src/components/zd-grid/data-navigator.ts.html +304 -0
  103. package/coverage/lcov-report/src/components/zd-grid/data-selector.ts.html +532 -0
  104. package/coverage/lcov-report/src/components/zd-grid/grid-column.ts.html +709 -0
  105. package/coverage/lcov-report/src/components/zd-grid/grid-events.ts.html +244 -0
  106. package/coverage/lcov-report/src/components/zd-grid/grid.ts.html +1042 -0
  107. package/coverage/lcov-report/src/components/zd-grid/index.html +266 -0
  108. package/coverage/lcov-report/src/components/zd-grid/index.ts.html +118 -0
  109. package/coverage/lcov-report/src/components/zd-grid/iterable-table.ts.html +274 -0
  110. package/coverage/lcov-report/src/components/zd-grid/keymap-merger.ts.html +241 -0
  111. package/coverage/lcov-report/src/components/zd-grid/keymap-navigation.ts.html +313 -0
  112. package/coverage/lcov-report/src/components/zd-grid/table-action-builder.ts.html +427 -0
  113. package/coverage/lcov-report/src/components/zd-grid/view-navigator.ts.html +175 -0
  114. package/coverage/lcov-report/src/components/zd-grid-editable/data-editor-with-add.ts.html +808 -0
  115. package/coverage/lcov-report/src/components/zd-grid-editable/data-editor.ts.html +1570 -0
  116. package/coverage/lcov-report/src/components/zd-grid-editable/errors/index.html +146 -0
  117. package/coverage/lcov-report/src/components/zd-grid-editable/errors/index.ts.html +91 -0
  118. package/coverage/lcov-report/src/components/zd-grid-editable/errors/not-editing.ts.html +109 -0
  119. package/coverage/lcov-report/src/components/zd-grid-editable/errors/row-not-found.ts.html +109 -0
  120. package/coverage/lcov-report/src/components/zd-grid-editable/grid-column-editable.ts.html +130 -0
  121. package/coverage/lcov-report/src/components/zd-grid-editable/grid-editable-controller.ts.html +145 -0
  122. package/coverage/lcov-report/src/components/zd-grid-editable/grid-editable-events.ts.html +430 -0
  123. package/coverage/lcov-report/src/components/zd-grid-editable/grid-editable.ts.html +1507 -0
  124. package/coverage/lcov-report/src/components/zd-grid-editable/index.html +221 -0
  125. package/coverage/lcov-report/src/components/zd-grid-editable/index.ts.html +109 -0
  126. package/coverage/lcov-report/src/components/zd-grid-editable/keymap-editing.ts.html +139 -0
  127. package/coverage/lcov-report/src/components/zd-header/header.ts.html +502 -0
  128. package/coverage/lcov-report/src/components/zd-header/index.html +116 -0
  129. package/coverage/lcov-report/src/components/zd-icon/icon.ts.html +325 -0
  130. package/coverage/lcov-report/src/components/zd-icon/index.html +116 -0
  131. package/coverage/lcov-report/src/components/zd-image/image.ts.html +424 -0
  132. package/coverage/lcov-report/src/components/zd-image/index.html +116 -0
  133. package/coverage/lcov-report/src/components/zd-increment/increment.ts.html +436 -0
  134. package/coverage/lcov-report/src/components/zd-increment/index.html +116 -0
  135. package/coverage/lcov-report/src/components/zd-input/index.html +131 -0
  136. package/coverage/lcov-report/src/components/zd-input/input-factory.ts.html +130 -0
  137. package/coverage/lcov-report/src/components/zd-input/input.ts.html +1345 -0
  138. package/coverage/lcov-report/src/components/zd-iterable/column-not-found.ts.html +109 -0
  139. package/coverage/lcov-report/src/components/zd-iterable/column.ts.html +823 -0
  140. package/coverage/lcov-report/src/components/zd-iterable/conditions-manager.ts.html +523 -0
  141. package/coverage/lcov-report/src/components/zd-iterable/index.html +281 -0
  142. package/coverage/lcov-report/src/components/zd-iterable/iterable-columns-button-controller.ts.html +136 -0
  143. package/coverage/lcov-report/src/components/zd-iterable/iterable-columns-button.ts.html +313 -0
  144. package/coverage/lcov-report/src/components/zd-iterable/iterable-controller.ts.html +166 -0
  145. package/coverage/lcov-report/src/components/zd-iterable/iterable-page-component.ts.html +244 -0
  146. package/coverage/lcov-report/src/components/zd-iterable/iterable-page-info.ts.html +106 -0
  147. package/coverage/lcov-report/src/components/zd-iterable/iterable-page-size.ts.html +421 -0
  148. package/coverage/lcov-report/src/components/zd-iterable/iterable-pagination.ts.html +208 -0
  149. package/coverage/lcov-report/src/components/zd-iterable/iterable.ts.html +934 -0
  150. package/coverage/lcov-report/src/components/zd-iterable/search.ts.html +343 -0
  151. package/coverage/lcov-report/src/components/zd-iterable-component-render/index.html +116 -0
  152. package/coverage/lcov-report/src/components/zd-iterable-component-render/iterable-component-render.ts.html +592 -0
  153. package/coverage/lcov-report/src/components/zd-layout/index.html +116 -0
  154. package/coverage/lcov-report/src/components/zd-layout/layout.ts.html +145 -0
  155. package/coverage/lcov-report/src/components/zd-list/index.html +161 -0
  156. package/coverage/lcov-report/src/components/zd-list/item-not-found.ts.html +109 -0
  157. package/coverage/lcov-report/src/components/zd-list/list-group.ts.html +241 -0
  158. package/coverage/lcov-report/src/components/zd-list/list-item.ts.html +298 -0
  159. package/coverage/lcov-report/src/components/zd-list/list.ts.html +460 -0
  160. package/coverage/lcov-report/src/components/zd-loading/index.html +116 -0
  161. package/coverage/lcov-report/src/components/zd-loading/loading.ts.html +217 -0
  162. package/coverage/lcov-report/src/components/zd-login/index.html +131 -0
  163. package/coverage/lcov-report/src/components/zd-login/login-button.ts.html +421 -0
  164. package/coverage/lcov-report/src/components/zd-login/login.ts.html +340 -0
  165. package/coverage/lcov-report/src/components/zd-main/index.html +116 -0
  166. package/coverage/lcov-report/src/components/zd-main/main.ts.html +133 -0
  167. package/coverage/lcov-report/src/components/zd-master-detail/detail-not-found.ts.html +118 -0
  168. package/coverage/lcov-report/src/components/zd-master-detail/index.html +146 -0
  169. package/coverage/lcov-report/src/components/zd-master-detail/master-detail.ts.html +331 -0
  170. package/coverage/lcov-report/src/components/zd-master-detail/master-not-found.ts.html +118 -0
  171. package/coverage/lcov-report/src/components/zd-menu/index.html +176 -0
  172. package/coverage/lcov-report/src/components/zd-menu/menu-button.ts.html +241 -0
  173. package/coverage/lcov-report/src/components/zd-menu/menu-group.ts.html +400 -0
  174. package/coverage/lcov-report/src/components/zd-menu/menu-link.ts.html +337 -0
  175. package/coverage/lcov-report/src/components/zd-menu/menu-separator.ts.html +106 -0
  176. package/coverage/lcov-report/src/components/zd-menu/menu.ts.html +1384 -0
  177. package/coverage/lcov-report/src/components/zd-modal/index.html +131 -0
  178. package/coverage/lcov-report/src/components/zd-modal/modal-close-button.ts.html +220 -0
  179. package/coverage/lcov-report/src/components/zd-modal/modal.ts.html +355 -0
  180. package/coverage/lcov-report/src/components/zd-month/index.html +116 -0
  181. package/coverage/lcov-report/src/components/zd-month/month.ts.html +352 -0
  182. package/coverage/lcov-report/src/components/zd-number-input/index.html +116 -0
  183. package/coverage/lcov-report/src/components/zd-number-input/number-input.ts.html +532 -0
  184. package/coverage/lcov-report/src/components/zd-password/index.html +116 -0
  185. package/coverage/lcov-report/src/components/zd-password/password.ts.html +220 -0
  186. package/coverage/lcov-report/src/components/zd-progress/index.html +116 -0
  187. package/coverage/lcov-report/src/components/zd-progress/progress.ts.html +262 -0
  188. package/coverage/lcov-report/src/components/zd-radio/index.html +116 -0
  189. package/coverage/lcov-report/src/components/zd-radio/radio.ts.html +289 -0
  190. package/coverage/lcov-report/src/components/zd-row/index.html +116 -0
  191. package/coverage/lcov-report/src/components/zd-row/row.ts.html +256 -0
  192. package/coverage/lcov-report/src/components/zd-select/index.html +116 -0
  193. package/coverage/lcov-report/src/components/zd-select/select.ts.html +2089 -0
  194. package/coverage/lcov-report/src/components/zd-select-multiple/index.html +116 -0
  195. package/coverage/lcov-report/src/components/zd-select-multiple/select-multiple.ts.html +1549 -0
  196. package/coverage/lcov-report/src/components/zd-svg-map/index.html +116 -0
  197. package/coverage/lcov-report/src/components/zd-svg-map/svg-map.ts.html +475 -0
  198. package/coverage/lcov-report/src/components/zd-switch/index.html +116 -0
  199. package/coverage/lcov-report/src/components/zd-switch/switch.ts.html +163 -0
  200. package/coverage/lcov-report/src/components/zd-table/index.html +116 -0
  201. package/coverage/lcov-report/src/components/zd-table/table.ts.html +280 -0
  202. package/coverage/lcov-report/src/components/zd-tabs/index.html +146 -0
  203. package/coverage/lcov-report/src/components/zd-tabs/tab-not-found.ts.html +127 -0
  204. package/coverage/lcov-report/src/components/zd-tabs/tab.ts.html +370 -0
  205. package/coverage/lcov-report/src/components/zd-tabs/tabs.ts.html +586 -0
  206. package/coverage/lcov-report/src/components/zd-tag/index.html +116 -0
  207. package/coverage/lcov-report/src/components/zd-tag/tag.ts.html +142 -0
  208. package/coverage/lcov-report/src/components/zd-text/index.html +116 -0
  209. package/coverage/lcov-report/src/components/zd-text/text.ts.html +136 -0
  210. package/coverage/lcov-report/src/components/zd-text-input/index.html +116 -0
  211. package/coverage/lcov-report/src/components/zd-text-input/text-input.ts.html +778 -0
  212. package/coverage/lcov-report/src/components/zd-textarea/index.html +116 -0
  213. package/coverage/lcov-report/src/components/zd-textarea/textarea.ts.html +436 -0
  214. package/coverage/lcov-report/src/components/zd-time/index.html +131 -0
  215. package/coverage/lcov-report/src/components/zd-time/time-format-selector.ts.html +157 -0
  216. package/coverage/lcov-report/src/components/zd-time/time.ts.html +1687 -0
  217. package/coverage/lcov-report/src/components/zd-toggleable/index.html +116 -0
  218. package/coverage/lcov-report/src/components/zd-toggleable/toggleable.ts.html +196 -0
  219. package/coverage/lcov-report/src/components/zd-tooltip/index.html +116 -0
  220. package/coverage/lcov-report/src/components/zd-tooltip/tooltip.ts.html +340 -0
  221. package/coverage/lcov-report/src/components/zd-tree/index.html +116 -0
  222. package/coverage/lcov-report/src/components/zd-tree/tree.ts.html +1849 -0
  223. package/coverage/lcov-report/src/components/zd-tree-grid/index.html +191 -0
  224. package/coverage/lcov-report/src/components/zd-tree-grid/index.ts.html +103 -0
  225. package/coverage/lcov-report/src/components/zd-tree-grid/iterable-tree.ts.html +202 -0
  226. package/coverage/lcov-report/src/components/zd-tree-grid/keymap-tree.ts.html +154 -0
  227. package/coverage/lcov-report/src/components/zd-tree-grid/tree-data-navigator.ts.html +235 -0
  228. package/coverage/lcov-report/src/components/zd-tree-grid/tree-data-selector.ts.html +448 -0
  229. package/coverage/lcov-report/src/components/zd-tree-grid/tree-grid.ts.html +1390 -0
  230. package/coverage/lcov-report/src/error/delete-rows.ts.html +124 -0
  231. package/coverage/lcov-report/src/error/index.html +161 -0
  232. package/coverage/lcov-report/src/error/index.ts.html +94 -0
  233. package/coverage/lcov-report/src/error/non-initialized.ts.html +118 -0
  234. package/coverage/lcov-report/src/error/tek-grid-delete-rows.ts.html +130 -0
  235. package/coverage/lcov-report/src/error/teknisa-common-error.ts.html +109 -0
  236. package/coverage/lcov-report/src/error/zeedhi-error.ts.html +109 -0
  237. package/coverage/lcov-report/src/index.html +116 -0
  238. package/coverage/lcov-report/src/index.ts.html +145 -0
  239. package/coverage/lcov-report/src/services/index.html +116 -0
  240. package/coverage/lcov-report/src/services/index.ts.html +97 -0
  241. package/coverage/lcov-report/src/services/zd-alert/alert-queue.ts.html +205 -0
  242. package/coverage/lcov-report/src/services/zd-alert/alert-replace.ts.html +220 -0
  243. package/coverage/lcov-report/src/services/zd-alert/alert-service.ts.html +316 -0
  244. package/coverage/lcov-report/src/services/zd-alert/alert-stack.ts.html +172 -0
  245. package/coverage/lcov-report/src/services/zd-alert/index.html +176 -0
  246. package/coverage/lcov-report/src/services/zd-alert/index.ts.html +100 -0
  247. package/coverage/lcov-report/src/services/zd-dialog/dialog-service.ts.html +205 -0
  248. package/coverage/lcov-report/src/services/zd-dialog/index.html +116 -0
  249. package/coverage/lcov-report/src/services/zd-loading/index.html +116 -0
  250. package/coverage/lcov-report/src/services/zd-loading/loading-service.ts.html +157 -0
  251. package/coverage/lcov-report/src/services/zd-modal/index.html +116 -0
  252. package/coverage/lcov-report/src/services/zd-modal/modal-service.ts.html +298 -0
  253. package/coverage/lcov-report/src/utils/data-value-out/data-value-out.ts.html +202 -0
  254. package/coverage/lcov-report/src/utils/data-value-out/index.html +131 -0
  255. package/coverage/lcov-report/src/utils/data-value-out/index.ts.html +91 -0
  256. package/coverage/lcov-report/src/utils/datasource-searcher/datasource-searcher.ts.html +241 -0
  257. package/coverage/lcov-report/src/utils/datasource-searcher/index.html +131 -0
  258. package/coverage/lcov-report/src/utils/datasource-searcher/index.ts.html +91 -0
  259. package/coverage/lcov-report/src/utils/date-utils/date-utils.ts.html +166 -0
  260. package/coverage/lcov-report/src/utils/date-utils/index.html +116 -0
  261. package/coverage/lcov-report/src/utils/icons/icons.ts.html +547 -0
  262. package/coverage/lcov-report/src/utils/icons/index.html +116 -0
  263. package/coverage/lcov-report/src/utils/index.html +116 -0
  264. package/coverage/lcov-report/src/utils/index.ts.html +106 -0
  265. package/coverage/lcov-report/src/utils/is-filled-object/index.html +116 -0
  266. package/coverage/lcov-report/src/utils/is-filled-object/is-filled-object.ts.html +100 -0
  267. package/coverage/lcov-report/src/utils/is-nil.ts.html +94 -0
  268. package/coverage/lcov-report/src/utils/omit/index.html +116 -0
  269. package/coverage/lcov-report/src/utils/omit/omit.ts.html +136 -0
  270. package/coverage/lcov-report/src/utils/theme/index.html +116 -0
  271. package/coverage/lcov-report/src/utils/theme/theme.ts.html +679 -0
  272. package/coverage/lcov-report/src/utils/tree-data-structure/index.html +131 -0
  273. package/coverage/lcov-report/src/utils/tree-data-structure/index.ts.html +91 -0
  274. package/coverage/lcov-report/src/utils/tree-data-structure/tree-data-structure.ts.html +1645 -0
  275. package/coverage/lcov-report/src/utils/unique-by/index.html +116 -0
  276. package/coverage/lcov-report/src/utils/unique-by/unique-by.ts.html +130 -0
  277. package/coverage/lcov-report/tests/unit/__helpers__/component-event-helper.ts.html +106 -0
  278. package/coverage/lcov-report/tests/unit/__helpers__/flush-promises-helper.ts.html +94 -0
  279. package/coverage/lcov-report/tests/unit/__helpers__/index.html +146 -0
  280. package/coverage/lcov-report/tests/unit/__helpers__/mock-http-get-helper.ts.html +172 -0
  281. package/coverage/lcov-report/tests/unit/components/zd-component/ComponentMock.ts.html +166 -0
  282. package/coverage/lcov-report/tests/unit/components/zd-component/index.html +116 -0
  283. package/coverage/lcov.info +10074 -0
  284. package/dist/style.css +1 -1
  285. package/dist/zd-common.d.mts +7843 -0
  286. package/dist/zd-common.iife.min.js +11 -0
  287. package/dist/zd-common.mjs +12325 -0
  288. package/package.json +16 -12
  289. package/src/components/zd-carousel/interfaces.ts +1 -1
  290. package/src/components/zd-component/component.ts +6 -9
  291. package/src/components/zd-component/interfaces.ts +2 -2
  292. package/src/components/zd-date-input/date-input.ts +40 -147
  293. package/src/components/zd-date-input/utils.ts +17 -0
  294. package/src/components/zd-date-range/date-range.ts +86 -210
  295. package/src/components/zd-date-range/utils.ts +31 -0
  296. package/src/components/zd-frame/frame.ts +2 -2
  297. package/src/components/zd-grid/interfaces.ts +1 -1
  298. package/src/components/zd-grid-editable/data-editor-with-add.ts +2 -8
  299. package/src/components/zd-grid-editable/data-editor.ts +2 -2
  300. package/src/components/zd-grid-editable/grid-editable-controller.ts +2 -0
  301. package/src/components/zd-grid-editable/grid-editable.ts +10 -0
  302. package/src/components/zd-grid-editable/interfaces.ts +1 -0
  303. package/src/components/zd-iterable-component-render/interfaces.ts +2 -2
  304. package/src/components/zd-list/interfaces.ts +1 -1
  305. package/src/components/zd-master-detail/interfaces.ts +1 -1
  306. package/src/components/zd-menu/interfaces.ts +13 -2
  307. package/src/components/zd-menu/menu-group.ts +2 -2
  308. package/src/components/zd-menu/menu-link.ts +2 -2
  309. package/src/components/zd-menu/menu.ts +1 -1
  310. package/src/components/zd-month/month.ts +19 -91
  311. package/src/components/zd-textarea/interfaces.ts +2 -1
  312. package/src/components/zd-textarea/textarea.ts +6 -0
  313. package/src/components/zd-tree/interfaces.ts +2 -2
  314. package/src/styles/_display.scss +3 -1
  315. package/src/styles/_elevation.scss +2 -1
  316. package/src/styles/_functions.scss +14 -11
  317. package/src/styles/_utilities.scss +67 -62
  318. package/src/styles/_variables.scss +17 -16
  319. package/src/styles/index.scss +5 -5
  320. package/src/utils/date-utils/date-utils.ts +9 -0
  321. package/src/utils/omit/omit.ts +7 -3
  322. package/src/utils/tree-data-structure/tree-data-structure.ts +1 -1
  323. package/tests/unit/components/zd-date-input/date-input.spec.ts +36 -281
  324. package/tests/unit/components/zd-date-range/date-range.spec.ts +372 -475
  325. package/tests/unit/components/zd-grid/grid-column.spec.ts +1 -1
  326. package/tests/unit/components/zd-grid-editable/grid-editable-controller.spec.ts +3 -0
  327. package/tests/unit/components/zd-menu/menu.spec.ts +1 -1
  328. package/tests/unit/components/zd-month/month.spec.ts +7 -334
  329. package/tests/unit/components/zd-select/select.spec.ts +1 -2
  330. package/tests/unit/utils/omit.spec.ts +15 -0
  331. package/tsdown.config.ts +74 -0
  332. package/dist/types/components/index.d.ts +0 -151
  333. package/dist/types/components/zd-alert/alert.d.ts +0 -94
  334. package/dist/types/components/zd-alert/interfaces.d.ts +0 -18
  335. package/dist/types/components/zd-badge/badge.d.ts +0 -28
  336. package/dist/types/components/zd-badge/interfaces.d.ts +0 -10
  337. package/dist/types/components/zd-breadcrumbs/breadcrumbs.d.ts +0 -32
  338. package/dist/types/components/zd-breadcrumbs/interfaces.d.ts +0 -24
  339. package/dist/types/components/zd-button/button.d.ts +0 -89
  340. package/dist/types/components/zd-button/interfaces.d.ts +0 -48
  341. package/dist/types/components/zd-button-group/button-group.d.ts +0 -67
  342. package/dist/types/components/zd-button-group/interfaces.d.ts +0 -25
  343. package/dist/types/components/zd-card/card.d.ts +0 -152
  344. package/dist/types/components/zd-card/interfaces.d.ts +0 -40
  345. package/dist/types/components/zd-carousel/carousel.d.ts +0 -163
  346. package/dist/types/components/zd-carousel/interfaces.d.ts +0 -49
  347. package/dist/types/components/zd-checkbox/checkbox.d.ts +0 -12
  348. package/dist/types/components/zd-checkbox/interfaces.d.ts +0 -5
  349. package/dist/types/components/zd-checkbox-multiple/checkbox-multiple.d.ts +0 -39
  350. package/dist/types/components/zd-checkbox-multiple/interfaces.d.ts +0 -13
  351. package/dist/types/components/zd-chip/chip.d.ts +0 -60
  352. package/dist/types/components/zd-chip/interfaces.d.ts +0 -18
  353. package/dist/types/components/zd-code-viewer/code-viewer.d.ts +0 -86
  354. package/dist/types/components/zd-code-viewer/interfaces.d.ts +0 -13
  355. package/dist/types/components/zd-col/col.d.ts +0 -33
  356. package/dist/types/components/zd-col/interfaces.d.ts +0 -15
  357. package/dist/types/components/zd-collapse-card/collapse-card.d.ts +0 -56
  358. package/dist/types/components/zd-collapse-card/interfaces.d.ts +0 -14
  359. package/dist/types/components/zd-component/child-not-found.d.ts +0 -6
  360. package/dist/types/components/zd-component/component-render.d.ts +0 -16
  361. package/dist/types/components/zd-component/component.d.ts +0 -120
  362. package/dist/types/components/zd-component/interfaces.d.ts +0 -74
  363. package/dist/types/components/zd-container/container.d.ts +0 -45
  364. package/dist/types/components/zd-container/interfaces.d.ts +0 -12
  365. package/dist/types/components/zd-currency/currency.d.ts +0 -12
  366. package/dist/types/components/zd-currency/interfaces.d.ts +0 -6
  367. package/dist/types/components/zd-date-input/date-input.d.ts +0 -152
  368. package/dist/types/components/zd-date-input/interfaces.d.ts +0 -27
  369. package/dist/types/components/zd-date-range/date-range.d.ts +0 -160
  370. package/dist/types/components/zd-date-range/interfaces.d.ts +0 -18
  371. package/dist/types/components/zd-dialog/dialog.d.ts +0 -76
  372. package/dist/types/components/zd-dialog/interfaces.d.ts +0 -13
  373. package/dist/types/components/zd-divider/divider.d.ts +0 -20
  374. package/dist/types/components/zd-divider/interfaces.d.ts +0 -8
  375. package/dist/types/components/zd-dropdown/dropdown.d.ts +0 -81
  376. package/dist/types/components/zd-dropdown/interfaces.d.ts +0 -23
  377. package/dist/types/components/zd-footer/footer.d.ts +0 -80
  378. package/dist/types/components/zd-footer/interfaces.d.ts +0 -26
  379. package/dist/types/components/zd-form/form.d.ts +0 -174
  380. package/dist/types/components/zd-form/interfaces.d.ts +0 -36
  381. package/dist/types/components/zd-frame/frame.d.ts +0 -81
  382. package/dist/types/components/zd-frame/interfaces.d.ts +0 -23
  383. package/dist/types/components/zd-frame-page/frame-page.d.ts +0 -14
  384. package/dist/types/components/zd-frame-page/interfaces.d.ts +0 -4
  385. package/dist/types/components/zd-grid/data-navigator.d.ts +0 -12
  386. package/dist/types/components/zd-grid/data-selector.d.ts +0 -25
  387. package/dist/types/components/zd-grid/grid-column.d.ts +0 -47
  388. package/dist/types/components/zd-grid/grid-events.d.ts +0 -26
  389. package/dist/types/components/zd-grid/grid.d.ts +0 -85
  390. package/dist/types/components/zd-grid/index.d.ts +0 -11
  391. package/dist/types/components/zd-grid/interfaces.d.ts +0 -148
  392. package/dist/types/components/zd-grid/iterable-table.d.ts +0 -28
  393. package/dist/types/components/zd-grid/keymap-merger.d.ts +0 -26
  394. package/dist/types/components/zd-grid/keymap-navigation.d.ts +0 -6
  395. package/dist/types/components/zd-grid/table-action-builder.d.ts +0 -19
  396. package/dist/types/components/zd-grid/view-navigator.d.ts +0 -10
  397. package/dist/types/components/zd-grid-editable/data-editor-with-add.d.ts +0 -35
  398. package/dist/types/components/zd-grid-editable/data-editor.d.ts +0 -64
  399. package/dist/types/components/zd-grid-editable/errors/index.d.ts +0 -2
  400. package/dist/types/components/zd-grid-editable/errors/not-editing.d.ts +0 -6
  401. package/dist/types/components/zd-grid-editable/errors/row-not-found.d.ts +0 -6
  402. package/dist/types/components/zd-grid-editable/grid-column-editable.d.ts +0 -9
  403. package/dist/types/components/zd-grid-editable/grid-editable-controller.d.ts +0 -8
  404. package/dist/types/components/zd-grid-editable/grid-editable-events.d.ts +0 -32
  405. package/dist/types/components/zd-grid-editable/grid-editable.d.ts +0 -124
  406. package/dist/types/components/zd-grid-editable/index.d.ts +0 -8
  407. package/dist/types/components/zd-grid-editable/interfaces.d.ts +0 -66
  408. package/dist/types/components/zd-grid-editable/keymap-editing.d.ts +0 -7
  409. package/dist/types/components/zd-header/header.d.ts +0 -94
  410. package/dist/types/components/zd-header/interfaces.d.ts +0 -29
  411. package/dist/types/components/zd-icon/icon.d.ts +0 -55
  412. package/dist/types/components/zd-icon/interfaces.d.ts +0 -13
  413. package/dist/types/components/zd-image/image.d.ts +0 -73
  414. package/dist/types/components/zd-image/interfaces.d.ts +0 -17
  415. package/dist/types/components/zd-increment/increment.d.ts +0 -56
  416. package/dist/types/components/zd-increment/interfaces.d.ts +0 -9
  417. package/dist/types/components/zd-input/input-factory.d.ts +0 -6
  418. package/dist/types/components/zd-input/input.d.ts +0 -223
  419. package/dist/types/components/zd-input/interfaces.d.ts +0 -38
  420. package/dist/types/components/zd-iterable/column-not-found.d.ts +0 -6
  421. package/dist/types/components/zd-iterable/column.d.ts +0 -78
  422. package/dist/types/components/zd-iterable/conditions-manager.d.ts +0 -49
  423. package/dist/types/components/zd-iterable/interfaces.d.ts +0 -103
  424. package/dist/types/components/zd-iterable/iterable-columns-button-controller.d.ts +0 -9
  425. package/dist/types/components/zd-iterable/iterable-columns-button.d.ts +0 -35
  426. package/dist/types/components/zd-iterable/iterable-controller.d.ts +0 -8
  427. package/dist/types/components/zd-iterable/iterable-page-component.d.ts +0 -27
  428. package/dist/types/components/zd-iterable/iterable-page-info.d.ts +0 -7
  429. package/dist/types/components/zd-iterable/iterable-page-size.d.ts +0 -62
  430. package/dist/types/components/zd-iterable/iterable-pagination.d.ts +0 -28
  431. package/dist/types/components/zd-iterable/iterable.d.ts +0 -86
  432. package/dist/types/components/zd-iterable/search.d.ts +0 -31
  433. package/dist/types/components/zd-iterable-component-render/interfaces.d.ts +0 -34
  434. package/dist/types/components/zd-iterable-component-render/iterable-component-render.d.ts +0 -84
  435. package/dist/types/components/zd-layout/interfaces.d.ts +0 -7
  436. package/dist/types/components/zd-layout/layout.d.ts +0 -9
  437. package/dist/types/components/zd-list/interfaces.d.ts +0 -44
  438. package/dist/types/components/zd-list/item-not-found.d.ts +0 -6
  439. package/dist/types/components/zd-list/list-group.d.ts +0 -30
  440. package/dist/types/components/zd-list/list-item.d.ts +0 -46
  441. package/dist/types/components/zd-list/list.d.ts +0 -81
  442. package/dist/types/components/zd-loading/interfaces.d.ts +0 -7
  443. package/dist/types/components/zd-loading/loading.d.ts +0 -21
  444. package/dist/types/components/zd-login/interfaces.d.ts +0 -25
  445. package/dist/types/components/zd-login/login-button.d.ts +0 -50
  446. package/dist/types/components/zd-login/login.d.ts +0 -54
  447. package/dist/types/components/zd-main/interfaces.d.ts +0 -5
  448. package/dist/types/components/zd-main/main.d.ts +0 -7
  449. package/dist/types/components/zd-master-detail/detail-not-found.d.ts +0 -7
  450. package/dist/types/components/zd-master-detail/interfaces.d.ts +0 -10
  451. package/dist/types/components/zd-master-detail/master-detail.d.ts +0 -18
  452. package/dist/types/components/zd-master-detail/master-not-found.d.ts +0 -7
  453. package/dist/types/components/zd-menu/interfaces.d.ts +0 -68
  454. package/dist/types/components/zd-menu/menu-button.d.ts +0 -29
  455. package/dist/types/components/zd-menu/menu-group.d.ts +0 -61
  456. package/dist/types/components/zd-menu/menu-link.d.ts +0 -50
  457. package/dist/types/components/zd-menu/menu-separator.d.ts +0 -7
  458. package/dist/types/components/zd-menu/menu.d.ts +0 -199
  459. package/dist/types/components/zd-modal/interfaces.d.ts +0 -35
  460. package/dist/types/components/zd-modal/modal-close-button.d.ts +0 -28
  461. package/dist/types/components/zd-modal/modal.d.ts +0 -53
  462. package/dist/types/components/zd-month/interfaces.d.ts +0 -6
  463. package/dist/types/components/zd-month/month.d.ts +0 -33
  464. package/dist/types/components/zd-number-input/interfaces.d.ts +0 -8
  465. package/dist/types/components/zd-number-input/number-input.d.ts +0 -43
  466. package/dist/types/components/zd-password/interfaces.d.ts +0 -6
  467. package/dist/types/components/zd-password/password.d.ts +0 -17
  468. package/dist/types/components/zd-progress/interfaces.d.ts +0 -10
  469. package/dist/types/components/zd-progress/progress.d.ts +0 -41
  470. package/dist/types/components/zd-radio/interfaces.d.ts +0 -11
  471. package/dist/types/components/zd-radio/radio.d.ts +0 -35
  472. package/dist/types/components/zd-row/interfaces.d.ts +0 -13
  473. package/dist/types/components/zd-row/row.d.ts +0 -39
  474. package/dist/types/components/zd-select/interfaces.d.ts +0 -24
  475. package/dist/types/components/zd-select/select.d.ts +0 -238
  476. package/dist/types/components/zd-select-multiple/interfaces.d.ts +0 -18
  477. package/dist/types/components/zd-select-multiple/select-multiple.d.ts +0 -113
  478. package/dist/types/components/zd-svg-map/interfaces.d.ts +0 -26
  479. package/dist/types/components/zd-svg-map/svg-map.d.ts +0 -35
  480. package/dist/types/components/zd-switch/interfaces.d.ts +0 -7
  481. package/dist/types/components/zd-switch/switch.d.ts +0 -16
  482. package/dist/types/components/zd-table/interfaces.d.ts +0 -25
  483. package/dist/types/components/zd-table/table.d.ts +0 -42
  484. package/dist/types/components/zd-tabs/interfaces.d.ts +0 -40
  485. package/dist/types/components/zd-tabs/tab-not-found.d.ts +0 -11
  486. package/dist/types/components/zd-tabs/tab.d.ts +0 -57
  487. package/dist/types/components/zd-tabs/tabs.d.ts +0 -86
  488. package/dist/types/components/zd-tag/interfaces.d.ts +0 -7
  489. package/dist/types/components/zd-tag/tag.d.ts +0 -13
  490. package/dist/types/components/zd-text/interfaces.d.ts +0 -9
  491. package/dist/types/components/zd-text/text.d.ts +0 -8
  492. package/dist/types/components/zd-text-input/interfaces.d.ts +0 -23
  493. package/dist/types/components/zd-text-input/text-input.d.ts +0 -91
  494. package/dist/types/components/zd-textarea/interfaces.d.ts +0 -21
  495. package/dist/types/components/zd-textarea/textarea.d.ts +0 -71
  496. package/dist/types/components/zd-time/interfaces.d.ts +0 -22
  497. package/dist/types/components/zd-time/time-format-selector.d.ts +0 -8
  498. package/dist/types/components/zd-time/time.d.ts +0 -149
  499. package/dist/types/components/zd-toggleable/interfaces.d.ts +0 -6
  500. package/dist/types/components/zd-toggleable/toggleable.d.ts +0 -21
  501. package/dist/types/components/zd-tooltip/interfaces.d.ts +0 -18
  502. package/dist/types/components/zd-tooltip/tooltip.d.ts +0 -57
  503. package/dist/types/components/zd-tree/interfaces.d.ts +0 -107
  504. package/dist/types/components/zd-tree/tree.d.ts +0 -161
  505. package/dist/types/components/zd-tree-grid/index.d.ts +0 -6
  506. package/dist/types/components/zd-tree-grid/interfaces.d.ts +0 -35
  507. package/dist/types/components/zd-tree-grid/iterable-tree.d.ts +0 -10
  508. package/dist/types/components/zd-tree-grid/keymap-tree.d.ts +0 -7
  509. package/dist/types/components/zd-tree-grid/tree-data-navigator.d.ts +0 -10
  510. package/dist/types/components/zd-tree-grid/tree-data-selector.d.ts +0 -18
  511. package/dist/types/components/zd-tree-grid/tree-grid.d.ts +0 -119
  512. package/dist/types/error/delete-rows.d.ts +0 -7
  513. package/dist/types/error/index.d.ts +0 -3
  514. package/dist/types/error/non-initialized.d.ts +0 -7
  515. package/dist/types/error/zeedhi-error.d.ts +0 -6
  516. package/dist/types/index.d.ts +0 -6
  517. package/dist/types/services/index.d.ts +0 -4
  518. package/dist/types/services/zd-alert/alert-queue.d.ts +0 -13
  519. package/dist/types/services/zd-alert/alert-replace.d.ts +0 -18
  520. package/dist/types/services/zd-alert/alert-service.d.ts +0 -45
  521. package/dist/types/services/zd-alert/alert-stack.d.ts +0 -9
  522. package/dist/types/services/zd-alert/index.d.ts +0 -5
  523. package/dist/types/services/zd-alert/interfaces.d.ts +0 -6
  524. package/dist/types/services/zd-dialog/dialog-service.d.ts +0 -24
  525. package/dist/types/services/zd-loading/loading-service.d.ts +0 -17
  526. package/dist/types/services/zd-modal/modal-service.d.ts +0 -39
  527. package/dist/types/utils/data-value-out/data-value-out.d.ts +0 -5
  528. package/dist/types/utils/data-value-out/index.d.ts +0 -2
  529. package/dist/types/utils/data-value-out/interfaces.d.ts +0 -8
  530. package/dist/types/utils/datasource-searcher/datasource-searcher.d.ts +0 -6
  531. package/dist/types/utils/datasource-searcher/index.d.ts +0 -2
  532. package/dist/types/utils/datasource-searcher/interfaces.d.ts +0 -5
  533. package/dist/types/utils/date-utils/date-utils.d.ts +0 -1
  534. package/dist/types/utils/icons/icons.d.ts +0 -24
  535. package/dist/types/utils/index.d.ts +0 -7
  536. package/dist/types/utils/omit/omit.d.ts +0 -11
  537. package/dist/types/utils/theme/theme.d.ts +0 -34
  538. package/dist/types/utils/tree-data-structure/index.d.ts +0 -2
  539. package/dist/types/utils/tree-data-structure/interfaces.d.ts +0 -30
  540. package/dist/types/utils/tree-data-structure/tree-data-structure.d.ts +0 -155
  541. package/dist/types/utils/unique-by/unique-by.d.ts +0 -3
  542. package/dist/zd-common.js +0 -13184
  543. package/dist/zd-common.min.js +0 -13184
  544. package/rollup.config.js +0 -27
  545. package/rollup.scss.config.js +0 -14
  546. package/tsconfig.build.json +0 -7
@@ -0,0 +1,1075 @@
1
+
2
+ <!doctype html>
3
+ <html lang="en">
4
+
5
+ <head>
6
+ <title>Code coverage report for src/components/zd-form/form.ts</title>
7
+ <meta charset="utf-8" />
8
+ <link rel="stylesheet" href="../../../prettify.css" />
9
+ <link rel="stylesheet" href="../../../base.css" />
10
+ <link rel="shortcut icon" type="image/x-icon" href="../../../favicon.png" />
11
+ <meta name="viewport" content="width=device-width, initial-scale=1" />
12
+ <style type='text/css'>
13
+ .coverage-summary .sorter {
14
+ background-image: url(../../../sort-arrow-sprite.png);
15
+ }
16
+ </style>
17
+ </head>
18
+
19
+ <body>
20
+ <div class='wrapper'>
21
+ <div class='pad1'>
22
+ <h1><a href="../../../index.html">All files</a> / <a href="index.html">src/components/zd-form</a> form.ts</h1>
23
+ <div class='clearfix'>
24
+
25
+ <div class='fl pad1y space-right2'>
26
+ <span class="strong">100% </span>
27
+ <span class="quiet">Statements</span>
28
+ <span class='fraction'>92/92</span>
29
+ </div>
30
+
31
+
32
+ <div class='fl pad1y space-right2'>
33
+ <span class="strong">100% </span>
34
+ <span class="quiet">Branches</span>
35
+ <span class='fraction'>25/25</span>
36
+ </div>
37
+
38
+
39
+ <div class='fl pad1y space-right2'>
40
+ <span class="strong">100% </span>
41
+ <span class="quiet">Functions</span>
42
+ <span class='fraction'>27/27</span>
43
+ </div>
44
+
45
+
46
+ <div class='fl pad1y space-right2'>
47
+ <span class="strong">100% </span>
48
+ <span class="quiet">Lines</span>
49
+ <span class='fraction'>81/81</span>
50
+ </div>
51
+
52
+
53
+ </div>
54
+ <p class="quiet">
55
+ Press <em>n</em> or <em>j</em> to go to the next uncovered block, <em>b</em>, <em>p</em> or <em>k</em> for the previous block.
56
+ </p>
57
+ <template id="filterTemplate">
58
+ <div class="quiet">
59
+ Filter:
60
+ <input type="search" id="fileSearch">
61
+ </div>
62
+ </template>
63
+ </div>
64
+ <div class='status-line high'></div>
65
+ <pre><table class="coverage">
66
+ <tr><td class="line-count quiet"><a name='L1'></a><a href='#L1'>1</a>
67
+ <a name='L2'></a><a href='#L2'>2</a>
68
+ <a name='L3'></a><a href='#L3'>3</a>
69
+ <a name='L4'></a><a href='#L4'>4</a>
70
+ <a name='L5'></a><a href='#L5'>5</a>
71
+ <a name='L6'></a><a href='#L6'>6</a>
72
+ <a name='L7'></a><a href='#L7'>7</a>
73
+ <a name='L8'></a><a href='#L8'>8</a>
74
+ <a name='L9'></a><a href='#L9'>9</a>
75
+ <a name='L10'></a><a href='#L10'>10</a>
76
+ <a name='L11'></a><a href='#L11'>11</a>
77
+ <a name='L12'></a><a href='#L12'>12</a>
78
+ <a name='L13'></a><a href='#L13'>13</a>
79
+ <a name='L14'></a><a href='#L14'>14</a>
80
+ <a name='L15'></a><a href='#L15'>15</a>
81
+ <a name='L16'></a><a href='#L16'>16</a>
82
+ <a name='L17'></a><a href='#L17'>17</a>
83
+ <a name='L18'></a><a href='#L18'>18</a>
84
+ <a name='L19'></a><a href='#L19'>19</a>
85
+ <a name='L20'></a><a href='#L20'>20</a>
86
+ <a name='L21'></a><a href='#L21'>21</a>
87
+ <a name='L22'></a><a href='#L22'>22</a>
88
+ <a name='L23'></a><a href='#L23'>23</a>
89
+ <a name='L24'></a><a href='#L24'>24</a>
90
+ <a name='L25'></a><a href='#L25'>25</a>
91
+ <a name='L26'></a><a href='#L26'>26</a>
92
+ <a name='L27'></a><a href='#L27'>27</a>
93
+ <a name='L28'></a><a href='#L28'>28</a>
94
+ <a name='L29'></a><a href='#L29'>29</a>
95
+ <a name='L30'></a><a href='#L30'>30</a>
96
+ <a name='L31'></a><a href='#L31'>31</a>
97
+ <a name='L32'></a><a href='#L32'>32</a>
98
+ <a name='L33'></a><a href='#L33'>33</a>
99
+ <a name='L34'></a><a href='#L34'>34</a>
100
+ <a name='L35'></a><a href='#L35'>35</a>
101
+ <a name='L36'></a><a href='#L36'>36</a>
102
+ <a name='L37'></a><a href='#L37'>37</a>
103
+ <a name='L38'></a><a href='#L38'>38</a>
104
+ <a name='L39'></a><a href='#L39'>39</a>
105
+ <a name='L40'></a><a href='#L40'>40</a>
106
+ <a name='L41'></a><a href='#L41'>41</a>
107
+ <a name='L42'></a><a href='#L42'>42</a>
108
+ <a name='L43'></a><a href='#L43'>43</a>
109
+ <a name='L44'></a><a href='#L44'>44</a>
110
+ <a name='L45'></a><a href='#L45'>45</a>
111
+ <a name='L46'></a><a href='#L46'>46</a>
112
+ <a name='L47'></a><a href='#L47'>47</a>
113
+ <a name='L48'></a><a href='#L48'>48</a>
114
+ <a name='L49'></a><a href='#L49'>49</a>
115
+ <a name='L50'></a><a href='#L50'>50</a>
116
+ <a name='L51'></a><a href='#L51'>51</a>
117
+ <a name='L52'></a><a href='#L52'>52</a>
118
+ <a name='L53'></a><a href='#L53'>53</a>
119
+ <a name='L54'></a><a href='#L54'>54</a>
120
+ <a name='L55'></a><a href='#L55'>55</a>
121
+ <a name='L56'></a><a href='#L56'>56</a>
122
+ <a name='L57'></a><a href='#L57'>57</a>
123
+ <a name='L58'></a><a href='#L58'>58</a>
124
+ <a name='L59'></a><a href='#L59'>59</a>
125
+ <a name='L60'></a><a href='#L60'>60</a>
126
+ <a name='L61'></a><a href='#L61'>61</a>
127
+ <a name='L62'></a><a href='#L62'>62</a>
128
+ <a name='L63'></a><a href='#L63'>63</a>
129
+ <a name='L64'></a><a href='#L64'>64</a>
130
+ <a name='L65'></a><a href='#L65'>65</a>
131
+ <a name='L66'></a><a href='#L66'>66</a>
132
+ <a name='L67'></a><a href='#L67'>67</a>
133
+ <a name='L68'></a><a href='#L68'>68</a>
134
+ <a name='L69'></a><a href='#L69'>69</a>
135
+ <a name='L70'></a><a href='#L70'>70</a>
136
+ <a name='L71'></a><a href='#L71'>71</a>
137
+ <a name='L72'></a><a href='#L72'>72</a>
138
+ <a name='L73'></a><a href='#L73'>73</a>
139
+ <a name='L74'></a><a href='#L74'>74</a>
140
+ <a name='L75'></a><a href='#L75'>75</a>
141
+ <a name='L76'></a><a href='#L76'>76</a>
142
+ <a name='L77'></a><a href='#L77'>77</a>
143
+ <a name='L78'></a><a href='#L78'>78</a>
144
+ <a name='L79'></a><a href='#L79'>79</a>
145
+ <a name='L80'></a><a href='#L80'>80</a>
146
+ <a name='L81'></a><a href='#L81'>81</a>
147
+ <a name='L82'></a><a href='#L82'>82</a>
148
+ <a name='L83'></a><a href='#L83'>83</a>
149
+ <a name='L84'></a><a href='#L84'>84</a>
150
+ <a name='L85'></a><a href='#L85'>85</a>
151
+ <a name='L86'></a><a href='#L86'>86</a>
152
+ <a name='L87'></a><a href='#L87'>87</a>
153
+ <a name='L88'></a><a href='#L88'>88</a>
154
+ <a name='L89'></a><a href='#L89'>89</a>
155
+ <a name='L90'></a><a href='#L90'>90</a>
156
+ <a name='L91'></a><a href='#L91'>91</a>
157
+ <a name='L92'></a><a href='#L92'>92</a>
158
+ <a name='L93'></a><a href='#L93'>93</a>
159
+ <a name='L94'></a><a href='#L94'>94</a>
160
+ <a name='L95'></a><a href='#L95'>95</a>
161
+ <a name='L96'></a><a href='#L96'>96</a>
162
+ <a name='L97'></a><a href='#L97'>97</a>
163
+ <a name='L98'></a><a href='#L98'>98</a>
164
+ <a name='L99'></a><a href='#L99'>99</a>
165
+ <a name='L100'></a><a href='#L100'>100</a>
166
+ <a name='L101'></a><a href='#L101'>101</a>
167
+ <a name='L102'></a><a href='#L102'>102</a>
168
+ <a name='L103'></a><a href='#L103'>103</a>
169
+ <a name='L104'></a><a href='#L104'>104</a>
170
+ <a name='L105'></a><a href='#L105'>105</a>
171
+ <a name='L106'></a><a href='#L106'>106</a>
172
+ <a name='L107'></a><a href='#L107'>107</a>
173
+ <a name='L108'></a><a href='#L108'>108</a>
174
+ <a name='L109'></a><a href='#L109'>109</a>
175
+ <a name='L110'></a><a href='#L110'>110</a>
176
+ <a name='L111'></a><a href='#L111'>111</a>
177
+ <a name='L112'></a><a href='#L112'>112</a>
178
+ <a name='L113'></a><a href='#L113'>113</a>
179
+ <a name='L114'></a><a href='#L114'>114</a>
180
+ <a name='L115'></a><a href='#L115'>115</a>
181
+ <a name='L116'></a><a href='#L116'>116</a>
182
+ <a name='L117'></a><a href='#L117'>117</a>
183
+ <a name='L118'></a><a href='#L118'>118</a>
184
+ <a name='L119'></a><a href='#L119'>119</a>
185
+ <a name='L120'></a><a href='#L120'>120</a>
186
+ <a name='L121'></a><a href='#L121'>121</a>
187
+ <a name='L122'></a><a href='#L122'>122</a>
188
+ <a name='L123'></a><a href='#L123'>123</a>
189
+ <a name='L124'></a><a href='#L124'>124</a>
190
+ <a name='L125'></a><a href='#L125'>125</a>
191
+ <a name='L126'></a><a href='#L126'>126</a>
192
+ <a name='L127'></a><a href='#L127'>127</a>
193
+ <a name='L128'></a><a href='#L128'>128</a>
194
+ <a name='L129'></a><a href='#L129'>129</a>
195
+ <a name='L130'></a><a href='#L130'>130</a>
196
+ <a name='L131'></a><a href='#L131'>131</a>
197
+ <a name='L132'></a><a href='#L132'>132</a>
198
+ <a name='L133'></a><a href='#L133'>133</a>
199
+ <a name='L134'></a><a href='#L134'>134</a>
200
+ <a name='L135'></a><a href='#L135'>135</a>
201
+ <a name='L136'></a><a href='#L136'>136</a>
202
+ <a name='L137'></a><a href='#L137'>137</a>
203
+ <a name='L138'></a><a href='#L138'>138</a>
204
+ <a name='L139'></a><a href='#L139'>139</a>
205
+ <a name='L140'></a><a href='#L140'>140</a>
206
+ <a name='L141'></a><a href='#L141'>141</a>
207
+ <a name='L142'></a><a href='#L142'>142</a>
208
+ <a name='L143'></a><a href='#L143'>143</a>
209
+ <a name='L144'></a><a href='#L144'>144</a>
210
+ <a name='L145'></a><a href='#L145'>145</a>
211
+ <a name='L146'></a><a href='#L146'>146</a>
212
+ <a name='L147'></a><a href='#L147'>147</a>
213
+ <a name='L148'></a><a href='#L148'>148</a>
214
+ <a name='L149'></a><a href='#L149'>149</a>
215
+ <a name='L150'></a><a href='#L150'>150</a>
216
+ <a name='L151'></a><a href='#L151'>151</a>
217
+ <a name='L152'></a><a href='#L152'>152</a>
218
+ <a name='L153'></a><a href='#L153'>153</a>
219
+ <a name='L154'></a><a href='#L154'>154</a>
220
+ <a name='L155'></a><a href='#L155'>155</a>
221
+ <a name='L156'></a><a href='#L156'>156</a>
222
+ <a name='L157'></a><a href='#L157'>157</a>
223
+ <a name='L158'></a><a href='#L158'>158</a>
224
+ <a name='L159'></a><a href='#L159'>159</a>
225
+ <a name='L160'></a><a href='#L160'>160</a>
226
+ <a name='L161'></a><a href='#L161'>161</a>
227
+ <a name='L162'></a><a href='#L162'>162</a>
228
+ <a name='L163'></a><a href='#L163'>163</a>
229
+ <a name='L164'></a><a href='#L164'>164</a>
230
+ <a name='L165'></a><a href='#L165'>165</a>
231
+ <a name='L166'></a><a href='#L166'>166</a>
232
+ <a name='L167'></a><a href='#L167'>167</a>
233
+ <a name='L168'></a><a href='#L168'>168</a>
234
+ <a name='L169'></a><a href='#L169'>169</a>
235
+ <a name='L170'></a><a href='#L170'>170</a>
236
+ <a name='L171'></a><a href='#L171'>171</a>
237
+ <a name='L172'></a><a href='#L172'>172</a>
238
+ <a name='L173'></a><a href='#L173'>173</a>
239
+ <a name='L174'></a><a href='#L174'>174</a>
240
+ <a name='L175'></a><a href='#L175'>175</a>
241
+ <a name='L176'></a><a href='#L176'>176</a>
242
+ <a name='L177'></a><a href='#L177'>177</a>
243
+ <a name='L178'></a><a href='#L178'>178</a>
244
+ <a name='L179'></a><a href='#L179'>179</a>
245
+ <a name='L180'></a><a href='#L180'>180</a>
246
+ <a name='L181'></a><a href='#L181'>181</a>
247
+ <a name='L182'></a><a href='#L182'>182</a>
248
+ <a name='L183'></a><a href='#L183'>183</a>
249
+ <a name='L184'></a><a href='#L184'>184</a>
250
+ <a name='L185'></a><a href='#L185'>185</a>
251
+ <a name='L186'></a><a href='#L186'>186</a>
252
+ <a name='L187'></a><a href='#L187'>187</a>
253
+ <a name='L188'></a><a href='#L188'>188</a>
254
+ <a name='L189'></a><a href='#L189'>189</a>
255
+ <a name='L190'></a><a href='#L190'>190</a>
256
+ <a name='L191'></a><a href='#L191'>191</a>
257
+ <a name='L192'></a><a href='#L192'>192</a>
258
+ <a name='L193'></a><a href='#L193'>193</a>
259
+ <a name='L194'></a><a href='#L194'>194</a>
260
+ <a name='L195'></a><a href='#L195'>195</a>
261
+ <a name='L196'></a><a href='#L196'>196</a>
262
+ <a name='L197'></a><a href='#L197'>197</a>
263
+ <a name='L198'></a><a href='#L198'>198</a>
264
+ <a name='L199'></a><a href='#L199'>199</a>
265
+ <a name='L200'></a><a href='#L200'>200</a>
266
+ <a name='L201'></a><a href='#L201'>201</a>
267
+ <a name='L202'></a><a href='#L202'>202</a>
268
+ <a name='L203'></a><a href='#L203'>203</a>
269
+ <a name='L204'></a><a href='#L204'>204</a>
270
+ <a name='L205'></a><a href='#L205'>205</a>
271
+ <a name='L206'></a><a href='#L206'>206</a>
272
+ <a name='L207'></a><a href='#L207'>207</a>
273
+ <a name='L208'></a><a href='#L208'>208</a>
274
+ <a name='L209'></a><a href='#L209'>209</a>
275
+ <a name='L210'></a><a href='#L210'>210</a>
276
+ <a name='L211'></a><a href='#L211'>211</a>
277
+ <a name='L212'></a><a href='#L212'>212</a>
278
+ <a name='L213'></a><a href='#L213'>213</a>
279
+ <a name='L214'></a><a href='#L214'>214</a>
280
+ <a name='L215'></a><a href='#L215'>215</a>
281
+ <a name='L216'></a><a href='#L216'>216</a>
282
+ <a name='L217'></a><a href='#L217'>217</a>
283
+ <a name='L218'></a><a href='#L218'>218</a>
284
+ <a name='L219'></a><a href='#L219'>219</a>
285
+ <a name='L220'></a><a href='#L220'>220</a>
286
+ <a name='L221'></a><a href='#L221'>221</a>
287
+ <a name='L222'></a><a href='#L222'>222</a>
288
+ <a name='L223'></a><a href='#L223'>223</a>
289
+ <a name='L224'></a><a href='#L224'>224</a>
290
+ <a name='L225'></a><a href='#L225'>225</a>
291
+ <a name='L226'></a><a href='#L226'>226</a>
292
+ <a name='L227'></a><a href='#L227'>227</a>
293
+ <a name='L228'></a><a href='#L228'>228</a>
294
+ <a name='L229'></a><a href='#L229'>229</a>
295
+ <a name='L230'></a><a href='#L230'>230</a>
296
+ <a name='L231'></a><a href='#L231'>231</a>
297
+ <a name='L232'></a><a href='#L232'>232</a>
298
+ <a name='L233'></a><a href='#L233'>233</a>
299
+ <a name='L234'></a><a href='#L234'>234</a>
300
+ <a name='L235'></a><a href='#L235'>235</a>
301
+ <a name='L236'></a><a href='#L236'>236</a>
302
+ <a name='L237'></a><a href='#L237'>237</a>
303
+ <a name='L238'></a><a href='#L238'>238</a>
304
+ <a name='L239'></a><a href='#L239'>239</a>
305
+ <a name='L240'></a><a href='#L240'>240</a>
306
+ <a name='L241'></a><a href='#L241'>241</a>
307
+ <a name='L242'></a><a href='#L242'>242</a>
308
+ <a name='L243'></a><a href='#L243'>243</a>
309
+ <a name='L244'></a><a href='#L244'>244</a>
310
+ <a name='L245'></a><a href='#L245'>245</a>
311
+ <a name='L246'></a><a href='#L246'>246</a>
312
+ <a name='L247'></a><a href='#L247'>247</a>
313
+ <a name='L248'></a><a href='#L248'>248</a>
314
+ <a name='L249'></a><a href='#L249'>249</a>
315
+ <a name='L250'></a><a href='#L250'>250</a>
316
+ <a name='L251'></a><a href='#L251'>251</a>
317
+ <a name='L252'></a><a href='#L252'>252</a>
318
+ <a name='L253'></a><a href='#L253'>253</a>
319
+ <a name='L254'></a><a href='#L254'>254</a>
320
+ <a name='L255'></a><a href='#L255'>255</a>
321
+ <a name='L256'></a><a href='#L256'>256</a>
322
+ <a name='L257'></a><a href='#L257'>257</a>
323
+ <a name='L258'></a><a href='#L258'>258</a>
324
+ <a name='L259'></a><a href='#L259'>259</a>
325
+ <a name='L260'></a><a href='#L260'>260</a>
326
+ <a name='L261'></a><a href='#L261'>261</a>
327
+ <a name='L262'></a><a href='#L262'>262</a>
328
+ <a name='L263'></a><a href='#L263'>263</a>
329
+ <a name='L264'></a><a href='#L264'>264</a>
330
+ <a name='L265'></a><a href='#L265'>265</a>
331
+ <a name='L266'></a><a href='#L266'>266</a>
332
+ <a name='L267'></a><a href='#L267'>267</a>
333
+ <a name='L268'></a><a href='#L268'>268</a>
334
+ <a name='L269'></a><a href='#L269'>269</a>
335
+ <a name='L270'></a><a href='#L270'>270</a>
336
+ <a name='L271'></a><a href='#L271'>271</a>
337
+ <a name='L272'></a><a href='#L272'>272</a>
338
+ <a name='L273'></a><a href='#L273'>273</a>
339
+ <a name='L274'></a><a href='#L274'>274</a>
340
+ <a name='L275'></a><a href='#L275'>275</a>
341
+ <a name='L276'></a><a href='#L276'>276</a>
342
+ <a name='L277'></a><a href='#L277'>277</a>
343
+ <a name='L278'></a><a href='#L278'>278</a>
344
+ <a name='L279'></a><a href='#L279'>279</a>
345
+ <a name='L280'></a><a href='#L280'>280</a>
346
+ <a name='L281'></a><a href='#L281'>281</a>
347
+ <a name='L282'></a><a href='#L282'>282</a>
348
+ <a name='L283'></a><a href='#L283'>283</a>
349
+ <a name='L284'></a><a href='#L284'>284</a>
350
+ <a name='L285'></a><a href='#L285'>285</a>
351
+ <a name='L286'></a><a href='#L286'>286</a>
352
+ <a name='L287'></a><a href='#L287'>287</a>
353
+ <a name='L288'></a><a href='#L288'>288</a>
354
+ <a name='L289'></a><a href='#L289'>289</a>
355
+ <a name='L290'></a><a href='#L290'>290</a>
356
+ <a name='L291'></a><a href='#L291'>291</a>
357
+ <a name='L292'></a><a href='#L292'>292</a>
358
+ <a name='L293'></a><a href='#L293'>293</a>
359
+ <a name='L294'></a><a href='#L294'>294</a>
360
+ <a name='L295'></a><a href='#L295'>295</a>
361
+ <a name='L296'></a><a href='#L296'>296</a>
362
+ <a name='L297'></a><a href='#L297'>297</a>
363
+ <a name='L298'></a><a href='#L298'>298</a>
364
+ <a name='L299'></a><a href='#L299'>299</a>
365
+ <a name='L300'></a><a href='#L300'>300</a>
366
+ <a name='L301'></a><a href='#L301'>301</a>
367
+ <a name='L302'></a><a href='#L302'>302</a>
368
+ <a name='L303'></a><a href='#L303'>303</a>
369
+ <a name='L304'></a><a href='#L304'>304</a>
370
+ <a name='L305'></a><a href='#L305'>305</a>
371
+ <a name='L306'></a><a href='#L306'>306</a>
372
+ <a name='L307'></a><a href='#L307'>307</a>
373
+ <a name='L308'></a><a href='#L308'>308</a>
374
+ <a name='L309'></a><a href='#L309'>309</a>
375
+ <a name='L310'></a><a href='#L310'>310</a>
376
+ <a name='L311'></a><a href='#L311'>311</a>
377
+ <a name='L312'></a><a href='#L312'>312</a>
378
+ <a name='L313'></a><a href='#L313'>313</a>
379
+ <a name='L314'></a><a href='#L314'>314</a>
380
+ <a name='L315'></a><a href='#L315'>315</a>
381
+ <a name='L316'></a><a href='#L316'>316</a>
382
+ <a name='L317'></a><a href='#L317'>317</a>
383
+ <a name='L318'></a><a href='#L318'>318</a>
384
+ <a name='L319'></a><a href='#L319'>319</a>
385
+ <a name='L320'></a><a href='#L320'>320</a>
386
+ <a name='L321'></a><a href='#L321'>321</a>
387
+ <a name='L322'></a><a href='#L322'>322</a>
388
+ <a name='L323'></a><a href='#L323'>323</a>
389
+ <a name='L324'></a><a href='#L324'>324</a>
390
+ <a name='L325'></a><a href='#L325'>325</a>
391
+ <a name='L326'></a><a href='#L326'>326</a>
392
+ <a name='L327'></a><a href='#L327'>327</a>
393
+ <a name='L328'></a><a href='#L328'>328</a>
394
+ <a name='L329'></a><a href='#L329'>329</a>
395
+ <a name='L330'></a><a href='#L330'>330</a>
396
+ <a name='L331'></a><a href='#L331'>331</a></td><td class="line-coverage quiet"><span class="cline-any cline-neutral">&nbsp;</span>
397
+ <span class="cline-any cline-yes">93x</span>
398
+ <span class="cline-any cline-neutral">&nbsp;</span>
399
+ <span class="cline-any cline-neutral">&nbsp;</span>
400
+ <span class="cline-any cline-neutral">&nbsp;</span>
401
+ <span class="cline-any cline-neutral">&nbsp;</span>
402
+ <span class="cline-any cline-neutral">&nbsp;</span>
403
+ <span class="cline-any cline-neutral">&nbsp;</span>
404
+ <span class="cline-any cline-yes">93x</span>
405
+ <span class="cline-any cline-neutral">&nbsp;</span>
406
+ <span class="cline-any cline-neutral">&nbsp;</span>
407
+ <span class="cline-any cline-neutral">&nbsp;</span>
408
+ <span class="cline-any cline-neutral">&nbsp;</span>
409
+ <span class="cline-any cline-neutral">&nbsp;</span>
410
+ <span class="cline-any cline-neutral">&nbsp;</span>
411
+ <span class="cline-any cline-neutral">&nbsp;</span>
412
+ <span class="cline-any cline-neutral">&nbsp;</span>
413
+ <span class="cline-any cline-neutral">&nbsp;</span>
414
+ <span class="cline-any cline-neutral">&nbsp;</span>
415
+ <span class="cline-any cline-neutral">&nbsp;</span>
416
+ <span class="cline-any cline-neutral">&nbsp;</span>
417
+ <span class="cline-any cline-neutral">&nbsp;</span>
418
+ <span class="cline-any cline-neutral">&nbsp;</span>
419
+ <span class="cline-any cline-neutral">&nbsp;</span>
420
+ <span class="cline-any cline-neutral">&nbsp;</span>
421
+ <span class="cline-any cline-neutral">&nbsp;</span>
422
+ <span class="cline-any cline-neutral">&nbsp;</span>
423
+ <span class="cline-any cline-neutral">&nbsp;</span>
424
+ <span class="cline-any cline-neutral">&nbsp;</span>
425
+ <span class="cline-any cline-neutral">&nbsp;</span>
426
+ <span class="cline-any cline-yes">33x</span>
427
+ <span class="cline-any cline-neutral">&nbsp;</span>
428
+ <span class="cline-any cline-neutral">&nbsp;</span>
429
+ <span class="cline-any cline-neutral">&nbsp;</span>
430
+ <span class="cline-any cline-neutral">&nbsp;</span>
431
+ <span class="cline-any cline-neutral">&nbsp;</span>
432
+ <span class="cline-any cline-yes">33x</span>
433
+ <span class="cline-any cline-neutral">&nbsp;</span>
434
+ <span class="cline-any cline-neutral">&nbsp;</span>
435
+ <span class="cline-any cline-neutral">&nbsp;</span>
436
+ <span class="cline-any cline-neutral">&nbsp;</span>
437
+ <span class="cline-any cline-neutral">&nbsp;</span>
438
+ <span class="cline-any cline-yes">33x</span>
439
+ <span class="cline-any cline-neutral">&nbsp;</span>
440
+ <span class="cline-any cline-neutral">&nbsp;</span>
441
+ <span class="cline-any cline-neutral">&nbsp;</span>
442
+ <span class="cline-any cline-neutral">&nbsp;</span>
443
+ <span class="cline-any cline-neutral">&nbsp;</span>
444
+ <span class="cline-any cline-yes">33x</span>
445
+ <span class="cline-any cline-neutral">&nbsp;</span>
446
+ <span class="cline-any cline-neutral">&nbsp;</span>
447
+ <span class="cline-any cline-neutral">&nbsp;</span>
448
+ <span class="cline-any cline-neutral">&nbsp;</span>
449
+ <span class="cline-any cline-neutral">&nbsp;</span>
450
+ <span class="cline-any cline-yes">33x</span>
451
+ <span class="cline-any cline-neutral">&nbsp;</span>
452
+ <span class="cline-any cline-neutral">&nbsp;</span>
453
+ <span class="cline-any cline-neutral">&nbsp;</span>
454
+ <span class="cline-any cline-neutral">&nbsp;</span>
455
+ <span class="cline-any cline-neutral">&nbsp;</span>
456
+ <span class="cline-any cline-yes">33x</span>
457
+ <span class="cline-any cline-neutral">&nbsp;</span>
458
+ <span class="cline-any cline-neutral">&nbsp;</span>
459
+ <span class="cline-any cline-neutral">&nbsp;</span>
460
+ <span class="cline-any cline-neutral">&nbsp;</span>
461
+ <span class="cline-any cline-neutral">&nbsp;</span>
462
+ <span class="cline-any cline-neutral">&nbsp;</span>
463
+ <span class="cline-any cline-neutral">&nbsp;</span>
464
+ <span class="cline-any cline-neutral">&nbsp;</span>
465
+ <span class="cline-any cline-neutral">&nbsp;</span>
466
+ <span class="cline-any cline-neutral">&nbsp;</span>
467
+ <span class="cline-any cline-neutral">&nbsp;</span>
468
+ <span class="cline-any cline-neutral">&nbsp;</span>
469
+ <span class="cline-any cline-neutral">&nbsp;</span>
470
+ <span class="cline-any cline-neutral">&nbsp;</span>
471
+ <span class="cline-any cline-neutral">&nbsp;</span>
472
+ <span class="cline-any cline-neutral">&nbsp;</span>
473
+ <span class="cline-any cline-neutral">&nbsp;</span>
474
+ <span class="cline-any cline-neutral">&nbsp;</span>
475
+ <span class="cline-any cline-neutral">&nbsp;</span>
476
+ <span class="cline-any cline-neutral">&nbsp;</span>
477
+ <span class="cline-any cline-neutral">&nbsp;</span>
478
+ <span class="cline-any cline-neutral">&nbsp;</span>
479
+ <span class="cline-any cline-neutral">&nbsp;</span>
480
+ <span class="cline-any cline-neutral">&nbsp;</span>
481
+ <span class="cline-any cline-neutral">&nbsp;</span>
482
+ <span class="cline-any cline-neutral">&nbsp;</span>
483
+ <span class="cline-any cline-neutral">&nbsp;</span>
484
+ <span class="cline-any cline-neutral">&nbsp;</span>
485
+ <span class="cline-any cline-neutral">&nbsp;</span>
486
+ <span class="cline-any cline-neutral">&nbsp;</span>
487
+ <span class="cline-any cline-yes">33x</span>
488
+ <span class="cline-any cline-neutral">&nbsp;</span>
489
+ <span class="cline-any cline-yes">33x</span>
490
+ <span class="cline-any cline-neutral">&nbsp;</span>
491
+ <span class="cline-any cline-neutral">&nbsp;</span>
492
+ <span class="cline-any cline-neutral">&nbsp;</span>
493
+ <span class="cline-any cline-neutral">&nbsp;</span>
494
+ <span class="cline-any cline-neutral">&nbsp;</span>
495
+ <span class="cline-any cline-neutral">&nbsp;</span>
496
+ <span class="cline-any cline-neutral">&nbsp;</span>
497
+ <span class="cline-any cline-neutral">&nbsp;</span>
498
+ <span class="cline-any cline-neutral">&nbsp;</span>
499
+ <span class="cline-any cline-neutral">&nbsp;</span>
500
+ <span class="cline-any cline-neutral">&nbsp;</span>
501
+ <span class="cline-any cline-neutral">&nbsp;</span>
502
+ <span class="cline-any cline-neutral">&nbsp;</span>
503
+ <span class="cline-any cline-neutral">&nbsp;</span>
504
+ <span class="cline-any cline-neutral">&nbsp;</span>
505
+ <span class="cline-any cline-neutral">&nbsp;</span>
506
+ <span class="cline-any cline-neutral">&nbsp;</span>
507
+ <span class="cline-any cline-neutral">&nbsp;</span>
508
+ <span class="cline-any cline-neutral">&nbsp;</span>
509
+ <span class="cline-any cline-neutral">&nbsp;</span>
510
+ <span class="cline-any cline-neutral">&nbsp;</span>
511
+ <span class="cline-any cline-neutral">&nbsp;</span>
512
+ <span class="cline-any cline-neutral">&nbsp;</span>
513
+ <span class="cline-any cline-yes">78x</span>
514
+ <span class="cline-any cline-neutral">&nbsp;</span>
515
+ <span class="cline-any cline-neutral">&nbsp;</span>
516
+ <span class="cline-any cline-neutral">&nbsp;</span>
517
+ <span class="cline-any cline-yes">3x</span>
518
+ <span class="cline-any cline-yes">6x</span>
519
+ <span class="cline-any cline-yes">2x</span>
520
+ <span class="cline-any cline-neutral">&nbsp;</span>
521
+ <span class="cline-any cline-yes">4x</span>
522
+ <span class="cline-any cline-neutral">&nbsp;</span>
523
+ <span class="cline-any cline-neutral">&nbsp;</span>
524
+ <span class="cline-any cline-neutral">&nbsp;</span>
525
+ <span class="cline-any cline-neutral">&nbsp;</span>
526
+ <span class="cline-any cline-neutral">&nbsp;</span>
527
+ <span class="cline-any cline-neutral">&nbsp;</span>
528
+ <span class="cline-any cline-neutral">&nbsp;</span>
529
+ <span class="cline-any cline-neutral">&nbsp;</span>
530
+ <span class="cline-any cline-yes">1x</span>
531
+ <span class="cline-any cline-yes">2x</span>
532
+ <span class="cline-any cline-neutral">&nbsp;</span>
533
+ <span class="cline-any cline-neutral">&nbsp;</span>
534
+ <span class="cline-any cline-neutral">&nbsp;</span>
535
+ <span class="cline-any cline-neutral">&nbsp;</span>
536
+ <span class="cline-any cline-neutral">&nbsp;</span>
537
+ <span class="cline-any cline-neutral">&nbsp;</span>
538
+ <span class="cline-any cline-neutral">&nbsp;</span>
539
+ <span class="cline-any cline-neutral">&nbsp;</span>
540
+ <span class="cline-any cline-yes">6x</span>
541
+ <span class="cline-any cline-yes">6x</span>
542
+ <span class="cline-any cline-yes">6x</span>
543
+ <span class="cline-any cline-yes">18x</span>
544
+ <span class="cline-any cline-neutral">&nbsp;</span>
545
+ <span class="cline-any cline-yes">1x</span>
546
+ <span class="cline-any cline-neutral">&nbsp;</span>
547
+ <span class="cline-any cline-neutral">&nbsp;</span>
548
+ <span class="cline-any cline-neutral">&nbsp;</span>
549
+ <span class="cline-any cline-neutral">&nbsp;</span>
550
+ <span class="cline-any cline-neutral">&nbsp;</span>
551
+ <span class="cline-any cline-neutral">&nbsp;</span>
552
+ <span class="cline-any cline-neutral">&nbsp;</span>
553
+ <span class="cline-any cline-neutral">&nbsp;</span>
554
+ <span class="cline-any cline-neutral">&nbsp;</span>
555
+ <span class="cline-any cline-neutral">&nbsp;</span>
556
+ <span class="cline-any cline-yes">1x</span>
557
+ <span class="cline-any cline-neutral">&nbsp;</span>
558
+ <span class="cline-any cline-neutral">&nbsp;</span>
559
+ <span class="cline-any cline-neutral">&nbsp;</span>
560
+ <span class="cline-any cline-neutral">&nbsp;</span>
561
+ <span class="cline-any cline-neutral">&nbsp;</span>
562
+ <span class="cline-any cline-yes">33x</span>
563
+ <span class="cline-any cline-neutral">&nbsp;</span>
564
+ <span class="cline-any cline-yes">33x</span>
565
+ <span class="cline-any cline-neutral">&nbsp;</span>
566
+ <span class="cline-any cline-yes">33x</span>
567
+ <span class="cline-any cline-neutral">&nbsp;</span>
568
+ <span class="cline-any cline-neutral">&nbsp;</span>
569
+ <span class="cline-any cline-yes">3x</span>
570
+ <span class="cline-any cline-neutral">&nbsp;</span>
571
+ <span class="cline-any cline-yes">3x</span>
572
+ <span class="cline-any cline-yes">3x</span>
573
+ <span class="cline-any cline-yes">3x</span>
574
+ <span class="cline-any cline-neutral">&nbsp;</span>
575
+ <span class="cline-any cline-neutral">&nbsp;</span>
576
+ <span class="cline-any cline-yes">3x</span>
577
+ <span class="cline-any cline-yes">1x</span>
578
+ <span class="cline-any cline-neutral">&nbsp;</span>
579
+ <span class="cline-any cline-neutral">&nbsp;</span>
580
+ <span class="cline-any cline-yes">2x</span>
581
+ <span class="cline-any cline-yes">2x</span>
582
+ <span class="cline-any cline-neutral">&nbsp;</span>
583
+ <span class="cline-any cline-neutral">&nbsp;</span>
584
+ <span class="cline-any cline-yes">1x</span>
585
+ <span class="cline-any cline-neutral">&nbsp;</span>
586
+ <span class="cline-any cline-neutral">&nbsp;</span>
587
+ <span class="cline-any cline-neutral">&nbsp;</span>
588
+ <span class="cline-any cline-yes">3x</span>
589
+ <span class="cline-any cline-neutral">&nbsp;</span>
590
+ <span class="cline-any cline-yes">3x</span>
591
+ <span class="cline-any cline-yes">3x</span>
592
+ <span class="cline-any cline-yes">3x</span>
593
+ <span class="cline-any cline-neutral">&nbsp;</span>
594
+ <span class="cline-any cline-neutral">&nbsp;</span>
595
+ <span class="cline-any cline-yes">3x</span>
596
+ <span class="cline-any cline-yes">1x</span>
597
+ <span class="cline-any cline-neutral">&nbsp;</span>
598
+ <span class="cline-any cline-neutral">&nbsp;</span>
599
+ <span class="cline-any cline-yes">2x</span>
600
+ <span class="cline-any cline-yes">2x</span>
601
+ <span class="cline-any cline-neutral">&nbsp;</span>
602
+ <span class="cline-any cline-neutral">&nbsp;</span>
603
+ <span class="cline-any cline-yes">1x</span>
604
+ <span class="cline-any cline-neutral">&nbsp;</span>
605
+ <span class="cline-any cline-neutral">&nbsp;</span>
606
+ <span class="cline-any cline-neutral">&nbsp;</span>
607
+ <span class="cline-any cline-neutral">&nbsp;</span>
608
+ <span class="cline-any cline-neutral">&nbsp;</span>
609
+ <span class="cline-any cline-neutral">&nbsp;</span>
610
+ <span class="cline-any cline-neutral">&nbsp;</span>
611
+ <span class="cline-any cline-neutral">&nbsp;</span>
612
+ <span class="cline-any cline-yes">2x</span>
613
+ <span class="cline-any cline-yes">2x</span>
614
+ <span class="cline-any cline-neutral">&nbsp;</span>
615
+ <span class="cline-any cline-yes">2x</span>
616
+ <span class="cline-any cline-yes">7x</span>
617
+ <span class="cline-any cline-yes">3x</span>
618
+ <span class="cline-any cline-yes">3x</span>
619
+ <span class="cline-any cline-neutral">&nbsp;</span>
620
+ <span class="cline-any cline-yes">2x</span>
621
+ <span class="cline-any cline-yes">2x</span>
622
+ <span class="cline-any cline-yes">2x</span>
623
+ <span class="cline-any cline-neutral">&nbsp;</span>
624
+ <span class="cline-any cline-neutral">&nbsp;</span>
625
+ <span class="cline-any cline-yes">4x</span>
626
+ <span class="cline-any cline-yes">3x</span>
627
+ <span class="cline-any cline-yes">3x</span>
628
+ <span class="cline-any cline-neutral">&nbsp;</span>
629
+ <span class="cline-any cline-yes">2x</span>
630
+ <span class="cline-any cline-yes">2x</span>
631
+ <span class="cline-any cline-yes">2x</span>
632
+ <span class="cline-any cline-neutral">&nbsp;</span>
633
+ <span class="cline-any cline-neutral">&nbsp;</span>
634
+ <span class="cline-any cline-yes">1x</span>
635
+ <span class="cline-any cline-neutral">&nbsp;</span>
636
+ <span class="cline-any cline-neutral">&nbsp;</span>
637
+ <span class="cline-any cline-yes">2x</span>
638
+ <span class="cline-any cline-neutral">&nbsp;</span>
639
+ <span class="cline-any cline-neutral">&nbsp;</span>
640
+ <span class="cline-any cline-neutral">&nbsp;</span>
641
+ <span class="cline-any cline-yes">4x</span>
642
+ <span class="cline-any cline-neutral">&nbsp;</span>
643
+ <span class="cline-any cline-yes">3x</span>
644
+ <span class="cline-any cline-neutral">&nbsp;</span>
645
+ <span class="cline-any cline-yes">1x</span>
646
+ <span class="cline-any cline-neutral">&nbsp;</span>
647
+ <span class="cline-any cline-neutral">&nbsp;</span>
648
+ <span class="cline-any cline-neutral">&nbsp;</span>
649
+ <span class="cline-any cline-neutral">&nbsp;</span>
650
+ <span class="cline-any cline-neutral">&nbsp;</span>
651
+ <span class="cline-any cline-neutral">&nbsp;</span>
652
+ <span class="cline-any cline-yes">3x</span>
653
+ <span class="cline-any cline-yes">3x</span>
654
+ <span class="cline-any cline-yes">4x</span>
655
+ <span class="cline-any cline-yes">4x</span>
656
+ <span class="cline-any cline-neutral">&nbsp;</span>
657
+ <span class="cline-any cline-yes">3x</span>
658
+ <span class="cline-any cline-neutral">&nbsp;</span>
659
+ <span class="cline-any cline-neutral">&nbsp;</span>
660
+ <span class="cline-any cline-neutral">&nbsp;</span>
661
+ <span class="cline-any cline-neutral">&nbsp;</span>
662
+ <span class="cline-any cline-neutral">&nbsp;</span>
663
+ <span class="cline-any cline-neutral">&nbsp;</span>
664
+ <span class="cline-any cline-yes">14x</span>
665
+ <span class="cline-any cline-yes">2x</span>
666
+ <span class="cline-any cline-neutral">&nbsp;</span>
667
+ <span class="cline-any cline-yes">12x</span>
668
+ <span class="cline-any cline-neutral">&nbsp;</span>
669
+ <span class="cline-any cline-neutral">&nbsp;</span>
670
+ <span class="cline-any cline-neutral">&nbsp;</span>
671
+ <span class="cline-any cline-neutral">&nbsp;</span>
672
+ <span class="cline-any cline-neutral">&nbsp;</span>
673
+ <span class="cline-any cline-neutral">&nbsp;</span>
674
+ <span class="cline-any cline-neutral">&nbsp;</span>
675
+ <span class="cline-any cline-neutral">&nbsp;</span>
676
+ <span class="cline-any cline-neutral">&nbsp;</span>
677
+ <span class="cline-any cline-neutral">&nbsp;</span>
678
+ <span class="cline-any cline-neutral">&nbsp;</span>
679
+ <span class="cline-any cline-neutral">&nbsp;</span>
680
+ <span class="cline-any cline-neutral">&nbsp;</span>
681
+ <span class="cline-any cline-neutral">&nbsp;</span>
682
+ <span class="cline-any cline-yes">2x</span>
683
+ <span class="cline-any cline-neutral">&nbsp;</span>
684
+ <span class="cline-any cline-neutral">&nbsp;</span>
685
+ <span class="cline-any cline-neutral">&nbsp;</span>
686
+ <span class="cline-any cline-neutral">&nbsp;</span>
687
+ <span class="cline-any cline-neutral">&nbsp;</span>
688
+ <span class="cline-any cline-neutral">&nbsp;</span>
689
+ <span class="cline-any cline-yes">1x</span>
690
+ <span class="cline-any cline-neutral">&nbsp;</span>
691
+ <span class="cline-any cline-neutral">&nbsp;</span>
692
+ <span class="cline-any cline-neutral">&nbsp;</span>
693
+ <span class="cline-any cline-neutral">&nbsp;</span>
694
+ <span class="cline-any cline-neutral">&nbsp;</span>
695
+ <span class="cline-any cline-neutral">&nbsp;</span>
696
+ <span class="cline-any cline-neutral">&nbsp;</span>
697
+ <span class="cline-any cline-neutral">&nbsp;</span>
698
+ <span class="cline-any cline-yes">2x</span>
699
+ <span class="cline-any cline-neutral">&nbsp;</span>
700
+ <span class="cline-any cline-neutral">&nbsp;</span>
701
+ <span class="cline-any cline-neutral">&nbsp;</span>
702
+ <span class="cline-any cline-neutral">&nbsp;</span>
703
+ <span class="cline-any cline-neutral">&nbsp;</span>
704
+ <span class="cline-any cline-neutral">&nbsp;</span>
705
+ <span class="cline-any cline-neutral">&nbsp;</span>
706
+ <span class="cline-any cline-yes">1x</span>
707
+ <span class="cline-any cline-yes">1x</span>
708
+ <span class="cline-any cline-neutral">&nbsp;</span>
709
+ <span class="cline-any cline-neutral">&nbsp;</span>
710
+ <span class="cline-any cline-neutral">&nbsp;</span>
711
+ <span class="cline-any cline-yes">2x</span>
712
+ <span class="cline-any cline-neutral">&nbsp;</span>
713
+ <span class="cline-any cline-neutral">&nbsp;</span>
714
+ <span class="cline-any cline-neutral">&nbsp;</span>
715
+ <span class="cline-any cline-neutral">&nbsp;</span>
716
+ <span class="cline-any cline-neutral">&nbsp;</span>
717
+ <span class="cline-any cline-neutral">&nbsp;</span>
718
+ <span class="cline-any cline-neutral">&nbsp;</span>
719
+ <span class="cline-any cline-yes">2x</span>
720
+ <span class="cline-any cline-yes">1x</span>
721
+ <span class="cline-any cline-neutral">&nbsp;</span>
722
+ <span class="cline-any cline-neutral">&nbsp;</span>
723
+ <span class="cline-any cline-yes">1x</span>
724
+ <span class="cline-any cline-neutral">&nbsp;</span>
725
+ <span class="cline-any cline-neutral">&nbsp;</span>
726
+ <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">import { IDictionary } from '@zeedhi/core';
727
+ import { ComponentRender } from '../zd-component/component-render';
728
+ import { Input } from '../zd-input/input';
729
+ import { IForm, IFormComponent, IFormEvents, IFormGrid } from './interfaces';
730
+ &nbsp;
731
+ /**
732
+ * Base class for Form component.
733
+ */
734
+ export class Form extends ComponentRender implements IForm {
735
+ /**
736
+ * Children component structure if the component has children.
737
+ */
738
+ public declare children: IFormComponent[];
739
+ &nbsp;
740
+ /**
741
+ * Applies the align-items css property.
742
+ * Available options are start, center, end, space-between, space-around and stretch.
743
+ */
744
+ public align?: string;
745
+ &nbsp;
746
+ /**
747
+ * Applies the justify-content css property.
748
+ * Available options are start, center, end, space-between and space-around.
749
+ */
750
+ public justify?: string;
751
+ &nbsp;
752
+ /**
753
+ * Defines the component height. Possible values for this property can be
754
+ * &lt;samp&gt;'auto', '100%', '400px' or 400&lt;/samp&gt;
755
+ */
756
+ public height: string | number = 'auto';
757
+ &nbsp;
758
+ /**
759
+ * Defines the component min height. Possible values for this property can be
760
+ * &lt;samp&gt;'auto', '100%', '400px' or 400&lt;/samp&gt;
761
+ */
762
+ public minHeight: string | number = 'auto';
763
+ &nbsp;
764
+ /**
765
+ * Defines the component max height. Possible values for this property can be
766
+ * &lt;samp&gt;'auto', '100%', '400px' or 400&lt;/samp&gt;
767
+ */
768
+ public maxHeight: string | number = 'none';
769
+ &nbsp;
770
+ /**
771
+ * Defines the component width. Possible values for this property can be
772
+ * &lt;samp&gt;'auto', '100%', '400px' or 400&lt;/samp&gt;
773
+ */
774
+ public width: string | number = '100%';
775
+ &nbsp;
776
+ /**
777
+ * Defines the component min width. Possible values for this property can be
778
+ * &lt;samp&gt;'auto', '100%', '400px' or 400&lt;/samp&gt;
779
+ */
780
+ public minWidth: string | number = 'auto';
781
+ &nbsp;
782
+ /**
783
+ * Defines the component max height. Possible values for this property can be
784
+ * &lt;samp&gt;'auto', '100%', '400px' or 400&lt;/samp&gt;
785
+ */
786
+ public maxWidth: string | number = 'none';
787
+ &nbsp;
788
+ /**
789
+ * Defines form events.
790
+ */
791
+ public declare events: IFormEvents;
792
+ &nbsp;
793
+ /**
794
+ * Optional validation method assigned by view layer.
795
+ */
796
+ private viewValidate?: () =&gt; Promise&lt;{
797
+ valid: boolean;
798
+ errors: {
799
+ id: string | number;
800
+ errorMessages: string[];
801
+ }[];
802
+ }&gt;;
803
+ &nbsp;
804
+ /**
805
+ * Optional submit method.
806
+ */
807
+ public submitFunction?: () =&gt; void;
808
+ &nbsp;
809
+ /**
810
+ * Reset validation method assigned by view layer.
811
+ */
812
+ private viewResetValidation?: () =&gt; void;
813
+ &nbsp;
814
+ /**
815
+ * Children components that are Inputs.
816
+ */
817
+ private inputs: IDictionary&lt;Input&gt; = {};
818
+ &nbsp;
819
+ private internalValue: IDictionary = {};
820
+ &nbsp;
821
+ /* istanbul ignore next */
822
+ /**
823
+ * Creates a new Form.
824
+ * @param props Form properties
825
+ */
826
+ constructor(props: IForm) {
827
+ super(props);
828
+ this.align = this.getInitValue('align', props.align, this.align);
829
+ this.justify = this.getInitValue('justify', props.justify, this.justify);
830
+ this.height = this.getInitValue('height', props.height, this.height);
831
+ this.minHeight = this.getInitValue('minHeight', props.minHeight, this.minHeight);
832
+ this.maxHeight = this.getInitValue('maxHeight', props.maxHeight, this.maxHeight);
833
+ this.width = this.getInitValue('width', props.width, this.width);
834
+ this.minWidth = this.getInitValue('minWidth', props.minWidth, this.minWidth);
835
+ this.maxWidth = this.getInitValue('maxWidth', props.maxWidth, this.maxWidth);
836
+ this.internalValue = this.getInitValue('value', props.value, this.value);
837
+ }
838
+ &nbsp;
839
+ /**
840
+ * Form value.
841
+ */
842
+ get value() {
843
+ return this.internalValue;
844
+ }
845
+ &nbsp;
846
+ set value(value: IDictionary) {
847
+ Object.keys(value).forEach((key) =&gt; {
848
+ if (this.inputs[key]) {
849
+ this.inputs[key].value = value[key];
850
+ } else {
851
+ this.internalValue[key] = value[key];
852
+ }
853
+ });
854
+ }
855
+ &nbsp;
856
+ /**
857
+ * Clear all form inputs
858
+ */
859
+ public clearForm() {
860
+ Object.keys(this.value).forEach((item) =&gt; {
861
+ this.value[item] = null;
862
+ });
863
+ }
864
+ &nbsp;
865
+ /**
866
+ * Saves input instance and defines property on form value.
867
+ * @param component Children component
868
+ */
869
+ public registerInput(component: Input) {
870
+ this.inputs[component.name] = component;
871
+ component.value = this.value[component.name] || component.value;
872
+ Object.defineProperty(this.value, component.name, {
873
+ get: () =&gt; component.value,
874
+ set: (value: any) =&gt; {
875
+ component.value = value;
876
+ },
877
+ enumerable: true,
878
+ configurable: true,
879
+ });
880
+ }
881
+ &nbsp;
882
+ /**
883
+ * Children props without grid system.
884
+ */
885
+ get childrenProps() {
886
+ return this.children.map(({ grid, ...otherAttrs }) =&gt; otherAttrs);
887
+ }
888
+ &nbsp;
889
+ /**
890
+ * Checks if the value matches a col value (1, 2, ... 12) or auto
891
+ */
892
+ private matchColumn = (value: string) =&gt; (!Number.isNaN(Number(value)) || value === 'auto');
893
+ &nbsp;
894
+ private breakpoints = ['lg', 'md', 'sm', 'xl', 'xxl'] as const;
895
+ &nbsp;
896
+ private matchBreakpoint = (value: string): value is typeof this.breakpoints[number] =&gt; (this.breakpoints.includes(value as any))
897
+ &nbsp;
898
+ private handleColClass(cssClass: string): { key: keyof IFormGrid, value: string } | null {
899
+ const dataString = cssClass.replace('zd-col-', '');
900
+ &nbsp;
901
+ const splittedData = dataString.split('-');
902
+ const firstData = splittedData[0];
903
+ const secondData = splittedData[1];
904
+ &nbsp;
905
+ // in this case the class is zd-col-{n} or zd-col-auto
906
+ if (this.matchColumn(firstData)) {
907
+ return { key: 'cols', value: firstData };
908
+ }
909
+ &nbsp;
910
+ const matchWithBreakpoints = this.matchBreakpoint(firstData) &amp;&amp; this.matchColumn(secondData);
911
+ if (!matchWithBreakpoints) return null;
912
+ &nbsp;
913
+ // in this case the class is zd-col-{breakpoint}-{n} or zd-col-{breakpoint}-auto
914
+ return { key: firstData, value: secondData };
915
+ }
916
+ &nbsp;
917
+ private handleOffsetClass(cssClass: string): { key: keyof IFormGrid, value: string } | null {
918
+ const dataString = cssClass.replace('zd-offset-', '');
919
+ &nbsp;
920
+ const splittedData = dataString.split('-');
921
+ const firstData = splittedData[0];
922
+ const secondData = splittedData[1];
923
+ &nbsp;
924
+ // in this case the class is zd-offset-{n} or zd-offset-auto
925
+ if (this.matchColumn(firstData)) {
926
+ return { key: 'offset', value: firstData };
927
+ }
928
+ &nbsp;
929
+ const matchWithBreakpoints = this.matchBreakpoint(firstData) &amp;&amp; this.matchColumn(secondData);
930
+ if (!matchWithBreakpoints) return null;
931
+ &nbsp;
932
+ // in this case the class is zd-offset-{breakpoint}-{n} or zd-offset-{breakpoint}-auto
933
+ return { key: `offset-${firstData}`, value: secondData };
934
+ }
935
+ &nbsp;
936
+ /**
937
+ * This method searches in a css class string to find classes related to grid cols \
938
+ * Parses all of the grid cols classes found to form grid object entries, for example
939
+ * the following class: 'zd-col-sm-12 zd-col-md-6' will become { sm: '12', md: '6' }
940
+ */
941
+ private parseGridClasses(classes: string) {
942
+ const classesArray = classes.split(' ');
943
+ const gridObject: IFormGrid = {};
944
+ &nbsp;
945
+ classesArray.forEach((cssClass) =&gt; {
946
+ if (cssClass.startsWith('zd-col-')) {
947
+ const result = this.handleColClass(cssClass);
948
+ if (!result) return;
949
+ &nbsp;
950
+ const { key, value } = result;
951
+ gridObject[key] = value;
952
+ return;
953
+ }
954
+ &nbsp;
955
+ if (cssClass.startsWith('zd-offset-')) {
956
+ const result = this.handleOffsetClass(cssClass);
957
+ if (!result) return;
958
+ &nbsp;
959
+ const { key, value } = result;
960
+ gridObject[key] = value;
961
+ return;
962
+ }
963
+ &nbsp;
964
+ return;
965
+ });
966
+ &nbsp;
967
+ return gridObject;
968
+ }
969
+ &nbsp;
970
+ private getChildGrid(child: IFormComponent) {
971
+ if (child.grid &amp;&amp; Object.keys(child.grid).length &gt; 0) return child.grid;
972
+ &nbsp;
973
+ if (child.cssClass) return this.parseGridClasses(child.cssClass);
974
+ &nbsp;
975
+ return {};
976
+ }
977
+ &nbsp;
978
+ /**
979
+ * Grid system for each child.
980
+ */
981
+ get childrenGrid() {
982
+ const childrenGrid: IDictionary&lt;IFormGrid&gt; = {};
983
+ this.children.forEach((child) =&gt; {
984
+ const grid = this.getChildGrid(child);
985
+ childrenGrid[child.name] = { cols: '3', ...grid };
986
+ });
987
+ return childrenGrid;
988
+ }
989
+ &nbsp;
990
+ /**
991
+ * Validates form.
992
+ */
993
+ public validate() {
994
+ if (this.viewValidate) {
995
+ return this.viewValidate();
996
+ }
997
+ return Promise.resolve({ valid: Object.values(this.inputs).every((input) =&gt; input.isValid()) });
998
+ }
999
+ &nbsp;
1000
+ /**
1001
+ * Sets view validation method.
1002
+ */
1003
+ public setViewValidate(
1004
+ viewValidate: () =&gt; Promise&lt;{
1005
+ valid: boolean;
1006
+ errors: {
1007
+ id: string | number;
1008
+ errorMessages: string[];
1009
+ }[];
1010
+ }&gt;,
1011
+ ) {
1012
+ this.viewValidate = viewValidate;
1013
+ }
1014
+ &nbsp;
1015
+ /**
1016
+ * Sets view reset validation method.
1017
+ */
1018
+ public setViewResetValidation(viewResetValidation: () =&gt; void) {
1019
+ this.viewResetValidation = viewResetValidation;
1020
+ }
1021
+ &nbsp;
1022
+ /**
1023
+ * Triggered when form is submitted and it's valid.
1024
+ * @param event DOM Event
1025
+ * @param element Form component
1026
+ */
1027
+ public callSubmitEvent(event: Event, element: any) {
1028
+ this.callEvent('submit', { event, element, component: this });
1029
+ }
1030
+ &nbsp;
1031
+ /**
1032
+ * Triggered when the component is mounted.
1033
+ * @param element Element mounted reference
1034
+ */
1035
+ public onMounted(element: any) {
1036
+ super.onMounted(element);
1037
+ this.submitFunction = (element as any).requestSubmit?.bind(element);
1038
+ }
1039
+ &nbsp;
1040
+ public submit() {
1041
+ if (this.submitFunction) this.submitFunction();
1042
+ }
1043
+ &nbsp;
1044
+ /**
1045
+ * Reset all form validation errors.
1046
+ * @throws Will throw if viewResetValidation is undefined
1047
+ */
1048
+ public resetValidation() {
1049
+ if (this.viewResetValidation) {
1050
+ return this.viewResetValidation();
1051
+ }
1052
+ &nbsp;
1053
+ throw new Error('viewResetValidation method not assigned');
1054
+ }
1055
+ }
1056
+ &nbsp;</pre></td></tr></table></pre>
1057
+
1058
+ <div class='push'></div><!-- for sticky footer -->
1059
+ </div><!-- /wrapper -->
1060
+ <div class='footer quiet pad2 space-top1 center small'>
1061
+ Code coverage generated by
1062
+ <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
1063
+ at 2026-07-03T14:17:58.205Z
1064
+ </div>
1065
+ <script src="../../../prettify.js"></script>
1066
+ <script>
1067
+ window.onload = function () {
1068
+ prettyPrint();
1069
+ };
1070
+ </script>
1071
+ <script src="../../../sorter.js"></script>
1072
+ <script src="../../../block-navigation.js"></script>
1073
+ </body>
1074
+ </html>
1075
+