@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-component/component.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-component</a> component.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'>96/96</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'>32/32</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'>25/25</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'>94/94</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-yes">94x</span>
397
+ <span class="cline-any cline-neutral">&nbsp;</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-neutral">&nbsp;</span>
405
+ <span class="cline-any cline-yes">94x</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-yes">94x</span>
412
+ <span class="cline-any cline-neutral">&nbsp;</span>
413
+ <span class="cline-any cline-yes">1860x</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-yes">1860x</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-yes">1860x</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-yes">1860x</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-neutral">&nbsp;</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-yes">1860x</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">1860x</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-yes">1860x</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">1860x</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-yes">1860x</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-neutral">&nbsp;</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-yes">1860x</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">1860x</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-neutral">&nbsp;</span>
457
+ <span class="cline-any cline-neutral">&nbsp;</span>
458
+ <span class="cline-any cline-yes">1860x</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-yes">1860x</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-yes">1860x</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-yes">1860x</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-yes">1860x</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-neutral">&nbsp;</span>
488
+ <span class="cline-any cline-neutral">&nbsp;</span>
489
+ <span class="cline-any cline-neutral">&nbsp;</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-yes">1860x</span>
494
+ <span class="cline-any cline-yes">1860x</span>
495
+ <span class="cline-any cline-yes">1860x</span>
496
+ <span class="cline-any cline-yes">1860x</span>
497
+ <span class="cline-any cline-yes">1860x</span>
498
+ <span class="cline-any cline-yes">1860x</span>
499
+ <span class="cline-any cline-yes">1860x</span>
500
+ <span class="cline-any cline-yes">1860x</span>
501
+ <span class="cline-any cline-yes">1860x</span>
502
+ <span class="cline-any cline-yes">1860x</span>
503
+ <span class="cline-any cline-yes">1860x</span>
504
+ <span class="cline-any cline-yes">1860x</span>
505
+ <span class="cline-any cline-yes">1860x</span>
506
+ <span class="cline-any cline-yes">1860x</span>
507
+ <span class="cline-any cline-yes">1860x</span>
508
+ <span class="cline-any cline-yes">1860x</span>
509
+ <span class="cline-any cline-yes">1860x</span>
510
+ <span class="cline-any cline-yes">1860x</span>
511
+ <span class="cline-any cline-yes">1860x</span>
512
+ <span class="cline-any cline-neutral">&nbsp;</span>
513
+ <span class="cline-any cline-yes">1860x</span>
514
+ <span class="cline-any cline-yes">2x</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-neutral">&nbsp;</span>
518
+ <span class="cline-any cline-neutral">&nbsp;</span>
519
+ <span class="cline-any cline-yes">1x</span>
520
+ <span class="cline-any cline-neutral">&nbsp;</span>
521
+ <span class="cline-any cline-neutral">&nbsp;</span>
522
+ <span class="cline-any cline-neutral">&nbsp;</span>
523
+ <span class="cline-any cline-yes">2x</span>
524
+ <span class="cline-any cline-yes">1x</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-yes">1x</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-neutral">&nbsp;</span>
531
+ <span class="cline-any cline-neutral">&nbsp;</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-yes">74063x</span>
540
+ <span class="cline-any cline-yes">74063x</span>
541
+ <span class="cline-any cline-yes">1x</span>
542
+ <span class="cline-any cline-yes">74062x</span>
543
+ <span class="cline-any cline-yes">3564x</span>
544
+ <span class="cline-any cline-yes">3564x</span>
545
+ <span class="cline-any cline-neutral">&nbsp;</span>
546
+ <span class="cline-any cline-yes">74063x</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-yes">1949x</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-neutral">&nbsp;</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-yes">3x</span>
561
+ <span class="cline-any cline-yes">5x</span>
562
+ <span class="cline-any cline-yes">2x</span>
563
+ <span class="cline-any cline-neutral">&nbsp;</span>
564
+ <span class="cline-any cline-yes">3x</span>
565
+ <span class="cline-any cline-neutral">&nbsp;</span>
566
+ <span class="cline-any cline-neutral">&nbsp;</span>
567
+ <span class="cline-any cline-neutral">&nbsp;</span>
568
+ <span class="cline-any cline-yes">3x</span>
569
+ <span class="cline-any cline-neutral">&nbsp;</span>
570
+ <span class="cline-any cline-neutral">&nbsp;</span>
571
+ <span class="cline-any cline-neutral">&nbsp;</span>
572
+ <span class="cline-any cline-neutral">&nbsp;</span>
573
+ <span class="cline-any cline-yes">1080x</span>
574
+ <span class="cline-any cline-yes">1080x</span>
575
+ <span class="cline-any cline-yes">150x</span>
576
+ <span class="cline-any cline-neutral">&nbsp;</span>
577
+ <span class="cline-any cline-yes">930x</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-neutral">&nbsp;</span>
581
+ <span class="cline-any cline-neutral">&nbsp;</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-neutral">&nbsp;</span>
585
+ <span class="cline-any cline-yes">1x</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-neutral">&nbsp;</span>
589
+ <span class="cline-any cline-neutral">&nbsp;</span>
590
+ <span class="cline-any cline-neutral">&nbsp;</span>
591
+ <span class="cline-any cline-neutral">&nbsp;</span>
592
+ <span class="cline-any cline-neutral">&nbsp;</span>
593
+ <span class="cline-any cline-yes">2x</span>
594
+ <span class="cline-any cline-yes">2x</span>
595
+ <span class="cline-any cline-yes">1x</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-neutral">&nbsp;</span>
600
+ <span class="cline-any cline-neutral">&nbsp;</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-neutral">&nbsp;</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-yes">2x</span>
607
+ <span class="cline-any cline-yes">2x</span>
608
+ <span class="cline-any cline-yes">1x</span>
609
+ <span class="cline-any cline-neutral">&nbsp;</span>
610
+ <span class="cline-any cline-yes">1x</span>
611
+ <span class="cline-any cline-neutral">&nbsp;</span>
612
+ <span class="cline-any cline-neutral">&nbsp;</span>
613
+ <span class="cline-any cline-neutral">&nbsp;</span>
614
+ <span class="cline-any cline-neutral">&nbsp;</span>
615
+ <span class="cline-any cline-neutral">&nbsp;</span>
616
+ <span class="cline-any cline-neutral">&nbsp;</span>
617
+ <span class="cline-any cline-neutral">&nbsp;</span>
618
+ <span class="cline-any cline-yes">6x</span>
619
+ <span class="cline-any cline-neutral">&nbsp;</span>
620
+ <span class="cline-any cline-neutral">&nbsp;</span>
621
+ <span class="cline-any cline-neutral">&nbsp;</span>
622
+ <span class="cline-any cline-neutral">&nbsp;</span>
623
+ <span class="cline-any cline-yes">356x</span>
624
+ <span class="cline-any cline-yes">356x</span>
625
+ <span class="cline-any cline-yes">356x</span>
626
+ <span class="cline-any cline-yes">6x</span>
627
+ <span class="cline-any cline-neutral">&nbsp;</span>
628
+ <span class="cline-any cline-yes">356x</span>
629
+ <span class="cline-any cline-neutral">&nbsp;</span>
630
+ <span class="cline-any cline-neutral">&nbsp;</span>
631
+ <span class="cline-any cline-neutral">&nbsp;</span>
632
+ <span class="cline-any cline-neutral">&nbsp;</span>
633
+ <span class="cline-any cline-yes">2x</span>
634
+ <span class="cline-any cline-neutral">&nbsp;</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-neutral">&nbsp;</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">256x</span>
642
+ <span class="cline-any cline-yes">103x</span>
643
+ <span class="cline-any cline-neutral">&nbsp;</span>
644
+ <span class="cline-any cline-yes">256x</span>
645
+ <span class="cline-any cline-neutral">&nbsp;</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-yes">23x</span>
650
+ <span class="cline-any cline-yes">1x</span>
651
+ <span class="cline-any cline-neutral">&nbsp;</span>
652
+ <span class="cline-any cline-yes">23x</span>
653
+ <span class="cline-any cline-neutral">&nbsp;</span>
654
+ <span class="cline-any cline-neutral">&nbsp;</span>
655
+ <span class="cline-any cline-neutral">&nbsp;</span>
656
+ <span class="cline-any cline-neutral">&nbsp;</span>
657
+ <span class="cline-any cline-yes">2x</span>
658
+ <span class="cline-any cline-yes">2x</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-neutral">&nbsp;</span>
665
+ <span class="cline-any cline-neutral">&nbsp;</span>
666
+ <span class="cline-any cline-neutral">&nbsp;</span>
667
+ <span class="cline-any cline-yes">29x</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-yes">82x</span>
681
+ <span class="cline-any cline-yes">82x</span>
682
+ <span class="cline-any cline-neutral">&nbsp;</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-neutral">&nbsp;</span>
690
+ <span class="cline-any cline-yes">60x</span>
691
+ <span class="cline-any cline-yes">60x</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-yes">2x</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-neutral">&nbsp;</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-yes">2x</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-neutral">&nbsp;</span>
707
+ <span class="cline-any cline-neutral">&nbsp;</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-neutral">&nbsp;</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-neutral">&nbsp;</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 {
727
+ AccessorManager,
728
+ IAccessorManager,
729
+ IDictionary,
730
+ IKeyMap,
731
+ Metadata,
732
+ Event as ZdEvent,
733
+ KeyMap as ZdKeyMap,
734
+ } from '@zeedhi/core';
735
+ import { ChildNotFoundError } from './child-not-found';
736
+ import { IComponent, IComponentDirectives, IComponentEvents, IComponentInstance } from './interfaces';
737
+ &nbsp;
738
+ /**
739
+ * Base class for all Zeedhi components.
740
+ */
741
+ export class Component&lt;T extends IComponent = IComponent&gt; implements IComponentInstance {
742
+ // Allow the component to be duplicated without warning.
743
+ public allowDuplicate = false;
744
+ &nbsp;
745
+ // Automatically add focus to input when it's created.
746
+ public autofocus = false;
747
+ &nbsp;
748
+ // Children component structure if the component has children.
749
+ public children: IComponent[] = [];
750
+ &nbsp;
751
+ // All children instances if the component has children
752
+ public childrenInstances: any[] = [];
753
+ &nbsp;
754
+ /**
755
+ * CSS classes to be added to the DOM element when rendering.
756
+ * To apply multiple CSS classes use space as separator
757
+ * (e.g. &lt;samp&gt;\"class1 class2\"&lt;/samp&gt;).
758
+ */
759
+ public cssClass = '';
760
+ &nbsp;
761
+ // Set css in line with cssStyle.
762
+ public cssStyle: string | IDictionary&lt;string&gt; = '';
763
+ &nbsp;
764
+ // Directives registered to the component.
765
+ public directives: IComponentDirectives = {};
766
+ &nbsp;
767
+ // Events registered to the component.
768
+ public events: IComponentEvents = {};
769
+ &nbsp;
770
+ // Controls component visibility.
771
+ public isVisible = true;
772
+ &nbsp;
773
+ // Defines component name.
774
+ public name!: string;
775
+ &nbsp;
776
+ // Applies the dark theme variant to the component.
777
+ public dark = false; // deprecated
778
+ &nbsp;
779
+ // Applies the light theme variant to the component.
780
+ public light = false; // deprecated
781
+ &nbsp;
782
+ // Overwrite the default theme.
783
+ public theme?: string;
784
+ &nbsp;
785
+ /**
786
+ * Set component height to fill all space available
787
+ */
788
+ public fillHeight: boolean | string = false;
789
+ &nbsp;
790
+ /**
791
+ * Parent component instance. This property should be used when is
792
+ * necessary create dynamic components.
793
+ */
794
+ public parent?: IComponentInstance;
795
+ &nbsp;
796
+ // Define if the component id.
797
+ public componentId!: number;
798
+ &nbsp;
799
+ // Define component key mapping
800
+ public keyMap: IKeyMap = {};
801
+ &nbsp;
802
+ // Return if component has focus
803
+ public isFocused = false;
804
+ &nbsp;
805
+ // Return if component can receive focus using tab
806
+ public tabStop = true;
807
+ &nbsp;
808
+ // Properties accessors to controller.
809
+ private accessorManager!: IAccessorManager;
810
+ &nbsp;
811
+ // Sets view focus method.
812
+ protected viewFocus?: () =&gt; void;
813
+ &nbsp;
814
+ public userProperties: IDictionary&lt;any&gt; = {};
815
+ &nbsp;
816
+ protected props: T;
817
+ &nbsp;
818
+ /**
819
+ * Creates a new Component.
820
+ * @param props Components properties
821
+ */
822
+ constructor(props: T) {
823
+ this.props = { ...props };
824
+ this.accessorManager = new AccessorManager();
825
+ this.parent = props.parent;
826
+ this.name = props.name;
827
+ this.events = ZdEvent.factory(props.events || this.events);
828
+ this.allowDuplicate = this.getInitValue('allowDuplicate', props.allowDuplicate, this.allowDuplicate);
829
+ this.autofocus = this.getInitValue('autofocus', props.autofocus, this.autofocus);
830
+ this.cssClass = this.getInitValue('cssClass', props.cssClass, this.cssClass);
831
+ this.cssStyle = this.getInitValue('cssStyle', props.cssStyle, this.cssStyle);
832
+ this.directives = this.getInitValue('directives', props.directives, this.directives);
833
+ this.isVisible = this.getInitValue('isVisible', props.isVisible, this.isVisible);
834
+ this.dark = this.getInitValue('dark', props.dark, this.dark); // deprecated
835
+ this.light = this.getInitValue('light', props.light, this.light); // deprecated
836
+ this.theme = this.getInitValue('theme', props.theme, this.theme);
837
+ this.tabStop = this.getInitValue('tabStop', props.tabStop, this.tabStop);
838
+ this.children = Array.isArray(props.children) ? props.children : this.children;
839
+ this.keyMap = ZdKeyMap.factory(props.keyMap || this.keyMap);
840
+ this.fillHeight = this.getInitValue('fillHeight', props.fillHeight, this.fillHeight);
841
+ this.userProperties = this.getInitValue('userProperties', props.userProperties, this.userProperties);
842
+ &nbsp;
843
+ for (const directive in this.directives) {
844
+ this.directives[directive] = ZdEvent.factory(this.directives[directive] || {});
845
+ }
846
+ }
847
+ &nbsp;
848
+ public setViewFocus(viewFocus: () =&gt; void) {
849
+ this.viewFocus = viewFocus;
850
+ }
851
+ &nbsp;
852
+ public setFocus() {
853
+ if (this.viewFocus) {
854
+ return this.viewFocus();
855
+ }
856
+ &nbsp;
857
+ throw new Error('viewFocus method not assigned');
858
+ }
859
+ &nbsp;
860
+ /**
861
+ * Retrieves initial value for the attribute and if it is an accessor,
862
+ * updates props value.
863
+ * @param name Attribute name
864
+ * @param value Attribute value
865
+ * @param defaultValue Attribute default value
866
+ * @returns Initial value
867
+ */
868
+ protected getInitValue(name: string, value: any, defaultValue: any) {
869
+ let returnValue = defaultValue;
870
+ if (this.accessorManager.hasAccessor(name)) {
871
+ returnValue = (this as any)[name];
872
+ } else if (typeof value !== 'undefined') {
873
+ returnValue = value;
874
+ this.accessorManager.addProp(name, value);
875
+ }
876
+ return returnValue;
877
+ }
878
+ &nbsp;
879
+ // Creates all accessors based on props value.
880
+ protected createAccessors() {
881
+ this.accessorManager.createAccessors(this);
882
+ }
883
+ &nbsp;
884
+ /**
885
+ * Creates the accessors defined inside an object recursively
886
+ * @param obj Object having the accessors
887
+ * @param path Name of the `obj` property inside the component
888
+ */
889
+ protected createObjAccessors(obj: any, path: string) {
890
+ for (const key in obj) {
891
+ if (obj[key] instanceof Object) {
892
+ this.createObjAccessors(obj[key], `${path}.${key}`);
893
+ } else {
894
+ this.accessorManager.addProp(`${path}.${key}`, obj[key]);
895
+ }
896
+ }
897
+ &nbsp;
898
+ this.createAccessors();
899
+ }
900
+ &nbsp;
901
+ /** Test and trigger an event */
902
+ public callEvent(eventName: string, args: any) {
903
+ const event = this.events[eventName];
904
+ if (event &amp;&amp; typeof event === 'function') {
905
+ return !!event(args);
906
+ }
907
+ return false;
908
+ }
909
+ &nbsp;
910
+ /**
911
+ * Adds a new child
912
+ * @param child Child component structure
913
+ */
914
+ public addChild(child: IComponent) {
915
+ this.children.push(child);
916
+ }
917
+ &nbsp;
918
+ /**
919
+ * Removes child by name
920
+ * @param name Child name
921
+ */
922
+ public removeChild(name: string) {
923
+ const index = this.children.findIndex((child) =&gt; child.name === name);
924
+ if (index !== -1) {
925
+ this.children.splice(index, 1);
926
+ this.childrenInstances.splice(index, 1);
927
+ }
928
+ }
929
+ &nbsp;
930
+ /**
931
+ * Retrieves a child instance by name
932
+ * @param name Child name
933
+ * @throws Will throw if child not exists
934
+ */
935
+ public getChildInstance&lt;T&gt;(name: string): T {
936
+ const child = this.childrenInstances.find((item) =&gt; item.name === name);
937
+ if (child) {
938
+ return child;
939
+ }
940
+ throw new ChildNotFoundError(name, this.name);
941
+ }
942
+ &nbsp;
943
+ /**
944
+ * Adds new child instance
945
+ * @param instance Child instance
946
+ */
947
+ public addChildInstance(instance: Component) {
948
+ this.childrenInstances.push(instance);
949
+ }
950
+ &nbsp;
951
+ // Triggered when the component is created.
952
+ public onCreated() {
953
+ this.createAccessors();
954
+ this.componentId = Metadata.addInstance(this, this.allowDuplicate);
955
+ if (this.parent) {
956
+ this.parent.addChildInstance(this);
957
+ }
958
+ this.callEvent('onCreated', { component: this });
959
+ }
960
+ &nbsp;
961
+ // Triggered before component is mounted.
962
+ public onBeforeMount() {
963
+ this.callEvent('onBeforeMount', { component: this });
964
+ }
965
+ &nbsp;
966
+ /**
967
+ * Triggered when the component is mounted.
968
+ * @param element Element mounted reference
969
+ */
970
+ public onMounted(element: any) {
971
+ if (Object.keys(this.keyMap).length) {
972
+ ZdKeyMap.bind(this.keyMap, this, element);
973
+ }
974
+ this.callEvent('onMounted', { element, component: this });
975
+ }
976
+ &nbsp;
977
+ // Triggered before the component is destroyed.
978
+ public onBeforeDestroy() {
979
+ if (Object.keys(this.keyMap).length) {
980
+ ZdKeyMap.unbind(this.keyMap, this);
981
+ }
982
+ this.callEvent('onBeforeDestroy', { component: this });
983
+ }
984
+ &nbsp;
985
+ // Triggered when the component is destroyed.
986
+ public onDestroyed() {
987
+ Metadata.clearInstance(this.name, this.componentId);
988
+ this.callEvent('onDestroyed', { component: this });
989
+ }
990
+ &nbsp;
991
+ /**
992
+ * Triggered when the component is clicked.
993
+ * @param event DOM event
994
+ * @param element Element clicked
995
+ */
996
+ public click(event?: Event, element?: any) {
997
+ this.callEvent('click', {
998
+ event: event || new MouseEvent('click'),
999
+ element: element,
1000
+ component: this,
1001
+ });
1002
+ }
1003
+ &nbsp;
1004
+ /**
1005
+ * Triggered when the component is focused.
1006
+ * @param event DOM event
1007
+ * @param element Element focused
1008
+ */
1009
+ public focus(event: Event, element: any) {
1010
+ this.isFocused = true;
1011
+ this.callEvent('focus', { event, element, component: this });
1012
+ }
1013
+ &nbsp;
1014
+ /**
1015
+ * Triggered when the component loses focus.
1016
+ * @param event DOM event
1017
+ * @param element Element that lost the focus
1018
+ */
1019
+ public blur(event: Event, element: any) {
1020
+ this.isFocused = false;
1021
+ this.callEvent('blur', { event, element, component: this });
1022
+ }
1023
+ &nbsp;
1024
+ public mouseenter(event?: Event, element?: any) {
1025
+ this.callEvent('mouseenter', {
1026
+ event: event || new MouseEvent('mouseenter'),
1027
+ element: element,
1028
+ component: this,
1029
+ });
1030
+ }
1031
+ &nbsp;
1032
+ public mouseleave(event?: Event, element?: any) {
1033
+ this.callEvent('mouseleave', {
1034
+ event: event || new MouseEvent('mouseleave'),
1035
+ element: element,
1036
+ component: this,
1037
+ });
1038
+ }
1039
+ &nbsp;
1040
+ public mouseout(event?: Event, element?: any) {
1041
+ this.callEvent('mouseout', {
1042
+ event: event || new MouseEvent('mouseout'),
1043
+ element: element,
1044
+ component: this,
1045
+ });
1046
+ }
1047
+ &nbsp;
1048
+ public mouseover(event?: Event, element?: any) {
1049
+ this.callEvent('mouseover', {
1050
+ event: event || new MouseEvent('mouseover'),
1051
+ element: element,
1052
+ component: this,
1053
+ });
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
+