{"version":3,"file":"gsa-sam-sam-material-extensions.mjs","sources":["../../../../libs/packages/sam-material-extensions/src/lib/accordion/accordion.component.ts","../../../../libs/packages/sam-material-extensions/src/lib/accordion/accordion.component.html","../../../../libs/packages/sam-material-extensions/src/lib/accordion/accordion.module.ts","../../../../libs/packages/sam-material-extensions/src/lib/table/table-row-import/table-row-navigation.directive.ts","../../../../libs/packages/sam-material-extensions/src/lib/table/table.component.ts","../../../../libs/packages/sam-material-extensions/src/lib/table/table.component.html","../../../../libs/packages/sam-material-extensions/src/lib/table/table.module.ts","../../../../libs/packages/sam-material-extensions/src/lib/table/models/table-column-settings.model.ts","../../../../libs/packages/sam-material-extensions/src/lib/table/models/table-settings.model.ts","../../../../libs/packages/sam-material-extensions/src/lib/button-group/button-group.component.ts","../../../../libs/packages/sam-material-extensions/src/lib/button-group/button-group.component.html","../../../../libs/packages/sam-material-extensions/src/lib/button-group/button-group.module.ts","../../../../libs/packages/sam-material-extensions/src/gsa-sam-sam-material-extensions.ts"],"sourcesContent":["import {\n  Component,\n  Input,\n  TemplateRef,\n  ViewChild,\n  Directive,\n  QueryList,\n  ContentChildren,\n  Output,\n  EventEmitter,\n  ChangeDetectionStrategy,\n} from '@angular/core';\n\nimport { MatAccordion } from '@angular/material/expansion';\n\n@Directive({ selector: 'sds-accordion-title' })\nexport class SdsAccordionTitleDirective {}\n\n@Directive({ selector: 'sds-accordion-content' })\nexport class SdsAccordionContentDirective {}\n\n@Component({\n  selector: 'sds-accordion-item',\n  template: `\n    <ng-template #itemTitleTemplate>\n      <ng-content #title select=\"sds-accordion-title\"></ng-content>\n    </ng-template>\n    <ng-template #itemContentTemplate>\n      <ng-content #content select=\"sds-accordion-content\"></ng-content>\n    </ng-template>\n  `,\n})\nexport class SdsAccordionItemComponent {\n  @ViewChild('itemTitleTemplate') itemTitleTemplate: TemplateRef<any>;\n  @ViewChild('itemContentTemplate') itemContentTemplate: TemplateRef<any>;\n\n  @Input() expanded = false;\n\n  @Input() disabled = false;\n\n  /** Toggles the expanded state of the expansion panel. */\n  toggle(): void {\n    this.expanded = !this.expanded;\n  }\n\n  /** Sets the expanded state of the expansion panel to false. */\n  close(): void {\n    this.expanded = false;\n  }\n\n  /** Sets the expanded state of the expansion panel to true. */\n  open(): void {\n    this.expanded = true;\n  }\n\n  /** Toggles the disabled state of the expansion panel. */\n  toggleDisabled(): void {\n    this.disabled = !this.disabled;\n    if (this.disabled) {\n      this.expanded = false;\n    }\n  }\n}\n\n@Component({\n  selector: 'sds-accordion-next',\n  templateUrl: './accordion.component.html',\n  styleUrls: ['./accordion.component.scss'],\n})\nexport class SdsAccordionComponent {\n  @ViewChild(MatAccordion) accordion: MatAccordion;\n\n  @ContentChildren(SdsAccordionItemComponent) accordionItems!: QueryList<SdsAccordionItemComponent>;\n\n  @Input() multi = false;\n\n  @Output() multiChange: EventEmitter<boolean> = new EventEmitter<boolean>();\n\n  @Input() displayMode = 'flat';\n\n  @Input() collapsedHeight;\n  @Input() expandedHeight;\n\n  constructor() {\n    console.warn(`This is a deprectaed version of accordion component, and will be removed in future versions. \n    Please switch to using usa-accordion from @gsa-sam/ngx-uswds (https://github.com/GSA/ngx-uswds)`);\n  }\n\n  /** Opens all accordion items. */\n  openAll(): void {\n    this.accordion.openAll();\n  }\n\n  /** Closes all accordion items. */\n  closeAll(): void {\n    this.accordion.closeAll();\n  }\n\n  /** Toggles the multi state of the accordion. */\n  toggleMulti(): void {\n    this.multi = !this.multi;\n    this.accordion.closeAll();\n    this.multiChange.emit(this.multi);\n  }\n}\n","<mat-accordion [displayMode]=\"displayMode\" [multi]=\"multi\">\n  <ng-container *ngFor=\"let accordionItem of accordionItems\">\n    <mat-expansion-panel [(expanded)]=\"accordionItem.expanded\" [disabled]=\"accordionItem.disabled\">\n      <mat-expansion-panel-header [collapsedHeight]=\"collapsedHeight\" [expandedHeight]=\"expandedHeight\">\n        <mat-panel-title>\n          <span\n            class=\"sds-expansion-indicator\"\n            [ngClass]=\"{ 'sds-expansion-indicator--expanded': accordionItem.expanded }\"\n          ></span>\n          <ng-container *ngTemplateOutlet=\"accordionItem.itemTitleTemplate\"></ng-container>\n        </mat-panel-title>\n      </mat-expansion-panel-header>\n      <span [ngClass]=\"{ 'display-none': !accordionItem.expanded }\">\n        <ng-container *ngTemplateOutlet=\"accordionItem.itemContentTemplate\"></ng-container>\n      </span>\n    </mat-expansion-panel>\n  </ng-container>\n</mat-accordion>\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { MatExpansionModule, MAT_EXPANSION_PANEL_DEFAULT_OPTIONS } from '@angular/material/expansion';\n\nimport {\n  SdsAccordionComponent,\n  SdsAccordionItemComponent,\n  SdsAccordionTitleDirective,\n  SdsAccordionContentDirective,\n} from './accordion.component';\nimport { IconModule } from '@gsa-sam/ngx-uswds-icons';\n\n@NgModule({\n  declarations: [\n    SdsAccordionComponent,\n    SdsAccordionItemComponent,\n    SdsAccordionTitleDirective,\n    SdsAccordionContentDirective,\n  ],\n  imports: [CommonModule, MatExpansionModule, IconModule],\n  exports: [SdsAccordionComponent, SdsAccordionItemComponent, SdsAccordionTitleDirective, SdsAccordionContentDirective],\n  providers: [\n    {\n      provide: MAT_EXPANSION_PANEL_DEFAULT_OPTIONS,\n      useValue: {\n        collapsedHeight: '45px',\n        expandedHeight: '45px',\n        hideToggle: true,\n      },\n    },\n  ],\n})\nexport class SdsAccordionModule {}\n","import { Directive, ElementRef, HostBinding, HostListener, Input, Renderer2 } from '@angular/core';\nimport { Router } from '@angular/router';\n\n@Directive({\n  selector: 'tr[mat-row][sdsTableRowNavigation]',\n})\nexport class TableRowNavigationDirective {\n  private readonly hoverClass = 'sds-table__row--hovered';\n\n  @Input()\n  highlightOnHover = false;\n\n  constructor(private el: ElementRef, private renderer: Renderer2, private router: Router) {}\n\n  @HostListener('mouseenter') onMouseEnter() {\n    if (this.highlightOnHover) {\n      this.addHoverClass();\n    }\n  }\n\n  @HostListener('mouseleave') onMouseLeave() {\n    if (this.highlightOnHover) {\n      this.removeHoverClass();\n    }\n  }\n\n  addHoverClass() {\n    this.renderer.addClass(this.el.nativeElement, this.hoverClass);\n  }\n  removeHoverClass() {\n    this.renderer.removeClass(this.el.nativeElement, this.hoverClass);\n  }\n}\n","import {\n  Component,\n  Input,\n  OnInit,\n  ContentChild,\n  AfterContentInit,\n  ContentChildren,\n  QueryList,\n  ViewChild,\n  TemplateRef,\n  Directive,\n  SimpleChanges,\n  OnChanges,\n  ChangeDetectorRef,\n  Output,\n  EventEmitter,\n} from '@angular/core';\nimport { AfterViewInit } from '@angular/core';\nimport { animate, state, style, transition, trigger } from '@angular/animations';\nimport { MatSort } from '@angular/material/sort';\nimport { BehaviorSubject } from 'rxjs';\nimport { MatTable, MatTableDataSource } from '@angular/material/table';\nimport { MatPaginator, PageEvent } from '@angular/material/paginator';\n\nexport interface SdsRowConfig {\n  displayedColumns?: string[];\n  expandOnClick?: boolean;\n  highlightOnHover?: boolean;\n  rowClickNavigate?: string;\n}\n\nexport interface SdsHeaderRowConfig extends SdsRowConfig {\n  sticky?: boolean;\n}\n\nexport interface SdsFooterRowConfig extends SdsRowConfig {\n  sticky?: boolean;\n}\n\nexport enum SdsTableHeaderColor {\n  InfoLighter = 'header-info-lighter',\n  AccentCoolLight = 'header-accent-cool-light',\n  PrimaryLighter = 'header-primary-lighter',\n}\n\n@Component({\n  selector: 'sds-row',\n  template: ` <ng-content></ng-content> `,\n})\nexport class SdsTableRowComponent {\n  @Input() displayedColumns: Array<string>;\n  @Input() expandOnClick = false;\n  @Input() highlightOnHover = false;\n  @Input() rowClickNavigate: string;\n}\n\n@Component({\n  selector: 'sds-header-row',\n  template: ` <ng-content></ng-content> `,\n})\nexport class SdsTableHeaderRowComponent {\n  @Input() displayedColumns: Array<string>;\n  @Input() sticky: boolean;\n}\n\n@Component({\n  selector: 'sds-footer-row',\n  template: ` <ng-content></ng-content> `,\n})\nexport class SdsTableFooterRowComponent {\n  @Input() displayedColumns: Array<string>;\n  @Input() sticky: boolean;\n}\n\n@Directive({ selector: 'sds-table-headercell' })\nexport class SdsTableHeaderCellDirective {}\n\n@Directive({ selector: 'sds-table-cell' })\nexport class SdsTableCellDirective {}\n\n@Directive({ selector: 'sds-table-footercell' })\nexport class SdsTableFooterCellDirective {}\n\n@Component({\n  selector: 'sds-table-column',\n  template: `\n    <ng-template #columnHeaderCell let-element=\"element\">\n      <ng-container *ngTemplateOutlet=\"headerCellTemplate; context: { element: element }\"></ng-container>\n    </ng-template>\n\n    <ng-template #columnCell let-element=\"element\">\n      <ng-container *ngTemplateOutlet=\"cellTemplate; context: { element: element }\"></ng-container>\n    </ng-template>\n\n    <ng-template #columnFooterCell let-element=\"element\">\n      <ng-container *ngTemplateOutlet=\"footerCellTemplate; context: { element: element }\"></ng-container>\n    </ng-template>\n  `,\n})\nexport class SdsTableColumnDefComponent implements AfterContentInit {\n  @ViewChild('columnHeaderCell', { static: true }) columnHeaderCell: TemplateRef<any>;\n  @ViewChild('columnCell', { static: true }) columnCell: TemplateRef<any>;\n  @ViewChild('columnFooterCell', { static: true }) columnFooterCell: TemplateRef<any>;\n\n  @ContentChild('sdsHeaderCell', { read: TemplateRef })\n  headerCellTemplate!: TemplateRef<any>;\n  @ContentChild('sdsCell', { read: TemplateRef }) cellTemplate!: TemplateRef<any>;\n  @ContentChild('sdsFooterCell', { read: TemplateRef })\n  footerCellTemplate!: TemplateRef<any>;\n\n  @Input() sdsColumnName;\n\n  @Input() sticky = false;\n\n  @Input() stickyEnd = false;\n\n  @Input() sdsExpandedTemplate = false;\n\n  @Input() isClickable = false;\n\n  ngAfterContentInit() {}\n}\n\n@Component({\n  selector: 'sds-table',\n  templateUrl: './table.component.html',\n  styleUrls: ['./table.component.scss'],\n  animations: [\n    trigger('detailExpand', [\n      state('collapsed', style({ height: '0px', minHeight: '0' })),\n      state('expanded', style({ height: '*' })),\n      transition('expanded <=> collapsed', animate('225ms cubic-bezier(0.4, 0.0, 0.2, 1)')),\n    ]),\n  ],\n})\nexport class SdsTableComponent implements OnInit, AfterContentInit, AfterViewInit, OnChanges {\n  /**\n   * Data for table\n   */\n  @Input() data;\n\n  /**\n   * Borderless table\n   */\n  @Input()\n  set borderless(borderless: boolean) {\n    this._borderless = borderless;\n  }\n  get borderless() {\n    return this._borderless;\n  }\n  private _borderless = false;\n\n  /**\n   * Sorting table\n   */\n\n  @Input() sort = 'false';\n\n  /**\n   * Sorting function override\n   */\n\n  @Input() sortFn: any;\n\n  /**\n   * Name of table - used in setting element id values\n   */\n  @Input() tableName: string;\n\n  /**\n   * Pagination table\n   */\n  @Input()\n  set pagination(pagination: boolean) {\n    this._pagination = pagination;\n  }\n  get pagination() {\n    return this._pagination;\n  }\n  private _pagination = false;\n\n  /**\n   * Expansion table\n   */\n  @Input()\n  set expansion(expansion: boolean) {\n    this._expansion = expansion;\n  }\n  get expansion() {\n    return this._expansion;\n  }\n  private _expansion = false;\n\n  @Input() expandedAriaLabel: string = 'Collapse details';\n  @Input() collapsedAriaLabel: string = 'Expand details';\n\n  @Input() headerColor: SdsTableHeaderColor;\n\n  @Output()\n  expansionClicked = new EventEmitter<any>();\n\n  @Output()\n  rowClicked = new EventEmitter<number>();\n\n  dataSource: MatTableDataSource<any>;\n  expandedElement: any;\n\n  @ViewChild(MatTable) table: MatTable<any>;\n  @ContentChild(SdsTableRowComponent)\n  sdsTableRowComponent: SdsTableRowComponent;\n  @ContentChild(SdsTableHeaderRowComponent)\n  sdsTableHeaderRowComponent: SdsTableHeaderRowComponent;\n  @ContentChild(SdsTableFooterRowComponent)\n  sdsTableFooterRowComponent: SdsTableFooterRowComponent;\n  @ContentChildren(SdsTableColumnDefComponent, { descendants: true })\n  sdsColumnItems!: QueryList<SdsTableColumnDefComponent>;\n  @ViewChild(MatSort) matSort: MatSort;\n  @ViewChild(MatPaginator) matPaginator: MatPaginator;\n\n  rowConfig = {} as SdsRowConfig;\n  headerRowConfig = {} as SdsHeaderRowConfig;\n  footerRowConfig = {} as SdsFooterRowConfig;\n  pageEvent: PageEvent;\n\n  /* sds pagination */\n  top = { id: 'top' };\n  bottom = { id: 'bottom' };\n  page: any = {};\n  public pageChange = new BehaviorSubject<object>(this.page);\n  showPagination = false;\n  totalItems: number;\n\n  constructor(private changeDetectorRef: ChangeDetectorRef) {}\n\n  ngOnChanges(changes: SimpleChanges) {\n    if (changes.data?.currentValue) {\n      this.dataSource = new MatTableDataSource(changes.data.currentValue);\n      if (this.sort === 'true' || this.sort === '' || this.isArray(this.sort)) {\n        this.dataSource.sortingDataAccessor = this.sortFn ? this.sortFn : this.defaultSort;\n        this.dataSource.sort = this.matSort;\n      }\n      if (this.pagination) {\n        this.dataSource.paginator = this.matPaginator;\n        this.updateSdsPagination();\n      }\n    }\n  }\n\n  ngOnInit() {\n    this.dataSource = new MatTableDataSource(this.data);\n\n    if (this.tableName) {\n      this.top = { id: this.tableName + 'Top' };\n      this.bottom = { id: this.tableName + 'Bottom' };\n    }\n  }\n\n  ngAfterContentInit() {\n    this.rowConfig.displayedColumns = this.sdsTableRowComponent.displayedColumns;\n    this.rowConfig.expandOnClick = this.sdsTableRowComponent.expandOnClick;\n    this.rowConfig.highlightOnHover = this.sdsTableRowComponent.highlightOnHover;\n    this.rowConfig.rowClickNavigate = this.sdsTableRowComponent.rowClickNavigate;\n\n    if (this.sdsTableHeaderRowComponent) {\n      this.headerRowConfig.displayedColumns = this.sdsTableHeaderRowComponent.displayedColumns;\n      this.headerRowConfig.sticky = this.sdsTableHeaderRowComponent.sticky;\n    }\n\n    if (this.sdsTableFooterRowComponent) {\n      this.footerRowConfig.displayedColumns = this.sdsTableFooterRowComponent.displayedColumns;\n      this.footerRowConfig.sticky = this.sdsTableFooterRowComponent.sticky;\n    }\n\n    if (this.expansion) {\n      const expandedIndicator = 'expandedIndicator';\n      if (this.rowConfig.displayedColumns && !this.rowConfig.displayedColumns.includes(expandedIndicator)) {\n        this.rowConfig.displayedColumns.unshift('expandedIndicator');\n      }\n    }\n  }\n\n  ngAfterViewInit() {\n    if (this.sort === 'true' || this.sort === '' || this.isArray(this.sort)) {\n      this.dataSource.sortingDataAccessor = this.sortFn ? this.sortFn : this.defaultSort;\n      this.dataSource.sort = this.matSort;\n    }\n    if (this.pagination) {\n      this.dataSource.paginator = this.matPaginator;\n      this.dataSource.paginator.initialized.subscribe((value) => {\n        setTimeout(() => {\n          this.page = {\n            pageNumber: this.dataSource.paginator.pageIndex + 1,\n            pageSize: this.dataSource.paginator.pageSize,\n            totalPages: this.dataSource.paginator.getNumberOfPages(),\n          };\n          this.totalItems = this.dataSource.data.length;\n          this.showPagination = true;\n          this.changeDetectorRef.detectChanges();\n        });\n      });\n\n      this.pageChange.subscribe((value) => {\n        this.updateSdsPagination();\n      });\n      this.changeDetectorRef.detectChanges();\n    }\n  }\n\n  typeOf(value) {\n    return typeof value;\n  }\n\n  isArray(obj: any) {\n    return Array.isArray(obj);\n  }\n\n  updateSdsPagination() {\n    if (this.page && this.dataSource?.paginator) {\n      this.dataSource.paginator.pageIndex = this.page.pageNumber - 1;\n      this.dataSource.paginator._changePageSize(this.page.pageSize);\n      this.page.totalPages = Math.ceil(this.dataSource.data.length / this.page.pageSize);\n      this.totalItems = this.dataSource.data.length;\n      this.changeDetectorRef.detectChanges();\n    }\n  }\n\n  defaultSort(data, sortHeaderId) {\n    if (typeof data[sortHeaderId] === 'string') {\n      return data[sortHeaderId].toLocaleLowerCase();\n    }\n\n    return data[sortHeaderId];\n  }\n\n  onExpansionClicked(element: any) {\n    !this.rowConfig.expandOnClick ? (this.expandedElement = this.expandedElement === element ? null : element) : false;\n    this.expansionClicked.emit(this.expandedElement);\n  }\n\n  get columnsClickable(): boolean {\n    return this.sdsColumnItems.filter((item) => item.isClickable).length > 0;\n  }\n}\n","<div class=\"margin-y-05\" *ngIf=\"pagination && showPagination\">\n  <sds-pagination\n    [displayMode]=\"'results'\"\n    [paginationConfiguration]=\"top\"\n    [(page)]=\"page\"\n    [totalItems]=\"totalItems\"\n  ></sds-pagination>\n</div>\n\n<div class=\"sds-table__container\" [ngClass]=\"{ 'sds-table__container--borderless': borderless }\">\n  <table\n    mat-table\n    [dataSource]=\"dataSource\"\n    class=\"sds-table width-full mat-elevation-z8\"\n    matSort\n    multiTemplateDataRows\n    [ngClass]=\"{ 'sds-table--expansion': expansion }\"\n  >\n    <ng-container *ngFor=\"let sdsColumnItem of sdsColumnItems\">\n      <ng-container\n        *ngIf=\"!sdsColumnItem.sdsExpandedTemplate\"\n        matColumnDef=\"{{ sdsColumnItem.sdsColumnName }}\"\n        [sticky]=\"sdsColumnItem.sticky\"\n        [stickyEnd]=\"sdsColumnItem.stickyEnd\"\n      >\n        <ng-container\n          *ngIf=\"\n            sort === 'true' ||\n              sort === '' ||\n              (typeOf(sort) === 'object' && isArray(sort) && sort.includes(sdsColumnItem.sdsColumnName));\n            else basicColumn\n          \"\n        >\n          <th mat-header-cell *matHeaderCellDef scope=\"col\" mat-sort-header>\n            <ng-container *ngTemplateOutlet=\"sdsColumnItem.columnHeaderCell\"></ng-container>\n          </th>\n        </ng-container>\n        <ng-template #basicColumn>\n          <ng-container>\n            <th mat-header-cell *matHeaderCellDef scope=\"col\">\n              <ng-container *ngTemplateOutlet=\"sdsColumnItem.columnHeaderCell\"></ng-container>\n            </th>\n          </ng-container>\n        </ng-template>\n        <td\n          mat-cell\n          *matCellDef=\"let element; let i = dataIndex\"\n          (click)=\"sdsColumnItem.isClickable ? rowClicked.emit(i) : true\"\n        >\n          <ng-container *ngTemplateOutlet=\"sdsColumnItem.columnCell; context: { element: element }\"></ng-container>\n        </td>\n        <ng-container *ngIf=\"sdsColumnItem.footerCellTemplate\">\n          <th mat-footer-cell *matFooterCellDef scope=\"col\">\n            <ng-container *ngTemplateOutlet=\"sdsColumnItem.columnFooterCell\"></ng-container>\n          </th>\n        </ng-container>\n        <ng-container *ngIf=\"!sdsColumnItem.footerCellTemplate\">\n          <td mat-footer-cell *matFooterCellDef scope=\"col\"></td>\n        </ng-container>\n      </ng-container>\n    </ng-container>\n\n    <!-- Expanded Content Column - The detail row is made up of this one column that spans across all columns -->\n    <ng-container *ngIf=\"expansion\">\n      <ng-container *ngFor=\"let sdsColumnItem of sdsColumnItems\">\n        <ng-container *ngIf=\"sdsColumnItem.sdsExpandedTemplate\" matColumnDef=\"{{ sdsColumnItem.sdsColumnName }}\">\n          <td\n            mat-cell\n            *matCellDef=\"let element\"\n            [attr.colspan]=\"rowConfig.displayedColumns.length\"\n            class=\"sds-table__cell--detail\"\n            role=\"cell\"\n          >\n            <div\n              class=\"sds-table__cell__expanded-wrapper\"\n              [@detailExpand]=\"element == expandedElement ? 'expanded' : 'collapsed'\"\n            >\n              <ng-container *ngTemplateOutlet=\"sdsColumnItem.columnCell; context: { element: element }\"></ng-container>\n            </div>\n          </td>\n        </ng-container>\n      </ng-container>\n    </ng-container>\n\n    <ng-container *ngIf=\"expansion\" matColumnDef=\"expandedIndicator\">\n      <th mat-header-cell *matHeaderCellDef class=\"maxw-3 padding-top-2 padding-right-0 padding-left-1\"></th>\n      <td\n        mat-cell\n        *matCellDef=\"let element\"\n        class=\"cursor-pointer maxw-3 padding-top-2 padding-right-0 padding-left-1\"\n        (click)=\"onExpansionClicked(element)\"\n        [attr.aria-expanded]=\"element == expandedElement ? 'true' : 'false'\"\n        [attr.aria-label]=\"element == expandedElement ? expandedAriaLabel : collapsedAriaLabel\"\n        tabindex=\"0\"\n        (keydown.enter)=\"onExpansionClicked(element)\"\n        (keydown.space)=\"onExpansionClicked(element)\"\n      >\n        <usa-icon *ngIf=\"element == expandedElement\" [icon]=\"'dash'\" size=\"lg\"></usa-icon>\n        <usa-icon *ngIf=\"element != expandedElement\" [icon]=\"'uswds-add'\" size=\"lg\"></usa-icon>\n      </td>\n      <td mat-footer-cell *matFooterCellDef></td>\n    </ng-container>\n\n    <ng-container *ngIf=\"headerRowConfig && headerRowConfig.displayedColumns\">\n      <tr\n        mat-header-row\n        *matHeaderRowDef=\"headerRowConfig.displayedColumns; sticky: headerRowConfig.sticky\"\n        [ngClass]=\"headerColor\"\n      ></tr>\n    </ng-container>\n\n    <tr\n      mat-row\n      *matRowDef=\"let row; columns: rowConfig.displayedColumns; let i = dataIndex\"\n      class=\"sds-table__row {{ row['classesToApply'] }}\"\n      [ngClass]=\"{ 'cursor-pointer': rowConfig.expandOnClick, 'sds-table__row--expanded': expandedElement == row }\"\n      (click)=\"\n        rowConfig.expandOnClick ? (expandedElement = expandedElement === row ? null : row) : false;\n        columnsClickable ? false : rowClicked.emit(i)\n      \"\n      sdsTableRowNavigation\n      [highlightOnHover]=\"rowConfig.highlightOnHover\"\n    ></tr>\n\n    <ng-container *ngIf=\"expansion\">\n      <tr mat-row *matRowDef=\"let row; columns: ['expandedDetail']\" class=\"sds-table__row--detail\"></tr>\n    </ng-container>\n\n    <ng-container *ngIf=\"footerRowConfig && footerRowConfig.displayedColumns\">\n      <tr mat-footer-row *matFooterRowDef=\"footerRowConfig.displayedColumns; sticky: footerRowConfig.sticky\"></tr>\n    </ng-container>\n  </table>\n\n  <div [hidden]=\"true\">\n    <ng-container *ngIf=\"pagination\">\n      <mat-paginator [pageSizeOptions]=\"[25, 50, 100]\" showFirstLastButtons (page)=\"pageEvent = $event\"></mat-paginator>\n    </ng-container>\n  </div>\n</div>\n\n<div *ngIf=\"pagination && showPagination\">\n  <sds-pagination\n    [paginationConfiguration]=\"bottom\"\n    [(page)]=\"page\"\n    (pageChange)=\"pageChange.next($event)\"\n    (initialized)=\"pageChange.next($event)\"\n  ></sds-pagination>\n</div>\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport {\n  SdsTableComponent,\n  SdsTableRowComponent,\n  SdsTableHeaderRowComponent,\n  SdsTableFooterRowComponent,\n  SdsTableColumnDefComponent,\n  SdsTableCellDirective,\n  SdsTableHeaderCellDirective,\n  SdsTableFooterCellDirective,\n} from './table.component';\nimport { TableRowNavigationDirective } from './table-row-import/table-row-navigation.directive';\nimport { MatSortModule } from '@angular/material/sort';\nimport { MatTableModule } from '@angular/material/table';\nimport { PaginationModule } from '@gsa-sam/components';\nimport { MatPaginatorModule } from '@angular/material/paginator';\nimport { chevronDown, chevronUp, NgxBootstrapIconsModule } from 'ngx-bootstrap-icons';\nimport { IconModule } from '@gsa-sam/ngx-uswds-icons';\nimport { RouterModule } from '@angular/router';\n\n@NgModule({\n  declarations: [\n    SdsTableComponent,\n    SdsTableRowComponent,\n    SdsTableHeaderRowComponent,\n    SdsTableFooterRowComponent,\n    SdsTableColumnDefComponent,\n    SdsTableCellDirective,\n    SdsTableHeaderCellDirective,\n    SdsTableFooterCellDirective,\n    TableRowNavigationDirective,\n  ],\n  imports: [\n    RouterModule,\n    CommonModule,\n    MatSortModule,\n    MatTableModule,\n    MatPaginatorModule,\n    PaginationModule,\n    IconModule,\n    NgxBootstrapIconsModule.pick({ chevronUp, chevronDown }),\n  ],\n  exports: [\n    SdsTableComponent,\n    SdsTableRowComponent,\n    SdsTableHeaderRowComponent,\n    SdsTableFooterRowComponent,\n    SdsTableColumnDefComponent,\n    SdsTableCellDirective,\n    SdsTableHeaderCellDirective,\n    SdsTableFooterCellDirective,\n    TableRowNavigationDirective,\n  ],\n})\nexport class SdsTableModule {}\n","export class SdsTableColumnSettings {\n  /**\n   *  primary key to access value from data\n   */\n  primaryKey: string;\n  /**\n   * Displayed column header -- defaults to primaryKey value in titlecase\n   */\n  header?: string;\n  /**\n   * Column sticks to left side of table on horizontal scroll\n   */\n  sticky? = false;\n}\n","export class SdsTableSettings {\n  /**\n   * table without border\n   */\n  borderless?: boolean;\n  /*\n   * sortable table\n   */\n  sort?: boolean;\n  /*\n   * Include sticky header row\n   */\n  stickyHeader?: boolean;\n}\n","import {\n  Component,\n  ContentChildren,\n  EventEmitter,\n  Input,\n  OnInit,\n  Output,\n  QueryList,\n  TemplateRef,\n  ViewChild,\n} from '@angular/core';\nimport { MatButtonToggleChange } from '@angular/material/button-toggle';\n\n@Component({\n  selector: 'sds-button-group-option',\n  styleUrls: ['./button-group.component.scss'],\n  template: `\n    <ng-template #buttonGroupTemplate>\n      <ng-content #content></ng-content>\n    </ng-template>\n  `,\n})\nexport class SdsButtonGroupOptionComponent {\n  @ViewChild('buttonGroupTemplate') buttonGroupTemplate: TemplateRef<any>;\n  @Input() value: any;\n  @Input() checked: boolean;\n  @Input('aria-label') ariaLabel: any;\n  @Input() disabled: boolean;\n}\n\n@Component({\n  selector: 'sds-button-group',\n  templateUrl: './button-group.component.html',\n  styleUrls: ['./button-group.component.scss'],\n  host: {\n    class: 'sds-button-group--segmented',\n    '[class.sds-button-group--modular]': 'modularDashboard',\n  },\n})\nexport class SdsButtonGroupComponent implements OnInit {\n  ngOnInit(): void {\n    if (this.modularDashboard) {\n      this.mode = 'radio';\n    }\n  }\n  @ContentChildren(SdsButtonGroupOptionComponent) buttonOptions!: QueryList<SdsButtonGroupOptionComponent>;\n  classesToApply: Object = {};\n\n  /**\n   * 'checkbox' || 'radio'\n   */\n  @Input()\n  mode: 'checkbox' | 'radio' = 'radio';\n\n  @Input()\n  modularDashboard: boolean = false;\n\n  @Output()\n  change = new EventEmitter<MatButtonToggleChange>();\n}\n","<mat-button-toggle-group [multiple]=\"mode === 'checkbox'\" (change)=\"change.emit($event)\">\n  <ng-container *ngFor=\"let option of buttonOptions\">\n    <mat-button-toggle\n      #singleToggle\n      value=\"{{ option.value }}\"\n      aria-label=\"{{ option.ariaLabel }}\"\n      class=\"sds-button-group__item\"\n      [disableRipple]=\"true\"\n      [checked]=\"option.checked\"\n      [disabled]=\"option.disabled\"\n    >\n      <div\n        [ngClass]=\"{\n          'usa-button--outline': !modularDashboard && !singleToggle.checked,\n          'usa-button': !modularDashboard,\n          modular: modularDashboard\n        }\"\n      >\n        <ng-container *ngTemplateOutlet=\"option.buttonGroupTemplate\"></ng-container>\n      </div>\n    </mat-button-toggle>\n  </ng-container>\n</mat-button-toggle-group>\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { MatButtonToggleModule } from '@angular/material/button-toggle';\n\nimport { SdsButtonGroupComponent, SdsButtonGroupOptionComponent } from './button-group.component';\n\n@NgModule({\n  declarations: [SdsButtonGroupComponent, SdsButtonGroupOptionComponent],\n  imports: [CommonModule, MatButtonToggleModule],\n  exports: [SdsButtonGroupComponent, SdsButtonGroupOptionComponent],\n})\nexport class SdsButtonGroupModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["_c4","_c5","i1","_c0","i2","i7.TableRowNavigationDirective"],"mappings":"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"}