{"version":3,"file":"relinns-angular-ui-kit.mjs","sources":["../../../../projects/relinns/angular-common/src/assets/chevron-up/chevron-up.component.ts","../../../../projects/relinns/angular-common/src/assets/chevron-up/chevron-up.component.svg","../../../../projects/relinns/angular-common/src/assets/chevron-down/chevron-down.component.ts","../../../../projects/relinns/angular-common/src/assets/chevron-down/chevron-down.component.svg","../../../../projects/relinns/angular-common/src/lib/services/common/common.service.ts","../../../../projects/relinns/angular-common/src/lib/modules/shared/accordian/accordian.component.ts","../../../../projects/relinns/angular-common/src/lib/modules/shared/accordian/accordian.component.html","../../../../projects/relinns/angular-common/src/assets/info/info.component.ts","../../../../projects/relinns/angular-common/src/assets/info/info.component.svg","../../../../projects/relinns/angular-common/src/assets/cross/cross.component.ts","../../../../projects/relinns/angular-common/src/assets/cross/cross.component.svg","../../../../projects/relinns/angular-common/src/lib/modules/shared/alerts/alert.component.ts","../../../../projects/relinns/angular-common/src/lib/modules/shared/alerts/alert.component.html","../../../../projects/relinns/angular-common/src/assets/error/error.component.ts","../../../../projects/relinns/angular-common/src/assets/error/error.component.svg","../../../../projects/relinns/angular-common/src/lib/modules/shared/alerts/variants/error-alert/error-alert.component.ts","../../../../projects/relinns/angular-common/src/lib/modules/shared/alerts/variants/error-alert/error-alert.component.html","../../../../projects/relinns/angular-common/src/lib/modules/shared/alerts/variants/info-alert/info-alert.component.ts","../../../../projects/relinns/angular-common/src/lib/modules/shared/alerts/variants/info-alert/info-alert.component.html","../../../../projects/relinns/angular-common/src/assets/warning/warning.component.ts","../../../../projects/relinns/angular-common/src/assets/warning/warning.component.svg","../../../../projects/relinns/angular-common/src/lib/modules/shared/alerts/variants/warning-alert/warning-alert.component.ts","../../../../projects/relinns/angular-common/src/lib/modules/shared/alerts/variants/warning-alert/warning-alert.component.html","../../../../projects/relinns/angular-common/src/lib/modules/shared/button/button.component.ts","../../../../projects/relinns/angular-common/src/lib/modules/shared/button/button.component.html","../../../../projects/relinns/angular-common/src/lib/modules/shared/button/variants/outlined-button/outlined-button.component.ts","../../../../projects/relinns/angular-common/src/lib/modules/shared/button/variants/outlined-button/outlined-button.component.html","../../../../projects/relinns/angular-common/src/lib/modules/shared/button/variants/primary-button/primary-button.component.ts","../../../../projects/relinns/angular-common/src/lib/modules/shared/button/variants/primary-button/primary-button.component.html","../../../../projects/relinns/angular-common/src/lib/modules/shared/button/variants/secondary-button/secondary-button.component.ts","../../../../projects/relinns/angular-common/src/lib/modules/shared/button/variants/secondary-button/secondary-button.component.html","../../../../projects/relinns/angular-common/src/lib/modules/shared/checkbox/checkbox.component.ts","../../../../projects/relinns/angular-common/src/lib/modules/shared/checkbox/checkbox.component.html","../../../../projects/relinns/angular-common/src/lib/modules/shared/check-boxes/check-boxes.component.ts","../../../../projects/relinns/angular-common/src/lib/modules/shared/check-boxes/check-boxes.component.html","../../../../projects/relinns/angular-common/src/lib/modules/shared/chip/chip.component.ts","../../../../projects/relinns/angular-common/src/lib/modules/shared/chip/chip.component.html","../../../../projects/relinns/angular-common/src/lib/modules/shared/chip/variants/error-chip/error-chip.component.ts","../../../../projects/relinns/angular-common/src/lib/modules/shared/chip/variants/error-chip/error-chip.component.html","../../../../projects/relinns/angular-common/src/lib/modules/shared/chip/variants/primary-chip/primary-chip.component.ts","../../../../projects/relinns/angular-common/src/lib/modules/shared/chip/variants/primary-chip/primary-chip.component.html","../../../../projects/relinns/angular-common/src/lib/modules/shared/chip/variants/secondary-chip/secondary-chip.component.ts","../../../../projects/relinns/angular-common/src/lib/modules/shared/chip/variants/secondary-chip/secondary-chip.component.html","../../../../projects/relinns/angular-common/src/lib/modules/shared/chip/variants/success-chip/success-chip.component.ts","../../../../projects/relinns/angular-common/src/lib/modules/shared/chip/variants/success-chip/success-chip.component.html","../../../../projects/relinns/angular-common/src/lib/modules/shared/chip/variants/warning-chip/warning-chip.component.ts","../../../../projects/relinns/angular-common/src/lib/modules/shared/chip/variants/warning-chip/warning-chip.component.html","../../../../projects/relinns/angular-common/src/lib/modules/shared/modal/modal.component.ts","../../../../projects/relinns/angular-common/src/lib/modules/shared/modal/modal.component.html","../../../../projects/relinns/angular-common/src/lib/modules/shared/dialog/dialog.component.ts","../../../../projects/relinns/angular-common/src/lib/modules/shared/dialog/dialog.component.html","../../../../projects/relinns/angular-common/src/lib/modules/shared/divider/divider.component.ts","../../../../projects/relinns/angular-common/src/lib/modules/shared/divider/divider.component.html","../../../../projects/relinns/angular-common/src/lib/modules/shared/divider/variants/dark-divider/dark-divider.component.ts","../../../../projects/relinns/angular-common/src/lib/modules/shared/divider/variants/dark-divider/dark-divider.component.html","../../../../projects/relinns/angular-common/src/lib/modules/shared/divider/variants/light-divider/light-divider.component.ts","../../../../projects/relinns/angular-common/src/lib/modules/shared/divider/variants/light-divider/light-divider.component.html","../../../../projects/relinns/angular-common/src/assets/loader/loader.component.ts","../../../../projects/relinns/angular-common/src/assets/loader/loader.component.svg","../../../../projects/relinns/angular-common/src/lib/modules/shared/full-page-loader/full-page-loader.component.ts","../../../../projects/relinns/angular-common/src/lib/modules/shared/full-page-loader/full-page-loader.component.html","../../../../projects/relinns/angular-common/src/lib/modules/shared/label/label.component.ts","../../../../projects/relinns/angular-common/src/lib/modules/shared/label/label.component.html","../../../../projects/relinns/angular-common/src/lib/modules/shared/label/variants/error-label/error-label.component.ts","../../../../projects/relinns/angular-common/src/lib/modules/shared/label/variants/error-label/error-label.component.html","../../../../projects/relinns/angular-common/src/lib/modules/shared/file-upload/file-upload.component.ts","../../../../projects/relinns/angular-common/src/lib/modules/shared/file-upload/file-upload.component.html","../../../../projects/relinns/angular-common/src/lib/modules/shared/input/input.component.ts","../../../../projects/relinns/angular-common/src/lib/modules/shared/input/input.component.html","../../../../projects/relinns/angular-common/src/lib/modules/shared/tag-input/tag-input.component.ts","../../../../projects/relinns/angular-common/src/lib/modules/shared/tag-input/tag-input.component.html","../../../../projects/relinns/angular-common/src/lib/modules/shared/context-menu/context-menu.component.ts","../../../../projects/relinns/angular-common/src/lib/modules/shared/context-menu/context-menu.component.html","../../../../projects/relinns/angular-common/src/lib/modules/shared/input/variants/labeled-input/labeled-input.component.ts","../../../../projects/relinns/angular-common/src/lib/modules/shared/input/variants/labeled-input/labeled-input.component.html","../../../../projects/relinns/angular-common/src/lib/modules/shared/input/variants/postfix-input/postfix-input.component.ts","../../../../projects/relinns/angular-common/src/lib/modules/shared/input/variants/postfix-input/postfix-input.component.html","../../../../projects/relinns/angular-common/src/lib/modules/shared/input/variants/postfix-labeled-input/postfix-labeled-input.component.ts","../../../../projects/relinns/angular-common/src/lib/modules/shared/input/variants/postfix-labeled-input/postfix-labeled-input.component.html","../../../../projects/relinns/angular-common/src/lib/modules/shared/input/variants/prefix-input/prefix-input.component.ts","../../../../projects/relinns/angular-common/src/lib/modules/shared/input/variants/prefix-input/prefix-input.component.html","../../../../projects/relinns/angular-common/src/lib/modules/shared/input/variants/prefix-labeled-input/prefix-labeled-input.component.ts","../../../../projects/relinns/angular-common/src/lib/modules/shared/input/variants/prefix-labeled-input/prefix-labeled-input.component.html","../../../../projects/relinns/angular-common/src/lib/modules/shared/input/variants/prefix-postfix-input/prefix-postfix-input.component.ts","../../../../projects/relinns/angular-common/src/lib/modules/shared/input/variants/prefix-postfix-input/prefix-postfix-input.component.html","../../../../projects/relinns/angular-common/src/lib/modules/shared/input/variants/prefix-postfix-labeled-input/prefix-postfix-labeled-input.component.ts","../../../../projects/relinns/angular-common/src/lib/modules/shared/input/variants/prefix-postfix-labeled-input/prefix-postfix-labeled-input.component.html","../../../../projects/relinns/angular-common/src/lib/modules/shared/label/variants/secondary-label/secondary-label.component.ts","../../../../projects/relinns/angular-common/src/lib/modules/shared/label/variants/secondary-label/secondary-label.component.html","../../../../projects/relinns/angular-common/src/lib/modules/shared/label/variants/success-label/success-label.component.ts","../../../../projects/relinns/angular-common/src/lib/modules/shared/label/variants/success-label/success-label.component.html","../../../../projects/relinns/angular-common/src/lib/modules/shared/link/link.component.ts","../../../../projects/relinns/angular-common/src/lib/modules/shared/link/link.component.html","../../../../projects/relinns/angular-common/src/lib/modules/shared/loader/loader.component.ts","../../../../projects/relinns/angular-common/src/lib/modules/shared/loader/loader.component.html","../../../../projects/relinns/angular-common/src/lib/modules/shared/ripple-screen-loader/ripple-screen-loader.component.ts","../../../../projects/relinns/angular-common/src/lib/modules/shared/ripple-screen-loader/ripple-screen-loader.component.html","../../../../projects/relinns/angular-common/src/lib/modules/shared/ripple-loader/ripple-loader.component.ts","../../../../projects/relinns/angular-common/src/lib/modules/shared/ripple-loader/ripple-loader.component.html","../../../../projects/relinns/angular-common/src/lib/modules/shared/toggle/toggle.component.ts","../../../../projects/relinns/angular-common/src/lib/modules/shared/toggle/toggle.component.html","../../../../projects/relinns/angular-common/src/lib/modules/shared/navbar/navbar.component.ts","../../../../projects/relinns/angular-common/src/lib/modules/shared/navbar/navbar.component.html","../../../../projects/relinns/angular-common/src/lib/modules/shared/notification/notification.component.ts","../../../../projects/relinns/angular-common/src/lib/modules/shared/notification/notification.component.html","../../../../projects/relinns/angular-common/src/lib/modules/shared/notification/variants/error-notification/error-notification.component.ts","../../../../projects/relinns/angular-common/src/lib/modules/shared/notification/variants/error-notification/error-notification.component.html","../../../../projects/relinns/angular-common/src/lib/modules/shared/notification/variants/info-notification/info-notification.component.ts","../../../../projects/relinns/angular-common/src/lib/modules/shared/notification/variants/info-notification/info-notification.component.html","../../../../projects/relinns/angular-common/src/lib/modules/shared/notification/variants/success-notification/success-notification.component.ts","../../../../projects/relinns/angular-common/src/lib/modules/shared/notification/variants/success-notification/success-notification.component.html","../../../../projects/relinns/angular-common/src/lib/modules/shared/notification/variants/warning-notification/warning-notification.component.ts","../../../../projects/relinns/angular-common/src/lib/modules/shared/notification/variants/warning-notification/warning-notification.component.html","../../../../projects/relinns/angular-common/src/lib/modules/shared/page-control/page-control.component.ts","../../../../projects/relinns/angular-common/src/lib/modules/shared/page-control/page-control.component.html","../../../../projects/relinns/angular-common/src/assets/previous-icon/previous-icon.component.ts","../../../../projects/relinns/angular-common/src/assets/previous-icon/previous-icon.component.svg","../../../../projects/relinns/angular-common/src/assets/next-icon/next-icon.component.ts","../../../../projects/relinns/angular-common/src/assets/next-icon/next-icon.component.svg","../../../../projects/relinns/angular-common/src/lib/modules/shared/pagination/pagination.component.ts","../../../../projects/relinns/angular-common/src/lib/modules/shared/pagination/pagination.component.html","../../../../projects/relinns/angular-common/src/lib/modules/shared/progress-bar/progress-bar.component.ts","../../../../projects/relinns/angular-common/src/lib/modules/shared/progress-bar/progress-bar.component.html","../../../../projects/relinns/angular-common/src/lib/modules/shared/radio-buttons/radio-buttons.component.ts","../../../../projects/relinns/angular-common/src/lib/modules/shared/radio-buttons/radio-buttons.component.html","../../../../projects/relinns/angular-common/src/lib/modules/shared/segmented-picker/segmented-picker.component.ts","../../../../projects/relinns/angular-common/src/lib/modules/shared/segmented-picker/segmented-picker.component.html","../../../../projects/relinns/angular-common/src/lib/modules/shared/select/select.component.ts","../../../../projects/relinns/angular-common/src/lib/modules/shared/select/select.component.html","../../../../projects/relinns/angular-common/src/lib/modules/shared/select/variants/legacy-select/legacy-select.component.ts","../../../../projects/relinns/angular-common/src/lib/modules/shared/select/variants/legacy-select/legacy-select.component.html","../../../../projects/relinns/angular-common/src/assets/search-icon/search-icon.component.ts","../../../../projects/relinns/angular-common/src/assets/search-icon/search-icon.component.svg","../../../../projects/relinns/angular-common/src/lib/modules/shared/select/variants/legacy-select/variants/legacy-select-with-search/legacy-select-with-search.component.ts","../../../../projects/relinns/angular-common/src/lib/modules/shared/select/variants/legacy-select/variants/legacy-select-with-search/legacy-select-with-search.component.html","../../../../projects/relinns/angular-common/src/lib/modules/shared/select/variants/select-with-search/select-with-search.component.ts","../../../../projects/relinns/angular-common/src/lib/modules/shared/select/variants/select-with-search/select-with-search.component.html","../../../../projects/relinns/angular-common/src/lib/modules/shared/tooltip/tooltip.component.ts","../../../../projects/relinns/angular-common/src/lib/modules/shared/tooltip/tooltip.component.html","../../../../projects/relinns/angular-common/src/lib/modules/shared/slider/slider.component.ts","../../../../projects/relinns/angular-common/src/lib/modules/shared/slider/slider.component.html","../../../../projects/relinns/angular-common/src/lib/modules/shared/spacer/spacer.component.ts","../../../../projects/relinns/angular-common/src/lib/modules/shared/spacer/spacer.component.html","../../../../projects/relinns/angular-common/src/lib/modules/shared/table/table.component.ts","../../../../projects/relinns/angular-common/src/lib/modules/shared/table/table.component.html","../../../../projects/relinns/angular-common/src/lib/modules/shared/text-field/text-field.component.ts","../../../../projects/relinns/angular-common/src/lib/modules/shared/text-field/text-field.component.html","../../../../projects/relinns/angular-common/src/lib/modules/shared/top-bar/top-bar.component.ts","../../../../projects/relinns/angular-common/src/lib/modules/shared/top-bar/top-bar.component.html","../../../../projects/relinns/angular-common/src/assets/label-icon/label-icon.component.ts","../../../../projects/relinns/angular-common/src/assets/label-icon/label-icon.component.svg","../../../../projects/relinns/angular-common/src/assets/home/home.component.ts","../../../../projects/relinns/angular-common/src/assets/home/home.component.svg","../../../../projects/relinns/angular-common/src/assets/tree/tree.component.ts","../../../../projects/relinns/angular-common/src/assets/tree/tree.component.svg","../../../../projects/relinns/angular-common/src/assets/inbox/inbox.component.ts","../../../../projects/relinns/angular-common/src/assets/inbox/inbox.component.svg","../../../../projects/relinns/angular-common/src/assets/analytics/analytics.component.ts","../../../../projects/relinns/angular-common/src/assets/analytics/analytics.component.svg","../../../../projects/relinns/angular-common/src/assets/team/team.component.ts","../../../../projects/relinns/angular-common/src/assets/team/team.component.svg","../../../../projects/relinns/angular-common/src/assets/subscription-card/subscription-card.component.ts","../../../../projects/relinns/angular-common/src/assets/subscription-card/subscription-card.component.svg","../../../../projects/relinns/angular-common/src/assets/notification/notification.component.ts","../../../../projects/relinns/angular-common/src/assets/notification/notification.component.svg","../../../../projects/relinns/angular-common/src/assets/code-block/code-block.component.ts","../../../../projects/relinns/angular-common/src/assets/code-block/code-block.component.svg","../../../../projects/relinns/angular-common/src/assets/copy/copy.component.ts","../../../../projects/relinns/angular-common/src/assets/copy/copy.component.svg","../../../../projects/relinns/angular-common/src/assets/export/export.component.ts","../../../../projects/relinns/angular-common/src/assets/export/export.component.svg","../../../../projects/relinns/angular-common/src/lib/modules/shared/shared.component.ts","../../../../projects/relinns/angular-common/src/lib/modules/shared/shared.component.html","../../../../projects/relinns/angular-common/src/lib/modules/app-shared.component.ts","../../../../projects/relinns/angular-common/src/lib/modules/app-shared.component.html","../../../../projects/relinns/angular-common/src/assets/logout/logout.component.ts","../../../../projects/relinns/angular-common/src/assets/logout/logout.component.svg","../../../../projects/relinns/angular-common/src/assets/more/more.component.ts","../../../../projects/relinns/angular-common/src/assets/more/more.component.svg","../../../../projects/relinns/angular-common/src/assets/profile/profile.component.ts","../../../../projects/relinns/angular-common/src/assets/profile/profile.component.svg","../../../../projects/relinns/angular-common/src/assets/setting/setting.component.ts","../../../../projects/relinns/angular-common/src/assets/setting/setting.component.svg","../../../../projects/relinns/angular-common/src/public-api.ts","../../../../projects/relinns/angular-common/src/relinns-angular-ui-kit.ts"],"sourcesContent":["import { Component, Input } from '@angular/core';\n\n@Component({\n  selector: 'asset-chevron-up',\n  standalone: true,\n  imports: [],\n  templateUrl: './chevron-up.component.svg',\n})\nexport class ChevronUpAsset {\n  @Input() height = 24;\n  @Input() width = 24;\n  @Input() fill = '#000';\n}\n","<svg id=\"expand_more_black_24dp_39_\" data-name=\"expand_more_black_24dp (39)\" xmlns=\"http://www.w3.org/2000/svg\" [attr.width]=\"width\" [attr.height]=\"height\" viewBox=\"0 0 20 20\">\n  <path id=\"Path_10679\" data-name=\"Path 10679\" d=\"M24,0H0V24H24Z\" fill=\"none\" opacity=\"0.87\"/>\n  <path id=\"Path_10680\" data-name=\"Path 10680\" d=\"M16.59,16,12,11.42,7.41,16,6,14.59l6-6,6,6Z\" transform=\"translate(0 -0.59)\"  [attr.fill]=\"fill\"/>\n</svg>\n","import { Component, Input } from '@angular/core';\n\n@Component({\n  selector: 'asset-chevron-down',\n  standalone: true,\n  imports: [],\n  templateUrl: './chevron-down.component.svg',\n})\nexport class ChevronDownAsset {\n\n  @Input() height = 24;\n  @Input() width = 24;\n  @Input() fill = '#000';\n\n}\n","<svg id=\"expand_more_black_24dp_39_\" data-name=\"expand_more_black_24dp (39)\" xmlns=\"http://www.w3.org/2000/svg\" [attr.width]=\"width\" [attr.height]=\"height\" viewBox=\"0 0 20 20\">\n  <path id=\"Path_10679\" data-name=\"Path 10679\" d=\"M24,24H0V0H24Z\" opacity=\"0.87\" fill=\"none\"/>\n  <path id=\"Path_10680\" data-name=\"Path 10680\" d=\"M16.59,8.59,12,13.17,7.41,8.59,6,10l6,6,6-6Z\" [attr.fill]=\"fill\"/>\n</svg>\n","import { DOCUMENT } from '@angular/common';\nimport { Inject, Injectable } from '@angular/core';\n\n@Injectable({\n  providedIn: 'root'\n})\nexport class CommonService {\n  constructor(@Inject(DOCUMENT) private document: Document) {\n  }\n\n  getCSSVariablesValue(variable: string) {\n    return `${this.document.body.computedStyleMap().get(variable)}`;\n  }\n\n  setCSSVariable(variable: string, value: string) {\n    this.document.documentElement.attributeStyleMap.set(variable, value);\n  }\n}\n","import { Component } from '@angular/core';\nimport { ChevronUpAsset } from '../../../../assets/chevron-up/chevron-up.component';\nimport { ChevronDownAsset } from '../../../../assets/chevron-down/chevron-down.component';\nimport { CommonModule } from '@angular/common';\nimport { CommonService } from '../../../services/common/common.service';\n\n@Component({\n  selector: 'app-accordian',\n  standalone: true,\n  imports: [ChevronUpAsset, ChevronDownAsset, CommonModule],\n  templateUrl: './accordian.component.html',\n  styleUrl: './accordian.component.scss'\n})\nexport class AccordianComponent {\n  /** Manage collapsing/uncollapsing accordian */\n  collapse = true;\n\n  /** Color of chevron icon */\n  chevronColor = '#999';\n\n  constructor(private commonService: CommonService) {\n    this.chevronColor = this.commonService.getCSSVariablesValue('--on-secondary');\n  }\n\n}\n","<div class=\"accordian-container\" [ngClass]=\"{'selected-accordian': !collapse}\">\n  <div class=\"non-collapsible-container\" (click)=\"collapse = !collapse\">\n    <div class=\"context-container\">\n      <div class=\"icon-container\">\n        <!-- Icon to show -->\n        <ng-content select=\"icon\" />\n      </div>\n      <div class=\"header-container\">\n        <!-- Heading -->\n        <div class=\"heading\"><ng-content select=\"heading\" /></div>\n        <!-- Description -->\n        <div class=\"description\"><ng-content select=\"description\" /></div>\n      </div>\n    </div>\n    <div class=\"chevron-up-container\">\n      <!-- Chevron to show open or close accordian -->\n      @if (collapse) {\n        <asset-chevron-down [fill]=\"chevronColor\" />\n      } @else {\n        <asset-chevron-up [fill]=\"chevronColor\" />\n      }\n    </div>\n  </div>\n  @if(!collapse) {\n  <div class=\"collapsible-container\">\n    <!-- Container for accordian content -->\n    <ng-content />\n  </div>\n  }\n</div>","import { Component, Input } from '@angular/core';\n\n@Component({\n  selector: 'asset-info',\n  standalone: true,\n  imports: [],\n  templateUrl: './info.component.svg',\n})\nexport class InfoAsset {\n  @Input() fill = '#000';\n  @Input() width = 24;\n  @Input() height = 24;\n}\n","<svg xmlns=\"http://www.w3.org/2000/svg\" [attr.width]=\"width\" [attr.height]=\"height\" [attr.fill]=\"fill\" class=\"bi bi-info-circle-fill\" viewBox=\"0 0 16 16\">\n  <path d=\"M8 16A8 8 0 1 0 8 0a8 8 0 0 0 0 16m.93-9.412-1 4.705c-.07.34.029.533.304.533.194 0 .487-.07.686-.246l-.088.416c-.287.346-.92.598-1.465.598-.703 0-1.002-.422-.808-1.319l.738-3.468c.064-.293.006-.399-.287-.47l-.451-.081.082-.381 2.29-.287zM8 5.5a1 1 0 1 1 0-2 1 1 0 0 1 0 2\"/>\n</svg>\n","import { Component, Input } from '@angular/core';\n\n@Component({\n  selector: 'asset-cross',\n  standalone: true,\n  imports: [],\n  templateUrl: './cross.component.svg',\n})\nexport class CrossAsset {\n  @Input() fill = '#000';\n  @Input() width = 24;\n  @Input() height = 24;\n}\n","<svg xmlns=\"http://www.w3.org/2000/svg\" [attr.width]=\"width\" [attr.height]=\"height\" viewBox=\"0 0 14 14\">\n  <path id=\"Icon_material-close\" data-name=\"Icon material-close\" d=\"M21.5,8.91,20.09,7.5,14.5,13.09,8.91,7.5,7.5,8.91l5.59,5.59L7.5,20.09,8.91,21.5l5.59-5.59,5.59,5.59,1.41-1.41L15.91,14.5Z\" transform=\"translate(-7.5 -7.5)\" [attr.fill]=\"fill\"/>\n</svg>\n","import { Component, ComponentFactoryResolver, computed, EventEmitter, Input, Output } from '@angular/core';\nimport { InfoAsset } from '../../../../assets/info/info.component';\nimport { WarningAsset } from '../../../../assets/warning/warning.component';\nimport { ErrorAsset } from '../../../../assets/error/error.component';\nimport { CommonModule } from '@angular/common';\nimport { CrossAsset } from '../../../../assets/cross/cross.component';\nimport { DynamicComponent } from '../../../models/shared/common';\n@Component({\n  selector: 'app-alert',\n  standalone: true,\n  imports: [InfoAsset, CommonModule, CrossAsset ],\n  templateUrl: './alert.component.html',\n  styleUrl: './alert.component.scss'\n})\nexport class AlertComponent {\n  /** Main icon to show in alerts */\n  @Input() icon: DynamicComponent = {\n    component: InfoAsset,\n  };\n\n  /** Icon to close alert */\n  @Input() closeIcon: DynamicComponent = {\n    component: CrossAsset,\n    inputs: {\n      height: 16,\n      width: 16,\n    }\n  };\n\n  /** Emit close event for alert */\n  @Output() close = new EventEmitter();\n\n  /**\n   * Run when user manually closes alert.\n   */ \n  closeAlert() {\n    /** \n     * This event has been emitted to clear timer or any such method if user has manually closed alert.\n     */\n    this.close.emit(true);\n  }\n}\n","<div class=\"alerts-container\">\n  <!-- Alert main icon -->\n  <div class=\"alert-icon\">\n    <ng-container *ngComponentOutlet=\"icon.component; inputs: icon.inputs\"></ng-container>\n  </div>\n  <!-- Any message or content to show in alert -->\n  <ng-content />\n  <!-- Show close buttons for specific alerts -->\n  <div class=\"close-icon\" (click)=\"closeAlert()\">\n    <ng-container *ngComponentOutlet=\"closeIcon.component; inputs: closeIcon.inputs\"></ng-container>\n  </div>\n</div>","import { Component, Input } from '@angular/core';\n\n@Component({\n  selector: 'asset-error',\n  standalone: true,\n  imports: [],\n  templateUrl: './error.component.svg',\n})\nexport class ErrorAsset {\n  @Input() fill = '#000';\n  @Input() height = 24;\n  @Input() width = 24;\n}\n","<svg xmlns=\"http://www.w3.org/2000/svg\" [attr.width]=\"width\" [attr.height]=\"height\" viewBox=\"0 0 24 24\">\n  <g id=\"Group_46376\" data-name=\"Group 46376\" transform=\"translate(-1320 -286)\">\n    <rect id=\"Rectangle_6941\" data-name=\"Rectangle 6941\" [attr.width]=\"width\" [attr.height]=\"height\" transform=\"translate(1320 286)\" fill=\"none\"/>\n    <path id=\"warning_black_24dp\" d=\"M4.988,25.4H23.949a2.517,2.517,0,0,0,2.178-3.777l-9.48-16.38a2.517,2.517,0,0,0-4.356,0L2.81,21.628A2.517,2.517,0,0,0,4.988,25.4Zm9.48-8.813a1.263,1.263,0,0,1-1.259-1.259V12.815a1.259,1.259,0,0,1,2.518,0v2.518A1.263,1.263,0,0,1,14.469,16.592Zm1.259,5.036H13.21V19.11h2.518Z\" transform=\"translate(1317.531 283.301)\" [attr.fill]=\"fill\"/>\n  </g>\n</svg>\n","import { Component, EventEmitter, Output } from '@angular/core';\nimport { CrossAsset } from '../../../../../../assets/cross/cross.component';\nimport { ErrorAsset } from '../../../../../../assets/error/error.component';\nimport { AlertComponent } from '../../alert.component';\nimport { DynamicComponent } from '../../../../../models/shared/common';\nimport { CommonService } from '../../../../../services/common/common.service';\n\n@Component({\n  selector: 'app-error-alert',\n  standalone: true,\n  imports: [CrossAsset, ErrorAsset, AlertComponent],\n  templateUrl: './error-alert.component.html',\n  styleUrl: './error-alert.component.scss',\n})\nexport class ErrorAlertComponent extends AlertComponent {\n  /** Overriding alert main icon */\n  override icon: DynamicComponent = {\n    component: ErrorAsset,\n  };\n\n  constructor(private commonService: CommonService) {\n    /** Calling parent constructor to initialize properties and method of parent class */\n    super();\n\n    /** Updating main icon color according to CSS variable set in :root */\n    this.icon = {\n      ...this.icon,\n      inputs: {\n        ...this.icon.inputs,\n        fill: this.commonService.getCSSVariablesValue('--on-error'),\n      }\n    };\n\n    /** Updating close icon color according to CSS variable set in :root */\n    this.closeIcon = {\n      ...this.closeIcon,\n      inputs: {\n        ...this.icon.inputs,\n        fill: this.commonService.getCSSVariablesValue('--on-error'),\n        width: 16,\n        height: 16,\n      }\n    };\n  }\n}\n","<div class=\"error-alert-container\">\n  <!-- Customizing base alert to error alert -->\n  <app-alert [icon]=\"icon\" [closeIcon]=\"closeIcon\" (close)=\"closeAlert()\">\n    <ng-content />\n  </app-alert>\n</div>","import { Component, EventEmitter, Input, Output } from '@angular/core';\nimport { CrossAsset } from '../../../../../../assets/cross/cross.component';\nimport { InfoAsset } from '../../../../../../assets/info/info.component';\nimport { AlertComponent } from \"../../alert.component\";\nimport { DynamicComponent } from '../../../../../models/shared/common';\nimport { CommonService } from '../../../../../services/common/common.service';\n\n@Component({\n  selector: 'app-info-alert',\n  standalone: true,\n  imports: [CrossAsset, InfoAsset, AlertComponent],\n  templateUrl: './info-alert.component.html',\n  styleUrl: './info-alert.component.scss'\n})\nexport class InfoAlertComponent extends AlertComponent {\n  /** Overriding main icon of alert */\n  override icon: DynamicComponent = {\n    component: InfoAsset,\n  };\n\n  constructor(private commonService: CommonService) {\n    /** Calling parent constructor to initialize properties and methods of parent class */\n    super();\n\n    /** Changing color of main icon of alert */\n    this.icon = {\n      ...this.icon,\n      inputs: {\n        ...this.icon.inputs,\n        fill: this.commonService.getCSSVariablesValue('--on-primary'),\n      }\n    };\n\n    /** Changing color of close icon of alert */\n    this.closeIcon = {\n      ...this.closeIcon,\n      inputs: {\n        ...this.icon.inputs,\n        fill: this.commonService.getCSSVariablesValue('--on-primary'),\n        width: 16,\n        height: 16,\n      }\n    };\n  }\n}\n","<div class=\"info-alert-container\">\n  <!-- Customizing base alert to info alert -->\n  <app-alert [icon]=\"icon\" [closeIcon]=\"closeIcon\" (close)=\"closeAlert()\">\n    <ng-content />\n  </app-alert>\n</div>","import { Component, Input } from '@angular/core';\n\n@Component({\n  selector: 'asset-warning',\n  standalone: true,\n  imports: [],\n  templateUrl: './warning.component.svg',\n})\nexport class WarningAsset {\n  @Input() fill = '#000';\n  @Input() height = 24;\n  @Input() width = 24;\n  @Input() background = '#fff';\n}\n","<svg xmlns=\"http://www.w3.org/2000/svg\" [attr.width]=\"width\" [attr.height]=\"height\" viewBox=\"0 0 24 24\">\n  <g id=\"Group_46103\" data-name=\"Group 46103\" transform=\"translate(-1652 -504)\">\n    <rect id=\"Rectangle_6869\" data-name=\"Rectangle 6869\" [attr.width]=\"width\" [attr.height]=\"height\" transform=\"translate(1652 504)\" [attr.fill]=\"background\" opacity=\"0\"/>\n    <path id=\"warning_black_24dp\" d=\"M4.988,25.406H23.949a2.517,2.517,0,0,0,2.178-3.777l-9.48-16.38a2.517,2.517,0,0,0-4.356,0L2.81,21.628A2.517,2.517,0,0,0,4.988,25.406Zm9.48-8.813a1.263,1.263,0,0,1-1.259-1.259V12.815a1.259,1.259,0,1,1,2.518,0v2.518A1.263,1.263,0,0,1,14.469,16.592Zm1.259,5.036H13.21V19.11h2.518Z\" transform=\"translate(1649.532 501.301)\" [attr.fill]=\"fill\"/>\n  </g>\n</svg>\n","import { Component, EventEmitter, Input, Output } from '@angular/core';\nimport { CrossAsset } from '../../../../../../assets/cross/cross.component';\nimport { WarningAsset } from '../../../../../../assets/warning/warning.component';\nimport { AlertComponent } from '../../alert.component';\nimport { DynamicComponent } from '../../../../../models/shared/common';\nimport { CommonService } from '../../../../../services/common/common.service';\n\n@Component({\n  selector: 'app-warning-alert',\n  standalone: true,\n  imports: [CrossAsset, WarningAsset, AlertComponent],\n  templateUrl: './warning-alert.component.html',\n  styleUrl: './warning-alert.component.scss'\n})\nexport class WarningAlertComponent extends AlertComponent {\n  /** Overriding main icon to show in alerts */\n  override icon: DynamicComponent = {\n    component: WarningAsset,\n  };\n\n  constructor(private commonService: CommonService) {\n    /** Calling parent's constructor to initialize properties and methods of parent class */\n    super();\n\n    /** Setting main icon color according to CSS variable in :root */\n    this.icon = {\n      ...this.icon,\n      inputs: {\n        ...this.icon.inputs,\n        fill: this.commonService.getCSSVariablesValue('--on-warning'),\n      }\n    };\n\n    /** Setting close icon color according to CSS variable in :root */\n    this.closeIcon = {\n      ...this.closeIcon,\n      inputs: {\n        ...this.icon.inputs,\n        fill: this.commonService.getCSSVariablesValue('--on-warning'),\n        width: 16,\n        height: 16,\n      }\n    };\n  }\n}\n","<div class=\"warning-alert-container\">\n  <!-- Customizing base alert to warning alert -->\n  <app-alert [icon]=\"icon\" [closeIcon]=\"closeIcon\" (close)=\"closeAlert()\">\n    <ng-content />\n  </app-alert>\n</div>","import { CommonModule } from '@angular/common';\nimport { Component, Input, EventEmitter, Output } from '@angular/core';\n\n@Component({\n  selector: 'app-button',\n  standalone: true,\n  imports: [CommonModule],\n  templateUrl: './button.component.html',\n  styleUrl: './button.component.scss'\n})\nexport class ButtonComponent {\n  /** Disabling or enabling a button to perform interactions */\n  @Input() disabled = false;\n\n  /** Emitting click event on button */\n  @Output() press = new EventEmitter();\n\n  /** Handling button click */\n  pressButton(event: Event) {\n    if (!this.disabled) {\n      this.press.emit(event);\n    }\n  }\n\n}\n","<div class=\"button-container\" (click)=\"pressButton($event)\">\n  <button class=\"button-styling\" [disabled]=\"disabled\">\n    <ng-content></ng-content>\n  </button>\n</div>","import { Component } from '@angular/core';\nimport { ButtonComponent } from \"../../button.component\";\n\n@Component({\n  selector: 'app-outlined-button',\n  standalone: true,\n  imports: [ButtonComponent],\n  templateUrl: './outlined-button.component.html',\n  styleUrl: './outlined-button.component.scss'\n})\nexport class OutlinedButtonComponent extends ButtonComponent {\n\n}\n","<div class=\"outlined-button-container\" (click)=\"pressButton($event)\">\n  <app-button [disabled]=\"disabled\" >\n    <ng-content />\n  </app-button>\n</div>","import { Component } from '@angular/core';\nimport { ButtonComponent } from '../../button.component';\n\n@Component({\n  selector: 'app-primary-button',\n  standalone: true,\n  imports: [ButtonComponent],\n  templateUrl: './primary-button.component.html',\n  styleUrl: './primary-button.component.scss'\n})\nexport class PrimaryButtonComponent extends ButtonComponent {\n\n}\n","<div class=\"primary-button-container\" (click)=\"pressButton($event)\">\n  <app-button [disabled]=\"disabled\">\n    <ng-content />\n  </app-button>\n</div>","import { Component } from '@angular/core';\nimport { ButtonComponent } from \"../../button.component\";\n\n@Component({\n  selector: 'app-secondary-button',\n  standalone: true,\n  imports: [ButtonComponent],\n  templateUrl: './secondary-button.component.html',\n  styleUrl: './secondary-button.component.scss'\n})\nexport class SecondaryButtonComponent extends ButtonComponent {\n\n}\n","<div class=\"secondary-button-container\" (click)=\"pressButton($event)\">\n  <app-button [disabled]=\"disabled\" >\n    <ng-content />\n  </app-button>\n</div>","import { Component, ElementRef, EventEmitter, Input, Output, ViewChild, SimpleChanges } from '@angular/core';\nimport { CheckboxType } from '../../../models/shared/check-box';\n\n@Component({\n  selector: 'app-checkbox',\n  standalone: true,\n  imports: [],\n  templateUrl: './checkbox.component.html',\n  styleUrl: './checkbox.component.scss'\n})\nexport class CheckboxComponent {\n  /** Title of checkbox */\n  @Input() title = '';\n\n  /** Disabling checkbox */\n  @Input() disabled = false;\n\n  /** Checkbox value */\n  @Input() value: CheckboxType | string | object | boolean = 'not-checked';\n\n  /** Making checkbox indeterminate  */\n  @Input() indeterminate = false;\n\n  /** Reference to checkbox */\n  @ViewChild('checkbox') checkbox: ElementRef<Input> | null = null;\n\n  /** Whether checkbox checked or not */\n  checked = false;\n\n  /** Emitting change of checkbox */\n  @Output() valueChange = new EventEmitter();\n\n  ngOnInit() {\n    if (this.value === 'checked') {\n      this.checked = true;\n    } else if (this.value === 'indeterminate') {\n      this.indeterminate = true;\n    } else {\n      this.checked = false;\n      this.indeterminate = false;\n    }\n\n  }\n\n  ngAfterViewInit() {\n    this.updateIntermidate();\n  }\n\n  /** Updates input to indeterminate or not */\n  updateIntermidate() {\n    this.checkbox?.nativeElement && ((this.checkbox.nativeElement as { indeterminate: boolean }).indeterminate = this.indeterminate);\n  }\n\n  /** Implementing logic to handle values of checkbox component to input element */\n  ngOnChanges(change: SimpleChanges) {\n    if (change && change['value'] && change['value'].currentValue === 'indeterminate') {\n      this.indeterminate = true;\n      this.updateIntermidate()\n    } else if (change && change['value'] && change['value'].currentValue === 'checked') {\n      this.checked = true;\n      this.indeterminate = false;\n      this.updateIntermidate();\n    } else {\n      this.checked = false;\n      this.indeterminate = false;\n      this.updateIntermidate();\n    }\n  }\n  \n  /** Handling value change of checkbox */\n  changedValue ( event: Event ) {\n    let value = '';\n    if ((event.target as any)?.checked) {\n      value = 'checked';\n    } else {\n      value = 'not-checked'\n    }\n    this.valueChange.emit({ title: this.title, disabled: this.disabled, value});\n  }\n}\n","<div class=\"checkbox-container\">\n  <input class=\"checkbox\" type=\"checkbox\" [id]=\"title\" [name]=\"title\" \n    [disabled]=\"disabled\" [checked]=\"checked\" (click)=\"changedValue($event)\" \n    #checkbox>\n  <label [for]=\"title\">{{title}}</label><br>\n</div>","import { Component, ElementRef, EventEmitter, Input, Output, ViewChild } from '@angular/core';\nimport { Option } from '../../../models/shared/check-box';\nimport { CheckboxComponent } from '../checkbox/checkbox.component';\n\n@Component({\n  selector: 'app-check-boxes',\n  standalone: true,\n  imports: [CheckboxComponent],\n  templateUrl: './check-boxes.component.html',\n  styleUrl: './check-boxes.component.scss'\n})\nexport class CheckBoxesComponent {\n\n  /** Label of group of checkboxes */\n  // @Input() labelText = 'Please choose atleast one';\n\n  /** Each checkbox to be part of group */\n  @Input() optionList: Option[] = [];\n\n  /** Emitting click event on any checkbox of group */\n  @Output() clickEvent = new EventEmitter();\n\n  /** List of selected checkboxes of group */\n  selectedOptionsList: Option[] = [];\n\n  /** Handle selection of option in  */\n  selectedOption(event: Option, option: Option) {\n    this.optionList.forEach(listedOption => {\n      if (listedOption.title === option.title) {\n        listedOption.value = event.value;\n      }\n    });\n    this.clickEvent.emit([...this.selectedOptionsList]);\n  }\n}\n","<div class=\"checkbox-group-container\">\n  <!-- Label of dropdown -->\n  <!-- <p class=\"label\">{{labelText}}</p> -->\n  <div class=\"checkbox-group\">\n    @for (option of optionList; track option.title) {\n      <app-checkbox [title]=\"option.title\" [value]=\"option.value\" \n        (valueChange)=\"selectedOption($event, option)\" [disabled]=\"option.disabled\" />\n    }\n  </div>\n</div>","import { CommonModule } from '@angular/common';\nimport { Component, Input } from '@angular/core';\nimport { ChipTypes } from '../../../models/shared/chip';\n\n@Component({\n  selector: 'app-chip',\n  standalone: true,\n  imports: [CommonModule],\n  templateUrl: './chip.component.html',\n  styleUrl: './chip.component.scss'\n})\nexport class ChipComponent {\n  /** Type of Chips provided */\n}\n","<div class=\"chip-container\">\n  <!-- Any content to show in chip -->\n  <ng-content />\n</div>","import { Component } from '@angular/core';\nimport { ChipComponent } from \"../../chip.component\";\n\n@Component({\n  selector: 'app-error-chip',\n  standalone: true,\n  imports: [ChipComponent],\n  templateUrl: './error-chip.component.html',\n  styleUrl: './error-chip.component.scss'\n})\nexport class ErrorChipComponent extends ChipComponent {\n\n}\n","<div class=\"error-chip-container\">\n  <app-chip>\n    <ng-content />\n  </app-chip>\n</div>","import { Component } from '@angular/core';\nimport { ChipComponent } from '../../chip.component';\n\n@Component({\n  selector: 'app-primary-chip',\n  standalone: true,\n  imports: [ChipComponent],\n  templateUrl: './primary-chip.component.html',\n  styleUrl: './primary-chip.component.scss'\n})\nexport class PrimaryChipComponent extends ChipComponent {\n\n}\n","<div class=\"primary-chip-container\">\n  <app-chip>\n    <ng-content />\n  </app-chip>\n</div>","import { Component } from '@angular/core';\nimport { ChipComponent } from \"../../chip.component\";\n\n@Component({\n  selector: 'app-secondary-chip',\n  standalone: true,\n  imports: [ChipComponent],\n  templateUrl: './secondary-chip.component.html',\n  styleUrl: './secondary-chip.component.scss'\n})\nexport class SecondaryChipComponent extends ChipComponent {\n\n}\n","<div class=\"secondary-chip-container\">\n  <app-chip>\n    <ng-content />\n  </app-chip>\n</div>","import { Component } from '@angular/core';\nimport { ChipComponent } from \"../../chip.component\";\n\n@Component({\n  selector: 'app-success-chip',\n  standalone: true,\n  imports: [ChipComponent],\n  templateUrl: './success-chip.component.html',\n  styleUrl: './success-chip.component.scss'\n})\nexport class SuccessChipComponent extends ChipComponent {\n\n}\n","<div class=\"success-chip-container\">\n  <app-chip>\n    <ng-content/>\n  </app-chip>\n</div>","import { Component } from '@angular/core';\nimport { ChipComponent } from '../../chip.component';\n\n@Component({\n  selector: 'app-warning-chip',\n  standalone: true,\n  imports: [ChipComponent],\n  templateUrl: './warning-chip.component.html',\n  styleUrl: './warning-chip.component.scss'\n})\nexport class WarningChipComponent extends ChipComponent {\n\n}\n","<div class=\"warning-chip-container\">\n  <app-chip>\n    <ng-content />\n  </app-chip>\n</div>","import { CommonModule } from '@angular/common';\nimport { Component, ElementRef, EventEmitter, Input, Output, ViewChild } from '@angular/core';\nimport { CrossAsset } from '../../../../assets/cross/cross.component';\n\n@Component({\n  selector: 'app-modal',\n  standalone: true,\n  imports: [CommonModule, CrossAsset],\n  templateUrl: './modal.component.html',\n  styleUrl: './modal.component.scss'\n})\nexport class ModalComponent {\n  /** Managing modal close/open state */\n  closeModal = false;\n\n  /** Emitter to propagate parent about close event of modal */\n  @Output() close = new EventEmitter();\n\n  /** Reference to modal element */\n  @ViewChild('modal') modal: ElementRef | null = null;\n\n  /** Modal width to be shown */\n  @Input() modalWidth = '40%';\n\n  @Input() modalContent = true;\n\n\n  private handleClick = (event: MouseEvent) => {\n    const target = event.target as HTMLElement;\n\n    const isDatepickerElement = \n      target.closest('.mat-datepicker-content') ||\n      target.closest('.mat-calendar') ||\n      target.closest('.mat-calendar-body') ||\n      target.closest('.cdk-overlay-container') ||\n      target.closest('.mat-datepicker-popup');\n\n    // Check if click is from CKEditor UI elements\n    const isCKEditorElement = target.closest('.ck-editor__editable') ||\n      target.closest('.ck-toolbar') ||\n      target.closest('.ck-balloon-panel') ||\n      target.closest('.ck-dialog') ||\n      target.closest('.ck-link-form') ||\n      target.closest('.ck-dropdown');\n\n    // Don't close modal if click is within modal or CKEditor elements\n    if (this.modal?.nativeElement.contains(target) || \n        isDatepickerElement || \n        isCKEditorElement) {\n      return;\n    }\n\n    this.hideModal();\n  }\n\n  ngOnInit() {\n    document.addEventListener('click', this.handleClick);\n  }\n\n  ngOnDestroy() {\n    document.removeEventListener('click', this.handleClick);\n  }\n\n  // ngOnInit() {\n  //   document.addEventListener('click', (event) => {\n  //     if (!this.modal?.nativeElement.contains(event.target)) {\n  //       this.hideModal();\n  //     }\n  //   });\n  // }\n\n  /** Handling modal close event */\n  hideModal() {\n    this.closeModal = true;\n    this.close.emit(this.closeModal);\n  }\n\n  ngAfterViewInit() {\n    /** Set modal width according to provided input */\n    this.modal?.nativeElement.setAttribute('style', `width: ${this.modalWidth}`);\n  }\n}\n","<div class=\"modal-container\" [ngClass]=\"{'hide-modal': closeModal}\">\n  <div class=\"modal\" #modal>\n    <span class=\"cross-icon\" (click)=\"hideModal()\">\n      <asset-cross fill=\"#fff\" [width]=\"14\" [height]=\"14\" />\n    </span>\n    <div class=\"modal-header\">\n      <!-- Custom icon for modal header -->\n      <ng-content select=\"modal-icon\" />\n      <!-- Custom title for modal -->\n      <ng-content select=\"modal-title\" />\n      <!-- Custom description for modal -->\n      <ng-content select=\"modal-description\" />\n      \n    </div>\n    <ng-content select=\"h-divider\"></ng-content>\n    <!-- Content of the modal comes here -->\n    @if (modalContent) {\n      <div class=\"modal-content\">\n        <ng-content />\n      </div>\n    }\n    <ng-content select=\"f-divider\"></ng-content>\n\n    <!-- Custom actions/buttons to be added in modal -->\n    <div class=\"modal-footer\">\n      <ng-content select=\"modal-actions\" />\n    </div>\n\n  </div>\n</div>","import { Component, CUSTOM_ELEMENTS_SCHEMA, EventEmitter, Input, Output, TemplateRef} from '@angular/core';\nimport { ModalComponent } from '../modal/modal.component';\nimport { CommonModule } from '@angular/common';\nimport { PrimaryButtonComponent } from '../button/variants/primary-button/primary-button.component';\nimport { SecondaryButtonComponent } from '../button/variants/secondary-button/secondary-button.component';\n@Component({\n  selector: 'app-dialog',\n  standalone: true,\n  imports: [ModalComponent, PrimaryButtonComponent, SecondaryButtonComponent, CommonModule],\n  schemas: [CUSTOM_ELEMENTS_SCHEMA],\n  templateUrl: './dialog.component.html',\n  styleUrl: './dialog.component.scss'\n})\nexport class DialogComponent {\n\n  /** Emitter to emit event of closing modal */\n  @Output() close = new EventEmitter();\n\n  /** Icon url to be used in dialog box */\n  @Input() iconUrl: string | undefined = '';\n\n  /** Title of dialog box */\n  @Input() title: string | undefined = '';\n\n  /** Description of dialog box */\n  @Input() description: string | undefined = '';\n\n  /** Negative action lambda reference */\n  @Input() negativeAction: null | Function | undefined = null;\n\n  /** Negative action lambda reference */\n  @Input() positiveAction: null | Function | undefined = null;\n\n  /** Negative button text */\n  @Input() negativeButtonText: string | undefined = 'Cancel';\n\n  /** Positive button text */\n  @Input() positiveButtonText: string | undefined = 'Submit';\n\n  /** This is to take reference of template so that we render dynamic component here */ \n  @Input() contentTemplate?: TemplateRef<any>;\n\n  /** Handling close event of modal */\n  closeDialog(event: boolean) {\n    this.close.emit(event);\n  }\n\n  /** Method for negative action */\n  negativeClick(event: Event) {\n    if (this.negativeAction && typeof(this.negativeAction) === 'function') {\n      this.negativeAction(event);\n    }\n  }\n\n  /** Method for positive action */\n  positiveClick(event: Event) {\n    if (this.positiveAction && typeof(this.positiveAction) === 'function') {\n      this.positiveAction(event);\n    }\n  }\n}\n","<div class=\"dialog-container\">\n  <app-modal class=\"modal\" [modalContent]=\"!!contentTemplate\" (close)=\"closeDialog($event)\" modalWidth=\"30%\">\n    @if (iconUrl) {\n    <modal-icon>\n      <!-- Icon of dialog box -->\n      <div class=\"icon-container\">\n        <div class=\"icon\">\n          <img [src]=\"iconUrl\" alt=\"icon\" />\n        </div>\n      </div>\n    </modal-icon>\n    }\n    @if (title) {\n      <modal-title>\n        <!-- Title of dialog box -->\n        <h2 class=\"title\" [ngClass]=\"{'p-regular': !description}\">\n          {{title}}\n        </h2>\n      </modal-title>\n    }\n    @if (description) {\n      <modal-description>\n        <!-- Description of dialog box -->\n        <p class=\"description\">\n          {{description}}\n        </p>\n      </modal-description>\n    }\n\n    @if (contentTemplate) {\n      <modal-content>\n        <ng-container [ngTemplateOutlet]=\"contentTemplate\"></ng-container>\n      </modal-content>\n    }\n    \n    @if (positiveAction || negativeAction) {\n      <modal-actions>\n        <!-- Actions/buttons to show on dialog box -->\n        <div class=\"actions-container\">\n          @if (negativeAction) {\n            <div class=\"action-btn\">\n              <app-secondary-button (click)=\"negativeClick($event)\">{{negativeButtonText}}</app-secondary-button>\n            </div>\n          }\n          @if (positiveAction) {\n            <div class=\"action-btn\">\n              <app-primary-button (click)=\"positiveClick($event)\">{{positiveButtonText}}</app-primary-button>\n            </div>\n          }\n        </div>\n      </modal-actions>\n    }\n  </app-modal>\n</div>","import { CommonModule } from '@angular/common';\nimport { Component, Input } from '@angular/core';\n\n@Component({\n  selector: 'app-divider',\n  standalone: true,\n  imports: [CommonModule],\n  templateUrl: './divider.component.html',\n  styleUrl: './divider.component.scss'\n})\nexport class DividerComponent {\n\n}\n","<div class=\"divider-container\">\n  <hr/>\n</div>\n","import { Component } from '@angular/core';\n\n@Component({\n  selector: 'app-dark-divider',\n  standalone: true,\n  imports: [],\n  templateUrl: './dark-divider.component.html',\n  styleUrl: './dark-divider.component.scss'\n})\nexport class DarkDividerComponent {\n\n}\n","<div class=\"dark-divider-container\">\n  <hr/>\n</div>","import { Component } from '@angular/core';\nimport { DividerComponent } from '../../divider.component';\n\n@Component({\n  selector: 'app-light-divider',\n  standalone: true,\n  imports: [DividerComponent],\n  templateUrl: './light-divider.component.html',\n  styleUrl: './light-divider.component.scss'\n})\nexport class LightDividerComponent {\n\n}\n","<div class=\"light-divider-container\">\n  <hr/>\n</div>","import { Component, Input } from '@angular/core';\n\n@Component({\n  selector: 'asset-loader',\n  standalone: true,\n  imports: [],\n  templateUrl: './loader.component.svg',\n})\nexport class LoaderAsset {\n  @Input() height = 100;\n  @Input() width = 100;\n  @Input() fill = '#216cf4';\n}\n","<svg version=\"1.1\" id=\"L9\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" x=\"0px\" y=\"0px\"\n  viewBox=\"0 0 100 100\" enable-background=\"new 0 0 0 0\" xml:space=\"preserve\" [attr.height]=\"height\" [attr.width]=\"width\">\n    <path [attr.fill]=\"fill\" d=\"M73,50c0-12.7-10.3-23-23-23S27,37.3,27,50 M30.9,50c0-10.5,8.5-19.1,19.1-19.1S69.1,39.5,69.1,50\">\n      <animateTransform \n         attributeName=\"transform\" \n         attributeType=\"XML\" \n         type=\"rotate\"\n         dur=\"1s\" \n         from=\"0 50 50\"\n         to=\"360 50 50\" \n         repeatCount=\"indefinite\" />\n  </path>\n</svg>\n","import { Component } from '@angular/core';\nimport { LoaderAsset } from '../../../../assets/loader/loader.component';\n\n@Component({\n  selector: 'app-full-page-loader',\n  standalone: true,\n  imports: [LoaderAsset],\n  templateUrl: './full-page-loader.component.html',\n  styleUrl: './full-page-loader.component.scss'\n})\nexport class FullPageLoaderComponent {\n\n}\n","<div class=\"full-page-loader-container\">\n  <asset-loader />\n</div>","import { CommonModule } from '@angular/common';\nimport { Component, Input } from '@angular/core';\nimport { LabelTypes } from '../../../models/shared/label';\n\n@Component({\n  selector: 'app-label',\n  standalone: true,\n  imports: [CommonModule],\n  templateUrl: './label.component.html',\n  styleUrl: './label.component.scss'\n})\nexport class LabelComponent {\n\n}\n","<div class=\"label-container\">\n  <!-- Custom content to show in label -->\n  <ng-content/>\n</div>","import { Component } from '@angular/core';\nimport { LabelComponent } from \"../../label.component\";\n\n@Component({\n  selector: 'app-error-label',\n  standalone: true,\n  imports: [LabelComponent],\n  templateUrl: './error-label.component.html',\n  styleUrl: './error-label.component.scss'\n})\nexport class ErrorLabelComponent extends LabelComponent {\n\n}\n","<div class=\"error-label-container\">\n  <app-label>\n    <ng-content />\n  </app-label> \n</div>","import { Component, Output, EventEmitter, Input } from '@angular/core';\nimport { PrimaryButtonComponent } from '../button/variants/primary-button/primary-button.component';\nimport { ErrorLabelComponent } from '../label/variants/error-label/error-label.component';\nimport { InfoAlertComponent } from '../alerts/variants/info-alert/info-alert.component';\nimport { CrossAsset } from '../../../../assets/cross/cross.component';\n\n@Component({\n  selector: 'app-file-upload',\n  standalone: true,\n  imports: [PrimaryButtonComponent, ErrorLabelComponent, InfoAlertComponent, CrossAsset],\n  templateUrl: './file-upload.component.html',\n  styleUrl: './file-upload.component.scss'\n})\nexport class FileUploadComponent {\n  \n  // Maximum Numbers of files allowed \n  @Input() maxFiles: number = 10;\n\n  // Maximum file size allowed\n  @Input() allowMultiple: boolean = true;\n\n  // Types of file allowed eg: pdf, doc etc\n  @Input() acceptedTypes: string = '*';\n\n  // Maximum Number of files allowed\n  @Input() maxFileSize: number = 5 * 1024 * 1024; // 5MB default\n\n  // Emits when files array changes\n  @Output() filesChanged = new EventEmitter<File[]>();\n\n  // Emits when file is removed \n  @Output() fileRemoved = new EventEmitter<File>();\n\n  // Emites when there was any error\n  @Output() error = new EventEmitter<string>();\n\n  // Stores the selected files\n  files: File[] = [];\n\n  // Track drag state \n  isDragging = false;\n\n  // Store current error message \n  errorMessage = '';\n\n  // Validates file type against accepted types\n  private isValidFileType(file: File): boolean {\n    if (this.acceptedTypes === '*') return true;\n    \n    // Convert acceptedTypes string to array of valid extensions/mime types\n    const acceptedTypesArray = this.acceptedTypes.split(',').map(type => type.trim().toLowerCase());\n    \n    // Get file extension\n    const fileExtension = file.name.split('.').pop()?.toLowerCase() || '';\n\n    // Get file mime type\n    const fileMimeType = file.type.toLowerCase();\n    \n    return acceptedTypesArray.some(type => {\n      // Remove dot if present in accepted type\n      const cleanType = type.startsWith('.') ? type.substring(1) : type;\n      \n      // Check if type matches either extension or mime type\n      return fileExtension === cleanType || \n             fileMimeType === type ||\n             // Handle mime type wildcards (e.g., 'image/*')\n             (type.endsWith('/*') && fileMimeType.startsWith(type.slice(0, -2)));\n    });\n  }\n\n  // Handles when files are dragged over the drop zone\n  onDragOver(event: DragEvent): void {\n    event.preventDefault();\n    event.stopPropagation();\n    this.isDragging = true;\n  }\n\n  // Handles when files are dragged out of the drop zone\n  onDragLeave(event: DragEvent): void {\n    event.preventDefault();\n    event.stopPropagation();\n    this.isDragging = false;\n  }\n\n  // Handles when files are dropped in the drop zone\n  onDrop(event: DragEvent): void {\n    event.preventDefault();\n    event.stopPropagation();\n    this.isDragging = false;\n    \n    const files = event.dataTransfer?.files;\n    if (files) {\n      this.handleFiles(Array.from(files));\n    }\n  }\n\n  // Handles file selection from the file input element\n  onFileSelect(event: Event): void {\n    const input = event.target as HTMLInputElement;\n    if (input.files) {\n      this.handleFiles(Array.from(input.files));\n    }\n  }\n\n  // Main function to process and validate files\n  handleFiles(newFiles: File[]): void {\n    this.clearError();\n\n    // Check if adding new files would exceed maxFiles limit\n    if (this.files.length + newFiles.length > this.maxFiles) {\n      this.showErrorMessage(`Maximum ${this.maxFiles} files allowed`);\n      return;\n    }\n\n    // Filter files based on size and type\n    const validFiles = newFiles.filter(file => {\n      // Check file size\n      if (file.size > this.maxFileSize) {\n        this.showErrorMessage(`File ${file.name} exceeds ${this.maxFileSize / 1024 / 1024}MB limit`);\n        return false;\n      }\n      \n      // Check file type\n      if (!this.isValidFileType(file)) {\n        this.showErrorMessage(`File ${file.name} type is not allowed. Accepted types: ${this.acceptedTypes}`);\n        return false;\n      }\n      \n      return true;\n    });\n\n    // Add valid files to the existing files array\n    this.files = [...this.files, ...validFiles];\n    // Emit event with updated files array\n    this.filesChanged.emit(this.files);\n  }\n\n  showErrorMessage(message: string): void {\n    this.errorMessage = message;\n    this.error.emit(this.errorMessage);\n\n    // Set a timeout to clear the error message after 5 seconds\n    setTimeout(() => {\n      this.clearError();\n    }, 5000);\n  }\n\n  clearError(): void {\n    this.errorMessage = '';\n    this.error.emit(this.errorMessage);\n  }\n\n  // Removes a specific file from the files array\n  removeFile(file: File): void {\n    this.files = this.files.filter(f => f !== file);\n    this.fileRemoved.emit(file);\n    this.filesChanged.emit(this.files);\n  }\n\n  // Converts file size to human-readable format\n  getFileSize(size: number): string {\n    if (size < 1024) return `${size} B`;\n    if (size < 1024 * 1024) return `${(size / 1024).toFixed(1)} KB`;\n    return `${(size / (1024 * 1024)).toFixed(1)} MB`;\n  }\n}","<div class=\"upload-container\"\n     [class.dragover]=\"isDragging\"\n     (dragover)=\"onDragOver($event)\"\n     (dragleave)=\"onDragLeave($event)\"\n     (drop)=\"onDrop($event)\">\n  \n  <label for=\"file\">\n    <input\n    #fileInput\n    id=\"file\"\n    type=\"file\"\n    [multiple]=\"allowMultiple\"\n    [accept]=\"acceptedTypes\"\n    (change)=\"onFileSelect($event)\"\n    class=\"file-input\">\n  \n  <div class=\"upload-content\">\n    <h3>Upload Files</h3>\n    <p>You can upload maximum {{maxFiles}} files</p>\n    <div class=\"upload-btn\">\n      <app-primary-button (click)=\"fileInput.click()\">\n        Browse Files\n      </app-primary-button>\n    </div>\n    <p class=\"drag-text\">or drag and drop files here</p>\n  </div>\n\n  @if (errorMessage) {\n    <div class=\"error-message\">\n      <app-error-label>\n        <span>{{ errorMessage }}</span>\n      </app-error-label>\n    </div>\n  }\n\n  @if (files.length > 0) {\n    <div class=\"file-list\">\n      @for (file of files; track file) {\n        <div class=\"file-item\">\n          <div class=\"file-info\">\n            <span class=\"file-name\">{{ file.name }}</span>\n            <span class=\"file-size\">{{ getFileSize(file.size) }}</span>\n          </div>\n          <asset-cross (click)=\"removeFile(file)\" [height]=\"14\" [width]=\"14\" class=\"cross\" fill=\"#216cf4\" />\n        </div>\n      }\n    </div>\n  }\n  </label>\n</div>","import { CommonModule, NgStyle } from '@angular/common';\nimport { Component, Input, ElementRef, ViewChild, Output, EventEmitter, CUSTOM_ELEMENTS_SCHEMA, forwardRef, SimpleChanges } from '@angular/core';\nimport { InputTypes } from '../../../models/shared/input';\nimport { ControlValueAccessor, FormsModule, NG_VALUE_ACCESSOR } from '@angular/forms';\n\n@Component({\n  selector: 'app-input',\n  standalone: true,\n  imports: [CommonModule, NgStyle, FormsModule],\n  schemas: [CUSTOM_ELEMENTS_SCHEMA],\n  templateUrl: './input.component.html',\n  styleUrl: './input.component.scss',\n  providers: [\n    {\n      provide: NG_VALUE_ACCESSOR,\n      useExisting: forwardRef(() => InputComponent),\n      multi: true\n    }\n  ]\n})\nexport class InputComponent implements ControlValueAccessor {\n  /** Type of Input field */\n  @Input() type: InputTypes = 'text';\n\n  @Input() autoFocus: boolean = false;\n\n  /** Containing input action in case type is image */\n  @Input() alt = '';\n\n  /** Pattern to be followed in case type is tel */\n  @Input() pattern = '';\n\n  /** Placeholder for input field */\n  @Input() placeholder = '';\n\n  /** Maximum allowed characters in input */\n  @Input() maxLength: number = 0;\n\n  /** Any additional text to show below input field */\n  @Input() helperText = '';\n\n  /** Error message, if present for ambiguous input */\n  @Input() errorMessage = '';\n\n  /** Disabling input */\n  @Input() disabled = false;\n\n  /** Counter for present characters in input */\n  @Input() showCounter = true;\n\n  /** Custom padding for input field */\n  @Input() padding = 'calc(0.6 * var(--regular))';\n\n  /** Minimum date/time value */\n  @Input() min: string = '';\n\n  /** Maximum date/time value */\n  @Input() max: string = '';\n\n  /** Set Initial value */\n  @Input() initialValue: string = '';\n\n  /** Add astrick if required true */\n  @Input() required: boolean = false;\n\n  /** Reference of input element */\n  @ViewChild('input') inputRef: ElementRef | null = null;\n\n  /** Reference of input container element */\n  @ViewChild('inputContainer') inputContainerRef: ElementRef | null = null;\n\n  /** Reference of helper container element */\n  @ViewChild('helperContainer') helperContainerRef: ElementRef | null = null;\n\n  /** Emitting input value of event */\n  @Output() inputValue = new EventEmitter();\n\n  @Output() inputClick = new EventEmitter();\n\n  /** Current number of characters in input */\n  currentLength = 0;\n\n  private _value: any = '';\n\n  private onChange: (value: any) => void = () => { };\n  private onTouched: () => void = () => { };\n\n  constructor() { }\n\n  // Value getter\n  get value(): any {\n    return this._value;\n  }\n\n  // Value setter\n  set value(val: any) {\n    this._value = val;\n    this.onChange(val);\n    this.onTouched();\n  }\n\n  ngOnChanges(changes: SimpleChanges) {\n    if (changes['initialValue']) {\n      // Set the value when initialValue changes\n      this._value = changes['initialValue'].currentValue;\n\n      // Trigger change detection and form control updates\n      this.onChange(this._value);\n      this.onTouched();\n    }\n  }\n\n  get inputStyles() {\n    return {\n      'padding': this.padding\n    };\n  }\n\n  changeInputValue(event: Event) {\n    const inputElement = event.target as HTMLInputElement;\n    this.currentLength = inputElement.value.length;\n  \n    // Special handling for date, time, and datetime-local types\n    if (['date', 'time', 'datetime-local'].includes(this.type)) {\n      if (this.min && inputElement.value < this.min) {\n        inputElement.value = this.min;\n      }\n      if (this.max && inputElement.value > this.max) {\n        inputElement.value = this.max;\n      }\n    }\n\n    // Always update the value and emit the event\n    this.value = inputElement.value;\n    this.inputValue.emit(event);\n  }\n\n  // Add a method to handle native input events\n  handleNativeInput(event: Event) {\n    this.changeInputValue(event);\n  }\n  \n\n  inputClicked(event: Event) {\n    this.inputClick.emit(event);\n  }\n\n  writeValue(value: any): void {\n    if (value !== undefined) {\n      this._value = value;\n      this.currentLength = value ? value.length : 0;\n    }\n  }\n\n  registerOnChange(fn: any): void {\n    this.onChange = fn;\n  }\n\n  registerOnTouched(fn: any): void {\n    this.onTouched = fn;\n  }\n\n  ngAfterViewInit() {\n    // Automatically focus the input if autoFocus is true\n    if (this.autoFocus) {\n      this.focusInput();\n    }\n  }\n\n  setDisabledState(isDisabled: boolean): void {\n    this.disabled = isDisabled;\n  }\n\n  // Helper method to format date/time for display\n  formatDateTime(value: string): string {\n    if (!value) return '';\n\n    try {\n      switch (this.type) {\n        case 'date':\n          return new Date(value).toLocaleDateString();\n        case 'time':\n          return new Date(`2000-01-01T${value}`).toLocaleTimeString([], { hour: '2-digit', minute: '2-digit' });\n        case 'datetime-local':\n          return new Date(value).toLocaleString();\n        default:\n          return value;\n      }\n    } catch {\n      return value;\n    }\n  }\n\n  /** Opens the date picker when clicking anywhere on the input */\n  openDatePicker(event: MouseEvent) {\n    if (this.disabled) return;\n    \n    if (this.type === 'date' || this.type === 'datetime-local' || this.type === 'time') {\n      const input = this.inputRef?.nativeElement as HTMLInputElement;\n      if (input) {\n        // Prevent default to handle the click ourselves\n        event.preventDefault();\n        // Programmatically show the picker\n        input.showPicker();\n      }\n    }\n  }\n\n  /**\n   * Public method to programmatically focus the input element\n   */\n  focusInput() {\n    if (this.inputRef?.nativeElement) {\n      this.inputRef.nativeElement.focus();\n    }\n  }\n}","<div class=\"input-container\" #inputContainer>\n\n  <!-- Input field -->\n  <input \n    [type]=\"type\" \n    [placeholder]=\"placeholder\" \n    (input)=\"handleNativeInput($event)\"\n    (keyup)=\"changeInputValue($event)\"\n    (click)=\"openDatePicker($event); inputClicked($event)\"\n    [ngClass]=\"{ 'error-input': errorMessage }\" \n    [attr.maxlength]=\"maxLength > 0 ? maxLength : false\" \n    [pattern]=\"pattern\" \n    [alt]=\"alt\" \n    [autofocus]=\"autoFocus\"\n    [ngStyle]=\"inputStyles\"\n    [disabled]=\"disabled\" \n    [(ngModel)]=\"value\"\n    (ngModelChange)=\"value = $event\"\n    #input />\n\n  <div class=\"helper-text-container\" #helperContainer>\n    @if(helperText && !errorMessage) {\n    <!-- Helper text to show for input field -->\n    <small class=\"helper-text\">{{helperText}}</small>\n    }\n\n    @if (errorMessage) {\n    <!-- Error message to show -->\n    <small class=\"error-message\">{{errorMessage}}</small>\n    }\n    <!-- Count of letter in input field -->\n    @if(showCounter) {\n    <small class=\"counter\" [ngClass]=\"{'error-message': errorMessage}\">\n      {{currentLength}}\n      @if(maxLength > 0) {\n      /{{maxLength}}\n      }\n    </small>\n    }\n  </div>\n</div>","import { Component, Input, Output, EventEmitter } from '@angular/core';\nimport { InputComponent } from '../input/input.component';\nimport { PrimaryChipComponent } from '../chip/variants/primary-chip/primary-chip.component';\nimport { CrossAsset } from '../../../../assets/cross/cross.component';\n@Component({\n  selector: 'app-tag-input',\n  standalone: true,\n  imports: [InputComponent, PrimaryChipComponent, CrossAsset],\n  templateUrl: './tag-input.component.html',\n  styleUrl: './tag-input.component.scss'\n})\nexport class TagInputComponent {\n  // Input to accept initial tags or configurations\n  @Input() initialTags: string[] = [];\n  @Input() placeholder: string = 'Add a tag';\n\n  // Output to emit the updated tags array to the parent\n  @Output() tagsChange = new EventEmitter<string[]>();\n\n  // Local tags array to store the tags within the component\n  tags: string[] = [];\n\n  ngOnInit() {\n    // Initialize tags with any provided initial tags\n    this.tags = [...this.initialTags];\n  }\n\n  // Method to add a tag when Enter is pressed\n  addTag(event: KeyboardEvent): void {\n    const input = (event.target as HTMLInputElement);\n    const value = input.value.trim();\n\n    if (event.key === 'Enter' && value && !this.tags.includes(value)) {\n      this.tags.push(value);\n      this.tagsChange.emit(this.tags); // Emit updated tags\n      input.value = ''; // Clear the input field\n    }\n  }\n\n  // Method to remove a tag\n  removeTag(tag: string): void {\n    this.tags = this.tags.filter(t => t !== tag);\n    this.tagsChange.emit(this.tags); // Emit updated tags\n  }\n}\n","<div class=\"tag-input-container\">\n  <!-- Input field for typing and adding tags -->\n  <app-input [placeholder]=\"placeholder\" [showCounter]=\"false\" (keydown)=\"addTag($event)\"/>\n\n  <!-- Display tags below the input field -->\n  <div class=\"tags\">\n    @for (tag of tags; track tag) {\n      <app-primary-chip>\n        <div class=\"chip-button\">\n          <div class=\"tag\">{{ tag }}</div>\n          <div class=\"cross\">\n            <asset-cross (click)=\"removeTag(tag)\" [height]=\"8\" [width]=\"8\" />\n          </div>\n        </div>\n      </app-primary-chip>\n    }\n  </div>\n</div>\n","import { Component, Input, Output, EventEmitter } from '@angular/core';\nimport { ContextMenu } from '../../../models/shared/context-menu';\nimport { NgComponentOutlet } from '@angular/common';\n\n@Component({\n  selector: 'app-context-menu',\n  standalone: true,\n  imports: [ NgComponentOutlet ],\n  templateUrl: './context-menu.component.html',\n  styleUrl: './context-menu.component.scss'\n})\nexport class ContextMenuComponent {\n\n  @Input() contextMenu: ContextMenu[] = [];\n\n  /** Emit event when item is clicked */\n  @Output() itemClick = new EventEmitter<ContextMenu>();\n\n  onItemClick(item: ContextMenu): void {\n    if (!item.disabled) {\n      this.itemClick.emit(item);\n    }\n  }\n}\n\n","<div class=\"context-menu-container\">\n  @for (item of contextMenu; track $index) {\n    <div class=\"tab\" [class.disabled]=\"item.disabled\" (click)=\"onItemClick(item)\">\n      @if (item.icon && item.icon.component) {\n        <div class=\"icon\">\n          <ng-container *ngComponentOutlet=\"item.icon.component;\" />\n        </div>\n      }\n      <div class=\"tab-content\">{{ item.title}}</div>\n    </div>\n  }\n</div>","import { Component, ElementRef, inject, Input, ViewChild, ViewContainerRef } from '@angular/core';\nimport { InputComponent } from \"../../input.component\";\nimport { CommonModule } from '@angular/common';\nimport { CommonService } from '../../../../../services/common/common.service';\nimport { FormsModule } from '@angular/forms';\n\n@Component({\n  selector: 'app-labeled-input',\n  standalone: true,\n  imports: [InputComponent, CommonModule, FormsModule],\n  templateUrl: './labeled-input.component.html',\n  styleUrl: './labeled-input.component.scss'\n})\nexport class LabeledInputComponent extends InputComponent {\n  /** Label of input field */\n  @Input() label = '';\n\n  /** To preserve state of label at given time */\n  showLabel = true;\n\n  /** Show grey color label at border of input, when input has characters */\n  showFilledLabel = false;\n\n  /** Reference of input container element */\n  @ViewChild('inputComponent') inputComponentRef: any | null = null;\n\n  /** Reference to label container  */\n  @ViewChild('labelContainer') labelContainerRef: ElementRef | null = null;\n\n  /** Reference of labeled input container */\n  @ViewChild('labeledInputContainer') labeledInputContainer: ElementRef | null = null;\n\n  commonService: CommonService | null = null;\n\n  constructor() {\n    super();\n    /** Injecting commonService */\n    this.commonService = inject(CommonService);\n  }\n\n  ngOnInit() {\n    /** Added event listener to check whether click has been triggered on input or not */\n    // document.addEventListener('click', (event) => {\n    //     // Check if there is an initial value in the input field\n    //     const hasInitialValue = !!this.initialValue;\n\n    //     if (!this.labeledInputContainer?.nativeElement.contains(event.target)) {\n\n    //         if (this.currentLength <= 0 && !hasInitialValue) {\n    //             /** Show Label when there is not any value in input field and user has clicked out of input */\n    //             this.showLabel = true;\n    //         } else {\n    //             /** Show secondary coloured label on border of input, instead of over the input */\n    //             this.showFilledLabel = true;\n    //             this.showLabel = false;\n    //         }\n    //     }\n\n    //     if (this.inputComponentRef?.inputContainerRef?.nativeElement.contains(event.target) && (this.currentLength || hasInitialValue)) {\n    //         /**\n    //          * If targeted element is in component's template and there is some value in input field, then\n    //          * show primary colored label at border and don't show label over input field.\n    //          */\n    //         this.showFilledLabel = false;\n    //         this.showLabel = false;\n    //     }\n\n    //     if (this.inputComponentRef?.helperContainerRef?.nativeElement.contains(event.target)) {\n    //         if (!this.currentLength && !hasInitialValue) {\n    //             /** If targeted element is helper container, then show label if input field doesn't have value */\n    //             this.showLabel = true;\n    //         } else {\n    //             /** If targeted element is helper container, then show filled label */\n    //             this.showFilledLabel = true;\n    //         }\n    //     }\n    // });\n\n    document.addEventListener('click', (event) => {\n      const hasInitialValue = !!this.initialValue;\n\n      // Check if the click is outside the labeled input container\n      if (!this.labeledInputContainer?.nativeElement.contains(event.target)) {\n        if ((this.type === 'date' || this.type === 'datetime-local' || this.type === 'time') && this.value) {\n          /** Ensure label is updated for date, datetime-local, and time inputs */\n          this.showLabel = false;\n          this.showFilledLabel = true;\n        } else if (this.currentLength <= 0 && !hasInitialValue) {\n          /** Show Label when there is no value and the user clicks outside */\n          this.showLabel = true;\n        } else {\n          /** Show secondary colored label on the border for non-date inputs */\n          this.showFilledLabel = true;\n          this.showLabel = false;\n        }\n      }\n\n      // Handle clicks inside the input container\n      if (this.inputComponentRef?.inputContainerRef?.nativeElement.contains(event.target)) {\n        if (this.currentLength || hasInitialValue || ((this.type === 'date' || this.type === 'datetime-local' || this.type === 'time') && this.value)) {\n          /** Show primary-colored label for filled inputs */\n          this.showFilledLabel = false;\n          this.showLabel = false;\n        }\n      }\n\n      // Handle clicks on helper container\n      if (this.inputComponentRef?.helperContainerRef?.nativeElement.contains(event.target)) {\n        if (!this.currentLength && !hasInitialValue) {\n          this.showLabel = true;\n        } else {\n          this.showFilledLabel = true;\n        }\n      }\n    });\n\n    // Initialize label visibility based on the initial value\n    if (this.initialValue) {\n      this.currentLength = this.initialValue.length;\n      this.showFilledLabel = true;\n      this.showLabel = false;\n    }\n  }\n\n  override ngAfterViewInit() {\n    /** Calculate width of label to be contained in input field */\n    this.calculateLabelWidth();\n  }\n\n  /** Method to focus input and hide labeling */\n  hideLabel() {\n    if (this.disabled === false) {\n      this.showLabel = false;\n      this.inputComponentRef?.inputRef?.nativeElement.focus();\n    }\n  }\n\n  // onInputChange(value: string) {\n  //   this.value = value; \n  //   this.currentLength = value ? value.length : 0;\n  \n  //   if (['date', 'datetime-local', 'time'].includes(this.type) && value) {\n  //     this.showLabel = false;\n  //     this.showFilledLabel = true;\n  //   } else if (!value) {\n  //     this.showLabel = true;\n  //     this.showFilledLabel = false;\n  //   }\n  \n  //   // Emit the value to notify the parent component\n  //   this.inputValue.emit(value);\n  // }  \n\n  override changeInputValue(event: Event) {\n    // Call parent class method to handle the event emission and value updates\n    super.changeInputValue(event);\n    \n    const inputElement = event.target as HTMLInputElement;\n    \n    // Handle label visibility based on input type and value\n    if (['date', 'time', 'datetime-local'].includes(this.type)) {\n      if (inputElement.value) {\n        this.showLabel = false;\n        this.showFilledLabel = true;\n      } else {\n        this.showLabel = true;\n        this.showFilledLabel = false;\n      }\n    }\n  }\n\n  override handleNativeInput(event: Event) {\n    super.handleNativeInput(event);\n    \n    const inputElement = event.target as HTMLInputElement;\n    if (['date', 'time', 'datetime-local'].includes(this.type)) {\n      if (inputElement.value) {\n        this.showLabel = false;\n        this.showFilledLabel = true;\n      } else {\n        this.showLabel = true;\n        this.showFilledLabel = false;\n      }\n    }\n  }\n\n  onInputChange(value: any) {\n    this.currentLength = value ? value.length : 0;\n\n    if (['date', 'time', 'datetime-local'].includes(this.type)) {\n      if (value) {\n        this.showLabel = false;\n        this.showFilledLabel = true;\n      } else {\n        this.showLabel = true;\n        this.showFilledLabel = false;\n      }\n    }\n    \n    this.value = value;\n  }\n\n  calculateLabelWidth() {\n    /** Get input field boundaries to get its width */\n    const inputBoundaries = this.inputComponentRef?.inputContainerRef?.nativeElement &&\n      this.inputComponentRef?.inputContainerRef?.nativeElement.getBoundingClientRect();\n    /** Calculate new width and put it in a variable to be used later */\n    this.commonService?.setCSSVariable('--input-width', `${((inputBoundaries.width - 6) / inputBoundaries.width) * 100}%`);\n  }\n}\n","<div class=\"labeled-input-container\" #labeledInputContainer>\n  @if (label) {\n  <div [ngClass]=\"{\n          'label': showLabel,\n          'up-label': !showLabel,\n          'error-message-color': errorMessage,\n          'non-selected-filled-input-label': showFilledLabel && !errorMessage,\n          'disabled': disabled\n        }\" (click)=\"hideLabel()\" #labelContainer>\n    <label>\n      {{label}}\n      @if (required) {\n        <span class=\"required-asterisk\">*</span>\n      }\n    </label>\n  </div>\n  }\n  <!-- <app-input (inputValue)=\"changeInputValue($event)\" [showCounter]=\"showCounter\" [type]=\"type\" \n    (inputClick)=\"inputClicked($event); hideLabel()\"\n    [placeholder]=\"placeholder\" [maxLength]=\"maxLength\" [errorMessage]=\"errorMessage\" [helperText]=\"helperText\" [alt]=\"alt\"\n    [pattern]=\"pattern\" [disabled]=\"disabled\" \n    [initialValue]=\"initialValue\" [(ngModel)]=\"value\" (ngModelChange)=\"value = $event\"\n     #inputComponent /> -->\n\n  <app-input (inputValue)=\"changeInputValue($event)\" [showCounter]=\"showCounter\" [type]=\"type\" [autoFocus]=\"autoFocus\"\n    (inputClick)=\"inputClicked($event); hideLabel()\" [placeholder]=\"placeholder\" [maxLength]=\"maxLength\"\n    [errorMessage]=\"errorMessage\" [helperText]=\"helperText\" [alt]=\"alt\" [pattern]=\"pattern\" [disabled]=\"disabled\"\n    [initialValue]=\"initialValue\" [required]=\"required\" [(ngModel)]=\"value\" (ngModelChange)=\"onInputChange($event)\"\n    #inputComponent></app-input>\n\n</div>","import { Component, ViewChild } from '@angular/core';\nimport { InputComponent } from \"../../input.component\";\nimport { FormsModule } from '@angular/forms';\n\n@Component({\n  selector: 'app-postfix-input',\n  standalone: true,\n  imports: [InputComponent, FormsModule],\n  templateUrl: './postfix-input.component.html',\n  styleUrl: './postfix-input.component.scss'\n})\nexport class PostfixInputComponent extends InputComponent {\n  @ViewChild('inputComponent') inputComponent: any | null = null;\n\n  override ngAfterViewInit() {\n    const classes = this.inputComponent.inputRef.nativeElement.getAttribute('class')\n    this.inputComponent.inputRef.nativeElement.setAttribute('class', `input-postfix ${ classes ? classes : '' }`);\n  }\n\n}\n","<div class=\"postfix-input-container\">\n  <app-input (inputValue)=\"changeInputValue($event)\" [showCounter]=\"showCounter\" [autoFocus]=\"autoFocus\" [type]=\"type\" (inputClick)=\"inputClicked($event);\"\n    [placeholder]=\"placeholder\" [maxLength]=\"maxLength\" [errorMessage]=\"errorMessage\" [helperText]=\"helperText\" [alt]=\"alt\"\n    [pattern]=\"pattern\" [disabled]=\"disabled\" [initialValue]=\"initialValue\" [(ngModel)]=\"value\" (ngModelChange)=\"value = $event\" #inputComponent />\n  <div class=\"input-postfix\">\n    <ng-content select=\"postfix\" />\n  </div>\n</div>","import { Component, ViewChild } from '@angular/core';\nimport { LabeledInputComponent } from '../labeled-input/labeled-input.component';\nimport { FormsModule } from '@angular/forms';\n\n@Component({\n  selector: 'app-postfix-labeled-input',\n  standalone: true,\n  imports: [LabeledInputComponent, FormsModule],\n  templateUrl: './postfix-labeled-input.component.html',\n  styleUrl: './postfix-labeled-input.component.scss'\n})\nexport class PostfixLabeledInputComponent extends LabeledInputComponent {\n  @ViewChild('labeledInputComponent') labeledInputComponentRef: any | null = null;\n\n  override ngAfterViewInit() {\n    const classes = this.labeledInputComponentRef.inputComponentRef.inputRef.nativeElement.getAttribute('class')\n    this.labeledInputComponentRef.inputComponentRef.inputRef.nativeElement.setAttribute('class', \n      `input-postfix ${ classes ? classes : '' }`);\n  }\n}\n","<div class=\"postfix-labeled-input-container\">\n  <app-labeled-input (inputValue)=\"changeInputValue($event)\" [showCounter]=\"showCounter\" [type]=\"type\" [autoFocus]=\"autoFocus\"\n  (inputClick)=\"inputClicked($event); hideLabel()\" [alt]=\"alt\" [pattern]=\"pattern\"\n  [placeholder]=\"placeholder\" [maxLength]=\"maxLength\" [errorMessage]=\"errorMessage\" [helperText]=\"helperText\"\n  [disabled]=\"disabled\" [label]=\"label\" [initialValue]=\"initialValue\" [(ngModel)]=\"value\" (ngModelChange)=\"value = $event\" #labeledInputComponent />\n  <div class=\"input-postfix\">\n    <ng-content select=\"postfix\" />\n  </div>\n</div>","import { Component, ViewChild } from '@angular/core';\nimport { InputComponent } from \"../../input.component\";\nimport { CommonModule } from '@angular/common';\nimport { FormsModule } from '@angular/forms';\n\n@Component({\n  selector: 'app-prefix-input',\n  standalone: true,\n  imports: [InputComponent, CommonModule, FormsModule],\n  templateUrl: './prefix-input.component.html',\n  styleUrl: './prefix-input.component.scss'\n})\nexport class PrefixInputComponent extends InputComponent {\n\n  @ViewChild('inputComponent') inputComponent: any | null = null;\n\n  override ngAfterViewInit() {\n    const classes = this.inputComponent.inputRef.nativeElement.getAttribute('class')\n    this.inputComponent.inputRef.nativeElement.setAttribute('class', `input-prefix ${ classes ? classes : '' }`);\n  }\n\n}\n","<div class=\"prefix-input-container\">\n  <!-- Any Icon or text to show at input prefix -->\n  <div class=\"input-prefix\">\n    <ng-content select=\"prefix\" />\n  </div>\n  <app-input (inputValue)=\"changeInputValue($event)\" [showCounter]=\"showCounter\" [autoFocus]=\"autoFocus\" [type]=\"type\" (inputClick)=\"inputClicked($event);\"\n    [placeholder]=\"placeholder\" [maxLength]=\"maxLength\" [errorMessage]=\"errorMessage\" [helperText]=\"helperText\" [alt]=\"alt\"\n    [pattern]=\"pattern\" [disabled]=\"disabled\" [initialValue]=\"initialValue\" [(ngModel)]=\"value\" (ngModelChange)=\"value = $event\" #inputComponent />\n</div>","import { Component, ViewChild } from '@angular/core';\nimport { LabeledInputComponent } from \"../labeled-input/labeled-input.component\";\nimport { FormsModule } from '@angular/forms';\n\n@Component({\n  selector: 'app-prefix-labeled-input',\n  standalone: true,\n  imports: [LabeledInputComponent, FormsModule],\n  templateUrl: './prefix-labeled-input.component.html',\n  styleUrl: './prefix-labeled-input.component.scss'\n})\nexport class PrefixLabeledInputComponent extends LabeledInputComponent {\n  @ViewChild('labeledInputComponent') labeledInputComponentRef: any | null = null;\n\n  override ngAfterViewInit() {\n    const classes = this.labeledInputComponentRef.inputComponentRef.inputRef.nativeElement.getAttribute('class')\n    this.labeledInputComponentRef.inputComponentRef.inputRef.nativeElement.setAttribute('class', \n      `input-prefix ${ classes ? classes : '' }`);\n  }\n}\n","<div class=\"prefix-labeled-input-container\">\n  <div class=\"input-prefix\">\n    <ng-content select=\"prefix\" />\n  </div>\n  <app-labeled-input (inputValue)=\"changeInputValue($event)\" [showCounter]=\"showCounter\" [type]=\"type\"\n  (inputClick)=\"inputClicked($event); hideLabel()\" [pattern]=\"pattern\" [autoFocus]=\"autoFocus\"\n  [placeholder]=\"placeholder\" [maxLength]=\"maxLength\" [errorMessage]=\"errorMessage\" [helperText]=\"helperText\" [alt]=\"alt\"\n  [disabled]=\"disabled\" [label]=\"label\" [initialValue]=\"initialValue\" [(ngModel)]=\"value\" (ngModelChange)=\"value = $event\" #labeledInputComponent />\n</div>","import { Component, ViewChild } from '@angular/core';\nimport { InputComponent } from \"../../input.component\";\nimport { FormsModule } from '@angular/forms';\n\n@Component({\n  selector: 'app-prefix-postfix-input',\n  standalone: true,\n  imports: [InputComponent, FormsModule],\n  templateUrl: './prefix-postfix-input.component.html',\n  styleUrl: './prefix-postfix-input.component.scss'\n})\nexport class PrefixPostfixInputComponent extends InputComponent {\n\n  @ViewChild('inputComponent') inputComponent: any | null = null;\n  \n  override ngAfterViewInit() {\n    const classes = this.inputComponent.inputRef.nativeElement.getAttribute('class');\n    this.inputComponent.inputRef.nativeElement.setAttribute('class', `input-prefix-postfix ${ classes ? classes : '' }`)\n  }\n}\n","<div class=\"prefix-postfix-input-container\">\n  <div class=\"input-prefix\">\n    <ng-content select=\"prefix\" />\n  </div>\n  <app-input (inputValue)=\"changeInputValue($event)\" [showCounter]=\"showCounter\" [type]=\"type\" (inputClick)=\"inputClicked($event);\"\n    [placeholder]=\"placeholder\" [maxLength]=\"maxLength\" [errorMessage]=\"errorMessage\" [helperText]=\"helperText\" [alt]=\"alt\" [autoFocus]=\"autoFocus\"\n    [pattern]=\"pattern\" [disabled]=\"disabled\" [initialValue]=\"initialValue\" [(ngModel)]=\"value\" (ngModelChange)=\"value = $event\" #inputComponent />\n  <div class=\"input-postfix\">\n    <ng-content select=\"postfix\" />\n  </div>\n</div>","import { Component, ViewChild } from '@angular/core';\nimport { LabeledInputComponent } from \"../labeled-input/labeled-input.component\";\nimport { FormsModule } from '@angular/forms';\n\n@Component({\n  selector: 'app-prefix-postfix-labeled-input',\n  standalone: true,\n  imports: [LabeledInputComponent, FormsModule],\n  templateUrl: './prefix-postfix-labeled-input.component.html',\n  styleUrl: './prefix-postfix-labeled-input.component.scss'\n})\nexport class PrefixPostfixLabeledInputComponent extends LabeledInputComponent {\n  @ViewChild('labeledInputComponent') labeledInputComponentRef: any | null = null;\n\n  override ngAfterViewInit() {\n    const classes = this.labeledInputComponentRef.inputComponentRef.inputRef.nativeElement.getAttribute('class')\n    this.labeledInputComponentRef.inputComponentRef.inputRef.nativeElement.setAttribute('class', \n      `input-prefix-postfix ${ classes ? classes : '' }`);\n  }\n}\n","<div class=\"prefix-postfix-labeled-input-container\">\n  <div class=\"input-prefix\">\n    <ng-content select=\"prefix\" />\n  </div>\n  <app-labeled-input (inputValue)=\"changeInputValue($event)\" [showCounter]=\"showCounter\" [type]=\"type\"\n  (inputClick)=\"inputClicked($event); hideLabel()\" [alt]=\"alt\" [pattern]=\"pattern\" [autoFocus]=\"autoFocus\"\n  [placeholder]=\"placeholder\" [maxLength]=\"maxLength\" [errorMessage]=\"errorMessage\" [helperText]=\"helperText\"\n  [disabled]=\"disabled\" [label]=\"label\" [initialValue]=\"initialValue\" [(ngModel)]=\"value\" (ngModelChange)=\"value = $event\" #labeledInputComponent />\n  <div class=\"input-postfix\">\n    <ng-content select=\"postfix\" />\n  </div>\n</div>","import { Component } from '@angular/core';\nimport { LabelComponent } from '../../label.component';\n\n@Component({\n  selector: 'app-secondary-label',\n  standalone: true,\n  imports: [LabelComponent],\n  templateUrl: './secondary-label.component.html',\n  styleUrl: './secondary-label.component.scss'\n})\nexport class SecondaryLabelComponent extends LabelComponent {\n\n}\n","<div class=\"secondary-label-container\">\n  <app-label>\n    <ng-content />\n  </app-label>\n</div>","import { Component } from '@angular/core';\nimport { LabelComponent } from '../../label.component';\n\n@Component({\n  selector: 'app-success-label',\n  standalone: true,\n  imports: [LabelComponent],\n  templateUrl: './success-label.component.html',\n  styleUrl: './success-label.component.scss'\n})\nexport class SuccessLabelComponent extends LabelComponent {\n\n}\n","<div class=\"success-label-container\">\n  <app-label>\n    <ng-content />\n  </app-label>\n</div>","import { Component, EventEmitter, Output, Input } from '@angular/core';\n\n@Component({\n  selector: 'app-link',\n  standalone: true,\n  imports: [],\n  templateUrl: './link.component.html',\n  styleUrl: './link.component.scss'\n})\nexport class LinkComponent {\n  /** Actual link on which we need to redirect */\n  @Input() link = '';\n\n  /** Event emitter for link click */\n  @Output() linkClick = new EventEmitter();\n\n  /** Handling click event on link */\n  linkClicked(event: Event) {\n    this.linkClick.emit(event);\n  }\n}\n","<div class=\"link-container\">\n  <a class=\"link-cta\" [href]=\"link\" (click)=\"linkClicked($event)\">\n    <ng-content />\n  </a>\n</div>","import { Component } from '@angular/core';\nimport { LoaderAsset } from '../../../../assets/loader/loader.component';\n\n@Component({\n  selector: 'app-loader',\n  standalone: true,\n  imports: [LoaderAsset],\n  templateUrl: './loader.component.html',\n  styleUrl: './loader.component.scss'\n})\nexport class LoaderComponent {\n\n}\n","<div class=\"loader-container\">\n  <div class=\"loader\">\n    <asset-loader />\n  </div>\n</div>","import { Component } from '@angular/core';\n\n@Component({\n  selector: 'app-ripple-screen-loader',\n  standalone: true,\n  imports: [],\n  templateUrl: './ripple-screen-loader.component.html',\n  styleUrl: './ripple-screen-loader.component.scss'\n})\nexport class RippleScreenLoaderComponent {\n\n}\n","<div class=\"ripple-loader-container\">\n    <div class=\"circles\">\n        <div class=\"circle1\"></div>\n        <div class=\"circle2\"></div>\n    </div>\n    <div class=\"content\">\n        <ng-content />\n    </div>\n</div>","import { Component } from '@angular/core';\n\n@Component({\n  selector: 'app-ripple-loader',\n  standalone: true,\n  imports: [],\n  templateUrl: './ripple-loader.component.html',\n  styleUrl: './ripple-loader.component.scss'\n})\nexport class RippleLoaderComponent {\n\n}\n","<div class=\"ripple-loader-container\">\n  <div class=\"circles\">\n    <div class=\"circle1\"></div>\n    <div class=\"circle2\"></div>\n  </div>\n  <div class=\"content\">\n    <ng-content />\n  </div>\n</div>","import { CommonModule } from '@angular/common';\nimport { Component, EventEmitter, Input, Output } from '@angular/core';\n\n@Component({\n  selector: 'app-toggle',\n  standalone: true,\n  imports: [CommonModule],\n  templateUrl: './toggle.component.html',\n  styleUrl: './toggle.component.scss'\n})\nexport class ToggleComponent {\n  /** Unique id to be assigned to toggle */\n  @Input() id = 'toggle' + Math.floor( Math.random() * 100000);\n\n  /** Whether toggle checked or not */\n  @Input() checked: boolean | undefined = false;\n  \n  /** Title of toggle  */\n  @Input() title = '';\n\n  /** Placement of title w.r.t toggle */\n  @Input() placement: string | undefined = undefined;\n\n  /** Emitting change in toggle */\n  @Output() toggle = new EventEmitter();\n\n  /** Disabling toggle */\n  @Input() disabled = false;\n\n  /** Handling toggle value */\n  toggleValue(event: Event) {\n    this.toggle.emit(event);\n  }\n\n  /** Handling toggle value with title */\n  toggleUsingTitle() {\n    this.checked = !this.checked;\n    this.toggle.emit({target: { checked: this.checked}});\n  }\n\n}\n","<div\n  class=\"toggle-container\"\n  [ngClass]=\"{\n    'title-end': placement === 'end',\n    'title-start': placement === 'start',\n    'title-bottom': placement === 'bottom'\n  }\"\n>\n  @if (title) {\n  <p class=\"title\" (click)=\"toggleUsingTitle()\">{{ title }}</p>\n  }\n  <input\n    [ngClass]=\"{ disabled: disabled }\"\n    [id]=\"id\"\n    type=\"checkbox\"\n    class=\"checkbox\"\n    (click)=\"toggleValue($event)\"\n    (change)=\"toggleValue($event)\"\n    [checked]=\"checked\"\n    [disabled]=\"disabled\"\n  />\n  <label [for]=\"id\" class=\"toggle\"></label>\n</div>\n","import { Component, EventEmitter, HostListener, Input, Output, SimpleChanges } from '@angular/core';\nimport { NavbarItem } from '../../../models/shared/navbar';\nimport { ToggleComponent } from '../toggle/toggle.component';\nimport { CommonModule } from '@angular/common';\nimport { PrimaryButtonComponent } from '../button/variants/primary-button/primary-button.component';\nimport { CommonService } from '../../../services/common/common.service';\n\n@Component({\n  selector: 'app-navbar',\n  standalone: true,\n  imports: [PrimaryButtonComponent, ToggleComponent, CommonModule],\n  templateUrl: './navbar.component.html',\n  styleUrl: './navbar.component.scss'\n})\nexport class NavbarComponent {\n  /** Items to show in sidebar's main container */\n  @Input() bodyItems: NavbarItem[] = [];\n\n  /** Items to show in sidebar's bottom container */\n  @Input() bottomItems: NavbarItem[] = [];\n\n  /** Storing item to be selected */\n  @Input() selectedItem = '';\n\n  /** Set initial selected item */\n  @Input() initialSelectedItem: string = '';\n\n  /** Storing the checkboxes value */\n  @Input() checkboxesChecked: boolean = false;\n  /** Emitter to emit item and its toggle value to parent */\n  @Output() toggleItem = new EventEmitter();\n\n  @Output() selected = new EventEmitter();\n\n  /** Stores mobile or desktop view for side bar to show */\n  mobileView = false;\n\n  /** Manage collapse/non-collapse sidebar */\n  collapse = false;\n\n  modifiedBodyItems: NavbarItem[] = [];\n\n  modifiedBottomItems: NavbarItem[] = [];\n\n  nonSelectedItemColor = '#999';\n\n  constructor(private commonService: CommonService) {\n    this.nonSelectedItemColor = this.commonService.getCSSVariablesValue('--on-secondary');\n  }\n\n  ngOnInit() {\n    this.updateNavView();\n    this.mobileView = window.innerWidth < 768;\n\n    if (this.mobileView) {\n      this.collapse = true;\n    }\n\n    if (this.initialSelectedItem) {\n      this.selectedItem = this.initialSelectedItem;\n      this.updateNavView();\n    }\n  }\n\n  ngOnChanges(changes: SimpleChanges) {\n    if (changes['initialSelectedItem'] && changes['initialSelectedItem'].currentValue) {\n      this.selectedItem = changes['initialSelectedItem'].currentValue;\n      this.updateNavView();\n    }\n  }\n\n  /** Listen to window resize events to update mobile view dynamically */\n  @HostListener('window:resize', ['$event'])\n  onResize(event: Event) {\n    this.checkMobileView();\n  }\n\n  /** Check and update the mobile view */\n  checkMobileView() {\n    this.mobileView = window.innerWidth < 768;\n    this.collapse = this.mobileView ? true : this.collapse;\n  }\n\n  /** Handling toggle item values */\n  toggledItem(event: Event & { target: { checked: boolean } }, item: NavbarItem) {\n    this.selectedItem = item.title;\n    this.toggleItem.emit({ item, checked: (event.target as { checked: boolean }).checked || false });\n  }\n\n  /** Handling selected item of sidebar */\n  selectedNavbarItem(event: Event, item: NavbarItem) {\n    const hasCheckedToggles = this.checkboxesChecked;\n\n  // If no checkboxes are checked and user clicks on non-home item, prevent navigation\n  if (!hasCheckedToggles && item.title.toLowerCase() !== 'home' && item.title.toLowerCase() !== 'logout' ) {\n    return;\n  }\n  \n  this.selectedItem = item.title;\n  this.updateNavView();\n  this.selected.emit({...event, item});\n  \n  if (this.mobileView) {\n    this.collapse = !this.collapse;\n  }\n  }\n\n  /** Updated selected item of side bar to render */\n  updateNavView() {\n    // Use the checkboxesChecked input instead of searching for toggles\n    const hasCheckedToggles = this.checkboxesChecked;\n    \n    // If no checkboxes are checked, force active item to 'home', otherwise use selectedItem\n    const activeItem = !hasCheckedToggles ? 'home' : this.selectedItem;\n    this.modifiedBodyItems = this.bodyItems.map(item => {\n      // For items, check if they should be active\n      const shouldBeActive = item.title.toLowerCase() === activeItem.toLowerCase() &&\n                            (hasCheckedToggles || item.title.toLowerCase() === 'home');\n      \n      // Create a clean inputs object without selectedFill\n      const cleanInputs = { ...(item.icon ? item.icon.inputs : {}) };\n      delete cleanInputs.selectedFill; // Remove selectedFill to avoid the error\n      \n      const modifiedItem = {\n        ...item,\n        clicked: shouldBeActive,\n        icon: {\n          ...item.icon,\n          inputs: {\n            ...cleanInputs,\n            fill: shouldBeActive && item.icon ?\n              '#216CF4' : // Use your selected color\n              (item.title.toLowerCase() === 'logout' ? '#B3261E' : '#999'), // Preserve logout color\n          }\n        }\n      };\n      \n      return modifiedItem;\n    });\n  \n    this.modifiedBottomItems = this.bottomItems.map(item => {\n      const shouldBeActive = item.title.toLowerCase() === activeItem.toLowerCase() &&\n                            (hasCheckedToggles || item.title.toLowerCase() === 'home');\n      \n      // Create a clean inputs object without selectedFill\n      const cleanInputs = { ...(item.icon ? item.icon.inputs : {}) };\n      delete cleanInputs.selectedFill; // Remove selectedFill to avoid the error\n      \n      const modifiedItem = {\n        ...item,\n        clicked: shouldBeActive,\n        icon: {\n          ...item.icon,\n          inputs: {\n            ...cleanInputs,\n            fill: shouldBeActive && item.icon ?\n              '#216CF4' : // Use your selected color\n              (item.title.toLowerCase() === 'logout' ? '#B3261E' : '#999'), // Preserve logout color\n          }\n        }\n      };\n      \n      return modifiedItem;\n    });\n  }\n\n  /** Handling collapsing of sidebar */\n  toggleNavbar() {\n    this.collapse = !this.collapse;\n  }\n}\n","<div class=\"navbar-container\"\n  [ngClass]=\"{'slide-left': collapse, 'slide-right': !collapse ,'d-none': collapse && mobileView}\">\n  <!-- Show toggle icon for mobile view, otherwise show logo -->\n  <div class=\"navbar-upper-body\">\n    @if (!mobileView) {\n      <section class=\"navbar-header\" (click)=\"toggleNavbar()\">\n        <!-- Logo to show in navbar -->\n        <ng-content select=\"logo\" />\n      </section>\n    } @else {\n        <section class=\"toggle-icon\" (click)=\"toggleNavbar()\">\n          <span class=\"big-line\"></span>\n          <span class=\"small-line\"></span>\n          <span class=\"big-line\"></span>\n        </section>\n      }\n    <section class=\"navbar-body\">\n      <!-- For every side bar item list them -->\n      @for (item of modifiedBodyItems; track item.title) {\n        <div class=\"item\"\n          [ngClass]=\"{'selected-item': item.clicked && item.type !== 'button', 'p-0': item.type === 'button', 'collapsed-item': collapse}\"\n          (click)=\"selectedNavbarItem($event, item)\">\n          <!-- If item is button then don't show its icon here but passed it in its content of app-button -->\n          @if (item.icon && item.type !== 'button' && item.icon.component) {\n          <!-- <span> -->\n            <ng-container *ngComponentOutlet=\"item.icon.component; inputs: item.icon.inputs\" />\n          <!-- </span> -->\n          }\n          <!-- Collapse navbar should only show icons; otherwise show title and icon -->\n          @if (!collapse) {\n          @if (item.type === 'text') {\n          <span>{{item.title}}</span>\n          } @else if (item.type === 'button') {\n          <!-- If item is button; pass icon in its content -->\n          <app-primary-button style=\"width: 100%\">\n            @if (item.icon && item.icon.component) {\n            <ng-container *ngComponentOutlet=\"item.icon.component; inputs: item.icon.inputs\" />\n            }\n            {{item.title}}\n          </app-primary-button>\n          } @else if (item.type === 'toggle') {\n          <!-- If item is toggle; pass title to app-toggle -->\n          <app-toggle [title]=\"item.title\" (toggle)=\"toggledItem($event, item)\" [placement]=\"item.placement\"\n            [checked]=\"item.checked\"></app-toggle>\n          }\n          }\n          @if (collapse) {\n          @if (item.type === 'toggle') {\n          <!-- Collapsed side bar doesn't have title -->\n          <app-toggle (toggle)=\"toggledItem($event, item)\" [placement]=\"item.placement\"\n            [checked]=\"item.checked\"></app-toggle>\n          } @else if (item.type === 'button' && item.icon) {\n          <!-- If item is button; pass icon in its content -->\n          <app-primary-button style=\"width: 100%\">\n            @if (item.icon && item.icon.component) {\n            <ng-container *ngComponentOutlet=\"item.icon.component; inputs: item.icon.inputs\" />\n            }\n          </app-primary-button>\n          }\n          }\n        </div>\n      }\n    </section>\n  </div>\n  <section class=\"navbar-bottom\">\n    <section class=\"navbar-bottom-body\">\n      <!-- List every item at bottom of sidebar -->\n      @for (item of modifiedBottomItems; track item.title) {\n      <div class=\"item\" [ngClass]=\"{'selected-item': item.clicked && item.type !== 'toggle', 'collapsed-item': collapse }\"\n        (click)=\"selectedNavbarItem($event, item)\">\n        <!-- If item is button then don't show its icon here but passed it in its content of app-button -->\n        @if (item.icon && item.type !== 'button' && item.icon.component) {\n        <!-- <span> -->\n          <ng-container *ngComponentOutlet=\"item.icon.component; inputs: item.icon.inputs\" />\n        <!-- </span> -->\n        }\n        <!-- Collapse navbar should only show icons; otherwise show title and icon -->\n        @if (!collapse) {\n        @if (item.type === 'text') {\n        <span>{{item.title}}</span>\n        } @else if (item.type === 'button') {\n        <!-- If item is button; pass icon in its content -->\n        <app-primary-button style=\"width: 100%\">\n          @if (item.icon && item.icon.component) {\n            <ng-container *ngComponentOutlet=\"item.icon.component; inputs: item.icon.inputs\" />&nbsp; &nbsp;\n          }\n          {{ item.title }}\n        </app-primary-button>\n        } @else if (item.type === 'toggle') {\n        <!-- If item is toggle; pass title to app-toggle -->\n        <app-toggle [title]=\"item.title\" (toggle)=\"toggledItem($event, item)\" [placement]=\"item.placement\"></app-toggle>\n        }\n        }\n        @if (collapse) {\n        @if (item.type === 'toggle') {\n        <!-- Collapsed side bar doesn't have title -->\n        <app-toggle (toggle)=\"toggledItem($event, item)\" [placement]=\"item.placement\"\n          [checked]=\"item.checked\"></app-toggle>\n        }\n        }\n      </div>\n      }\n    </section>\n\n  </section>\n</div>\n@if (mobileView && collapse) {\n<section class=\"outside-toggle-icon\" (click)=\"toggleNavbar()\">\n  <span class=\"big-line\"></span>\n  <span class=\"small-line\"></span>\n  <span class=\"big-line\"></span>\n</section>\n}","import { CommonModule } from '@angular/common';\nimport { Component, EventEmitter, Input, Output } from '@angular/core';\nimport { InfoAsset } from '../../../../assets/info/info.component';\nimport { ErrorAsset } from '../../../../assets/error/error.component';\nimport { WarningAsset } from '../../../../assets/warning/warning.component';\nimport { NotificationTypes } from '../../../models/shared/notification';\nimport { CrossAsset } from '../../../../assets/cross/cross.component';\n\n@Component({\n  selector: 'app-notification',\n  standalone: true,\n  imports: [CommonModule, InfoAsset, ErrorAsset, WarningAsset, CrossAsset],\n  templateUrl: './notification.component.html',\n  styleUrl: './notification.component.scss'\n})\nexport class NotificationComponent {\n /**\n  * Emit notification hide\n  */\n @Output() close = new EventEmitter();\n\n /**\n  * Run when user manually closes alert.\n  */ \n hideNotification() {\n   /** \n    * This event has been emitted to clear timer if user has manually closed alert.\n    */\n   this.close.emit(true);\n }\n}\n","<div class=\"notification-container\">\n  <!-- <div class=\"icon\"> -->\n    <!-- Main icon of notification -->\n    <ng-content select=\"notification-icon\" />\n  <!-- </div> -->\n  <!-- Custom content to show in notification -->\n  <ng-content />\n  <div class=\"close\" (click)=\"hideNotification()\">\n    <!-- Close icon for notification -->\n    <ng-content select=\"close-icon\" />\n  </div>\n</div>","import { Component, CUSTOM_ELEMENTS_SCHEMA, NO_ERRORS_SCHEMA } from '@angular/core';\nimport { NotificationComponent } from \"../../notification.component\";\nimport { CommonModule } from '@angular/common';\nimport { ErrorAsset } from \"../../../../../../assets/error/error.component\";\nimport { CommonService } from '../../../../../services/common/common.service';\nimport { CrossAsset } from '../../../../../../assets/cross/cross.component';\n\n@Component({\n  selector: 'app-error-notification',\n  standalone: true,\n  imports: [NotificationComponent, CommonModule, ErrorAsset, CrossAsset],\n  schemas: [CUSTOM_ELEMENTS_SCHEMA, NO_ERRORS_SCHEMA],\n  templateUrl: './error-notification.component.html',\n  styleUrl: './error-notification.component.scss'\n})\nexport class ErrorNotificationComponent extends NotificationComponent {\n  errorColor = '#B3261E';\n\n  constructor(private commonService: CommonService) {\n    super();\n    this.errorColor = this.commonService.getCSSVariablesValue('--on-error');\n  }\n}\n","<div class=\"error-notification-container\">\n  <app-notification (close)=\"hideNotification()\">\n    <notification-icon>\n      <asset-error [fill]=\"errorColor\"></asset-error>\n    </notification-icon>\n    <ng-content/>\n    <close-icon>\n      <asset-cross [fill]=\"errorColor\" [height]=\"16\" [width]=\"16\" />\n    </close-icon>\n  </app-notification>\n</div>","import { Component, CUSTOM_ELEMENTS_SCHEMA, NO_ERRORS_SCHEMA } from '@angular/core';\nimport { NotificationComponent } from \"../../notification.component\";\nimport { InfoAsset } from \"../../../../../../assets/info/info.component\";\nimport { CrossAsset } from \"../../../../../../assets/cross/cross.component\";\nimport { CommonService } from '../../../../../services/common/common.service';\n\n@Component({\n  selector: 'app-info-notification',\n  standalone: true,\n  imports: [NotificationComponent, InfoAsset, CrossAsset],\n  schemas: [NO_ERRORS_SCHEMA, CUSTOM_ELEMENTS_SCHEMA],\n  templateUrl: './info-notification.component.html',\n  styleUrl: './info-notification.component.scss'\n})\nexport class InfoNotificationComponent extends NotificationComponent {\n  infoColor = '#216CF4';\n\n  constructor(private commonService: CommonService) {\n    super();\n    this.infoColor = this.commonService.getCSSVariablesValue('--on-primary');\n  }\n}\n","<div class=\"info-notification-container\">\n  <app-notification (close)=\"hideNotification()\">\n    <notification-icon>\n      <asset-info [fill]=\"infoColor\" />\n    </notification-icon>\n    <ng-content />\n    <close-icon>\n      <asset-cross [fill]=\"infoColor\" [height]=\"16\" [width]=\"16\" />\n    </close-icon>\n  </app-notification>\n</div>","import { Component, CUSTOM_ELEMENTS_SCHEMA, NO_ERRORS_SCHEMA } from '@angular/core';\nimport { NotificationComponent } from \"../../notification.component\";\nimport { CrossAsset } from \"../../../../../../assets/cross/cross.component\";\nimport { CommonService } from '../../../../../services/common/common.service';\n\n@Component({\n  selector: 'app-success-notification',\n  standalone: true,\n  imports: [NotificationComponent, CrossAsset],\n  schemas: [NO_ERRORS_SCHEMA, CUSTOM_ELEMENTS_SCHEMA],\n  templateUrl: './success-notification.component.html',\n  styleUrl: './success-notification.component.scss'\n})\nexport class SuccessNotificationComponent extends NotificationComponent {\n  successColor = '#3DA144';\n\n  constructor(private commonService: CommonService) {\n    super();\n    this.successColor = this.commonService.getCSSVariablesValue('--on-success');\n  }\n}\n","<div class=\"success-notification-container\">\n  <app-notification (close)=\"hideNotification()\">\n    <ng-content/>\n    <close-icon>\n      <asset-cross [fill]=\"successColor\" [height]=\"16\" [width]=\"16\" />\n    </close-icon>\n  </app-notification>\n</div>","import { Component, CUSTOM_ELEMENTS_SCHEMA, NO_ERRORS_SCHEMA } from '@angular/core';\nimport { NotificationComponent } from \"../../notification.component\";\nimport { WarningAsset } from \"../../../../../../assets/warning/warning.component\";\nimport { CrossAsset } from \"../../../../../../assets/cross/cross.component\";\nimport { CommonService } from '../../../../../services/common/common.service';\n\n@Component({\n  selector: 'app-warning-notification',\n  standalone: true,\n  imports: [NotificationComponent, WarningAsset, CrossAsset],\n  schemas: [NO_ERRORS_SCHEMA, CUSTOM_ELEMENTS_SCHEMA],\n  templateUrl: './warning-notification.component.html',\n  styleUrl: './warning-notification.component.scss'\n})\nexport class WarningNotificationComponent extends NotificationComponent {\n  warningColor = '#FFF2E2';\n\n  constructor(private commonService: CommonService) {\n    super();\n\n    this.warningColor = this.commonService.getCSSVariablesValue('--on-warning');\n  }\n}\n","<div class=\"warning-notification-container\">\n  <app-notification (close)=\"hideNotification()\">\n    <notification-icon>\n      <asset-warning [fill]=\"warningColor\" />\n    </notification-icon>\n    <ng-content />\n    <close-icon>\n      <asset-cross [fill]=\"warningColor\" [height]=\"16\" [width]=\"16\" />\n    </close-icon>\n  </app-notification>\n</div>","import { Component, EventEmitter, Input, Output } from '@angular/core';\nimport { Page } from '../../../models/shared/page';\nimport { CommonModule } from '@angular/common';\n\n@Component({\n  selector: 'app-page-control',\n  standalone: true,\n  imports: [CommonModule],\n  templateUrl: './page-control.component.html',\n  styleUrl: './page-control.component.scss'\n})\nexport class PageControlComponent {\n  /** \n   * Array of pages\n   */\n  @Input() pages: Page[] = [\n  ];\n\n  /** Pages to be displayed */\n  pagesToDisplay: Page[] = [];\n\n  /** Emit selected page */\n  @Output() page = new EventEmitter();\n\n  ngOnInit() {\n    this.pagesToDisplay = this.pages.length > 6 ? [...this.pages.slice(0, 6)] : [...this.pages];\n  }\n\n  /** Handle selected page */\n  selectedPage(selectedPage: Page) {\n    this.page.emit({ ...selectedPage, selected: true });\n\n    let selectedIndex = -1;\n    this.pages = this.pages.map((page, index) => ({\n      ...page,\n      selected: page.title.toLowerCase() === selectedPage.title.toLowerCase() ?\n        (() => { selectedIndex = index;  return true;})() :\n        false,\n    }));\n\n    if (selectedIndex >= 0) {\n      // if page has been selected\n      const startIndex = (selectedIndex - 3) > 0 ? selectedIndex - 3 : 0;\n      const lastIndex = (selectedIndex + 3) < this.pages.length ? selectedIndex + 3 : this.pages.length - 1;\n\n      \n      this.pagesToDisplay = [];\n\n      // 3 pages from left of selected page will be added.\n      for (let i = startIndex; ( i < selectedIndex && this.pagesToDisplay.length < 6); i++) {\n        this.pagesToDisplay.push(this.pages[i]);\n      }\n\n      // 3 pages from right of selected page will be added including selected page\n      for (let i = selectedIndex; (i <= lastIndex && this.pagesToDisplay.length < 6); i++) {\n        this.pagesToDisplay.push(this.pages[i]);\n      }\n\n      // if rightmost page is last page, then add it only if there are less than 6 pages to show\n      if (lastIndex === this.pages.length - 1) {\n        for(let i = startIndex - 1; (Boolean(this.pages[i]) && (this.pagesToDisplay.length < 6)); i--) {\n          this.pagesToDisplay.unshift(this.pages[i]);\n        }\n      }\n\n      // if leftmost page is first page, then add it only if there are less than 6 pages to show\n      if (startIndex === 0) {\n        for (let i = lastIndex; (Boolean(this.pages[i]) && this.pagesToDisplay.length < 6 ); i++) {\n          this.pagesToDisplay.push(this.pages[i]);\n        }\n      }\n    } else {\n      this.pagesToDisplay = this.pages.length > 6 ? [...this.pages.slice(0, 6)] : [...this.pages];\n    }\n  }\n}\n","<div class=\"page-control-container\">\n  @for (page of pagesToDisplay; track page?.title) {\n    <span class=\"page-control-dot\" (click)=\"selectedPage(page)\" [ngClass]=\"{'selected-dot': page?.selected}\"></span>\n  }\n</div>","import { Component, Input } from '@angular/core';\n\n@Component({\n  selector: 'asset-previous-icon',\n  standalone: true,\n  imports: [],\n  templateUrl: './previous-icon.component.svg',\n})\nexport class PreviousIconAsset {\n  @Input() height = 24;\n  @Input() width = 24;\n  @Input() fill = '#000';\n}\n","<svg xmlns=\"http://www.w3.org/2000/svg\" [attr.width]=\"width\" [attr.height]=\"height\" [attr.fill]=\"fill\" class=\"bi bi-chevron-left\" viewBox=\"0 0 16 16\">\n  <path fill-rule=\"evenodd\" d=\"M11.354 1.646a.5.5 0 0 1 0 .708L5.707 8l5.647 5.646a.5.5 0 0 1-.708.708l-6-6a.5.5 0 0 1 0-.708l6-6a.5.5 0 0 1 .708 0\"/>\n</svg>","import { Component, Input } from '@angular/core';\n\n@Component({\n  selector: 'asset-next-icon',\n  standalone: true,\n  imports: [],\n  templateUrl: './next-icon.component.svg',\n})\nexport class NextIconAsset {\n  @Input() fill = '#000';\n  @Input() width = 24;\n  @Input() height = 24;\n\n\n}\n","<svg xmlns=\"http://www.w3.org/2000/svg\" [attr.width]=\"width\" [attr.height]=\"height\" [attr.fill]=\"fill\" class=\"bi bi-chevron-right\" viewBox=\"0 0 16 16\">\n  <path fill-rule=\"evenodd\" d=\"M4.646 1.646a.5.5 0 0 1 .708 0l6 6a.5.5 0 0 1 0 .708l-6 6a.5.5 0 0 1-.708-.708L10.293 8 4.646 2.354a.5.5 0 0 1 0-.708\"/>\n</svg>","import { CommonModule } from '@angular/common';\nimport { Component, EventEmitter, Input, OnChanges, OnInit, Output, SimpleChanges } from '@angular/core';\nimport { PreviousIconAsset } from '../../../../assets/previous-icon/previous-icon.component';\nimport { NextIconAsset } from '../../../../assets/next-icon/next-icon.component';\n\n@Component({\n  selector: 'app-pagination',\n  standalone: true,\n  imports: [\n    CommonModule,\n    PreviousIconAsset,\n    NextIconAsset,\n  ],\n  templateUrl: './pagination.component.html',\n  styleUrl: './pagination.component.scss'\n})\nexport class PaginationComponent implements OnInit, OnChanges {\n  /** Count of total items to be paginated */\n  @Input() totalCount = 0;\n\n  /** Count of items per page of pagination */\n  @Input() entriesPerPage = 10;\n\n  @Input() currentPage = 1;\n\n  /** Emit page number to be selected */\n  @Output() pageNumber = new EventEmitter<number>();\n\n  /** Array of pages to be shown before ... */\n  showFrontPages: number[] = [];\n\n  /** Array of pages to be shown after ... */\n  showBackPages: number[] = [];\n\n  /** Selected page number */\n  selectedPage = 1;\n  /** Number of pages on which pagination has been applied */\n  totalPages = 0;\n\n  ngOnInit() {\n    this.calculateTotalPages();\n    this.initializePagination();\n  }\n\n  ngOnChanges(changes: SimpleChanges) {\n    if (changes['totalCount']) {\n      this.calculateTotalPages();\n      // Reset to page 1 if current page is beyond total pages\n      if (this.selectedPage > this.totalPages) {\n        this.selectedPage = 1;\n        this.pageNumber.emit(this.selectedPage);\n      }\n      this.initializePagination();\n    }\n    \n    if (changes['currentPage']) {\n      const newPage = changes['currentPage'].currentValue;\n      // Only update if the new page is valid\n      if (newPage >= 1 && newPage <= this.totalPages) {\n        this.selectedPage = newPage;\n        this.updatePagination();\n      } else if (newPage < 1 || newPage > this.totalPages) {\n        // If invalid page, reset to page 1\n        this.selectedPage = 1;\n        this.pageNumber.emit(this.selectedPage);\n      }\n    }\n  }\n  private calculateTotalPages() {\n    this.totalPages = Math.ceil(this.totalCount / this.entriesPerPage);\n    // Ensure we have at least 1 page\n    this.totalPages = Math.max(1, this.totalPages);\n  }\n\n  private initializePagination() {\n    // Clear existing arrays\n    this.showFrontPages = [];\n    this.showBackPages = [];\n\n    // Show first 5 pages or less\n    for (let i = 1; i <= this.totalPages && i <= 5; i++) {\n      this.showFrontPages.push(i);\n    }\n\n    // Show last few pages if total pages > 10\n    for (let i = 8; i <= this.totalPages &&  i <= 10; i++) {\n      this.showBackPages.push(i);\n    }\n  }\n\n  /** Handling selected page */\n  selectedNumber(pageNumber: number) {\n    if (pageNumber >= 1 && pageNumber <= this.totalPages) {\n      this.selectedPage = pageNumber;\n      this.pageNumber.emit(this.selectedPage);\n      this.updatePagination();\n    }\n  }\n\n  /** Update previous and next pages to be display */\n\n  updatePagination() {\n    // First ensure selected page is within bounds\n    if (this.selectedPage > this.totalPages) {\n      this.selectedPage = 1;\n      this.pageNumber.emit(this.selectedPage);\n    }\n\n    this.showFrontPages = [];\n    this.showBackPages = [];\n\n    if (this.totalPages <= 7) {\n      // If total pages are 7 or less, show all pages without ellipsis\n      for (let i = 1; i <= this.totalPages; i++) {\n        this.showFrontPages.push(i);\n      }\n    } else {\n      // Always show first page\n      this.showFrontPages.push(1);\n\n      if (this.selectedPage <= 4) {\n        // When near the start\n        for (let i = 2; i <= 5; i++) {\n          this.showFrontPages.push(i);\n        }\n        this.showBackPages.push(this.totalPages);\n      } else if (this.selectedPage >= this.totalPages - 3) {\n        // When near the end\n        this.showFrontPages.push(2);\n        for (let i = this.totalPages - 4; i <= this.totalPages; i++) {\n          this.showBackPages.push(i);\n        }\n      } else {\n        // In the middle\n        this.showFrontPages.push(2);\n        for (let i = this.selectedPage - 1; i <= this.selectedPage + 1; i++) {\n          this.showBackPages.push(i);\n        }\n        this.showBackPages.push(this.totalPages - 1);\n        this.showBackPages.push(this.totalPages);\n      }\n    }\n  }\n\n  /** Paginate to previous page */\n   previousPage() {\n    if (this.selectedPage - 1 > 0) {\n      this.selectedPage = this.selectedPage - 1;\n      this.pageNumber.emit(this.selectedPage);\n      this.updatePagination();\n    }\n  }\n\n  nextPage() {\n    if (this.selectedPage + 1 <= this.totalPages) {\n      this.selectedPage = this.selectedPage + 1;\n      this.pageNumber.emit(this.selectedPage);\n      this.updatePagination();\n    }\n  }\n\n  prefixPadNumber(value: number, length: number): string {\n    return `${value}`.padStart(length, '0');\n  }\n}\n","<div class=\"pagination-container\">\n  <!-- only show pagination if it has content -->\n  @if (totalCount > 0) {\n  <span\n    class=\"arrow justify-center align-baseline\"\n    [ngClass]=\"{'disabled-arrow': selectedPage === 1, 'enabled-arrow': selectedPage !== 1}\"\n    (click)=\"previousPage()\"\n    >\n    <asset-previous-icon fill=\"{{ selectedPage === 1 ? '#666' : '#fff'}}\" [width]=\"16\" [height]=\"16\" />\n  </span>\n  <!-- Show previous pages of selected page -->\n      @for (page of showFrontPages; track page) {\n      <span class=\"page-number\" [ngClass]=\"{'selected-page-number': selectedPage === page }\" \n        (click)=\"selectedNumber(page)\">{{ page }}</span>\n      }\n      <!-- So on  -->\n      @if(showBackPages.length > 0 && showBackPages[0] > showFrontPages[showFrontPages.length - 1] + 1) {\n        ...\n      }\n\n      <!-- Show next pages of selected page -->\n\n      @for (page of showBackPages; track page) {\n        <span class=\"page-number\" [ngClass]=\"{'selected-page-number': selectedPage === page }\" \n          (click)=\"selectedNumber(page)\">{{ page }}</span>\n        }\n      <span class=\"arrow\"\n        [ngClass]=\"{'disabled-arrow': selectedPage === totalPages, 'enabled-arrow': selectedPage !== totalPages}\"\n        (click)=\"nextPage()\"\n        >\n        <asset-next-icon fill=\"{{ selectedPage === totalPages ? '#666' : '#fff'}}\" [height]=\"16\" [width]=\"16\" />\n      </span>\n      }\n</div>","import { Component, ElementRef, Input, ViewChild } from '@angular/core';\n\n@Component({\n  selector: 'app-progress-bar',\n  standalone: true,\n  imports: [],\n  templateUrl: './progress-bar.component.html',\n  styleUrl: './progress-bar.component.scss'\n})\nexport class ProgressBarComponent {\n  /** Unique id to be assigned to progress bar to relate label with progress bar */\n  @Input() id = 'toggle' + Math.floor( Math.random() * 100000);\n\n  /** Maximum value progress can have */\n  @Input() max = 100;\n\n  /** Current value of progress bar */\n  @Input() value = 50;\n\n  /** Title of progress bar */\n  @Input() title = '';\n\n  /** height of progress bar */\n  @Input() height = '1rem';\n\n  /** Percentage of progress bar */\n  percentage = 0;\n\n  /** Reference to filled progress bar */\n  @ViewChild('filledProgressBar') filledProgressBar: ElementRef<Element> | null;\n\n  /** Reference to unfilled progress bar */\n  @ViewChild('progressBar') progressBar: ElementRef<Element> | null;\n\n  constructor() {\n    this.filledProgressBar = null;\n    this.progressBar = null;\n  }\n\n  ngOnInit() {\n    this.percentage = (this.value / this.max) * 100 > 0 ? (this.value / this.max) * 100 : 0;\n  }\n\n  ngAfterViewInit() {\n    this.filledProgressBar?.nativeElement.setAttribute('style', `height: ${this.height}; width: ${(this.value / this.max) * 100 }%`);\n    this.progressBar?.nativeElement.setAttribute('style', `height: ${this.height}`);\n  }\n\n}\n","<div class=\"progress-bar-container\">\n  <!-- Title to show with progress bar -->\n  <!-- <label class=\"progress-bar-title\" [for]=\"id\">{{title}}</label> -->\n  \n  <div class=\"progress-bar-context\">\n    <em class=\"progress-bar-percentage\">{{percentage}}%</em>\n    <div class=\"progress-bar\" #progressBar>\n      <div class=\"filled-progress-bar\" #filledProgressBar></div>\n    </div>\n  </div>\n</div>","import { Component, Input, EventEmitter, Output } from '@angular/core';\nimport { Option } from '../../../models/shared/radio-button';\nimport { NgClass } from '@angular/common';\n\n@Component({\n  selector: 'app-radio-buttons',\n  standalone: true,\n  imports: [NgClass],\n  templateUrl: './radio-buttons.component.html',\n  styleUrl: './radio-buttons.component.scss'\n})\nexport class RadioButtonsComponent {\n  /** Label of group of radio buttons */\n  // @Input() labelText = 'Select an option';\n\n  /** Assigning unique group name to input to relate with each other */\n  @Input() groupName = 'option_list' + Math.floor(Math.random() * 100000);\n\n  @Input() isDescription: boolean = false;\n\n  @Input() alignment: 'horizontal' | 'vertical' = 'horizontal';\n\n  /** Property to hold the default selected option value */\n  @Input() defaultSelectedValue: string | number | null = null;\n\n  /**\n   * Property to emit selected option value to parent comp\n   */\n  @Output() clickEvent = new EventEmitter();\n\n  /**\n   * Property to hold option values in object format\n   * Title is key used to display the property in dropdown\n   */\n  @Input() optionList: Option[] = [];\n\n  constructor() { }\n\n  selectedOption(option: Option) {\n    this.clickEvent.emit({ option });\n  }\n\n}\n","<div class=\"radio-group-container\">\n  <!-- @if (labelText) {\n    <p class=\"label\">{{labelText}}</p>\n  } -->\n  <div class=\"radio-group\" [ngClass]=\"{'flex-col': alignment === 'vertical'}\">\n    @for (option of optionList; track $index) {\n    <div class=\"radio-group-container\" >\n      <input type=\"radio\" [id]=\"option.title\" [name]=\"groupName\" [value]=\"option.value\" [disabled]=\"option.disabled\" \n        [checked]=\"option.value === defaultSelectedValue\"\n        (click)=\"selectedOption(option)\">\n      <div class=\"radio-content\">\n        <label [for]=\"option.title\">{{ option.title }}</label><br>\n        @if (isDescription && option.description) {\n          <p class=\"radio-discription\">{{ option.description }}</p>\n        }\n      </div>\n    </div>\n    }\n  </div>\n</div>","import { Component, EventEmitter, Input, Output } from '@angular/core';\nimport { Segment } from '../../../models/shared/segment';\nimport { CommonModule } from '@angular/common';\n\n@Component({\n  selector: 'app-segmented-picker',\n  standalone: true,\n  imports: [CommonModule],\n  templateUrl: './segmented-picker.component.html',\n  styleUrl: './segmented-picker.component.scss'\n})\nexport class SegmentedPickerComponent {\n\n  /** List of available segments */\n  @Input() segments: Segment[] = [];\n\n  /** Emit selected segment */\n  @Output() segment = new EventEmitter();\n\n  /** Handling selected segment */\n  selectedSegment(selectedSegment: Segment) {\n    this.segments = this.segments.map(segment => ({\n      ...segment,\n      selected: segment.title.toLowerCase() === selectedSegment.title.toLowerCase() ? true : false\n    }));\n    this.segment.emit({...selectedSegment, selected: true });\n  }\n}\n","<div class=\"segment-container\">\n  @for (segment of segments; track segment.title) {\n    <div (click)=\"selectedSegment(segment)\" class=\"segment\" [ngClass]=\"{'selected-segment': segment.selected}\">\n      {{segment.title}}\n    </div>\n  }\n</div>","import { Component, effect, ElementRef, EventEmitter, Input, Output, signal, ViewChild, WritableSignal, afterRender, inject, SimpleChanges } from '@angular/core';\nimport { ChevronDownAsset } from '../../../../assets/chevron-down/chevron-down.component';\nimport { Option } from '../../../models/shared/select';\nimport { SearchIconAsset } from '../../../../assets/search-icon/search-icon.component';\nimport { CommonModule } from '@angular/common';\nimport { ChevronUpAsset } from '../../../../assets/chevron-up/chevron-up.component';\nimport { CommonService } from '../../../services/common/common.service';\n\n@Component({\n  selector: 'app-select',\n  standalone: true,\n  imports: [ChevronDownAsset, CommonModule, ChevronUpAsset],\n  templateUrl: './select.component.html',\n  styleUrl: './select.component.scss'\n})\nexport class SelectComponent {\n  /** Whether dropdown should be shown initially */\n  @Input() showDropdown = false;\n\n  /** Label of dropdown */\n  @Input() label = 'Select';\n\n  /** Placeholder */\n  @Input() placeholder = 'Select..';\n\n  /** Control label position */\n  @Input() isUpLabel = false;\n\n  /** Want to show border or not */\n  @Input() showBorder = true;\n\n  /** Helper text  */\n  @Input() helperText = '';\n\n  /** Options of dropdown */\n  @Input() options: Option[] = [];\n\n  /** Want to disabled dropdown */\n  @Input() isDisabled: boolean = false;\n\n  /** Selected value from parent component */\n  @Input() selectedValue: any = null;\n\n  /** Error message to show */\n  @Input() errorMessage = '';\n\n  /** Whether the select has an error */\n  @Input() hasError = false;\n\n  /** Reference of options container */\n  @ViewChild('optionContainer') optionContainerRef: ElementRef | null;\n\n  /** Storing id of timeout to be clear for debouncing purpose */\n  searchDebounceTime = '';\n\n  /** Tracking whether user has selected item atleast once or not */\n  itemSelectedOnce = false;\n\n  /** Tracking color of chevron down shown at right side of dropdown */\n  chevronFill = '#999';\n\n  commonService: CommonService | null = null;\n\n  /** Track if initial value is set */\n  private initialValueSet = false;\n\n  /** Emitting selected option */\n  @Output('selectedOption') optionSelected = new EventEmitter();\n\n  constructor(private elementRef: ElementRef) {\n    this.optionContainerRef = null;\n    this.commonService = inject(CommonService);\n    this.chevronFill = this.commonService.getCSSVariablesValue('--on-secondary');\n  }\n\n  ngOnInit() {\n    // Add click outside listener\n    document.addEventListener('click', this.handleClickOutside.bind(this));\n\n    // Set initial value if provided\n    if (this.selectedValue && !this.initialValueSet) {\n      this.setSelectedValue(this.selectedValue);\n    }\n  }\n\n  ngOnDestroy() {\n    document.removeEventListener('click', this.handleClickOutside.bind(this));\n  }\n\n  ngOnChanges(changes: SimpleChanges) {\n    // Handle options changes\n    if (changes['options'] && changes['options'].currentValue) {\n    }\n\n    // Handle selected value changes\n    if (changes['selectedValue'] && changes['selectedValue'].currentValue) {\n      this.updateSelectedValue(changes['selectedValue'].currentValue);\n    }\n  }\n\n  private updateSelectedValue(value: any) {\n    const selectedOption = this.options.find(option => option.value === value);\n    if (selectedOption) {\n      this.label = selectedOption.title;\n      this.itemSelectedOnce = true;\n      this.chevronFill = '#000';\n    }\n  }\n\n  private setSelectedValue(value: any) {\n    const selectedOption = this.options.find(option => option.value === value);\n    if (selectedOption) {\n      this.label = `${selectedOption.startIcon ?? ''} ${selectedOption.title} ${selectedOption.endIcon ?? ''}`.trim();\n      this.itemSelectedOnce = true;\n      this.chevronFill = '#000';\n      this.initialValueSet = true;\n    }\n  }\n\n  /** Handling selected option */\n  selectedOption(option: Option) {\n    this.label = option.title;\n    this.showDropdown = false;\n    this.itemSelectedOnce = true;\n    this.chevronFill = '#000';\n    this.optionSelected.emit(option);\n  }\n\n  toggleDropdown() {\n    if (!this.isDisabled) {\n      this.showDropdown = !this.showDropdown;\n    }\n  }\n\n  private handleClickOutside(event: Event) {\n    if (!this.elementRef.nativeElement.contains(event.target)) {\n      this.showDropdown = false;\n    }\n  }\n}\n","<div class=\"select-container\" [class.disabled]=\"isDisabled\">\n  <div \n    class=\"select\" \n    [ngClass]=\"{\n      'select-without-option': !itemSelectedOnce,\n      'hide-border': !showBorder,\n      'error-select': hasError\n    }\" \n    (click)=\"!isDisabled && toggleDropdown()\">\n    \n    <div class=\"select-content\">\n      <!-- Uplabel -->\n      @if (isUpLabel) {\n        <!-- Show placeholder as uplabel when isLabelUp is true -->\n        <span \n          class=\"up-label\" \n          [ngClass]=\"{\n            'move-up': showDropdown || itemSelectedOnce,\n            'option-selected': itemSelectedOnce\n          }\">\n          {{placeholder}}\n        </span>\n      } @else {\n        <!-- Show placeholder only when no option is selected -->\n        @if (!itemSelectedOnce) {\n          <span class=\"up-label default-position text-truncate\">\n            {{placeholder}}\n          </span>\n        }\n      }\n      \n      <!-- Selected Value -->\n      @if (itemSelectedOnce) {\n        <span class=\"selected-value text-truncate\">{{label}}</span>\n      }\n    </div>\n\n    <!-- Chevron Icon -->\n    <div class=\"chevron-container\">\n      @if (!showDropdown) {\n        <asset-chevron-down [height]=\"16\" [width]=\"16\" [fill]=\"chevronFill\" />\n      } @else {\n        <asset-chevron-up [height]=\"16\" [width]=\"16\" [fill]=\"chevronFill\" />\n      }\n    </div>\n  </div>\n\n  <!-- Options Dropdown -->\n  <div \n    class=\"option-container\" \n    [class.show]=\"showDropdown\"\n    #optionContainer>\n    <ng-content select=\"options-top-content\" />\n    \n    @for(option of options; track option.title) {\n      <div \n        class=\"option\" \n        (click)=\"selectedOption(option)\"\n        [class.selected]=\"option.title === label\">\n        <div>\n          @if(option.startIcon) {\n            <span class=\"option-start-icon\">{{option.startIcon}}</span>\n          }\n          <span class=\"text-truncate\">{{option.title}}</span>\n        </div>\n        @if(option.endIcon) {\n          <span class=\"option-end-icon\">{{option.endIcon}}</span>\n        }\n      </div>\n    }\n  </div>\n\n   <!-- Helper/Error Text Container -->\n   <div class=\"helper-text-container\">\n    @if(helperText && !errorMessage) {\n      <small class=\"helper-text text-truncate\">{{helperText}}</small>\n    }\n\n    @if (errorMessage) {\n      <small class=\"error-message text-truncate\">{{errorMessage}}</small>\n    }\n  </div>\n</div>","import { CUSTOM_ELEMENTS_SCHEMA, Component, ElementRef, NO_ERRORS_SCHEMA, ViewChild, afterRender } from '@angular/core';\nimport { SelectComponent } from \"../../select.component\";\n\n@Component({\n  selector: 'app-legacy-select',\n  standalone: true,\n  imports: [SelectComponent],\n  schemas: [NO_ERRORS_SCHEMA, CUSTOM_ELEMENTS_SCHEMA],\n  templateUrl: './legacy-select.component.html',\n  styleUrl: './legacy-select.component.scss'\n})\nexport class LegacySelectComponent extends SelectComponent {\n\n  @ViewChild('selectComponent') selectComponentRef: any | null = null;\n\n  constructor(private element: ElementRef) {\n    super(element);\n    afterRender({\n      mixedReadWrite: () => {\n        if (this.selectComponentRef?.optionContainerRef) {\n          let classes = this.selectComponentRef.optionContainerRef.nativeElement.getAttribute('class');\n          classes = classes.includes('option-old-container') ? classes : `${classes} option-old-container`\n          this.selectComponentRef.optionContainerRef.nativeElement.setAttribute('class', classes);\n        }\n      }\n    });\n  }\n}\n","<div class=\"legacy-select-container\">\n  <app-select [showDropdown]=\"showDropdown\" [placeholder]=\"placeholder\" [isUpLabel]=\"isUpLabel\" [showBorder]=\"showBorder\" [label]=\"label\" [helperText]=\"helperText\"\n    [options]=\"options\" [isDisabled]=\"isDisabled\" [selectedValue]=\"selectedValue\" [hasError]=\"hasError\"\n    [errorMessage]=\"errorMessage\" (selectedOption)=\"selectedOption($event)\" #selectComponent\n  >\n    <options-top-content>\n      <ng-content select=\"options-top-content\" />\n    </options-top-content>\n  </app-select>\n</div>","import { Component, Input } from '@angular/core';\n\n@Component({\n  selector: 'asset-search-icon',\n  standalone: true,\n  imports: [],\n  templateUrl: './search-icon.component.svg',\n})\nexport class SearchIconAsset {\n  @Input() fill = '#000';\n  @Input() height = 24;\n  @Input() width = 24;\n\n}\n","<svg id=\"search_black_24dp_15_\" data-name=\"search-icon\" xmlns=\"http://www.w3.org/2000/svg\" [attr.width]=\"width\" [attr.height]=\"height\" viewBox=\"0 0 20 20\">\n  <path id=\"Path_9584\" data-name=\"Path 9584\" d=\"M0,0H24V24H0Z\" fill=\"none\"/>\n  <path id=\"Path_9585\" data-name=\"Path 9585\" d=\"M15.5,14h-.79l-.28-.27a6.518,6.518,0,1,0-.7.7l.27.28v.79l4.25,4.25a1.054,1.054,0,0,0,1.49-1.49Zm-6,0A4.5,4.5,0,1,1,14,9.5,4.494,4.494,0,0,1,9.5,14Z\" [attr.fill]=\"fill\"/>\n</svg>\n","import { Component, CUSTOM_ELEMENTS_SCHEMA, ElementRef, NO_ERRORS_SCHEMA, signal, WritableSignal } from '@angular/core';\nimport { LegacySelectComponent } from \"../../legacy-select.component\";\nimport { SearchIconAsset } from \"../../../../../../../../assets/search-icon/search-icon.component\";\nimport { Option } from '../../../../../../../models/shared/select';\n\n@Component({\n  selector: 'app-legacy-select-with-search',\n  standalone: true,\n  imports: [LegacySelectComponent, SearchIconAsset],\n  schemas: [NO_ERRORS_SCHEMA, CUSTOM_ELEMENTS_SCHEMA],\n  templateUrl: './legacy-select-with-search.component.html',\n  styleUrl: './legacy-select-with-search.component.scss'\n})\nexport class LegacySelectWithSearchComponent extends LegacySelectComponent {\n\n  optionsToShow: Option[] = [];\n\n  override ngOnInit(): void {\n    super.ngOnInit();\n    this.optionsToShow = this.options;\n  }\n\n  /** Handling searching of options in dropdown */\n  searchOptions(event: { target: { value: string } } | Event) {\n    const textToSearch = (event.target as { value: string })?.value?.toLowerCase();\n    if (this.searchDebounceTime) {\n      clearTimeout(+this.searchDebounceTime);\n      this.search(textToSearch);\n    } else {\n      this.search(textToSearch);\n    }\n  }\n\n  /** Search dropdown with debouncing */\n  search(textToSearch: string) {\n    this.searchDebounceTime = `${setTimeout(() => {\n      this.optionsToShow = this.options.filter(option => option.title.toLowerCase().includes(textToSearch));\n    }, 300)}`;\n  }\n}\n","<div class=\"legacy-select-with-search-container\">\n  <app-legacy-select [showDropdown]=\"showDropdown\" [showBorder]=\"showBorder\" [placeholder]=\"placeholder\" [isUpLabel]=\"isUpLabel\" [label]=\"label\" [helperText]=\"helperText\"\n    [options]=\"optionsToShow\" [isDisabled]=\"isDisabled\" [selectedValue]=\"selectedValue\" [hasError]=\"hasError\"\n    [errorMessage]=\"errorMessage\" (selectedOption)=\"selectedOption($event)\">\n      <options-top-content>\n        <div class=\"search-bar\">\n          <div class=\"search-icon\"><asset-search-icon [height]=\"20\" [width]=\"20\" /></div>\n          <input class=\"search-input\" placeholder=\"Search here\" (keyup)=\"searchOptions($event)\" />\n        </div>\n      </options-top-content>\n  </app-legacy-select>\n</div>","import { Component, CUSTOM_ELEMENTS_SCHEMA, NO_ERRORS_SCHEMA } from '@angular/core';\nimport { SelectComponent } from '../../select.component';\nimport { Option } from '../../../../../models/shared/select';\nimport { SearchIconAsset } from \"../../../../../../assets/search-icon/search-icon.component\";\n\n@Component({\n  selector: 'app-select-with-search',\n  standalone: true,\n  imports: [SearchIconAsset, SelectComponent],\n  schemas: [NO_ERRORS_SCHEMA, CUSTOM_ELEMENTS_SCHEMA],\n  templateUrl: './select-with-search.component.html',\n  styleUrl: './select-with-search.component.scss'\n})\nexport class SelectWithSearchComponent extends SelectComponent {\n  optionsToShow: Option[] = [];\n\n  override ngOnInit(): void {\n    super.ngOnInit();\n    this.optionsToShow = this.options;\n  }\n\n  /** Handling searching of options in dropdown */\n  searchOptions(event: { target: { value: string } } | Event) {\n    const textToSearch = (event.target as { value: string })?.value?.toLowerCase();\n    if (this.searchDebounceTime) {\n      clearTimeout(+this.searchDebounceTime);\n      this.search(textToSearch);\n    } else {\n      this.search(textToSearch);\n    }\n  }\n\n  /** Search dropdown with debouncing */\n  search(textToSearch: string) {\n    this.searchDebounceTime = `${setTimeout(() => {\n      this.optionsToShow = this.options.filter(option => option.title.toLowerCase().includes(textToSearch));\n    }, 300)}`;\n  }\n}\n","<div class=\"select-with-search-container\">\n  <app-select [showDropdown]=\"showDropdown\" [label]=\"label\" [placeholder]=\"placeholder\" [isUpLabel]=\"isUpLabel\" [showBorder]=\"showBorder\" [helperText]=\"helperText\" [options]=\"optionsToShow\"\n    [isDisabled]=\"isDisabled\" [selectedValue]=\"selectedValue\" [hasError]=\"hasError\"\n    [errorMessage]=\"errorMessage\" (selectedOption)=\"selectedOption($event)\">\n    <options-top-content>\n      <div class=\"search-bar\">\n        <div class=\"search-icon\"><asset-search-icon [height]=\"20\" [width]=\"20\" /></div>\n        <input class=\"search-input\" placeholder=\"Search here\" (keyup)=\"searchOptions($event)\" />\n      </div>\n    </options-top-content>\n  </app-select>\n</div>","import { Component, ElementRef, Input, ViewChild } from '@angular/core';\nimport { InfoAsset } from '../../../../assets/info/info.component';\nimport { CommonModule } from '@angular/common';\nimport { ElementBoundary } from '../../../models/shared/tooltip';\nimport { CommonService } from '../../../services/common/common.service';\n\n@Component({\n  selector: 'app-tooltip',\n  standalone: true,\n  imports: [CommonModule],\n  templateUrl: './tooltip.component.html',\n  styleUrl: './tooltip.component.scss'\n})\nexport class TooltipComponent {\n\n  /** Whether info icon should be shown or not */\n  @Input() showIcon = true;\n\n  /** How span should be styled when info icon shouldn't be shown */\n  @Input() iconStyle = '';\n\n  /** Whether info text container should be shown or not */\n  showInfo = false;\n\n  /** Select theme of info container */\n  @Input() theme: 'dark' | 'light' = 'light';\n\n  /** Time out id to be stored to hide info container */\n  timeoutId = '0';\n\n  /** Specify info container position respective to icon */\n  @Input() infoPosition = 'down';\n\n  /** Reference of info container */\n  @ViewChild('infoContainer') infoContainer: ElementRef | null = null;\n\n  /** Reference of span without icon */\n  @ViewChild('nonIconSpan') nonIconSpan: ElementRef | null = null;\n\n  /** Color of info icon */\n  iconColor = '#999';\n\n  constructor(private commonService: CommonService) {\n    this.iconColor = this.commonService.getCSSVariablesValue('--on-secondary');\n  }\n\n  ngAfterViewInit() {\n    if (this.nonIconSpan) {\n      this.nonIconSpan.nativeElement.setAttribute('style', this.iconStyle);\n    }\n  }\n\n  /** Handle info container's show functionality; if required change position specified in input */\n  showInformation() {\n    const boundaries = this.infoContainer?.nativeElement.getBoundingClientRect();\n    boundaries && this.adjustPosition(boundaries);\n    this.showInfo = true;\n    this.timeoutId && clearTimeout(+this.timeoutId);\n  }\n\n  /** Hanlde info container's hide functionality */\n  hideInformation() {\n    this.timeoutId = `${setTimeout(() => {\n      this.showInfo = false;\n    }, 500)}`;\n  }\n\n  /**\n   * @param boundaries: Boundaries of info conatiner\n   * Adjust info container according to window screen.\n   */\n  adjustPosition(boundaries: ElementBoundary) {\n    const maxYAxis = window.innerHeight;\n    const maxXAxis = window.innerWidth;\n\n    if (boundaries.x < 0) {\n      this.infoPosition = 'end';\n    } else if (boundaries.x > maxXAxis) {\n      this.infoPosition = 'start';\n    } else if (boundaries.y < 0) {\n      this.infoPosition = 'down';\n    } else if (boundaries.y > maxYAxis) {\n      this.infoPosition = 'up';\n    }\n  }\n}\n","<div\n  class=\"tooltip-container\"\n>\n  <!-- Tooltip icon -->\n  <div class=\"info-icon info-icon-padding\" (mouseover)=\"showInformation()\" (mouseleave)=\"hideInformation()\">\n    @if (showIcon) {\n      <!-- <asset-info [height]=\"16\" [width]=\"16\" [fill]=\"iconColor\" /> -->\n       <ng-content select=\"icon\" />\n    } @else {\n      <span #nonIconSpan>&nbsp;</span>\n    }\n  </div>\n  @if(showInfo === true ) {\n    <!-- Info text container to show tool tip content -->\n    <div\n    class=\"info-container\"\n    (mouseover)=\"showInformation()\"\n    (mouseleave)=\"hideInformation()\"\n    [ngClass]=\"{\n      'column-reverse': infoPosition === 'down',\n      'column': infoPosition === 'up',\n      'row': infoPosition === 'start',\n      'row-reverse': infoPosition === 'end',\n    }\"\n    #infoContainer>\n      <div class=\"info\" [ngClass]=\"{\n        'light': theme === 'light',\n        'dark': theme === 'dark'\n      }\">\n        <ng-content />\n      </div>\n      <div [ngClass]=\"{\n        'triangle-up': infoPosition === 'down',\n        'triangle-down': infoPosition === 'up',\n        'triangle-right': infoPosition === 'start',\n        'triangle-left': infoPosition === 'end',\n        'triangle-up-dark': infoPosition === 'down' && theme === 'dark',\n        'triangle-down-dark': infoPosition === 'up' && theme === 'dark',\n        'triangle-right-dark': infoPosition === 'start' && theme === 'dark',\n        'triangle-left-dark': infoPosition === 'end' && theme === 'dark',\n        \n      }\">\n      </div>\n    </div>\n  }\n</div>","import { Component, CUSTOM_ELEMENTS_SCHEMA, ElementRef, Input, ViewChild } from '@angular/core';\nimport { TooltipComponent } from '../tooltip/tooltip.component';\n\n@Component({\n  selector: 'app-slider',\n  standalone: true,\n  imports: [TooltipComponent],\n  schemas: [CUSTOM_ELEMENTS_SCHEMA],\n  templateUrl: './slider.component.html',\n  styleUrl: './slider.component.scss'\n})\nexport class SliderComponent {\n\n  @Input() id = 'toggle' + Math.floor(Math.random() * 100000);\n  @Input() max = 100;\n  @Input() value = 50;\n  @Input() showPercentage = true;\n  @Input() title = '';\n  @Input() height = '1rem';\n\n  percentage = 0;\n  dragSlider = false;\n  roundOffPercentage = 0;\n\n  @ViewChild('filledSlider') filledSlider: ElementRef<Element> | null;\n  @ViewChild('sliderBar') sliderBar: ElementRef<Element> | null;\n  @ViewChild('slider') slider: ElementRef<Element> | null;\n\n  constructor() {\n    this.filledSlider = null;\n    this.sliderBar = null;\n    this.slider = null;\n  }\n\n  ngOnInit() {\n    this.percentage = (this.value / this.max) * 100 > 0 ? (this.value / this.max) * 100 : 0;\n    this.roundOffPercentage = Math.round(this.percentage);\n  }\n\n  ngAfterViewInit() {\n    this.filledSlider?.nativeElement.setAttribute('style', `height: ${this.height}; width: ${this.percentage}%`);\n    this.sliderBar?.nativeElement.setAttribute('style', `height: ${this.height}`);\n    this.slider?.nativeElement.setAttribute(\n      'style', \n      `left: ${this.percentage - 1.75}%; height:calc(${this.height} + 1rem); width: calc(${this.height} + 1rem)`\n    );\n  }\n\n  refillSlider(event: Event & { clientX: number }) {\n    event.preventDefault();\n    const boundaries = this.sliderBar?.nativeElement.getBoundingClientRect();\n    this.percentage = Math.min(((event.clientX - ( boundaries?.left || 0)) / (boundaries?.width ?? 1)) * 100, 100);\n    this.percentage = this.percentage < 0 ? 0 : this.percentage;\n    this.roundOffPercentage = Math.round(this.percentage);\n    this.filledSlider?.nativeElement.setAttribute('style', `height: ${this.height}; width: ${\n      this.percentage\n    }%`);\n    this.slider?.nativeElement.setAttribute('style', \n      `left: ${this.percentage - 1.75}%; height:calc(${this.height} + 1rem); width: calc(${this.height} + 1rem)`);\n  }\n\n  startDrag(event: Event & { clientX: number }) {\n    this.dragSlider = true;\n  }\n\n  endDrag(event: Event & { clientX: number }) {\n    this.dragSlider = false;\n  }\n\n  dragging(event: Event & { clientX: number }) {\n    if (this.dragSlider) {\n      this.refillSlider(event);\n    }\n  }\n}\n","<div class=\"slider-container\"\n(mousemove)=\"dragging($event)\"\n(mouseleave)=\"endDrag($event)\">\n  <!-- Title of slider -->\n  <label class=\"slider-title\" [for]=\"id\">{{title}}</label>\n  \n  <div class=\"slider-context\">\n    <ng-content select=\"left-label\" />\n    <div class=\"slider-bar\" #sliderBar (click)=\"refillSlider($event)\">\n      <div>\n        <span class=\"slider\" #slider\n        (mousedown)=\"startDrag($event)\"\n        (mouseup)=\"endDrag($event)\">\n          <app-tooltip [showIcon]=\"false\" iconStyle=\"height: 2rem; width: 2rem; display: block\">\n            {{ roundOffPercentage }}\n          </app-tooltip>\n        </span>\n      </div>\n      <div class=\"filled-slider-bar\" #filledSlider></div>\n    </div>\n    <ng-content select=\"right-label\"/>\n  </div>\n</div>","import { Component, Input } from '@angular/core';\n\n@Component({\n  selector: 'app-spacer',\n  standalone: true,\n  imports: [],\n  templateUrl: './spacer.component.html',\n  styleUrl: './spacer.component.scss'\n})\nexport class SpacerComponent {\n  @Input() width = '100%';\n  @Input() height = '100%';\n}\n","<div [style.width]=\"width\" [style.height]=\"height\" class=\"spacer\"></div>","import { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, ComponentRef, ElementRef, EventEmitter, Input, NO_ERRORS_SCHEMA, Output, QueryList, ViewChild, ViewChildren, ViewContainerRef, HostListener, SimpleChange, OnChanges, SimpleChanges, OnInit } from '@angular/core';\nimport { CheckboxComponent } from '../checkbox/checkbox.component';\nimport { CheckboxEvent, CheckboxType } from '../../../models/shared/check-box';\nimport { ContextMenu } from '../../../models/shared/context-menu';\nimport { ContextMenuComponent } from '../context-menu/context-menu.component';\nimport { ContextMenuClickEvent, InternalTableHeader, TableBody, TableHeader, TableInternalBody } from '../../../models/shared/table';\nimport { TooltipComponent } from '../tooltip/tooltip.component';\n\n@Component({\n  selector: 'app-table',\n  standalone: true,\n  imports: [CommonModule, CheckboxComponent, ContextMenuComponent, TooltipComponent],\n  schemas: [NO_ERRORS_SCHEMA],\n  changeDetection: ChangeDetectionStrategy.Default,\n  templateUrl: './table.component.html',\n  styleUrl: './table.component.scss'\n})\nexport class TableComponent implements OnInit, OnChanges {\n  /** Caption to be shown in table */\n  @Input() caption = '';\n\n  /** Whether to show a column has been selected or not */\n  @Input() showSelectedColumn = true;\n\n  /** Index at which ations will be placed in table */\n  @Input() showActionsAt = -1;\n\n  /** Whether checkboxes should be shown or not */\n  @Input() showCheckboxes = true;\n\n  /** Reference to header checkbox */\n  @ViewChild('headerCheckbox') headerCheckbox: ComponentRef<CheckboxComponent> | null = null;\n\n  /** Reference to header checkbox */\n  // @ViewChild('dynamicContainer') dynamicContainerRef: TemplateRef<any> | null = null;\n  @ViewChildren('dynamicContainer', { read: ViewContainerRef }) dynamicContainerRef: QueryList<ViewContainerRef> | null = null;\n\n  /** Actions to be specified in table */\n  @Input() actions = [{\n    icon: 'inbox',\n    title: 'Edit',\n    style: 'background-color: yellow;'\n  }, {\n    icon: 'home',\n    title: 'Delete',\n    style: ''\n  }, {\n    icon: 'inbox',\n    title: 'Sync',\n    style: '',\n  }];\n\n  /** Headers to be shown in table */\n  @Input() tableHeaders: InternalTableHeader[] | TableHeader[] = [];\n\n  /** Table content */\n  @Input() tableBody: TableInternalBody[] | TableBody[] = [];\n\n  /** Whether to show context menu or not */\n  @Input() contextMenu: Boolean = false\n\n  /** Context menu data */\n  @Input() contextMenuData: ContextMenu[] = []\n\n  /** Emit value searched in table */\n  @Output() searchValue = new EventEmitter();\n\n  /** Propagate event of dynamically rendered component in cell of table to up to parent component of table */\n  @Output() value = new EventEmitter();\n\n  /** Emit event when context menu item is clicked */\n  @Output() contextMenuItemClick = new EventEmitter<ContextMenuClickEvent>();\n\n  /** Emit event when row is clicked */\n  @Output() rowClicked: EventEmitter<any> = new EventEmitter<any>();\n\n  @Output() allItemsSelected: EventEmitter<any> = new EventEmitter<any>();\n  @Output() rowRightClicked: EventEmitter<any> = new EventEmitter<any>();\n\n  /** Checkbox if shown, header checkbox can have one of following */\n  headerCheckboxValue: CheckboxType = 'not-checked';\n\n  menuWidth: number = 0; // Store the menu width\n\n  /** Column that has been selected; only if showSelectedColumn is true */\n  selectedColumnId = '';\n\n  /** screenX & screenY for store the mouse position when context menu is open */\n  screenX = 0;\n  screenY = 0;\n\n  /**\n   * When checkbox should be shown, then this will keep track of number of selected items.\n   * This property helps for hovering checkbox visibility feature.\n   */\n  totalSelectedItem = 0;\n\n  readonly nonClickableElements = [\n    'app-checkbox',\n    'select',\n    'input',\n    'button',\n    '.actions',\n    '[contenteditable=\"true\"]'\n  ];\n\n  /** Context menu elements store the reference of all the rows of table */\n  @ViewChildren('contextMenuElement') contextMenuElement!: QueryList<ElementRef>;\n\n  /** Table body elements store the reference of table body*/\n  @ViewChild('tableBodyElement') tableBodyElement!: ElementRef;\n\n  ngOnInit() {\n    this.addActions();\n    this.showCheckboxes && this.configureCheckboxes();\n  }\n\n  ngOnChanges(changes: SimpleChanges) {\n  }\n\n  ngAfterViewChecked() {\n    let counter = 0;\n    this.tableBody.forEach(row => {\n      this.tableHeaders.forEach(header => {\n        if (header.component && this.dynamicContainerRef && this.dynamicContainerRef.get(counter) && !this.dynamicContainerRef.get(counter)?.length) {\n          const component = this.dynamicContainerRef.get(counter)?.createComponent(header.component);\n          component?.location.nativeElement.setAttribute('data-dynamic-component', header.id);\n          const combinedInputs = { ...header.inputs, ...row[header.id] as object };\n          Object.entries({ ...combinedInputs }).forEach(value => {\n            component?.setInput(value[0], value[1]);\n          });\n\n          header.outputEvents?.forEach(eventToSubscribe => {\n            component?.instance[`${eventToSubscribe}`].subscribe((event: any) => {\n              this.value.emit({ event: event, row, eventName: eventToSubscribe });\n            });\n          });\n\n          counter += 1;\n        }\n      });\n    });\n\n    // Initialize menu width observer\n    this.contextMenuElement.changes.subscribe(() => {\n      // When context menu elements change, update the width\n      if (this.contextMenuElement.length > 0) {\n        const activeMenuIndex = this.tableBody.findIndex(row => row['showContextMenu']);\n        if (activeMenuIndex !== -1) {\n          this.menuWidth = this.contextMenuElement.toArray()[0].nativeElement.offsetWidth;\n        }\n      }\n    });\n  }\n\n  private renderDynamicComponents() {\n    // Ensure we have both tableBody and dynamicContainerRef\n    if (!this.tableBody || !this.dynamicContainerRef) return;\n\n    // Reset counter for dynamic component rendering\n    let counter = 0;\n\n    // Clear existing dynamic containers\n    this.dynamicContainerRef.forEach(containerRef => {\n      containerRef.clear();\n    });\n\n    this.tableBody.forEach(row => {\n      this.tableHeaders.forEach(header => {\n        if (header.component && this.dynamicContainerRef) {\n          // Get the correct container reference\n          const containerRef = this.dynamicContainerRef.get(counter);\n\n          if (containerRef) {\n            // Create the component\n            const component = containerRef.createComponent(header.component);\n\n            // Set data attribute for identification\n            component.location.nativeElement.setAttribute('data-dynamic-component', header.id);\n\n            // Combine inputs from header and row\n            const combinedInputs = {\n              ...header.inputs,\n              ...(row[header.id] as object)\n            };\n\n            // Set inputs\n            Object.entries(combinedInputs).forEach(([key, value]) => {\n              component.setInput(key, value);\n            });\n\n            // Subscribe to output events\n            header.outputEvents?.forEach(eventToSubscribe => {\n              component.instance[`${eventToSubscribe}`].subscribe((event: any) => {\n                this.value.emit({ event, row, eventName: eventToSubscribe });\n              });\n            });\n\n            counter += 1;\n          }\n        }\n      });\n    });\n  }\n\n  hasTooltip(header: any): any {\n    return !!(header as any).tooltip;\n  }\n\n  // New method to get tooltip details\n  getTooltipDetails(header: any) {\n    const tooltipDetails = (header as any).tooltip;\n    return tooltipDetails || {};\n  }\n\n  /** Handle selected column of table */\n  selectedColumn(id: string) {\n    this.selectedColumnId = id;\n  }\n\n  /** Handle actions placement in table */\n  addActions() {\n    if (this.showActionsAt >= 0) {\n      const staleHeaders = [...this.tableHeaders]\n      this.tableHeaders = [...staleHeaders.slice(0, this.showActionsAt)];\n      (this.tableHeaders as InternalTableHeader[]).push({\n        id: 'actions',\n        title: 'Actions',\n        type: 'action',\n        showSelectedColumn: false\n      });\n\n      this.tableHeaders = [...this.tableHeaders, ...staleHeaders.slice(this.showActionsAt)];\n    }\n  }\n\n  /** Initializing checkboxes */\n  configureCheckboxes() {\n    this.tableBody = this.tableBody.map(item => ({\n      ...item,\n      checkboxValue: 'not-checked',\n      showCheckbox: false,\n    }));\n  }\n\n  /** Handling row selection in table */\n  selectedRow(event: CheckboxEvent, index: number) {\n    this.tableBody[index] = {\n      ...this.tableBody[index],\n      checkboxValue: event.value,\n    };\n\n    this.headerCheckboxValue = event.value;\n    this.totalSelectedItem = 0;\n\n    for (let item of this.tableBody) {\n      if (item.checkboxValue !== event.value) {\n        this.headerCheckboxValue = 'indeterminate';\n      }\n\n      if (item.checkboxValue === 'checked') {\n        this.totalSelectedItem += 1;\n      }\n    }\n\n    if (this.totalSelectedItem > 0) {\n      this.tableBody = this.tableBody.map(item => ({\n        ...item,\n        showCheckbox: true,\n      }))\n    } else {\n      this.hideCheckboxesZeroSelection();\n    }\n\n    this.rowClicked.emit(this.tableBody[index]);\n  }\n\n  /** Handling header checkbox and selection/non-selection of all rows of table */\n  headerCheckboxChange(event: CheckboxEvent) {\n    this.tableBody = this.tableBody.map(item => ({\n      ...item,\n      checkboxValue: event.value,\n    }));\n\n    this.allItemsSelected.emit(event.value);\n\n    this.headerCheckboxValue = event.value;\n\n    this.totalSelectedItem = event.value === 'checked' ? this.tableBody.length : 0;\n    if (this.totalSelectedItem <= 0) {\n      this.hideCheckboxesZeroSelection();\n    }\n  }\n\n  /** Handling searching in table */\n  handleSearch(event: Event) {\n    this.searchValue.emit(event);\n  }\n\n  rowHovered(index: number) {\n    if (this.totalSelectedItem <= 0) {\n      this.tableBody = this.tableBody.map((item, itemIndex) => ({\n        ...item,\n        showCheckbox: index === itemIndex ? true : false,\n      }));\n    } else {\n      this.tableBody = this.tableBody.map(item => ({\n        ...item,\n        showCheckbox: true,\n      }))\n    }\n  }\n\n  hideCheckboxesZeroSelection() {\n    if (this.totalSelectedItem <= 0) {\n      this.tableBody = this.tableBody.map(item => ({\n        ...item,\n        showCheckbox: false,\n      }));\n    }\n  }\n\n  validateInputs(input: string | boolean | object) {\n    const inputType = typeof input;\n    return inputType !== 'string';\n  }\n\n  createDynamicComponentInput(header: TableHeader, row: TableBody) {\n    return {\n      ...header.inputs,\n      ...(row[header.id] as object),\n\n    };\n  }\n\n  onContextMenuItemClick(item: ContextMenu, row: TableBody | TableInternalBody) {\n    this.contextMenuItemClick.emit({ item, row });\n  }\n\n  /**\n  * Handles the display and positioning of the context menu when right-clicking on a row.\n  *\n  * @param {MouseEvent} event - The mouse event triggered by right-clicking on a row.\n  * @param {number} index - The index of the row that was right-clicked.\n  * @returns {void} This function does not return a value; it sets the context menu's display properties and position.\n  */\n  handleMenu(event: MouseEvent, index: number): void {\n    // Prevent the default right-click context menu from appearing\n    event.preventDefault();\n\n    // Close any open context menus and only show the one for the clicked row\n    this.tableBody = this.tableBody.map((item, itemIndex) => ({\n      ...item,\n      // Set showContextMenu to true only for the clicked index, otherwise false\n      showContextMenu: index === itemIndex ? true : false,\n    }));\n  }\n\n  onRowClick(event: Event, row: any) {\n    this.rowRightClicked.emit(row);\n    event.preventDefault();\n    event.stopPropagation();\n\n    // Toggle context menu for clicked row\n    row.showContextMenu = true;\n\n    // Update screen coordinates for context menu positioning\n    const mouseEvent = event as MouseEvent;\n    this.screenX = mouseEvent.layerX;\n    this.screenY = mouseEvent.layerY;\n  }\n\n  /**\n  * Checks if the clicked element or its parents match any of the non-clickable elements\n  */\n  isNonClickableElement(element: HTMLElement): boolean {\n    // Check if the element or any of its parents match the non-clickable selectors\n    return this.nonClickableElements.some(selector => {\n      return element.matches(selector) || element.closest(selector) !== null;\n    });\n  }\n\n  onRowLeftClick(event: MouseEvent, row: any): void {\n    const target = event.target as HTMLElement;\n\n    // Check if the clicked element should prevent row selection\n    if (this.isNonClickableElement(target)) {\n      // Don't emit row selection if clicking on a non-clickable element\n      return;\n    }\n\n    // Check if the clicked element is a dynamic component\n    const isDynamicComponent = this.tableHeaders.some(header =>\n      header.component && target.closest(`[data-dynamic-component=\"${header.id}\"]`)\n    );\n\n    if (isDynamicComponent) {\n      // Don't emit row selection if clicking on a dynamic component\n      return;\n    }\n\n    // Only emit if we're clicking on the row itself or a non-interactive element\n    event.preventDefault();\n    this.rowClicked.emit(row);\n  }\n\n\n  @HostListener('document:click', ['$event'])\n  handleOutsideClick(): void {\n    // Logic to hide the context menu if a click occurs outside\n    this.tableBody = this.tableBody.map(item => ({\n      ...item,\n      showContextMenu: false,\n    }));\n  }\n}\n","<div class=\"table-container\" (mouseleave)=\"hideCheckboxesZeroSelection()\">\n  <!-- Actual table -->\n  <table class=\"table\">\n    <!-- Caption of table if available  -->\n    @if (caption) {\n    <caption>\n      {{\n        caption\n      }}\n    </caption>\n    }\n    <colgroup class=\"column-group\">\n      <!-- Checkbox to be implement in a column -->\n      @if (showCheckboxes) {\n      <col class=\"checkbox-column\" />\n      } @for (header of tableHeaders; track header.id) {\n      <col\n        [ngClass]=\"{\n          'selected-column':\n            header.id === selectedColumnId && header.showSelectedColumn\n        }\"\n      />\n      }\n    </colgroup>\n    <thead class=\"header-container\">\n      <tr>\n        @if (showCheckboxes) {\n        <td class=\"check-box\">\n          @if (totalSelectedItem > 0) {\n          <app-checkbox\n            (valueChange)=\"headerCheckboxChange($event)\"\n            [value]=\"headerCheckboxValue\"\n            #headerCheckbox\n          />\n          }\n        </td>\n        } @for ( header of tableHeaders; track header.id ) {\n        <th\n          class=\"header-cell\"\n          (click)=\"selectedColumn(header.id)\"\n          [ngClass]=\"{\n            'selected-column':\n              header.id === selectedColumnId && header.showSelectedColumn\n          }\"\n        >\n          {{ header.title }}\n        </th>\n        }\n      </tr>\n    </thead>\n    <tbody #tableBodyElement class=\"body-container\">\n      @for ( row of tableBody; track $index) { @if (contextMenu &&\n      row.showContextMenu) {\n      <div\n        #contextMenuElement\n        class=\"context-menu-container\"\n        [ngStyle]=\"{ left: screenX + 'px', top: screenY + 'px' }\"\n      >\n        <app-context-menu\n          [contextMenu]=\"contextMenuData\"\n          (itemClick)=\"onContextMenuItemClick($event, row)\"\n        />\n      </div>\n      }\n\n      <tr\n        class=\"row\"\n        (mouseover)=\"rowHovered($index)\"\n        (contextmenu)=\"handleMenu($event, $index); onRowClick($event, row)\"\n        (click)=\"onRowLeftClick($event, row)\"\n      >\n        @if (showCheckboxes) {\n        <td class=\"check-box\">\n          @if (row.showCheckbox) {\n          <app-checkbox\n            (valueChange)=\"selectedRow($event, $index)\"\n            [value]=\"row.checkboxValue\"\n          />\n          }\n        </td>\n        } @for ( header of tableHeaders; track header.id;) {\n        <!-- showActionsAt will be placed at specified index -->\n        @if ( showActionsAt === $index) {\n        <td>\n          <div class=\"actions\">\n            @for (action of actions; track action.title) {\n            <div [style]=\"action.style\">\n              <img\n                src=\"../../../assets/{{ action.icon }}/{{ action.icon }}.svg\"\n                alt=\"action.title\"\n              />\n            </div>\n            }\n          </div>\n        </td>\n        } @else {\n        <td class=\"cell\">\n          @if (header.component) {\n          <div class=\"cell-component\">\n            <!-- <ng-container *ngComponentOutlet=\"header.component; inputs: createDynamicComponentInput(header, row)\"/> -->\n            <ng-template #dynamicContainer />\n            <ng-container *ngTemplateOutlet=\"dynamicContainer\" />\n          </div>\n          } @else {\n          <div class=\"cell-content\">\n            {{ row[header.id] }}\n          </div>\n          }\n        </td>\n        } }\n      </tr>\n      }\n    </tbody>\n    <tfoot class=\"foot-container\"></tfoot>\n  </table>\n</div>\n","import { CommonModule } from '@angular/common';\nimport { Component, EventEmitter, Input, Output, SimpleChanges } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\n\n@Component({\n  selector: 'app-text-field',\n  standalone: true,\n  imports: [CommonModule, FormsModule],\n  templateUrl: './text-field.component.html',\n  styleUrl: './text-field.component.scss'\n})\nexport class TextFieldComponent {\n  /** Label of text field */\n  // @Input() label = 'Label Here';\n\n  /** Placeholder of text field */\n  @Input() placeholder = '';\n\n  /** Helper text to show at bottom of text field */\n  @Input() helperText = '';\n\n  @Input() initialValue: string = '';\n\n  /** Whether show counter or not */\n  @Input() showCounter = true;\n\n  /** Maximum characters allowed in text field */\n  @Input() maxLength = 0;\n\n  /** Number of rows to size text field */\n  @Input() rows = 5;\n\n  /** Number of columns to size text field */\n  @Input() cols = 1;\n\n  /** Error message to show; if available */\n  @Input() errorMessage = '';\n\n  /** Disabling text field */\n  @Input() disabled = false;\n\n  /** Emitting change of text field */\n  @Output() value = new EventEmitter();\n\n  private _value: any = '';\n\n  private onChange: (value: any) => void = () => { };\n  private onTouched: () => void = () => { };\n\n  /** Counter to show number of characters present in text field */\n  counter = 0;\n\n  /** Handling value change */\n  // changeInputValue(event: Event) {\n  //   if (this.counter < this.maxLength) {\n  //     this.value.emit(event);\n  //   }\n  //   this.counter = (event.target as any).value.length;\n  // }\n\n  ngOnChanges(changes: SimpleChanges) {\n    if (changes['initialValue']) {\n      // Set the value when initialValue changes\n      this._value = changes['initialValue'].currentValue;\n\n      // Trigger change detection and form control updates\n      this.onChange(this._value);\n      this.onTouched();\n    }\n  }\n\n  changeInputValue(event: Event) {\n    const inputElement = event.target as HTMLTextAreaElement;\n    const currentValue = inputElement.value;\n\n    // emit the current value\n    this.value.emit(currentValue);\n\n    // Update counter\n    this.counter = currentValue.length;\n  }\n}\n","<div class=\"text-field-container\">\n  <textarea\n    [ngClass]=\"{ 'text-area': !errorMessage, 'text-area-error': errorMessage }\"\n    [rows]=\"rows\"\n    [cols]=\"cols\"\n    [placeholder]=\"placeholder\"\n    [disabled]=\"disabled\"\n    (keyup)=\"changeInputValue($event)\"\n    [attr.maxlength]=\"maxLength > 0 ? maxLength : false\"\n    [(ngModel)]=\"value\"\n    (ngModelChange)=\"value = $event\"\n  ></textarea>\n  <div class=\"helper-text-container\">\n    @if (helperText && !errorMessage) {\n    <!-- Helper text to show; if available -->\n    <small class=\"helper-text\">{{ helperText }}</small>\n    } @else {\n    <!-- Error message to show; if available -->\n    <small class=\"error-text\">{{ errorMessage }}</small>\n    } @if (showCounter) {\n    <!-- Counter to show; if allowed -->\n    <small class=\"counter\" [ngClass]=\"{ 'error-text': errorMessage }\">\n      {{ counter }}\n      @if(maxLength > 0) { /{{ maxLength }}\n      }\n    </small>\n    }\n  </div>\n</div>\n","import { Component, EventEmitter, HostListener, Input, Output } from '@angular/core';\nimport { Tab } from '../../../models/shared/top-bar';\nimport { CommonModule } from '@angular/common';\nimport { ChevronDownAsset } from '../../../../assets/chevron-down/chevron-down.component';\n\n@Component({\n  selector: 'app-top-bar',\n  standalone: true,\n  imports: [CommonModule, ChevronDownAsset],\n  templateUrl: './top-bar.component.html',\n  styleUrl: './top-bar.component.scss'\n})\nexport class TopBarComponent {\n\n  chevronColor = '#999';\n  /** Tabs to show in top bar */\n  @Input() tabs: Tab[] = [];\n\n  /** Emitting selected tab */\n  @Output() selectedTab = new EventEmitter();\n\n  isMobileView = false;\n  isDropdownOpen = false;\n\n  constructor() {\n    this.checkScreenSize();\n  }\n\n  @HostListener('window:resize')\n  checkScreenSize() {\n    this.isMobileView = window.innerWidth <= 768;\n  }\n\n  /**\n   * @param selectedTab: tab that has been selected\n   * Handling selected tab\n   */\n  selectTab(selectedTab: Tab) {\n    this.tabs = this.tabs.map(tab => ({\n      ...tab,\n      selected: tab.title.toLowerCase() === selectedTab.title.toLowerCase()\n    }));\n    \n    this.selectedTab.emit(selectedTab);\n  }\n\n  getSelectedTabTitle(): string {\n    const selected = this.tabs.find(tab => tab.selected);\n    return selected ? selected.title : this.tabs[0]?.title || '';\n  }\n\n  @HostListener('document:click', ['$event'])\n  onClickOutside(event: Event) {\n    const dropdown = (event.target as HTMLElement).closest('.dropdown');\n    if (!dropdown) {\n      this.isDropdownOpen = false;\n    }\n  }\n}","<div class=\"top-bar-container\" [class.mobile]=\"isMobileView\">\n  @if (!isMobileView) {\n    @for(tab of tabs; track tab.title) {\n      <span \n        class=\"tab\" \n        [class.selected-tab]=\"tab.selected\" \n        (click)=\"selectTab(tab)\"\n      >\n        <h5>{{tab.title}}</h5>\n      </span>\n    }\n  } @else {\n    <div class=\"dropdown\">\n      <div class=\"dropdown-header\" (click)=\"isDropdownOpen = !isDropdownOpen\">\n        <h5>{{getSelectedTabTitle()}}</h5>\n        <span class=\"chevron-wrapper\" [class.rotate]=\"isDropdownOpen\">\n          <asset-chevron-down [fill]=\"chevronColor\" [width]=\"12\" [height]=\"12\" />\n        </span>\n      </div>\n      <div class=\"dropdown-content\" [class.open]=\"isDropdownOpen\">\n        @for(tab of tabs; track tab.title) {\n          <div \n            class=\"dropdown-item\" \n            [class.selected]=\"tab.selected\"\n            (click)=\"selectTab(tab); isDropdownOpen = false\"\n          >\n            <h5>{{tab.title}}</h5>\n          </div>\n        }\n      </div>\n    </div>\n  }\n</div>","import { CommonModule } from '@angular/common';\nimport { Component, Input, TemplateRef, ViewChild, } from '@angular/core';\n\n@Component({\n  selector: 'asset-label-icon',\n  standalone: true,\n  imports: [CommonModule],\n  templateUrl: './label-icon.component.svg',\n})\nexport class LabelIconAsset {\n  @Input() height = 24;\n  @Input() width = 24;\n  @Input() fill = '#000';\n  @ViewChild('labelIcon') labelIcon: TemplateRef<any> | null = null;\n  ngAfterViewInit () {\n    return this.labelIcon;\n  }\n}\n","<svg xmlns=\"http://www.w3.org/2000/svg\" [attr.width]=\"width\" [attr.height]=\"height\" viewBox=\"0 0 20 20\" #labelIcon>\n  <g id=\"file_download_black_24dp\" transform=\"translate(-0.5)\">\n    <g id=\"Group_14381\" data-name=\"Group 14381\" transform=\"translate(0.5)\">\n      <rect id=\"Rectangle_2721\" data-name=\"Rectangle 2721\" [attr.width]=\"width\" [attr.height]=\"height\" fill=\"none\"/>\n    </g>\n    <path id=\"Icon_awesome-tag\" data-name=\"Icon awesome-tag\" d=\"M0,6.894V1.313A1.312,1.312,0,0,1,1.313,0H6.894a1.312,1.312,0,0,1,.928.384l5.794,5.794a1.312,1.312,0,0,1,0,1.856L8.034,13.616a1.312,1.312,0,0,1-1.856,0L.384,7.822A1.312,1.312,0,0,1,0,6.894ZM3.063,1.75A1.313,1.313,0,1,0,4.375,3.063,1.312,1.312,0,0,0,3.063,1.75Z\" transform=\"translate(3.5 3)\" [attr.fill]=\"fill\"/>\n  </g>\n</svg>\n","import { Component, Input } from '@angular/core';\n\n@Component({\n  selector: 'asset-home',\n  standalone: true,\n  imports: [],\n  templateUrl: './home.component.svg',\n})\nexport class HomeAsset {\n  @Input() height = 24;\n  @Input() width = 24;\n  @Input() fill = '#000';\n}\n","<svg id=\"home_black_24dp_9_\" data-name=\"home_black_24dp (9)\" xmlns=\"http://www.w3.org/2000/svg\" [attr.width]=\"width\" [attr.height]=\"height\" viewBox=\"0 0 24 24\">\n  <path id=\"Path_9470\" data-name=\"Path 9470\" d=\"M0,0H24V24H0Z\" fill=\"none\"/>\n  <path id=\"Path_9471\" data-name=\"Path 9471\" d=\"M10,19V14h4v5a1,1,0,0,0,1,1h3a1,1,0,0,0,1-1V12h1.7a.5.5,0,0,0,.33-.87L12.67,3.6a1.008,1.008,0,0,0-1.34,0L2.97,11.13A.5.5,0,0,0,3.3,12H5v7a1,1,0,0,0,1,1H9A1,1,0,0,0,10,19Z\" [attr.fill]=\"fill\"/>\n</svg>\n","import { Component, Input } from '@angular/core';\n\n@Component({\n  selector: 'asset-tree',\n  standalone: true,\n  imports: [],\n  templateUrl: './tree.component.svg',\n})\nexport class TreeAsset {\n  @Input() width = 24;\n  @Input() height = 24;\n  @Input() fill = '#000';\n}\n","<svg\n   id=\"account_tree_black_24dp_6_\"\n   data-name=\"account_tree_black_24dp (6)\"\n   [attr.width]=\"width\"\n   [attr.height]=\"height\"\n   viewBox=\"0 0 24 24\"\n   version=\"1.1\"\n   sodipodi:docname=\"afe058e8a3e269d4413b248936646585.svg\"\n   xmlns:inkscape=\"http://www.inkscape.org/namespaces/inkscape\"\n   xmlns:sodipodi=\"http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd\"\n   xmlns=\"http://www.w3.org/2000/svg\"\n   xmlns:svg=\"http://www.w3.org/2000/svg\">\n  <defs\n     id=\"defs7\" />\n  <!-- <sodipodi:namedview\n     id=\"namedview5\"\n     pagecolor=\"#ffffff\"\n     bordercolor=\"#666666\"\n     borderopacity=\"1.0\"\n     inkscape:pageshadow=\"2\"\n     inkscape:pageopacity=\"0.0\"\n     inkscape:pagecheckerboard=\"0\" /> -->\n  <rect\n     id=\"Rectangle_2639\"\n     data-name=\"Rectangle 2639\"\n     [attr.width]=\"width\"\n     [attr.height]=\"height\"\n     fill=\"none\"\n     x=\"0\"\n     y=\"0\" />\n  <path\n     id=\"Path_9474\"\n     data-name=\"Path 9474\"\n     d=\"m 17,11 h 3 A 2,2 0 0 0 22,9 V 5 A 2,2 0 0 0 20,3 H 17 A 2,2 0 0 0 15,5 V 6 H 9.01 V 5 a 2,2 0 0 0 -2,-2 H 4 A 2.006,2.006 0 0 0 2,5 v 4 a 2,2 0 0 0 2,2 H 7 A 2,2 0 0 0 9,9 V 8 h 2 v 7.01 A 2.992,2.992 0 0 0 13.99,18 H 15 v 1 a 2,2 0 0 0 2,2 h 3 a 2,2 0 0 0 2,-2 v -4 a 2,2 0 0 0 -2,-2 h -3 a 2,2 0 0 0 -2,2 v 1 H 13.99 A 1,1 0 0 1 13,15.01 V 8 h 2 v 1 a 2.006,2.006 0 0 0 2,2 z\"\n     [attr.fill]=\"fill\" />\n</svg>\n","import { Component, Input } from '@angular/core';\n\n@Component({\n  selector: 'asset-inbox',\n  standalone: true,\n  imports: [],\n  templateUrl: './inbox.component.svg',\n})\nexport class InboxAsset {\n\n  @Input() width = 24;\n  @Input() height = 24;\n  @Input() fill = '#000';\n}\n","<svg id=\"move_to_inbox_black_24dp_1_\" data-name=\"move_to_inbox_black_24dp (1)\" xmlns=\"http://www.w3.org/2000/svg\" [attr.width]=\"width\" [attr.height]=\"height\" viewBox=\"0 0 24 24\">\n  <g id=\"Group_14317\" data-name=\"Group 14317\">\n    <rect id=\"Rectangle_2640\" data-name=\"Rectangle 2640\" [attr.width]=\"width\" [attr.height]=\"height\" fill=\"none\"/>\n  </g>\n  <g id=\"Group_14318\" data-name=\"Group 14318\">\n    <path id=\"Path_9475\" data-name=\"Path 9475\" d=\"M19,3H5A2.006,2.006,0,0,0,3,5V19a2.006,2.006,0,0,0,2,2H19a2.006,2.006,0,0,0,2-2V5A2.006,2.006,0,0,0,19,3Zm0,11H15.44a.987.987,0,0,0-.86.5,2.969,2.969,0,0,1-5.16,0,1,1,0,0,0-.86-.5H5V5H19Zm-4.21-4H13V7a1,1,0,0,0-1-1h0a1,1,0,0,0-1,1v3H9.21a.5.5,0,0,0-.35.85l2.79,2.79a.5.5,0,0,0,.71,0l2.79-2.79A.5.5,0,0,0,14.79,10Z\" [attr.fill]=\"fill\"/>\n  </g>\n</svg>\n","import { Component, Input } from '@angular/core';\n\n@Component({\n  selector: 'asset-analytics',\n  standalone: true,\n  imports: [],\n  templateUrl: './analytics.component.svg',\n})\nexport class AnalyticsAsset {\n  @Input() width = 24;\n  @Input() height = 24;\n  @Input() fill = '#000';\n}\n","<svg id=\"analytics_black_24dp\" xmlns=\"http://www.w3.org/2000/svg\" [attr.width]=\"width\" [attr.height]=\"24\" viewBox=\"0 0 24 24\">\n  <rect id=\"Rectangle_2651\" data-name=\"Rectangle 2651\" [attr.width]=\"width\" [attr.height]=\"height\" fill=\"none\"/>\n  <path id=\"Path_9491\" data-name=\"Path 9491\" d=\"M19,3H5A2.006,2.006,0,0,0,3,5V19a2.006,2.006,0,0,0,2,2H19a2.006,2.006,0,0,0,2-2V5A2.006,2.006,0,0,0,19,3ZM8,17H8a1,1,0,0,1-1-1V13a1,1,0,0,1,2,0v3A1,1,0,0,1,8,17Zm4,0h0a1,1,0,0,1-1-1V15a1,1,0,0,1,2,0v1A1,1,0,0,1,12,17Zm0-5a1,1,0,1,1,1-1A1,1,0,0,1,12,12Zm4,5h0a1,1,0,0,1-1-1V8a1,1,0,0,1,2,0v8A1,1,0,0,1,16,17Z\" [attr.fill]=\"fill\"/>\n</svg>\n","import { Component, Input } from '@angular/core';\n\n@Component({\n  selector: 'asset-team',\n  standalone: true,\n  imports: [],\n  templateUrl: './team.component.svg',\n})\nexport class TeamAsset {\n  @Input() fill = '#000';\n  @Input() width = 24;\n  @Input() height = 24;\n}\n","<svg id=\"groups_black_24dp_4_\" data-name=\"groups_black_24dp (4)\" xmlns=\"http://www.w3.org/2000/svg\" [attr.width]=\"width\" [attr.height]=\"height\" viewBox=\"0 0 24 24\">\n  <rect id=\"Rectangle_2896\" data-name=\"Rectangle 2896\" [attr.width]=\"width\" [attr.height]=\"height\" fill=\"none\"/>\n  <g id=\"Group_37533\" data-name=\"Group 37533\">\n    <path id=\"Path_9652\" data-name=\"Path 9652\" d=\"M12,12.75a10.611,10.611,0,0,1,4.24.9A2.984,2.984,0,0,1,18,16.38V17a1,1,0,0,1-1,1H7a1,1,0,0,1-1-1v-.61a2.963,2.963,0,0,1,1.76-2.73A10.44,10.44,0,0,1,12,12.75ZM4,13a2,2,0,1,0-2-2A2.006,2.006,0,0,0,4,13Zm1.13,1.1A6.983,6.983,0,0,0,4,14a6.95,6.95,0,0,0-2.78.58A2.011,2.011,0,0,0,0,16.43V17a1,1,0,0,0,1,1H4.5V16.39A4.5,4.5,0,0,1,5.13,14.1ZM20,13a2,2,0,1,0-2-2A2.006,2.006,0,0,0,20,13Zm4,3.43a2.011,2.011,0,0,0-1.22-1.85,6.8,6.8,0,0,0-3.91-.48,4.5,4.5,0,0,1,.63,2.29V18H23a1,1,0,0,0,1-1ZM12,6A3,3,0,1,1,9,9,3,3,0,0,1,12,6Z\" [attr.fill]=\"fill\"/>\n  </g>\n</svg>\n","import { Component, Input } from '@angular/core';\n\n@Component({\n  selector: 'asset-subscription-card',\n  standalone: true,\n  imports: [],\n  templateUrl: './subscription-card.component.svg',\n})\nexport class SubscriptionCardAsset {\n  @Input() width = 24;\n  @Input() height = 24;\n  @Input() fill = '#000';\n}\n","<svg id=\"card_membership_black_24dp_2_\" data-name=\"card_membership_black_24dp (2)\" xmlns=\"http://www.w3.org/2000/svg\" [attr.width]=\"width\" [attr.height]=\"height\" viewBox=\"0 0 24 24\">\n  <path id=\"Path_9811\" data-name=\"Path 9811\" d=\"M0,0H24V24H0Z\" fill=\"none\"/>\n  <path id=\"Path_9812\" data-name=\"Path 9812\" d=\"M20,2H4A1.993,1.993,0,0,0,2,4V15a1.993,1.993,0,0,0,2,2H8v5l4-2,4,2V17h4a1.993,1.993,0,0,0,2-2V4A1.993,1.993,0,0,0,20,2Zm0,13H4V13H20Zm0-5H4V4H20Z\" [attr.fill]=\"fill\"/>\n</svg>\n","import { Component, Input } from '@angular/core';\n\n@Component({\n  selector: 'asset-notification',\n  standalone: true,\n  imports: [],\n  templateUrl: './notification.component.svg',\n})\nexport class NotificationAsset {\n  @Input() width = 24;\n  @Input() height = 24;\n  @Input() fill = '#000';\n}\n","<svg id=\"notifications_black_24dp_7_\" data-name=\"notifications_black_24dp (7)\" xmlns=\"http://www.w3.org/2000/svg\" [attr.width]=\"width\" [attr.height]=\"height\" viewBox=\"0 0 24 24\">\n  <path id=\"Path_9472\" data-name=\"Path 9472\" d=\"M0,0H24V24H0Z\" fill=\"none\"/>\n  <path id=\"Path_9473\" data-name=\"Path 9473\" d=\"M12,22a2.006,2.006,0,0,0,2-2H10A2,2,0,0,0,12,22Zm6-6V11c0-3.07-1.64-5.64-4.5-6.32V4a1.5,1.5,0,0,0-3,0v.68C7.63,5.36,6,7.92,6,11v5L4.71,17.29A1,1,0,0,0,5.41,19H18.58a1,1,0,0,0,.71-1.71Z\" [attr.fill]=\"fill\"/>\n</svg>\n","import { Component, Input } from '@angular/core';\n\n@Component({\n  selector: 'asset-code-block',\n  standalone: true,\n  imports: [],\n  templateUrl: './code-block.component.svg',\n})\nexport class CodeBlockAsset {\n  @Input() height = 24;\n  @Input() width = 24;\n  @Input() fill = '#000';\n}\n","<svg xmlns=\"http://www.w3.org/2000/svg\" [attr.width]=\"width\" [attr.height]=\"height\" viewBox=\"0 0 20 20\" style=\"padding-top: 4px;\">\n  <path id=\"code_blocks_FILL1_wght400_GRAD0_opsz24\" d=\"M125.715-831.17l1.447-1.447a.941.941,0,0,0,.294-.687.941.941,0,0,0-.294-.687.955.955,0,0,0-.7-.294.955.955,0,0,0-.7.294l-2.134,2.134a.861.861,0,0,0-.208.319,1.086,1.086,0,0,0-.061.368,1.086,1.086,0,0,0,.061.368.861.861,0,0,0,.208.319l2.134,2.134a.955.955,0,0,0,.7.294.955.955,0,0,0,.7-.294.941.941,0,0,0,.294-.687.941.941,0,0,0-.294-.687Zm6.23,0-1.447,1.447a.941.941,0,0,0-.294.687.941.941,0,0,0,.294.687.955.955,0,0,0,.7.294.955.955,0,0,0,.7-.294l2.134-2.134a.86.86,0,0,0,.208-.319,1.086,1.086,0,0,0,.061-.368,1.086,1.086,0,0,0-.061-.368.86.86,0,0,0-.208-.319l-2.134-2.134a.981.981,0,0,0-.331-.221.985.985,0,0,0-.368-.074.985.985,0,0,0-.368.074.981.981,0,0,0-.331.221.941.941,0,0,0-.294.687.941.941,0,0,0,.294.687Zm-9.983,8.83a1.89,1.89,0,0,1-1.386-.576A1.89,1.89,0,0,1,120-824.3v-13.736a1.89,1.89,0,0,1,.576-1.386,1.889,1.889,0,0,1,1.386-.576H135.7a1.889,1.889,0,0,1,1.386.576,1.89,1.89,0,0,1,.576,1.386V-824.3a1.89,1.89,0,0,1-.576,1.386,1.89,1.89,0,0,1-1.386.576Z\" transform=\"translate(-120 840)\" [attr.fill]=\"fill\"/>\n</svg>\n","import { Component, Input } from '@angular/core';\n\n@Component({\n  selector: 'asset-copy',\n  standalone: true,\n  imports: [],\n  templateUrl: './copy.component.svg',\n})\nexport class CopyAsset {\n  @Input() fill = '#000';\n  @Input() width = 24;\n  @Input() height = 24;\n}\n","<svg [attr.width]=\"width\" [attr.height]=\"height\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n<path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M9.29289 3.29289C9.48043 3.10536 9.73478 3 10 3H14C15.6569 3 17 4.34315 17 6V15C17 16.6569 15.6569 18 14 18H7C5.34315 18 4 16.6569 4 15V9C4 8.73478 4.10536 8.48043 4.29289 8.29289L9.29289 3.29289ZM14 5H11V9C11 9.55228 10.5523 10 10 10H6V15C6 15.5523 6.44772 16 7 16H14C14.5523 16 15 15.5523 15 15V6C15 5.44772 14.5523 5 14 5ZM7.41421 8H9V6.41421L7.41421 8ZM19 5C19.5523 5 20 5.44772 20 6V18C20 19.6569 18.6569 21 17 21H7C6.44772 21 6 20.5523 6 20C6 19.4477 6.44772 19 7 19H17C17.5523 19 18 18.5523 18 18V6C18 5.44772 18.4477 5 19 5Z\" [attr.fill]=\"fill\"/>\r\n</svg>","import { Component, Input } from '@angular/core';\n\n@Component({\n  selector: 'asset-export',\n  standalone: true,\n  imports: [],\n  templateUrl: './export.component.svg',\n})\nexport class ExportAsset {\n  @Input() height = 24;\n  @Input() width = 24;\n  @Input() fill = '#000';\n}\n","<svg [attr.width]=\"width\" [attr.height]=\"height\" viewBox=\"0 0 17 17\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">\r\n\t<path d=\"M4.359 5.956l-0.718-0.697 4.859-5.005 4.859 5.005-0.718 0.696-3.641-3.75v10.767h-1v-10.767l-3.641 3.751zM16 9.030v6.47c0 0.276-0.224 0.5-0.5 0.5h-14c-0.276 0-0.5-0.224-0.5-0.5v-6.475h-1v6.475c0 0.827 0.673 1.5 1.5 1.5h14c0.827 0 1.5-0.673 1.5-1.5v-6.47h-1z\" [attr.fill]=\"fill\" />\r\n</svg>","import { ChangeDetectionStrategy, Component, CUSTOM_ELEMENTS_SCHEMA, NO_ERRORS_SCHEMA } from '@angular/core';\nimport { RouterOutlet, Router } from '@angular/router';\nimport { PaginationComponent } from './pagination/pagination.component';\nimport { LabelComponent } from './label/label.component';\nimport { CommonModule } from '@angular/common';\nimport { InputComponent } from './../shared/input/input.component';\nimport { SelectComponent } from './select/select.component';\nimport { LabelIconAsset } from '../../../assets/label-icon/label-icon.component';\nimport { Option } from '../../models/shared/select';\nimport { NavbarComponent } from './navbar/navbar.component';\nimport { NavbarItem } from '../../models/shared/navbar';\nimport { ToggleComponent } from './toggle/toggle.component';\nimport { ProgressBarComponent } from './progress-bar/progress-bar.component';\nimport { ModalComponent } from './modal/modal.component';\nimport { ButtonComponent } from './button/button.component';\nimport { InboxAsset } from '../../../assets/inbox/inbox.component';\nimport { DialogComponent } from './dialog/dialog.component';\nimport { TooltipComponent } from './tooltip/tooltip.component';\nimport { TopBarComponent } from './top-bar/top-bar.component';\nimport { SliderComponent } from './slider/slider.component';\nimport { TextFieldComponent } from './text-field/text-field.component';\nimport { AlertComponent } from './alerts/alert.component';\nimport { NotificationComponent } from './notification/notification.component';\nimport { ChipComponent } from './chip/chip.component';\nimport { SegmentedPickerComponent } from './segmented-picker/segmented-picker.component';\nimport { PageControlComponent } from './page-control/page-control.component';\nimport { AccordianComponent } from './accordian/accordian.component';\nimport { TableComponent } from './table/table.component';\nimport { LinkComponent } from './link/link.component';\nimport { RadioButtonsComponent } from './radio-buttons/radio-buttons.component';\nimport { CheckBoxesComponent } from './check-boxes/check-boxes.component';\nimport { CrossAsset } from '../../../assets/cross/cross.component';\nimport { DividerComponent } from './divider/divider.component';\nimport { SpacerComponent } from './spacer/spacer.component';\nimport { LoaderComponent } from \"./loader/loader.component\";\nimport { LoaderAsset } from '../../../assets/loader/loader.component';\nimport { FullPageLoaderComponent } from './full-page-loader/full-page-loader.component';\nimport { InfoAlertComponent } from './alerts/variants/info-alert/info-alert.component';\nimport { WarningAlertComponent } from './alerts/variants/warning-alert/warning-alert.component';\nimport { ErrorAlertComponent } from './alerts/variants/error-alert/error-alert.component';\nimport { PrimaryButtonComponent } from './button/variants/primary-button/primary-button.component';\nimport { SecondaryButtonComponent } from './button/variants/secondary-button/secondary-button.component';\nimport { OutlinedButtonComponent } from \"./button/variants/outlined-button/outlined-button.component\";\nimport { ErrorChipComponent } from \"./chip/variants/error-chip/error-chip.component\";\nimport { WarningChipComponent } from './chip/variants/warning-chip/warning-chip.component';\nimport { PrimaryChipComponent } from './chip/variants/primary-chip/primary-chip.component';\nimport { SecondaryChipComponent } from './chip/variants/secondary-chip/secondary-chip.component';\nimport { SuccessChipComponent } from './chip/variants/success-chip/success-chip.component';\nimport { LightDividerComponent } from './divider/variants/light-divider/light-divider.component';\nimport { DarkDividerComponent } from './divider/variants/dark-divider/dark-divider.component';\nimport { SuccessLabelComponent } from './label/variants/success-label/success-label.component';\nimport { SecondaryLabelComponent } from './label/variants/secondary-label/secondary-label.component';\nimport { ErrorLabelComponent } from './label/variants/error-label/error-label.component';\nimport { CommonService } from '../../services/common/common.service';\nimport { ErrorNotificationComponent } from './notification/variants/error-notification/error-notification.component';\nimport { InfoNotificationComponent } from './notification/variants/info-notification/info-notification.component';\nimport { WarningNotificationComponent } from './notification/variants/warning-notification/warning-notification.component';\nimport { SuccessNotificationComponent } from './notification/variants/success-notification/success-notification.component';\nimport { LabeledInputComponent } from \"./input/variants/labeled-input/labeled-input.component\";\nimport { PrefixInputComponent } from \"./input/variants/prefix-input/prefix-input.component\";\nimport { PostfixInputComponent } from \"./input/variants/postfix-input/postfix-input.component\";\nimport { PrefixPostfixInputComponent } from \"./input/variants/prefix-postfix-input/prefix-postfix-input.component\";\nimport { PrefixLabeledInputComponent } from \"./input/variants/prefix-labeled-input/prefix-labeled-input.component\";\nimport { PostfixLabeledInputComponent } from \"./input/variants/postfix-labeled-input/postfix-labeled-input.component\";\nimport { PrefixPostfixLabeledInputComponent } from \"./input/variants/prefix-postfix-labeled-input/prefix-postfix-labeled-input.component\";\nimport { LegacySelectComponent } from \"./select/variants/legacy-select/legacy-select.component\";\nimport { LegacySelectWithSearchComponent } from \"./select/variants/legacy-select/variants/legacy-select-with-search/legacy-select-with-search.component\";\nimport { SelectWithSearchComponent } from \"./select/variants/select-with-search/select-with-search.component\";\nimport { RippleLoaderComponent } from \"./ripple-loader/ripple-loader.component\";\nimport { FileUploadComponent } from './file-upload/file-upload.component';\nimport { TagInputComponent } from './tag-input/tag-input.component';\nimport { ContextMenuComponent } from './context-menu/context-menu.component';\nimport { HomeAsset } from '../../../assets/home/home.component';\nimport { ContextMenu } from '../../models/shared/context-menu';\nimport { ContextMenuClickEvent } from '../../models/shared/table';\nimport { ProfileAsset } from '../../../assets/profile/profile.component';\nimport { SettingAsset } from '../../../assets/setting/setting.component';\nimport { FormsModule } from '@angular/forms';\nimport { CopyAsset } from '../../../assets/copy/copy.component';\nimport { InfoAsset } from '../../../assets/info/info.component';\nimport { ExportAsset } from '../../../assets/export/export.component';\n\n@Component({\n  selector: 'app-shared',\n  standalone: true,\n  imports: [\n    RouterOutlet, PaginationComponent, LabelComponent, CommonModule, InputComponent, ProgressBarComponent, CrossAsset, DividerComponent,\n    CommonModule, SelectComponent, NavbarComponent, ToggleComponent, ModalComponent, ButtonComponent, SpacerComponent,\n    InboxAsset, DialogComponent, TooltipComponent, TopBarComponent, SliderComponent, TextFieldComponent, AlertComponent,\n    NotificationComponent, ChipComponent, SegmentedPickerComponent, PageControlComponent, AccordianComponent, TableComponent,\n    ButtonComponent, LinkComponent, RadioButtonsComponent, CheckBoxesComponent, LabelIconAsset, PaginationComponent, LabelComponent,\n    LoaderAsset, LoaderComponent, FullPageLoaderComponent, InfoAlertComponent, WarningAlertComponent, ErrorAlertComponent, PrimaryButtonComponent,\n    SecondaryButtonComponent,\n    CopyAsset,\n    ExportAsset,\n    InfoAsset,\n    OutlinedButtonComponent,\n    ErrorChipComponent,\n    WarningChipComponent,\n    PrimaryChipComponent,\n    SecondaryChipComponent,\n    SuccessChipComponent,\n    LightDividerComponent,\n    DarkDividerComponent,\n    SuccessLabelComponent,\n    SecondaryLabelComponent,\n    ErrorLabelComponent,\n    ErrorNotificationComponent,\n    InfoNotificationComponent,\n    SuccessNotificationComponent,\n    WarningNotificationComponent,\n    LabeledInputComponent,\n    PrefixInputComponent,\n    PostfixInputComponent,\n    PrefixPostfixInputComponent,\n    PrefixLabeledInputComponent,\n    PostfixLabeledInputComponent,\n    PrefixPostfixLabeledInputComponent,\n    LegacySelectComponent,\n    LegacySelectWithSearchComponent,\n    SelectWithSearchComponent,\n    RippleLoaderComponent,\n    FileUploadComponent,\n    TagInputComponent,\n    ContextMenuComponent,\n    HomeAsset, FormsModule\n],\n  schemas: [CUSTOM_ELEMENTS_SCHEMA, NO_ERRORS_SCHEMA],\n  templateUrl: './shared.component.html',\n  styleUrl: './shared.component.scss'\n})\nexport class SharedComponent {\n\n  name: string = '';\n  title = 'rpmt';\n  dropdownOptions: Option[] = [];\n  navbodyOptions: NavbarItem[] = [];\n  navfooterOptions: NavbarItem[] = [];\n  tags: string[] = ['Bot Penguin', 'PMT'];\n  showModal = false;\n  showErrorNotification = false;\n  showWarningNotification = false;\n  showInfoNotification = false;\n  showSuccessNotification = false;\n  isFullPageLoader = false;\n  errorColor = '#B3261E';\n  tableHeader = [\n    {\n      title: 'ID',\n      id: 'id',\n    },\n    {\n      title: 'Project Name',\n      id: 'projectName'\n    },\n    { \n      title: 'Project Status',\n      id: 'status',\n      component: SelectComponent,\n      inputs: {\n        options: [\n          {\n            title: 'Open',\n            value: 'open',\n          },\n          {\n            title: 'In Progress',\n            value: 'in-progress',\n          },\n          {\n            title: 'Closed',\n            value: 'close',\n          },\n        ]\n      },\n      outputEvents: ['optionSelected']\n    },\n    {\n      title: 'Project Progress',\n      id: 'progress',\n      component: ProgressBarComponent,\n    },\n    {\n      title: 'Owner',\n      id: 'owner',\n    },\n    {\n      title: 'Start Date',\n      id: 'startDate',\n    },\n    {\n      title: 'End Date',\n      id: 'endDate',\n    },\n    {\n      title: 'Create At',\n      id: 'createdTime',\n    },\n    {\n      title: 'Update At',\n      id: 'lastModifiedTime',\n    },\n    {\n      title: 'Created By',\n      id: 'createdBy',\n    },\n    {\n      title: 'Updated By',\n      id: 'lastModifiedBy',\n    }\n  ];\n\n  onTest(event: any){\n    console.log(\"event\", event)\n  }\n\n  tableBody = [\n    {\n      id: 'REL-PR-276',\n      projectName: 'Relinns Project Management Tool',\n      description: 'This is an internal project of organization to manage resources',\n      progress: {\n        max: 100,\n        value: 10,\n      },\n      status: { label: 'Closed' },\n      owner: 'Manager',\n      startDate: '10/10/2024',\n      endDate: '10/01/2025',\n      createdTime: '10/10/2024 05:30',\n      createdBy: 'Developer',\n      lastModifiedTime: '10/10/2024 05:30',\n      lastModifiedBy: 'Developer',\n    },\n    {\n      id: 'REL-PR-276',\n      projectName: 'Relinns Project Management Tool',\n      description: 'This is an internal project of organization to manage resources',\n      progress: {\n        max: 100,\n        value: 80,\n      },\n      status: { label: 'Closed' },\n      owner: 'Manager',\n      startDate: '10/10/2024',\n      endDate: '10/01/2025',\n      createdTime: '10/10/2024 05:30',\n      createdBy: 'Developer',\n      lastModifiedTime: '10/10/2024 05:30',\n      lastModifiedBy: 'Developer',\n    },\n    {\n      id: 'REL-PR-276',\n      projectName: 'Relinns Project Management Tool',\n      description: 'This is an internal project of organization to manage resources',\n      progress: {\n        max: 100,\n        value: 40,\n      },\n      status: { label: 'Closed' },\n      owner: 'Manager',\n      startDate: '10/10/2024',\n      endDate: '10/01/2025',\n      createdTime: '10/10/2024 05:30',\n      createdBy: 'Developer',\n      lastModifiedTime: '10/10/2024 05:30',\n      lastModifiedBy: 'Developer',\n    },\n    {\n      id: 'REL-PR-276',\n      projectName: 'Relinns Project Management Tool',\n      description: 'This is an internal project of organization to manage resources',\n      progress: {\n        max: 100,\n        value: 40,\n      },\n      status: { label: 'Closed' },\n      owner: 'Manager',\n      startDate: '10/10/2024',\n      endDate: '10/01/2025',\n      createdTime: '10/10/2024 05:30',\n      createdBy: 'Developer',\n      lastModifiedTime: '10/10/2024 05:30',\n      lastModifiedBy: 'Developer',\n    },\n    {\n      id: 'REL-PR-276',\n      projectName: 'Relinns Project Management Tool',\n      description: 'This is an internal project of organization to manage resources',\n      progress: {},\n      status: { label: 'Closed' },\n      owner: 'Manager',\n      startDate: '10/10/2024',\n      endDate: '10/01/2025',\n      createdTime: '10/10/2024 05:30',\n      createdBy: 'Developer',\n      lastModifiedTime: '10/10/2024 05:30',\n      lastModifiedBy: 'Developer',\n    },\n    {\n      id: 'REL-PR-276',\n      projectName: 'Relinns Project Management Tool',\n      description: 'This is an internal project of organization to manage resources',\n      progress: {},\n      status: { label: 'Closed' },\n      owner: 'Manager',\n      startDate: '10/10/2024',\n      endDate: '10/01/2025',\n      createdTime: '10/10/2024 05:30',\n      createdBy: 'Developer',\n      lastModifiedTime: '10/10/2024 05:30',\n      lastModifiedBy: 'Developer',\n    },\n    {\n      id: 'REL-PR-276',\n      projectName: 'Relinns Project Management Tool',\n      description: 'This is an internal project of organization to manage resources',\n      progress: {},\n      status: { label: 'Closed' },\n      owner: 'Manager',\n      startDate: '10/10/2024',\n      endDate: '10/01/2025',\n      createdTime: '10/10/2024 05:30',\n      createdBy: 'Developer',\n      lastModifiedTime: '10/10/2024 05:30',\n      lastModifiedBy: 'Developer',\n    },\n    {\n      id: 'REL-PR-276',\n      projectName: 'Relinns Project Management Tool',\n      description: 'This is an internal project of organization to manage resources',\n      progress: {},\n      status: { label: 'Closed' },\n      owner: 'Manager',\n      startDate: '10/10/2024',\n      endDate: '10/01/2025',\n      createdTime: '10/10/2024 05:30',\n      createdBy: 'Developer',\n      lastModifiedTime: '10/10/2024 05:30',\n      lastModifiedBy: 'Developer',\n    },\n    {\n      id: 'REL-PR-276',\n      projectName: 'Relinns Project Management Tool',\n      description: 'This is an internal project of organization to manage resources',\n      progress: {},\n      status: { label: 'Closed' },\n      owner: 'Manager',\n      startDate: '10/10/2024',\n      endDate: '10/01/2025',\n      createdTime: '10/10/2024 05:30',\n      createdBy: 'Developer',\n      lastModifiedTime: '10/10/2024 05:30',\n      lastModifiedBy: 'Developer',\n    },\n    {\n      id: 'REL-PR-276',\n      projectName: 'Relinns Project Management Tool',\n      description: 'This is an internal project of organization to manage resources',\n      progress: {},\n      status: { label: 'Closed' },\n      owner: 'Manager',\n      startDate: '10/10/2024',\n      endDate: '10/01/2025',\n      createdTime: '10/10/2024 05:30',\n      createdBy: 'Developer',\n      lastModifiedTime: '10/10/2024 05:30',\n      lastModifiedBy: 'Developer',\n    },\n    {\n      id: 'REL-PR-276',\n      projectName: 'Relinns Project Management Tool',\n      description: 'This is an internal project of organization to manage resources',\n      progress: {},\n      status: { label: 'Closed' },\n      owner: 'Manager',\n      startDate: '10/10/2024',\n      endDate: '10/01/2025',\n      createdTime: '10/10/2024 05:30',\n      createdBy: 'Developer',\n      lastModifiedTime: '10/10/2024 05:30',\n      lastModifiedBy: 'Developer',\n    },\n    {\n      id: 'REL-PR-276',\n      projectName: 'Relinns Project Management Tool',\n      description: 'This is an internal project of organization to manage resources',\n      progress: {},\n      status: { label: 'Closed' },\n      owner: 'Manager',\n      startDate: '10/10/2024',\n      endDate: '10/01/2025',\n      createdTime: '10/10/2024 05:30',\n      createdBy: 'Developer',\n      lastModifiedTime: '10/10/2024 05:30',\n      lastModifiedBy: 'Developer',\n    },\n  ];\n\n  contextMenuData: ContextMenu[] = [\n    {\n      title: 'Open',\n      id: 'open'\n    },\n    {\n      title: 'Edit',\n      id: 'edit'\n    },\n    {\n      title: 'Delete',\n      id: 'delete'\n    }\n  ]\n\n  isFullRippleLoader = false;\n\n  constructor(private commonService: CommonService, private router: Router) {\n    this.errorColor = this.commonService.getCSSVariablesValue('--on-error');\n  }\n\n  ngOnInit() {\n    this.dropdownOptions = [\n      {\n        title: 'Option 1',\n        value: 'option1',\n        endIcon: '$',\n        startIcon: '$'\n      },\n      { \n        title: 'Option 2',\n        value: 'option2',\n        endIcon: '',\n        startIcon: '$'\n      },\n      { \n        title: 'Option 3',\n        value: 'option3',\n        endIcon: '$',\n        startIcon: ''\n      },\n      { \n        title: 'Option 4',\n        value: 'option4',\n      }\n    ];\n  }\n\n  dialogButtonsOutput(event: Event) {\n    this.dialogsUseCases = this.dialogsUseCases.map(dialog => ({\n      ...dialog,\n      showDialog: false,\n    }));\n  }\n  \n  navbarToggle(item: NavbarItem | Event) {\n  }\n\n  dialogBoxNegativeAction = (event: Event) => {\n    console.log(event);\n  }\n\n  dialogBoxPositiveAction = (event: Event) =>  {\n    console.log(event);\n  }\n\n  dialogsUseCases = [\n    {\n      title: 'Upgrade your plan to import \"Contacts\" from CSV',\n      description: 'Buy our subscription to unlock the feature to import contacts from csv',\n      negativeAction: this.dialogBoxNegativeAction,\n      positiveAction: this.dialogBoxPositiveAction,\n      positiveButtonText: 'Done',\n      negativeButtonText: 'Cancel',\n      showDialog: false,\n      dialogButtonText: 'Icon + Title + Description + Actions',\n      iconUrl: '../../../assets/tree/tree.component.svg',\n    },\n    {\n      title: 'Upgrade your plan to import \"Contacts\" from CSV',\n      description: 'Buy our subscription to unlock the feature to import contacts from csv',\n      negativeAction: this.dialogBoxNegativeAction,\n      positiveAction: this.dialogBoxPositiveAction,\n      positiveButtonText: 'Done',\n      negativeButtonText: 'Cancel',\n      showDialog: false,\n      dialogButtonText: 'Title + Description + Actions',\n    },\n    {\n      description: 'Buy our subscription to unlock the feature to import contacts from csv',\n      negativeAction: this.dialogBoxNegativeAction,\n      positiveAction: this.dialogBoxPositiveAction,\n      positiveButtonText: 'Done',\n      negativeButtonText: 'Cancel',\n      showDialog: false,\n      dialogButtonText: 'Icon + Description + Actions',\n      iconUrl: '../../../assets/analytics/analytics.primary.svg',\n    },\n    {\n      title: 'Upgrade your plan to import \"Contacts\" from CSV',\n      negativeAction: this.dialogBoxNegativeAction,\n      positiveAction: this.dialogBoxPositiveAction,\n      positiveButtonText: 'Done',\n      negativeButtonText: 'Cancel',\n      showDialog: false,\n      dialogButtonText: 'Icon + Title + Actions',\n      iconUrl: '../../../assets/analytics/analytics.primary.svg',\n    },\n    {\n      title: 'Upgrade your plan to import \"Contacts\" from CSV',\n      description: 'Buy our subscription to unlock the feature to import contacts from csv',\n      showDialog: false,\n      dialogButtonText: 'Icon + Title + Description',\n      iconUrl: '../../../assets/analytics/analytics.primary.svg',\n    },\n    {\n      title: 'Upgrade your plan to import \"Contacts\" from CSV',\n      showDialog: false,\n      dialogButtonText: 'Icon + Title',\n      iconUrl: '../../../assets/analytics/analytics.primary.svg',\n    },\n    {\n      description: 'Buy our subscription to unlock the feature to import contacts from csv',\n      showDialog: false,\n      dialogButtonText: 'Icon + Description',\n      iconUrl: '../../../assets/analytics/analytics.primary.svg',\n    },\n    {\n      negativeAction: this.dialogBoxNegativeAction,\n      positiveAction: this.dialogBoxPositiveAction,\n      positiveButtonText: 'Done',\n      negativeButtonText: 'Cancel',\n      showDialog: false,\n      dialogButtonText: 'Icon + Actions',\n      iconUrl: '../../../assets/analytics/analytics.primary.svg',\n    },\n    {\n      title: 'Upgrade your plan to import \"Contacts\" from CSV',\n      description: 'Buy our subscription to unlock the feature to import contacts from csv',\n      showDialog: false,\n      dialogButtonText: 'Title + Description',\n    },\n    {\n      title: 'Upgrade your plan to import \"Contacts\" from CSV',\n      negativeAction: this.dialogBoxNegativeAction,\n      positiveAction: this.dialogBoxPositiveAction,\n      positiveButtonText: 'Done',\n      negativeButtonText: 'Cancel',\n      showDialog: false,\n      dialogButtonText: 'Title + Actions',\n    },\n    {\n      description: 'Buy our subscription to unlock the feature to import contacts from csv',\n      negativeAction: this.dialogBoxNegativeAction,\n      positiveAction: this.dialogBoxPositiveAction,\n      positiveButtonText: 'Done',\n      negativeButtonText: 'Cancel',\n      showDialog: false,\n      dialogButtonText: 'Description + Actions',\n    },\n    {\n      showDialog: false,\n      dialogButtonText: 'Icon',\n      iconUrl: '../../../assets/analytics/analytics.primary.svg',\n    },\n    {\n      title: 'Upgrade your plan to import \"Contacts\" from CSV',\n      showDialog: false,\n      dialogButtonText: 'Title',\n    },\n    {\n      description: 'Buy our subscription to unlock the feature to import contacts from csv',\n      showDialog: false,\n      dialogButtonText: 'Description',\n    },\n    {\n      negativeAction: this.dialogBoxNegativeAction,\n      positiveAction: this.dialogBoxPositiveAction,\n      positiveButtonText: 'Done',\n      negativeButtonText: 'Cancel',\n      showDialog: false,\n      dialogButtonText: 'Actions',\n    },\n    {\n      showDialog: false,\n      dialogButtonText: 'Empty',\n    },\n  ];\n\n  showFullPageLoader() {\n    this.isFullPageLoader = true;\n    setTimeout(() => {\n      this.isFullPageLoader = false;\n    }, 3000);\n  }\n\n  showFullRippleLoader() {\n    this.isFullRippleLoader = true;\n    setTimeout(() => {\n      this.isFullRippleLoader = false;\n    }, 6000);\n  }\n\n  hidingAlert() {\n    console.log('I am hiding in shared component');\n  }\n\n  onFilesChanged(event: any) {\n    console.log(\"onFileChanged\", event)\n  }\n\n  onError(event: any) {\n    console.log(\"onError\", event)\n  }\n\n  // Method to handle changes from TagInputComponent\n  onTagsChange(updatedTags: string[]): void {\n    this.tags = updatedTags;\n    console.log('Updated tags:', this.tags);\n  }\n\n  onContextMenuItemClick(event: ContextMenuClickEvent) {  \n    const { item, row } = event;\n    console.log('Menu item clicked:', item);\n    console.log('Row data:', row);\n    \n    // Now you can use both item and row data for navigation or other actions\n    // For example:\n    if (item.title === 'Edit') {\n      // Use row data for navigation\n      // this.router.navigate(['/edit', row['id']]);\n    } else if (item.title === 'Delete') {\n      // Use row data for deletion\n      // this.deleteRecord(row.id);\n    }\n  }\n\n  navigateToRoute(row: any): void {\n    \n    this.router.navigate(['projects/active', row.id]);\n  }\n}\n","<div class=\"shared-container\">\n  <div class=\"font-grid\">\n    <div class=\"font-container\">\n      <h1 class=\"header\">Typography - Fonts</h1>\n      <p class=\"description\">Our brand fonts to keep our brand look consistent</p>\n      <div class=\"fonts\">\n        <div class=\"body\">\n          <h2>Font family</h2>\n          <h2>CSS class name</h2>\n          <h2>CSS variable names</h2>\n          <p class=\"font-light\">Matter Light</p>\n          <p class=\"font-light\">font-light</p>\n          <p class=\"font-light\">--font-matter-light</p>\n          <p class=\"font-regular\">Matter Regular</p>\n          <p class=\"font-regular\">font-regular</p>\n          <p class=\"font-regular\">--font-matter-regular</p>\n          <p class=\"font-medium\">Matter Medium</p>\n          <p class=\"font-medium\">font-medium</p>\n          <p class=\"font-medium\">--font-matter-medium</p>\n          <p class=\"font-semibold\">Matter SemiBold</p>\n          <p class=\"font-semibold\">font-semibold</p>\n          <p class=\"font-semibold\">--font-matter-semibold</p>\n          <p class=\"font-bold\">Matter Bold</p>\n          <p class=\"font-bold\">font-bold</p>\n          <p class=\"font-bold\">--font-matter-bold</p>\n          <p class=\"font-heavy\">Matter Heavy</p>\n          <p class=\"font-heavy\">font-heavy</p>\n          <p class=\"font-heavy\">--font-matter-heavy</p>\n          <p class=\"font-light-italic\">Matter Light Italic</p>\n          <p class=\"font-light-italic\">font-light-italic</p>\n          <p class=\"font-light-italic\">--font-light-italic</p>\n          <p class=\"font-italic\">Matter Italic</p>\n          <p class=\"font-italic\">font-italic</p>\n          <p class=\"font-italic\">--font-matter-italic</p>\n          <p class=\"font-medium-italic\">Matter Medium Italic</p>\n          <p class=\"font-medium-italic\">font-medium-italic</p>\n          <p class=\"font-medium-italic\">--font-matter-medium-italic</p>\n          <p class=\"font-semibold-italic\">Matter SemiBold Italic</p>\n          <p class=\"font-semibold-italic\">font-semibold-italic</p>\n          <p class=\"font-semibold-italic\">--font-matter-semibold-italic</p>\n          <p class=\"font-bold-italic\">Matter Bold Italic</p>\n          <p class=\"font-bold-italic\">font-bold-italic</p>\n          <p class=\"font-bold-italic\">--font-matter-bold-italic</p>\n          <p class=\"font-heavy-italic\">Matter Heavy Italic</p>\n          <p class=\"font-heavy-italic\">font-heavy-italic</p>\n          <p class=\"font-heavy-italic\">--font-matter-heavy-italic</p>\n        </div>\n      </div>\n    </div>\n    <div class=\"py-large\">\n      <app-light-divider/>\n    </div>\n    <div class=\"font-sizes-container\">\n      <h1 class=\"header\">Typography - Font sizes</h1>\n      <p class=\"description\">Available font sizes of common text elements</p>\n      <div class=\"font-sizes\">\n        <div class=\"body\">\n          <h2>Fonts</h2>\n          <h2>CSS variables for Fonts</h2>\n          <h1>This is h1 tag (2.25rem)</h1>\n          <p>--h1-font-size</p>\n          <h2>This is h2 tag (1.75rem)</h2>\n          <p>--h2-font-size</p>\n          <h3>This is h3 tag (1.5rem)</h3>\n          <p>--h3-font-size</p>\n          <h4>This is h4 tag (1.25rem)</h4>\n          <p>--h4-font-size</p>\n          <h5>This is h5 tag (1rem)</h5>\n          <p>--h5-font-size</p>\n          <h6>This is h6 tag (0.875rem)</h6>\n          <p>--h6-font-size</p>\n          <p>This is paragraph (1rem)</p>\n          <p>--p-font-size</p>\n        </div>\n      </div>\n    </div>\n  </div>\n  <div class=\"py-large\">\n    <app-light-divider/>\n  </div>\n  <div class=\"color-container\">\n    <h1 class=\"header\">Colors</h1>\n    <p class=\"description\">This section represents all available and used color defined at root as CSS variables</p>\n    <div class=\"colors\">\n      <div class=\"color\">\n        <span class=\"info-alert-background\"></span>\n        <p>--primary</p>\n      </div>\n      <div class=\"color\">\n        <span class=\"primary-color\"></span>\n        <p>--on-primary</p>\n      </div>\n      <div class=\"color\">\n        <span class=\"secondary-color\"></span>\n        <p>--secondary</p>\n      </div>\n      <div class=\"color\">\n        <span class=\"on-disable-arrow\"></span>\n        <p>--on-secondary</p>\n      </div>\n      <div class=\"color\">\n        <span class=\"error-label-background\"></span>\n        <p>--error</p>\n      </div>\n      <div class=\"color\">\n        <span class=\"on-error-label\"></span>\n        <p>--on-error</p>\n      </div>\n      <div class=\"color\">\n        <span class=\"active-toggle-background\"></span>\n        <p>--success</p>\n      </div>\n      <div class=\"color\">\n        <span class=\"on-active-toggle\"></span>\n        <p>--on-success</p>\n      </div>\n      <div class=\"color\">\n        <span class=\"warning-alert-background\"></span>\n        <p>--warning</p>\n      </div>\n      <div class=\"color\">\n        <span class=\"on-warning-alert\"></span>\n        <p>--on-warning</p>\n      </div>\n      <div class=\"color\">\n        <span class=\"non-selected-segment-background\"></span>\n        <p>--tertiary</p>\n      </div>\n      <div class=\"color\">\n        <span class=\"modal-disable-screen-background\"></span>\n        <p>--disabled-background</p>\n      </div>\n      <div class=\"color\">\n        <span class=\"on-inactive-toggle\"></span>\n        <p>--white</p>\n      </div>\n      <div class=\"color\">\n        <span class=\"page-control-background\"></span>\n        <p>--black</p>\n      </div>\n    </div>\n  </div>\n  <div class=\"py-large\">\n    <app-light-divider/>\n  </div>\n  <div class=\"input-container\">\n    <h1 class=\"header\">Input</h1>\n    <p class=\"description\">\n      An input field in UI design is a component, where users can enter data, such as text or numbers,\n      typically featured within forms to collect user information or filter content.\n    </p>\n\n    <div class=\"inputs\">\n      <div class=\"input\">\n        <app-prefix-input [showCounter]=\"false\" [placeholder]=\"'Search'\" class=\"input\">\n          <prefix>\n              <asset-home [height]=\"16\" [width]=\"16\" fill=\"var(--on-secondary)\" />\n          </prefix>\n        </app-prefix-input>\n        <h4>Outlined input<br/> field</h4>\n        <app-labeled-input label=\"Number type\" type=\"number\" />\n        <app-labeled-input label=\"Placeholder\" [initialValue]=\"'dfasfkldaj;lkfdjlk'\" placeholder=\"Enter your answer\" />\n        <app-labeled-input [maxLength]=\"10\" label=\"Max Length\" />\n        <app-labeled-input helperText=\"Suggesstions/ Help text\" label=\"Helper text\" />\n        <app-labeled-input errorMessage=\"Error message\" label=\"Error message\" />\n        <app-labeled-input [disabled]=\"true\" label=\"Disabled\" />\n        <app-labeled-input [showCounter]=\"false\" label=\"Without counter\" />\n      </div>\n\n      <div class=\"input\">\n        <h4>Outlined input field without label</h4>\n        <app-input type=\"date\" />\n        <app-input type=\"datetime-local\" />\n        <app-input type=\"time\" />\n        <app-input placeholder=\"Enter your answer\" [initialValue]=\"'abc'\" />\n        <app-input [maxLength]=\"10\" />\n        <app-input helperText=\"Suggesstions/ Help text\" />\n        <app-input errorMessage=\"Error message\" />\n        <app-input [disabled]=\"true\" />\n        <app-input [showCounter]=\"false\" />\n      </div>\n\n      <div class=\"input\">\n        <h4>Outlined input field with prefix</h4>\n        <app-prefix-labeled-input label=\"Number type\" [initialValue]=\"'dfasfkldaj;lkfdjlk'\" type=\"number\">\n          <prefix>$</prefix>\n        </app-prefix-labeled-input>\n        <app-prefix-labeled-input label=\"Placeholder\" placeholder=\"Enter your answer\">\n          <prefix>$</prefix>\n        </app-prefix-labeled-input>\n        <app-prefix-labeled-input [maxLength]=\"10\" label=\"Max Length\">\n          <prefix>$</prefix>\n        </app-prefix-labeled-input>\n        <app-prefix-labeled-input helperText=\"Suggesstions/ Help text\" label=\"Helper text\">\n          <prefix>$</prefix>\n        </app-prefix-labeled-input>\n        <app-prefix-labeled-input errorMessage=\"Error message\" label=\"Error message\">\n          <prefix>$</prefix>\n        </app-prefix-labeled-input>\n        <app-prefix-labeled-input [disabled]=\"true\" label=\"Disabled\">\n          <prefix>$</prefix>\n        </app-prefix-labeled-input>\n        <app-prefix-labeled-input [showCounter]=\"false\" label=\"Without counter\">\n          <prefix>$</prefix>\n        </app-prefix-labeled-input>\n      </div>\n\n      <div class=\"input\">\n        <h4>Outlined input field with icon</h4>\n        <app-postfix-labeled-input label=\"Number type\" type=\"number\">\n          <postfix><asset-inbox /></postfix>\n        </app-postfix-labeled-input>\n        <app-postfix-labeled-input label=\"Placeholder\" [initialValue]=\"'dfasfkldaj;lkfdjlk'\" placeholder=\"Enter your answer\">\n          <postfix><asset-inbox /></postfix>\n        </app-postfix-labeled-input>\n        <app-postfix-labeled-input [maxLength]=\"10\" label=\"Max Length\">\n          <postfix><asset-inbox /></postfix>\n        </app-postfix-labeled-input>\n        <app-postfix-labeled-input helperText=\"Suggesstions/ Help text\" label=\"Helper text\">\n          <postfix><asset-inbox /></postfix>\n        </app-postfix-labeled-input>\n        <app-postfix-labeled-input errorMessage=\"Error message\" label=\"Error message\">\n          <postfix><asset-inbox /></postfix>\n        </app-postfix-labeled-input>\n        <app-postfix-labeled-input [disabled]=\"true\" label=\"Disabled\">\n          <postfix><asset-inbox /></postfix>\n        </app-postfix-labeled-input>\n        <app-postfix-labeled-input [showCounter]=\"false\" label=\"Without counter\">\n          <postfix><asset-inbox /></postfix>\n        </app-postfix-labeled-input>\n      </div>\n\n      <div class=\"input\">\n        <h4>Outlined input field with icon</h4>\n        <app-prefix-postfix-labeled-input label=\"Number type\" [initialValue]=\"'dfasfkldaj;lkfdjlk'\" type=\"number\">\n          <prefix>$</prefix>\n          <postfix><asset-inbox /></postfix>\n        </app-prefix-postfix-labeled-input>\n        <app-prefix-postfix-labeled-input label=\"Placeholder\" placeholder=\"Enter your answer\">\n          <prefix>$</prefix>\n          <postfix><asset-inbox /></postfix>\n        </app-prefix-postfix-labeled-input>\n        <app-prefix-postfix-labeled-input [maxLength]=\"10\" label=\"Max Length\">\n          <prefix>$</prefix>\n          <postfix><asset-inbox /></postfix>\n        </app-prefix-postfix-labeled-input>\n        <app-prefix-postfix-labeled-input helperText=\"Suggesstions/ Help text\" label=\"Helper text\">\n          <prefix>$</prefix>\n          <postfix><asset-inbox /></postfix>\n        </app-prefix-postfix-labeled-input>\n        <app-prefix-postfix-labeled-input errorMessage=\"Error message\" label=\"Error message\">\n          <prefix>$</prefix>\n          <postfix><asset-inbox /></postfix>\n        </app-prefix-postfix-labeled-input>\n        <app-prefix-postfix-labeled-input [disabled]=\"true\" label=\"Disabled\">\n          <prefix>$</prefix>\n          <postfix><asset-inbox /></postfix>\n        </app-prefix-postfix-labeled-input>\n        <app-prefix-postfix-labeled-input [showCounter]=\"false\" label=\"Without counter\">\n          <prefix>$</prefix>\n          <postfix><asset-inbox /></postfix>\n        </app-prefix-postfix-labeled-input>\n      </div>\n    </div>\n  </div>\n  <div class=\"py-large\">\n    <app-light-divider/>\n  </div>\n\n  <div class=\"textfield-container\">\n    <h1 class=\"header\">Text Field</h1>\n    <p class=\"description\">\n      A text field in UI design is an interactive area where users can input text data,\n      often used in forms for entries such as names, email addresses, or search queries.\n    </p>\n\n    <div class=\"text-fields\">\n\n      <div>\n        <h4>Textfield</h4>\n        <app-text-field (value)=\"onTest($event)\" [showCounter]=\"false\" />\n      </div>\n\n      <div>\n        <h4>Error Text Field</h4>\n        <app-text-field errorMessage=\"There is an error\" />\n      </div>\n\n      <div>\n        <h4>Disabled textfield</h4>\n        <app-text-field [disabled]=\"true\" />\n      </div>\n\n    </div>\n\n  </div>\n  <div class=\"py-large\">\n    <app-light-divider/>\n  </div>\n  <div class=\"dropdown-container\">\n    <h1 class=\"header\">Dropdown (Select)</h1>\n    <p class=\"description\">A dropdown is list of options in which user will select one at a time</p>\n\n    <div class=\"dropdowns\">\n      <div class=\"dropdown\">\n        <h4>Old Dropdown without search bar</h4>\n        <app-legacy-select [options]=\"dropdownOptions\" />\n      </div>\n\n      <div class=\"dropdown\">\n        <h4>Old Dropdown with search bar</h4>\n        <app-legacy-select-with-search [options]=\"dropdownOptions\" [showSearchBar]=\"true\" [isUpLabel]=\"true\" placeholder=\"Hello\" />\n      </div>\n\n      <div class=\"dropdown\">\n        <h4>Dropdown without search bar</h4>\n        <app-select [options]=\"dropdownOptions\" [isUpLabel]=\"true\" placeholder=\"Hello\" />\n      </div>\n\n      <div class=\"dropdown\">\n        <h4>Dropdown with search bar</h4>\n        <app-select-with-search [options]=\"dropdownOptions\" [showSearchBar]=\"true\" [isUpLabel]=\"true\" placeholder=\"Hello\"/>\n      </div>\n    </div>\n\n    <p class=\"description\">Without border dropdown</p>\n\n    <div class=\"dropdowns\">\n      <div class=\"dropdown\">\n        <h4>Old Dropdown without search bar</h4>\n        <app-legacy-select [showBorder]=\"false\" [options]=\"dropdownOptions\" />\n      </div>\n\n      <div class=\"dropdown\">\n        <h4>Old Dropdown with search bar</h4>\n        <app-legacy-select-with-search [showBorder]=\"false\" [options]=\"dropdownOptions\" [showSearchBar]=\"true\" />\n      </div>\n\n      <div class=\"dropdown\">\n        <h4>Dropdown without search bar</h4>\n        <app-select [showBorder]=\"false\" [options]=\"dropdownOptions\" />\n      </div>\n\n      <div class=\"dropdown\">\n        <h4>Dropdown with search bar</h4>\n        <app-select-with-search [showBorder]=\"false\" [options]=\"dropdownOptions\" [showSearchBar]=\"true\" />\n      </div>\n    </div>\n  </div>\n  <div class=\"py-large\">\n    <app-light-divider/>\n  </div>\n  <div class=\"toggle-container\">\n    <h1 class=\"header\">Toggle</h1>\n    <p class=\"description\">\n      A toggle is an interactive switch that allows users to change settings between two states,\n      such as on/off or active/inactive, typically represented by a sliding button.\n    </p>\n\n    <div class=\"toggles\">\n      <div class=\"toggle\">\n        <h4>Active toggle</h4>\n        <app-toggle [checked]=\"true\"></app-toggle>\n      </div>\n\n      <div class=\"toggle\">\n        <h4>Inactive toggle</h4>\n        <app-toggle></app-toggle>\n      </div>\n\n      <div class=\"toggle\">\n        <h4>Disabled toggle</h4>\n        <app-toggle [disabled]=\"true\"></app-toggle>\n      </div>\n      <div class=\"toggle\">\n        <h4>Disabled toggle + Checked</h4>\n        <app-toggle [disabled]=\"true\" [checked]=\"true\"></app-toggle>\n      </div>\n    </div>\n  </div>\n  <div class=\"py-large\">\n    <app-light-divider/>\n  </div>\n  <div class=\"tooltip-container\">\n    <h1 class=\"header\">Tooltip</h1>\n    <p class=\"description\">Providing information of any element </p>\n\n    <div class=\"tooltips\">\n      <div class=\"tooltip\">\n        <h4>Light theme with information container open below icon</h4>\n        <app-tooltip>\n          <icon>\n            <asset-info fill=\"#999\" [height]=\"20\" [width]=\"20\" />\n          </icon>\n          This is a tooltip design for light theme.\n        </app-tooltip>\n      </div>\n\n      <div class=\"tooltip\">\n        <h4>Dark theme with information container open below icon</h4>\n        <app-tooltip theme=\"dark\">\n          <icon>\n            <asset-info fill=\"#999\" [height]=\"20\" [width]=\"20\" />\n          </icon>\n          This is a tooltip design for light theme.\n        </app-tooltip>\n      </div>\n\n      <div class=\"tooltip\">\n        <h4>Information container open up above icon</h4>\n        <app-tooltip theme=\"dark\" infoPosition=\"up\">\n          <icon>\n            <asset-info fill=\"#999\" [height]=\"20\" [width]=\"20\" />\n          </icon>\n          This is a tooltip design for light theme.This is a tooltip design for light theme.This is a tooltip design for\n          light\n          theme.This is a tooltip design for light theme.This is a tooltip design for light theme.This is a tooltip\n          design\n          for\n          light theme.\n          This is a tooltip design for light theme.This is a tooltip design for light theme.This is a tooltip design for\n          light\n          theme.This is a tooltip design for light theme.This is a tooltip design for light theme.This is a tooltip\n          design\n          for\n          light theme.\n        </app-tooltip>\n      </div>\n\n      <div class=\"tooltip\">\n        <h4>Information container open at left of icon</h4>\n        <app-tooltip theme=\"dark\" infoPosition=\"start\">\n          <icon>\n            <asset-info fill=\"#999\" [height]=\"20\" [width]=\"20\" />\n          </icon>\n          This is a tooltip design for light theme.\n        </app-tooltip>\n      </div>\n\n      <div class=\"tooltip\">\n        <h4>Information container open at right of icon</h4>\n        <app-tooltip theme=\"dark\" infoPosition=\"end\">\n          <icon>\n            <asset-info fill=\"#999\" [height]=\"20\" [width]=\"20\" />\n          </icon>\n          This is a tooltip design for light theme.\n        </app-tooltip>\n      </div>\n    </div>\n  </div>\n  <div class=\"py-large\">\n    <app-light-divider/>\n  </div>\n  <div class=\"progress-bar-container\">\n    <h1 class=\"header\">Progress bar</h1>\n    <p class=\"description\">Progress bars are indicators of any process's progress</p>\n\n    <div class=\"progress-bars\">\n      <h4>Progess bar (1rem)</h4>\n      <app-progress-bar title=\"Progess Bar\" height=\"1rem\" [max]=\"500\" [value]=\"400\" />\n\n      <h4>Progress bar (0.75rem) </h4>\n      <app-progress-bar title=\"Progess Bar\" height=\"0.75rem\" [max]=\"500\" [value]=\"400\" />\n\n      <h4>Progress bar (0.5rem)</h4>\n      <app-progress-bar title=\"Progess Bar\" height=\"0.5rem\" [max]=\"500\" [value]=\"400\" />\n\n      <h4>Progress bar (0.25rem)</h4>\n      <app-progress-bar title=\"Progess Bar\" height=\"0.25rem\" [max]=\"500\" [value]=\"400\" />\n    </div>\n  </div>\n  <div class=\"py-large\">\n    <app-light-divider/>\n  </div>\n  <div class=\"modal-container\">\n    <h1 class=\"header\">Modal</h1>\n    <p class=\"description\">Modal to show custom data as pop up container to let user made changes</p>\n\n    <div class=\"modal\">\n      @if (showModal) {\n      <app-modal (close)=\"showModal = false\">\n        <h-divider>\n          <app-light-divider></app-light-divider>\n        </h-divider>\n        <modal-title>\n          <div class=\"modal-title\">\n            <h3>Rewrite Answer</h3>\n          </div>\n        </modal-title>\n        <modal-content>\n          <div class=\"modal-actions\">\n            <div class=\"inputs-container\">\n              <app-input label=\"User Message\" [maxLength]=\"500\" [showCounter]=\"false\" />\n              <app-input label=\"Bot Response\" [maxLength]=\"500\" [showCounter]=\"false\" />\n              <app-input label=\"Expected Answer\" [maxLength]=\"500\" [showCounter]=\"false\" />\n              <app-input label=\"User Message\" [maxLength]=\"500\" [showCounter]=\"false\" />\n              <app-input label=\"Bot Response\" [maxLength]=\"500\" [showCounter]=\"false\" />\n              <app-input label=\"Expected Answer\" [maxLength]=\"500\" [showCounter]=\"false\" />\n              <app-input label=\"User Message\" [maxLength]=\"500\" [showCounter]=\"false\" />\n              <app-input label=\"Bot Response\" [maxLength]=\"500\" [showCounter]=\"false\" />\n              <app-input label=\"Expected Answer\" [maxLength]=\"500\" [showCounter]=\"false\" />\n              <app-input label=\"User Message\" [maxLength]=\"500\" [showCounter]=\"false\" />\n              <app-input label=\"Bot Response\" [maxLength]=\"500\" [showCounter]=\"false\" />\n              <app-input label=\"Expected Answer\" [maxLength]=\"500\" [showCounter]=\"false\" />\n            </div>\n          </div>\n        </modal-content>\n        <f-divider>\n          <app-light-divider></app-light-divider>\n        </f-divider>\n        <modal-actions class=\"modal-actions\">\n          <div class=\"button-container\">\n            <app-primary-button\n                (press)=\"dialogButtonsOutput($event)\">Update Answer</app-primary-button>\n          </div>\n        </modal-actions>\n      </app-modal>\n      } @else {\n      <app-primary-button (press)=\"showModal = true\">\n        Preview\n      </app-primary-button>\n      }\n    </div>\n  </div>\n  <div class=\"py-large\">\n    <app-light-divider/>\n  </div>\n  <div class=\"dialog-container\">\n    <h1 class=\"header\">Dialog</h1>\n    <p class=\"description\">Dialog to show custom pop up container to let user perform actions</p>\n\n    <div class=\"dialogs\">\n      @for (dialog of dialogsUseCases; track dialog) {\n        <div class=\"dialog\">\n          @if (dialog.showDialog) {\n          <app-dialog (close)=\"dialogButtonsOutput($event)\" [positiveAction]=\"dialog.positiveAction\"\n            [negativeAction]=\"dialog.negativeAction\" [positiveButtonText]=\"dialog.positiveButtonText\"\n            [negativeButtonText]=\"dialog.negativeButtonText\" [title]=\"dialog.title\"\n            [description]=\"dialog.description\" [iconUrl]=\"dialog.iconUrl\">\n          </app-dialog>\n\n          <!-- To add dynamic component here  -->\n          <!-- <ng-template #customContent>\n            <app-slider height=\"1rem\">\n              <left-label>1</left-label>\n              <right-label>100</right-label>\n            </app-slider>\n          </ng-template> -->\n          } @else {\n          <app-primary-button (press)=\"dialog.showDialog= true\">\n            {{dialog.dialogButtonText}}\n          </app-primary-button>\n          }\n        </div>\n      }\n    </div>\n  </div>\n  <div class=\"py-large\">\n    <app-light-divider/>\n  </div>\n  <div class=\"top-bar-container\">\n    <h1 class=\"header\">Top Bar</h1>\n    <p class=\"description\">\n      Top bar is navigation component. It facilitates quick access to key features\n      and enhances user experience by providing intuitive navigation\n    </p>\n    <app-top-bar [tabs]=\"[\n      { title: 'Design', value: 'design', selected: true },\n      { title: 'General', value: 'general', selected: false },\n      { title: 'Alerts', value: 'alerts', selected: false },\n      { title: 'Trigger', value: 'trigger', selected: false },\n      { title: 'User access', value: 'userAccess', selected: false },\n      { title: 'Live chat', value: 'liveChat', selected: false},\n    ]\" />\n  </div>\n  <div class=\"py-large\">\n    <app-light-divider/>\n  </div>\n  <div class=\"slider-container\">\n    <h1 class=\"header\">Slider</h1>\n    <p class=\"description\">\n      A slider is horizontal track with a control, called a thumb,\n      that people can adjust between minimum and maximum\n    </p>\n\n    <h4>Full slider without left and right labels</h4>\n    <app-slider height=\"1rem\">\n      <left-label>1</left-label>\n      <right-label>100</right-label>\n    </app-slider>\n\n    <h4>Full slider with left and right labels</h4>\n    <app-slider height=\"1rem\">\n      <left-label>1</left-label>\n      <right-label>100</right-label>\n    </app-slider>\n  </div>\n  <div class=\"py-large\">\n    <app-light-divider/>\n  </div>\n  <div class=\"alerts-container\">\n    <h1 class=\"header\">Alerts</h1>\n    <p class=description>\n      Alerts in UI design are interactive notifications that inform users about\n      important changes or conditions within an application, often requiring acknowledgement before proceeding.\n    </p>\n\n    <div class=\"alerts\">\n\n      <div class=\"alert\">\n        <h4>Info</h4>\n        <app-info-alert (close)=\"hidingAlert()\">\n          <div class=\"error-message\">\n            <p>This is an info message</p>\n            <app-primary-button>\n              Info\n            </app-primary-button>\n          </div>\n        </app-info-alert>\n      </div>\n\n      <div class=\"alert\">\n        <h4>Warning alerts</h4>\n        <app-warning-alert type=\"warning\" (close)=\"hidingAlert()\">\n          <div class=\"error-message\">\n            <p>This is a warning message</p>\n            <app-primary-button>\n              Warning\n            </app-primary-button>\n          </div>\n        </app-warning-alert>\n      </div>\n\n      <div class=\"alert\">\n        <h4>Error alerts</h4>\n        <app-error-alert type=\"error\" (close)=\"hidingAlert()\" (hide)=\"hidingAlert()\">\n          <div class=\"error-message\">\n            <p>This is an error message</p>\n            <app-primary-button>\n              Error\n            </app-primary-button>\n          </div>\n        </app-error-alert>\n      </div>\n\n      <div class=\"alert\">\n        <h4>Custom</h4>\n        <app-alert type=\"custom\" (close)=\"hidingAlert()\">\n          <div class=\"error-message custom\">\n            <p>This is a custom message</p>\n            <app-primary-button>Custom</app-primary-button>\n          </div>\n        </app-alert>\n      </div>\n    </div>\n  </div>\n  <div class=\"py-large\">\n    <app-light-divider/>\n  </div>\n  <div class=\"notification-container\">\n    <h1 class=\"header\">Notification</h1>\n    <p class=\"description\"> Please look at right top side of screen </p>\n\n    <div class=\"notifications\">\n      <div class=\"notification\">\n        <app-primary-button (press)=\"showErrorNotification = !showErrorNotification\">\n          Error notification\n        </app-primary-button>\n        @if (showErrorNotification) {\n          <app-error-notification (close)=\"showErrorNotification = !showErrorNotification\">\n            Error  notification\n          </app-error-notification>\n        }\n      </div>\n\n      <div class=\"notififcation\">\n        <app-primary-button (press)=\"showWarningNotification = !showWarningNotification\">\n          Warning notification\n        </app-primary-button>\n        @if (showWarningNotification) {\n        <app-warning-notification (close)=\"showWarningNotification = !showWarningNotification\">\n          Warning notification\n        </app-warning-notification>\n        }\n      </div>\n\n      <div class=\"notification\">\n        <app-primary-button (press)=\"showInfoNotification = !showInfoNotification\">\n          Info notification\n        </app-primary-button>\n        @if (showInfoNotification) {\n        <app-info-notification (close)=\"showInfoNotification = !showInfoNotification\">\n          Info notification\n        </app-info-notification>\n        }\n      </div>\n\n      <div class=\"notification\">\n        <app-primary-button (press)=\"showSuccessNotification = !showSuccessNotification\">\n          Success notification\n        </app-primary-button>\n        @if (showSuccessNotification) {\n        <app-success-notification (close)=\"showSuccessNotification = !showSuccessNotification\">\n          This is success notification\n        </app-success-notification>\n        }\n      </div>\n\n    </div>\n  </div>\n  <div class=\"py-large\">\n    <app-light-divider/>\n  </div>\n  <div class=\"chips-container\">\n    <h1>Chips</h1>\n    <p class=\"description\">These are chips to be used to show to users</p>\n    <div class=\"chips\">\n      <app-primary-chip>\n        <span style=\"text-align: center;\">This is primary chip</span>\n      </app-primary-chip>\n      <app-secondary-chip>\n        <span style=\"text-align: center;\">This is secondary chip</span>\n      </app-secondary-chip>\n      <app-error-chip>\n        <span style=\"text-align: center;\">This is error chip</span>\n      </app-error-chip>\n      <app-success-chip>\n        <span style=\"text-align: center;\">This is success chip</span>\n      </app-success-chip>\n      <app-warning-chip>\n        <span style=\"text-align: center;\">This is warning chip</span>\n      </app-warning-chip>\n      <app-chip>\n        <span style=\"text-align: center; color: pink\">This is custom chip</span>\n      </app-chip>\n    </div>\n  </div>\n  <div class=\"py-large\">\n    <app-light-divider/>\n  </div>\n  <div class=\"segmented-picker-container\">\n    <h1 class=\"header\">Segmented Picker</h1>\n    <app-segmented-picker [segments]=\"[\n    { title: 'Segment 1', selected: true},\n    { title: 'Segment 2', selected: false},\n    { title: 'Segment 3', selected: false},\n    { title: 'Segment 4', selected: false },\n  ]\" />\n  </div>\n  <div class=\"py-large\">\n    <app-light-divider/>\n  </div>\n  <div class=\"page-control-container\">\n    <h1 class=\"header\">Page Control</h1>\n    <app-page-control [pages]=\"[\n    { title: 'Item 1', selected: true },\n    { title: 'Item 2', selected: false },\n    { title: 'Item 3', selected: false },\n    { title: 'Item 4', selected: false },\n    { title: 'Item 5', selected: false},\n    { title: 'Item 6', selected: false},\n    { title: 'Item 7', selected: false},\n    { title: 'Item 8', selected: false},\n    { title: 'Item 9', selected: false},\n    { title: 'Item 10', selected: false}\n    ]\" />\n  </div>\n  <div class=\"py-large\">\n    <app-light-divider/>\n  </div>\n  <div class=\"accordian-container\">\n    <h1 class=\"header\">Accordian</h1>\n    <p class=\"description\">\n      An accordion in UI design is a vertically stacked list of items that allows users to expand and collapse sections\n      containing related content,\n      facilitating efficient space usage and organizing information neatly.</p>\n    <div class=\"accordians\">\n      <app-accordian>\n        <icon><asset-label-icon /></icon>\n        <heading>It is a heading\n        </heading>\n        <description>It is a description</description>\n        <div>I am a collapsed container</div>\n      </app-accordian>\n    </div>\n  </div>\n  <div class=\"py-large\">\n    <app-light-divider/>\n  </div>\n  <div class=\"table-container\">\n    <h1 class=\"header\">Table</h1>\n    <p class=\"description\">\n      An intuitive tool for seamless navigation, offering quick access to main sections,\n      enhancing user experience with effortless browsing.\n    </p>\n    <div class=\"tables\">\n      <app-table [tableHeaders]=\"tableHeader\" [tableBody]=\"tableBody\" [contextMenu]=\"true\" [contextMenuData]=\"contextMenuData\" (contextMenuItemClick)=\"onContextMenuItemClick($event)\" (rowClicked)=\"navigateToRoute($event)\">\n      </app-table>\n    </div>\n  </div>\n  <div class=\"py-large\">\n    <app-light-divider/>\n  </div>\n  <div class=\"button-container\">\n    <h1 class=\"header\">Buttons</h1>\n    <p class=\"description\">\n      A button in user interface (UI) design is an interactive element that facilitates user actions,\n      such as submitting forms or opening links,\n      often highlighted with distinctive colors, icons, or text to denote its functionality.\n    </p>\n    <div class=\"buttons\">\n      <div class=\"button\">\n        <p class=\"description\">Primary Button</p>\n         <app-primary-button>\n          Primary Button\n         </app-primary-button>\n      </div>\n      <div class=\"button\">\n        <p class=\"description\">Export Button</p>\n         <app-primary-button>\n          <asset-export />  Export Button\n         </app-primary-button>\n      </div>\n      <app-light-divider margin=\"1rem 0\" />\n      <div class=\"button\">\n        <p class=\"description\">Secondary Button</p>\n        <app-secondary-button>Secondary Button</app-secondary-button>\n      </div>\n      <app-light-divider margin=\"1rem 0\" />\n      <div class=\"button\">\n        <p class=\"description\">Outlined Button</p>\n        <app-outlined-button type=\"outlined\">Outlined Button</app-outlined-button>\n      </div>\n      <app-light-divider margin=\"1rem 0\" />\n      <div class=\"button\">\n        <p class=\"description\">Link CTA</p>\n        <app-button><p style=\"color: var(--on-primary)\">+Add Contact</p></app-button>\n      </div>\n      <app-light-divider margin=\"1rem 0\" />\n      <div class=\"button\">\n        <p class=\"description\">Small Button</p>\n        <app-button>\n          <div class=\"testing\">\n            <asset-label-icon fill=\"red\" />\n          </div>\n        </app-button>\n      </div>\n      <app-light-divider margin=\"1rem 0\" />\n      <div class=\"button\">\n        <p class=\"description\">Outlined Button</p>\n        <app-outlined-button type=\"outlined\">\n          <asset-cross [height]=\"14\" [width]=\"14\" class=\"cross\" fill=\"#216cf4\" />\n          Outlined Button\n        </app-outlined-button>\n      </div>\n      <app-light-divider margin=\"1rem 0\" />\n      <div class=\"button\">\n        <p class=\"description\">Primary Button</p>\n        <app-primary-button>\n          <asset-cross [height]=\"14\" [width]=\"14\" class=\"cross\" fill=\"#fff\" />\n          Primary Button\n        </app-primary-button>\n      </div>\n      <app-light-divider margin=\"1rem 0\" />\n      <div class=\"button\">\n        <p class=\"description\">Add and remove button</p>\n        <div class=\"btn\">\n          <app-button>\n            <span class=\"decrease-button\">\n              -\n            </span>\n          </app-button>\n\n          <app-button>\n            <span class=\"increase-button\">+</span>\n          </app-button>\n        </div>\n      </div>\n    </div>\n  </div>\n  <div class=\"py-large\">\n    <app-light-divider/>\n  </div>\n  <div class=\"link-container\">\n    <h1 class=\"header\">Link</h1>\n    <app-link link=\"https://www.google.com/\">Link</app-link>\n  </div>\n  <div class=\"py-large\">\n    <app-light-divider/>\n  </div>\n  <div class=\"radio-buttons-container\">\n    <h1 class=\"header\">Radio Buttons</h1>\n    <app-radio-buttons [isDescription]=\"true\" [optionList]=\"[\n        { title: 'Radio Label', value: 'radio label', disabled: false, description: 'Description for Radio Label' },\n        { title: 'Radio Label 2', value: 'radio label', disabled: false, description: 'Description for Radio Label two' },\n        { title: 'Radio + Disable Label', value: 'radio disable label', disabled: true, description: 'Description for Radio Label two' }\n      ]\" />\n  </div>\n  <div class=\"py-large\">\n    <app-light-divider/>\n  </div>\n  <div class=\"file-upload-container\">\n    <h1 class=\"header\">File Upload</h1>\n    <app-file-upload\n      [maxFiles]=\"8\"\n      [allowMultiple]=\"true\"\n      [acceptedTypes]=\"'.pdf,.doc'\"\n      [maxFileSize]=\"5242880\"\n      (filesChanged)=\"onFilesChanged($event)\"\n      (error)=\"onError($event)\"\n      >\n    </app-file-upload>\n  </div>\n  <div class=\"py-large\">\n    <app-light-divider/>\n  </div>\n  <div class=\"tag-input-container\">\n    <h1 class=\"header\">Tag Input</h1>\n    <app-tag-input\n      [initialTags]=\"tags\"\n      (tagsChange)=\"onTagsChange($event)\"\n      placeholder=\"Type and press Enter\"\n    ></app-tag-input>\n  </div>\n  <div class=\"py-large\">\n    <app-light-divider/>\n  </div>\n  <div class=\"checkbox-container\">\n    <h1 class=\"header\">Checkboxes</h1>\n    <app-check-boxes [optionList]=\"[\n        { title: 'Unselected, Active', value: 'not-checked', disabled: false },\n        { title: 'Unselected, Disable', value: 'not-checked', disabled: true },\n        { title: 'Checked', value: 'checked', disabled: false },\n        { title: 'Indeterminate', value: 'indeterminate', disabled: false },\n        { title: 'Indeterminate + Error', value: 'indeterminate', disabled: false },\n      ]\" />\n  </div>\n  <div class=\"py-large\">\n    <app-light-divider/>\n  </div>\n  <div class=\"pagination-container\">\n    <h1 class=\"header\">Pagination</h1>\n    <app-pagination [totalCount]=\"1000\" [entriesPerPage]=\"10\" />\n  </div>\n  <div class=\"py-large\">\n    <app-light-divider/>\n  </div>\n  <div class=\"label-container\">\n    <h1 class=\"header\">Label</h1>\n    <div class=\"labels\">\n      <app-error-label>\n        <span><asset-cross [width]=\"10\" [height]=\"10\" [fill]=\"errorColor\" /> &nbsp;</span> <span>Error</span>\n      </app-error-label>\n      <app-success-label>\n        <span>Success</span>\n      </app-success-label>\n      <app-secondary-label>\n        <span>! &nbsp;</span> <span>Secondary</span>\n      </app-secondary-label>\n    </div>\n  </div>\n  <div class=\"py-large\">\n    <app-light-divider/>\n  </div>\n  <div class=\"divider-container\">\n    <h1>Divider</h1>\n    <p class=\"description\">Divider is a component to represent separation between two container or elements</p>\n    <div class=\"dividers\">\n      <div class=\"divider\">\n        <p>Dark divider</p>\n        <div>\n          <app-dark-divider />\n        </div>\n      </div>\n      <div class=\"divider\">\n        <p>Medium divider</p>\n        <div>\n          <app-divider />\n        </div>\n      </div>\n      <div class=\"divider\">\n        <p>Light divider</p>\n        <div>\n          <div class=\"py-large\">\n            <app-light-divider/>\n          </div>\n        </div>\n      </div>\n    </div>\n  </div>\n  <div class=\"py-large\">\n    <app-light-divider/>\n  </div>\n  <div class=\"spacer-container\">\n    <h1>Spacer</h1>\n    <div class=\"spacers\">\n      <div class=\"spacer\">\n        <div class=\"spacer-heading\">\n          <h4>Vertical Spacer</h4>\n          <p>Take Space according to the container height or we can give custom height</p>\n        </div>\n        <app-spacer />\n        <div>\n          <span class=\"text\">Hello World</span>\n        </div>\n        <app-spacer height=\"5rem\" />\n        <div>\n          <span class=\"text\">Hello Relinns</span>\n        </div>\n      </div>\n      <app-spacer />\n      <div class=\"spacer\">\n        <div class=\"spacer-heading\">\n          <h4>Horizontal Spacer</h4>\n          <p>Take Space according to the container or we can give custom width of spacer</p>\n        </div>\n        <app-spacer />\n        <span class=\"text\">Hello</span><app-spacer width=\"10rem\" /><span class=\"text\">World</span>\n      </div>\n    </div>\n  </div>\n  <app-light-divider margin=\"1rem 0\" />\n  <div class=\"loader-container\">\n    <h1 class=\"header\">Loader</h1>\n    <p class=\"description\">Loader component can be used from UX point of view to let user know that website is loading content</p>\n    <div class=\"loaders\">\n      <div class=\"loader\">\n        <h4>Loader</h4>\n        <app-loader />\n      </div>\n      <div class=\"loader\">\n        <h4>Full page loader</h4>\n        @if (!isFullPageLoader) {\n          <div class=\"button\">\n            <app-primary-button (press)=\"showFullPageLoader()\">Full page loader</app-primary-button>\n          </div>\n        } @else {\n          <app-full-page-loader />\n        }\n      </div>\n      <div class=\"loader\">\n        <h4>Ripple full page loader</h4>\n        @if (!isFullRippleLoader) {\n          <div class=\"button\">\n            <app-primary-button (press)=\"showFullRippleLoader()\">Ripple full page loader</app-primary-button>\n          </div>\n        } @else {\n          <app-ripple-loader>\n            Loading...\n          </app-ripple-loader>\n        }\n      </div>\n    </div>\n  </div>\n\n    <app-light-divider/>\n\n  <div class=\"context-menu-container\">\n    <div>\n      <h1>Context Menu</h1>\n      <p class=\"description\">Context menu is a component to show a list of options on click</p>\n    </div>\n    <div class=\"context-menu\">\n      <app-context-menu [contextMenu]=\"contextMenuData\"/>\n    </div>\n  </div>\n  <app-light-divider margin=\"1rem 0\" />\n  <div class=\"clipboard-copy-container\">\n    <h1 class=\"header\">Copy to clipboard</h1>\n    <p class=\"description\">Let user copy the text in clipboard</p>\n    <div class=\"clipboard-copy-button\">\n      <div class=\"item\">\n        <a href=\"https://botpenguin.com\">BotPenguin</a>\n      <app-tooltip>\n        <icon>\n          <app-clipboard-copy value=\"https://botpenguin.com\">\n            <asset-copy />\n          </app-clipboard-copy>\n        </icon>\n        <p>Copy website url </p>\n      </app-tooltip>\n      </div>\n      <div class=\"item\">\n        <app-tooltip>\n          <icon>\n            <app-clipboard-copy value=\"Text to copy\">\n              <p>Text to copy</p>\n            </app-clipboard-copy>\n          </icon>\n          <p>Copy text</p>\n        </app-tooltip>\n      </div>\n    </div>\n  </div>\n  <div class=\"created-by-container\">\n    <h2>Crafted with ❣️ by Relinns</h2>\n  </div>\n</div>","import { Component, CUSTOM_ELEMENTS_SCHEMA, NO_ERRORS_SCHEMA } from '@angular/core';\nimport { RouterOutlet } from '@angular/router';\nimport { NavbarComponent } from './shared/navbar/navbar.component';\nimport { NavbarItem } from '../models/shared/navbar';\nimport { LabelIconAsset } from '../../assets/label-icon/label-icon.component';\nimport { HomeAsset } from '../../assets/home/home.component';\nimport { CommonService } from '../services/common/common.service';\nimport { TreeAsset } from '../../assets/tree/tree.component';\nimport { InboxAsset } from '../../assets/inbox/inbox.component';\nimport { AnalyticsAsset } from '../../assets/analytics/analytics.component';\nimport { TeamAsset } from '../../assets/team/team.component';\nimport { SubscriptionCardAsset } from '../../assets/subscription-card/subscription-card.component';\nimport { NotificationAsset } from '../../assets/notification/notification.component';\nimport { CodeBlockAsset } from '../../assets/code-block/code-block.component';\nimport { SharedComponent } from \"./shared/shared.component\";\n\n@Component({\n  selector: 'app-shared-components',\n  standalone: true,\n  imports: [RouterOutlet, NavbarComponent, LabelIconAsset, SharedComponent],\n  templateUrl: './app-shared.component.html',\n  schemas: [CUSTOM_ELEMENTS_SCHEMA, NO_ERRORS_SCHEMA],\n  styleUrl: './app-shared.component.scss'\n})\nexport class AppSharedComponents {\n  title = 'Relinns UI Kit';\n  navbodyOptions: NavbarItem[] = [];\n  navfooterOptions: NavbarItem[] = [];\n  iconColor = '#999';\n  selectedItemColor = '#216CF4';\n\n  constructor(private commonService: CommonService) {\n    this.selectedItemColor = this.commonService.getCSSVariablesValue('--on-primary');\n    this.iconColor = this.commonService.getCSSVariablesValue('--on-secondary');\n  }\n\n  ngOnInit() {\n    this.navbodyOptions = [\n      {\n        title: 'Compose',\n        value: 'create bot',\n        type: 'button',\n        icon: {\n          component: HomeAsset,\n          inputs: {\n            fill: '#fff',\n          }\n        }\n      },\n      {\n        title: 'Home',\n        value: 'home',\n        type: 'text',\n        icon: {\n          component: HomeAsset,\n          inputs: {\n            fill: this.iconColor,\n            selectedFill: this.selectedItemColor,\n          }\n        }\n      },\n      {\n        title: 'Bots',\n        value: 'bots',\n        type: 'text',\n        icon: {\n          component: TreeAsset,\n          inputs: {\n            fill: this.iconColor,\n            selectedFill: this.selectedItemColor,\n          }\n        }\n      },\n      {\n        title: 'Inbox',\n        value: 'inbox',\n        type: 'text',\n        icon: {\n          component: InboxAsset,\n          inputs: {\n            fill: this.iconColor,\n            selectedFill: this.selectedItemColor,\n          }\n        }\n      },\n      {\n        title: 'Analytics',\n        value: 'analytics',\n        type: 'text',\n        icon: {\n          component: AnalyticsAsset,\n          inputs: {\n            fill: this.iconColor,\n            selectedFill: this.selectedItemColor,\n          }\n        }\n      },\n      {\n        title: 'Team',\n        value: 'team',\n        type: 'text',\n        icon: {\n          component: TeamAsset,\n          inputs: {\n            fill: this.iconColor,\n            selectedFill: this.selectedItemColor,\n          }\n        }\n      },\n      {\n        title: 'Subscriptions',\n        value: 'subscriptions',\n        type: 'text',\n        icon: {\n          component: SubscriptionCardAsset,\n          inputs: {\n            fill: this.iconColor,\n            selectedFill: this.selectedItemColor,\n          }\n        }\n      },\n    ];\n\n    this.navfooterOptions = [\n      {\n        title: 'Go Online',\n        value: 'goOnline',\n        type: 'toggle',\n        placement: 'start',\n      },\n      {\n        title: 'Notifications',\n        value: 'notifications',\n        type: 'text',\n        icon: {\n          component: NotificationAsset,\n          inputs: {\n            fill: this.iconColor,\n            selectedFill: this.selectedItemColor,\n          }\n        }\n      },\n      {\n        title: 'Developers',\n        value: 'developers',\n        type: 'text',\n        icon: {\n          component: CodeBlockAsset,\n          inputs: {\n            fill: this.iconColor,\n            selectedFill: this.selectedItemColor,\n          }\n        }\n      },\n    ];\n\n  }\n}\n","<div class=\"app-container\">\n  <div class=\"navbar-container\">\n    <app-navbar [bodyItems]=\"navbodyOptions\" [bottomItems]=\"navfooterOptions\">\n      <logo>\n        <img src=\"https://ik.imagekit.io/ats/icons/logo.png\" alt=\"logo\" height=\"48px\" width=\"48px\" />\n      </logo>\n    </app-navbar>\n  </div>\n  <div class=\"other-container\" >\n    <app-shared />\n  </div>\n</div>","import { Component, Input } from '@angular/core';\n\n@Component({\n  selector: 'asset-logout',\n  standalone: true,\n  imports: [],\n  templateUrl: './logout.component.svg',\n})\nexport class LogoutAsset {\n  @Input() fill = '#000';\n  @Input() width = 24;\n  @Input() height = 24;\n}\n","<svg xmlns=\"http://www.w3.org/2000/svg\" [attr.width]=\"width\" [attr.height]=\"height\" viewBox=\"0 0 15.833 14.25\">\n  <path id=\"Path_10661\" data-name=\"Path 10661\" d=\"M13.875,6.167,12.759,7.283,14.8,9.333H6.75v1.583H14.8l-2.042,2.042,1.116,1.124,3.958-3.958ZM3.583,4.583H9.917V3H3.583A1.588,1.588,0,0,0,2,4.583V15.667A1.588,1.588,0,0,0,3.583,17.25H9.917V15.667H3.583Z\" transform=\"translate(-2 -3)\" [attr.fill]=\"fill\"/>\n</svg>\n\n<!-- Previous fill was: #AA263F -->","import { Component, Input } from '@angular/core';\n\n@Component({\n  selector: 'asset-move',\n  standalone: true,\n  imports: [],\n  templateUrl: './more.component.svg',\n})\nexport class MoreAsset {\n  @Input() height = 4;\n  @Input() width = 19;\n  @Input() fill = '#000';\n}\n","<svg xmlns=\"http://www.w3.org/2000/svg\" [attr.width]=\"width\" [attr.height]=\"height\" viewBox=\"0 0 19 4\">\n  <g id=\"Icon_ionic-ios-more\" data-name=\"Icon ionic-ios-more\" transform=\"translate(-5 -15.031)\">\n    <path id=\"Path_42194\" data-name=\"Path 42194\" d=\"M17.314,15.328a2,2,0,1,0,2,2,2,2,0,0,0-2-2Z\" transform=\"translate(-2.314 -0.297)\" [attr.fill]=\"fill\"/>\n    <path id=\"Path_42195\" data-name=\"Path 42195\" d=\"M6.5,15.328a2,2,0,1,0,2,2,2,2,0,0,0-2-2Z\" transform=\"translate(0.5 -0.297)\" [attr.fill]=\"fill\"/>\n    <path id=\"Path_42196\" data-name=\"Path 42196\" d=\"M28.156,15.328a2,2,0,1,0,2,2,2,2,0,0,0-2-2Z\" transform=\"translate(-6.156 -0.297)\" [attr.fill]=\"fill\"/>\n  </g>\n</svg>\n","import { Component, Input } from '@angular/core';\n\n@Component({\n  selector: 'asset-profile',\n  standalone: true,\n  imports: [],\n  templateUrl: './profile.component.svg',\n})\nexport class ProfileAsset {\n  @Input() height = 24;\n  @Input() width = 24;\n  @Input() fill = '#000';\n}\n","<svg xmlns=\"http://www.w3.org/2000/svg\"[attr.width]=\"width\" [attr.height]=\"height\" viewBox=\"0 0 24 24\">\n  <g id=\"Profile\" transform=\"translate(7907 21486)\">\n    <rect id=\"Rectangle_8034\" data-name=\"Rectangle 8034\" [attr.width]=\"width\" [attr.height]=\"height\" transform=\"translate(-7907 -21486)\" fill=\"none\"/>\n    <path id=\"Profile-2\" data-name=\"Profile\" d=\"M169-791a4.333,4.333,0,0,1-3.178-1.322A4.333,4.333,0,0,1,164.5-795.5a4.333,4.333,0,0,1,1.322-3.178A4.333,4.333,0,0,1,169-800a4.333,4.333,0,0,1,3.178,1.322A4.333,4.333,0,0,1,173.5-795.5a4.333,4.333,0,0,1-1.322,3.178A4.333,4.333,0,0,1,169-791Zm-9,6.75v-.9a3.3,3.3,0,0,1,.492-1.758,3.281,3.281,0,0,1,1.308-1.223,16.7,16.7,0,0,1,3.544-1.308,15.48,15.48,0,0,1,3.656-.436,15.48,15.48,0,0,1,3.656.436,16.7,16.7,0,0,1,3.544,1.308,3.281,3.281,0,0,1,1.308,1.223A3.3,3.3,0,0,1,178-785.15v.9a2.167,2.167,0,0,1-.661,1.589,2.167,2.167,0,0,1-1.589.661h-13.5a2.167,2.167,0,0,1-1.589-.661A2.167,2.167,0,0,1,160-784.25Z\" transform=\"translate(-8064 -20683)\" [attr.fill]=\"fill\"/>\n  </g>\n</svg>\n","import { Component, Input } from '@angular/core';\n\n@Component({\n  selector: 'asset-setting',\n  standalone: true,\n  imports: [],\n  templateUrl: './setting.component.svg'\n})\nexport class SettingAsset {\n  @Input() height = 24;\n  @Input() width = 24;\n  @Input() fill = '#000';\n}\n","<svg xmlns=\"http://www.w3.org/2000/svg\" [attr.width]=\"width\" [attr.height]=\"height\" viewBox=\"0 0 24 24\">\n  <g id=\"Panel_Settings_2\" data-name=\"Panel Settings 2\" transform=\"translate(7907 21486)\">\n    <rect id=\"Rectangle_8034\" data-name=\"Rectangle 8034\" [attr.width]=\"width\" [attr.height]=\"height\" transform=\"translate(-7907 -21486)\" fill=\"none\"/>\n    <path id=\"Panel_Settings_2-2\" data-name=\"Panel Settings 2\" d=\"M106.71-862a1.49,1.49,0,0,1-1.046-.405,1.654,1.654,0,0,1-.529-.99l-.2-1.485a3.413,3.413,0,0,1-.551-.27q-.259-.157-.506-.337l-1.4.585a1.466,1.466,0,0,1-1.125.045,1.658,1.658,0,0,1-.877-.72l-1.058-1.845a1.428,1.428,0,0,1-.18-1.1,1.707,1.707,0,0,1,.607-.967l1.193-.9a2.148,2.148,0,0,1-.022-.3v-.607a2.148,2.148,0,0,1,.022-.3l-1.193-.9a1.708,1.708,0,0,1-.607-.968,1.428,1.428,0,0,1,.18-1.1l1.058-1.845a1.658,1.658,0,0,1,.877-.72,1.466,1.466,0,0,1,1.125.045l1.4.585a6.145,6.145,0,0,1,.518-.338,4.527,4.527,0,0,1,.54-.27l.2-1.485a1.654,1.654,0,0,1,.529-.99,1.49,1.49,0,0,1,1.046-.4h2.115a1.49,1.49,0,0,1,1.046.4,1.654,1.654,0,0,1,.529.99l.2,1.485a3.413,3.413,0,0,1,.551.27q.259.158.506.338l1.4-.585a1.466,1.466,0,0,1,1.125-.045,1.658,1.658,0,0,1,.878.72l1.057,1.845a1.428,1.428,0,0,1,.18,1.1,1.708,1.708,0,0,1-.607.968l-1.192.9a2.148,2.148,0,0,1,.022.3v.607a1.1,1.1,0,0,1-.045.3l1.193.9a1.707,1.707,0,0,1,.607.967,1.428,1.428,0,0,1-.18,1.1l-1.08,1.845a1.658,1.658,0,0,1-.877.72,1.466,1.466,0,0,1-1.125-.045l-1.35-.585a6.128,6.128,0,0,1-.517.337,4.528,4.528,0,0,1-.54.27l-.2,1.485a1.654,1.654,0,0,1-.529.99,1.49,1.49,0,0,1-1.046.405Zm1.1-5.85a3.035,3.035,0,0,0,2.228-.922,3.035,3.035,0,0,0,.923-2.227,3.035,3.035,0,0,0-.923-2.228,3.035,3.035,0,0,0-2.228-.922,3.024,3.024,0,0,0-2.239.922,3.054,3.054,0,0,0-.911,2.228,3.054,3.054,0,0,0,.911,2.227A3.024,3.024,0,0,0,107.813-867.85Z\" transform=\"translate(-8002.768 -20603)\" [attr.fill]=\"fill\"/>\n  </g>\n</svg>\n","/*\n * Public API Surface of angular-common\n */\n\nexport * from './lib/modules/shared/accordian/accordian.component';\nexport * from './lib/modules/shared/alerts/alert.component';\nexport * from './lib/modules/shared/alerts/variants/error-alert/error-alert.component';\nexport * from './lib/modules/shared/alerts/variants/info-alert/info-alert.component';\nexport * from './lib/modules/shared/alerts/variants/warning-alert/warning-alert.component';\nexport * from './lib/modules/shared/button/button.component';\nexport * from './lib/modules/shared/button/variants/outlined-button/outlined-button.component';\nexport * from './lib/modules/shared/button/variants/primary-button/primary-button.component';\nexport * from './lib/modules/shared/button/variants/secondary-button/secondary-button.component';\nexport * from './lib/modules/shared/check-boxes/check-boxes.component';\nexport * from './lib/modules/shared/checkbox/checkbox.component';\nexport * from './lib/modules/shared/chip/chip.component';\nexport * from './lib/modules/shared/chip/variants/error-chip/error-chip.component';\nexport * from './lib/modules/shared/chip/variants/primary-chip/primary-chip.component';\nexport * from './lib/modules/shared/chip/variants/secondary-chip/secondary-chip.component';\nexport * from './lib/modules/shared/chip/variants/success-chip/success-chip.component';\nexport * from './lib/modules/shared/chip/variants/warning-chip/warning-chip.component';\nexport * from './lib/modules/shared/dialog/dialog.component';\nexport * from './lib/modules/shared/divider/divider.component';\nexport * from './lib/modules/shared/divider/variants/dark-divider/dark-divider.component';\nexport * from './lib/modules/shared/divider/variants/light-divider/light-divider.component';\nexport * from './lib/modules/shared/full-page-loader/full-page-loader.component';\nexport * from './lib/modules/shared/file-upload/file-upload.component'\nexport * from './lib/modules/shared/tag-input/tag-input.component'\nexport * from './lib/modules/shared/context-menu/context-menu.component';\nexport * from './lib/modules/shared/input/input.component';\nexport * from './lib/modules/shared/input/variants/labeled-input/labeled-input.component';\nexport * from './lib/modules/shared/input/variants/postfix-input/postfix-input.component';\nexport * from './lib/modules/shared/input/variants/postfix-labeled-input/postfix-labeled-input.component';\nexport * from './lib/modules/shared/input/variants/prefix-input/prefix-input.component';\nexport * from './lib/modules/shared/input/variants/prefix-labeled-input/prefix-labeled-input.component';\nexport * from './lib/modules/shared/input/variants/prefix-postfix-input/prefix-postfix-input.component';\nexport * from './lib/modules/shared/input/variants/prefix-postfix-labeled-input/prefix-postfix-labeled-input.component';\nexport * from './lib/modules/shared/label/label.component';\nexport * from './lib/modules/shared/label/variants/error-label/error-label.component';\nexport * from './lib/modules/shared/label/variants/secondary-label/secondary-label.component';\nexport * from './lib/modules/shared/label/variants/success-label/success-label.component';\nexport * from './lib/modules/shared/link/link.component';\nexport * from './lib/modules/shared/loader/loader.component';\nexport * from './lib/modules/shared/ripple-screen-loader/ripple-screen-loader.component';\nexport * from './lib/modules/shared/ripple-loader/ripple-loader.component';\nexport * from './lib/modules/shared/modal/modal.component';\nexport * from './lib/modules/shared/navbar/navbar.component';\nexport * from './lib/modules/shared/notification/notification.component';\nexport * from './lib/modules/shared/notification/variants/error-notification/error-notification.component';\nexport * from './lib/modules/shared/notification/variants/info-notification/info-notification.component';\nexport * from './lib/modules/shared/notification/variants/success-notification/success-notification.component';\nexport * from './lib/modules/shared/notification/variants/warning-notification/warning-notification.component';\nexport * from './lib/modules/shared/page-control/page-control.component';\nexport * from './lib/modules/shared/pagination/pagination.component';\nexport * from './lib/modules/shared/progress-bar/progress-bar.component';\nexport * from './lib/modules/shared/radio-buttons/radio-buttons.component';\nexport * from './lib/modules/shared/segmented-picker/segmented-picker.component';\nexport * from './lib/modules/shared/select/select.component';\nexport * from './lib/modules/shared/select/variants/legacy-select/legacy-select.component';\nexport * from './lib/modules/shared/select/variants/legacy-select/variants/legacy-select-with-search/legacy-select-with-search.component';\nexport * from './lib/modules/shared/select/variants/select-with-search/select-with-search.component';\nexport * from './lib/modules/shared/slider/slider.component';\nexport * from './lib/modules/shared/spacer/spacer.component';\nexport * from './lib/modules/shared/table/table.component';\nexport * from './lib/modules/shared/text-field/text-field.component';\nexport * from './lib/modules/shared/toggle/toggle.component';\nexport * from './lib/modules/shared/tooltip/tooltip.component';\nexport * from './lib/modules/shared/top-bar/top-bar.component';\nexport * from './lib/modules/app-shared.component';\nexport * from './lib/services/common/common.service';\nexport * from './assets/analytics/analytics.component';\nexport * from './assets/chevron-down/chevron-down.component';\nexport * from './assets/chevron-up/chevron-up.component';\nexport * from './assets/code-block/code-block.component';\nexport * from './assets/cross/cross.component';\nexport * from './assets/error/error.component';\n// export * from './assets/fonts/Matter/';\nexport * from './assets/home/home.component';\nexport * from './assets/inbox/inbox.component';\nexport * from './assets/info/info.component';\nexport * from './assets/label-icon/label-icon.component';\nexport * from './assets/loader/loader.component';\nexport * from './assets/logout/logout.component';\nexport * from './assets/more/more.component';\nexport * from './assets/next-icon/next-icon.component';\nexport * from './assets/notification/notification.component';\nexport * from './assets/previous-icon/previous-icon.component';\nexport * from './assets/search-icon/search-icon.component';\nexport * from './assets/subscription-card/subscription-card.component';\nexport * from './assets/team/team.component';\nexport * from './assets/tree/tree.component';\nexport * from './assets/warning/warning.component';\nexport * from './assets/profile/profile.component';\nexport * from './assets/setting/setting.component';\n// export { default as styles } from './lib/styles.scss';","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1.CommonService","i2","i1"],"mappings":"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"}