mis-crystal-design-system 17.0.1 → 17.0.2-test

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 (176) hide show
  1. package/daterangepicker_v2/tz-drp-container/tz-drp-container.component.d.ts +1 -1
  2. package/dynamic-form/dynamic-form.component.d.ts +0 -1
  3. package/esm2022/action-list/action-list.component.mjs +2 -2
  4. package/esm2022/action-list/action-list.module.mjs +2 -2
  5. package/esm2022/analytics/analytics.module.mjs +2 -2
  6. package/esm2022/analytics/analytics.service.mjs +2 -2
  7. package/esm2022/async-search-dropdown/async-dropdown.component.mjs +2 -2
  8. package/esm2022/async-search-dropdown/async-dropdown.module.mjs +2 -2
  9. package/esm2022/button/button.component.mjs +2 -2
  10. package/esm2022/button/button.directive.mjs +2 -2
  11. package/esm2022/button/button.module.mjs +2 -2
  12. package/esm2022/checkbox/checkbox.component.mjs +2 -2
  13. package/esm2022/checkbox/checkbox.module.mjs +2 -2
  14. package/esm2022/chip/chip.component.mjs +2 -2
  15. package/esm2022/chip/chip.module.mjs +2 -2
  16. package/esm2022/datepicker_v2/datepicker.module.mjs +2 -2
  17. package/esm2022/datepicker_v2/tz-datepicker.directive.mjs +2 -2
  18. package/esm2022/datepicker_v2/tz-dp-container/tz-dp-container.component.mjs +28 -18
  19. package/esm2022/datepicker_v2/utils/index.mjs +1 -1
  20. package/esm2022/daterangepicker_v2/daterangepicker.module.mjs +2 -2
  21. package/esm2022/daterangepicker_v2/models/drp-config.model.mjs +1 -1
  22. package/esm2022/daterangepicker_v2/tz-daterangepicker.directive.mjs +2 -2
  23. package/esm2022/daterangepicker_v2/tz-drp-container/tz-drp-container.component.mjs +53 -46
  24. package/esm2022/daterangepicker_v2/utils/index.mjs +1 -1
  25. package/esm2022/drawer/drawer-body/drawer-body.component.mjs +2 -2
  26. package/esm2022/drawer/drawer.module.mjs +2 -2
  27. package/esm2022/drawer/drawer.service.mjs +2 -2
  28. package/esm2022/dropdown/calculate-container-height.directive.mjs +2 -2
  29. package/esm2022/dropdown/dropdown.component.mjs +2 -2
  30. package/esm2022/dropdown/dropdown.module.mjs +2 -2
  31. package/esm2022/dynamic-form/dynamic-form.component.mjs +12 -7
  32. package/esm2022/dynamic-form/dynamic-form.module.mjs +2 -2
  33. package/esm2022/fab/fab.component.mjs +2 -2
  34. package/esm2022/fab/fab.module.mjs +2 -2
  35. package/esm2022/filter/filter-panel/filter-panel.component.mjs +2 -2
  36. package/esm2022/filter/filters.module.mjs +2 -2
  37. package/esm2022/filter/has-value.pipe.mjs +2 -2
  38. package/esm2022/input/directives/input/input.directive.mjs +2 -2
  39. package/esm2022/input/mis-input.component.mjs +2 -2
  40. package/esm2022/input/mis-input.module.mjs +2 -2
  41. package/esm2022/input-stepper/input-stepper/input-stepper.component.mjs +2 -2
  42. package/esm2022/input-stepper/input-stepper.module.mjs +2 -2
  43. package/esm2022/loader/loader.component.mjs +2 -2
  44. package/esm2022/loader/loader.module.mjs +2 -2
  45. package/esm2022/menu/menu-close.directive.mjs +3 -3
  46. package/esm2022/menu/menu.directive.mjs +3 -3
  47. package/esm2022/menu/menu.module.mjs +2 -2
  48. package/esm2022/mobile-filter/mobile-filter.component.mjs +2 -2
  49. package/esm2022/mobile-filter/mobile-filter.module.mjs +2 -2
  50. package/esm2022/modal/modal.module.mjs +2 -2
  51. package/esm2022/modal/modal.service.mjs +2 -2
  52. package/esm2022/modal/module-wrapper/module-wrapper.component.mjs +2 -2
  53. package/esm2022/multi-select-dropdown/multi-select-dropdown.component.mjs +2 -2
  54. package/esm2022/multi-select-dropdown/multi-select-dropdown.module.mjs +2 -2
  55. package/esm2022/nested-multi-select-dropdown/nested-multi-select-dropdown.component.mjs +2 -2
  56. package/esm2022/nested-multi-select-dropdown/nested-multi-select-dropdown.module.mjs +2 -2
  57. package/esm2022/phone-input/phone-input.component.mjs +2 -2
  58. package/esm2022/phone-input/phone-input.module.mjs +2 -2
  59. package/esm2022/radio-button/radio-button.component.mjs +2 -2
  60. package/esm2022/radio-button/radio-button.module.mjs +2 -2
  61. package/esm2022/ske-loader/ske-loader.component.mjs +2 -2
  62. package/esm2022/ske-loader/ske-loader.module.mjs +2 -2
  63. package/esm2022/slider/slider.component.mjs +2 -2
  64. package/esm2022/slider/slider.module.mjs +2 -2
  65. package/esm2022/snackbar/snackbar/snackbar.component.mjs +2 -2
  66. package/esm2022/snackbar/snackbar.module.mjs +2 -2
  67. package/esm2022/snackbar/snackbar.service.mjs +2 -2
  68. package/esm2022/specificdatepicker/specificdatepicker.module.mjs +2 -2
  69. package/esm2022/specificdatepicker/tz-sdp-container/tz-sdp-container.component.mjs +56 -42
  70. package/esm2022/specificdatepicker/tz-specificdatepicker.directive.mjs +2 -2
  71. package/esm2022/specificdatepicker/utils/index.mjs +1 -1
  72. package/esm2022/star-rating/star-rating.component.mjs +2 -2
  73. package/esm2022/star-rating/star-rating.module.mjs +2 -2
  74. package/esm2022/switch/switch.component.mjs +2 -2
  75. package/esm2022/switch/switch.module.mjs +2 -2
  76. package/esm2022/table/custom-table-cell.directive.mjs +2 -2
  77. package/esm2022/table/filter/filter.component.mjs +2 -2
  78. package/esm2022/table/sub-table/sub-table.component.mjs +2 -2
  79. package/esm2022/table/table.component.mjs +3 -3
  80. package/esm2022/table/table.module.mjs +2 -2
  81. package/esm2022/timepicker/timepicker.component.mjs +55 -49
  82. package/esm2022/timepicker/timepicker.directive.mjs +3 -3
  83. package/esm2022/timepicker/timepicker.module.mjs +2 -2
  84. package/esm2022/timerangepicker/timerangepicker.component.mjs +47 -43
  85. package/esm2022/timerangepicker/timerangepicker.module.mjs +2 -2
  86. package/esm2022/toast/toast.component.mjs +2 -2
  87. package/esm2022/toast/toast.data.service.mjs +2 -2
  88. package/esm2022/toast/toast.module.mjs +2 -2
  89. package/esm2022/toast/toast.service.mjs +2 -2
  90. package/esm2022/tooltip/tooltip-container/tooltip.component.mjs +2 -2
  91. package/esm2022/tooltip/tooltip.directive.mjs +2 -2
  92. package/esm2022/tooltip/tooltip.module.mjs +2 -2
  93. package/esm2022/virtual-scroll/virtual-scroll.component.mjs +2 -2
  94. package/esm2022/virtual-scroll/virtual-scroll.module.mjs +2 -2
  95. package/esm2022/widgets/classes/async-widget.mjs +1 -1
  96. package/esm2022/widgets/classes/base-widget.mjs +1 -1
  97. package/esm2022/widgets/classes/sync-widget.mjs +1 -1
  98. package/esm2022/widgets/services/widget.service.mjs +2 -2
  99. package/esm2022/widgets/widgets.module.mjs +2 -2
  100. package/fesm2022/mis-crystal-design-system-action-list.mjs +3 -3
  101. package/fesm2022/mis-crystal-design-system-action-list.mjs.map +1 -1
  102. package/fesm2022/mis-crystal-design-system-analytics.mjs +2 -2
  103. package/fesm2022/mis-crystal-design-system-analytics.mjs.map +1 -1
  104. package/fesm2022/mis-crystal-design-system-async-search-dropdown.mjs +3 -3
  105. package/fesm2022/mis-crystal-design-system-async-search-dropdown.mjs.map +1 -1
  106. package/fesm2022/mis-crystal-design-system-button.mjs +4 -4
  107. package/fesm2022/mis-crystal-design-system-button.mjs.map +1 -1
  108. package/fesm2022/mis-crystal-design-system-checkbox.mjs +3 -3
  109. package/fesm2022/mis-crystal-design-system-checkbox.mjs.map +1 -1
  110. package/fesm2022/mis-crystal-design-system-chip.mjs +3 -3
  111. package/fesm2022/mis-crystal-design-system-chip.mjs.map +1 -1
  112. package/fesm2022/mis-crystal-design-system-datepicker_v2.mjs +29 -19
  113. package/fesm2022/mis-crystal-design-system-datepicker_v2.mjs.map +1 -1
  114. package/fesm2022/mis-crystal-design-system-daterangepicker_v2.mjs +55 -47
  115. package/fesm2022/mis-crystal-design-system-daterangepicker_v2.mjs.map +1 -1
  116. package/fesm2022/mis-crystal-design-system-drawer.mjs +3 -3
  117. package/fesm2022/mis-crystal-design-system-drawer.mjs.map +1 -1
  118. package/fesm2022/mis-crystal-design-system-dropdown.mjs +4 -4
  119. package/fesm2022/mis-crystal-design-system-dropdown.mjs.map +1 -1
  120. package/fesm2022/mis-crystal-design-system-dynamic-form.mjs +13 -7
  121. package/fesm2022/mis-crystal-design-system-dynamic-form.mjs.map +1 -1
  122. package/fesm2022/mis-crystal-design-system-fab.mjs +3 -3
  123. package/fesm2022/mis-crystal-design-system-fab.mjs.map +1 -1
  124. package/fesm2022/mis-crystal-design-system-filter.mjs +3 -3
  125. package/fesm2022/mis-crystal-design-system-filter.mjs.map +1 -1
  126. package/fesm2022/mis-crystal-design-system-input-stepper.mjs +3 -3
  127. package/fesm2022/mis-crystal-design-system-input-stepper.mjs.map +1 -1
  128. package/fesm2022/mis-crystal-design-system-input.mjs +4 -4
  129. package/fesm2022/mis-crystal-design-system-input.mjs.map +1 -1
  130. package/fesm2022/mis-crystal-design-system-loader.mjs +2 -2
  131. package/fesm2022/mis-crystal-design-system-loader.mjs.map +1 -1
  132. package/fesm2022/mis-crystal-design-system-menu.mjs +6 -6
  133. package/fesm2022/mis-crystal-design-system-menu.mjs.map +1 -1
  134. package/fesm2022/mis-crystal-design-system-mobile-filter.mjs +3 -3
  135. package/fesm2022/mis-crystal-design-system-mobile-filter.mjs.map +1 -1
  136. package/fesm2022/mis-crystal-design-system-modal.mjs +3 -3
  137. package/fesm2022/mis-crystal-design-system-modal.mjs.map +1 -1
  138. package/fesm2022/mis-crystal-design-system-multi-select-dropdown.mjs +3 -3
  139. package/fesm2022/mis-crystal-design-system-multi-select-dropdown.mjs.map +1 -1
  140. package/fesm2022/mis-crystal-design-system-nested-multi-select-dropdown.mjs +3 -3
  141. package/fesm2022/mis-crystal-design-system-nested-multi-select-dropdown.mjs.map +1 -1
  142. package/fesm2022/mis-crystal-design-system-phone-input.mjs +2 -2
  143. package/fesm2022/mis-crystal-design-system-phone-input.mjs.map +1 -1
  144. package/fesm2022/mis-crystal-design-system-radio-button.mjs +3 -3
  145. package/fesm2022/mis-crystal-design-system-radio-button.mjs.map +1 -1
  146. package/fesm2022/mis-crystal-design-system-ske-loader.mjs +2 -2
  147. package/fesm2022/mis-crystal-design-system-ske-loader.mjs.map +1 -1
  148. package/fesm2022/mis-crystal-design-system-slider.mjs +3 -3
  149. package/fesm2022/mis-crystal-design-system-slider.mjs.map +1 -1
  150. package/fesm2022/mis-crystal-design-system-snackbar.mjs +4 -4
  151. package/fesm2022/mis-crystal-design-system-snackbar.mjs.map +1 -1
  152. package/fesm2022/mis-crystal-design-system-specificdatepicker.mjs +58 -44
  153. package/fesm2022/mis-crystal-design-system-specificdatepicker.mjs.map +1 -1
  154. package/fesm2022/mis-crystal-design-system-star-rating.mjs +3 -3
  155. package/fesm2022/mis-crystal-design-system-star-rating.mjs.map +1 -1
  156. package/fesm2022/mis-crystal-design-system-switch.mjs +3 -3
  157. package/fesm2022/mis-crystal-design-system-switch.mjs.map +1 -1
  158. package/fesm2022/mis-crystal-design-system-table.mjs +6 -6
  159. package/fesm2022/mis-crystal-design-system-table.mjs.map +1 -1
  160. package/fesm2022/mis-crystal-design-system-timepicker.mjs +58 -52
  161. package/fesm2022/mis-crystal-design-system-timepicker.mjs.map +1 -1
  162. package/fesm2022/mis-crystal-design-system-timerangepicker.mjs +48 -44
  163. package/fesm2022/mis-crystal-design-system-timerangepicker.mjs.map +1 -1
  164. package/fesm2022/mis-crystal-design-system-toast.mjs +4 -4
  165. package/fesm2022/mis-crystal-design-system-toast.mjs.map +1 -1
  166. package/fesm2022/mis-crystal-design-system-tooltip.mjs +4 -4
  167. package/fesm2022/mis-crystal-design-system-tooltip.mjs.map +1 -1
  168. package/fesm2022/mis-crystal-design-system-utils.mjs.map +1 -1
  169. package/fesm2022/mis-crystal-design-system-virtual-scroll.mjs +3 -3
  170. package/fesm2022/mis-crystal-design-system-virtual-scroll.mjs.map +1 -1
  171. package/fesm2022/mis-crystal-design-system-widgets.mjs +1 -1
  172. package/fesm2022/mis-crystal-design-system-widgets.mjs.map +1 -1
  173. package/package.json +19 -19
  174. package/specificdatepicker/tz-sdp-container/tz-sdp-container.component.d.ts +1 -1
  175. package/table/filter/filter.component.d.ts +1 -1
  176. package/timepicker/timepicker.component.d.ts +2 -2
@@ -1 +1 @@
1
- {"version":3,"file":"mis-crystal-design-system-table.mjs","sources":["../../../projects/mis-components/table/custom-table-cell.directive.ts","../../../projects/mis-components/table/sub-table/sub-table.component.html","../../../projects/mis-components/table/sub-table/sub-table.component.ts","../../../projects/mis-components/table/filter/filter.component.html","../../../projects/mis-components/table/filter/filter.component.ts","../../../projects/mis-components/table/table.component.html","../../../projects/mis-components/table/table.component.ts","../../../projects/mis-components/table/table.module.ts","../../../projects/mis-components/table/mis-crystal-design-system-table.ts"],"sourcesContent":["import { ComponentFactoryResolver, Directive, Input, ViewContainerRef } from \"@angular/core\";\n\n@Directive({\n selector: \"[customTableCell]\"\n})\nexport class CustomTableCellDirective {\n private ref: any;\n private component: any;\n private cellData: any;\n\n @Input() set customComponent(value: any) {\n this.component = value;\n this.createComponent();\n }\n @Input() set data(value: any) {\n this.cellData = value;\n if (this.ref) {\n this.ref.instance.data = this.cellData;\n }\n }\n\n constructor(private viewContainerRef: ViewContainerRef, private componentFactoryResolver: ComponentFactoryResolver) {}\n\n createComponent() {\n if (this.component) {\n const cmpFactoryResolver = this.componentFactoryResolver.resolveComponentFactory(this.component);\n this.viewContainerRef.clear();\n this.ref = this.viewContainerRef.createComponent(cmpFactoryResolver);\n this.setData();\n }\n }\n setData() {\n this.ref.instance.data = this.cellData;\n }\n}\n","<div\n id=\"main-container\"\n [ngStyle]=\"{\n height: getContainerHeight(),\n width: getContainerWidth()\n }\"\n>\n <div id=\"table-container\" #table>\n <div\n id=\"col-headers-container\"\n *ngIf=\"!!config.showHeader\"\n [ngStyle]=\"{\n height: getColHeadersRowHeight(),\n 'border-top': getColHeadersRowBorderTop(),\n 'border-bottom': getColHeadersRowBorderBottom()\n }\"\n >\n <div\n class=\"col-header\"\n (click)=\"colHeader?.action ? colHeader?.action(colHeader) : null\"\n *ngFor=\"let colHeader of config?.colHeaderConfig\"\n [style]=\"colHeader?.style\"\n [ngStyle]=\"{\n width: colHeader?.style?.width || '',\n cursor: colHeader.action ? 'pointer' : 'default',\n 'justify-content': colHeader?.style?.justifyContent\n ? colHeader?.style?.justifyContent\n : colHeader.type === 'number'\n ? 'flex-end'\n : 'space-between'\n }\"\n >\n <p *ngIf=\"colHeader?.type !== 'custom'\" class=\"col-header-text\">\n {{ colHeader?.data || \" \" }}\n </p>\n <ng-template\n *ngIf=\"colHeader?.type === 'custom'\"\n customTableCell\n [customComponent]=\"colHeader?.componentRef\"\n [data]=\"colHeader.data\"\n ></ng-template>\n </div>\n </div>\n <div>\n <cdk-virtual-scroll-viewport\n [minBufferPx]=\"config.dataContainerMaxHeight || '400'\"\n [maxBufferPx]=\"config.dataContainerMaxHeight + 200 || '600'\"\n [style.overflow]=\"'overlay'\"\n [style.height]=\"config.dataContainerMaxHeight || '400px'\"\n itemSize=\"50\"\n id=\"data-container\"\n >\n <div\n class=\"row-wrapper\"\n *cdkVirtualFor=\"let row of tableData; let i = index\"\n [ngStyle]=\"{\n backgroundColor: i % 2 === 0 ? '#FAFAFA' : null\n }\"\n >\n <div class=\"t-row\">\n <div\n (click)=\"config?.colConfig[i]?.action ? config?.colConfig[i]?.action(col) : null\"\n *ngFor=\"let col of row; let i = index\"\n [ngStyle]=\"{\n width: config?.colConfig[i]?.style?.width || config?.colHeaderConfig[i]?.style?.width || ''\n }\"\n class=\"t-col-container\"\n >\n <div\n class=\"t-col\"\n [style]=\"config.colConfig[i]?.style\"\n [ngStyle]=\"{\n width: '100%',\n cursor: config.colConfig[i].action ? 'pointer' : 'default',\n 'justify-content': config.colConfig[i]?.style?.justifyContent\n ? config.colConfig[i]?.style?.justifyContent\n : config.colConfig[i].type === 'number'\n ? 'flex-end'\n : 'space-between'\n }\"\n >\n <p\n *ngIf=\"config.colConfig[i].type !== 'custom'\"\n [ngStyle]=\"{\n color: config?.colConfig[i]?.style?.color ? config?.colConfig[i]?.style?.color : ''\n }\"\n class=\"t-col-text\"\n >\n {{ col }}\n </p>\n <ng-template\n *ngIf=\"config.colConfig[i].type === 'custom'\"\n [customComponent]=\"config.colConfig[i].componentRef\"\n [data]=\"col\"\n customTableCell\n ></ng-template>\n </div>\n </div>\n </div>\n </div>\n </cdk-virtual-scroll-viewport>\n </div>\n </div>\n</div>\n","import { AfterViewInit, Component, ElementRef, Input, OnInit, Renderer2, ViewChild } from \"@angular/core\";\n\n@Component({\n selector: \"sub-table\",\n templateUrl: \"sub-table.component.html\",\n styleUrls: [\"sub-table.component.css\"]\n})\nexport class SubTableComponent implements OnInit, AfterViewInit {\n selectedPage = 1;\n pages: Array<number> = [];\n\n @Input() config: SubTableConfig | any;\n @Input() tableData: Array<Array<any>> = [];\n @ViewChild(\"table\") table: ElementRef | any;\n constructor(private renderer: Renderer2) {}\n\n ngOnInit() {}\n\n ngAfterViewInit() {\n if (this.config.paginationConfig) {\n let height = this.table.nativeElement.offsetHeight;\n this.renderer.setStyle(this.table.nativeElement, \"height\", height - 56 + \"px\");\n }\n }\n\n // Main container related functions\n getContainerHeight() {\n if (this.config.height) return this.config.height;\n else return \"\";\n }\n getContainerWidth() {\n if (this.config.width) return this.config.width;\n else return \"\";\n }\n\n // Column Headers related functions\n getColHeadersRowHeight() {\n if (this.config.colHeadersRowConfig && this.config.colHeadersRowConfig.height) {\n return this.config.colHeadersRowConfig.height;\n } else return \"44px\";\n }\n getColHeadersRowBorderTop() {\n if (this.config.colHeadersRowConfig && this.config.colHeadersRowConfig.style?.borderTop) {\n return this.config.colHeadersRowConfig.style?.borderTop;\n } else return \"\";\n }\n getColHeadersRowBorderBottom() {\n if (this.config.colHeadersRowConfig && this.config.colHeadersRowConfig.style?.borderBottom) {\n return this.config.colHeadersRowConfig.style?.borderBottom;\n } else return \"1px solid #E0E0E0\";\n }\n}\n\nexport interface SubTableConfig {\n height: string | \"100%\";\n width: string | \"100%\";\n dataContainerMaxHeight: string | \"400px\";\n showHeader?: boolean | undefined;\n rowConfig: SubTableRowConfig | undefined | null;\n colHeaderConfig?: Array<SubTableColHeaderConfig>;\n colConfig: Array<SubTableColConfig>;\n}\n\nexport interface SubTableRowConfig {\n height?: string | undefined | null;\n style?: {};\n}\nexport interface SubTableColHeaderConfig {\n type: \"text\" | \"number\" | \"custom\";\n data: any;\n componentRef?: any;\n style?: {};\n action?: any;\n}\nexport interface SubTableColConfig {\n type: \"text\" | \"number\" | \"custom\";\n componentRef?: any;\n style?: {};\n action?: any;\n}\n","<div id=\"main-container\" #mainContainer [ngStyle]=\"containerStyles\">\n <div id=\"search-bar-container\">\n <input (keyup)=\"updateSearchValue($event)\" type=\"text\" placeholder=\"Search\" />\n <svg id=\"search-icon\" width=\"18\" height=\"18\" viewBox=\"0 0 18 18\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M1.21496 8.14563C1.21496 4.3179 4.33709 1.21165 8.19249 1.21165C12.0479 1.21165 15.17 4.3179 15.17 8.14563C15.17 9.69308 14.6598 11.1226 13.797 12.2767L12.3684 13.7013C11.2043 14.5668 9.75891 15.0796 8.19249 15.0796C4.33709 15.0796 1.21496 11.9734 1.21496 8.14563ZM12.9419 14.7835C11.602 15.7329 9.96259 16.2913 8.19249 16.2913C3.66965 16.2913 -0.00012207 12.6461 -0.00012207 8.14563C-0.00012207 3.64512 3.66965 0 8.19249 0C12.7153 0 16.3851 3.64512 16.3851 8.14563C16.3851 9.93713 15.8036 11.5931 14.8183 12.9375L16.836 14.4048C17.6704 14.912 18.7553 15.6543 17.2453 17.215C15.7352 18.7756 15.0098 17.6663 14.499 16.8364L12.9419 14.7835Z\"\n fill=\"#6A737D\"\n />\n </svg>\n </div>\n <div id=\"filters-main-container\">\n <div class=\"filters-sub-container\">\n <div *ngFor=\"let filter of getCheckedFilters()\">\n <div class=\"filter\">\n <mis-checkbox [checked]=\"true\" [name]=\"filter.value\" (valueChange)=\"updateFilter($event)\"></mis-checkbox>\n <span class=\"filter-text\">{{ filter.name }}</span>\n </div>\n </div>\n </div>\n <div class=\"separator\" [ngStyle]=\"{ 'margin': '16px 0px' }\" *ngIf=\"getCheckedFilters().length && getCheckedFilters().length < filtersData.length\"></div>\n <div class=\"filters-sub-container\">\n <div *ngFor=\"let filter of getFiltersBasedOnSearchValue()\">\n <div class=\"filter\" *ngIf=\"!filter.checked\">\n <mis-checkbox [checked]=\"false\" [name]=\"filter.value\" (valueChange)=\"updateFilter($event)\"></mis-checkbox>\n <span class=\"filter-text\">{{ filter.name }}</span>\n </div>\n </div>\n <div id=\"no-results-container\" *ngIf=\"getFiltersBasedOnSearchValue().length < 1\">\n <span class=\"filter-text\">No matches found</span>\n </div>\n </div>\n <div class=\"separator\" [ngStyle]=\"{ 'margin': '16px 0px' }\"></div>\n <div id=\"buttons-container\">\n <button id=\"reset-btn\" [ngStyle]=\"{ 'margin-right': '8px' }\" (click)=\"resetFilters()\">Reset</button>\n <button id=\"apply-btn\" (click)=\"applyFilters()\">Apply</button>\n </div>\n </div>\n</div>\n","import { Component, ElementRef, EventEmitter, Input, OnInit, Output, ViewChild } from \"@angular/core\";\n\n@Component({\n selector: \"mis-table-filter\",\n templateUrl: \"filter.component.html\",\n styleUrls: [\"filter.component.css\"]\n})\nexport class TableFilterComponent implements OnInit {\n @Input() filtersData: Array<Filter> = [];\n @Input() containerStyles: any = {};\n\n @Output() filtersApplied = new EventEmitter<any>();\n\n @ViewChild(\"mainContainer\") container: ElementRef | undefined;\n\n filtersMap: any = {};\n searchValue: string = \"\";\n\n constructor() {}\n\n ngOnInit(): void {\n this.filtersData.forEach(filter => {\n this.filtersMap[filter.value] = filter;\n });\n }\n resetFilters() {\n this.filtersData.forEach(filter => {\n this.filtersMap[filter.value].checked = false;\n });\n this.filtersApplied.emit([]);\n }\n applyFilters() {\n let list = Object.values(this.filtersMap)\n .filter((filter: Filter | any) => filter.checked)\n .map((filter: Filter | any) => {\n return {\n name: filter.name,\n value: filter.value\n };\n });\n this.filtersApplied.emit(list);\n }\n updateSearchValue(event: any) {\n this.searchValue = event.target.value;\n }\n updateFilter(data: any) {\n if (this.filtersMap[data.name]) {\n this.filtersMap[data.name].checked = !this.filtersMap[data.name].checked;\n }\n }\n getFiltersBasedOnSearchValue(): Filter[] | any {\n let list = Object.values(this.filtersMap);\n list = list.filter((filter: Filter | any) => {\n return filter.name.match(new RegExp(this.searchValue, \"i\"));\n });\n return list.sort(this.mySort);\n }\n getCheckedFilters(): Filter[] | any {\n let list = Object.values(this.filtersMap);\n list = list.filter((filter: Filter | any) => filter.checked).sort(this.mySort);\n return list;\n }\n mySort = (a: Filter | any, b: Filter | any) => {\n if (a.name < b.name) return -1;\n else if (b.name < a.name) return 1;\n else return 0;\n };\n}\nexport interface Filter {\n name: string;\n value: string;\n checked: boolean;\n}\n","<div\n [ngStyle]=\"{\n height: getContainerHeight(),\n width: getContainerWidth(),\n 'overflow-x': config.canScrollHorizontally ? 'auto' : 'unset'\n }\"\n id=\"main-container\"\n>\n <mis-table-filter\n #filter\n (filtersApplied)=\"updateAppliedFilters($event)\"\n *ngIf=\"showFilter\"\n [containerStyles]=\"filterContainerStyles\"\n [filtersData]=\"filterData\"\n ></mis-table-filter>\n <div\n #table\n id=\"table-container\"\n [ngClass]=\"{ 'no-scrollbar': expandedIndex < 0, scrollbar: !(expandedIndex < 0), 'scroll-horizontally': config.canScrollHorizontally }\"\n >\n <div\n [ngStyle]=\"getColHeadersRowStyles()\"\n id=\"col-headers-container\"\n >\n <div\n #colHeaderRef\n (click)=\"colHeader?.action ? colHeader?.action(colHeader) : null\"\n *ngFor=\"let colHeader of config?.colHeaderConfig\"\n class=\"col-header\"\n [ngStyle]=\"{\n width: colHeader?.style?.width || '',\n cursor: colHeader.action ? 'pointer' : 'default',\n 'justify-content': colHeader?.style?.justifyContent\n ? colHeader?.style?.justifyContent\n : colHeader.type === 'number'\n ? 'flex-end'\n : 'space-between'\n }\"\n >\n <p *ngIf=\"colHeader?.type !== 'custom'\" class=\"col-header-text\">\n {{ colHeader?.data || \" \" }}\n </p>\n <span\n (click)=\"filterData = colHeader.filters; toggleFilter(colHeader.data); $event.stopPropagation()\"\n *ngIf=\"colHeader?.type !== 'custom' && colHeader?.filters && colHeader?.filters?.length > 0\"\n class=\"filter-icon\"\n >\n <span *ngIf=\"appliedFilters[colHeader.data]?.length > 0\" id=\"filter-active\"></span>\n <svg fill=\"none\" height=\"10\" viewBox=\"0 0 13 10\" width=\"13\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n clip-rule=\"evenodd\"\n d=\"M4.97546 10H7.64213V8H4.97546V10ZM0.308472 0V2H12.3085V0H0.308472ZM2.30847 6H10.3085V4H2.30847V6Z\"\n fill=\"#181F33\"\n fill-rule=\"evenodd\"\n />\n </svg>\n </span>\n <ng-template\n *ngIf=\"colHeader?.type === 'custom'\"\n [customComponent]=\"colHeader?.componentRef\"\n [data]=\"colHeader.data\"\n customTableCell\n ></ng-template>\n </div>\n </div>\n <div id=\"data-container\">\n <div class=\"row-wrapper\" *ngFor=\"let row of tableData; let i = index\">\n <div\n class=\"t-row\"\n [ngClass]=\"{ 't-row-hover': config.cellHover, 'active-row': i === activeRowIndex }\"\n [ngStyle]=\"{ 'min-height': config?.rowConfig?.height ? config.rowConfig.height : '44px' }\"\n (click)=\"selectRow(i)\"\n >\n <div\n (click)=\"config?.colConfig[i]?.action ? config?.colConfig[i]?.action(col) : null\"\n *ngFor=\"let col of row; let i = index\"\n [ngStyle]=\"{\n width: config?.colConfig[i]?.style?.width || config?.colHeaderConfig[i]?.style?.width || ''\n }\"\n class=\"t-col-container\"\n [ngClass]=\"{ 't-col-container-hover': config.cellHover }\"\n >\n <div\n class=\"t-col\"\n [style]=\"config.colConfig[i]?.style\"\n [ngStyle]=\"{\n width: '100%',\n cursor: config.colConfig[i]?.action ? 'pointer' : 'default',\n 'justify-content': config.colConfig[i]?.style?.justifyContent\n ? config.colConfig[i]?.style?.justifyContent\n : config.colConfig[i]?.type === 'number'\n ? 'flex-end'\n : 'space-between'\n }\"\n >\n <p\n *ngIf=\"config.colConfig[i]?.type !== 'custom'\"\n [ngStyle]=\"{\n color: config?.colConfig[i]?.style?.color ? config?.colConfig[i]?.style?.color : ''\n }\"\n class=\"t-col-text\"\n >\n {{ col }}\n </p>\n <ng-template\n *ngIf=\"config.colConfig[i]?.type === 'custom'\"\n [customComponent]=\"config.colConfig[i].componentRef\"\n [data]=\"col\"\n customTableCell\n ></ng-template>\n </div>\n </div>\n </div>\n <div *ngIf=\"config?.canExpand && expandedIndex === i\" class=\"sub-row\">\n <ng-container *ngIf=\"subTableDataLoading\">\n <div [ngStyle]=\"{\n display: 'flex',\n justifyContent: 'center',\n alignItems: 'center',\n padding: '16px'\n }\">\n Loading...\n </div>\n </ng-container>\n \n <ng-container *ngIf=\"!subTableDataLoading && subTableData.length === 0\">\n <div [ngStyle]=\"{\n display: 'flex',\n justifyContent: 'center',\n alignItems: 'center',\n padding: '16px'\n }\">\n No Data Available...\n </div>\n </ng-container>\n \n <ng-container *ngIf=\"!subTableDataLoading && subTableData.length > 0\">\n <sub-table [config]=\"subTableconfig\" [tableData]=\"subTableData\"></sub-table>\n </ng-container>\n </div>\n </div>\n </div>\n </div>\n <div\n *ngIf=\"config?.paginationConfig && (tableLength >= config.paginationConfig.rowsPerPage || config.paginationConfig?.selectedPage !== 1)\"\n id=\"pagination-container\"\n >\n <p id=\"pagination-text\">\n Showing\n {{ (config.paginationConfig?.selectedPage - 1) * config.paginationConfig.rowsPerPage + 1 }}-{{\n (config.paginationConfig?.selectedPage - 1) * config.paginationConfig.rowsPerPage + tableLength\n }}\n of {{ config.paginationConfig.totalNoOfRows }} items\n </p>\n <div id=\"pages-container\">\n <span (click)=\"updateSelectedPage(config.paginationConfig?.selectedPage - 1)\" class=\"page\">\n <svg fill=\"none\" height=\"10\" viewBox=\"0 0 7 10\" width=\"7\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n clip-rule=\"evenodd\"\n d=\"M0.857405 5.56295C0.855794 5.56139 0.854188 5.55982 0.852588 5.55824C0.695955 5.40408 0.617641 5.20203 0.617647 4.99998C0.617641 4.79793 0.695955 4.59588 0.852588 4.44172C0.854188 4.44014 0.855794 4.43858 0.857404 4.43702L5.13066 0.231231C5.44392 -0.0770771 5.9518 -0.0770771 6.26506 0.231231C6.57831 0.53954 6.57831 1.03941 6.26506 1.34772L2.5542 4.99998L6.26506 8.65225C6.57831 8.96055 6.57831 9.46042 6.26506 9.76873C5.9518 10.077 5.44392 10.077 5.13066 9.76873L0.857405 5.56295Z\"\n fill=\"#181F33\"\n fill-rule=\"evenodd\"\n />\n </svg>\n </span>\n <div *ngFor=\"let pageNumber of pages\">\n <span\n (click)=\"updateSelectedPage(pageNumber)\"\n *ngIf=\"pageNumber != 0\"\n [ngClass]=\"{ 'page-active': pageNumber == config.paginationConfig?.selectedPage }\"\n class=\"page\"\n >{{ pageNumber }}</span\n >\n <span *ngIf=\"pageNumber == 0\" class=\"page-seperator\">\n <div [ngStyle]=\"{ display: 'flex' }\">\n <span class=\"dot\" [ngStyle]=\"{ 'margin-right': '4px' }\"></span>\n <span class=\"dot\" [ngStyle]=\"{ 'margin-right': '4px' }\"></span>\n <span class=\"dot\"></span>\n </div> \n </span>\n </div>\n <span (click)=\"updateSelectedPage(config.paginationConfig?.selectedPage + 1)\" class=\"page\">\n <svg fill=\"none\" height=\"10\" viewBox=\"0 0 7 10\" width=\"7\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n clip-rule=\"evenodd\"\n d=\"M6.1426 5.56295C6.14421 5.56139 6.14581 5.55982 6.14741 5.55824C6.30405 5.40408 6.38236 5.20203 6.38236 4.99998C6.38236 4.79793 6.30405 4.59588 6.14741 4.44172C6.14581 4.44014 6.14421 4.43858 6.1426 4.43702L1.86934 0.231231C1.55608 -0.0770771 1.0482 -0.0770771 0.734942 0.231231C0.421688 0.53954 0.421688 1.03941 0.734942 1.34772L4.4458 4.99998L0.734941 8.65225C0.421686 8.96055 0.421686 9.46042 0.734941 9.76873C1.0482 10.077 1.55608 10.077 1.86934 9.76873L6.1426 5.56295Z\"\n fill=\"#181F33\"\n fill-rule=\"evenodd\"\n />\n </svg>\n </span>\n </div>\n </div>\n</div>\n","import {\n AfterViewInit,\n Component,\n ElementRef,\n EventEmitter,\n Input,\n OnChanges,\n OnInit,\n Output,\n QueryList,\n Renderer2,\n ViewChild,\n ViewChildren\n} from \"@angular/core\";\nimport { Filter, TableFilterComponent } from \"./filter/filter.component\";\n\n@Component({\n selector: \"mis-table\",\n templateUrl: \"table.component.html\",\n styleUrls: [\"table.component.css\"]\n})\nexport class TableComponent implements OnInit, AfterViewInit, OnChanges {\n\n // Initialize with -1 to indicate no row is colored at the beginning\n activeRowIndex: number = 0; \n\n // Filter related variables\n showFilter: boolean = false;\n filterName: string = \"\";\n filterData: Array<Filter> = [];\n filterContainerStyles: any = {};\n appliedFilters: { [key: string]: Array<{ name: string; value: string }> } = {};\n @Output() filtersUpdated = new EventEmitter<{\n [key: string]: Array<{ name: string; value: string }>;\n }>();\n\n @ViewChild(\"filter\") filter: TableFilterComponent | any;\n @ViewChildren(\"colHeaderRef\") colHeaders: QueryList<ElementRef> | any;\n\n // Pagination related variables\n pages: Array<number> = [];\n tableLength: number;\n @Output() pageSelected = new EventEmitter<number>();\n\n @Input(\"tableConfig\") config: TableConfig | any;\n @Input() subTableconfig: TableConfig | any;\n @Input() tableDataLoading: boolean | any;\n @Input() expandedIndex: number | any;\n @Input() tableData: Array<Array<any>> = [];\n @Input() subTableData: Array<Array<any>> = [];\n @Input() subTableDataLoading: boolean | any;\n @ViewChild(\"table\") table: ElementRef | any;\n\n constructor(private renderer: Renderer2) { }\n\n // Function to handle row click\n selectRow(index: number) {\n this.activeRowIndex = index; // Set the selected index to the clicked row's index\n !!this.config.rowConfig.action && this.config.rowConfig.action(index);\n }\n ngOnInit(): void {\n this.tableLength = !!this.tableData ? this.tableData.length : 0;\n this.initializeFilters();\n if (this.config.paginationConfig) {\n this.initializePagination();\n }\n if (this.config.canScrollHorizontally === undefined) {\n this.config.canScrollHorizontally = false;\n }\n document.addEventListener(\"click\", event => {\n if (this.filter) {\n let isCheckBoxClicked = true;\n let targetElement = event.target as HTMLSpanElement;\n if (targetElement.className === \"checkmark\") {\n isCheckBoxClicked = true;\n this.showFilter = true;\n }\n let isClickInsideElement = this.filter.container.nativeElement.contains(event.target);\n if (!isClickInsideElement && !isCheckBoxClicked) {\n this.toggleFilter(this.filterName);\n }\n }\n });\n }\n ngAfterViewInit() {\n if (this.config.paginationConfig) {\n let height = this.config.height;\n this.renderer.setStyle(this.table.nativeElement, \"height\", height - 56 + \"px\");\n }\n }\n ngOnChanges() {\n this.tableLength = !!this.tableData ? this.tableData.length : 0;\n this.activeRowIndex = this.config.activeRowIndex || 0;\n }\n\n // Filter related functions\n initializeFilters() {\n for (let colHeader of this.config?.colHeaderConfig) {\n if (colHeader.filters) {\n let filters = [];\n for (let filter of colHeader.filters) {\n if (filter.checked) {\n filters.push({\n name: filter.name,\n value: filter.value\n });\n }\n }\n if (filters.length > 0) this.appliedFilters[colHeader.data] = filters;\n }\n }\n }\n toggleFilter(filterName: string) {\n if (!this.showFilter) {\n this.filterName = filterName;\n this.showFilter = true;\n\n let offSet = 0;\n let colHeadersReversed = this.colHeaders.toArray().reverse();\n\n for (let header of colHeadersReversed) {\n if (header.nativeElement.innerText === filterName) break;\n offSet += header.nativeElement.offsetWidth;\n }\n this.filterContainerStyles = {\n top: \"44px\",\n right: offSet > 0 ? offSet - 116 + \"px\" : \"12px\"\n };\n } else {\n this.filterName = \"\";\n this.filterData = [];\n this.showFilter = false;\n }\n }\n updateAppliedFilters(appliedFilters: Array<{ name: string; value: string }>) {\n if (appliedFilters.length == 0) {\n delete this.appliedFilters[this.filterName];\n } else {\n this.appliedFilters[this.filterName] = appliedFilters;\n }\n this.filtersUpdated.emit({ ...this.appliedFilters });\n this.toggleFilter(this.filterName);\n }\n\n // Pagination related functions\n initializePagination() {\n if (this.config.paginationConfig) {\n let len = this.config.paginationConfig.noOfPages;\n if (len <= 7) {\n for (let i = 1; i <= len; i++) {\n this.pages.push(i);\n }\n } else {\n this.pages = [1, 2, 3, 4, 0, len];\n }\n }\n }\n updateSelectedPage(pageNumber: number) {\n if (pageNumber < 1 || pageNumber > this.config.paginationConfig.noOfPages) return;\n this.config.paginationConfig.selectedPage = pageNumber;\n let len = this.config.paginationConfig.noOfPages;\n if (len > 7) {\n if (pageNumber - 2 <= 1) {\n this.pages = [1, 2, 3, 4, 0, len];\n } else if (pageNumber - 2 > 1 && pageNumber + 2 < len) {\n this.pages = [1, 0, pageNumber - 1, pageNumber, pageNumber + 1, 0, len];\n } else if (pageNumber + 2 >= len) {\n this.pages = [1, 0, len - 3, len - 2, len - 1, len];\n }\n }\n this.pageSelected.emit(this.config.paginationConfig?.selectedPage);\n }\n\n // Main container related functions\n getContainerHeight() {\n if (this.config?.height) return this.config.height;\n else return \"\";\n }\n getContainerWidth() {\n if (this.config?.width) return this.config.width;\n else return \"\";\n }\n\n // Column Headers related functions\n getColHeadersRowStyles() {\n const { colHeadersRowConfig } = this.config;\n const minHeight = colHeadersRowConfig?.height || \"44px\";\n const borderTop = colHeadersRowConfig?.style?.borderTop || \"\";\n const borderBottom = colHeadersRowConfig?.style?.borderBottom || \"1px solid #E0E0E0\";\n const backgroundColor = colHeadersRowConfig?.style?.backgroundColor || \"#FFFFFF\";\n const fontSize = colHeadersRowConfig?.style?.fontSize || \"14px\";\n return {\n 'min-height': minHeight,\n 'border-top': borderTop,\n 'border-bottom': borderBottom,\n 'background-color': backgroundColor,\n 'font-size': fontSize\n };\n }\n\n}\n\nexport interface TableConfig {\n height: string | \"100%\";\n width: string | \"100%\";\n paginationConfig?: PaginationConfig | undefined | null;\n colHeadersRowConfig: RowConfig | undefined | null;\n rowConfig: RowConfig | undefined | null;\n colHeaderConfig: Array<ColHeaderConfig>;\n colConfig: Array<ColConfig>;\n canExpand?: boolean;\n canScrollHorizontally?: boolean;\n cellHover?: boolean;\n activeRowIndex?: number;\n}\nexport interface PaginationConfig {\n noOfPages: number;\n rowsPerPage: number;\n totalNoOfRows: number;\n selectedPage?: number;\n}\nexport interface RowConfig {\n height?: string | undefined | null;\n style?: {};\n action?: any;\n}\nexport interface ColHeaderConfig {\n type: \"text\" | \"number\" | \"custom\";\n data: any;\n componentRef?: any;\n filters?: Array<Filter> | null;\n style?: {};\n action?: any;\n}\nexport interface ColConfig {\n type: \"text\" | \"number\" | \"custom\";\n componentRef?: any;\n style?: {};\n action?: any;\n}\n","import { ModuleWithProviders, NgModule } from \"@angular/core\";\nimport { TableComponent } from \"./table.component\";\nimport { CustomTableCellDirective } from \"./custom-table-cell.directive\";\nimport { SubTableComponent } from \"./sub-table/sub-table.component\";\nimport { CommonModule } from \"@angular/common\";\nimport { TableFilterComponent } from \"./filter/filter.component\";\nimport { CheckboxModule } from \"mis-crystal-design-system/checkbox\";\nimport { ScrollingModule } from \"@angular/cdk/scrolling\";\n\n@NgModule({\n declarations: [TableComponent, SubTableComponent, TableFilterComponent, CustomTableCellDirective],\n imports: [CommonModule, CheckboxModule, ScrollingModule],\n exports: [TableComponent, SubTableComponent, TableFilterComponent, CustomTableCellDirective]\n})\nexport class TableModule {\n static forRoot(): ModuleWithProviders<TableModule> {\n return { ngModule: TableModule, providers: [] };\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["_c3","_c2","_c7","_c5","_c6","_c4","_c1"],"mappings":"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"}
1
+ {"version":3,"file":"mis-crystal-design-system-table.mjs","sources":["../../../projects/mis-components/table/custom-table-cell.directive.ts","../../../projects/mis-components/table/sub-table/sub-table.component.html","../../../projects/mis-components/table/sub-table/sub-table.component.ts","../../../projects/mis-components/table/filter/filter.component.html","../../../projects/mis-components/table/filter/filter.component.ts","../../../projects/mis-components/table/table.component.html","../../../projects/mis-components/table/table.component.ts","../../../projects/mis-components/table/table.module.ts","../../../projects/mis-components/table/mis-crystal-design-system-table.ts"],"sourcesContent":["import { ComponentFactoryResolver, Directive, Input, ViewContainerRef } from \"@angular/core\";\n\n@Directive({\n selector: \"[customTableCell]\"\n})\nexport class CustomTableCellDirective {\n private ref: any;\n private component: any;\n private cellData: any;\n\n @Input() set customComponent(value: any) {\n this.component = value;\n this.createComponent();\n }\n @Input() set data(value: any) {\n this.cellData = value;\n if (this.ref) {\n this.ref.instance.data = this.cellData;\n }\n }\n\n constructor(private viewContainerRef: ViewContainerRef, private componentFactoryResolver: ComponentFactoryResolver) {}\n\n createComponent() {\n if (this.component) {\n const cmpFactoryResolver = this.componentFactoryResolver.resolveComponentFactory(this.component);\n this.viewContainerRef.clear();\n this.ref = this.viewContainerRef.createComponent(cmpFactoryResolver);\n this.setData();\n }\n }\n setData() {\n this.ref.instance.data = this.cellData;\n }\n}\n","<div\n id=\"main-container\"\n [ngStyle]=\"{\n height: getContainerHeight(),\n width: getContainerWidth()\n }\"\n>\n <div id=\"table-container\" #table>\n <div\n id=\"col-headers-container\"\n *ngIf=\"!!config.showHeader\"\n [ngStyle]=\"{\n height: getColHeadersRowHeight(),\n 'border-top': getColHeadersRowBorderTop(),\n 'border-bottom': getColHeadersRowBorderBottom()\n }\"\n >\n <div\n class=\"col-header\"\n (click)=\"colHeader?.action ? colHeader?.action(colHeader) : null\"\n *ngFor=\"let colHeader of config?.colHeaderConfig\"\n [style]=\"colHeader?.style\"\n [ngStyle]=\"{\n width: colHeader?.style?.width || '',\n cursor: colHeader.action ? 'pointer' : 'default',\n 'justify-content': colHeader?.style?.justifyContent\n ? colHeader?.style?.justifyContent\n : colHeader.type === 'number'\n ? 'flex-end'\n : 'space-between'\n }\"\n >\n <p *ngIf=\"colHeader?.type !== 'custom'\" class=\"col-header-text\">\n {{ colHeader?.data || \" \" }}\n </p>\n <ng-template\n *ngIf=\"colHeader?.type === 'custom'\"\n customTableCell\n [customComponent]=\"colHeader?.componentRef\"\n [data]=\"colHeader.data\"\n ></ng-template>\n </div>\n </div>\n <div>\n <cdk-virtual-scroll-viewport\n [minBufferPx]=\"config.dataContainerMaxHeight || '400'\"\n [maxBufferPx]=\"config.dataContainerMaxHeight + 200 || '600'\"\n [style.overflow]=\"'overlay'\"\n [style.height]=\"config.dataContainerMaxHeight || '400px'\"\n itemSize=\"50\"\n id=\"data-container\"\n >\n <div\n class=\"row-wrapper\"\n *cdkVirtualFor=\"let row of tableData; let i = index\"\n [ngStyle]=\"{\n backgroundColor: i % 2 === 0 ? '#FAFAFA' : null\n }\"\n >\n <div class=\"t-row\">\n <div\n (click)=\"config?.colConfig[i]?.action ? config?.colConfig[i]?.action(col) : null\"\n *ngFor=\"let col of row; let i = index\"\n [ngStyle]=\"{\n width: config?.colConfig[i]?.style?.width || config?.colHeaderConfig[i]?.style?.width || ''\n }\"\n class=\"t-col-container\"\n >\n <div\n class=\"t-col\"\n [style]=\"config.colConfig[i]?.style\"\n [ngStyle]=\"{\n width: '100%',\n cursor: config.colConfig[i].action ? 'pointer' : 'default',\n 'justify-content': config.colConfig[i]?.style?.justifyContent\n ? config.colConfig[i]?.style?.justifyContent\n : config.colConfig[i].type === 'number'\n ? 'flex-end'\n : 'space-between'\n }\"\n >\n <p\n *ngIf=\"config.colConfig[i].type !== 'custom'\"\n [ngStyle]=\"{\n color: config?.colConfig[i]?.style?.color ? config?.colConfig[i]?.style?.color : ''\n }\"\n class=\"t-col-text\"\n >\n {{ col }}\n </p>\n <ng-template\n *ngIf=\"config.colConfig[i].type === 'custom'\"\n [customComponent]=\"config.colConfig[i].componentRef\"\n [data]=\"col\"\n customTableCell\n ></ng-template>\n </div>\n </div>\n </div>\n </div>\n </cdk-virtual-scroll-viewport>\n </div>\n </div>\n</div>\n","import { AfterViewInit, Component, ElementRef, Input, OnInit, Renderer2, ViewChild } from \"@angular/core\";\n\n@Component({\n selector: \"sub-table\",\n templateUrl: \"sub-table.component.html\",\n styleUrls: [\"sub-table.component.css\"]\n})\nexport class SubTableComponent implements OnInit, AfterViewInit {\n selectedPage = 1;\n pages: Array<number> = [];\n\n @Input() config: SubTableConfig | any;\n @Input() tableData: Array<Array<any>> = [];\n @ViewChild(\"table\") table: ElementRef | any;\n constructor(private renderer: Renderer2) {}\n\n ngOnInit() {}\n\n ngAfterViewInit() {\n if (this.config.paginationConfig) {\n let height = this.table.nativeElement.offsetHeight;\n this.renderer.setStyle(this.table.nativeElement, \"height\", height - 56 + \"px\");\n }\n }\n\n // Main container related functions\n getContainerHeight() {\n if (this.config.height) return this.config.height;\n else return \"\";\n }\n getContainerWidth() {\n if (this.config.width) return this.config.width;\n else return \"\";\n }\n\n // Column Headers related functions\n getColHeadersRowHeight() {\n if (this.config.colHeadersRowConfig && this.config.colHeadersRowConfig.height) {\n return this.config.colHeadersRowConfig.height;\n } else return \"44px\";\n }\n getColHeadersRowBorderTop() {\n if (this.config.colHeadersRowConfig && this.config.colHeadersRowConfig.style?.borderTop) {\n return this.config.colHeadersRowConfig.style?.borderTop;\n } else return \"\";\n }\n getColHeadersRowBorderBottom() {\n if (this.config.colHeadersRowConfig && this.config.colHeadersRowConfig.style?.borderBottom) {\n return this.config.colHeadersRowConfig.style?.borderBottom;\n } else return \"1px solid #E0E0E0\";\n }\n}\n\nexport interface SubTableConfig {\n height: string | \"100%\";\n width: string | \"100%\";\n dataContainerMaxHeight: string | \"400px\";\n showHeader?: boolean | undefined;\n rowConfig: SubTableRowConfig | undefined | null;\n colHeaderConfig?: Array<SubTableColHeaderConfig>;\n colConfig: Array<SubTableColConfig>;\n}\n\nexport interface SubTableRowConfig {\n height?: string | undefined | null;\n style?: {};\n}\nexport interface SubTableColHeaderConfig {\n type: \"text\" | \"number\" | \"custom\";\n data: any;\n componentRef?: any;\n style?: {};\n action?: any;\n}\nexport interface SubTableColConfig {\n type: \"text\" | \"number\" | \"custom\";\n componentRef?: any;\n style?: {};\n action?: any;\n}\n","<div id=\"main-container\" #mainContainer [ngStyle]=\"containerStyles\">\n <div id=\"search-bar-container\">\n <input (keyup)=\"updateSearchValue($event)\" type=\"text\" placeholder=\"Search\" />\n <svg id=\"search-icon\" width=\"18\" height=\"18\" viewBox=\"0 0 18 18\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M1.21496 8.14563C1.21496 4.3179 4.33709 1.21165 8.19249 1.21165C12.0479 1.21165 15.17 4.3179 15.17 8.14563C15.17 9.69308 14.6598 11.1226 13.797 12.2767L12.3684 13.7013C11.2043 14.5668 9.75891 15.0796 8.19249 15.0796C4.33709 15.0796 1.21496 11.9734 1.21496 8.14563ZM12.9419 14.7835C11.602 15.7329 9.96259 16.2913 8.19249 16.2913C3.66965 16.2913 -0.00012207 12.6461 -0.00012207 8.14563C-0.00012207 3.64512 3.66965 0 8.19249 0C12.7153 0 16.3851 3.64512 16.3851 8.14563C16.3851 9.93713 15.8036 11.5931 14.8183 12.9375L16.836 14.4048C17.6704 14.912 18.7553 15.6543 17.2453 17.215C15.7352 18.7756 15.0098 17.6663 14.499 16.8364L12.9419 14.7835Z\"\n fill=\"#6A737D\"\n />\n </svg>\n </div>\n <div id=\"filters-main-container\">\n <div class=\"filters-sub-container\">\n <div *ngFor=\"let filter of getCheckedFilters()\">\n <div class=\"filter\">\n <mis-checkbox [checked]=\"true\" [name]=\"filter.value\" (valueChange)=\"updateFilter($event)\"></mis-checkbox>\n <span class=\"filter-text\">{{ filter.name }}</span>\n </div>\n </div>\n </div>\n <div class=\"separator\" [ngStyle]=\"{ 'margin': '16px 0px' }\" *ngIf=\"getCheckedFilters().length && getCheckedFilters().length < filtersData.length\"></div>\n <div class=\"filters-sub-container\">\n <div *ngFor=\"let filter of getFiltersBasedOnSearchValue()\">\n <div class=\"filter\" *ngIf=\"!filter.checked\">\n <mis-checkbox [checked]=\"false\" [name]=\"filter.value\" (valueChange)=\"updateFilter($event)\"></mis-checkbox>\n <span class=\"filter-text\">{{ filter.name }}</span>\n </div>\n </div>\n <div id=\"no-results-container\" *ngIf=\"getFiltersBasedOnSearchValue().length < 1\">\n <span class=\"filter-text\">No matches found</span>\n </div>\n </div>\n <div class=\"separator\" [ngStyle]=\"{ 'margin': '16px 0px' }\"></div>\n <div id=\"buttons-container\">\n <button id=\"reset-btn\" [ngStyle]=\"{ 'margin-right': '8px' }\" (click)=\"resetFilters()\">Reset</button>\n <button id=\"apply-btn\" (click)=\"applyFilters()\">Apply</button>\n </div>\n </div>\n</div>\n","import { Component, ElementRef, EventEmitter, Input, OnInit, Output, ViewChild } from \"@angular/core\";\n\n@Component({\n selector: \"mis-table-filter\",\n templateUrl: \"filter.component.html\",\n styleUrls: [\"filter.component.css\"]\n})\nexport class TableFilterComponent implements OnInit {\n @Input() filtersData: Array<Filter> = [];\n @Input() containerStyles: any = {};\n\n @Output() filtersApplied = new EventEmitter<any>();\n\n @ViewChild(\"mainContainer\") container: ElementRef | undefined;\n\n filtersMap: any = {};\n searchValue: string = \"\";\n\n constructor() {}\n\n ngOnInit(): void {\n this.filtersData.forEach(filter => {\n this.filtersMap[filter.value] = filter;\n });\n }\n resetFilters() {\n this.filtersData.forEach(filter => {\n this.filtersMap[filter.value].checked = false;\n });\n this.filtersApplied.emit([]);\n }\n applyFilters() {\n let list = Object.values(this.filtersMap)\n .filter((filter: Filter | any) => filter.checked)\n .map((filter: Filter | any) => {\n return {\n name: filter.name,\n value: filter.value\n };\n });\n this.filtersApplied.emit(list);\n }\n updateSearchValue(event: any) {\n this.searchValue = event.target.value;\n }\n updateFilter(data: any) {\n if (this.filtersMap[data.name]) {\n this.filtersMap[data.name].checked = !this.filtersMap[data.name].checked;\n }\n }\n getFiltersBasedOnSearchValue(): Filter[] | any {\n let list = Object.values(this.filtersMap);\n list = list.filter((filter: Filter | any) => {\n return filter.name.match(new RegExp(this.searchValue, \"i\"));\n });\n return list.sort(this.mySort);\n }\n getCheckedFilters(): Filter[] | any {\n let list = Object.values(this.filtersMap);\n list = list.filter((filter: Filter | any) => filter.checked).sort(this.mySort);\n return list;\n }\n mySort = (a: Filter | any, b: Filter | any) => {\n if (a.name < b.name) return -1;\n else if (b.name < a.name) return 1;\n else return 0;\n };\n}\nexport interface Filter {\n name: string;\n value: string;\n checked: boolean;\n}\n","<div\n [ngStyle]=\"{\n height: getContainerHeight(),\n width: getContainerWidth(),\n 'overflow-x': config.canScrollHorizontally ? 'auto' : 'unset'\n }\"\n id=\"main-container\"\n>\n <mis-table-filter\n #filter\n (filtersApplied)=\"updateAppliedFilters($event)\"\n *ngIf=\"showFilter\"\n [containerStyles]=\"filterContainerStyles\"\n [filtersData]=\"filterData\"\n ></mis-table-filter>\n <div\n #table\n id=\"table-container\"\n [ngClass]=\"{ 'no-scrollbar': expandedIndex < 0, scrollbar: !(expandedIndex < 0), 'scroll-horizontally': config.canScrollHorizontally }\"\n >\n <div\n [ngStyle]=\"getColHeadersRowStyles()\"\n id=\"col-headers-container\"\n >\n <div\n #colHeaderRef\n (click)=\"colHeader?.action ? colHeader?.action(colHeader) : null\"\n *ngFor=\"let colHeader of config?.colHeaderConfig\"\n class=\"col-header\"\n [ngStyle]=\"{\n width: colHeader?.style?.width || '',\n cursor: colHeader.action ? 'pointer' : 'default',\n 'justify-content': colHeader?.style?.justifyContent\n ? colHeader?.style?.justifyContent\n : colHeader.type === 'number'\n ? 'flex-end'\n : 'space-between'\n }\"\n >\n <p *ngIf=\"colHeader?.type !== 'custom'\" class=\"col-header-text\">\n {{ colHeader?.data || \" \" }}\n </p>\n <span\n (click)=\"filterData = colHeader.filters; toggleFilter(colHeader.data); $event.stopPropagation()\"\n *ngIf=\"colHeader?.type !== 'custom' && colHeader?.filters && colHeader?.filters?.length > 0\"\n class=\"filter-icon\"\n >\n <span *ngIf=\"appliedFilters[colHeader.data]?.length > 0\" id=\"filter-active\"></span>\n <svg fill=\"none\" height=\"10\" viewBox=\"0 0 13 10\" width=\"13\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n clip-rule=\"evenodd\"\n d=\"M4.97546 10H7.64213V8H4.97546V10ZM0.308472 0V2H12.3085V0H0.308472ZM2.30847 6H10.3085V4H2.30847V6Z\"\n fill=\"#181F33\"\n fill-rule=\"evenodd\"\n />\n </svg>\n </span>\n <ng-template\n *ngIf=\"colHeader?.type === 'custom'\"\n [customComponent]=\"colHeader?.componentRef\"\n [data]=\"colHeader.data\"\n customTableCell\n ></ng-template>\n </div>\n </div>\n <div id=\"data-container\">\n <div class=\"row-wrapper\" *ngFor=\"let row of tableData; let i = index\">\n <div\n class=\"t-row\"\n [ngClass]=\"{ 't-row-hover': config.cellHover, 'active-row': i === activeRowIndex }\"\n [ngStyle]=\"{ 'min-height': config?.rowConfig?.height ? config.rowConfig.height : '44px' }\"\n (click)=\"selectRow(i)\"\n >\n <div\n (click)=\"config?.colConfig[i]?.action ? config?.colConfig[i]?.action(col) : null\"\n *ngFor=\"let col of row; let i = index\"\n [ngStyle]=\"{\n width: config?.colConfig[i]?.style?.width || config?.colHeaderConfig[i]?.style?.width || ''\n }\"\n class=\"t-col-container\"\n [ngClass]=\"{ 't-col-container-hover': config.cellHover }\"\n >\n <div\n class=\"t-col\"\n [style]=\"config.colConfig[i]?.style\"\n [ngStyle]=\"{\n width: '100%',\n cursor: config.colConfig[i]?.action ? 'pointer' : 'default',\n 'justify-content': config.colConfig[i]?.style?.justifyContent\n ? config.colConfig[i]?.style?.justifyContent\n : config.colConfig[i]?.type === 'number'\n ? 'flex-end'\n : 'space-between'\n }\"\n >\n <p\n *ngIf=\"config.colConfig[i]?.type !== 'custom'\"\n [ngStyle]=\"{\n color: config?.colConfig[i]?.style?.color ? config?.colConfig[i]?.style?.color : ''\n }\"\n class=\"t-col-text\"\n >\n {{ col }}\n </p>\n <ng-template\n *ngIf=\"config.colConfig[i]?.type === 'custom'\"\n [customComponent]=\"config.colConfig[i].componentRef\"\n [data]=\"col\"\n customTableCell\n ></ng-template>\n </div>\n </div>\n </div>\n <div *ngIf=\"config?.canExpand && expandedIndex === i\" class=\"sub-row\">\n <ng-container *ngIf=\"subTableDataLoading\">\n <div [ngStyle]=\"{\n display: 'flex',\n justifyContent: 'center',\n alignItems: 'center',\n padding: '16px'\n }\">\n Loading...\n </div>\n </ng-container>\n \n <ng-container *ngIf=\"!subTableDataLoading && subTableData.length === 0\">\n <div [ngStyle]=\"{\n display: 'flex',\n justifyContent: 'center',\n alignItems: 'center',\n padding: '16px'\n }\">\n No Data Available...\n </div>\n </ng-container>\n \n <ng-container *ngIf=\"!subTableDataLoading && subTableData.length > 0\">\n <sub-table [config]=\"subTableconfig\" [tableData]=\"subTableData\"></sub-table>\n </ng-container>\n </div>\n </div>\n </div>\n </div>\n <div\n *ngIf=\"config?.paginationConfig && (tableLength >= config.paginationConfig.rowsPerPage || config.paginationConfig?.selectedPage !== 1)\"\n id=\"pagination-container\"\n >\n <p id=\"pagination-text\">\n Showing\n {{ (config.paginationConfig?.selectedPage - 1) * config.paginationConfig.rowsPerPage + 1 }}-{{\n (config.paginationConfig?.selectedPage - 1) * config.paginationConfig.rowsPerPage + tableLength\n }}\n of {{ config.paginationConfig.totalNoOfRows }} items\n </p>\n <div id=\"pages-container\">\n <span (click)=\"updateSelectedPage(config.paginationConfig?.selectedPage - 1)\" class=\"page\">\n <svg fill=\"none\" height=\"10\" viewBox=\"0 0 7 10\" width=\"7\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n clip-rule=\"evenodd\"\n d=\"M0.857405 5.56295C0.855794 5.56139 0.854188 5.55982 0.852588 5.55824C0.695955 5.40408 0.617641 5.20203 0.617647 4.99998C0.617641 4.79793 0.695955 4.59588 0.852588 4.44172C0.854188 4.44014 0.855794 4.43858 0.857404 4.43702L5.13066 0.231231C5.44392 -0.0770771 5.9518 -0.0770771 6.26506 0.231231C6.57831 0.53954 6.57831 1.03941 6.26506 1.34772L2.5542 4.99998L6.26506 8.65225C6.57831 8.96055 6.57831 9.46042 6.26506 9.76873C5.9518 10.077 5.44392 10.077 5.13066 9.76873L0.857405 5.56295Z\"\n fill=\"#181F33\"\n fill-rule=\"evenodd\"\n />\n </svg>\n </span>\n <div *ngFor=\"let pageNumber of pages\">\n <span\n (click)=\"updateSelectedPage(pageNumber)\"\n *ngIf=\"pageNumber != 0\"\n [ngClass]=\"{ 'page-active': pageNumber == config.paginationConfig?.selectedPage }\"\n class=\"page\"\n >{{ pageNumber }}</span\n >\n <span *ngIf=\"pageNumber == 0\" class=\"page-seperator\">\n <div [ngStyle]=\"{ display: 'flex' }\">\n <span class=\"dot\" [ngStyle]=\"{ 'margin-right': '4px' }\"></span>\n <span class=\"dot\" [ngStyle]=\"{ 'margin-right': '4px' }\"></span>\n <span class=\"dot\"></span>\n </div> \n </span>\n </div>\n <span (click)=\"updateSelectedPage(config.paginationConfig?.selectedPage + 1)\" class=\"page\">\n <svg fill=\"none\" height=\"10\" viewBox=\"0 0 7 10\" width=\"7\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n clip-rule=\"evenodd\"\n d=\"M6.1426 5.56295C6.14421 5.56139 6.14581 5.55982 6.14741 5.55824C6.30405 5.40408 6.38236 5.20203 6.38236 4.99998C6.38236 4.79793 6.30405 4.59588 6.14741 4.44172C6.14581 4.44014 6.14421 4.43858 6.1426 4.43702L1.86934 0.231231C1.55608 -0.0770771 1.0482 -0.0770771 0.734942 0.231231C0.421688 0.53954 0.421688 1.03941 0.734942 1.34772L4.4458 4.99998L0.734941 8.65225C0.421686 8.96055 0.421686 9.46042 0.734941 9.76873C1.0482 10.077 1.55608 10.077 1.86934 9.76873L6.1426 5.56295Z\"\n fill=\"#181F33\"\n fill-rule=\"evenodd\"\n />\n </svg>\n </span>\n </div>\n </div>\n</div>\n","import {\n AfterViewInit,\n Component,\n ElementRef,\n EventEmitter,\n Input,\n OnChanges,\n OnInit,\n Output,\n QueryList,\n Renderer2,\n ViewChild,\n ViewChildren\n} from \"@angular/core\";\nimport { Filter, TableFilterComponent } from \"./filter/filter.component\";\n\n@Component({\n selector: \"mis-table\",\n templateUrl: \"table.component.html\",\n styleUrls: [\"table.component.css\"]\n})\nexport class TableComponent implements OnInit, AfterViewInit, OnChanges {\n\n // Initialize with -1 to indicate no row is colored at the beginning\n activeRowIndex: number = 0; \n\n // Filter related variables\n showFilter: boolean = false;\n filterName: string = \"\";\n filterData: Array<Filter> = [];\n filterContainerStyles: any = {};\n appliedFilters: { [key: string]: Array<{ name: string; value: string }> } = {};\n @Output() filtersUpdated = new EventEmitter<{\n [key: string]: Array<{ name: string; value: string }>;\n }>();\n\n @ViewChild(\"filter\") filter: TableFilterComponent | any;\n @ViewChildren(\"colHeaderRef\") colHeaders: QueryList<ElementRef> | any;\n\n // Pagination related variables\n pages: Array<number> = [];\n tableLength: number;\n @Output() pageSelected = new EventEmitter<number>();\n\n @Input(\"tableConfig\") config: TableConfig | any;\n @Input() subTableconfig: TableConfig | any;\n @Input() tableDataLoading: boolean | any;\n @Input() expandedIndex: number | any;\n @Input() tableData: Array<Array<any>> = [];\n @Input() subTableData: Array<Array<any>> = [];\n @Input() subTableDataLoading: boolean | any;\n @ViewChild(\"table\") table: ElementRef | any;\n\n constructor(private renderer: Renderer2) { }\n\n // Function to handle row click\n selectRow(index: number) {\n this.activeRowIndex = index; // Set the selected index to the clicked row's index\n !!this.config.rowConfig.action && this.config.rowConfig.action(index);\n }\n ngOnInit(): void {\n this.tableLength = !!this.tableData ? this.tableData.length : 0;\n this.initializeFilters();\n if (this.config.paginationConfig) {\n this.initializePagination();\n }\n if (this.config.canScrollHorizontally === undefined) {\n this.config.canScrollHorizontally = false;\n }\n document.addEventListener(\"click\", event => {\n if (this.filter) {\n let isCheckBoxClicked = true;\n let targetElement = event.target as HTMLSpanElement;\n if (targetElement.className === \"checkmark\") {\n isCheckBoxClicked = true;\n this.showFilter = true;\n }\n let isClickInsideElement = this.filter.container.nativeElement.contains(event.target);\n if (!isClickInsideElement && !isCheckBoxClicked) {\n this.toggleFilter(this.filterName);\n }\n }\n });\n }\n ngAfterViewInit() {\n if (this.config.paginationConfig) {\n let height = this.config.height;\n this.renderer.setStyle(this.table.nativeElement, \"height\", height - 56 + \"px\");\n }\n }\n ngOnChanges() {\n this.tableLength = !!this.tableData ? this.tableData.length : 0;\n this.activeRowIndex = this.config.activeRowIndex || 0;\n }\n\n // Filter related functions\n initializeFilters() {\n for (let colHeader of this.config?.colHeaderConfig) {\n if (colHeader.filters) {\n let filters = [];\n for (let filter of colHeader.filters) {\n if (filter.checked) {\n filters.push({\n name: filter.name,\n value: filter.value\n });\n }\n }\n if (filters.length > 0) this.appliedFilters[colHeader.data] = filters;\n }\n }\n }\n toggleFilter(filterName: string) {\n if (!this.showFilter) {\n this.filterName = filterName;\n this.showFilter = true;\n\n let offSet = 0;\n let colHeadersReversed = this.colHeaders.toArray().reverse();\n\n for (let header of colHeadersReversed) {\n if (header.nativeElement.innerText === filterName) break;\n offSet += header.nativeElement.offsetWidth;\n }\n this.filterContainerStyles = {\n top: \"44px\",\n right: offSet > 0 ? offSet - 116 + \"px\" : \"12px\"\n };\n } else {\n this.filterName = \"\";\n this.filterData = [];\n this.showFilter = false;\n }\n }\n updateAppliedFilters(appliedFilters: Array<{ name: string; value: string }>) {\n if (appliedFilters.length == 0) {\n delete this.appliedFilters[this.filterName];\n } else {\n this.appliedFilters[this.filterName] = appliedFilters;\n }\n this.filtersUpdated.emit({ ...this.appliedFilters });\n this.toggleFilter(this.filterName);\n }\n\n // Pagination related functions\n initializePagination() {\n if (this.config.paginationConfig) {\n let len = this.config.paginationConfig.noOfPages;\n if (len <= 7) {\n for (let i = 1; i <= len; i++) {\n this.pages.push(i);\n }\n } else {\n this.pages = [1, 2, 3, 4, 0, len];\n }\n }\n }\n updateSelectedPage(pageNumber: number) {\n if (pageNumber < 1 || pageNumber > this.config.paginationConfig.noOfPages) return;\n this.config.paginationConfig.selectedPage = pageNumber;\n let len = this.config.paginationConfig.noOfPages;\n if (len > 7) {\n if (pageNumber - 2 <= 1) {\n this.pages = [1, 2, 3, 4, 0, len];\n } else if (pageNumber - 2 > 1 && pageNumber + 2 < len) {\n this.pages = [1, 0, pageNumber - 1, pageNumber, pageNumber + 1, 0, len];\n } else if (pageNumber + 2 >= len) {\n this.pages = [1, 0, len - 3, len - 2, len - 1, len];\n }\n }\n this.pageSelected.emit(this.config.paginationConfig?.selectedPage);\n }\n\n // Main container related functions\n getContainerHeight() {\n if (this.config?.height) return this.config.height;\n else return \"\";\n }\n getContainerWidth() {\n if (this.config?.width) return this.config.width;\n else return \"\";\n }\n\n // Column Headers related functions\n getColHeadersRowStyles() {\n const { colHeadersRowConfig } = this.config;\n const minHeight = colHeadersRowConfig?.height || \"44px\";\n const borderTop = colHeadersRowConfig?.style?.borderTop || \"\";\n const borderBottom = colHeadersRowConfig?.style?.borderBottom || \"1px solid #E0E0E0\";\n const backgroundColor = colHeadersRowConfig?.style?.backgroundColor || \"#FFFFFF\";\n const fontSize = colHeadersRowConfig?.style?.fontSize || \"14px\";\n return {\n 'min-height': minHeight,\n 'border-top': borderTop,\n 'border-bottom': borderBottom,\n 'background-color': backgroundColor,\n 'font-size': fontSize\n };\n }\n\n}\n\nexport interface TableConfig {\n height: string | \"100%\";\n width: string | \"100%\";\n paginationConfig?: PaginationConfig | undefined | null;\n colHeadersRowConfig: RowConfig | undefined | null;\n rowConfig: RowConfig | undefined | null;\n colHeaderConfig: Array<ColHeaderConfig>;\n colConfig: Array<ColConfig>;\n canExpand?: boolean;\n canScrollHorizontally?: boolean;\n cellHover?: boolean;\n activeRowIndex?: number;\n}\nexport interface PaginationConfig {\n noOfPages: number;\n rowsPerPage: number;\n totalNoOfRows: number;\n selectedPage?: number;\n}\nexport interface RowConfig {\n height?: string | undefined | null;\n style?: {};\n action?: any;\n}\nexport interface ColHeaderConfig {\n type: \"text\" | \"number\" | \"custom\";\n data: any;\n componentRef?: any;\n filters?: Array<Filter> | null;\n style?: {};\n action?: any;\n}\nexport interface ColConfig {\n type: \"text\" | \"number\" | \"custom\";\n componentRef?: any;\n style?: {};\n action?: any;\n}\n","import { ModuleWithProviders, NgModule } from \"@angular/core\";\nimport { TableComponent } from \"./table.component\";\nimport { CustomTableCellDirective } from \"./custom-table-cell.directive\";\nimport { SubTableComponent } from \"./sub-table/sub-table.component\";\nimport { CommonModule } from \"@angular/common\";\nimport { TableFilterComponent } from \"./filter/filter.component\";\nimport { CheckboxModule } from \"mis-crystal-design-system/checkbox\";\nimport { ScrollingModule } from \"@angular/cdk/scrolling\";\n\n@NgModule({\n declarations: [TableComponent, SubTableComponent, TableFilterComponent, CustomTableCellDirective],\n imports: [CommonModule, CheckboxModule, ScrollingModule],\n exports: [TableComponent, SubTableComponent, TableFilterComponent, CustomTableCellDirective]\n})\nexport class TableModule {\n static forRoot(): ModuleWithProviders<TableModule> {\n return { ngModule: TableModule, providers: [] };\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["_c3","_c2","_c7","_c5","_c6","_c4","_c1"],"mappings":"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"}
@@ -1,11 +1,14 @@
1
1
  import * as i0 from '@angular/core';
2
- import { EventEmitter, Directive, Input, Output, Component, ViewChildren, ViewChild, NgModule } from '@angular/core';
3
- import moment from 'moment-timezone';
2
+ import { EventEmitter, Directive, Input, Output, Component, ViewChild, ViewChildren, NgModule } from '@angular/core';
4
3
  import * as i1 from '@angular/cdk/overlay';
5
4
  import { ConnectionPositionPair, OverlayConfig, OverlayModule } from '@angular/cdk/overlay';
6
5
  import { TemplatePortal } from '@angular/cdk/portal';
7
6
  import * as i3 from 'mis-crystal-design-system/tooltip';
8
7
  import { ToolTipDirective, ToolTipModule } from 'mis-crystal-design-system/tooltip';
8
+ import dayjs from 'dayjs';
9
+ import timezone from 'dayjs/plugin/timezone';
10
+ import utc from 'dayjs/plugin/utc';
11
+ import customParseFormat from 'dayjs/plugin/customParseFormat';
9
12
  import * as i1$1 from '@angular/common';
10
13
  import { CommonModule } from '@angular/common';
11
14
  import * as i2 from '@angular/forms';
@@ -52,8 +55,8 @@ class TimepickerDirective {
52
55
  destroyOverlay() {
53
56
  this.overlayRef.detach();
54
57
  }
55
- static { this.ɵfac = function TimepickerDirective_Factory(t) { return new (t || TimepickerDirective)(i0.ɵɵdirectiveInject(i0.TemplateRef), i0.ɵɵdirectiveInject(i1.Overlay), i0.ɵɵdirectiveInject(i0.ViewContainerRef)); }; }
56
- static { this.ɵdir = /*@__PURE__*/ i0.ɵɵdefineDirective({ type: TimepickerDirective, selectors: [["", "libTimepicker", ""]], inputs: { originEl: "originEl", createOverlayOnInput: [i0.ɵɵInputFlags.None, "openStatus", "createOverlayOnInput"] }, outputs: { statusEmitter: "statusEmitter" } }); }
58
+ static { this.ɵfac = function TimepickerDirective_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || TimepickerDirective)(i0.ɵɵdirectiveInject(i0.TemplateRef), i0.ɵɵdirectiveInject(i1.Overlay), i0.ɵɵdirectiveInject(i0.ViewContainerRef)); }; }
59
+ static { this.ɵdir = /*@__PURE__*/ i0.ɵɵdefineDirective({ type: TimepickerDirective, selectors: [["", "libTimepicker", ""]], inputs: { originEl: "originEl", createOverlayOnInput: [0, "openStatus", "createOverlayOnInput"] }, outputs: { statusEmitter: "statusEmitter" } }); }
57
60
  }
58
61
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(TimepickerDirective, [{
59
62
  type: Directive,
@@ -113,6 +116,9 @@ function TimePickerComponent_ng_template_3_Template(rf, ctx) { if (rf & 1) {
113
116
  const ctx_r3 = i0.ɵɵnextContext();
114
117
  i0.ɵɵproperty("ngIf", ctx_r3.openStatus);
115
118
  } }
119
+ dayjs.extend(utc);
120
+ dayjs.extend(timezone);
121
+ dayjs.extend(customParseFormat);
116
122
  class TimePickerComponent {
117
123
  // gets all the li elements from the dropdown and scrolls to the highlighted element
118
124
  set timeIntervalRefs(intervals) {
@@ -136,7 +142,7 @@ class TimePickerComponent {
136
142
  this.height = "max-content";
137
143
  this.inputWidth = "100px";
138
144
  this.interval = 15;
139
- this.dateAsEpoch = moment().valueOf();
145
+ this.dateAsEpoch = dayjs().valueOf();
140
146
  this.rangeValidity = true;
141
147
  this.showTooltip = true;
142
148
  this.dispayToolTip = this.showTooltip;
@@ -146,31 +152,31 @@ class TimePickerComponent {
146
152
  }
147
153
  ngOnInit() {
148
154
  if (!this.givenTime && !this.minTime) {
149
- this.chosenTime = moment(this.firstInterval).format(this.timeFormat);
150
- let chosenTimeMoment = this.getMoment(this.chosenTime);
155
+ this.chosenTime = dayjs(this.firstInterval).format(this.timeFormat);
156
+ let chosenTimedayjs = this.getdayjs(this.chosenTime);
151
157
  this.emitTime({
152
158
  valid: !this.isInvalid,
153
159
  time: this.chosenTime,
154
- epoch: chosenTimeMoment.valueOf()
160
+ epoch: chosenTimedayjs.valueOf()
155
161
  });
156
162
  }
157
163
  }
158
164
  ngOnChanges() {
159
165
  this.timeFormat = this.clockFormat === 12 ? "hh:mm a" : "HH:mm";
160
- moment.tz.setDefault(this.timezone);
166
+ dayjs.tz.setDefault(this.timezone);
161
167
  if (this.timeFormat) {
162
- let chosenTimeMoment = this.getMoment(this.chosenTime);
168
+ let chosenTimedayjs = this.getdayjs(this.chosenTime);
163
169
  // if the first interval is >= the chosen time
164
170
  // then only update the value of chosen time
165
171
  // else it remains the same
166
- if (this.firstInterval >= chosenTimeMoment.valueOf() && this.rangeValidity && !this.userInputFlag) {
167
- this.chosenTime = moment(this.firstInterval).format(this.timeFormat);
168
- chosenTimeMoment = this.getMoment(this.chosenTime);
172
+ if (this.firstInterval >= chosenTimedayjs.valueOf() && this.rangeValidity && !this.userInputFlag) {
173
+ this.chosenTime = dayjs(this.firstInterval).format(this.timeFormat);
174
+ chosenTimedayjs = this.getdayjs(this.chosenTime);
169
175
  }
170
176
  if ((this.givenTimeFlag && this.givenTime) || this.minTime) {
171
- this.chosenTime = moment(this.minTime || this.givenTime).format(this.timeFormat);
177
+ this.chosenTime = dayjs(this.minTime || this.givenTime).format(this.timeFormat);
172
178
  }
173
- chosenTimeMoment = this.getMoment(this.chosenTime);
179
+ chosenTimedayjs = this.getdayjs(this.chosenTime);
174
180
  if (!this.userInputFlag)
175
181
  this.populateDropdown();
176
182
  this.userInputFlag = false;
@@ -179,7 +185,7 @@ class TimePickerComponent {
179
185
  this.emitTime({
180
186
  valid: !this.isInvalid,
181
187
  time: this.chosenTime,
182
- epoch: chosenTimeMoment.valueOf()
188
+ epoch: chosenTimedayjs.valueOf()
183
189
  });
184
190
  this.calculateClosestInterval(this.chosenTime);
185
191
  }
@@ -188,9 +194,9 @@ class TimePickerComponent {
188
194
  emitTime(data) {
189
195
  this.timeEmitter.emit(data);
190
196
  }
191
- // function to get moment object when time is given in string
192
- getMoment(time) {
193
- return moment(`${moment(this.dateAsEpoch).format("DD-MM-YYYY")} ${time}`, `'DD-MM-YYYY' ${this.timeFormat}`);
197
+ // function to get dayjs object when time is given in string
198
+ getdayjs(time = '00:00') {
199
+ return dayjs(`${dayjs(this.dateAsEpoch).format("DD-MM-YYYY")} ${time}`, `DD-MM-YYYY ${this.timeFormat}`);
194
200
  }
195
201
  closeDropdown() {
196
202
  this.dispayToolTip = false;
@@ -208,7 +214,7 @@ class TimePickerComponent {
208
214
  const RE12 = /^(([0][1-9]|1[0-2]):([0-5][0-9])( )?(am|pm|AM|PM))$/i;
209
215
  const RE24 = /^([01][0-9]|2[0-3]):[0-5][0-9]$/;
210
216
  const RE = this.clockFormat === 12 ? RE12 : RE24;
211
- const timeMoment = this.getMoment(time);
217
+ const timedayjs = this.getdayjs(time);
212
218
  let flag = false;
213
219
  // if the first interval is set to the start of the day
214
220
  // or a time is already provided to the component to show
@@ -216,11 +222,11 @@ class TimePickerComponent {
216
222
  if (this.minTime ||
217
223
  this.givenTime ||
218
224
  (this.firstInterval &&
219
- moment(this.firstInterval).format(this.timeFormat).valueOf() === moment().startOf("d").format(this.timeFormat).valueOf())) {
225
+ dayjs(this.firstInterval).format(this.timeFormat).valueOf() === dayjs().startOf("day").format(this.timeFormat).valueOf())) {
220
226
  flag = time.match(RE) ? true : false;
221
227
  }
222
228
  else {
223
- flag = time.match(RE) && timeMoment.diff(moment(), "m") >= 0 ? true : false;
229
+ flag = time.match(RE) && timedayjs.diff(dayjs(), "m") >= 0 ? true : false;
224
230
  }
225
231
  return flag;
226
232
  }
@@ -231,11 +237,11 @@ class TimePickerComponent {
231
237
  this.chosenTime = time;
232
238
  this.calculateClosestInterval(this.chosenTime);
233
239
  }
234
- const timeMoment = this.getMoment(time);
240
+ const timedayjs = this.getdayjs(time);
235
241
  this.emitTime({
236
242
  valid: !this.isInvalid,
237
243
  time: time,
238
- epoch: timeMoment.valueOf()
244
+ epoch: timedayjs.valueOf()
239
245
  });
240
246
  this.openStatus = false;
241
247
  if (this.timepickerDirective)
@@ -251,35 +257,35 @@ class TimePickerComponent {
251
257
  this.timepickerDirective.destroyOverlay();
252
258
  this.calculateClosestInterval(time);
253
259
  }
254
- const timeMoment = this.getMoment(time);
260
+ const timedayjs = this.getdayjs(time);
255
261
  this.emitTime({
256
262
  valid: !this.isInvalid,
257
263
  time: time,
258
- epoch: timeMoment.valueOf()
264
+ epoch: timedayjs.valueOf()
259
265
  });
260
266
  }
261
267
  calculateClosestInterval(time) {
262
268
  let roundedEpoch;
263
- // Converting time and date to a moment object
264
- const chosenDate = moment(this.dateAsEpoch).format("DD-MM-YYYY"); // 05-01-2024
265
- const parsedTimeWithDate = moment(`${chosenDate} ${time}`, `DD-MM-YYYY ${this.timeFormat}`);
266
- // Converting moment object to epoch
269
+ // Converting time and date to a dayjs object
270
+ const chosenDate = dayjs(this.dateAsEpoch).format("DD-MM-YYYY"); // 05-01-2024
271
+ const parsedTimeWithDate = dayjs(`${chosenDate} ${time}`, `DD-MM-YYYY ${this.timeFormat}`);
272
+ // Converting dayjs object to epoch
267
273
  const chosenTimeEpoch = parsedTimeWithDate.valueOf();
268
- const offset = this.interval - (moment(chosenTimeEpoch).minutes() % this.interval);
274
+ const offset = this.interval - (dayjs(chosenTimeEpoch).minute() % this.interval);
269
275
  if (this.minTime && !this.givenTime) {
270
276
  this.isHighlighted = 0;
271
277
  return;
272
278
  }
273
- roundedEpoch = offset >= this.interval / 2 ? (moment(chosenTimeEpoch).subtract(this.interval - offset, "m")).valueOf() : (moment(chosenTimeEpoch).add(offset, "m")).valueOf();
279
+ roundedEpoch = offset >= this.interval / 2 ? (dayjs(chosenTimeEpoch).subtract(this.interval - offset, "m")).valueOf() : (dayjs(chosenTimeEpoch).add(offset, "m")).valueOf();
274
280
  // finding the index of element that needs to be highlighted
275
- if (chosenTimeEpoch > moment(this.dateAsEpoch).endOf("d").subtract(this.interval, "m").valueOf()) {
281
+ if (chosenTimeEpoch > dayjs(this.dateAsEpoch).endOf("day").subtract(this.interval, "m").valueOf()) {
276
282
  this.isHighlighted = this.timeIntervals.length - 1;
277
283
  }
278
284
  else {
279
- const roundedEpochMoment = moment(roundedEpoch);
285
+ const roundedEpochdayjs = dayjs(roundedEpoch);
280
286
  this.isHighlighted = this.timeIntervals.findIndex(interval => {
281
- const intervalObj = moment(`${chosenDate} ${interval}`, `DD-MM-YYYY ${this.timeFormat}`);
282
- return intervalObj.isSame(roundedEpochMoment);
287
+ const intervalObj = dayjs(`${chosenDate} ${interval}`, `DD-MM-YYYY ${this.timeFormat}`);
288
+ return intervalObj.isSame(roundedEpochdayjs);
283
289
  });
284
290
  }
285
291
  }
@@ -290,45 +296,45 @@ class TimePickerComponent {
290
296
  if (!this.firstInterval) {
291
297
  // firstInterval is initialised according to the current time
292
298
  // if the date is same as the current date
293
- if (moment(this.dateAsEpoch).format("DD-MM-YYYY") === moment().format("DD-MM-YYYY") && !this.minTime) {
294
- const offset = this.interval - (moment().minutes() % this.interval);
295
- this.firstInterval = moment().add(offset, "m").valueOf();
299
+ if (dayjs(this.dateAsEpoch).format("DD-MM-YYYY") === dayjs().format("DD-MM-YYYY") && !this.minTime) {
300
+ const offset = this.interval - (dayjs().minute() % this.interval);
301
+ this.firstInterval = dayjs().add(offset, "m").valueOf();
296
302
  }
297
303
  // if minimum time to show is provided
298
304
  else if (this.minTime) {
299
- const offset = this.interval - (moment(this.minTime).minutes() % this.interval);
300
- this.firstInterval = moment(this.minTime).add(offset, "m").valueOf();
305
+ const offset = this.interval - (dayjs(this.minTime).minute() % this.interval);
306
+ this.firstInterval = dayjs(this.minTime).add(offset, "m").valueOf();
301
307
  }
302
308
  // else the firstInterval is initialised as start of day
303
309
  else {
304
- this.firstInterval = moment().startOf("d").valueOf();
310
+ this.firstInterval = dayjs().startOf("day").valueOf();
305
311
  }
306
312
  }
307
313
  if (this.givenTime && this.givenTimeFlag) {
308
- this.firstInterval = moment(this.givenTime).startOf('d').valueOf();
314
+ this.firstInterval = dayjs(this.givenTime).startOf('d').valueOf();
309
315
  this.givenTimeFlag = false;
310
316
  }
311
- const dateAsString = moment(this.dateAsEpoch).format('DD-MM-YYYY');
312
- const intervalAsString = moment(this.firstInterval).format(this.timeFormat);
313
- const start = moment(`${dateAsString} ${intervalAsString}`, `DD-MM-YYYY ${this.timeFormat}`);
314
- const end = moment(`${dateAsString}`, 'DD-MM-YYYY').endOf('d');
317
+ const dateAsString = dayjs(this.dateAsEpoch).format('DD-MM-YYYY');
318
+ const intervalAsString = dayjs(this.firstInterval).format(this.timeFormat);
319
+ let start = dayjs(`${dateAsString} ${intervalAsString}`, `DD-MM-YYYY ${this.timeFormat}`);
320
+ const end = dayjs(this.dateAsEpoch).endOf('d');
315
321
  while (start.valueOf() < end.valueOf()) {
316
322
  this.timeIntervals.push(start.format(this.timeFormat));
317
- start.add(this.interval, "m");
323
+ start = start.add(this.interval, "m");
318
324
  }
319
325
  // if the start time is equal to the interval just before midnight
320
326
  // and the start date = end date
321
327
  // push 11:59pm only
322
328
  if (this.timeIntervals.length === 0) {
323
- this.chosenTime = moment().endOf("d").format(this.timeFormat);
324
- this.timeIntervals.push(moment().endOf("d").format(this.timeFormat));
329
+ this.chosenTime = dayjs().endOf("d").format(this.timeFormat);
330
+ this.timeIntervals.push(dayjs().endOf("d").format(this.timeFormat));
325
331
  }
326
332
  }
327
333
  ngOnDestroy() {
328
334
  if (this.tooltipDirective)
329
335
  this.tooltipDirective.hideToolTip();
330
336
  }
331
- static { this.ɵfac = function TimePickerComponent_Factory(t) { return new (t || TimePickerComponent)(); }; }
337
+ static { this.ɵfac = function TimePickerComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || TimePickerComponent)(); }; }
332
338
  static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: TimePickerComponent, selectors: [["mis-timepicker"]], viewQuery: function TimePickerComponent_Query(rf, ctx) { if (rf & 1) {
333
339
  i0.ɵɵviewQuery(_c0, 7);
334
340
  i0.ɵɵviewQuery(TimepickerDirective, 5);
@@ -411,7 +417,7 @@ class TimePickerModule {
411
417
  static forRoot() {
412
418
  return { ngModule: TimePickerModule, providers: [] };
413
419
  }
414
- static { this.ɵfac = function TimePickerModule_Factory(t) { return new (t || TimePickerModule)(); }; }
420
+ static { this.ɵfac = function TimePickerModule_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || TimePickerModule)(); }; }
415
421
  static { this.ɵmod = /*@__PURE__*/ i0.ɵɵdefineNgModule({ type: TimePickerModule }); }
416
422
  static { this.ɵinj = /*@__PURE__*/ i0.ɵɵdefineInjector({ imports: [CommonModule, FormsModule, ToolTipModule, OverlayModule] }); }
417
423
  }