{"version":3,"file":"sonamkumari-svf-element-module.mjs","sources":["../../../projects/svf-element-module/src/lib/element/shared-component/stk-table/stk-ellipsis.directive.ts","../../../projects/svf-element-module/src/lib/element/shared-component/stk-button/stk-button.component.ts","../../../projects/svf-element-module/src/lib/element/shared-component/stk-button/stk-button.component.html","../../../projects/svf-element-module/src/lib/element/shared-component/stk-datepicker/stk-datepicker.component.ts","../../../projects/svf-element-module/src/lib/element/shared-component/stk-datepicker/stk-datepicker.component.html","../../../projects/svf-element-module/src/lib/element/shared-component/stk-checkbox/stk-checkbox.component.ts","../../../projects/svf-element-module/src/lib/element/shared-component/stk-checkbox/stk-checkbox.component.html","../../../projects/svf-element-module/src/lib/element/shared-component/stk-stepper/stk-stepper.component.ts","../../../projects/svf-element-module/src/lib/element/shared-component/stk-stepper/stk-stepper.component.html","../../../projects/svf-element-module/src/lib/element/shared-component/stk-tabs/stk-tabs.component.ts","../../../projects/svf-element-module/src/lib/element/shared-component/stk-tabs/stk-tabs.component.html","../../../projects/svf-element-module/src/lib/element/shared-component/stk-picklist/stk-picklist.component.ts","../../../projects/svf-element-module/src/lib/element/shared-component/stk-picklist/stk-picklist.component.html","../../../projects/svf-element-module/src/lib/element/shared-component/stk-table/stk-table.component.ts","../../../projects/svf-element-module/src/lib/element/shared-component/stk-table/stk-table.component.html","../../../projects/svf-element-module/src/lib/element/shared-component/stk-tree/stk-tree.component.ts","../../../projects/svf-element-module/src/lib/element/shared-component/stk-tree/stk-tree.component.html","../../../projects/svf-element-module/src/lib/element/shared-component/stk-autocomplete/stk-autocomplete.component.ts","../../../projects/svf-element-module/src/lib/element/shared-component/stk-autocomplete/stk-autocomplete.component.html","../../../projects/svf-element-module/src/lib/element/shared-component/stk-select/stk-select.component.ts","../../../projects/svf-element-module/src/lib/element/shared-component/stk-select/stk-select.component.html","../../../projects/svf-element-module/src/lib/element/shared-component/stk-orgchart/stk-orgchart.component.ts","../../../projects/svf-element-module/src/lib/element/shared-component/stk-orgchart/stk-orgchart.component.html","../../../projects/svf-element-module/src/lib/element/shared-component/stk-badge/stk-badge.component.ts","../../../projects/svf-element-module/src/lib/element/shared-component/stk-badge/stk-badge.component.html","../../../projects/svf-element-module/src/lib/element/shared-component/stk-input/stk-input.component.ts","../../../projects/svf-element-module/src/lib/element/shared-component/stk-input/stk-input.component.html","../../../projects/svf-element-module/src/lib/element/shared-component/skeleton/skeleton.component.ts","../../../projects/svf-element-module/src/lib/element/shared-component/skeleton/skeleton.component.html","../../../projects/svf-element-module/src/lib/element/shared-component/sharedskeleton.directive.ts","../../../projects/svf-element-module/src/lib/element/shared-component/skeleton.directive.ts","../../../projects/svf-element-module/src/lib/element/shared-component/stk-message/stk-message.component.ts","../../../projects/svf-element-module/src/lib/element/shared-component/stk-message/stk-message.component.html","../../../projects/svf-element-module/src/lib/element/shared-component/stk-chip/stk-chip.component.ts","../../../projects/svf-element-module/src/lib/element/shared-component/stk-chip/stk-chip.component.html","../../../projects/svf-element-module/src/lib/element/shared-component/stk-payoff-linechart/stk-payoff-linechart.component.ts","../../../projects/svf-element-module/src/lib/element/shared-component/stk-payoff-linechart/stk-payoff-linechart.component.html","../../../projects/svf-element-module/src/lib/element/shared-component/stk-avatar/stk-avatar.component.ts","../../../projects/svf-element-module/src/lib/element/shared-component/stk-avatar/stk-avatar.component.html","../../../projects/svf-element-module/src/lib/element/shared-component/stk-popup/stk-popup.component.ts","../../../projects/svf-element-module/src/lib/element/shared-component/stk-popup/stk-popup.component.html","../../../projects/svf-element-module/src/lib/element/shared-component/stk-cardwidget/stk-cardwidget.component.ts","../../../projects/svf-element-module/src/lib/element/shared-component/stk-cardwidget/stk-cardwidget.component.html","../../../projects/svf-element-module/src/lib/element/shared-component/stk-tag/stk-tag.component.ts","../../../projects/svf-element-module/src/lib/element/shared-component/stk-tag/stk-tag.component.html","../../../projects/svf-element-module/src/lib/element/shared-component/stk-radiobutton/stk-radiobutton.component.ts","../../../projects/svf-element-module/src/lib/element/shared-component/stk-radiobutton/stk-radiobutton.component.html","../../../projects/svf-element-module/src/lib/element/shared-component/stk-widgetcard/stk-widgetcard.component.ts","../../../projects/svf-element-module/src/lib/element/shared-component/stk-widgetcard/stk-widgetcard.component.html","../../../projects/svf-element-module/src/lib/element/shared-component/stk-treeselect/stk-treeselect.service.ts","../../../projects/svf-element-module/src/lib/element/shared-component/stk-treeselect/stk-treeselect.component.ts","../../../projects/svf-element-module/src/lib/element/shared-component/stk-treeselect/stk-treeselect.component.html","../../../projects/svf-element-module/src/lib/element/shared-component/stk-textarea/stk-textarea.component.ts","../../../projects/svf-element-module/src/lib/element/shared-component/stk-textarea/stk-textarea.component.html","../../../projects/svf-element-module/src/lib/element/shared-component/stk-toggleswitch/stk-toggleswitch.component.ts","../../../projects/svf-element-module/src/lib/element/shared-component/stk-toggleswitch/stk-toggleswitch.component.html","../../../projects/svf-element-module/src/lib/element/shared-component/stk-togglebutton/stk-togglebutton.component.ts","../../../projects/svf-element-module/src/lib/element/shared-component/stk-togglebutton/stk-togglebutton.component.html","../../../projects/svf-element-module/src/lib/element/shared-component/stk-rating/stk-rating.component.ts","../../../projects/svf-element-module/src/lib/element/shared-component/stk-rating/stk-rating.component.html","../../../projects/svf-element-module/src/lib/element/shared-component/stk-upload/stk-upload.component.ts","../../../projects/svf-element-module/src/lib/element/shared-component/stk-upload/stk-upload.component.html","../../../projects/svf-element-module/src/lib/element/shared-component/stk-splitbutton/stk-splitbutton.component.ts","../../../projects/svf-element-module/src/lib/element/shared-component/stk-splitbutton/stk-splitbutton.component.html","../../../projects/svf-element-module/src/lib/element/shared-component/stk-progressbar/stk-progressbar.component.ts","../../../projects/svf-element-module/src/lib/element/shared-component/stk-progressbar/stk-progressbar.component.html","../../../projects/svf-element-module/src/lib/element/shared-component/stk-speeddial/stk-speeddial.component.ts","../../../projects/svf-element-module/src/lib/element/shared-component/stk-speeddial/stk-speeddial.component.html","../../../projects/svf-element-module/src/lib/element/shared-component/stk-card/stk-card.component.ts","../../../projects/svf-element-module/src/lib/element/shared-component/stk-card/stk-card.component.html","../../../projects/svf-element-module/src/lib/element/shared-component/stk-accordian/stk-accordian.component.ts","../../../projects/svf-element-module/src/lib/element/shared-component/stk-accordian/stk-accordian.component.html","../../../projects/svf-element-module/src/lib/element/shared-component/stk-multiselect/stk-multiselect.component.ts","../../../projects/svf-element-module/src/lib/element/shared-component/stk-multiselect/stk-multiselect.component.html","../../../projects/svf-element-module/src/lib/element/shared-component/stk-password/stk-password.component.ts","../../../projects/svf-element-module/src/lib/element/shared-component/stk-password/stk-password.component.html","../../../projects/svf-element-module/src/lib/element/shared-component/stk-toast/stk-toast.component.ts","../../../projects/svf-element-module/src/lib/element/shared-component/stk-toast/stk-toast.component.html","../../../projects/svf-element-module/src/lib/element/primeng.module.ts","../../../projects/svf-element-module/src/lib/svf-element-module.module.ts","../../../projects/svf-element-module/src/public-api.ts","../../../projects/svf-element-module/src/sonamkumari-svf-element-module.ts"],"sourcesContent":["import { Directive, ElementRef, Renderer2, Input, OnInit } from '@angular/core';\r\n\r\n@Directive({\r\n  selector: '[appEllipsis]'\r\n})\r\nexport class EllipsisDirective implements OnInit {\r\n  @Input() maxWidth: string = '150px';\r\n\r\n  constructor(private el: ElementRef, private renderer: Renderer2) {}\r\n\r\n  ngOnInit(): void {\r\n    this.renderer.setStyle(this.el.nativeElement, 'white-space', 'nowrap');\r\n    this.renderer.setStyle(this.el.nativeElement, 'overflow', 'hidden');\r\n    this.renderer.setStyle(this.el.nativeElement, 'text-overflow', 'ellipsis');\r\n    this.renderer.setStyle(this.el.nativeElement, 'display', 'inline-block');\r\n    this.renderer.setStyle(this.el.nativeElement, 'vertical-align', 'middle');\r\n    this.renderer.setStyle(this.el.nativeElement, 'max-width', this.maxWidth);\r\n    this.renderer.setStyle(this.el.nativeElement, 'width', '100%');\r\n  }\r\n}","import {\r\n  ChangeDetectionStrategy,\r\n  Component,\r\n  EventEmitter,\r\n  Input,\r\n  Output,\r\n  inject\r\n} from '@angular/core';\r\n//import { BrandTokenService } from '../../../../assets/css/theme/tokens/brand-token.service';\r\n\r\n@Component({\r\n  selector: 'app-stk-button',\r\n  standalone: false,\r\n  templateUrl: './stk-button.component.html',\r\n  styleUrl: './stk-button.component.css',\r\n  changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class StkButtonComponent {\r\n  @Input() elementId?: string;\r\n  @Input() label?: string;\r\n  @Input() icon?: string;\r\n  @Input() iconPos: 'left' | 'right' | 'top' | 'bottom' = 'left';\r\n  @Input() disabled = false;\r\n  @Input() loading = false;\r\n  @Input() loadingIcon = 'pi pi-spinner pi-spin';\r\n  @Input() outlined = false;\r\n  @Input() raised = false;\r\n  @Input() rounded = false;\r\n  @Input() severity: 'primary' | 'secondary' | 'success' | 'info' | 'warn' | 'help' | 'contrast' | 'danger' = 'primary';\r\n  @Input() size: 'small' | 'normal' | 'large' | 'xsmall' | 'xxsmall' = 'normal';\r\n  @Input() text = false;\r\n  @Input() link = false;\r\n  @Input() style: { [klass: string]: any } | null = null;\r\n  @Input() styleClass?: string;\r\n  @Input() iconLeft?: string;\r\n  @Input() iconRight?: string;\r\n  @Input() borderWidth: string = '2px';\r\n  @Input() paddingVariant: 'default' | 'compact' | 'relaxed' = 'default';\r\n  @Input() width?: string;\r\n\r\n  @Output() buttonClick = new EventEmitter<MouseEvent>();\r\n\r\n  //private brandTokenService = inject(BrandTokenService);\r\n\r\n  onClick(event: MouseEvent) {\r\n    this.buttonClick.emit(event);\r\n  }\r\n\r\n  private getSeverityColorToken(): string {\r\n    switch (this.severity) {\r\n      case 'primary': return 'var(--color-bright-blue-800)';\r\n      case 'secondary': return 'var(--color-dark-navy-600)';\r\n      case 'success': return 'var(--color-bright-green-700)';\r\n      case 'info': return 'var(--color-cyan-500)';\r\n      case 'warn': return 'var(--color-orange-500)';\r\n      case 'help': return 'var(--color-purple-500)';\r\n      case 'danger': return 'var(--color-red-500)';\r\n      case 'contrast': return 'var(--color-grey-1000)';\r\n      default: return 'var(--color-bright-blue-800)';\r\n    }\r\n  }\r\n\r\n  private getSizeSuffix(): 'lg' | 'md' | 'sm' | '1xs' | '2xs' {\r\n    switch (this.size) {\r\n      case 'large': return 'lg';\r\n      case 'normal': return 'md';\r\n      case 'small': return 'sm';\r\n      case 'xsmall': return '1xs';\r\n      case 'xxsmall': return '2xs';\r\n      default: return 'md';\r\n    }\r\n  }\r\n\r\n  getMergedStyle(): { [klass: string]: any } {\r\n    const merged = { ...this.style };\r\n    const suffix = this.getSizeSuffix();\r\n\r\n    merged['font-size'] = `var(--font-size-${suffix})`;\r\n    merged['padding-left'] = `var(--brand-button${suffix}PaddingX)`;\r\n    merged['padding-right'] = `var(--brand-button${suffix}PaddingX)`;\r\n    merged['padding-top'] = `var(--brand-button${suffix}PaddingY)`;\r\n    merged['padding-bottom'] = `var(--brand-button${suffix}PaddingY)`;\r\n    merged['gap'] = `var(--brand-button${suffix}Gap)`;\r\n\r\n    if (this.outlined) {\r\n      const colorToken = this.getSeverityColorToken();\r\n      merged['border-width'] = `var(--brand-buttonBorderWidth)`;\r\n      merged['border-style'] = 'solid';\r\n      merged['border-color'] = colorToken;\r\n      merged['color'] = colorToken;\r\n    }\r\n\r\n    if (this.width) {\r\n      merged['width'] = this.width;\r\n    }\r\n\r\n    return merged;\r\n  }\r\n\r\n  getIconSize(): string {\r\n    const suffix = this.getSizeSuffix();\r\n    return `var(--brand-button${suffix}IconSize)`;\r\n  }\r\n  getLabelPaddingStyle(): { [klass: string]: any } {\r\n  const suffix = this.getSizeSuffix();\r\n  return {\r\n    'padding-left': `var(--brand-button${suffix}Gap)`,\r\n    'padding-right': `var(--brand-button${suffix}Gap)`,\r\n    'padding-top': `var(--brand-button${suffix}Gap)`,\r\n    'padding-bottom': `var(--brand-button${suffix}Gap)`\r\n  };\r\n}\r\n\r\n}\r\n","<p-button\r\n  [id]=\"elementId\"\r\n  appFocusRing\r\n  [style]=\"getMergedStyle()\"\r\n  type=\"button\"\r\n  [label]=\"label\"\r\n  [disabled]=\"disabled\"\r\n  [loading]=\"loading\"\r\n  [loadingIcon]=\"loadingIcon\"\r\n  [outlined]=\"outlined\"\r\n  [raised]=\"raised\"\r\n  [rounded]=\"rounded\"\r\n  [severity]=\"severity\"\r\n  [size]=\"size\"\r\n  [text]=\"text\"\r\n  [class]=\"styleClass\"\r\n  (click)=\"onClick($event)\"\r\n>\r\n  <ng-template pTemplate=\"content\">\r\n    <i *ngIf=\"iconLeft\" [class]=\"iconLeft\" [ngStyle]=\"{ width: getIconSize(), height: getIconSize() }\"></i>\r\n   <span [ngStyle]=\"getLabelPaddingStyle()\">{{ label }}</span>\r\n    <i *ngIf=\"iconRight\" [class]=\"iconRight\" [ngStyle]=\"{ width: getIconSize(), height: getIconSize() }\"></i>\r\n  </ng-template>\r\n</p-button>\r\n","import {\r\n  Component,\r\n  EventEmitter,\r\n  forwardRef,\r\n  Input,\r\n  Output\r\n} from '@angular/core';\r\nimport {\r\n  AbstractControl,\r\n  ControlValueAccessor,\r\n  NG_VALIDATORS,\r\n  NG_VALUE_ACCESSOR,\r\n  ValidationErrors,\r\n  Validator\r\n} from '@angular/forms';\r\n\r\nexport type DateValue = Date | Date[] | null;\r\n\r\n@Component({\r\n  selector: 'app-stk-datepicker',\r\n  standalone:false,\r\n  templateUrl: './stk-datepicker.component.html',\r\n  styleUrls: ['./stk-datepicker.component.css'],\r\n  providers: [\r\n    {\r\n      provide: NG_VALUE_ACCESSOR,\r\n      useExisting: forwardRef(() => StkDatepickerComponent),\r\n      multi: true\r\n    },\r\n    {\r\n      provide: NG_VALIDATORS,\r\n      useExisting: forwardRef(() => StkDatepickerComponent),\r\n      multi: true\r\n    }\r\n  ]\r\n})\r\nexport class StkDatepickerComponent implements ControlValueAccessor, Validator {\r\n  @Input() elementId?: string;\r\n  @Input() selectionMode: 'single' | 'range' | 'multiple' = 'single';\r\n  @Input() minDate?: Date;\r\n  @Input() maxDate?: Date;\r\n  @Input() showIcon: boolean = false;\r\n  @Input() dateFormat: string = 'mm/dd/yy';\r\n  @Input() readonlyInput: boolean = false;\r\n  @Input() showButtonBar: boolean = false;\r\n  @Input() style?: { [klass: string]: any };\r\n  @Input() styleClass?: string;\r\n  @Input() inputStyle?: { [klass: string]: any };\r\n  @Input() placeholder?: string;\r\n  @Input() disabled: boolean = false;\r\n  @Input() monthNavigator: boolean = false;\r\n  @Input() yearNavigator: boolean = false;\r\n  @Input() yearRange: string = '2000:2030';\r\n  @Input() showTime: boolean = false;\r\n  @Input() hourFormat: '12' | '24' = '24';\r\n  @Input() stepHour: number = 1;\r\n  @Input() stepMinute: number = 1;\r\n  @Input() stepSecond: number = 1;\r\n  @Input() showSeconds: boolean = false;\r\n  value: DateValue = null;  // no @Input here, you control the value internally\r\n  @Output() valueChange = new EventEmitter<DateValue>();\r\n  @Output() onFocus = new EventEmitter<Event>();\r\n  @Output() onBlur = new EventEmitter<Event>();\r\n  @Output() onClose = new EventEmitter<AnimationEvent>();\r\n  @Output() onSelect = new EventEmitter<Date>();\r\n  @Output() onClear = new EventEmitter<any>();\r\n\r\n  private onChange: (val: DateValue) => void = () => {};\r\n  private onTouched: () => void = () => {};\r\n\r\n  writeValue(value: DateValue): void {\r\n    this.value = value;\r\n  }\r\n\r\n  registerOnChange(fn: (val: DateValue) => void): void {\r\n    this.onChange = fn;\r\n  }\r\n\r\n  registerOnTouched(fn: () => void): void {\r\n    this.onTouched = fn;\r\n  }\r\n\r\n  setDisabledState(isDisabled: boolean): void {\r\n    this.disabled = isDisabled;\r\n  }\r\n\r\n  validate(control: AbstractControl): ValidationErrors | null {\r\n    return null; \r\n  }\r\n\r\n  onValueChange(val: DateValue) {\r\n    this.value = val;\r\n    this.valueChange.emit(val);\r\n    this.onChange(val);\r\n  }\r\n\r\n  handleFocus(event: Event) {\r\n    this.onFocus.emit(event);\r\n  }\r\n\r\n  handleBlur(event: Event) {\r\n    this.onTouched();\r\n    this.onBlur.emit(event);\r\n  }\r\n\r\n  handleClose(event: AnimationEvent) {\r\n    this.onClose.emit(event);\r\n  }\r\n\r\n  handleSelect(value: Date) {\r\n    this.onSelect.emit(value);\r\n  }\r\n\r\n  handleClear(value: any) {\r\n    this.value = null;\r\n    this.valueChange.emit(null);\r\n    this.onChange(null);\r\n    this.onClear.emit(value);\r\n  }\r\n}\r\n","<p-datepicker\r\n  [id]=\"elementId\"\r\n  [selectionMode]=\"selectionMode\"\r\n  [numberOfMonths]=\"selectionMode === 'range' ? 2 : 1\"\r\n  [minDate]=\"minDate\"\r\n  [maxDate]=\"maxDate\"\r\n  [showIcon]=\"showIcon\"\r\n  [dateFormat]=\"dateFormat\"\r\n  [readonlyInput]=\"readonlyInput\"\r\n  [showButtonBar]=\"showButtonBar\"\r\n  [style]=\"style\"\r\n  [styleClass]=\"styleClass\"\r\n  [inputStyle]=\"inputStyle\"\r\n  [placeholder]=\"placeholder\"\r\n  [disabled]=\"disabled\"\r\n  [monthNavigator]=\"monthNavigator\"\r\n  [yearNavigator]=\"yearNavigator\"\r\n  [yearRange]=\"yearRange\"\r\n  [showTime]=\"showTime\"\r\n  [hourFormat]=\"hourFormat\"\r\n  [stepHour]=\"stepHour\"\r\n  [stepMinute]=\"stepMinute\"\r\n  [stepSecond]=\"stepSecond\"\r\n  [showSeconds]=\"showSeconds\"\r\n  [appendTo]=\"'body'\"\r\n  [(ngModel)]=\"value\"\r\n  (ngModelChange)=\"onValueChange($event)\"\r\n  (onFocus)=\"handleFocus($event)\"\r\n  (onBlur)=\"handleBlur($event)\"\r\n  (onClose)=\"handleClose($event)\"\r\n  (onSelect)=\"handleSelect($event)\"\r\n  (onClear)=\"handleClear($event)\">\r\n</p-datepicker>\r\n","import {\r\n  Component,\r\n  EventEmitter,\r\n  forwardRef,\r\n  Input,\r\n  Output,\r\n  TemplateRef\r\n} from '@angular/core';\r\nimport {\r\n  ControlValueAccessor,\r\n  NG_VALUE_ACCESSOR\r\n} from '@angular/forms';\r\nimport { CheckboxChangeEvent } from 'primeng/checkbox';\r\n\r\n@Component({\r\n  selector: 'app-stk-checkbox',\r\n  standalone:false,\r\n  templateUrl: './stk-checkbox.component.html',\r\n  styleUrls: ['./stk-checkbox.component.css'],\r\n  providers: [\r\n    {\r\n      provide: NG_VALUE_ACCESSOR,\r\n      useExisting: forwardRef(() => StkCheckboxComponent),\r\n      multi: true\r\n    }\r\n  ]\r\n})\r\nexport class StkCheckboxComponent implements ControlValueAccessor {\r\n  @Input() elementId?: string;\r\n  @Input() value: any = null;\r\n  @Input() binary = true;\r\n  @Input() disabled = false;\r\n  @Input() ariaLabelledBy: string | null = null;\r\n  @Input() ariaLabel: string | null = null;\r\n  @Input() tabindex: number | null = null;\r\n  @Input() inputId: string | null = null;\r\n  @Input() style: any = null;\r\n  @Input() inputStyle: any = null;\r\n  @Input() inputClass: string | null = null;\r\n  @Input() indeterminate = false;\r\n  @Input() size: 'small' | 'large' | null = null;\r\n  @Input() checkboxIcon: string | null = null;\r\n  @Input() readonly = false;\r\n  @Input() required = false;\r\n  @Input() autofocus = false;\r\n  @Input() trueValue: any = true;\r\n  @Input() falseValue: any = false;\r\n  @Input() variant: 'outlined' | 'filled' | null = null;\r\n  @Input() icon?: TemplateRef<any>;\r\n  @Input() showIcon = false;\r\n\r\n  // Outputs for external listeners (optional)\r\n  @Output() changed = new EventEmitter<any>();\r\n  @Output() focused = new EventEmitter<Event>();\r\n  @Output() blurred = new EventEmitter<Event>();\r\n\r\n  // CVA callbacks\r\n  private onChangeFn = (_: any) => {};\r\n  private onTouchedFn = () => {};\r\n\r\n  // ControlValueAccessor methods\r\n  writeValue(value: any): void {\r\n    this.value = value;\r\n  }\r\n\r\n  registerOnChange(fn: any): void {\r\n    this.onChangeFn = fn;\r\n  }\r\n\r\n  registerOnTouched(fn: any): void {\r\n    this.onTouchedFn = fn;\r\n  }\r\n\r\n  setDisabledState(isDisabled: boolean): void {\r\n    this.disabled = isDisabled;\r\n  }\r\n\r\n  // Event handlers\r\n  handleChange(event: CheckboxChangeEvent) {\r\n    this.value = event.checked;\r\n    this.onChangeFn(this.value);\r\n    this.changed.emit(this.value);\r\n  }\r\n\r\n  handleFocus(event: Event) {\r\n    this.onTouchedFn();\r\n    this.focused.emit(event);\r\n  }\r\n\r\n  handleBlur(event: Event) {\r\n    this.onTouchedFn();\r\n    this.blurred.emit(event);\r\n  }\r\n}\r\n","<p-checkbox\r\n  [id]=\"elementId\"\r\n  [inputId]=\"inputId\"\r\n  [binary]=\"binary\"\r\n  [ariaLabel]=\"ariaLabel\"\r\n  [ariaLabelledBy]=\"ariaLabelledBy\"\r\n  [tabindex]=\"tabindex\"\r\n  [disabled]=\"disabled\"\r\n  [indeterminate]=\"indeterminate\"\r\n  [readonly]=\"readonly\"\r\n  [required]=\"required\"\r\n  [autofocus]=\"autofocus\"\r\n  [trueValue]=\"trueValue\"\r\n  [falseValue]=\"falseValue\"\r\n  [style]=\"style\"\r\n  [inputStyle]=\"inputStyle\"\r\n  [inputClass]=\"inputClass\"\r\n  [size]=\"size\"\r\n  [variant]=\"variant\"\r\n  [checkboxIcon]=\"checkboxIcon\"\r\n  [(ngModel)]=\"value\"\r\n  (onChange)=\"handleChange($event)\"\r\n  (onFocus)=\"handleFocus($event)\"\r\n  (onBlur)=\"handleBlur($event)\"\r\n>\r\n  <ng-template *ngIf=\"icon\" pTemplate=\"icon\" [ngTemplateOutlet]=\"icon\"></ng-template>\r\n</p-checkbox>\r\n\r\n","import { AfterContentInit, Component, ContentChildren, EventEmitter, Input, OnInit, Output, QueryList, TemplateRef } from '@angular/core';\r\nimport { ControlValueAccessor, FormBuilder, FormGroup, NG_VALUE_ACCESSOR, Validators } from '@angular/forms';\r\ninterface Step {\r\n  label: string;\r\n  value: number;\r\n}\r\n@Component({\r\n  selector: 'app-stk-stepper',\r\n  standalone: false,\r\n  templateUrl: './stk-stepper.component.html',\r\n  styleUrl: './stk-stepper.component.css'\r\n})\r\nexport class StkStepperComponent implements AfterContentInit {\r\n  @Input() activeStep = 1;\r\n  @Input() linear = false;\r\n  @Input() steps: Step[] = [];\r\n\r\n  @Output() stepChange = new EventEmitter<number>();\r\n\r\n  @ContentChildren(TemplateRef) templates!: QueryList<TemplateRef<any>>;\r\n\r\n  stepTemplateMap = new Map<number, TemplateRef<any>>();\r\n\r\n  ngAfterContentInit() {\r\n   this.steps.forEach((step, index) => {\r\n      const template = this.templates.toArray()[index];\r\n      if (template) {\r\n        this.stepTemplateMap.set(step.value, template);\r\n      }\r\n    });\r\n  }\r\n\r\n  onStepChange(newStep: number) {\r\n    this.activeStep = newStep;\r\n    this.stepChange.emit(newStep);\r\n  }\r\n}\r\n","<p-stepper [value]=\"activeStep\" [linear]=\"linear\" class=\"w-full\">\r\n  <p-step-list>\r\n    <p-step *ngFor=\"let step of steps\" [value]=\"step.value\">{{ step.label }}</p-step>\r\n  </p-step-list>\r\n\r\n  <p-step-panels>\r\n    <p-step-panel *ngFor=\"let step of steps\" [value]=\"step.value\">\r\n      <ng-template #content let-activateCallback=\"activateCallback\">\r\n        <ng-container *ngIf=\"stepTemplateMap.get(step.value)\" \r\n                      [ngTemplateOutlet]=\"stepTemplateMap.get(step.value)\">\r\n        </ng-container>\r\n\r\n        <div class=\"flex justify-between pt-4\">\r\n          <button *ngIf=\"step.value > 1\" type=\"button\" pButton \r\n                  label=\"Back\" class=\"p-button-secondary\" \r\n                  (click)=\"activateCallback(step.value - 1)\">\r\n          </button>\r\n          <button *ngIf=\"step.value < steps.length\" type=\"button\" pButton \r\n                  label=\"Next\" \r\n                  (click)=\"activateCallback(step.value + 1)\">\r\n          </button>\r\n        </div>\r\n      </ng-template>\r\n    </p-step-panel>\r\n  </p-step-panels>\r\n</p-stepper>\r\n","import { AfterContentInit, Component, ContentChildren, EventEmitter, Input, Output, QueryList, TemplateRef } from '@angular/core';\r\nexport interface Tab {\r\n  header: string;\r\n  closable?: boolean;\r\n  disabled?: boolean;\r\n  key?: string;         // unique key if required\r\n}\r\n@Component({\r\n  selector: 'app-stk-tabs',\r\n  standalone: false,\r\n  templateUrl: './stk-tabs.component.html',\r\n  styleUrl: './stk-tabs.component.css'\r\n})\r\nexport class StkTabsComponent implements AfterContentInit {\r\n  @Input() activeIndex: number = 0;\r\n  @Input() tabs: Tab[] = [];\r\n  @Input() dynamic: boolean = false;   // for dynamic lazy loading tabs\r\n\r\n  // In case tab content is projected as templates (optional)\r\n  @ContentChildren(TemplateRef) templates!: QueryList<TemplateRef<any>>;\r\n  tabTemplates: TemplateRef<any>[] = [];\r\n\r\n  @Output() activeIndexChange = new EventEmitter<number>();\r\n  @Output() onClose = new EventEmitter<number>();\r\n\r\n  ngAfterContentInit() {\r\n    this.tabTemplates = this.templates.toArray();\r\n  }\r\n\r\n  onTabChange(event: any) {\r\n    this.activeIndex = event.index;\r\n    this.activeIndexChange.emit(this.activeIndex);\r\n  }\r\n\r\n  onTabClose(event: any) {\r\n    this.onClose.emit(event.index);\r\n  }\r\n}","<p-tabView \r\n  [(activeIndex)]=\"activeIndex\" \r\n  (onChange)=\"onTabChange($event)\" \r\n  >\r\n\r\n  <p-tabPanel \r\n    *ngFor=\"let tab of tabs; let i = index\"\r\n    [header]=\"tab.header\"\r\n    [disabled]=\"tab.disabled\">\r\n    \r\n    <!-- Render projected tab content templates if present and mapped -->\r\n    <ng-container *ngIf=\"tabTemplates && tabTemplates[i]\" [ngTemplateOutlet]=\"tabTemplates[i]\"></ng-container>\r\n  </p-tabPanel>\r\n</p-tabView>\r\n","import { Component, EventEmitter, forwardRef, Input, Output } from '@angular/core';\r\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\r\n\r\n@Component({\r\n  selector: 'app-stk-picklist',\r\n  standalone: false,\r\n  templateUrl: './stk-picklist.component.html',\r\n  providers: [{\r\n    provide: NG_VALUE_ACCESSOR,\r\n    useExisting: forwardRef(() => StkPicklistComponent),\r\n    multi: true\r\n  }],\r\n  styleUrl: './stk-picklist.component.css'\r\n})\r\nexport class StkPicklistComponent implements ControlValueAccessor {\r\n  @Input() elementId?: string;\r\n  @Input() source: any[] = [];\r\n  @Input() target: any[] = [];\r\n  @Input() dragdrop: boolean = true;\r\n  @Input() responsive: boolean = false;\r\n  @Input() filterBy: string = '';\r\n  @Input() sourceHeader: string = '';\r\n  @Input() targetHeader: string = '';\r\n  @Input() showSourceControls: boolean = true;\r\n  @Input() showTargetControls: boolean = true;\r\n  @Input() sourceFilterPlaceholder: string = '';\r\n  @Input() targetFilterPlaceholder: string = '';\r\n  @Input() breakpoint: string = '1400px';\r\n  @Input() sourceStyle: any = {};\r\n  @Input() targetStyle: any = {};\r\n  @Input() metaKeySelection: boolean = false;\r\n  @Input() disabled: boolean = false;\r\n\r\n  @Output() onMoveToTarget = new EventEmitter();\r\n  @Output() onMoveToSource = new EventEmitter();\r\n  @Output() onMoveAllToTarget = new EventEmitter();\r\n  @Output() onMoveAllToSource = new EventEmitter();\r\n\r\n  innerValue: any[] = [];\r\n\r\n  onChange = (_: any) => {};\r\n  onTouched = () => {};\r\n\r\n  writeValue(val: any): void {\r\n    this.innerValue = val;\r\n  }\r\n  registerOnChange(fn: any): void {\r\n    this.onChange = fn;\r\n  }\r\n  registerOnTouched(fn: any): void {\r\n    this.onTouched = fn;\r\n  }\r\n  setDisabledState?(isDisabled: boolean): void {\r\n    this.disabled = isDisabled;\r\n  }\r\n}","   <p-pickList\r\n      [id]=\"elementId\"\r\n      [source]=\"source\"\r\n      [target]=\"target\"\r\n      [dragdrop]=\"dragdrop\"\r\n      [responsive]=\"responsive\"\r\n      [filterBy]=\"filterBy\"\r\n      [sourceHeader]=\"sourceHeader\"\r\n      [targetHeader]=\"targetHeader\"\r\n      [(ngModel)]=\"innerValue\"\r\n      (onMoveToTarget)=\"onMoveToTarget.emit($event)\"\r\n      (onMoveToSource)=\"onMoveToSource.emit($event)\"\r\n      (onMoveAllToTarget)=\"onMoveAllToTarget.emit($event)\"\r\n      (onMoveAllToSource)=\"onMoveAllToSource.emit($event)\"\r\n      [showSourceControls]=\"showSourceControls\"\r\n      [showTargetControls]=\"showTargetControls\"\r\n      [sourceFilterPlaceholder]=\"sourceFilterPlaceholder\"\r\n      [targetFilterPlaceholder]=\"targetFilterPlaceholder\"\r\n      [breakpoint]=\"breakpoint\"\r\n      [sourceStyle]=\"sourceStyle\"\r\n      [targetStyle]=\"targetStyle\"\r\n      [metaKeySelection]=\"metaKeySelection\"\r\n      [disabled]=\"disabled\">\r\n      <ng-content select=\"[itemTemplate]\"></ng-content>\r\n    </p-pickList>","import { Component, EventEmitter, forwardRef, Input, Output, ViewChild } from '@angular/core';\r\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\r\nimport { Table } from 'primeng/table';\r\nimport { DynamicColumnConfig } from '../stk-table/dynamic-column-config';\r\nimport { PrimeIcons } from 'primeng/api';\r\n\r\nexport interface TableIconConfig {\r\n  id: string;\r\n  icon: string;\r\n  tooltip?: string;\r\n  styleClass?: string;\r\n  style?: any;\r\n}\r\n@Component({\r\n  selector: 'app-stk-table',\r\n  standalone: false,\r\n  templateUrl: './stk-table.component.html',\r\n  styleUrl: './stk-table.component.scss',\r\n  providers: [\r\n    {\r\n      provide: NG_VALUE_ACCESSOR,\r\n      useExisting: forwardRef(() => StkTableComponent),\r\n      multi: true\r\n    }\r\n  ]\r\n})\r\nexport class StkTableComponent implements ControlValueAccessor {\r\n  @Input() elementId?: string;\r\n  expanded: { [key: string]: boolean } = {};\r\n  @ViewChild('stktable', { static: false }) stktable!: Table;\r\n  isSorted: string = 'INIT';\r\n  expandedRows = {};\r\n  @Input() data: any[] = [];\r\n  @Input() columns: DynamicColumnConfig[] = [];\r\n  @Input() tableName: string = '';\r\n  @Input() responsiveLayout: 'scroll' | 'stack' = 'stack';\r\n  @Input() pagination: true | false = true;\r\n  @Input() resizableColumns: true | false = false;\r\n  @Input() reorderableColumns: true | false = true;\r\n  @Input() enableSort: true | false = false;\r\n  @Input() columnTotals: { [key: string]: number } = {};\r\n  @Input() startIndex: any = 0;\r\n  @Input() autoLayout: true | false = false;\r\n  @Input() public visibleColumnCount: number=0 ;\r\n  // Accept custom icons from parent\r\n  @Input() customIcons: TableIconConfig[] = [];\r\n  // Default emitters\r\n  @Output() refresh = new EventEmitter<void>();\r\n  @Output() save = new EventEmitter<void>();\r\n  @Output() export = new EventEmitter<void>();\r\n  // Generic output for custom icons\r\n  @Output() customIconClick = new EventEmitter<string>();\r\n  @Output() rowClick = new EventEmitter<any>();\r\n  @Output() onColReorder = new EventEmitter<any>();\r\n  @Output() onColSort = new EventEmitter<any>();\r\n  @Output() pageChangeEvent = new EventEmitter<any>();\r\n\r\n  value: any = [];\r\n\r\n  private onChange = (value: any) => { };\r\n  private onTouched = () => { };\r\n\r\n  writeValue(obj: any): void {\r\n    this.value = obj || [];\r\n  }\r\n\r\n  registerOnChange(fn: any): void {\r\n    this.onChange = fn;\r\n  }\r\n\r\n  registerOnTouched(fn: any): void {\r\n    this.onTouched = fn;\r\n  }\r\n  setDisabledState?(isDisabled: boolean): void {\r\n    // Optional\r\n  }\r\n  // Call this whenever the table data is changed:\r\n  onTableUpdate(updated: any[]) {\r\n    this.value = updated;\r\n    this.onChange(this.value);\r\n  }\r\n  columnReoderEvent($event: any) {\r\n    this.onColReorder.emit($event);\r\n  }\r\n  // This getter dynamically creates the array of filterable fields for the global search\r\n  get globalFilterableFields(): string[] {\r\n    return this.columns.filter(col => col.filterable).map(col => col.field);\r\n  }\r\n  customSort($event: any) {\r\n    if (this.isSorted == 'INIT' || this.isSorted === undefined) {\r\n      this.isSorted = 'ASC';\r\n      this.onColSort.emit($event);\r\n    } else if (this.isSorted == 'ASC') {\r\n      this.isSorted = 'DESC';\r\n      this.onColSort.emit($event);\r\n    } else if (this.isSorted == 'DESC') {\r\n      this.isSorted = 'INIT';\r\n      // this.products = [...this.initialValue];\r\n      this.stktable.reset();\r\n    }\r\n  }\r\n  \r\n  getProgressBarClass(value: number, config: any): any {\r\n    // Use provided config with fallbacks to default value\r\n    const greenThreshold = config?.greenThreshold ?? 70;\r\n    const yellowThreshold = config?.yellowThreshold ?? 30;\r\n    const greenClass = config?.greenClass ?? 'progress-bar-green p-progressbar-value';\r\n    const yellowClass = config?.yellowClass ?? 'progress-bar-green p-progressbar-value';\r\n    const redClass = config?.redClass ?? 'progress-bar-green p-progressbar-value';\r\n    if (value >= greenThreshold) {\r\n      return greenClass;\r\n    } else if (value >= yellowThreshold) {\r\n      return yellowClass;\r\n    } else {\r\n      return redClass;\r\n    }\r\n  }\r\n  pageChange($event: any) {\r\n    this.pageChangeEvent.emit($event);\r\n  }\r\n  // Cell Edit //\r\n  onCellEditComplete(event: any) {\r\n    this.onTableUpdate(this.data);\r\n  }\r\n  // Default toolbar icons\r\n  private defaultIcons: TableIconConfig[] = [\r\n    { id: 'save', icon: 'pi pi-lock', tooltip: 'Empty ACC' },\r\n    { id: 'refresh', icon: 'pi pi-cloud-download', tooltip: 'Refresh' },\r\n    { id: 'export', icon: PrimeIcons.UPLOAD, tooltip: 'Export' }\r\n  ];\r\n  // Merge defaults + custom\r\n  get iconsToShow(): TableIconConfig[] {\r\n    return [...this.defaultIcons, ...this.customIcons];\r\n  }\r\n  // Central handler\r\n  handleIconClick(actionId: string) {\r\n    switch (actionId) {\r\n      case 'refresh':\r\n        this.refresh.emit();\r\n        break;\r\n      case 'save':\r\n        this.save.emit();\r\n        break;\r\n      case 'export':\r\n        this.export.emit();\r\n        break;\r\n      default:\r\n        this.customIconClick.emit(actionId);\r\n    }\r\n  }\r\n  // for tooltip - ellipsis\r\n  getTooltipContent(row: any, col: DynamicColumnConfig): string {\r\n    const value = row[col.field];\r\n    if (col.formatter) return col.formatter(row);\r\n    if (typeof value === 'object') return JSON.stringify(value);\r\n    if (col.icon || col.icons) return 'Icon Column';\r\n    return value?.toString() ?? '';\r\n  }\r\n\r\n  //for header tooltip\r\n  getHeaderTooltip(col: DynamicColumnConfig): string {\r\n    if (typeof col.headerTooltip === 'function') {\r\n      return col.headerTooltip(); // Call the function to get tooltip\r\n    }\r\n    return col.headerTooltip || col.header;\r\n  }\r\n\r\n  // for filter in columns\r\n  @Output() filterEvent = new EventEmitter<any>();\r\n\r\n  onFilter($event: any) {\r\n    this.filterEvent.emit($event); // send filter data to parent\r\n  }\r\n\r\n  onRowExpand(event: any) {\r\n    this.expandedRows = { ...this.expandedRows, [event.data.id]: true };\r\n  }\r\n\r\n  onRowCollapse(event: any) {\r\n    const expanded = { ...this.expandedRows };\r\n   delete (expanded as any)[event.data.id];\r\n    this.expandedRows = expanded;\r\n  }\r\n\r\n  // Return the first 'visibleColumnCount' columns\r\n  get visibleColumns() {\r\n    return this.columns.slice(0, this.visibleColumnCount);\r\n  }\r\n\r\n  get expandedColumns() {\r\n    // Return the remaining columns\r\n    return this.columns.slice(this.visibleColumnCount);\r\n  }\r\n\r\n  // Check if details/expanded view should be shown\r\n  get hasExpandedColumns(): boolean {\r\n    return this.expandedColumns.length > 0;\r\n  }\r\n  // Check if column count is explicitly limited\r\n  get isColumnCountLimited(): boolean {\r\n    return this.visibleColumnCount > 0 && this.visibleColumnCount < this.columns.length;\r\n  }\r\n\r\n  get expandedColspan() {\r\n    // The number of visible columns plus the toggler column (if it exists)\r\n    return this.visibleColumns.length + (this.hasExpandedColumns ? 1 : 0);\r\n  }\r\n\r\n  // Find if a column should be editable\r\n isColumnEditable(col: DynamicColumnConfig, row?: any): boolean {\r\n  // Non-editable column types\r\n  if (col.cellTemplate === 'progressbar' || col.formatter || col.icon || col.icons) {\r\n    return false;\r\n  }\r\n  \r\n  // If rowEditableIf is defined, use it for row-specific editability\r\n  if (col.rowEditableIf && row) {\r\n    return col.rowEditableIf(row);\r\n  }\r\n  \r\n  // For checkbox, toggle, datepicker, and input - they remain editable by default\r\n  if (col.cellTemplate === 'checkbox' || col.cellTemplate === 'toggle' || \r\n      col.cellTemplate === 'datepicker' || col.cellTemplate === 'input') {\r\n    return true;\r\n  }\r\n  \r\n  // For plain text cells (no cellTemplate), check the editable property\r\n  return col.editable === true;\r\n}\r\n}","<p-table #stktable showGridlines editMode=\"cell\" dataKey=\"id\" [first]=\"startIndex\" [value]=\"data\" [columns]=\"columns\"\r\n  [paginator]=\"pagination\" [rows]=\"5\" [responsiveLayout]=\"responsiveLayout\" [resizableColumns]=\"resizableColumns\"\r\n  [reorderableColumns]=\"reorderableColumns\" (onColReorder)=\"columnReoderEvent($event)\"\r\n  (sortFunction)=\"customSort($event)\" [customSort]=\"enableSort\" (onPage)=\"pageChange($event)\"\r\n  [showCurrentPageReport]=\"true\" currentPageReportTemplate=\"Showing {first} to {last} of {totalRecords} entries\"\r\n  [globalFilterFields]=\"globalFilterableFields\" (onFilter)=\"onFilter($event)\" [(expandedRowKeys)]=\"expandedRows\"\r\n  (onRowExpand)=\"onRowExpand($event)\" (onRowCollapse)=\"onRowCollapse($event)\" [id]=\"elementId\">\r\n  \r\n  <!-- Caption (table name) -->\r\n  <ng-template pTemplate=\"caption\" *ngIf=\"tableName\">\r\n    <div class=\"flex items-center w-full\">\r\n      <span class=\"text-xl font-bold\">{{ tableName }}</span>\r\n      <div class=\"flex gap-3 ml-auto\">\r\n        <button *ngFor=\"let icon of iconsToShow\" pButton type=\"button\" class=\"p-button-text \" [title]=\"icon.tooltip\"\r\n          (click)=\"handleIconClick(icon.id)\">\r\n          <i [class]=\"icon.icon\" class=\"h-[10px] w-[11px] text-[11px] cursor-pointer\"></i>\r\n        </button>\r\n      </div>\r\n    </div>\r\n  </ng-template>\r\n  \r\n  <!-- Main Header -->\r\n  <ng-template pTemplate=\"header\">\r\n    <tr>\r\n      <th *ngFor=\"let col of visibleColumns\" pReorderableColumn [pSortableColumn]=\"col.sortable ? col.field : undefined\"\r\n        [pTooltip]=\"getHeaderTooltip(col)\" tooltipPosition=\"top\" class=\"h-[10px] text-[13px]\"\r\n        [attr.title]=\"getHeaderTooltip(col)\">\r\n        <div appEllipsis [maxWidth]=\"'150px'\">\r\n          {{ col.header }}\r\n          <p-sortIcon *ngIf=\"col.sortable\" [field]=\"col.field\" [attr.title]=\"'Sorting'\"></p-sortIcon>\r\n        </div>\r\n      </th>\r\n      <!-- Show Details header only if there are expanded columns to display -->\r\n      <th style=\"width: 5rem\" *ngIf=\"hasExpandedColumns && isColumnCountLimited\">Details</th>\r\n    </tr>\r\n    <tr>\r\n      <th *ngFor=\"let col of visibleColumns\" class=\"px-1 py-1\">\r\n        <p-columnFilter *ngIf=\"col.filterable\" type=\"text\" [field]=\"col.field\"\r\n          [styleClass]=\"'w-full sm:w-48 md:w-32 lg:w-48 xl:w-64'\" [attr.title]=\"'Filter'\"></p-columnFilter>\r\n      </th>\r\n      <th *ngIf=\"hasExpandedColumns && isColumnCountLimited\"></th>\r\n    </tr>\r\n  </ng-template>\r\n  \r\n  <!-- Body -->\r\n  <ng-template pTemplate=\"body\" let-row let-expanded=\"expanded\">\r\n    <tr (click)=\"rowClick.emit(row)\" class=\"px-2 py-1\">\r\n      <td *ngFor=\"let col of visibleColumns\" [ngClass]=\"[col.styleClass ? col.styleClass(row) : '', 'text-[13px]']\"\r\n        [pEditableColumn]=\"isColumnEditable(col,row)\">\r\n        \r\n        <!-- Editable cells (input, checkbox, toggle, datepicker) -->\r\n        <ng-container *ngIf=\"isColumnEditable(col,row); else readOnlyTemplate\">\r\n          <p-cellEditor>\r\n            <ng-template pTemplate=\"input\">\r\n              <ng-container [ngSwitch]=\"col.cellTemplate\">\r\n                <!-- Input -->\r\n                <div *ngSwitchCase=\"'input'\">\r\n                  <input [name]=\"row[col.field]\" type=\"text\" [(ngModel)]=\"row[col.field]\"\r\n                    (ngModelChange)=\"col.cellEvents?.['change']?.($event, row)\" pInputText\r\n                    class=\"h-[18px] text-[12px] w-full\" />\r\n                </div>\r\n\r\n                <!-- Datepicker -->\r\n                <div *ngSwitchCase=\"'datepicker'\">\r\n                  <app-stk-datepicker [(ngModel)]=\"row[col.field]\"\r\n                    (onSelect)=\"col.cellEvents?.['select']?.($event, row)\" [style]=\"{'width': '120px'}\">\r\n                  </app-stk-datepicker>\r\n                </div>\r\n                \r\n                <!-- Checkbox -->\r\n                <p-checkbox *ngSwitchCase=\"'checkbox'\" [(ngModel)]=\"row[col.field]\" [binary]=\"true\"\r\n                  (onChange)=\"col.cellEvents?.['change']?.($event, row)\">\r\n                </p-checkbox>\r\n\r\n                <!-- Toggle -->\r\n                <p-toggleswitch *ngSwitchCase=\"'toggle'\" [(ngModel)]=\"row[col.field]\"\r\n                  (onChange)=\"col.cellEvents?.['change']?.($event, row)\">\r\n                </p-toggleswitch>\r\n\r\n                <!-- Default fallback for editable text -->\r\n                <input *ngSwitchDefault [name]=\"row[col.field]\" type=\"text\" [(ngModel)]=\"row[col.field]\" \r\n                  (ngModelChange)=\"onCellEditComplete($event)\" pInputText class=\"h-[18px] text-[12px] w-full\" />\r\n              </ng-container>\r\n            </ng-template>\r\n\r\n            <!-- Display text before editing -->\r\n            <ng-template pTemplate=\"output\">\r\n              <ng-container [ngSwitch]=\"col.cellTemplate\">\r\n                <!-- Checkbox -->\r\n                <span *ngSwitchCase=\"'checkbox'\">\r\n                  {{ row[col.field] !== null && row[col.field] !== undefined ? (row[col.field] ? 'Yes' : 'No') : '' }}\r\n                </span>\r\n\r\n                <!-- Toggle -->\r\n                <span *ngSwitchCase=\"'toggle'\">\r\n                  {{ row[col.field] !== null && row[col.field] !== undefined ? (row[col.field] ? 'Enabled' : 'Disabled')\r\n                  : '' }}\r\n                </span>\r\n\r\n                <!-- Datepicker -->\r\n                <span *ngSwitchCase=\"'datepicker'\">\r\n                  {{ row[col.field] ? (row[col.field] | date:'dd/MM/yyyy') : '' }}\r\n                </span>\r\n\r\n                <!-- Default -->\r\n                <span *ngSwitchDefault>\r\n                  {{ row[col.field] }}\r\n                </span>\r\n              </ng-container>\r\n            </ng-template>\r\n          </p-cellEditor>\r\n        </ng-container>\r\n\r\n        <!-- Read-only cells (progressbar, formatter, icons, non-editable text) -->\r\n        <ng-template #readOnlyTemplate>\r\n          <ng-container [ngSwitch]=\"true\">\r\n            <!-- Progressbar -->\r\n            <div *ngSwitchCase=\"col.cellTemplate === 'progressbar'\" [ngStyle]=\"{\r\n             'min-width': col.minWidth ? col.minWidth : '70px',\r\n             'max-width': col.maxWidth ? col.maxWidth : 'none',\r\n             'display': 'inline-block'\r\n           }\">\r\n              <p-progressBar [value]=\"+row[col.field]\" [style]=\"{'width': '100%'}\"\r\n                [ngClass]=\"getProgressBarClass(+row[col.field], col.progressBarConfig)\">\r\n              </p-progressBar>\r\n            </div>\r\n            \r\n            <div *ngSwitchCase=\"'datepicker'\" [ngStyle]=\"{\r\n             'min-width': col.minWidth ? col.minWidth : '150px',\r\n             'max-width': col.maxWidth ? col.maxWidth : 'none',\r\n             'display': 'inline-block'\r\n           }\">\r\n              <p-datepicker [(ngModel)]=\"row[col.field]\" (onSelect)=\"col.cellEvents?.['select']?.($event, row)\"\r\n                [style]=\"{'width': '100%'}\">\r\n              </p-datepicker>\r\n            </div>\r\n            \r\n            <!-- Formatter -->\r\n            <span *ngSwitchCase=\"!!col.formatter\">\r\n              {{ col.formatter(row) }}\r\n            </span>\r\n\r\n            <!-- Single Icon -->\r\n            <ng-container *ngSwitchCase=\"!!col.icon\">\r\n              <i [class]=\"col.icon(row[col.field], row)\"\r\n                [ngStyle]=\"col.iconStyle ? col.iconStyle(row[col.field], row) : {}\"\r\n                (click)=\"col.onIconClick && col.onIconClick(row); $event.stopPropagation()\"\r\n                [pTooltip]=\"col.iconTooltip ? col.iconTooltip(row[col.field], row) : col.header\" tooltipPosition=\"top\">\r\n              </i>\r\n            </ng-container>\r\n\r\n            <!-- Multiple Icons -->\r\n            <ng-container *ngSwitchCase=\"!!col.icons\">\r\n              <ng-container *ngFor=\"let ic of col.icons(row[col.field], row)\">\r\n                <i [class]=\"ic.icon\" [ngStyle]=\"ic.style || {}\"\r\n                  (click)=\"ic.onClick && ic.onClick(row); $event.stopPropagation()\"\r\n                  [pTooltip]=\"ic.tooltip || col.header\" tooltipPosition=\"top\" style=\"margin-right: 0.5rem\">\r\n                </i>\r\n              </ng-container>\r\n            </ng-container>\r\n\r\n            <!-- Fallback text (non-editable) -->\r\n            <span *ngSwitchDefault>\r\n              {{ row[col.field] }}\r\n            </span>\r\n          </ng-container>\r\n        </ng-template>\r\n      </td>\r\n      \r\n      <!-- Row toggler - only show if there are expanded columns -->\r\n      <td *ngIf=\"hasExpandedColumns && isColumnCountLimited\">\r\n        <button pButton pRowToggler [pRowToggler]=\"row\" [icon]=\"expanded ? 'pi pi-chevron-down' : 'pi pi-chevron-right'\"\r\n          class=\"p-button-text\"></button>\r\n      </td>\r\n    </tr>\r\n  </ng-template>\r\n\r\n  <!-- Footer Template for column totals -->\r\n  <ng-template pTemplate=\"footer\">\r\n    <tr>\r\n      <td *ngFor=\"let col of visibleColumns\">\r\n        <ng-container *ngIf=\"col.isSummable\">\r\n          Total: {{ columnTotals[col.field] }}\r\n        </ng-container>\r\n      </td>\r\n      <td *ngIf=\"hasExpandedColumns && isColumnCountLimited\"></td>\r\n    </tr>\r\n  </ng-template>\r\n  \r\n  <!-- Expanded Row Template -->\r\n  <ng-template #expandedrow let-row>\r\n    <tr>\r\n      <td [attr.colspan]=\"expandedColspan\">\r\n        <div class=\"p-4\">\r\n          <div class=\"grid grid-cols-2 sm:grid-cols-3 md:grid-cols-4 gap-4 text-[13px]\">\r\n            <div *ngFor=\"let col of expandedColumns\">\r\n              <span class=\"font-semibold\">{{ col.header }}:</span>\r\n              <p>\r\n                <ng-container *ngIf=\"col.formatter; else plainExpandedOutput\">\r\n                  {{ col.formatter(row) }}\r\n                </ng-container>\r\n                <ng-template #plainExpandedOutput>\r\n                  <ng-container *ngIf=\"col.cellTemplate === 'progressbar'\">\r\n                    <p-progressBar [value]=\"+row[col.field]\"\r\n                      [ngClass]=\"getProgressBarClass(+row[col.field], col.progressBarConfig)\">\r\n                    </p-progressBar>\r\n                  </ng-container>\r\n                  <ng-container *ngIf=\"col.cellTemplate !== 'progressbar'\">\r\n                    {{ row[col.field] }}\r\n                  </ng-container>\r\n                </ng-template>\r\n              </p>\r\n            </div>\r\n          </div>\r\n        </div>\r\n      </td>\r\n    </tr>\r\n  </ng-template>\r\n</p-table>","import {\r\n  Component,\r\n  EventEmitter,\r\n  forwardRef,\r\n  Input,\r\n  Output,\r\n  ViewChild\r\n} from '@angular/core';\r\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\r\nimport { TreeNode } from 'primeng/api';\r\nimport { Tree } from 'primeng/tree';\r\n\r\n@Component({\r\n  selector: 'app-stk-tree',\r\n  templateUrl: './stk-tree.component.html',\r\n  styleUrls: ['./stk-tree.component.css'],\r\n  standalone: false,\r\n  providers: [\r\n    {\r\n      provide: NG_VALUE_ACCESSOR,\r\n      useExisting: forwardRef(() => StkTreeComponent),\r\n      multi: true\r\n    }\r\n  ]\r\n})\r\nexport class StkTreeComponent implements ControlValueAccessor {\r\n  @Input() value: TreeNode[] = [];\r\n  @Input() selectionMode: 'single' | 'multiple' = 'single';\r\n  @Input() metaKeySelection:boolean = false;\r\n\r\n  @Input() filter = false;\r\n  @Input() filterPlaceholder = 'Filter...';\r\n  @Input() filterBy = 'label';\r\n  @Input() filterMode: 'lenient' | 'strict' = 'lenient';\r\n\r\n  @Input() styleClass = '';\r\n  @Input() style: any = {};\r\n  \r\n\r\n  @Input() selection: any = null;\r\n\r\n  @Output() selectionChange = new EventEmitter<any>();\r\n  @Output() onNodeSelect = new EventEmitter<any>();\r\n  @Output() onNodeUnselect = new EventEmitter<any>();\r\n  @Output() onNodeExpand = new EventEmitter<any>();\r\n  @Output() onNodeCollapse = new EventEmitter<any>();\r\n\r\n\r\n  @ViewChild('primengTree') primengTree!: Tree;\r\n\r\n  onChange = (_: any) => {};\r\n  onTouched = () => {};\r\n\r\n  // ControlValueAccessor methods\r\n  writeValue(val: any): void {\r\n    this.selection = val;\r\n  }\r\n\r\n  registerOnChange(fn: any): void {\r\n    this.onChange = fn;\r\n  }\r\n\r\n  registerOnTouched(fn: any): void {\r\n    this.onTouched = fn;\r\n  }\r\n\r\n  // Selection change handler\r\n  handleSelectionChange(sel: any) {\r\n    this.selection = sel;\r\n    this.onChange(sel);\r\n    this.selectionChange.emit(sel);\r\n  }\r\n\r\n  // Expand all nodes recursively\r\n  expandAll(): void {\r\n    this.value?.forEach(node => this.expandRecursive(node));\r\n  }\r\n\r\n  // Collapse all nodes recursively\r\n  collapseAll(): void {\r\n    this.value?.forEach(node => this.collapseRecursive(node));\r\n  }\r\n\r\n  private expandRecursive(node: TreeNode): void {\r\n    node.expanded = true;\r\n    if (node.children) {\r\n      node.children.forEach(child => this.expandRecursive(child));\r\n    }\r\n  }\r\n\r\n  private collapseRecursive(node: TreeNode): void {\r\n    node.expanded = false;\r\n    if (node.children) {\r\n      node.children.forEach(child => this.collapseRecursive(child));\r\n    }\r\n  }\r\n}\r\n","<div class=\"flex flex-wrap gap-2 mb-6\">\r\n  <p-button icon=\"pi pi-plus\" label=\"Expand all\" (click)=\"expandAll()\"></p-button>\r\n  <p-button icon=\"pi pi-minus\" label=\"Collapse all\" (click)=\"collapseAll()\"></p-button>\r\n  <p-toggleswitch inputId=\"input-metakey\" [(ngModel)]=\"metaKeySelection\" />\r\n</div>\r\n<p-tree\r\n  #primengTree\r\n  [value]=\"value\"\r\n  [selectionMode]=\"selectionMode\"\r\n  [selection]=\"selection\"\r\n  [metaKeySelection]=\"metaKeySelection\"\r\n  [filter]=\"filter\"\r\n  [filterPlaceholder]=\"filterPlaceholder\"\r\n  [filterBy]=\"filterBy\"\r\n  [filterMode]=\"filterMode\"\r\n  [styleClass]=\"styleClass\"\r\n  [style]=\"style\"\r\n  (selectionChange)=\"handleSelectionChange($event)\"\r\n  (onNodeSelect)=\"onNodeSelect.emit($event)\"\r\n  (onNodeUnselect)=\"onNodeUnselect.emit($event)\"\r\n  (onNodeExpand)=\"onNodeExpand.emit($event)\"\r\n  (onNodeCollapse)=\"onNodeCollapse.emit($event)\">\r\n</p-tree>\r\n  <ng-content></ng-content>\r\n\r\n","import {\r\n  Component,\r\n  Input,\r\n  Output,\r\n  EventEmitter,\r\n  forwardRef\r\n} from '@angular/core';\r\nimport {\r\n  ControlValueAccessor,\r\n  NG_VALUE_ACCESSOR\r\n} from '@angular/forms';\r\nimport { AutoCompleteCompleteEvent } from 'primeng/autocomplete';\r\n\r\n@Component({\r\n  selector: 'app-stk-autocomplete',\r\n  templateUrl: './stk-autocomplete.component.html',\r\n  styleUrls: ['./stk-autocomplete.component.css'],\r\n  standalone: false,\r\n  providers: [\r\n    {\r\n      provide: NG_VALUE_ACCESSOR,\r\n      useExisting: forwardRef(() => StkAutoCompleteComponent),\r\n      multi: true\r\n    }\r\n  ]\r\n})\r\nexport class StkAutoCompleteComponent implements ControlValueAccessor {\r\n  // Form control internals\r\n  private _value: any = null;\r\n  onChange = (_: any) => {};\r\n  onTouched = () => {};\r\n\r\n  writeValue(value: any): void {\r\n    this._value = value;\r\n  }\r\n\r\n  registerOnChange(fn: any): void {\r\n    this.onChange = fn;\r\n  }\r\n\r\n  registerOnTouched(fn: any): void {\r\n    this.onTouched = fn;\r\n  }\r\n\r\n  setDisabledState(isDisabled: boolean): void {\r\n    this.disabled = isDisabled;\r\n  }\r\n\r\n  // Inputs\r\n  @Input() elementId?: string;\r\n  @Input() data: any[] = [];\r\n  @Input() suggestions: any[] = [];\r\n  @Input() placeholder: string = '';\r\n  @Input() disabled: boolean = false;\r\n  @Input() multiple: boolean = false;\r\n  @Input() minLength: number = 1;\r\n  @Input() delay: number = 300;\r\n  @Input() showClear: boolean = true;\r\n  @Input() inputStyle: { [key: string]: string } = {};\r\n  @Input() panelStyle: { [key: string]: string } = {};\r\n  @Input() styleClass: string = 'w-full';\r\n  @Input() panelStyleClass: string = '';\r\n  @Input() inputId: string = '';\r\n  @Input() readonly: boolean = false;\r\n  @Input() maxlength: number = 10;\r\n  @Input() field: string = 'name';\r\n\r\n  // Outputs\r\n  @Output() valueChange = new EventEmitter<any>();\r\n  @Output() onSelect = new EventEmitter<any>();\r\n  @Output() onUnselect = new EventEmitter<any>();\r\n  @Output() onFocus = new EventEmitter<Event>();\r\n  @Output() onBlur = new EventEmitter<Event>();\r\n  @Output() onClear = new EventEmitter<void>();\r\n\r\n  // Value accessor\r\n  get value() {\r\n    return this._value;\r\n  }\r\n\r\n  set value(val: any) {\r\n    if (val !== this._value) {\r\n      this._value = val;\r\n      this.onChange(val);\r\n      this.valueChange.emit(val);\r\n    }\r\n  }\r\n\r\n  // Events\r\n  onModelChange(event: any) {\r\n    this.value = event;\r\n  }\r\n\r\n  onSelectionChange(event: any) {\r\n    this.onSelect.emit(event);\r\n  }\r\n\r\n  onUnselectionChange(event: any) {\r\n    this.onUnselect.emit(event);\r\n  }\r\n\r\n  onFocusEvent(event: Event) {\r\n    this.onFocus.emit(event);\r\n  }\r\n\r\n  onBlurEvent(event: Event) {\r\n    this.onTouched();\r\n    this.onBlur.emit(event);\r\n  }\r\n\r\n  onClearEvent() {\r\n    this.value = null;\r\n    this.onClear.emit();\r\n  }\r\n\r\n  onComplete($event: AutoCompleteCompleteEvent) {\r\n    const query = $event.query?.toLowerCase?.() || '';\r\n    this.suggestions = this.data.filter(item =>\r\n      item[this.field]?.toLowerCase().includes(query)\r\n    );\r\n  }\r\n}\r\n","<p-autoComplete\r\n  [id]=\"elementId\"\r\n  [(ngModel)]=\"value\"\r\n  [field]=\"field\"\r\n  [suggestions]=\"suggestions\"\r\n  [placeholder]=\"placeholder\"\r\n  [disabled]=\"disabled\"\r\n  [multiple]=\"multiple\"\r\n  [minLength]=\"minLength\"\r\n  [delay]=\"delay\"\r\n  [showClear]=\"showClear\"\r\n  [inputStyle]=\"inputStyle\"\r\n  [panelStyle]=\"panelStyle\"\r\n  [panelStyleClass]=\"panelStyleClass\"\r\n  [inputId]=\"inputId\"\r\n  [readonly]=\"readonly\"\r\n  [maxlength]=\"maxlength\"\r\n  (ngModelChange)=\"onModelChange($event)\"\r\n  (completeMethod)=\"onComplete($event)\"\r\n  (onSelect)=\"onSelectionChange($event)\"\r\n  (onUnselect)=\"onUnselectionChange($event)\"\r\n  (onFocus)=\"onFocusEvent($event)\"\r\n  (onBlur)=\"onBlurEvent($event)\"\r\n  (onClear)=\"onClearEvent()\">\r\n</p-autoComplete>\r\n","import {\r\n  Component,\r\n  Input,\r\n  forwardRef\r\n} from '@angular/core';\r\nimport {\r\n  ControlValueAccessor,\r\n  FormControl,\r\n  NG_VALUE_ACCESSOR\r\n} from '@angular/forms';\r\n\r\n@Component({\r\n  selector: 'app-stk-select',\r\n  standalone:false,\r\n  templateUrl: './stk-select.component.html',\r\n  styleUrls: ['./stk-select.component.css'],\r\n  providers: [\r\n    {\r\n      provide: NG_VALUE_ACCESSOR,\r\n      useExisting: forwardRef(() => StkSelectComponent),\r\n      multi: true\r\n    }\r\n  ]\r\n})\r\nexport class StkSelectComponent implements ControlValueAccessor {\r\n  @Input() elementId?: string;\r\n  @Input() control?: FormControl;\r\n  @Input() options: any[] = [];\r\n  @Input() placeholder: string = '';\r\n  @Input() optionLabel: string = 'name';\r\n\r\n  value: any;\r\n  disabled = false;\r\n\r\n  onChange = (_: any) => {};\r\n  onTouched = () => {};\r\n\r\n  writeValue(val: any): void {\r\n    this.value = val;\r\n  }\r\n  registerOnChange(fn: any): void {\r\n    this.onChange = fn;\r\n  }\r\n  registerOnTouched(fn: any): void {\r\n    this.onTouched = fn;\r\n  }\r\n  setDisabledState(disabled: boolean): void {\r\n    this.disabled = disabled;\r\n  }\r\n\r\n  onSelectionChange(event: any) {\r\n    const val = event.value;\r\n    this.value = val;\r\n    this.onChange(val);\r\n    this.control?.setValue(val); // Also sync with reactive form\r\n  }\r\n}\r\n","<p-select\r\n  [id]=\"elementId\"\r\n  *ngIf=\"control; else modelBlock\"\r\n  [formControl]=\"control\"\r\n  [options]=\"options\"\r\n  [optionLabel]=\"optionLabel\"\r\n  [placeholder]=\"placeholder\"\r\n  [disabled]=\"disabled\"\r\n  class=\"w-full md:w-56\">\r\n</p-select>\r\n\r\n<ng-template #modelBlock>\r\n  <p-select\r\n    [id]=\"elementId\"\r\n    [(ngModel)]=\"value\"\r\n    (onChange)=\"onSelectionChange($event)\"\r\n    [options]=\"options\"\r\n    [optionLabel]=\"optionLabel\"\r\n    [placeholder]=\"placeholder\"\r\n    [disabled]=\"disabled\"\r\n    class=\"w-full md:w-56\">\r\n  </p-select>\r\n</ng-template>\r\n","import { Component, Input } from '@angular/core';\r\nimport { TreeNode } from 'primeng/api';\r\n\r\n@Component({\r\n  selector: 'app-stk-orgchart',\r\n  standalone: false,\r\n  templateUrl: './stk-orgchart.component.html',\r\n  styleUrl: './stk-orgchart.component.css'\r\n})\r\nexport class StkOrgchartComponent {\r\n @Input() data: TreeNode[] = [];\r\nselectedNodes!: TreeNode[];\r\n \r\n}\r\n","<div class=\"card overflow-x-auto\">\r\n  <p-organization-chart [value]=\"data\" selectionMode=\"multiple\" [(selection)]=\"selectedNodes\" [collapsible]=\"true\">\r\n    <ng-template let-node pTemplate=\"person\">\r\n      <div class=\"flex flex-col\">\r\n        <div class=\"flex flex-col items-center\">\r\n        \r\n          <span class=\"font-bold mb-2\">{{ node.data.name }}</span>\r\n          <span>{{ node.data.title }}</span>\r\n        </div>\r\n      </div>\r\n    </ng-template>\r\n  </p-organization-chart>\r\n</div>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n  selector: 'app-stk-badge',\r\n  standalone: false,\r\n  templateUrl: './stk-badge.component.html',\r\n  styleUrl: './stk-badge.component.css'\r\n})\r\nexport class StkBadgeComponent {\r\n @Input() icon: string = 'pi pi-bell';\r\n  @Input() value?: string | number;     // Add this property explicitly with @Input decorator\r\n  @Input() severity?: 'success' | 'info' | 'warning' | 'danger';\r\n  @Input() size: string = '2rem';\r\n}\r\n","<p-overlayBadge [value]=\"value\" [severity]=\"severity\">\r\n  <div class=\"flex items-center justify-center\">\r\n    <i [class]=\"icon\" [ngStyle]=\"{'font-size': size}\"></i>\r\n  </div>\r\n</p-overlayBadge>","import {\r\n  Component,\r\n  Input,\r\n  forwardRef\r\n} from '@angular/core';\r\nimport {\r\n  ControlValueAccessor,\r\n  NG_VALUE_ACCESSOR\r\n} from '@angular/forms';\r\n\r\n@Component({\r\n  selector: 'app-stk-input',\r\n  standalone:false,\r\n  templateUrl: './stk-input.component.html',\r\n  styleUrls: ['./stk-input.component.css'],\r\n  providers: [\r\n    {\r\n      provide: NG_VALUE_ACCESSOR,\r\n      useExisting: forwardRef(() => StkInputComponent),\r\n      multi: true\r\n    }\r\n  ]\r\n})\r\nexport class StkInputComponent implements ControlValueAccessor {\r\n\r\n  @Input() elementId?: string;\r\n  /** Input binding for ngModel or formControl */\r\n  value: string = '';\r\n\r\n  /** Input binding for disabling the field */\r\n  @Input() disabled: boolean = false;\r\n\r\n  /**\r\n   * Allowed pattern for key filtering (optional).\r\n   * If not provided, use the default pattern.\r\n   */\r\n  @Input() allowedPattern?: RegExp;\r\n\r\n  /** Max character length */\r\n  @Input() maxLength: number = 100;\r\n\r\n  /** Placeholder for input */\r\n  @Input() placeholder: string = '';\r\n\r\n  /** Default regex pattern */\r\n  private readonly defaultPattern: RegExp = /^[a-zA-Z0-9@#$%&]*$/;\r\n\r\n  // ControlValueAccessor methods\r\n  onChange = (_: any) => {};\r\n  onTouched = () => {};\r\n\r\n  writeValue(value: string): void {\r\n    this.value = value || '';\r\n  }\r\n\r\n  registerOnChange(fn: any): void {\r\n    this.onChange = fn;\r\n  }\r\n\r\n  registerOnTouched(fn: any): void {\r\n    this.onTouched = fn;\r\n  }\r\n\r\n  setDisabledState(isDisabled: boolean): void {\r\n    this.disabled = isDisabled;\r\n  }\r\n\r\n  // Emit value changes\r\n  onInputChange(event: any) {\r\n    const val = event.target.value;\r\n    this.value = val;\r\n    this.onChange(val);\r\n  }\r\n\r\n  // Getter for final pattern (default if not overridden)\r\n  get keyFilterPattern(): RegExp {\r\n    return this.allowedPattern ?? this.defaultPattern;\r\n  }\r\n}\r\n","<input\r\n  pInputText\r\n  [id]=\"elementId\"\r\n  [(ngModel)]=\"value\"\r\n  [disabled]=\"disabled\"\r\n  [placeholder]=\"placeholder\"\r\n  [pKeyFilter]=\"keyFilterPattern\"\r\n  [attr.maxlength]=\"maxLength\"\r\n  (input)=\"onInputChange($event)\"\r\n  (blur)=\"onTouched()\" />\r\n\r\n","// skeleton.component.ts\r\nimport { Component, Input, OnInit, ChangeDetectionStrategy } from '@angular/core';\r\nimport { SkeletonConfig } from '../sharedskeleton.directive';\r\n\r\n@Component({\r\n  selector: 'app-skeleton',  // Fixed selector to match your component\r\n  standalone: false,\r\n  templateUrl: './skeleton.component.html',\r\n  changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class SkeletonComponent implements OnInit {\r\n  @Input() config: SkeletonConfig = {};\r\n  \r\n  skeletonLines: number[] = [];\r\n\r\n  ngOnInit(): void {\r\n    console.log('SkeletonComponent initialized with config:', this.config); // Debug log\r\n    const lines = this.config.lines || 3;\r\n    this.skeletonLines = Array(lines).fill(0).map((_, i) => i);\r\n    console.log('Generated skeleton lines:', this.skeletonLines); // Debug log\r\n  }\r\n\r\n  getHeight(index: number): string {\r\n    if (this.config.shape === 'circle' || this.config.shape === 'square') {\r\n      return this.config.size || '2rem';\r\n    }\r\n    return this.config.height || '1.2rem';\r\n  }\r\n\r\n  getWidth(index: number): string {\r\n    if (this.config.shape === 'circle' || this.config.shape === 'square') {\r\n      return this.config.size || '2rem';\r\n    }\r\n    \r\n    const baseWidth = this.config.width || '100%';\r\n    \r\n    // Create varied widths for more realistic skeleton\r\n    if (typeof baseWidth === 'string' && baseWidth.includes('%')) {\r\n      const variations = ['100%', '85%', '92%', '78%', '95%'];\r\n      return variations[index % variations.length];\r\n    }\r\n    \r\n    return baseWidth;\r\n  }\r\n\r\n  getLineStyleClass(index: number): string {\r\n    const baseClass = 'block w-full mb-2';\r\n    const configClass = this.config.styleClass || '';\r\n    const lastItemClass = index === this.skeletonLines.length - 1 ? 'mb-0' : '';\r\n    return `${baseClass} ${configClass} ${lastItemClass}`.trim();\r\n  }\r\n}","<!-- skeleton.component.html -->\r\n<div class=\"skeleton-wrapper w-full\">\r\n  <ng-container *ngFor=\"let line of skeletonLines; let i = index\">\r\n    <p-skeleton \r\n      [height]=\"getHeight(i)\"\r\n      [width]=\"getWidth(i)\"\r\n      [shape]=\"config.shape || 'rectangle'\"\r\n      [borderRadius]=\"config.borderRadius\"\r\n      [size]=\"config.size\"\r\n      [animation]=\"config.animation !== false\"\r\n      [styleClass]=\"getLineStyleClass(i)\">\r\n    </p-skeleton>\r\n  </ng-container>\r\n</div>","// sharedskeleton.directive.ts\r\nimport { \r\n  Directive, \r\n  Input, \r\n  OnInit, \r\n  OnDestroy, \r\n  ViewContainerRef, \r\n  TemplateRef, \r\n  ComponentRef,\r\n  inject,\r\n  effect,\r\n  signal,\r\n  ChangeDetectorRef\r\n} from '@angular/core';\r\nimport { SkeletonComponent } from './skeleton/skeleton.component';\r\n\r\nexport interface SkeletonConfig {\r\n  lines?: number;\r\n  height?: string;\r\n  width?: string;\r\n  shape?: 'rectangle' | 'circle' | 'square';\r\n  borderRadius?: string;\r\n  styleClass?: string;\r\n  animation?: boolean;\r\n  size?: string;\r\n}\r\n\r\n@Directive({\r\n  selector: '[appSharedskeleton]',\r\n  standalone: false\r\n})\r\nexport class SharedskeletonDirective implements OnInit, OnDestroy {\r\n  private viewContainer = inject(ViewContainerRef);\r\n  private templateRef = inject(TemplateRef<any>);\r\n  private cdr = inject(ChangeDetectorRef);\r\n  \r\n  private skeletonComponentRef: ComponentRef<SkeletonComponent> | null = null;\r\n  private isShowingSkeleton = signal(false);\r\n\r\n  @Input() set appSharedskeleton(isLoading: boolean) {\r\n    console.log('Skeleton loading state changed:', isLoading); // Debug log\r\n    this.isShowingSkeleton.set(isLoading);\r\n  }\r\n\r\n  @Input() skeletonConfig: SkeletonConfig = {\r\n    lines: 3,\r\n    height: '1.2rem',\r\n    width: '100%',\r\n    shape: 'rectangle',\r\n    animation: true,\r\n    styleClass: 'mb-2'\r\n  };\r\n\r\n  constructor() {\r\n    // Use effect to reactively update skeleton visibility\r\n    effect(() => {\r\n      console.log('Effect triggered, showing skeleton:', this.isShowingSkeleton()); // Debug log\r\n      if (this.isShowingSkeleton()) {\r\n        this.showSkeleton();\r\n      } else {\r\n        this.hideSkeleton();\r\n      }\r\n    });\r\n  }\r\n\r\n  ngOnInit(): void {\r\n    console.log('SharedskeletonDirective initialized'); // Debug log\r\n  }\r\n\r\n  ngOnDestroy(): void {\r\n    this.clearView();\r\n  }\r\n\r\n  private showSkeleton(): void {\r\n    console.log('Showing skeleton with config:', this.skeletonConfig); // Debug log\r\n    this.clearView();\r\n    \r\n    try {\r\n      // Create the skeleton component\r\n      this.skeletonComponentRef = this.viewContainer.createComponent(SkeletonComponent);\r\n      \r\n      // Pass configuration to the skeleton component\r\n      this.skeletonComponentRef.instance.config = { ...this.skeletonConfig };\r\n      \r\n      // Manually trigger change detection\r\n      this.skeletonComponentRef.changeDetectorRef.detectChanges();\r\n      \r\n      console.log('Skeleton component created successfully'); // Debug log\r\n    } catch (error) {\r\n      console.error('Error creating skeleton component:', error);\r\n    }\r\n  }\r\n\r\n  private hideSkeleton(): void {\r\n    console.log('Hiding skeleton, showing original content'); // Debug log\r\n    this.clearView();\r\n    \r\n    try {\r\n      // Show the original content\r\n      this.viewContainer.createEmbeddedView(this.templateRef);\r\n      this.cdr.detectChanges();\r\n    } catch (error) {\r\n      console.error('Error showing original content:', error);\r\n    }\r\n  }\r\n\r\n  private clearView(): void {\r\n    this.viewContainer.clear();\r\n    \r\n    if (this.skeletonComponentRef) {\r\n      this.skeletonComponentRef.destroy();\r\n      this.skeletonComponentRef = null;\r\n    }\r\n  }\r\n}","import {\r\n  Directive,\r\n  Input,\r\n  ElementRef,\r\n  Renderer2,\r\n  OnInit,\r\n  OnChanges,\r\n  inject,\r\n  ViewContainerRef,\r\n  SimpleChange,\r\n  OnDestroy,\r\n} from '@angular/core';\r\nimport { Skeleton } from 'primeng/skeleton';\r\nimport { SimpleChanges } from '@angular/core';\r\n\r\n@Directive({\r\n  selector: '[appSkeleton]',\r\n  standalone: false,\r\n})\r\nexport class SkeletonDirective implements OnInit, OnChanges, OnDestroy {\r\n  @Input('appSkeleton') isLoading: boolean = false;\r\n\r\n  private skeletonRef: any;\r\n  private iconSkeletonRefs: any[] = [];\r\n  private observer: ResizeObserver | null = null;\r\n\r\n  private elRef = inject(ElementRef);\r\n  private viewContainer = inject(ViewContainerRef);\r\n  private renderer = inject(Renderer2);\r\n\r\n  ngOnInit(): void {\r\n    this.updateSkeleton();\r\n  }\r\n\r\n  ngOnChanges(changes: SimpleChanges): void {\r\n    if (changes['isLoading']) {\r\n      this.updateSkeleton();\r\n    }\r\n  }\r\n\r\n  private inferShape(el: HTMLElement): 'rectangle' | 'circle' | 'text' {\r\n    const styles = getComputedStyle(el);\r\n    const borderRadius = parseFloat(styles.borderRadius);\r\n    const aspectRatio = el.offsetWidth / el.offsetHeight;\r\n\r\n    if (borderRadius >= el.offsetHeight / 2) return 'circle';\r\n    if (aspectRatio > 3) return 'text';\r\n    return 'rectangle';\r\n  }\r\n\r\n  private getTargetElement(): HTMLElement {\r\n    const hostEl = this.elRef.nativeElement;\r\n\r\n    // If the host element itself has rounded-[50px] or similar button styling, use it directly\r\n    if (hostEl.classList.contains('rounded-[50px]') || \r\n        hostEl.classList.contains('bg-[#0037ff]') ||\r\n        this.hasSignificantBorderRadius(hostEl)) {\r\n      return hostEl;\r\n    }\r\n\r\n    // Check for PrimeNG datepicker first\r\n    const datepickerSelectors = [\r\n      '.p-calendar',\r\n      '.p-datepicker',\r\n      '.p-calendar-w-btn',\r\n      'p-calendar'\r\n    ];\r\n\r\n    for (const selector of datepickerSelectors) {\r\n      const datepicker = hostEl.querySelector(selector);\r\n      if (datepicker) return datepicker as HTMLElement;\r\n    }\r\n\r\n    if (hostEl.tagName.toLowerCase() === 'app-stk-datepicker' || \r\n        hostEl.classList.contains('p-calendar') ||\r\n        hostEl.classList.contains('p-datepicker')) {\r\n      return hostEl;\r\n    }\r\n\r\n    const selectDropdown = hostEl.querySelector('.p-dropdown');\r\n    if (selectDropdown) return selectDropdown as HTMLElement;\r\n\r\n    const selectCustom = hostEl.querySelector('.p-select');\r\n    if (selectCustom) return selectCustom as HTMLElement;\r\n\r\n    const selectors = [\r\n      'input.p-inputtext',\r\n      'button.p-button',\r\n      'div.p-checkbox-box',\r\n      'div.p-dropdown-label',\r\n      'div.p-autocomplete',\r\n      'div.p-slider',\r\n      'div.p-rating',\r\n      'div.p-avatar',\r\n      'div.p-select',\r\n      'div.p-chip',\r\n      'div.p-tag',\r\n      'div.p-progressbar',\r\n      'div.p-card',\r\n      'div.p-panel',\r\n      'div.p-tabview',\r\n      'div.p-dialog',\r\n      'div.p-sidebar',\r\n      'div.p-menu',\r\n      'div.p-table',\r\n      'div.p-fieldset',\r\n      'div.p-togglebutton',\r\n      'label',\r\n      'span.p-badge'\r\n    ];\r\n\r\n    for (const selector of selectors) {\r\n      const found = hostEl.querySelector(selector);\r\n      if (found) return found as HTMLElement;\r\n    }\r\n\r\n    return hostEl;\r\n  }\r\n\r\n  private hasSignificantBorderRadius(el: HTMLElement): boolean {\r\n    const styles = getComputedStyle(el);\r\n    const borderRadius = parseFloat(styles.borderRadius);\r\n    return borderRadius > 10;\r\n  }\r\n\r\n  private getAllDatepickerIcons(containerEl: HTMLElement): HTMLElement[] {\r\n    const icons: HTMLElement[] = [];\r\n    \r\n    const iconSelectors = [\r\n      '.p-datepicker-trigger',\r\n      '.p-calendar-w-btn .p-button',\r\n      '.p-inputgroup-addon button',\r\n      '.p-button[aria-label*=\"calendar\"]',\r\n      '.p-button[aria-label*=\"date\"]',\r\n      '.p-button .p-icon',\r\n      'button[type=\"button\"]',\r\n      '.pi-calendar',\r\n      '.pi-clock',\r\n      'button.p-datepicker-trigger',\r\n      'span.p-calendar-icon'\r\n    ];\r\n\r\n    iconSelectors.forEach(selector => {\r\n      const elements = containerEl.querySelectorAll(selector);\r\n      elements.forEach(el => {\r\n        if (el instanceof HTMLElement && !icons.includes(el)) {\r\n          if (this.isDatepickerIcon(el)) {\r\n            icons.push(el);\r\n          }\r\n        }\r\n      });\r\n    });\r\n\r\n    if (icons.length === 0) {\r\n      const buttons = containerEl.querySelectorAll('button');\r\n      buttons.forEach(button => {\r\n        if (button instanceof HTMLElement && this.isDatepickerIcon(button)) {\r\n          icons.push(button);\r\n        }\r\n      });\r\n    }\r\n\r\n    return icons;\r\n  }\r\n\r\n  private isDatepickerIcon(element: HTMLElement): boolean {\r\n    const classList = element.classList;\r\n    const ariaLabel = element.getAttribute('aria-label')?.toLowerCase() || '';\r\n    const title = element.getAttribute('title')?.toLowerCase() || '';\r\n    \r\n    return (\r\n      classList.contains('p-datepicker-trigger') ||\r\n      classList.contains('p-calendar-icon') ||\r\n      classList.contains('pi-calendar') ||\r\n      classList.contains('pi-clock') ||\r\n      ariaLabel.includes('calendar') ||\r\n      ariaLabel.includes('date') ||\r\n      title.includes('calendar') ||\r\n      title.includes('date') ||\r\n      (element.tagName === 'BUTTON' && element.closest('.p-calendar, .p-datepicker') !== null)\r\n    );\r\n  }\r\n\r\n  private isDatepickerElement(element: HTMLElement): boolean {\r\n    return (\r\n      element.classList.contains('p-calendar') ||\r\n      element.classList.contains('p-datepicker') ||\r\n      element.classList.contains('p-calendar-w-btn') ||\r\n      element.tagName.toLowerCase() === 'app-stk-datepicker' ||\r\n      element.querySelector('.p-calendar') !== null ||\r\n      element.querySelector('.p-datepicker') !== null\r\n    );\r\n  }\r\n\r\n  private updateSkeleton(): void {\r\n    const targetEl = this.getTargetElement();\r\n    const parent = targetEl?.parentNode;\r\n\r\n    if (!targetEl || !parent) return;\r\n\r\n    if (this.isLoading) {\r\n      if (this.skeletonRef) return;\r\n\r\n      const rect = targetEl.getBoundingClientRect();\r\n      const computedStyle = getComputedStyle(targetEl);\r\n      \r\n      let shape: 'rectangle' | 'circle' | 'text' = 'rectangle';\r\n      \r\n      if (\r\n        targetEl.classList.contains('p-dropdown') ||\r\n        targetEl.classList.contains('p-select') ||\r\n        this.isDatepickerElement(targetEl)\r\n      ) {\r\n        shape = 'rectangle';\r\n      } else {\r\n        shape = this.inferShape(targetEl);\r\n      }\r\n\r\n      // Create main skeleton with exact dimensions\r\n      this.skeletonRef = this.viewContainer.createComponent(Skeleton);\r\n      this.skeletonRef.setInput('shape', shape);\r\n      this.skeletonRef.setInput('width', `${targetEl.offsetWidth}px`);\r\n      this.skeletonRef.setInput('height', `${targetEl.offsetHeight}px`);\r\n\r\n      const skeletonEl = this.skeletonRef.location.nativeElement;\r\n\r\n      // Set parent positioning\r\n      const parentComputedStyle = getComputedStyle(parent as Element);\r\n      if (parentComputedStyle.position === 'static') {\r\n        this.renderer.setStyle(parent, 'position', 'relative');\r\n      }\r\n\r\n      // Position main skeleton with exact dimensions\r\n      this.renderer.setStyle(skeletonEl, 'position', 'absolute');\r\n      this.renderer.setStyle(skeletonEl, 'top', `${targetEl.offsetTop}px`);\r\n      this.renderer.setStyle(skeletonEl, 'left', `${targetEl.offsetLeft}px`);\r\n      this.renderer.setStyle(skeletonEl, 'width', `${targetEl.offsetWidth}px`);\r\n      this.renderer.setStyle(skeletonEl, 'height', `${targetEl.offsetHeight}px`);\r\n      this.renderer.setStyle(skeletonEl, 'z-index', '10');\r\n      this.renderer.setStyle(skeletonEl, 'box-sizing', 'border-box');\r\n      \r\n      // CRITICAL FIX: Apply border-radius to both skeleton wrapper and inner skeleton element\r\n      const borderRadius = computedStyle.borderRadius;\r\n      if (borderRadius && borderRadius !== '0px') {\r\n        // Apply to skeleton wrapper\r\n        this.renderer.setStyle(skeletonEl, 'border-radius', borderRadius);\r\n        this.renderer.setStyle(skeletonEl, 'overflow', 'hidden');\r\n        \r\n        // Apply to inner p-skeleton element\r\n        setTimeout(() => {\r\n          const skeletonChildEl = skeletonEl.querySelector('.p-skeleton');\r\n          if (skeletonChildEl) {\r\n            this.renderer.setStyle(skeletonChildEl, 'border-radius', borderRadius);\r\n            this.renderer.setStyle(skeletonChildEl, 'width', '100%');\r\n            this.renderer.setStyle(skeletonChildEl, 'height', '100%');\r\n            this.renderer.setStyle(skeletonChildEl, 'display', 'block');\r\n          }\r\n        }, 0);\r\n      }\r\n\r\n      // Hide the original element\r\n      this.renderer.setStyle(targetEl, 'visibility', 'hidden');\r\n      this.renderer.appendChild(parent, skeletonEl);\r\n\r\n      // Handle datepicker icons\r\n      if (this.isDatepickerElement(targetEl)) {\r\n        setTimeout(() => {\r\n          const datepickerIcons = this.getAllDatepickerIcons(targetEl);\r\n          \r\n          datepickerIcons.forEach((icon, index) => {\r\n            if (!icon.offsetParent) return;\r\n            \r\n            const iconSkeletonRef = this.viewContainer.createComponent(Skeleton);\r\n            iconSkeletonRef.setInput('shape', 'rectangle');\r\n            iconSkeletonRef.setInput('width', `${icon.offsetWidth}px`);\r\n            iconSkeletonRef.setInput('height', `${icon.offsetHeight}px`);\r\n\r\n            const iconSkeletonEl = iconSkeletonRef.location.nativeElement;\r\n            \r\n            let iconLeft = 0;\r\n            let iconTop = 0;\r\n            \r\n            let currentEl: HTMLElement | null = icon;\r\n            while (currentEl && currentEl !== targetEl && currentEl !== document.body) {\r\n              iconLeft += currentEl.offsetLeft;\r\n              iconTop += currentEl.offsetTop;\r\n              currentEl = currentEl.offsetParent as HTMLElement;\r\n            }\r\n\r\n            this.renderer.setStyle(iconSkeletonEl, 'position', 'absolute');\r\n            this.renderer.setStyle(iconSkeletonEl, 'top', `${targetEl.offsetTop + iconTop}px`);\r\n            this.renderer.setStyle(iconSkeletonEl, 'left', `${targetEl.offsetLeft + iconLeft}px`);\r\n            this.renderer.setStyle(iconSkeletonEl, 'width', `${icon.offsetWidth}px`);\r\n            this.renderer.setStyle(iconSkeletonEl, 'height', `${icon.offsetHeight}px`);\r\n\r\n            this.renderer.appendChild(parent, iconSkeletonEl);\r\n            this.iconSkeletonRefs.push(iconSkeletonRef);\r\n          });\r\n        }, 10);\r\n      }\r\n\r\n      // Setup resize observer\r\n      this.observer = new ResizeObserver(() => {\r\n        if (this.skeletonRef && targetEl) {\r\n          this.skeletonRef.setInput('width', `${targetEl.offsetWidth}px`);\r\n          this.skeletonRef.setInput('height', `${targetEl.offsetHeight}px`);\r\n        }\r\n      });\r\n\r\n      this.observer.observe(targetEl);\r\n    } else {\r\n      this.renderer.setStyle(targetEl, 'visibility', 'visible');\r\n      \r\n      if (this.skeletonRef) {\r\n        this.skeletonRef.destroy();\r\n        this.skeletonRef = null;\r\n      }\r\n      \r\n      this.iconSkeletonRefs.forEach(iconRef => {\r\n        if (iconRef) {\r\n          iconRef.destroy();\r\n        }\r\n      });\r\n      this.iconSkeletonRefs = [];\r\n      \r\n      this.observer?.disconnect();\r\n    }\r\n  }\r\n\r\n  ngOnDestroy(): void {\r\n    this.observer?.disconnect();\r\n    if (this.skeletonRef) {\r\n      this.skeletonRef.destroy();\r\n    }\r\n    this.iconSkeletonRefs.forEach(iconRef => {\r\n      if (iconRef) {\r\n        iconRef.destroy();\r\n      }\r\n    });\r\n  }\r\n}","import { Component, Input, inject } from '@angular/core';\r\n//import { BrandTokenService } from '../../../../assets/css/theme/tokens/brand-token.service';\r\n\r\n@Component({\r\n  selector: 'app-stk-message',\r\n  standalone: false,\r\n  templateUrl: './stk-message.component.html',\r\n  styleUrl: './stk-message.component.css'\r\n})\r\nexport class StkMessageComponent {\r\n  @Input() severity: 'info' | 'success' | 'warn' | 'error' | 'secondary' | 'contrast' = 'info';\r\n  @Input() text: string = '';\r\n  @Input() linkText?: string;\r\n  @Input() linkHref?: string;\r\n  @Input() icon: string = 'pi pi-info-circle';\r\n  @Input() closable: boolean = true;\r\n  @Input() styleClass?: string;\r\n  @Input() style: { [klass: string]: any } | null = null;\r\n  \r\n\r\n  \r\n}\r\n","<p-message\r\n  [severity]=\"severity\"\r\n  [closable]=\"closable\"\r\n  [icon]=\"icon\"\r\n  [styleClass]=\"styleClass\"\r\n>\r\n \r\n    <span>\r\n      {{ text }}\r\n      <a\r\n        *ngIf=\"linkText && linkHref\"\r\n        [href]=\"linkHref\"\r\n        class=\"underline ml-1 font-semibold\"\r\n        [ngClass]=\"{\r\n          'text-blue-700': severity === 'info',     \r\n          'text-green-700': severity === 'success',\r\n          'text-orange-700': severity === 'warn',   \r\n          'text-red-700': severity === 'error',\r\n          'text-gray-700': severity === 'secondary'\r\n        }\"\r\n      >\r\n        {{ linkText }}\r\n      </a>\r\n    </span>\r\n \r\n</p-message>","import {\r\n  ChangeDetectionStrategy,\r\n  Component,\r\n  EventEmitter,\r\n  Input,\r\n  Output\r\n} from '@angular/core';\r\nimport { ChipProps } from 'primeng/chip'; // adjust if your project defines its own ChipProps\r\n\r\n@Component({\r\n  selector: 'app-stk-chip',\r\n  templateUrl: './stk-chip.component.html',\r\n  styleUrls: ['./stk-chip.component.css'],\r\n  changeDetection: ChangeDetectionStrategy.OnPush,\r\n  standalone:false\r\n})\r\nexport class StkChipComponent {\r\n  @Input() label: string | null = null;\r\n  @Input() icon: string | null = null;\r\n  @Input() image: string | null = null;\r\n  @Input() alt: string | null = null;\r\n  @Input() style: { [klass: string]: any } | null = null;\r\n  @Input() styleClass: string | null = null;\r\n  @Input() removable = false;\r\n  @Input() removeIcon: string | null = null;\r\n  @Input() chipProps: ChipProps | null = null;\r\n\r\n  @Output() chipRemove = new EventEmitter<MouseEvent>();\r\n\r\n  onRemove(event: MouseEvent) {\r\n    this.chipRemove.emit(event);\r\n  }\r\n}\r\n","<p-chip\r\n  [label]=\"label\"\r\n  [icon]=\"icon\"\r\n  [image]=\"image\"\r\n  [alt]=\"alt\"\r\n  [style]=\"style\"\r\n  [styleClass]=\"styleClass\"\r\n  [removable]=\"removable\"\r\n  [removeIcon]=\"removeIcon\"\r\n  (onRemove)=\"onRemove($event)\"\r\n  *ngIf=\"!chipProps\"\r\n></p-chip>\r\n\r\n","import { Component, OnInit, Input } from '@angular/core';\r\n\r\n@Component({\r\n  selector: 'app-stk-payoff-linechart',\r\n  standalone: false,\r\n  templateUrl: './stk-payoff-linechart.component.html',\r\n  styleUrl: './stk-payoff-linechart.component.css'\r\n})\r\nexport class StkPayoffLinechartComponent implements OnInit {\r\n\r\n  @Input() chartData: any;\r\n  @Input() chartOptions: any;\r\n\r\n  referenceX: number = 0;\r\n\r\n  constructor() { }\r\n\r\n  ngOnInit(): void {\r\n    type Point = { x: number; y: number; tooltip: number };\r\n    const points: Point[] = this.chartData[0].series;\r\n    this.referenceX = this.chartData[0].referenceLineX;\r\n    const prices = points.map((point: Point) => point.x);\r\n    const payoffs = points.map((point: Point) => point.y);\r\n    const priceMovementPercentage = points.map((point: Point) => point.tooltip);\r\n    const minPrice = Math.min(...prices);\r\n    const maxPrice = Math.max(...prices);\r\n\r\n    this.chartData = {\r\n      labels: prices,\r\n      datasets: [\r\n        {\r\n          label: 'Payoff',\r\n          data: points.map(point => ({\r\n            x: point.x,\r\n            y: point.y,\r\n            tooltip: point.tooltip  // pass tooltip property here\r\n          })),\r\n          fill: {\r\n            target: { value: 0 },\r\n            above: 'rgba(144, 238, 144, 0.3)',\r\n            below: 'rgba(255, 99, 132, 0.2)'\r\n          },\r\n          borderColor: '#ec407a',\r\n          backgroundColor: 'transparent',\r\n          tension: 0,\r\n          pointRadius: 4,\r\n          pointHoverRadius: 6,\r\n          clip: false,\r\n        }\r\n      ]\r\n    };\r\n\r\n    this.chartOptions = {\r\n      responsive: true,\r\n      plugins: {\r\n        legend: {\r\n          display: false\r\n        },\r\n        tooltip: {\r\n          enabled: true,\r\n          backgroundColor: '#333',\r\n          titleColor: '#fff',\r\n          bodyColor: '#fff',\r\n          borderColor: '#888',\r\n          borderWidth: 1,\r\n          callbacks: {\r\n            label: function (context:any) {\r\n              const xValue = context.raw.x;\r\n              const payoff = context.raw.y;\r\n              return [\r\n                `UI Price.Move:${xValue.toLocaleString()}`,\r\n                `payoff:${payoff.toLocaleString()}`\r\n              ];\r\n            },\r\n            title: function (context:any) {\r\n              const dataPoint = context[0].dataset.data[context[0].dataIndex];\r\n              const priceMove = dataPoint.tooltip;\r\n              return `UI Price.Move %:${parseFloat(priceMove).toLocaleString()}%`;\r\n            }\r\n          },\r\n          displayColors: false\r\n        },\r\n        annotation: {\r\n          annotations: {\r\n            currentLine: {\r\n              type: 'line',\r\n              borderDash: [6, 6],\r\n              borderColor: 'blue',\r\n              borderWidth: 2,\r\n              scaleID: 'x',\r\n              value: this.referenceX\r\n            }\r\n          }\r\n        }\r\n      },\r\n      scales: {\r\n        x: {\r\n          type: 'linear',\r\n          min: minPrice,\r\n          max: maxPrice,\r\n          grace: 0,\r\n          offset: false,\r\n          title: {\r\n            display: true,\r\n            text: 'Underlying Price Movement ($)'\r\n          },\r\n          ticks: {\r\n            precision: 0,\r\n            callback: (val: { toString: () => any; }) => val.toString()\r\n          }\r\n        },\r\n        y: {\r\n          grace: 0,\r\n          offset: false,\r\n          title: {\r\n            display: true,\r\n            text: 'Payoff'\r\n          },\r\n          ticks: {\r\n            precision: 0,\r\n            callback: (val: { toString: () => any; }) => val.toString()\r\n          }\r\n        }\r\n      }\r\n    };\r\n  }\r\n}","<p-chart \r\n    type=\"line\" \r\n    [data]=\"chartData\" \r\n    [options]=\"chartOptions\"\r\n    width=\"100%\"\r\n    height=\"400px\">\r\n</p-chart>","// stk-avatar.component.ts\r\nimport { Component, Input, Output, EventEmitter, forwardRef } from '@angular/core';\r\nimport { NG_VALUE_ACCESSOR, ControlValueAccessor } from '@angular/forms';\r\n\r\n@Component({\r\n  selector: 'app-stk-avatar',\r\n  standalone: false,\r\n  templateUrl: './stk-avatar.component.html',\r\n  providers: [\r\n    {\r\n      provide: NG_VALUE_ACCESSOR,\r\n      useExisting: forwardRef(() => StkAvatarComponent),\r\n      multi: true\r\n    }\r\n  ],\r\n  styleUrl: './stk-avatar.component.css'\r\n})\r\nexport class StkAvatarComponent implements ControlValueAccessor {\r\n  @Input() elementId?: string;\r\n  @Input() label?: string;\r\n  @Input() icon?: string;\r\n  @Input() image?: string;\r\n  @Input() size: 'normal' | 'large' | 'xlarge' = 'normal';\r\n  @Input() shape: 'square' | 'circle' = 'square';\r\n  @Input() style?: { [klass: string]: any };\r\n  @Input() styleClass?: string;\r\n  @Input() ariaLabel?: string;\r\n  @Input() ariaLabelledBy?: string;\r\n\r\n  // Badge inputs\r\n  @Input() badgeValue?: string | number;\r\n  @Input() badgeSeverity?: 'success' | 'info' | 'warning' | 'danger';\r\n\r\n  @Output() onImageError = new EventEmitter<Event>();\r\n\r\n  value?: string;\r\n\r\n  onChange = (_: any) => {};\r\n  onTouched = () => {};\r\n\r\n  // Getter to determine which image to display\r\n  get displayImage(): string | undefined {\r\n    return this.value || this.image;\r\n  }\r\n\r\n  // Getter to check if badge should be shown\r\n  get shouldShowBadge(): boolean {\r\n    return this.badgeValue !== undefined && this.badgeValue !== null && this.badgeValue !== '';\r\n  }\r\n\r\n  writeValue(val: string | undefined): void {\r\n    this.value = val;\r\n  }\r\n\r\n  registerOnChange(fn: any): void { \r\n    this.onChange = fn; \r\n  }\r\n\r\n  registerOnTouched(fn: any): void { \r\n    this.onTouched = fn; \r\n  }\r\n\r\n  setDisabledState?(isDisabled: boolean): void {\r\n    // Handle disabled state if needed\r\n  }\r\n\r\n  handleImageError(event: Event) {\r\n    this.onImageError.emit(event);\r\n  }\r\n\r\n  handleClick() {\r\n    this.onTouched();\r\n  }\r\n}","<!-- stk-avatar.component.html -->\r\n<ng-container *ngIf=\"shouldShowBadge; else avatarOnly\">\r\n  <p-overlay-badge \r\n    [id]=\"elementId\"\r\n    [value]=\"badgeValue\"\r\n    [severity]=\"badgeSeverity\"\r\n    class=\"inline-flex\">\r\n    <p-avatar\r\n      [id]=\"elementId\"\r\n      [label]=\"label\"\r\n      [icon]=\"icon\"\r\n      [image]=\"displayImage\"\r\n      [size]=\"size\"\r\n      [shape]=\"shape\"\r\n      [style]=\"style\"\r\n      [styleClass]=\"styleClass\"\r\n      [ariaLabel]=\"ariaLabel\"\r\n      [ariaLabelledBy]=\"ariaLabelledBy\"\r\n      (onImageError)=\"handleImageError($event)\"\r\n      (click)=\"handleClick()\">\r\n    </p-avatar>\r\n  </p-overlay-badge>\r\n</ng-container>\r\n\r\n<ng-template #avatarOnly>\r\n  <p-avatar\r\n    [id]=\"elementId\"\r\n    [label]=\"label\"\r\n    [icon]=\"icon\"\r\n    [image]=\"displayImage\"\r\n    [size]=\"size\"\r\n    [shape]=\"shape\"\r\n    [style]=\"style\"\r\n    [styleClass]=\"styleClass\"\r\n    [ariaLabel]=\"ariaLabel\"\r\n    [ariaLabelledBy]=\"ariaLabelledBy\"\r\n    (onImageError)=\"handleImageError($event)\"\r\n    (click)=\"handleClick()\">\r\n  </p-avatar>\r\n</ng-template>","// stk-popup.component.ts\r\nimport { Component, Input, Output, EventEmitter, ContentChild, TemplateRef } from '@angular/core';\r\n\r\n@Component({\r\n  selector: 'app-stk-popup',\r\n  standalone: false,\r\n  templateUrl: './stk-popup.component.html',\r\n  styleUrl: './stk-popup.component.css'\r\n})\r\nexport class StkPopupComponent {\r\n  @Input() elementId?: string;\r\n  @Input() visible = false;\r\n  @Output() visibleChange = new EventEmitter<boolean>();\r\n  @Input() modal = true;\r\n  @Input() style: any = { width: '25rem' };\r\n  @Input() closable = false;\r\n  @Input() draggable = false;\r\n  @Input() position: 'center' | 'top' | 'bottom' | 'left' | 'right' | 'top-left' | 'top-right' | 'bottom-left' | 'bottom-right' = 'center';\r\n  \r\n \r\n  \r\n  // Data binding properties\r\n  @Input() formData: any = {};\r\n  @Output() formDataChange = new EventEmitter<any>();\r\n\r\n  @ContentChild('header', { static: false }) headerTemplate!: TemplateRef<any>;\r\n  @ContentChild('content', { static: false }) contentTemplate!: TemplateRef<any>;\r\n  @ContentChild('footer', { static: false }) footerTemplate!: TemplateRef<any>;\r\n\r\n  \r\n}","<!-- stk-popup.component.html -->\r\n<p-dialog \r\n    [id]=\"elementId\"\r\n    [(visible)]=\"visible\" \r\n    [modal]=\"modal\" \r\n    [style]=\"style\" \r\n    [closable]=\"closable\" \r\n    [draggable]=\"draggable\"\r\n    [position]=\"position\" \r\n    \r\n    >\r\n\r\n    <ng-template pTemplate=\"header\">\r\n        <ng-container *ngTemplateOutlet=\"headerTemplate\"></ng-container>\r\n    </ng-template>\r\n\r\n    <ng-container *ngTemplateOutlet=\"contentTemplate\"> </ng-container>\r\n\r\n    <ng-template pTemplate=\"footer\">\r\n        <ng-container *ngTemplateOutlet=\"footerTemplate\"></ng-container>\r\n    </ng-template>\r\n\r\n</p-dialog>","import { Component, Input, forwardRef } from '@angular/core';\r\nimport { NG_VALUE_ACCESSOR, ControlValueAccessor } from '@angular/forms';\r\n\r\n@Component({\r\n  selector: 'app-stk-cardwidget',\r\n  standalone: false,\r\n  templateUrl: './stk-cardwidget.component.html',\r\n  styleUrl: './stk-cardwidget.component.css',\r\n  providers: [\r\n    {\r\n      provide: NG_VALUE_ACCESSOR,\r\n      useExisting: forwardRef(() => StkCardWidgetComponent),\r\n      multi: true\r\n    }\r\n  ]\r\n})\r\nexport class StkCardWidgetComponent implements ControlValueAccessor{\r\n\r\n@Input() header: string | null = null;\r\n  @Input() subheader: string | null = null;\r\n  @Input() style: any = null;\r\n  @Input() styleClass: string | null = null;\r\n  @Input() headerStyle: any;\r\n  @Input() headerClass: string;\r\n\r\n\r\n   // New inputs for the card content\r\n  @Input() primaryValue: string | number | null = null;\r\n  @Input() primaryLabel: string | null = null;\r\n  @Input() secondaryValue: string | number | null = null;\r\n  @Input() secondaryLabel: string | null = null;\r\n  @Input() horizontalLayout: boolean = false;\r\n\r\n  // Style inputs for dynamic styling\r\n  @Input() contentStyle: any = {};\r\n  @Input() primaryValueStyle: any = {};\r\n  @Input() primaryLabelStyle: any = {};\r\n  @Input() secondaryValueStyle: any = {};\r\n  @Input() secondaryLabelStyle: any = {};\r\n  @Input() primarySectionStyle: any = {};\r\n  @Input() secondarySectionStyle: any = {};\r\n\r\n  @Input() valueRows: Array<{\r\n  primaryValue: string | number | null;\r\n  primaryLabel?: string;\r\n  secondaryValue: string | number | null;\r\n  secondaryLabel?: string;\r\n  }> = [];\r\n\r\n\r\n  // Value for ngModel/FormControl\r\n  value: any;\r\n\r\n  onChange = (_: any) => {};\r\n  onTouched = () => {};\r\n\r\n  writeValue(obj: any): void {\r\n    this.value = obj;\r\n  }\r\n\r\n  registerOnChange(fn: any): void {\r\n    this.onChange = fn;\r\n  }\r\n\r\n  registerOnTouched(fn: any): void {\r\n    this.onTouched = fn;\r\n  }\r\n\r\n  setDisabledState?(isDisabled: boolean): void {}\r\n\r\n  handleChange(newValue: any) {\r\n    this.value = newValue;\r\n    this.onChange(this.value);\r\n    this.onTouched();\r\n  }\r\n\r\n  // Helper methods for formatting\r\n  formatCurrency(value: string | number | null): string {\r\n    if (value === null || value === undefined) return '';\r\n    const numValue = typeof value === 'string' ? parseFloat(value) : value;\r\n    return '$' + numValue.toLocaleString('en-US');\r\n  }\r\n\r\n  getCardHeight(): string {\r\n  const rowCount = this.valueRows.length || (this.primaryValue && this.secondaryValue ? 1 : 0);\r\n  switch (rowCount) {\r\n    case 1:\r\n      return 'min-h-[150px]'; // adjust as needed\r\n    case 2:\r\n      return 'min-h-[195px]';\r\n    case 3:\r\n      return 'min-h-[250px]';\r\n    default:\r\n      return 'min-h-[150px]';\r\n  }\r\n}\r\n\r\n}","<p-card [ngStyle]=\"style\" [styleClass]=\"styleClass\" [style]=\"{ width: '25rem', overflow: 'hidden' }\">\r\n  \r\n  <!-- Header -->\r\n  <ng-template pTemplate=\"header\" *ngIf=\"header\">\r\n    <div [ngStyle]=\"headerStyle\" [ngClass]=\"headerClass\">\r\n      {{ header }}\r\n    </div>\r\n  </ng-template>\r\n\r\n  <!-- Card Content -->\r\n  <div [ngStyle]=\"contentStyle\">\r\n\r\n    <!--  Multi-row horizontal layout -->\r\n    <div *ngIf=\"valueRows.length > 0\">\r\n      <div *ngFor=\"let row of valueRows\" class=\"flex justify-between items-center mb-3\">\r\n\r\n\r\n        <!-- Left Side -->\r\n        <div [ngStyle]=\"primarySectionStyle\">\r\n          <div [ngStyle]=\"primaryValueStyle\">\r\n            {{ formatCurrency(row.primaryValue) }}\r\n          </div>\r\n          <div *ngIf=\"row.primaryLabel\" [ngStyle]=\"primaryLabelStyle\">\r\n            {{ row.primaryLabel }}\r\n          </div>\r\n        </div>\r\n\r\n        <!-- Right Side -->\r\n        <div [ngStyle]=\"secondarySectionStyle\" style=\"text-align: right;\">\r\n          <div [ngStyle]=\"secondaryValueStyle\">\r\n            {{ formatCurrency(row.secondaryValue) }}\r\n          </div>\r\n          <div *ngIf=\"row.secondaryLabel\" [ngStyle]=\"secondaryLabelStyle\">\r\n            {{ row.secondaryLabel }}\r\n          </div>\r\n        </div>\r\n      </div>\r\n    </div>\r\n\r\n    <!--  Horizontal layout for single row -->\r\n    <div *ngIf=\"horizontalLayout && primaryValue !== null && secondaryValue !== null\"\r\n     class=\"flex justify-between items-center mb-3\">\r\n\r\n\r\n      <!-- Primary Section -->\r\n      <div [ngStyle]=\"primarySectionStyle\">\r\n        <div [ngStyle]=\"primaryValueStyle\">\r\n          {{ formatCurrency(primaryValue) }}\r\n        </div>\r\n        <div *ngIf=\"primaryLabel\" [ngStyle]=\"primaryLabelStyle\">\r\n          {{ primaryLabel }}\r\n        </div>\r\n      </div>\r\n\r\n      <!-- Secondary Section -->\r\n      <div [ngStyle]=\"secondarySectionStyle\" style=\"text-align: right;\">\r\n        <div [ngStyle]=\"secondaryValueStyle\">\r\n          {{ formatCurrency(secondaryValue) }}\r\n        </div>\r\n        <div *ngIf=\"secondaryLabel\" [ngStyle]=\"secondaryLabelStyle\">\r\n          {{ secondaryLabel }}\r\n        </div>\r\n      </div>\r\n    </div>\r\n\r\n    <!-- Default vertical layout -->\r\n    <div *ngIf=\"!horizontalLayout\">\r\n      <!-- Primary Value Section -->\r\n      <div *ngIf=\"primaryValue !== null\" [ngStyle]=\"primarySectionStyle\">\r\n        <div [ngStyle]=\"primaryValueStyle\">\r\n          {{ formatCurrency(primaryValue) }}\r\n        </div>\r\n        <div *ngIf=\"primaryLabel\" [ngStyle]=\"primaryLabelStyle\">\r\n          {{ primaryLabel }}\r\n        </div>\r\n      </div>\r\n\r\n      <!-- Secondary Value Section -->\r\n      <div *ngIf=\"secondaryValue !== null\" [ngStyle]=\"secondarySectionStyle\">\r\n        <div [ngStyle]=\"secondaryValueStyle\">\r\n          {{ formatCurrency(secondaryValue) }}\r\n        </div>\r\n        <div *ngIf=\"secondaryLabel\" [ngStyle]=\"secondaryLabelStyle\">\r\n          {{ secondaryLabel }}\r\n        </div>\r\n      </div>\r\n    </div>\r\n\r\n    <!--  Fallback slot -->\r\n    <ng-content *ngIf=\"primaryValue === null && secondaryValue === null && valueRows.length === 0\"></ng-content>\r\n  </div>\r\n</p-card>\r\n","import { Component, Input, forwardRef, TemplateRef, ContentChild } from '@angular/core';\r\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\r\n\r\n@Component({\r\n  selector: 'app-stk-tag',\r\n  standalone: false,\r\n  templateUrl: './stk-tag.component.html',\r\n   providers: [{\r\n    provide: NG_VALUE_ACCESSOR,\r\n    useExisting: forwardRef(() => StkTagComponent),\r\n    multi: true\r\n  }],\r\n  styleUrl: './stk-tag.component.css'\r\n})\r\nexport class StkTagComponent implements ControlValueAccessor{\r\n @Input() style: any = null;\r\n  @Input() styleClass: string | null = null;\r\n  @Input() severity: string | null = null;\r\n  @Input() icon: string | null = null;\r\n  @Input() rounded: boolean = false;\r\n  \r\n  // For supporting template for icon (ng-template #icon)\r\n  @ContentChild('icon') iconTemplate!: TemplateRef<any>;\r\n\r\n  private _value: string | null = null;\r\n\r\n  @Input()\r\n  get value() {\r\n    return this._value;\r\n  }\r\n  set value(val: string | null) {\r\n    this._value = val;\r\n    this.onChange(val);\r\n  }\r\n\r\n  onChange: any = () => {};\r\n  onTouched: any = () => {};\r\n\r\n  writeValue(val: string | null): void {\r\n    this._value = val;\r\n  }\r\n  registerOnChange(fn: any): void {\r\n    this.onChange = fn;\r\n  }\r\n  registerOnTouched(fn: any): void {\r\n    this.onTouched = fn;\r\n  }\r\n  setDisabledState?(isDisabled: boolean): void {}\r\n}\r\n\r\n","<p-tag\r\n  [style]=\"style\"\r\n  [styleClass]=\"styleClass\"\r\n  [severity]=\"severity\"\r\n  [value]=\"value\"\r\n  [icon]=\"icon\"\r\n  [rounded]=\"rounded\"\r\n>\r\n  <ng-container *ngTemplateOutlet=\"iconTemplate\"></ng-container>\r\n</p-tag>\r\n","import { Component, Input, forwardRef } from '@angular/core';\r\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\r\n\r\n@Component({\r\n  selector: 'app-stk-radiobutton',\r\n  templateUrl: './stk-radiobutton.component.html',\r\n  styleUrls: ['./stk-radiobutton.component.css'],\r\n  standalone:false,\r\n  providers: [\r\n    {\r\n      provide: NG_VALUE_ACCESSOR,\r\n      useExisting: forwardRef(() => StkRadioButtonComponent),\r\n      multi: true\r\n    }\r\n  ]\r\n})\r\nexport class StkRadioButtonComponent implements ControlValueAccessor {\r\n  @Input() elementId?: string;\r\n  @Input() options: { label: string; value: any }[] = [];\r\n  @Input() name: string = '';\r\n\r\n  value: any;\r\n  disabled: boolean = false;\r\n\r\n  onChange = (value: any) => {};\r\n  onTouched = () => {};\r\n\r\n  writeValue(value: any): void {\r\n    this.value = value;\r\n  }\r\n\r\n  registerOnChange(fn: any): void {\r\n    this.onChange = fn;\r\n  }\r\n\r\n  registerOnTouched(fn: any): void {\r\n    this.onTouched = fn;\r\n  }\r\n\r\n  setDisabledState(isDisabled: boolean): void {\r\n    this.disabled = isDisabled;\r\n  }\r\n\r\n  select(value: any): void {\r\n    if (!this.disabled) {\r\n      this.value = value;\r\n      this.onChange(value);\r\n      this.onTouched();\r\n    }\r\n  }\r\n}","<div *ngFor=\"let option of options\" class=\"p-field-radiobutton flex items-center gap-2  text-black\">\r\n    <p-radioButton\r\n      [id]=\"elementId\"\r\n      [inputId]=\"option.value\"\r\n      [name]=\"name\"\r\n      [value]=\"option.value\"\r\n      [(ngModel)]=\"value\"\r\n      (onClick)=\"select(option.value)\"\r\n      [disabled]=\"disabled\"\r\n    ></p-radioButton>\r\n    <label [for]=\"option.value\">{{ option.label }}</label>\r\n  </div>","import { isPlatformBrowser } from '@angular/common';\r\nimport {\r\n  ChangeDetectorRef,\r\n  Component,\r\n  Inject,\r\n  Input,\r\n  OnInit,\r\n  PLATFORM_ID\r\n} from '@angular/core';\r\n\r\n\r\n@Component({\r\n  selector: 'app-stk-widgetcard',\r\n  standalone: false,\r\n  templateUrl: './stk-widgetcard.component.html',\r\n  styleUrl: './stk-widgetcard.component.css'\r\n})\r\nexport class StkWidgetcardComponent implements OnInit {\r\n  \r\n    @Input() chartType: 'bar' | 'line' | 'pie' | 'doughnut' | 'polarArea' | 'radar' = 'bar';\r\n  @Input() labels: string[] = ['Q1', 'Q2', 'Q3', 'Q4'];\r\n  @Input() dataset: any[] = [\r\n    {\r\n      label: 'Sales',\r\n      data: [540, 325, 702, 620],\r\n      backgroundColor: [\r\n        'rgba(249, 115, 22, 0.2)',\r\n        'rgba(6, 182, 212, 0.2)',\r\n        'rgb(107, 114, 128, 0.2)',\r\n        'rgba(139, 92, 246, 0.2)'\r\n      ],\r\n      borderColor: [\r\n        'rgb(249, 115, 22)',\r\n        'rgb(6, 182, 212)',\r\n        'rgb(107, 114, 128)',\r\n        'rgb(139, 92, 246)'\r\n      ],\r\n      borderWidth: 1\r\n    }\r\n  ];\r\n  @Input() customOptions: any;\r\n\r\n  basicData: any;\r\n  basicOptions: any;\r\n\r\n  constructor(\r\n    @Inject(PLATFORM_ID) private platformId: Object,\r\n    private cd: ChangeDetectorRef\r\n  ) {}\r\n\r\n  ngOnInit() {\r\n    this.initChart();\r\n  }\r\n\r\n  initChart() {\r\n    if (isPlatformBrowser(this.platformId)) {\r\n      const documentStyle = getComputedStyle(document.documentElement);\r\n      const textColor = documentStyle.getPropertyValue('--p-text-color');\r\n      const textColorSecondary = documentStyle.getPropertyValue('--p-text-muted-color');\r\n      const surfaceBorder = documentStyle.getPropertyValue('--p-content-border-color');\r\n\r\n      this.basicData = {\r\n        labels: this.labels,\r\n        datasets: this.dataset\r\n      };\r\n\r\n      const defaultOptions = {\r\n        plugins: {\r\n          legend: {\r\n            labels: {\r\n              color: textColor\r\n            }\r\n          }\r\n        },\r\n        scales: {\r\n          x: {\r\n            ticks: {\r\n              color: textColorSecondary\r\n            },\r\n            grid: {\r\n              color: surfaceBorder\r\n            }\r\n          },\r\n          y: {\r\n            beginAtZero: true,\r\n            ticks: {\r\n              color: textColorSecondary\r\n            },\r\n            grid: {\r\n              color: surfaceBorder\r\n            }\r\n          }\r\n        }\r\n      };\r\n\r\n      this.basicOptions = this.customOptions || defaultOptions;\r\n      this.cd.markForCheck();\r\n    }\r\n  }\r\n}\r\n","<p-card>\r\n    <div class=\"card\">\r\n  <p-chart [type]=\"chartType\" [data]=\"basicData\" [options]=\"basicOptions\"></p-chart>\r\n</div>\r\n</p-card>\r\n\r\n\r\n","import { Injectable } from '@angular/core';\r\nimport { Observable, of } from 'rxjs';\r\nimport { TreeNode } from 'primeng/api';\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class TreeSelectService {\r\n  constructor() {}\r\n\r\n  getMenuTree(): Observable<TreeNode[]> {\r\n    // Simulated async data; replace with HTTP call if needed\r\n    const menuTree: TreeNode[] = [\r\n      {\r\n        label: 'File',\r\n        data: 'File',\r\n        children: [\r\n          { label: 'New', data: 'New' },\r\n          { label: 'Open', data: 'Open' },\r\n          { label: 'Quit', data: 'Quit' }\r\n        ]\r\n      },\r\n      {\r\n        label: 'Edit',\r\n        data: 'Edit',\r\n        children: [\r\n          { label: 'Undo', data: 'Undo' },\r\n          { label: 'Redo', data: 'Redo' }\r\n        ]\r\n      },\r\n      {\r\n        label: 'Help',\r\n        data: 'Help',\r\n        children: [\r\n          { label: 'Documentation', data: 'Docs' },\r\n          { label: 'About', data: 'About' }\r\n        ]\r\n      }\r\n    ];\r\n\r\n    return of(menuTree);\r\n  }\r\n}\r\n","import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\r\nimport { TreeSelectService } from './stk-treeselect.service';\r\nimport { TreeNode } from 'primeng/api';\r\n\r\n@Component({\r\n  selector: 'app-stk-treeselect',\r\n  standalone: false,\r\n  templateUrl: './stk-treeselect.component.html',\r\n  styleUrl: './stk-treeselect.component.css'\r\n})\r\nexport class StkTreeselectComponent implements OnInit {\r\n  @Input() placeholder: string = 'Select';\r\n  @Input() filter: boolean = true;\r\n  @Input() selectionMode: 'single' | 'multiple' | 'checkbox' = 'single';\r\n  @Input() disabled: boolean = false; \r\n  @Input() panelStyleClass: string = '';\r\n  @Input() filterInputAutoFocus: boolean = true;\r\n\r\n  @Input() selectedNode: any;\r\n  @Output() selectedNodeChange = new EventEmitter<any>();\r\n\r\n  nodes: TreeNode[] = [];\r\n\r\n  constructor(private treeSelectService: TreeSelectService) {}\r\n\r\n  ngOnInit(): void {\r\n    this.treeSelectService.getMenuTree().subscribe(data => {\r\n      this.nodes = data;\r\n    });\r\n  }\r\n\r\n  handleNodeSelect(): void {\r\n    this.selectedNodeChange.emit(this.selectedNode);\r\n  }\r\n\r\n  handleNodeUnselect(): void {\r\n    this.selectedNodeChange.emit(this.selectedNode);\r\n  }\r\n}\r\n","<p-treeSelect\r\n  [options]=\"nodes\"\r\n  [(ngModel)]=\"selectedNode\"\r\n  [placeholder]=\"placeholder\"\r\n  [filter]=\"filter\"\r\n  [selectionMode]=\"selectionMode\"\r\n  [disabled]=\"disabled\"\r\n  [filterInputAutoFocus]=\"false\"\r\n\r\n  [panelStyleClass]=\"panelStyleClass\"\r\n  (onNodeSelect)=\"handleNodeSelect()\"\r\n  (onNodeUnselect)=\"handleNodeUnselect()\">\r\n \r\n</p-treeSelect>\r\n","import { Component, Input, Output, EventEmitter, forwardRef } from '@angular/core';\r\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\r\n\r\n\r\n// Interface for textarea configuration\r\nexport interface TextareaConfig {\r\n  autoResize?: boolean;\r\n  variant?: 'outlined' | 'filled' | null;\r\n  fluid?: boolean;\r\n  pSize?: 'small' | 'large' | null;\r\n  placeholder?: string;\r\n  disabled?: boolean;\r\n  readonly?: boolean;\r\n  rows?: number;\r\n  cols?: number;\r\n  maxlength?: number;\r\n  styleClass?: string;\r\n  style?: any;\r\n  id?: string;\r\n  name?: string;\r\n  tabindex?: number;\r\n  title?: string;\r\n  ariaLabel?: string;\r\n  ariaLabelledBy?: string;\r\n  required?: boolean;\r\n}\r\n@Component({\r\n  selector: 'app-stk-textarea',\r\n  standalone: false,\r\n  templateUrl: './stk-textarea.component.html',\r\n  styleUrl: './stk-textarea.component.css',\r\n    providers: [\r\n    {\r\n      provide: NG_VALUE_ACCESSOR,\r\n      useExisting: forwardRef(() => StkTextareaComponent),\r\n      multi: true\r\n    }\r\n    ]\r\n})\r\nexport class StkTextareaComponent implements ControlValueAccessor {\r\n\r\n    @Input() elementId?: string;\r\n   // ===========================================\r\n  // PRIMENG TEXTAREA SPECIFIC PROPERTIES\r\n  // ===========================================\r\n  \r\n  /**\r\n   * When present, textarea size changes as being typed.\r\n   * @default false\r\n   */\r\n  @Input() autoResize: boolean = false;\r\n\r\n  /**\r\n   * Specifies the input variant of the component.\r\n   * @default null\r\n   */\r\n  @Input() variant: 'outlined' | 'filled' | null = null;\r\n\r\n  /**\r\n   * Spans 100% width of the container when enabled.\r\n   * @default false\r\n   */\r\n  @Input() fluid: boolean = false;\r\n\r\n  /**\r\n   * Defines the size of the component.\r\n   * @default null\r\n   */\r\n  @Input() pSize: 'small' | 'large' | null = null;\r\n\r\n  // ===========================================\r\n  // STANDARD HTML TEXTAREA PROPERTIES\r\n  // ===========================================\r\n\r\n  /**\r\n   * Placeholder text for the textarea.\r\n   * @default ''\r\n   */\r\n  @Input() placeholder: string = '';\r\n\r\n  /**\r\n   * When present, it specifies that the element should be disabled.\r\n   * @default false\r\n   */\r\n  @Input() disabled: boolean = false;\r\n\r\n  /**\r\n   * When present, it specifies that the element should be read-only.\r\n   * @default false\r\n   */\r\n  @Input() readonly: boolean = false;\r\n\r\n  /**\r\n   * Number of rows in the textarea.\r\n   */\r\n  @Input() rows: number | undefined;\r\n\r\n  /**\r\n   * Number of columns in the textarea.\r\n   */\r\n  @Input() cols: number | undefined;\r\n\r\n  /**\r\n   * Maximum number of character allows in the textarea field.\r\n   */\r\n  @Input() maxlength: number | undefined;\r\n\r\n  /**\r\n   * Style class of the element.\r\n   * @default ''\r\n   */\r\n  @Input() styleClass: string = '';\r\n\r\n  /**\r\n   * Inline style of the element.\r\n   */\r\n  @Input() style: any = null;\r\n\r\n  /**\r\n   * Identifier of the focus input to match a label defined for the component.\r\n   * @default ''\r\n   */\r\n  @Input() id: string = '';\r\n\r\n  /**\r\n   * Name of the input field.\r\n   * @default ''\r\n   */\r\n  @Input() name: string = '';\r\n\r\n  /**\r\n   * Index of the element in tabbing order.\r\n   */\r\n  @Input() tabindex: number | undefined;\r\n\r\n  /**\r\n   * Advisory information to display in a tooltip on hover.\r\n   * @default ''\r\n   */\r\n  @Input() title: string = '';\r\n\r\n  /**\r\n   * Used to define a string that labels the input element.\r\n   * @default ''\r\n   */\r\n  @Input() ariaLabel: string = '';\r\n\r\n  /**\r\n   * Establishes relationships between the component and label(s) \r\n   * where its value should be one or more element IDs.\r\n   * @default ''\r\n   */\r\n  @Input() ariaLabelledBy: string = '';\r\n\r\n  /**\r\n   * When present, it specifies that the element value cannot be altered.\r\n   * @default false\r\n   */\r\n  @Input() required: boolean = false;\r\n\r\n  // ===========================================\r\n  // EVENT EMITTERS\r\n  // ===========================================\r\n\r\n  /**\r\n   * Callback to invoke on textarea resize.\r\n   */\r\n  @Output() onResize = new EventEmitter<Event>();\r\n\r\n  /**\r\n   * Callback to invoke when the value changes.\r\n   */\r\n  @Output() inputChange = new EventEmitter<any>();\r\n\r\n  /**\r\n   * Callback to invoke when the element loses focus.\r\n   */\r\n  @Output() blurEvent = new EventEmitter<any>();\r\n\r\n  /**\r\n   * Callback to invoke when the element receives focus.\r\n   */\r\n  @Output() focusEvent = new EventEmitter<any>();\r\n\r\n  /**\r\n   * Callback to invoke when a key is pressed down.\r\n   */\r\n  @Output() keydown = new EventEmitter<any>();\r\n\r\n  /**\r\n   * Callback to invoke when a key is released.\r\n   */\r\n  @Output() keyup = new EventEmitter<any>();\r\n\r\n  // ===========================================\r\n  // INTERNAL PROPERTIES\r\n  // ===========================================\r\n\r\n  /**\r\n   * Internal value of the textarea\r\n   */\r\n  value: string = '';\r\n\r\n  // ===========================================\r\n  // CONTROL VALUE ACCESSOR IMPLEMENTATION\r\n  // ===========================================\r\n\r\n  private onChange = (value: any) => {};\r\n  private onTouched = () => {};\r\n\r\n  /**\r\n   * Method that is called by the forms API to write to the view when \r\n   * programmatic changes from model to view are requested.\r\n   */\r\n  writeValue(value: any): void {\r\n    this.value = value || '';\r\n  }\r\n\r\n  /**\r\n   * Method that is called by the forms API when the control value changes\r\n   * in the UI and needs to be propagated to the model.\r\n   */\r\n  registerOnChange(fn: any): void {\r\n    this.onChange = fn;\r\n  }\r\n\r\n  /**\r\n   * Method that is called by the forms API when the control is touched.\r\n   */\r\n  registerOnTouched(fn: any): void {\r\n    this.onTouched = fn;\r\n  }\r\n\r\n  /**\r\n   * Method that is called by the forms API when the control status changes to\r\n   * or from 'DISABLED'. Depending on the status, it enables or disables the\r\n   * appropriate DOM element.\r\n   */\r\n  setDisabledState(isDisabled: boolean): void {\r\n    this.disabled = isDisabled;\r\n  }\r\n\r\n  // ===========================================\r\n  // EVENT HANDLERS\r\n  // ===========================================\r\n\r\n  /**\r\n   * Handles input events from the textarea\r\n   */\r\n  onInput(event: any): void {\r\n    const value = event.target.value;\r\n    this.value = value;\r\n    this.onChange(value);\r\n    this.inputChange.emit(event);\r\n  }\r\n\r\n  /**\r\n   * Handles blur events from the textarea\r\n   */\r\n  onBlur(event: any): void {\r\n    this.onTouched();\r\n    this.blurEvent.emit(event);\r\n  }\r\n\r\n  /**\r\n   * Handles focus events from the textarea\r\n   */\r\n  onFocus(event: any): void {\r\n    this.focusEvent.emit(event);\r\n  }\r\n\r\n  /**\r\n   * Handles keydown events from the textarea\r\n   */\r\n  onKeyDown(event: any): void {\r\n    this.keydown.emit(event);\r\n  }\r\n\r\n  /**\r\n   * Handles keyup events from the textarea\r\n   */\r\n  onKeyUp(event: any): void {\r\n    this.keyup.emit(event);\r\n  }\r\n\r\n  /**\r\n   * Handles resize events from the textarea (PrimeNG specific)\r\n   */\r\n  onTextareaResize(event: Event): void {\r\n    this.onResize.emit(event);\r\n  }\r\n\r\n  // ===========================================\r\n  // UTILITY METHODS\r\n  // ===========================================\r\n\r\n  /**\r\n   * Programmatically focus the textarea\r\n   */\r\n  focusTextarea(): void {\r\n    // Implementation can be added if needed\r\n  }\r\n\r\n  /**\r\n   * Programmatically blur the textarea\r\n   */\r\n  blurTextarea(): void {\r\n    // Implementation can be added if needed\r\n  }\r\n\r\n  /**\r\n   * Get current value of the textarea\r\n   */\r\n  getValue(): string {\r\n    return this.value;\r\n  }\r\n\r\n  /**\r\n   * Set value of the textarea programmatically\r\n   */\r\n  setValue(value: string): void {\r\n    this.value = value;\r\n    this.onChange(value);\r\n  }\r\n\r\n  /**\r\n   * Clear the textarea value\r\n   */\r\n  clear(): void {\r\n    this.setValue('');\r\n  }\r\n\r\n  /**\r\n   * Check if textarea is empty\r\n   */\r\n  isEmpty(): boolean {\r\n    return !this.value || this.value.trim().length === 0;\r\n  }\r\n}","<textarea\r\n  [id]=\"elementId\"\r\n  pTextarea\r\n  [autoResize]=\"autoResize\"\r\n  [variant]=\"variant\"\r\n  [fluid]=\"fluid\"\r\n  [pSize]=\"pSize\"\r\n  [value]=\"value\"\r\n  [placeholder]=\"placeholder\"\r\n  [disabled]=\"disabled\"\r\n  [readonly]=\"readonly\"\r\n  [rows]=\"rows\"\r\n  [cols]=\"cols\"\r\n  [attr.maxlength]=\"maxlength\"\r\n  [class]=\"styleClass\"\r\n  [style]=\"style\"\r\n  [id]=\"id\"\r\n  [name]=\"name\"\r\n  [tabindex]=\"tabindex\"\r\n  [title]=\"title\"\r\n  [attr.aria-label]=\"ariaLabel\"\r\n  [attr.aria-labelledby]=\"ariaLabelledBy\"\r\n  [required]=\"required\"\r\n  (input)=\"onInput($event)\"\r\n  (blur)=\"onBlur($event)\"\r\n  (focus)=\"onFocus($event)\"\r\n  (keydown)=\"onKeyDown($event)\"\r\n  (keyup)=\"onKeyUp($event)\"\r\n  (onResize)=\"onTextareaResize($event)\"\r\n></textarea>","import { Component, Input, forwardRef } from '@angular/core';\r\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\r\n\r\n@Component({\r\n  selector: 'app-stk-toggleswitch',\r\n  standalone: false,\r\n  templateUrl: './stk-toggleswitch.component.html',\r\n  providers: [\r\n    {\r\n      provide: NG_VALUE_ACCESSOR,\r\n      useExisting: forwardRef(() => StkToggleswitchComponent),\r\n      multi: true,\r\n    },\r\n  ],\r\n  styleUrl: './stk-toggleswitch.component.css'\r\n})\r\nexport class StkToggleswitchComponent implements ControlValueAccessor {\r\n  @Input() elementId?: string;\r\n  @Input() disabled = false;\r\n  @Input() onText = 'YES';\r\n  @Input() offText = 'NO';\r\n  @Input() trueValue: any = true;\r\n  @Input() falseValue: any = false;\r\n\r\n  value: any = this.falseValue;\r\n\r\n  private onChange = (_: any) => {};\r\n  private onTouched = () => {};\r\n\r\n  writeValue(val: any): void {\r\n    this.value = val ?? this.falseValue;\r\n  }\r\n\r\n  registerOnChange(fn: any): void {\r\n    this.onChange = fn;\r\n  }\r\n\r\n  registerOnTouched(fn: any): void {\r\n    this.onTouched = fn;\r\n  }\r\n\r\n  setDisabledState(isDisabled: boolean): void {\r\n    this.disabled = isDisabled;\r\n  }\r\n\r\n  onToggleChange(event: boolean) {\r\n    this.value = event ? this.trueValue : this.falseValue;\r\n    this.onChange(this.value);\r\n    this.onTouched();\r\n  }\r\n\r\n  get isChecked(): boolean {\r\n    return this.value === this.trueValue;\r\n  }\r\n\r\n  getContainerStyles(): any {\r\n    return {\r\n      position: 'relative',\r\n      display: 'inline-block',\r\n      width: '80px',\r\n      height: '32px'\r\n    };\r\n  }\r\n}","<div [ngStyle]=\"getContainerStyles()\">\r\n  <!-- Hidden PrimeNG Toggle Switch for functionality -->\r\n  <p-toggleSwitch\r\n    [id]=\"elementId\"\r\n    [ngModel]=\"isChecked\"\r\n    (ngModelChange)=\"onToggleChange($event)\"\r\n    [disabled]=\"disabled\"\r\n    [ngStyle]=\"{ position: 'absolute', opacity: 0, pointerEvents: 'none' }\">\r\n  </p-toggleSwitch>\r\n  \r\n  <!-- Custom visual toggle that mimics PrimeNG behavior -->\r\n  <div [ngStyle]=\"{\r\n    width: '80px',\r\n    height: '32px',\r\n    backgroundColor: isChecked ? '#4caf50' : '#f44336',\r\n    borderRadius: '16px',\r\n    position: 'relative',\r\n    cursor: disabled ? 'not-allowed' : 'pointer',\r\n    opacity: disabled ? 0.6 : 1,\r\n    transition: 'background-color 0.3s ease'\r\n  }\" (click)=\"!disabled && onToggleChange(!isChecked)\">\r\n    \r\n    <!-- Handle/Slider -->\r\n    <div [ngStyle]=\"{\r\n      position: 'absolute',\r\n      top: '2px',\r\n      left: isChecked ? '50px' : '2px',\r\n      width: '28px',\r\n      height: '28px',\r\n      backgroundColor: 'white',\r\n      borderRadius: '50%',\r\n      transition: 'left 0.3s ease',\r\n      boxShadow: '0 2px 4px rgba(0, 0, 0, 0.2)',\r\n      zIndex: 10\r\n    }\"></div>\r\n    \r\n    <!-- Text Labels -->\r\n    <div [ngStyle]=\"{\r\n      position: 'absolute',\r\n      top: '0',\r\n      left: '0',\r\n      right: '0',\r\n      bottom: '0',\r\n      display: 'flex',\r\n      alignItems: 'center',\r\n      pointerEvents: 'none',\r\n      zIndex: 5\r\n    }\">\r\n      <!-- YES/ON Text -->\r\n      <span [ngStyle]=\"{\r\n        position: 'absolute',\r\n        left: '8px',\r\n        fontSize: '0.75rem',\r\n        fontWeight: 'bold',\r\n        color: 'white',\r\n        opacity: isChecked ? 1 : 0,\r\n        transition: 'opacity 0.3s ease'\r\n      }\">{{ onText }}</span>\r\n      \r\n      <!-- NO/OFF Text -->\r\n      <span [ngStyle]=\"{\r\n        position: 'absolute',\r\n        right: '8px',\r\n        fontSize: '0.75rem',\r\n        fontWeight: 'bold',\r\n        color: 'white',\r\n        opacity: isChecked ? 0 : 1,\r\n        transition: 'opacity 0.3s ease'\r\n      }\">{{ offText }}</span>\r\n    </div>\r\n  </div>\r\n</div>","// stk-togglebutton.component.ts\r\nimport { Component, Input, Output, EventEmitter, forwardRef } from '@angular/core';\r\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\r\n\r\n@Component({\r\n  selector: 'app-stk-togglebutton',\r\n  standalone: false,\r\n  templateUrl: './stk-togglebutton.component.html',\r\n  providers: [\r\n    {\r\n      provide: NG_VALUE_ACCESSOR,\r\n      useExisting: forwardRef(() => StkTogglebuttonComponent),\r\n      multi: true,\r\n    },\r\n  ],\r\n})\r\nexport class StkTogglebuttonComponent implements ControlValueAccessor {\r\n  @Input() onLabel: string = 'On';\r\n  @Input() offLabel: string = 'Off';\r\n  @Input() onIcon: string = '';\r\n  @Input() offIcon: string = '';\r\n  @Input() iconPos: 'left' | 'right' = 'left';\r\n  @Input() styleClass: string | null = null;\r\n  @Input() style: any = null;\r\n  @Input() disabled: boolean = false;\r\n  @Input() tabindex: number | null = null;\r\n  @Input() ariaLabel: string | null = null;\r\n  @Input() ariaLabelledBy: string | null = null;\r\n  @Input() id: string | null = null;\r\n  @Input() severity: 'success' | 'info' | 'warn' | 'danger' | 'help' | 'primary' | null = 'primary';\r\n\r\n\r\n\r\n\r\n  @Output() onChange = new EventEmitter<any>();\r\n\r\n  private readonly severityColorMap: { [key: string]: string } = {\r\n    success: '#22c55e',  // green-500\r\n    info: '#3b82f6',     // blue-500\r\n    warn: '#f59e0b',     // amber-500\r\n    danger: '#ef4444',   // red-500\r\n    help: '#8b5cf6',     // violet-500\r\n    primary: '#6366f1',  // indigo-500\r\n  };\r\n\r\n\r\n  // Internal value to track the toggle state\r\n  private _checked: boolean = false;\r\n\r\n  // ControlValueAccessor callback functions\r\n  private onChangeCallback = (_: any) => {};\r\n  private onTouchedCallback = () => {};\r\n\r\n  // Getter for checked state\r\n  get checked(): boolean {\r\n    return this._checked;\r\n  }\r\n\r\n  // Setter for checked state\r\n  set checked(value: boolean) {\r\n    if (this._checked !== value) {\r\n      this._checked = value;\r\n      this.onChangeCallback(value);\r\n    }\r\n  }\r\n\r\n\r\n  // Helper method to get severity-based CSS class\r\n  getSeverityClass(): string {\r\n    if (this.severity) {\r\n      return `progress-${this.severity}`;\r\n    }\r\n    return 'progress-primary';\r\n  }\r\n  // Handle toggle button click\r\n  toggle(event: Event) {\r\n    if (this.disabled) {\r\n      return;\r\n    }\r\n\r\n    // Prevent default behavior\r\n    event.preventDefault();\r\n    event.stopPropagation();\r\n\r\n    // Toggle the state\r\n    this.checked = !this._checked;\r\n    \r\n    // Mark as touched\r\n    this.onTouchedCallback();\r\n    \r\n    // Emit change event\r\n    this.onChange.emit({\r\n      originalEvent: event,\r\n      checked: this._checked\r\n    });\r\n  }\r\n\r\n  // ControlValueAccessor implementation\r\n  writeValue(value: any): void {\r\n    this._checked = !!value; // Convert to boolean\r\n  }\r\n\r\n  registerOnChange(fn: any): void {\r\n    this.onChangeCallback = fn;\r\n  }\r\n\r\n  registerOnTouched(fn: any): void {\r\n    this.onTouchedCallback = fn;\r\n  }\r\n\r\n  setDisabledState(isDisabled: boolean): void {\r\n    this.disabled = isDisabled;\r\n  }\r\n\r\n  // Get current label based on state\r\n  get currentLabel(): string {\r\n    return this._checked ? this.onLabel : this.offLabel;\r\n  }\r\n\r\n  // Get current icon based on state\r\n  get currentIcon(): string {\r\n    return this._checked ? this.onIcon : this.offIcon;\r\n  }\r\n}","<!-- stk-togglebutton.component.html -->\r\n<p-toggleButton\r\n\r\n  [onLabel]=\"onLabel\"\r\n  [offLabel]=\"offLabel\"\r\n  [onIcon]=\"onIcon\"\r\n  [offIcon]=\"offIcon\"\r\n  [iconPos]=\"iconPos\"\r\n  [styleClass]=\"(styleClass || '') + ' ' + getSeverityClass()\"\r\n  [style]=\"style\"\r\n  [disabled]=\"disabled\"\r\n  [tabindex]=\"tabindex\"\r\n  [attr.aria-label]=\"ariaLabel\"\r\n  [attr.aria-labelledby]=\"ariaLabelledBy\"\r\n  [attr.id]=\"id\"\r\n  (onChange)=\"toggle($event)\"\r\n></p-toggleButton>","import { Component, Input, Output, EventEmitter, forwardRef } from '@angular/core';\r\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\r\n\r\n@Component({\r\n  selector: 'app-stk-rating',\r\n  standalone: false,\r\n  templateUrl: './stk-rating.component.html',\r\n  providers: [\r\n    {\r\n      provide: NG_VALUE_ACCESSOR,\r\n      useExisting: forwardRef(() => StkRatingComponent),\r\n      multi: true,\r\n    },\r\n  ],\r\n})\r\nexport class StkRatingComponent implements ControlValueAccessor {\r\n  @Input() elementId?: string;\r\n  @Input() disabled: boolean = false;\r\n  @Input() readonly: boolean = false;\r\n  @Input() stars: number = 5;\r\n  @Input() iconOnClass?: string | null = null;\r\n  @Input() iconOnStyle?: { [klass: string]: any } | null = null;\r\n  @Input() iconOffClass?: string | null = null;\r\n  @Input() iconOffStyle?: { [klass: string]: any } | null = null;\r\n  @Input() autofocus: boolean = false;\r\n\r\n  @Output() onRate: EventEmitter<{ originalEvent: Event; value: number }> = new EventEmitter();\r\n  @Output() onCancel: EventEmitter<Event> = new EventEmitter();\r\n  @Output() onFocus: EventEmitter<FocusEvent> = new EventEmitter();\r\n  @Output() onBlur: EventEmitter<FocusEvent> = new EventEmitter();\r\n\r\n  value: number | null = null;\r\n\r\n  private onChange = (_: any) => {};\r\n  private onTouched = () => {};\r\n\r\n  writeValue(value: any): void {\r\n    this.value = value;\r\n  }\r\n\r\n  registerOnChange(fn: any): void {\r\n    this.onChange = fn;\r\n  }\r\n\r\n  registerOnTouched(fn: any): void {\r\n    this.onTouched = fn;\r\n  }\r\n\r\n  setDisabledState(isDisabled: boolean): void {\r\n    this.disabled = isDisabled;\r\n  }\r\n\r\n  onRateChange(event: any): void {\r\n    this.value = event.value;\r\n    this.onChange(this.value);\r\n    this.onRate.emit(event);\r\n  }\r\n\r\n  onCancelRating(event: Event): void {\r\n    this.value = null;\r\n    this.onChange(this.value);\r\n    this.onCancel.emit(event);\r\n  }\r\n\r\n  onFocusEvent(event: FocusEvent): void {\r\n    this.onTouched();\r\n    this.onFocus.emit(event);\r\n  }\r\n\r\n  onBlurEvent(event: FocusEvent): void {\r\n    this.onBlur.emit(event);\r\n  }\r\n}\r\n","<p-rating\r\n  [id]=\"elementId\"\r\n  [(ngModel)]=\"value\"\r\n  [disabled]=\"disabled\"\r\n  [readonly]=\"readonly\"\r\n  [stars]=\"stars\"\r\n  [iconOnClass]=\"iconOnClass\"\r\n  [iconOnStyle]=\"iconOnStyle\"\r\n  [iconOffClass]=\"iconOffClass\"\r\n  [iconOffStyle]=\"iconOffStyle\"\r\n  [autofocus]=\"autofocus\"\r\n  (onRate)=\"onRateChange($event)\"\r\n  (onCancel)=\"onCancelRating($event)\"\r\n  (onFocus)=\"onFocusEvent($event)\"\r\n  (onBlur)=\"onBlurEvent($event)\"\r\n></p-rating>\r\n","import { Component, forwardRef, Input } from '@angular/core';\r\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR, NG_VALIDATORS, Validator, AbstractControl, ValidationErrors } from '@angular/forms';\r\n\r\n@Component({\r\n  selector: 'app-stk-upload',\r\n  standalone: false,\r\n  templateUrl: './stk-upload.component.html',\r\n  providers: [\r\n    {\r\n      provide: NG_VALUE_ACCESSOR,\r\n      useExisting: forwardRef(() => StkUploadComponent),\r\n      multi: true\r\n    },\r\n    {\r\n      provide: NG_VALIDATORS,\r\n      useExisting: forwardRef(() => StkUploadComponent),\r\n      multi: true\r\n    }\r\n  ]\r\n})\r\nexport class StkUploadComponent implements ControlValueAccessor, Validator {\r\n  @Input() elementId?: string;\r\n  @Input() url!: string;\r\n  @Input() name: string = 'files';\r\n  @Input() accept?: string;\r\n  @Input() multiple: boolean = false;\r\n  @Input() maxFileSize?: number;\r\n  @Input() disabled: boolean = false;\r\n  @Input() auto: boolean = false;\r\n  @Input() severity : string= 'info' ;\r\n\r\n  files: File[] = [];\r\n  \r\n  private onChange: (files: File[]) => void = () => {};\r\n  private onTouched: () => void = () => {};\r\n\r\n  // FileUpload event: files selected\r\n  onSelect(event: any) {\r\n\r\n    \r\n    // Handle both event.files and event.currentFiles (different PrimeNG versions)\r\n    const selectedFiles = event.files || event.currentFiles || [];\r\n    \r\n    if (this.multiple) {\r\n      // For multiple files, add to existing files array\r\n      this.files = [...this.files, ...selectedFiles];\r\n    } else {\r\n      // For single file, replace the array\r\n      this.files = selectedFiles.length > 0 ? [selectedFiles[0]] : [];\r\n    }\r\n    \r\n    this.onChange(this.files);\r\n    this.onTouched();\r\n  }\r\n\r\n  // File removed\r\n  onRemove(event: any) {\r\n   \r\n    \r\n    // Handle the file removal\r\n    const fileToRemove = event.file;\r\n    this.files = this.files.filter(f => f !== fileToRemove);\r\n    this.onChange(this.files);\r\n  }\r\n\r\n  // Clear all files\r\n  onClear() {\r\n    this.files = [];\r\n    this.onChange(this.files);\r\n  }\r\n\r\n  // ControlValueAccessor implementation\r\n  writeValue(obj: File[] | null): void {\r\n    this.files = obj || [];\r\n  }\r\n\r\n  registerOnChange(fn: (files: File[]) => void): void {\r\n    this.onChange = fn;\r\n  }\r\n\r\n  registerOnTouched(fn: () => void): void {\r\n    this.onTouched = fn;\r\n  }\r\n\r\n  setDisabledState?(isDisabled: boolean): void {\r\n    this.disabled = isDisabled;\r\n  }\r\n\r\n  // Validator (optional, e.g. required)\r\n  validate(control: AbstractControl<File[]>): ValidationErrors | null {\r\n    // Add validation logic if needed\r\n    if (control.value && control.value.length === 0) {\r\n      // You can return validation errors here if needed\r\n      // return { required: true };\r\n    }\r\n    return null;\r\n  }\r\n\r\n  // Helper method to format file size\r\n  formatFileSize(size: number): string {\r\n    if (size === 0) return '0 Bytes';\r\n    const k = 1024;\r\n    const sizes = ['Bytes', 'KB', 'MB', 'GB'];\r\n    const i = Math.floor(Math.log(size) / Math.log(k));\r\n    return parseFloat((size / Math.pow(k, i)).toFixed(2)) + ' ' + sizes[i];\r\n  }\r\n}","<p-fileUpload\r\n  [id]=\"elementId\"\r\n  [url]=\"url\"\r\n  [name]=\"name\"\r\n  [accept]=\"accept\"\r\n  [multiple]=\"multiple\"\r\n  [disabled]=\"disabled\"\r\n  [auto]=\"false\"\r\n  [maxFileSize]=\"maxFileSize\"\r\n  [customUpload]=\"true\"\r\n  (onSelect)=\"onSelect($event)\"\r\n  (onRemove)=\"onRemove($event)\"\r\n  (onClear)=\"onClear()\"\r\n  [showUploadButton]=\"false\"\r\n  [showCancelButton]=\"false\">\r\n\r\n  <ng-template pTemplate=\"content\" let-files let-uploadedFiles=\"uploadedFiles\" let-removeFileCallback=\"removeFileCallback\" let-clearCallback=\"clearCallback\">\r\n  </ng-template>\r\n</p-fileUpload>","import { Component, Input, Output, EventEmitter, ContentChild, TemplateRef, forwardRef } from '@angular/core';\r\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\r\nimport { MenuItem, TooltipOptions } from 'primeng/api';\r\n\r\n@Component({\r\n  selector: 'app-stk-splitbutton',\r\n  templateUrl: './stk-splitbutton.component.html',\r\n  standalone: false,\r\n  providers: [{\r\n    provide: NG_VALUE_ACCESSOR,\r\n    useExisting: forwardRef(() => StkSplitbuttonComponent),\r\n    multi: true\r\n  }],\r\n  styleUrls: ['./stk-splitbutton.component.css']\r\n})\r\nexport class StkSplitbuttonComponent implements ControlValueAccessor {\r\n  // Inputs for SplitButton API\r\n  @Input() elementId?: string;\r\n  @Input() model: MenuItem[] = [];\r\n  @Input() severity?: \"success\" | \"info\" | \"warning\" | \"primary\" | \"help\" | \"danger\" | \"secondary\" | \"contrast\";\r\n  @Input() raised?: boolean;\r\n  @Input() rounded?: boolean;\r\n  @Input() text?: boolean;\r\n  @Input() outlined?: boolean;\r\n  @Input() size?: \"small\" | \"large\";\r\n  @Input() plain?: boolean;\r\n  @Input() icon?: string;\r\n  @Input() iconPos?: string;\r\n  @Input() label?: string;\r\n  @Input() tooltip?: string;\r\n  @Input() tooltipOptions?: TooltipOptions;\r\n  @Input() style?: any;\r\n  @Input() styleClass?: string;\r\n  @Input() menuStyle?: any;\r\n  @Input() menuStyleClass?: string;\r\n  @Input() appendTo?: any;\r\n  @Input() dir?: string;\r\n  @Input() expandAriaLabel?: string;\r\n  @Input() showTransitionOptions?: string;\r\n  @Input() hideTransitionOptions?: string;\r\n  @Input() autofocus?: boolean;\r\n  @Input() disabled?: boolean;\r\n  @Input() tabindex?: number;\r\n  @Input() menuButtonDisabled?: boolean;\r\n  @Input() buttonDisabled?: boolean;\r\n\r\n  // Outputs\r\n  @Output() onClick = new EventEmitter<MouseEvent>();\r\n  @Output() onMenuShow = new EventEmitter<any>();\r\n  @Output() onMenuHide = new EventEmitter<any>();\r\n  @Output() onDropdownClick = new EventEmitter<MouseEvent>();\r\n\r\n  // ContentChild templates\r\n  @ContentChild('content', { static: false }) contentTemplate?: TemplateRef<any>;\r\n  @ContentChild('dropdownicon', { static: false }) dropdownIconTemplate?: TemplateRef<any>;\r\n\r\n  // ControlValueAccessor implementation\r\n  private _value: any;\r\n  onChange: any = (_: any) => {};\r\n  onTouched: any = () => {};\r\n\r\n  writeValue(value: any): void {\r\n    this._value = value;\r\n  }\r\n  registerOnChange(fn: any): void { this.onChange = fn; }\r\n  registerOnTouched(fn: any): void { this.onTouched = fn; }\r\n  setDisabledState(isDisabled: boolean): void { this.disabled = isDisabled; }\r\n\r\n  handleClick(event: MouseEvent) {\r\n    this._value = '__main__'; // Customize as needed\r\n    this.onChange(this._value);\r\n    this.onTouched();\r\n    this.onClick.emit(event);\r\n  }\r\n\r\n  handleDropdownClick(event: MouseEvent) {\r\n    this._value = '__dropdown__'; // Customize as needed\r\n    this.onChange(this._value);\r\n    this.onTouched();\r\n    this.onDropdownClick.emit(event);\r\n  }\r\n}\r\n","<p-splitButton\r\n  [id]=\"elementId\"\r\n  [model]=\"model\"\r\n  [severity]=\"severity\"\r\n  [raised]=\"raised\"\r\n  [rounded]=\"rounded\"\r\n  [text]=\"text\"\r\n  [outlined]=\"outlined\"\r\n  [size]=\"size\"\r\n  [plain]=\"plain\"\r\n  [icon]=\"icon\"\r\n  [iconPos]=\"iconPos\"\r\n  [label]=\"label\"\r\n  [tooltip]=\"tooltip\"\r\n  [tooltipOptions]=\"tooltipOptions\"\r\n  [style]=\"style\"\r\n  [styleClass]=\"styleClass\"\r\n  [menuStyle]=\"menuStyle\"\r\n  [menuStyleClass]=\"menuStyleClass\"\r\n  [appendTo]=\"appendTo\"\r\n  [dir]=\"dir\"\r\n  [expandAriaLabel]=\"expandAriaLabel\"\r\n  [showTransitionOptions]=\"showTransitionOptions\"\r\n  [hideTransitionOptions]=\"hideTransitionOptions\"\r\n  [autofocus]=\"autofocus\"\r\n  [disabled]=\"disabled\"\r\n  [tabindex]=\"tabindex\"\r\n  [menuButtonDisabled]=\"menuButtonDisabled\"\r\n  [buttonDisabled]=\"buttonDisabled\"\r\n  (onClick)=\"handleClick($event)\"\r\n  (onMenuShow)=\"onMenuShow.emit($event)\"\r\n  (onMenuHide)=\"onMenuHide.emit($event)\"\r\n  (onDropdownClick)=\"handleDropdownClick($event)\"\r\n>\r\n  <ng-template\r\n    *ngIf=\"contentTemplate\"\r\n    pTemplate=\"content\"\r\n    [ngTemplateOutlet]=\"contentTemplate\"\r\n    [ngTemplateOutletContext]=\"{}\"\r\n  ></ng-template>\r\n\r\n  <ng-template\r\n    *ngIf=\"dropdownIconTemplate\"\r\n    pTemplate=\"dropdownicon\"\r\n    [ngTemplateOutlet]=\"dropdownIconTemplate\"\r\n    [ngTemplateOutletContext]=\"{}\"\r\n  ></ng-template>\r\n</p-splitButton>","import { Component, Input, forwardRef, OnInit, OnChanges, SimpleChanges } from '@angular/core';\r\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\r\n\r\n@Component({\r\n  selector: 'app-stk-progressbar',\r\n  standalone: false,\r\n  templateUrl: './stk-progressbar.component.html',\r\n  providers: [\r\n    {\r\n      provide: NG_VALUE_ACCESSOR,\r\n      useExisting: forwardRef(() => StkProgressbarComponent),\r\n      multi: true,\r\n    },\r\n  ],\r\n})\r\nexport class StkProgressbarComponent implements ControlValueAccessor, OnInit, OnChanges {\r\n  @Input() elementId?: string;\r\n  @Input() showValue: boolean = true;\r\n  @Input() styleClass: string | null = null;\r\n  @Input() valueStyleClass: string | null = null;\r\n  @Input() style: any = null;\r\n  @Input() unit: string = '%';\r\n  @Input() mode: 'determinate' | 'indeterminate' = 'determinate';\r\n  @Input() color: string | null = null;\r\n  @Input() severity: 'success' | 'info' | 'warn' | 'danger' | 'help' | 'primary' | null = 'primary';\r\n  @Input() ariaLabel: string | null = null;\r\n  @Input() ariaLabelledBy: string | null = null;\r\n  @Input() id: string | null = null;\r\n\r\n  value: number = 0; // value from 0 to 100\r\n\r\n  private readonly severityColorMap: { [key: string]: string } = {\r\n    success: '#22c55e',  // green-500\r\n    info: '#3b82f6',     // blue-500\r\n    warn: '#f59e0b',     // amber-500\r\n    danger: '#ef4444',   // red-500\r\n    help: '#8b5cf6',     // violet-500\r\n    primary: '#6366f1',  // indigo-500\r\n  };\r\n\r\n  private onChange = (_: any) => {};\r\n  private onTouched = () => {};\r\n\r\n  ngOnInit(): void {\r\n   \r\n  }\r\n\r\n  ngOnChanges(changes: SimpleChanges): void {\r\n    if (changes['severity']) {\r\n     \r\n    }\r\n  }\r\n\r\n  getComputedColor(): string {\r\n    if (this.color) {\r\n      // If color is explicitly set, use it\r\n      return this.color;\r\n    } else if (this.severity && this.severityColorMap[this.severity]) {\r\n      // If severity is set, map it to a color\r\n      return this.severityColorMap[this.severity];\r\n    } else {\r\n      // Default to primary color\r\n      return this.severityColorMap['primary'];\r\n    }\r\n  }\r\n\r\n  writeValue(value: any): void {\r\n    this.value = value ?? 0;\r\n  }\r\n\r\n  registerOnChange(fn: any): void {\r\n    this.onChange = fn;\r\n  }\r\n\r\n  registerOnTouched(fn: any): void {\r\n    this.onTouched = fn;\r\n  }\r\n\r\n  setDisabledState(isDisabled: boolean): void {\r\n    // ProgressBar is non-interactive UI, no disabled state implementation required\r\n  }\r\n\r\n  // Helper method to get severity-based CSS class\r\n  getSeverityClass(): string {\r\n    if (this.severity) {\r\n      return `progress-${this.severity}`;\r\n    }\r\n    return 'progress-primary';\r\n  }\r\n}","<p-progressBar \r\n  [id]=\"elementId\"\r\n  [value]=\"value\" \r\n  [showValue]=\"showValue\" \r\n  [styleClass]=\"(styleClass || '') + ' ' + getSeverityClass()\"\r\n  [style]=\"style\" \r\n  [unit]=\"unit\" \r\n  [mode]=\"mode\" \r\n  [color]=\"getComputedColor()\"\r\n  [attr.aria-label]=\"ariaLabel\" \r\n  [attr.aria-labelledby]=\"ariaLabelledBy\" \r\n  [attr.id]=\"id\"\r\n>\r\n</p-progressBar>","import { Component,Input,Output,EventEmitter,ContentChild,TemplateRef,forwardRef} from '@angular/core';\r\nimport {ControlValueAccessor,NG_VALUE_ACCESSOR,} from '@angular/forms';\r\nimport { MenuItem, TooltipOptions } from 'primeng/api';\r\nimport { ButtonProps } from 'primeng/button';\r\n\r\n@Component({\r\n  selector: 'app-stk-speeddial',\r\n  standalone: false,\r\n  templateUrl: './stk-speeddial.component.html',\r\n   providers: [\r\n    {\r\n      provide: NG_VALUE_ACCESSOR,\r\n      useExisting: forwardRef(() => StkSpeeddialComponent),\r\n      multi: true,\r\n    },\r\n  ],\r\n  styleUrl: './stk-speeddial.component.css'\r\n})\r\nexport class StkSpeeddialComponent implements ControlValueAccessor  {\r\n@Input() id?: string | null = null;\r\n\r\n  @Input() direction: 'up' | 'down' | 'left' | 'right' = 'up';\r\n  @Input() model: MenuItem[] = [];\r\n  @Input() visible?: boolean | null = null;\r\n  @Input() style?: any;\r\n  @Input() className?: string | null = null;\r\n  @Input() transitionDelay: number = 30;\r\n  @Input() type: 'circle' | 'linear' | 'semi-circle' | 'quarter-circle' = 'linear';\r\n  @Input() radius: number = 0;\r\n  @Input() mask: boolean = false;\r\n  @Input() disabled: boolean = false;\r\n  @Input() hideOnClickOutside: boolean = true;\r\n  @Input() buttonStyle?: any;\r\n  @Input() buttonClassName?: string | null = null;\r\n  @Input() maskStyle?: any;\r\n  @Input() maskClassName?: string | null = null;\r\n  @Input() showIcon?: string | null = null;\r\n  @Input() hideIcon?: string | null = null;\r\n  @Input() rotateAnimation: boolean = true;\r\n  @Input() ariaLabel?: string | null = null;\r\n  @Input() ariaLabelledBy?: string | null = null;\r\n  @Input() tooltipOptions?: TooltipOptions | null = null;\r\n  @Input() buttonProps?: ButtonProps | null = null;\r\n\r\n  // Outputs\r\n  @Output() onVisibleChange = new EventEmitter<boolean>();\r\n  @Output() visibleChange = new EventEmitter<boolean>();\r\n  @Output() onClick = new EventEmitter<MouseEvent>();\r\n  @Output() onShow = new EventEmitter<Event>();\r\n  @Output() onHide = new EventEmitter<Event>();\r\n\r\n  // ContentChild templates\r\n  @ContentChild('item', { static: false }) itemTemplate?: TemplateRef<any>;\r\n  @ContentChild('button', { static: false }) buttonTemplate?: TemplateRef<any>;\r\n  @ContentChild('icon', { static: false }) iconTemplate?: TemplateRef<any>;\r\n\r\n  // ControlValueAccessor (for form binding)\r\n  private _value: any = null;\r\n  onChange: (value: any) => void = () => {};\r\n  onTouched: () => void = () => {};\r\n\r\n  writeValue(value: any): void {\r\n    this._value = value;\r\n  }\r\n  registerOnChange(fn: any): void {\r\n    this.onChange = fn;\r\n  }\r\n  registerOnTouched(fn: any): void {\r\n    this.onTouched = fn;\r\n  }\r\n  setDisabledState?(isDisabled: boolean): void {\r\n    this.disabled = isDisabled;\r\n  }\r\n\r\n  // Convenience method: when an item is clicked, update value and notify form and emit event\r\n  onItemClick(event: { originalEvent: MouseEvent; item: MenuItem }) {\r\n    const label = event.item.label;\r\n    this._value = label;\r\n    this.onChange(label);\r\n    this.onTouched();\r\n  }\r\n\r\n  // Event forwarding handlers\r\n  handleClick(event: MouseEvent) {\r\n    this.onClick.emit(event);\r\n  }\r\n\r\n  handleShow(event: Event) {\r\n    this.onShow.emit(event);\r\n    this.visibleChange.emit(true);\r\n    this.onVisibleChange.emit(true);\r\n  }\r\n\r\n  handleHide(event: Event) {\r\n    this.onHide.emit(event);\r\n    this.visibleChange.emit(false);\r\n    this.onVisibleChange.emit(false);\r\n  }\r\n}","<p-speedDial\r\n  [direction]=\"direction\"\r\n  [id]=\"id\"\r\n  [model]=\"model\"\r\n  [visible]=\"visible\"\r\n  [style]=\"style\"\r\n  [className]=\"className\"\r\n  [transitionDelay]=\"transitionDelay\"\r\n  [type]=\"type\"\r\n  [radius]=\"radius\"\r\n  [mask]=\"mask\"\r\n  [disabled]=\"disabled\"\r\n  [hideOnClickOutside]=\"hideOnClickOutside\"\r\n  [buttonStyle]=\"buttonStyle\"\r\n  [buttonClassName]=\"buttonClassName\"\r\n  [maskStyle]=\"maskStyle\"\r\n  [maskClassName]=\"maskClassName\"\r\n  [showIcon]=\"showIcon\"\r\n  [hideIcon]=\"hideIcon\"\r\n  [rotateAnimation]=\"rotateAnimation\"\r\n  [ariaLabel]=\"ariaLabel\"\r\n  [ariaLabelledBy]=\"ariaLabelledBy\"\r\n  [tooltipOptions]=\"tooltipOptions\"\r\n  [buttonProps]=\"buttonProps\"\r\n  (onClick)=\"handleClick($event)\"\r\n  (onShow)=\"handleShow($event)\"\r\n  (onHide)=\"handleHide($event)\"\r\n>\r\n  <!-- Custom Button Template -->\r\n  <ng-template\r\n    *ngIf=\"buttonTemplate\"\r\n    pTemplate=\"button\"\r\n    [ngTemplateOutlet]=\"buttonTemplate\"\r\n    [ngTemplateOutletContext]=\"{}\"\r\n  ></ng-template>\r\n\r\n  <!-- Custom Icon Template -->\r\n  <ng-template\r\n    *ngIf=\"iconTemplate\"\r\n    pTemplate=\"icon\"\r\n    [ngTemplateOutlet]=\"iconTemplate\"\r\n    [ngTemplateOutletContext]=\"{}\"\r\n  ></ng-template>\r\n\r\n  <!-- Custom Item Template -->\r\n  <ng-template\r\n    *ngIf=\"itemTemplate\"\r\n    pTemplate=\"item\"\r\n    let-menuitem\r\n    let-index=\"index\"\r\n    let-toggleCallback=\"toggleCallback\"\r\n    >\r\n    <ng-container\r\n      [ngTemplateOutlet]=\"itemTemplate\"\r\n      [ngTemplateOutletContext]=\"{\r\n        $implicit: menuitem,\r\n        index: index,\r\n        toggleCallback: toggleCallback\r\n      }\"\r\n    ></ng-container>\r\n  </ng-template>\r\n</p-speedDial>\r\n","import { Component, Input, ContentChild, TemplateRef, forwardRef } from '@angular/core';\r\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\r\n\r\nexport interface CardData {\r\n  header?: string;\r\n  subheader?: string;\r\n  content?: string;\r\n  footer?: string;\r\n}\r\n\r\n@Component({\r\n  selector: 'app-stk-card',\r\n  standalone: false,\r\n  templateUrl: './stk-card.component.html',\r\n  providers: [\r\n    {\r\n      provide: NG_VALUE_ACCESSOR,\r\n      useExisting: forwardRef(() => StkCardComponent),\r\n      multi: true,\r\n    },\r\n  ],\r\n})\r\nexport class StkCardComponent implements ControlValueAccessor {\r\n  @Input() header: string | null = null;\r\n  @Input() subheader: string | null = null;\r\n  @Input() style: any = null;\r\n  @Input() styleClass: string | null = null;\r\n  @Input() backgroundColor: string | null = null;  // New input for background color\r\n\r\n  \r\n  // ContentChild templates for custom sections\r\n  @ContentChild('headerTemplate') headerTemplate?: TemplateRef<any>;\r\n  @ContentChild('titleTemplate') titleTemplate?: TemplateRef<any>;\r\n  @ContentChild('subtitleTemplate') subtitleTemplate?: TemplateRef<any>;\r\n  @ContentChild('contentTemplate') contentTemplate?: TemplateRef<any>;\r\n  @ContentChild('footerTemplate') footerTemplate?: TemplateRef<any>;\r\n\r\n  data: CardData = {};\r\n\r\n  private onChange = (_: any) => {};\r\n  private onTouched = () => {};\r\n\r\n  writeValue(value: CardData): void {\r\n    this.data = value || {};\r\n    if (this.data.header) this.header = this.data.header;\r\n    if (this.data.subheader) this.subheader = this.data.subheader;\r\n  }\r\n\r\n  registerOnChange(fn: any): void {\r\n    this.onChange = fn;\r\n  }\r\n\r\n  get combinedStyle() {\r\n    return { ...this.style, 'background-color': this.backgroundColor || null };\r\n  }\r\n\r\n  registerOnTouched(fn: any): void {\r\n    this.onTouched = fn;\r\n  }\r\n\r\n  setDisabledState(_isDisabled: boolean): void {\r\n    // Card is display only; no disabled behavior\r\n  }\r\n}\r\n","<p-card [header]=\"header\" [subheader]=\"subheader\" [style]=\"style\" [styleClass]=\"styleClass\">\r\n  <ng-container *ngIf=\"headerTemplate\">\r\n    <ng-template pTemplate=\"header\">\r\n      <ng-container *ngTemplateOutlet=\"headerTemplate\"></ng-container>\r\n    </ng-template>\r\n  </ng-container>\r\n\r\n  <ng-container *ngIf=\"titleTemplate\">\r\n    <ng-template pTemplate=\"title\">\r\n      <ng-container *ngTemplateOutlet=\"titleTemplate\"></ng-container>\r\n    </ng-template>\r\n  </ng-container>\r\n\r\n  <ng-container *ngIf=\"subtitleTemplate\">\r\n    <ng-template pTemplate=\"subtitle\">\r\n      <ng-container *ngTemplateOutlet=\"subtitleTemplate\"></ng-container>\r\n    </ng-template>\r\n  </ng-container>\r\n\r\n  <ng-container *ngIf=\"contentTemplate\">\r\n    <ng-template pTemplate=\"content\">\r\n      <ng-container *ngTemplateOutlet=\"contentTemplate\"></ng-container>\r\n    </ng-template>\r\n  </ng-container>\r\n\r\n  <ng-container *ngIf=\"footerTemplate\">\r\n    <ng-template pTemplate=\"footer\">\r\n      <ng-container *ngTemplateOutlet=\"footerTemplate\"></ng-container>\r\n    </ng-template>\r\n  </ng-container>\r\n</p-card>\r\n","import { Component, Input, forwardRef } from '@angular/core';\r\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\r\n\r\nexport interface AccordionTab {\r\n  title: string;\r\n  content: string;\r\n  value: string;\r\n  disabled?: boolean;\r\n}\r\n\r\n@Component({\r\n    selector: 'app-stk-accordion',\r\n    standalone: false,\r\n  templateUrl: './stk-accordian.component.html',\r\n  styleUrls: ['./stk-accordian.component.css'],\r\n  providers: [{\r\n    provide: NG_VALUE_ACCESSOR,\r\n    useExisting: forwardRef(() => StkAccordionComponent),\r\n    multi: true,\r\n  }],\r\n})\r\nexport class StkAccordionComponent implements ControlValueAccessor {\r\n  @Input() tabs: AccordionTab[] = [];\r\n  @Input() multiple = false;\r\n  @Input() disabled = false;\r\n  @Input() backgroundColor?: string;\r\n\r\n  activePanels: string[] | string = this.multiple ? [] : '';\r\n\r\n  onChange: (value: any) => void = () => {};\r\n  onTouched: () => void = () => {};\r\n\r\n  writeValue(value: any): void {\r\n    this.activePanels = value ?? (this.multiple ? [] : '');\r\n  }\r\n  registerOnChange(fn: any): void { this.onChange = fn; }\r\n  registerOnTouched(fn: any): void { this.onTouched = fn; }\r\n  setDisabledState(isDisabled: boolean): void { this.disabled = isDisabled; }\r\n\r\n  togglePanel(val: string): void {\r\n    this.onTouched();\r\n    if (this.disabled) return;\r\n    const tab = this.tabs.find(t => t.value === val);\r\n    if (tab?.disabled) return;\r\n\r\n    if (this.multiple) {\r\n      let active = Array.isArray(this.activePanels) ? [...this.activePanels] : [];\r\n      if (active.includes(val)) {\r\n        active = active.filter(v => v !== val);\r\n      } else {\r\n        active.push(val);\r\n      }\r\n      this.activePanels = active;\r\n      this.onChange(active);\r\n    } else {\r\n      this.activePanels = val;\r\n      this.onChange(val);\r\n    }\r\n  }\r\n\r\n  isOpen(val: string): boolean {\r\n    return Array.isArray(this.activePanels)\r\n      ? this.activePanels.includes(val)\r\n      : this.activePanels === val;\r\n  }\r\n}\r\n","<div [style.background-color]=\"backgroundColor\">\r\n<p-accordion [multiple]=\"multiple\">\r\n  <p-accordion-panel\r\n    *ngFor=\"let tab of tabs\"\r\n    [value]=\"tab.value\"\r\n    [disabled]=\"disabled || tab.disabled\"\r\n    (click)=\"togglePanel(tab.value)\"\r\n    [style.cursor]=\"(disabled || tab.disabled) ? 'not-allowed' : 'pointer'\"\r\n    [style.background]=\"isOpen(tab.value) ? '#e7e7e7' : '#fff'\"\r\n    [style.opacity]=\"(disabled || tab.disabled) ? 0.6 : 1\"\r\n  >\r\n    <p-accordion-header>\r\n      {{ tab.title }}\r\n    </p-accordion-header>\r\n    <p-accordion-content *ngIf=\"isOpen(tab.value)\">\r\n      <div *ngIf=\"tab.contentTemplate; else plainContent\">\r\n        <ng-container *ngTemplateOutlet=\"tab.contentTemplate\"></ng-container>\r\n      </div>\r\n      <ng-template #plainContent>\r\n        {{ tab.content }}\r\n      </ng-template>\r\n    </p-accordion-content>\r\n  </p-accordion-panel>\r\n</p-accordion>\r\n</div>","import { Component, Input, forwardRef } from '@angular/core';\r\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\r\n\r\n \r\n@Component({\r\n  selector: 'app-stk-multiselect',\r\n  standalone: false,\r\n  templateUrl: './stk-multiselect.component.html',\r\n  providers: [\r\n    {\r\n      provide: NG_VALUE_ACCESSOR,\r\n      useExisting: forwardRef(() => StkMultiSelectComponent),\r\n      multi: true,\r\n    },\r\n  ],\r\n})\r\nexport class StkMultiSelectComponent implements ControlValueAccessor {\r\n  @Input() elementId?: string;\r\n  @Input() options: any[] = [];\r\n  @Input() optionLabel: string = 'label';\r\n  @Input() placeholder: string = ' ';\r\n  @Input() showTransitionOptions: string = '400ms cubic-bezier(0.86, 0, 0.07, 1)';\r\n  @Input() display: 'comma' | 'chip' = 'comma';\r\n  @Input() disabled: boolean = false;\r\n  @Input() name: string;\r\n \r\n  value: any[] = [];\r\n \r\n  private onChange = (_: any) => {};\r\n  private onTouched = () => {};\r\n \r\n  writeValue(value: any): void {\r\n    this.value = value ?? [];\r\n  }\r\n \r\n  registerOnChange(fn: any): void {\r\n    this.onChange = fn;\r\n  }\r\n \r\n  registerOnTouched(fn: any): void {\r\n    this.onTouched = fn;\r\n  }\r\n \r\n  setDisabledState(isDisabled: boolean): void {\r\n    this.disabled = isDisabled;\r\n  }\r\n \r\n  // Public method to handle internal onChange event and propagate up\r\n  valueChanged(value: any) {\r\n    this.value = value;\r\n    this.onChange(value);\r\n  }\r\n \r\n  // Public method to handle blur (touched) event\r\n  inputBlurred() {\r\n    this.onTouched();\r\n  }\r\n}","<p-multiSelect\r\n    [id]=\"elementId\"\r\n    [options]=\"options\"\r\n    inputId=\"float-label\"\r\n    [(ngModel)]=\"value\"\r\n    [optionLabel]=\"optionLabel\"\r\n    [placeholder]=\"placeholder\" \r\n    [showTransitionOptions]=\"showTransitionOptions\"\r\n    [display]=\"display\"\r\n    [disabled]=\"disabled\"\r\n    (onChange)=\"valueChanged($event.value)\"\r\n    (onBlur)=\"inputBlurred()\"\r\n    [filter]=\"false\"\r\n    [showToggleAll]=\"false\"\r\n  >\r\n    <!-- Remove checkbox: custom item template -->\r\n    <ng-template let-item pTemplate=\"item\">\r\n      <div class=\"custom-item\">{{ item[optionLabel] }}</div>\r\n    </ng-template>\r\n\r\n    <!-- Optional: customize selected item display -->\r\n    <ng-template let-selectedItem pTemplate=\"selectedItem\">\r\n      <div class=\"custom-selected\">{{ selectedItem[optionLabel] }}</div>\r\n    </ng-template>\r\n  </p-multiSelect>\r\n\r\n\r\n\r\n","import {\r\n  Component,\r\n  Input,\r\n  forwardRef\r\n} from '@angular/core';\r\nimport {\r\n  ControlValueAccessor,\r\n  NG_VALUE_ACCESSOR\r\n} from '@angular/forms';\r\n\r\n@Component({\r\n  selector: 'app-stk-password',\r\n  templateUrl: './stk-password.component.html',\r\n  styleUrls: ['./stk-password.component.css'],\r\n  standalone: false,\r\n  providers: [\r\n    {\r\n      provide: NG_VALUE_ACCESSOR,\r\n      useExisting: forwardRef(() => StkPasswordComponent),\r\n      multi: true\r\n    }\r\n  ]\r\n})\r\nexport class StkPasswordComponent implements ControlValueAccessor {\r\n  @Input() elementId?: string;\r\n  // Internal value\r\n  private _value: string = '';\r\n  @Input() toggleMask: boolean = false;\r\n  @Input() feedback: boolean = false;\r\n  @Input() icon: string = 'pi pi-lock';\r\n  \r\n\r\n// ControlValueAccessor hooks\r\n  onChange = (_: any) => {};\r\n  onTouched = () => {};\r\n  disabled = false;\r\n\r\n  get value(): string {\r\n    return this._value;\r\n  }\r\n\r\n  set value(val: string) {\r\n    if (val !== this._value) {\r\n      this._value = val;\r\n      this.onChange(val);\r\n    }\r\n  }\r\n\r\n  writeValue(val: string): void {\r\n    this._value = val ?? '';\r\n  }\r\n\r\n  registerOnChange(fn: any): void {\r\n    this.onChange = fn;\r\n  }\r\n\r\n  registerOnTouched(fn: any): void {\r\n    this.onTouched = fn;\r\n  }\r\n\r\n  setDisabledState(isDisabled: boolean): void {\r\n    this.disabled = isDisabled;\r\n  }\r\n\r\n  // Handle blur to mark control as touched\r\n  handleBlur() {\r\n    this.onTouched();\r\n  }\r\n}\r\n","<!-- Full-width wrapper with icon -->\r\n<div class=\"relative w-full\">\r\n  <!-- Icon -->\r\n  <i [ngClass]=\"icon\"\r\n     class=\"absolute left-3 top-1/2 -translate-y-1/2 text-[#6c757d] text-sm pointer-events-none z-10\"></i>\r\n\r\n  <!-- PrimeNG Password Input -->\r\n  <p-password\r\n    [id]=\"elementId\"\r\n    [toggleMask]=\"toggleMask\"\r\n    [(ngModel)]=\"value\"\r\n    [disabled]=\"disabled\"\r\n    [feedback]=\"feedback\"\r\n    (blur)=\"handleBlur()\"\r\n    inputStyleClass=\"pl-10 pr-10 py-2.5 text-base border border-[#bdbdbd] rounded-md h-[42px] w-full outline-none focus:border-[#0037ff]\">\r\n  </p-password>\r\n</div>\r\n","import { Component, Input } from '@angular/core';\r\nimport { MessageService } from 'primeng/api';\r\n\r\n@Component({\r\n  selector: 'app-stk-toast',\r\n  standalone: false,\r\n  templateUrl: './stk-toast.component.html',\r\n  styleUrl: './stk-toast.component.css',\r\n  providers: [MessageService]\r\n})\r\nexport class StkToastComponent {\r\n \r\n\r\n  @Input() label: string = 'Show'; // Button label\r\n  @Input() severity: string = 'info'; // Toast severity\r\n  @Input() summary: string = 'Info'; // Toast summary\r\n  @Input() detail: string = 'Message Content'; // Toast detail\r\n  @Input() life: number = 3000; // Toast duration in ms\r\n  \r\n  constructor(private messageService: MessageService) {}\r\n\r\n  show() {\r\n    this.messageService.add({\r\n      severity: this.severity,\r\n      summary: this.summary,\r\n      detail: this.detail,\r\n      life: this.life\r\n    });\r\n  }\r\n\r\n}\r\n","<div class=\"card flex justify-center\">\r\n  <p-toast >\r\n    \r\n  </p-toast>\r\n  <p-button (onClick)=\"show()\" [label]=\"label\" [styleClass]=\"'p-button-' + severity\" />\r\n</div>\r\n","import { NgModule } from '@angular/core';\r\nimport { DatePickerModule } from 'primeng/datepicker';\r\nimport { AutoCompleteModule } from 'primeng/autocomplete';\r\nimport { CalendarModule } from 'primeng/calendar';\r\nimport { CascadeSelectModule } from 'primeng/cascadeselect';\r\nimport { CheckboxModule } from 'primeng/checkbox';\r\nimport { ChipsModule } from 'primeng/chips';\r\nimport { ColorPickerModule } from 'primeng/colorpicker';\r\nimport { DropdownModule } from 'primeng/dropdown';\r\nimport { EditorModule } from 'primeng/editor';\r\nimport { InputMaskModule } from 'primeng/inputmask';\r\nimport { InputSwitchModule } from 'primeng/inputswitch';\r\nimport { InputTextModule } from 'primeng/inputtext';\r\n//import { InputTextareaModule } from 'primeng/inputtextarea';\r\nimport { TextareaModule } from 'primeng/textarea';\r\nimport { InputNumberModule } from 'primeng/inputnumber';\r\nimport { KnobModule } from 'primeng/knob';\r\nimport { KeyFilterModule } from 'primeng/keyfilter';\r\nimport { ListboxModule } from 'primeng/listbox';\r\nimport { MultiSelectModule } from 'primeng/multiselect';\r\nimport { PasswordModule } from 'primeng/password';\r\nimport { RadioButtonModule } from 'primeng/radiobutton';\r\nimport { RatingModule } from 'primeng/rating';\r\nimport { SliderModule } from 'primeng/slider';\r\nimport { SelectButtonModule } from 'primeng/selectbutton';\r\nimport { ToggleSwitchModule } from 'primeng/toggleswitch';\r\nimport { ToggleButtonModule } from 'primeng/togglebutton';\r\nimport { TreeSelectModule } from 'primeng/treeselect';\r\n//import { TriStateCheckboxModule } from 'primeng/tristatecheckbox';\r\nimport { ButtonModule } from 'primeng/button';\r\nimport { SplitButtonModule } from 'primeng/splitbutton';\r\nimport { SpeedDialModule } from 'primeng/speeddial';\r\nimport { DataViewModule } from 'primeng/dataview';\r\nimport { OrderListModule } from 'primeng/orderlist';\r\nimport { OrganizationChartModule } from 'primeng/organizationchart';\r\nimport { PaginatorModule } from 'primeng/paginator';\r\nimport { TableModule } from 'primeng/table';\r\nimport { TimelineModule } from 'primeng/timeline';\r\nimport { TreeModule } from 'primeng/tree';\r\nimport { TreeTableModule } from 'primeng/treetable';\r\n//import { VirtualScrollerModule } from 'primeng/virtualscroller';\r\nimport { ScrollerModule } from 'primeng/scroller';\r\nimport { AccordionModule } from 'primeng/accordion';\r\nimport { CardModule } from 'primeng/card';\r\nimport { DividerModule } from 'primeng/divider';\r\nimport { FieldsetModule } from 'primeng/fieldset';\r\nimport { PanelModule } from 'primeng/panel';\r\nimport { SplitterModule } from 'primeng/splitter';\r\nimport { ScrollPanelModule } from 'primeng/scrollpanel';\r\nimport { TabViewModule } from 'primeng/tabview';\r\nimport { ToolbarModule } from 'primeng/toolbar';\r\nimport { ConfirmDialogModule } from 'primeng/confirmdialog';\r\nimport { ConfirmPopupModule } from 'primeng/confirmpopup';\r\nimport { DialogModule } from 'primeng/dialog';\r\nimport { DynamicDialogModule } from 'primeng/dynamicdialog';\r\nimport { OverlayPanelModule } from 'primeng/overlaypanel';\r\nimport { SidebarModule } from 'primeng/sidebar';\r\nimport { TooltipModule } from 'primeng/tooltip';\r\nimport { FileUploadModule } from 'primeng/fileupload';\r\nimport { BreadcrumbModule } from 'primeng/breadcrumb';\r\nimport { ContextMenuModule } from 'primeng/contextmenu';\r\nimport { DockModule } from 'primeng/dock';\r\nimport { MegaMenuModule } from 'primeng/megamenu';\r\nimport { MenuModule } from 'primeng/menu';\r\nimport { MenubarModule } from 'primeng/menubar';\r\nimport { PanelMenuModule } from 'primeng/panelmenu';\r\n//import { SlideMenuModule } from 'primeng/slidemenu';\r\nimport { StepsModule } from 'primeng/steps';\r\nimport { TabMenuModule } from 'primeng/tabmenu';\r\nimport { TieredMenuModule } from 'primeng/tieredmenu';\r\nimport { MessagesModule } from 'primeng/messages';\r\nimport { MessageModule } from 'primeng/message';\r\nimport { ToastModule } from 'primeng/toast';\r\nimport { CarouselModule } from 'primeng/carousel';\r\nimport { GalleriaModule } from 'primeng/galleria';\r\nimport { ImageModule } from 'primeng/image';\r\nimport { DragDropModule } from 'primeng/dragdrop';\r\nimport { AvatarModule } from 'primeng/avatar';\r\nimport { AvatarGroupModule } from 'primeng/avatargroup';\r\nimport { BadgeModule } from 'primeng/badge';\r\nimport { BlockUIModule } from 'primeng/blockui';\r\nimport { ChipModule } from 'primeng/chip';\r\nimport { InplaceModule } from 'primeng/inplace';\r\nimport { ProgressBarModule } from 'primeng/progressbar';\r\nimport { ProgressSpinnerModule } from 'primeng/progressspinner';\r\nimport { ScrollTopModule } from 'primeng/scrolltop';\r\nimport { SkeletonModule } from 'primeng/skeleton';\r\nimport { TagModule } from 'primeng/tag';\r\nimport { TerminalModule } from 'primeng/terminal';\r\nimport { FocusTrapModule } from 'primeng/focustrap';\r\nimport { StyleClassModule } from 'primeng/styleclass';\r\nimport { RippleModule } from 'primeng/ripple';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { ChartModule } from 'primeng/chart';\r\n//import { FullCalendarModule } from '@fullcalendar/angular';\r\nimport { FloatLabelModule } from 'primeng/floatlabel';\r\nimport { StepperModule } from 'primeng/stepper';\r\nimport { IconFieldModule } from 'primeng/iconfield';\r\nimport { InputIconModule } from 'primeng/inputicon';\r\nimport { InputGroupModule } from 'primeng/inputgroup';\r\nimport { TabsModule } from 'primeng/tabs';\r\nimport { PickListModule } from 'primeng/picklist';\r\nimport { OverlayBadgeModule } from 'primeng/overlaybadge';\r\nimport { SelectModule } from 'primeng/select';\r\n@NgModule({\r\n  declarations: [],\r\n  imports: [\r\n    StepperModule ,\r\n    FormsModule,\r\n    ReactiveFormsModule,\r\n    AutoCompleteModule,\r\n    CalendarModule,\r\n    CascadeSelectModule,\r\n    CheckboxModule,\r\n    ChipsModule,\r\n    ColorPickerModule,\r\n    DropdownModule,\r\n    EditorModule,\r\n    InputMaskModule,\r\n    InputSwitchModule,\r\n    InputTextModule,\r\n   // InputTextareaModule,\r\n    InputNumberModule,\r\n    KnobModule,\r\n    KeyFilterModule,\r\n    ListboxModule,\r\n    MultiSelectModule,\r\n    PasswordModule,\r\n    RadioButtonModule,\r\n    RatingModule,\r\n    SliderModule,\r\n    SelectButtonModule,\r\n    ToggleButtonModule,\r\n    TreeSelectModule,\r\n    //TriStateCheckboxModule,\r\n    ButtonModule,\r\n    SplitButtonModule,\r\n    SpeedDialModule,\r\n    DataViewModule,\r\n    OrderListModule,\r\n    OrganizationChartModule,\r\n    PaginatorModule,\r\n    TableModule,\r\n    TimelineModule,\r\n    TreeModule,\r\n    TreeTableModule,\r\n   // VirtualScrollerModule,\r\n    ScrollerModule,\r\n    AccordionModule,\r\n    CardModule,\r\n    DividerModule,\r\n    FieldsetModule,\r\n    PanelModule,\r\n    SplitterModule,\r\n    ScrollPanelModule,\r\n    TabViewModule,\r\n    ToolbarModule,\r\n    ConfirmDialogModule,\r\n    ConfirmPopupModule,\r\n    DialogModule,\r\n    DynamicDialogModule,\r\n    OverlayPanelModule,\r\n    SidebarModule,\r\n    TooltipModule,\r\n    FileUploadModule,\r\n    BreadcrumbModule,\r\n    ContextMenuModule,\r\n    DockModule,\r\n    MegaMenuModule,\r\n    MenuModule,\r\n    MenubarModule,\r\n    PanelMenuModule,\r\n   // SlideMenuModule,\r\n    StepsModule,\r\n    TabMenuModule,\r\n    TieredMenuModule,\r\n    MessagesModule,\r\n    MessageModule,\r\n    ToastModule,\r\n    CarouselModule,\r\n    GalleriaModule,\r\n    ImageModule,\r\n    DragDropModule,\r\n    AvatarModule,\r\n    AvatarGroupModule,\r\n    BadgeModule,\r\n    BlockUIModule,\r\n    ChipModule,\r\n    InplaceModule,\r\n    ProgressBarModule,\r\n    ProgressSpinnerModule,\r\n    ScrollTopModule,\r\n    SkeletonModule,\r\n    TagModule,\r\n    TerminalModule,\r\n    FocusTrapModule,\r\n    StyleClassModule,\r\n    RippleModule,\r\n    ChartModule,\r\n   // FullCalendarModule,\r\n    FloatLabelModule,\r\n    InputIconModule,\r\n    IconFieldModule,\r\n    InputGroupModule,\r\n    DatePickerModule,\r\n    TabsModule,\r\n    PickListModule,\r\n    OverlayBadgeModule,\r\n    TextareaModule,\r\n    ToggleSwitchModule,\r\n    SelectModule\r\n  ],\r\n  exports: [\r\n   StepperModule ,\r\n    FormsModule,\r\n    ReactiveFormsModule,\r\n    AutoCompleteModule,\r\n    CalendarModule,\r\n    CascadeSelectModule,\r\n    CheckboxModule,\r\n    ChipsModule,\r\n    ColorPickerModule,\r\n    DropdownModule,\r\n    EditorModule,\r\n    InputMaskModule,\r\n    InputSwitchModule,\r\n    InputTextModule,\r\n    //InputTextareaModule,\r\n    InputNumberModule,\r\n    KnobModule,\r\n    KeyFilterModule,\r\n    ListboxModule,\r\n    MultiSelectModule,\r\n    PasswordModule,\r\n    RadioButtonModule,\r\n    RatingModule,\r\n    SliderModule,\r\n    SelectButtonModule,\r\n    ToggleButtonModule,\r\n    TreeSelectModule,\r\n   // TriStateCheckboxModule,\r\n    ButtonModule,\r\n    SplitButtonModule,\r\n    SpeedDialModule,\r\n    DataViewModule,\r\n    OrderListModule,\r\n    OrganizationChartModule,\r\n    PaginatorModule,\r\n    TableModule,\r\n    TimelineModule,\r\n    TreeModule,\r\n    TreeTableModule,\r\n    //VirtualScrollerModule,\r\n    ScrollerModule,\r\n    AccordionModule,\r\n    CardModule,\r\n    DividerModule,\r\n    FieldsetModule,\r\n    PanelModule,\r\n    SplitterModule,\r\n    ScrollPanelModule,\r\n    TabViewModule,\r\n    ToolbarModule,\r\n    ConfirmDialogModule,\r\n    ConfirmPopupModule,\r\n    DialogModule,\r\n    DynamicDialogModule,\r\n    OverlayPanelModule,\r\n    SidebarModule,\r\n    TooltipModule,\r\n    FileUploadModule,\r\n    BreadcrumbModule,\r\n    ContextMenuModule,\r\n    DockModule,\r\n    MegaMenuModule,\r\n    MenuModule,\r\n    MenubarModule,\r\n    PanelMenuModule,\r\n    //SlideMenuModule,\r\n    StepsModule,\r\n    TabMenuModule,\r\n    TieredMenuModule,\r\n    MessagesModule,\r\n    MessageModule,\r\n    ToastModule,\r\n    CarouselModule,\r\n    GalleriaModule,\r\n    ImageModule,\r\n    DragDropModule,\r\n    AvatarModule,\r\n    AvatarGroupModule,\r\n    BadgeModule,\r\n    BlockUIModule,\r\n    ChipModule,\r\n    InplaceModule,\r\n    ProgressBarModule,\r\n    ProgressSpinnerModule,\r\n    ScrollTopModule,\r\n    SkeletonModule,\r\n    TagModule,\r\n    TerminalModule,\r\n    FocusTrapModule,\r\n    StyleClassModule,\r\n    RippleModule,\r\n    ChartModule,\r\n    //FullCalendarModule,\r\n    FloatLabelModule,\r\n    InputIconModule,\r\n    IconFieldModule,\r\n    TabsModule,\r\n    PickListModule,\r\n    InputGroupModule,\r\n    DatePickerModule,\r\n    OverlayBadgeModule,\r\n    DatePickerModule,\r\n    TextareaModule,\r\n    ToggleSwitchModule,\r\n    SelectModule\r\n  ]\r\n})\r\nexport class PrimengModule { }\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\n\r\nimport { EllipsisDirective } from './element/shared-component/stk-table/stk-ellipsis.directive';\r\nimport { StkButtonComponent } from './element/shared-component/stk-button/stk-button.component';\r\n\r\nimport { StkDatepickerComponent } from './element/shared-component/stk-datepicker/stk-datepicker.component';\r\nimport { StkCheckboxComponent } from './element/shared-component/stk-checkbox/stk-checkbox.component';\r\nimport { StkStepperComponent } from './element/shared-component/stk-stepper/stk-stepper.component';\r\nimport { StkTabsComponent } from './element/shared-component/stk-tabs/stk-tabs.component';\r\nimport { StkPicklistComponent } from './element/shared-component/stk-picklist/stk-picklist.component';\r\nimport { StkTableComponent } from './element/shared-component/stk-table/stk-table.component';\r\nimport { StkTreeComponent } from './element/shared-component/stk-tree/stk-tree.component';\r\nimport { StkAutoCompleteComponent } from './element/shared-component/stk-autocomplete/stk-autocomplete.component';\r\nimport { StkSelectComponent } from './element/shared-component/stk-select/stk-select.component';\r\nimport { StkOrgchartComponent } from './element/shared-component/stk-orgchart/stk-orgchart.component';\r\nimport { StkBadgeComponent } from './element/shared-component/stk-badge/stk-badge.component';\r\nimport { StkInputComponent } from './element/shared-component/stk-input/stk-input.component';\r\nimport { SkeletonComponent } from './element/shared-component/skeleton/skeleton.component';\r\nimport { SharedskeletonDirective } from './element/shared-component/sharedskeleton.directive';\r\nimport { SkeletonDirective } from './element/shared-component/skeleton.directive';\r\nimport { StkMessageComponent } from './element/shared-component/stk-message/stk-message.component';\r\nimport { StkChipComponent } from './element/shared-component/stk-chip/stk-chip.component';\r\nimport { StkPayoffLinechartComponent } from './element/shared-component/stk-payoff-linechart/stk-payoff-linechart.component';\r\nimport { StkAvatarComponent } from './element/shared-component/stk-avatar/stk-avatar.component';\r\nimport { StkPopupComponent } from './element/shared-component/stk-popup/stk-popup.component';\r\nimport { StkCardWidgetComponent } from './element/shared-component/stk-cardwidget/stk-cardwidget.component';\r\nimport { StkTagComponent } from './element/shared-component/stk-tag/stk-tag.component';\r\nimport { StkRadioButtonComponent } from './element/shared-component/stk-radiobutton/stk-radiobutton.component';\r\nimport { StkWidgetcardComponent } from './element/shared-component/stk-widgetcard/stk-widgetcard.component';\r\nimport { StkTreeselectComponent } from './element/shared-component/stk-treeselect/stk-treeselect.component';\r\nimport { StkTextareaComponent } from './element/shared-component/stk-textarea/stk-textarea.component';\r\nimport { StkToggleswitchComponent } from './element/shared-component/stk-toggleswitch/stk-toggleswitch.component';\r\nimport { StkTogglebuttonComponent } from './element/shared-component/stk-togglebutton/stk-togglebutton.component';\r\nimport { StkRatingComponent } from './element/shared-component/stk-rating/stk-rating.component';\r\nimport { StkUploadComponent } from './element/shared-component/stk-upload/stk-upload.component';\r\nimport { StkSplitbuttonComponent } from './element/shared-component/stk-splitbutton/stk-splitbutton.component';\r\nimport { StkProgressbarComponent } from './element/shared-component/stk-progressbar/stk-progressbar.component';\r\nimport { StkSpeeddialComponent } from './element/shared-component/stk-speeddial/stk-speeddial.component';\r\nimport { StkCardComponent } from './element/shared-component/stk-card/stk-card.component';\r\nimport { StkAccordionComponent } from './element/shared-component/stk-accordian/stk-accordian.component';\r\nimport { StkMultiSelectComponent } from './element/shared-component/stk-multiselect/stk-multiselect.component';\r\nimport { StkPasswordComponent } from './element/shared-component/stk-password/stk-password.component';\r\nimport { StkToastComponent } from './element/shared-component/stk-toast/stk-toast.component';\r\nimport { MessageService } from 'primeng/api';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { PrimengModule } from './element/primeng.module';\r\n\r\n@NgModule({\r\n  declarations: [\r\n        StkButtonComponent,\r\n        StkDatepickerComponent,\r\n        StkCheckboxComponent,\r\n        StkStepperComponent,\r\n        StkTabsComponent,\r\n        StkPicklistComponent,\r\n        StkTableComponent,\r\n        // StkCustomGridComponent,\r\n        StkTreeComponent,\r\n        StkAutoCompleteComponent,\r\n        StkSelectComponent,\r\n        StkOrgchartComponent,\r\n        StkBadgeComponent,\r\n        StkInputComponent,\r\n        StkTextareaComponent,\r\n        StkToggleswitchComponent,\r\n        StkTogglebuttonComponent,\r\n        StkRatingComponent,\r\n        StkUploadComponent,\r\n        StkSplitbuttonComponent,\r\n        StkProgressbarComponent,\r\n        StkSpeeddialComponent,\r\n        StkCardComponent,\r\n        StkTreeComponent,\r\n        StkAccordionComponent,\r\n        StkMultiSelectComponent,\r\n        StkPasswordComponent,\r\n        StkToastComponent,\r\n        StkTreeselectComponent,\r\n        StkWidgetcardComponent,\r\n        StkRadioButtonComponent,\r\n        StkTagComponent,\r\n        StkAvatarComponent,\r\n        StkCardWidgetComponent,\r\n        StkPayoffLinechartComponent,\r\n        StkPopupComponent,\r\n        StkChipComponent,\r\n        StkMessageComponent,\r\n        SkeletonDirective,\r\n        SharedskeletonDirective,\r\n        SkeletonComponent,\r\n       // EllipsisDirective  // MOVED HERE - directives go in declarations\r\n  ],\r\n  imports: [\r\n    CommonModule,  // This provides NgIf, NgFor, NgClass, etc.\r\n    PrimengModule,\r\n    FormsModule,\r\n    ReactiveFormsModule,\r\n    EllipsisDirective\r\n    // REMOVED: BrowserAnimationsModule - don't use in library modules\r\n    // REMOVED: duplicate CommonModule\r\n    // REMOVED: EllipsisDirective - moved to declarations\r\n  ],\r\n  exports: [\r\n    // Export all components you want users to access\r\n        StkButtonComponent,\r\n        StkDatepickerComponent,\r\n        StkCheckboxComponent,\r\n        StkStepperComponent,\r\n        StkTabsComponent,\r\n        StkPicklistComponent,\r\n        StkTableComponent,\r\n        // StkCustomGridComponent,\r\n        StkTreeComponent,\r\n        StkAutoCompleteComponent,\r\n        StkSelectComponent,\r\n        StkOrgchartComponent,\r\n        StkBadgeComponent,\r\n        StkInputComponent,\r\n        StkTextareaComponent,\r\n        StkToggleswitchComponent,\r\n        StkTogglebuttonComponent,\r\n        StkRatingComponent,\r\n        StkUploadComponent,\r\n        StkSplitbuttonComponent,\r\n        StkProgressbarComponent,\r\n        StkSpeeddialComponent,\r\n        StkCardComponent,\r\n        StkTreeComponent,\r\n        StkAccordionComponent,\r\n        StkMultiSelectComponent,\r\n        StkPasswordComponent,\r\n        StkToastComponent,\r\n        StkTreeselectComponent,\r\n        StkWidgetcardComponent,\r\n        StkRadioButtonComponent,\r\n        StkTagComponent,\r\n        StkAvatarComponent,\r\n        StkCardWidgetComponent,\r\n        StkPayoffLinechartComponent,\r\n        StkPopupComponent,\r\n        StkChipComponent,\r\n        StkMessageComponent,\r\n        SkeletonDirective,\r\n        SharedskeletonDirective,\r\n        SkeletonComponent,\r\n        EllipsisDirective  // Export the directive if others need to use it\r\n  ]\r\n})\r\nexport class SvfElementModuleModule { }","// projects/systak-client/src/public-api.ts\r\n\r\n/*\r\n * Public API Surface of systak-client\r\n */\r\n\r\n// Main Module\r\nexport * from './lib/svf-element-module.module';\r\n\r\n// PrimeNG Module\r\nexport * from './lib/element/primeng.module';\r\n\r\n// Base Services and Directives\r\n\r\n\r\n\r\n\r\n// Charts\r\n\r\n\r\n// Shared Components (Make sure ALL paths match your actual file structure)\r\nexport * from './lib/element/shared-component/stk-button/stk-button.component';\r\nexport * from './lib/element/shared-component/stk-checkbox/stk-checkbox.component';\r\nexport * from './lib/element/shared-component/stk-datepicker/stk-datepicker.component';\r\nexport * from './lib/element/shared-component/stk-stepper/stk-stepper.component';\r\nexport * from './lib/element/shared-component/stk-tabs/stk-tabs.component';\r\nexport * from './lib/element/shared-component/stk-picklist/stk-picklist.component';\r\nexport * from './lib/element/shared-component/stk-table/stk-table.component';\r\nexport * from './lib/element/shared-component/stk-textarea/stk-textarea.component';\r\nexport * from './lib/element/shared-component/stk-rating/stk-rating.component';\r\nexport * from './lib/element/shared-component/stk-progressbar/stk-progressbar.component';\r\nexport * from './lib/element/shared-component/stk-card/stk-card.component';\r\nexport * from './lib/element/shared-component/stk-splitbutton/stk-splitbutton.component';\r\nexport * from './lib/element/shared-component/stk-togglebutton/stk-togglebutton.component';\r\nexport * from './lib/element/shared-component/stk-speeddial/stk-speeddial.component';\r\nexport * from './lib/element/shared-component/stk-upload/stk-upload.component';\r\nexport * from './lib/element/shared-component/stk-toggleswitch/stk-toggleswitch.component';\r\nexport * from './lib/element/shared-component/stk-tree/stk-tree.component';\r\nexport * from './lib/element/shared-component/stk-select/stk-select.component';\r\nexport * from './lib/element/shared-component/stk-orgchart/stk-orgchart.component';\r\nexport * from './lib/element/shared-component/stk-badge/stk-badge.component';\r\n//export * from './lib/element/shared-component/stk-multiselect/stk-multiselect.Component';\r\nexport * from './lib/element/shared-component/stk-multiselect/stk-multiselect.component'; \r\nexport * from './lib/element/shared-component/stk-password/stk-password.component';\r\nexport * from './lib/element/shared-component/stk-toast/stk-toast.component';\r\nexport * from './lib/element/shared-component/stk-treeselect/stk-treeselect.component';\r\nexport * from './lib/element/shared-component/stk-widgetcard/stk-widgetcard.component';\r\nexport * from './lib/element/shared-component/stk-tag/stk-tag.component';\r\nexport * from './lib/element/shared-component/stk-avatar/stk-avatar.component';\r\nexport * from './lib/element/shared-component/stk-accordian/stk-accordian.component';\r\nexport * from './lib/element/shared-component/stk-payoff-linechart/stk-payoff-linechart.component';\r\nexport * from './lib/element/shared-component/stk-radiobutton/stk-radiobutton.component';\r\nexport * from './lib/element/shared-component/stk-input/stk-input.component';\r\nexport * from './lib/element/shared-component/stk-autocomplete/stk-autocomplete.component';\r\nexport * from './lib/element/shared-component/stk-cardwidget/stk-cardwidget.component';\r\nexport * from './lib/element/shared-component/stk-popup/stk-popup.component';\r\nexport * from './lib/element/shared-component/stk-chip/stk-chip.component';\r\nexport * from './lib/element/shared-component/stk-message/stk-message.component';\r\n\r\n// Directives\r\nexport * from './lib/element/shared-component/stk-table/stk-ellipsis.directive';\r\nexport * from './lib/element/shared-component/skeleton.directive';\r\nexport * from './lib/element/shared-component/sharedskeleton.directive';\r\nexport * from './lib/element/shared-component/skeleton/skeleton.component';\r\n\r\n// Other Components\r\n//export * from './lib/blank-screen-message/SvfElementBlankScreenMessage.component';","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1","i2","i3","i6","i10","i12.EllipsisDirective","i13.StkDatepickerComponent","i4","i1.TreeSelectService"],"mappings":"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"}