{"version":3,"file":"qualcomm-ui-angular-table.mjs","sources":["../../src/table/components/custom/cell-component-context.directive.ts","../../src/table/components/custom/header-component-context.directive.ts","../../src/table/components/qds-table-api.ts","../../src/table/components/renderers/render-cell.directive.ts","../../src/table/components/renderers/render-footer.directive.ts","../../src/table/components/renderers/render-header.directive.ts","../../src/table/components/table-action-bar.directive.ts","../../src/table/components/table-body.directive.ts","../../src/table/components/table-cell-action.directive.ts","../../src/table/components/table-cell.directive.ts","../../src/table/components/table-column-drag-handle.directive.ts","../../src/table/components/table-column-drag-preview.directive.ts","../../src/table/components/table-column-drop-indicator.directive.ts","../../src/table/components/table-column-filter-action.directive.ts","../../src/table/components/table-column-header-action.directive.ts","../../src/table/components/table-column-resize-handle.directive.ts","../../src/table/components/table-column-sort-action.directive.ts","../../src/table/components/table-footer.directive.ts","../../src/table/components/table-header-cell.directive.ts","../../src/table/components/table-header.directive.ts","../../src/table/components/table-pagination.directive.ts","../../src/table/components/table-root.directive.ts","../../src/table/components/table-row-drag-handle.directive.ts","../../src/table/components/table-row-drag-preview.directive.ts","../../src/table/components/table-row-drop-indicator.directive.ts","../../src/table/components/table-row-expand-button.directive.ts","../../src/table/components/table-row.directive.ts","../../src/table/components/table-scroll-container.directive.ts","../../src/table/components/table-table.directive.ts","../../src/table/components/table-title-bar.directive.ts","../../src/table/components/table.module.ts","../../src/table/model/lazy-signal-initializer.ts","../../src/table/model/proxify-table.ts","../../src/table/model/create-angular-table.ts","../../src/table/model/create-pagination-helper.ts","../../src/table/types/context.ts","../../src/table/qualcomm-ui-angular-table.ts"],"sourcesContent":["// Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.\n// SPDX-License-Identifier: BSD-3-Clause-Clear\n\nimport {Directive, input} from \"@angular/core\"\n\nimport type {CellContext, ColumnMeta} from \"@qualcomm-ui/core/table\"\n\nimport type {CellComponentContext} from \"../../types\"\n\n@Directive()\nexport class CellComponentContextDirective<\n  TableData extends object,\n  ColumnValue = any,\n  TableColumnMeta = ColumnMeta,\n> implements CellComponentContext<TableData, ColumnValue, TableColumnMeta>\n{\n  readonly context =\n    input.required<CellContext<TableData, ColumnValue, TableColumnMeta>>()\n}\n","// Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.\n// SPDX-License-Identifier: BSD-3-Clause-Clear\n\nimport {Directive, input} from \"@angular/core\"\n\nimport type {ColumnMeta, HeaderContext} from \"@qualcomm-ui/core/table\"\n\nimport type {HeaderComponentContext} from \"../../types\"\n\n@Directive()\nexport class HeaderComponentContextDirective<\n  TableData extends object,\n  ColumnValue = any,\n  TableColumnMeta = ColumnMeta,\n> implements HeaderComponentContext<TableData, ColumnValue, TableColumnMeta>\n{\n  readonly context =\n    input.required<HeaderContext<TableData, ColumnValue, TableColumnMeta>>()\n}\n","// Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.\n// SPDX-License-Identifier: BSD-3-Clause-Clear\n\nimport {normalizeProps} from \"@qualcomm-ui/angular-core/machine\"\nimport {createQdsTableApi} from \"@qualcomm-ui/qds-core/table\"\n\nexport const qdsTableApi = createQdsTableApi(normalizeProps)\n","// Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.\n// SPDX-License-Identifier: BSD-3-Clause-Clear\n\nimport {\n  booleanAttribute,\n  Directive,\n  effect,\n  inject,\n  input,\n  type OnDestroy,\n  TemplateRef,\n  ViewContainerRef,\n} from \"@angular/core\"\n\nimport type {Cell} from \"@qualcomm-ui/core/table\"\nimport type {Booleanish} from \"@qualcomm-ui/utils/coercion\"\n\n@Directive({\n  selector: \"[renderCell]\",\n  standalone: false,\n})\nexport class RenderCellDirective implements OnDestroy {\n  private readonly templateRef = inject(TemplateRef)\n  private readonly viewContainerRef = inject(ViewContainerRef)\n\n  /**\n   * The cell data model.\n   */\n  readonly renderCell = input.required<Cell<any, any>>()\n\n  /**\n   * Additional input properties to pass to the underlying column's cell. Only\n   * applicable if the cell is a Component type.\n   */\n  readonly renderCellComponentInput = input<Record<string, any>>()\n\n  /**\n   * If `true`, the cell is aggregated.\n   * TODO: link to aggregated cell docs.\n   */\n  readonly renderCellIsAggregated = input<boolean | undefined, Booleanish>(\n    undefined,\n    {\n      transform: booleanAttribute,\n    },\n  )\n\n  constructor() {\n    effect(() => {\n      this.renderCell()\n      this.renderCellIsAggregated()\n      this.renderCellComponentInput()\n\n      this.render()\n    })\n  }\n\n  ngOnDestroy() {\n    this.viewContainerRef.clear()\n  }\n\n  private render() {\n    this.viewContainerRef.clear()\n\n    const cell = this.renderCell()\n\n    if (cell.getIsPlaceholder()) {\n      return\n    }\n\n    const valueOrFn = this.renderCellIsAggregated()\n      ? (cell.column.columnDef.aggregatedCell ?? cell.column.columnDef.cell)\n      : cell.column.columnDef.cell\n\n    if (typeof valueOrFn === \"function\") {\n      const result = valueOrFn(cell.getContext())\n\n      if (typeof result === \"function\") {\n        const componentRef = this.viewContainerRef.createComponent(result)\n        const inputs = {\n          ...this.renderCellComponentInput(),\n          context: cell.getContext(),\n        }\n        Object.entries(inputs).forEach(([key, value]) => {\n          componentRef.setInput(key, value)\n        })\n      } else {\n        this.viewContainerRef.createEmbeddedView(this.templateRef, {\n          $implicit: result,\n        })\n      }\n    } else {\n      this.viewContainerRef.createEmbeddedView(this.templateRef, {\n        $implicit: valueOrFn,\n      })\n    }\n  }\n}\n","// Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.\n// SPDX-License-Identifier: BSD-3-Clause-Clear\n\nimport {\n  Directive,\n  effect,\n  inject,\n  input,\n  type OnDestroy,\n  TemplateRef,\n  ViewContainerRef,\n} from \"@angular/core\"\n\nimport type {Header} from \"@qualcomm-ui/core/table\"\n\n@Directive({\n  selector: \"[renderFooter]\",\n  standalone: false,\n})\nexport class RenderFooterDirective implements OnDestroy {\n  private readonly templateRef = inject(TemplateRef)\n  private readonly viewContainerRef = inject(ViewContainerRef)\n\n  /**\n   * The footer data model.\n   */\n  readonly renderFooter = input.required<Header<any, any>>()\n\n  constructor() {\n    effect(() => {\n      this.renderFooter()\n      this.render()\n    })\n  }\n\n  ngOnDestroy() {\n    this.viewContainerRef.clear()\n  }\n\n  private render() {\n    this.viewContainerRef.clear()\n\n    const footer = this.renderFooter()\n    const valueOrFn = footer.column.columnDef.footer\n\n    if (typeof valueOrFn === \"function\") {\n      const result = valueOrFn(footer.getContext())\n\n      if (typeof result === \"function\") {\n        const componentRef = this.viewContainerRef.createComponent(result)\n        componentRef.setInput(\"context\", footer.getContext())\n      } else {\n        this.viewContainerRef.createEmbeddedView(this.templateRef, {\n          $implicit: result,\n        })\n      }\n    } else {\n      this.viewContainerRef.createEmbeddedView(this.templateRef, {\n        $implicit: valueOrFn,\n      })\n    }\n  }\n}\n","// Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.\n// SPDX-License-Identifier: BSD-3-Clause-Clear\n\nimport {\n  Directive,\n  effect,\n  inject,\n  input,\n  type OnDestroy,\n  TemplateRef,\n  ViewContainerRef,\n} from \"@angular/core\"\n\nimport type {Header} from \"@qualcomm-ui/core/table\"\n\n@Directive({\n  selector: \"[renderHeader]\",\n  standalone: false,\n})\nexport class RenderHeaderDirective implements OnDestroy {\n  private readonly templateRef = inject(TemplateRef)\n  private readonly viewContainerRef = inject(ViewContainerRef)\n\n  /**\n   * The header data model.\n   */\n  readonly renderHeader = input.required<Header<any, any>>()\n\n  constructor() {\n    effect(() => {\n      this.renderHeader()\n      this.render()\n    })\n  }\n\n  ngOnDestroy() {\n    this.viewContainerRef.clear()\n  }\n\n  private render() {\n    this.viewContainerRef.clear()\n\n    const header = this.renderHeader()\n    const valueOrFn = header.column.columnDef.header\n\n    if (typeof valueOrFn === \"function\") {\n      const result = valueOrFn(header.getContext())\n\n      if (typeof result === \"function\") {\n        const componentRef = this.viewContainerRef.createComponent(result)\n        componentRef.setInput(\"context\", header.getContext())\n      } else {\n        this.viewContainerRef.createEmbeddedView(this.templateRef, {\n          $implicit: result,\n        })\n      }\n    } else {\n      this.viewContainerRef.createEmbeddedView(this.templateRef, {\n        $implicit: valueOrFn,\n      })\n    }\n  }\n}\n","// Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.\n// SPDX-License-Identifier: BSD-3-Clause-Clear\n\nimport {Directive, type OnInit} from \"@angular/core\"\n\nimport {useTrackBindings} from \"@qualcomm-ui/angular-core/machine\"\n\nimport {qdsTableApi} from \"./qds-table-api\"\n\n@Directive({\n  selector: \"[q-table-action-bar]\",\n  standalone: false,\n})\nexport class TableActionBarDirective implements OnInit {\n  protected readonly trackBindings = useTrackBindings(() => {\n    return qdsTableApi.getActionBarBindings()\n  })\n\n  ngOnInit() {\n    this.trackBindings()\n  }\n}\n","// Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.\n// SPDX-License-Identifier: BSD-3-Clause-Clear\n\nimport {Directive, type OnInit} from \"@angular/core\"\n\nimport {useTrackBindings} from \"@qualcomm-ui/angular-core/machine\"\n\nimport {qdsTableApi} from \"./qds-table-api\"\n\n@Directive({\n  selector: \"[q-table-body]\",\n  standalone: false,\n})\nexport class TableBodyDirective implements OnInit {\n  protected readonly trackBindings = useTrackBindings(() => {\n    return qdsTableApi.getBodyBindings()\n  })\n\n  ngOnInit() {\n    this.trackBindings()\n  }\n}\n","// Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.\n// SPDX-License-Identifier: BSD-3-Clause-Clear\n\nimport {Component, input, type OnInit} from \"@angular/core\"\n\nimport {useInlineIconButtonApi} from \"@qualcomm-ui/angular/inline-icon-button\"\nimport type {LucideIconOrString} from \"@qualcomm-ui/angular-core/lucide\"\nimport {useTrackBindings} from \"@qualcomm-ui/angular-core/machine\"\nimport {mergeProps} from \"@qualcomm-ui/utils/merge-props\"\n\nimport {qdsTableApi} from \"./qds-table-api\"\n\n@Component({\n  selector: \"[q-table-cell-action]\",\n  standalone: false,\n  template: `\n    <svg\n      [q-bind]=\"inlineIconButtonApi().getIconBindings()\"\n      [qIcon]=\"icon()\"\n    ></svg>\n  `,\n})\nexport class TableCellActionDirective implements OnInit {\n  /**\n   * Lucide icon to display inside the button.\n   */\n  readonly icon = input.required<LucideIconOrString>()\n\n  protected readonly inlineIconButtonApi = useInlineIconButtonApi({\n    emphasis: \"neutral\",\n    size: \"sm\",\n    variant: \"fixed\",\n  })\n\n  protected readonly trackBindings = useTrackBindings(() =>\n    mergeProps(\n      this.inlineIconButtonApi().getRootBindings(),\n      qdsTableApi.getCellActionBindings(),\n    ),\n  )\n\n  ngOnInit() {\n    this.trackBindings()\n  }\n}\n","// Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.\n// SPDX-License-Identifier: BSD-3-Clause-Clear\n\nimport {Directive, input, type OnInit} from \"@angular/core\"\n\nimport {useTrackBindings} from \"@qualcomm-ui/angular-core/machine\"\nimport type {SignalifyInput} from \"@qualcomm-ui/angular-core/signals\"\nimport type {Cell} from \"@qualcomm-ui/core/table\"\nimport type {QdsTableCellProps} from \"@qualcomm-ui/qds-core/table\"\n\nimport {qdsTableApi} from \"./qds-table-api\"\n\n@Directive({\n  selector: \"[q-table-cell]\",\n  standalone: false,\n})\nexport class TableCellDirective\n  implements OnInit, SignalifyInput<QdsTableCellProps>\n{\n  /**\n   * The data model for this cell.\n   */\n  readonly cell = input<Cell<any>>()\n\n  protected readonly trackBindings = useTrackBindings(() =>\n    qdsTableApi.getCellBindings({\n      cell: this.cell(),\n    }),\n  )\n\n  ngOnInit() {\n    this.trackBindings()\n  }\n}\n","// Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.\n// SPDX-License-Identifier: BSD-3-Clause-Clear\n\nimport {Component, input, type OnInit} from \"@angular/core\"\nimport {GripVertical} from \"lucide-angular\"\n\nimport {useInlineIconButtonApi} from \"@qualcomm-ui/angular/inline-icon-button\"\nimport {\n  type LucideIconOrString,\n  provideIcons,\n} from \"@qualcomm-ui/angular-core/lucide\"\nimport {useTrackBindings} from \"@qualcomm-ui/angular-core/machine\"\nimport {mergeProps} from \"@qualcomm-ui/utils/merge-props\"\n\nimport {qdsTableApi} from \"./qds-table-api\"\n\n@Component({\n  providers: [provideIcons({GripVertical})],\n  selector: \"[q-table-column-drag-handle]\",\n  standalone: false,\n  template: `\n    <svg\n      [q-bind]=\"inlineIconButtonApi().getIconBindings()\"\n      [qIcon]=\"icon()\"\n    ></svg>\n  `,\n})\nexport class TableColumnDragHandleDirective implements OnInit {\n  /**\n   * Lucide icon to display inside the button.\n   *\n   * @default \"GripVertical\"\n   */\n  readonly icon = input<LucideIconOrString>(\"GripVertical\")\n\n  protected readonly inlineIconButtonApi = useInlineIconButtonApi({\n    emphasis: \"neutral\",\n    size: \"sm\",\n    variant: \"fixed\",\n  })\n\n  protected readonly trackBindings = useTrackBindings(() =>\n    mergeProps(\n      this.inlineIconButtonApi().getRootBindings(),\n      qdsTableApi.getDragHandleBindings(),\n    ),\n  )\n\n  ngOnInit() {\n    this.trackBindings()\n  }\n}\n","// Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.\n// SPDX-License-Identifier: BSD-3-Clause-Clear\n\nimport {Directive, ElementRef, inject, type OnInit} from \"@angular/core\"\n\nimport {useTrackBindings} from \"@qualcomm-ui/angular-core/machine\"\n\nimport {qdsTableApi} from \"./qds-table-api\"\n\n@Directive({\n  selector: \"[q-table-column-drag-preview]\",\n  standalone: false,\n})\nexport class TableColumnDragPreviewDirective implements OnInit {\n  protected readonly trackBindings = useTrackBindings(() => {\n    return qdsTableApi.getColumnDragPreviewBindings()\n  })\n\n  protected readonly elementRef = inject(ElementRef)\n\n  ngOnInit() {\n    this.trackBindings()\n  }\n}\n","// Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.\n// SPDX-License-Identifier: BSD-3-Clause-Clear\n\nimport {Directive, input, numberAttribute, type OnInit} from \"@angular/core\"\n\nimport {useTrackBindings} from \"@qualcomm-ui/angular-core/machine\"\nimport type {SignalifyInput} from \"@qualcomm-ui/angular-core/signals\"\nimport type {QdsTableColumnDropIndicatorProps} from \"@qualcomm-ui/qds-core/table\"\n\nimport {qdsTableApi} from \"./qds-table-api\"\n\n@Directive({\n  selector: \"[q-table-column-drop-indicator]\",\n  standalone: false,\n})\nexport class TableColumnDropIndicatorDirective\n  implements OnInit, SignalifyInput<QdsTableColumnDropIndicatorProps>\n{\n  /**\n   * The closest edge of the column that the indicator is being dragged over.\n   */\n  readonly closestEdge = input<\n    \"top\" | \"bottom\" | \"left\" | \"right\" | undefined\n  >()\n\n  /**\n   * The index of the column that the indicator belongs to.\n   */\n  readonly columnIndex = input<number | undefined, unknown>(undefined, {\n    transform: numberAttribute,\n  })\n\n  /**\n   * The index of the column being dragged.\n   */\n  readonly sourceColumnIndex = input<number | undefined, unknown>(undefined, {\n    transform: numberAttribute,\n  })\n\n  protected readonly trackBindings = useTrackBindings(() =>\n    qdsTableApi.getColumnDropIndicatorBindings({\n      closestEdge: this.closestEdge(),\n      columnIndex: this.columnIndex(),\n      sourceColumnIndex: this.sourceColumnIndex(),\n    }),\n  )\n\n  ngOnInit() {\n    this.trackBindings()\n  }\n}\n","// Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.\n// SPDX-License-Identifier: BSD-3-Clause-Clear\n\nimport {\n  booleanAttribute,\n  Component,\n  computed,\n  input,\n  type OnInit,\n} from \"@angular/core\"\nimport {Funnel} from \"lucide-angular\"\n\nimport {useInlineIconButtonApi} from \"@qualcomm-ui/angular/inline-icon-button\"\nimport {\n  type LucideIconOrString,\n  provideIcons,\n} from \"@qualcomm-ui/angular-core/lucide\"\nimport {useTrackBindings} from \"@qualcomm-ui/angular-core/machine\"\nimport type {SignalifyInput} from \"@qualcomm-ui/angular-core/signals\"\nimport type {Header} from \"@qualcomm-ui/core/table\"\nimport type {QdsTableColumnFilterProps} from \"@qualcomm-ui/qds-core/table\"\nimport type {Booleanish} from \"@qualcomm-ui/utils/coercion\"\nimport {mergeProps} from \"@qualcomm-ui/utils/merge-props\"\n\nimport {qdsTableApi} from \"./qds-table-api\"\n\n@Component({\n  providers: [provideIcons({Funnel})],\n  selector: \"[q-table-column-filter-action]\",\n  standalone: false,\n  template: `\n    @if (filterable()) {\n      <svg\n        [q-bind]=\"inlineIconButtonApi().getIconBindings()\"\n        [qIcon]=\"icon()\"\n      ></svg>\n    }\n  `,\n})\nexport class TableColumnFilterActionDirective\n  implements OnInit, SignalifyInput<QdsTableColumnFilterProps>\n{\n  /**\n   * Whether the column can be filtered. Pass in the state from the column:\n   *\n   * @example\n   * ```angular-html\n   * <button\n   *   q-table-column-filter-action\n   *   [canFilter]=\"header.column.getCanFilter()\"\n   * ></button>\n   * ```\n   */\n  readonly canFilter = input<boolean | undefined, Booleanish>(undefined, {\n    transform: booleanAttribute,\n  })\n\n  /**\n   * Whether the column is filtered. Pass in the state from the column:\n   *\n   * @example\n   * ```angular-html\n   * <button\n   *   q-table-column-filter-action\n   *   [isFiltered]=\"header.column.getIsFiltered()\"\n   * ></button>\n   * ```\n   */\n  readonly isFiltered = input<boolean | undefined, Booleanish>(undefined, {\n    transform: booleanAttribute,\n  })\n\n  /**\n   * The column header associated with the filter.\n   */\n  readonly header = input<Header<any>>()\n\n  /**\n   * Lucide icon to display inside the button.\n   *\n   * @default \"Funnel\"\n   */\n  readonly icon = input<LucideIconOrString>(\"Funnel\")\n\n  protected readonly filterable = computed(\n    () => this.canFilter() || this.header()?.column.getCanFilter(),\n  )\n\n  protected readonly inlineIconButtonApi = useInlineIconButtonApi({\n    emphasis: \"neutral\",\n    size: \"sm\",\n    variant: \"fixed\",\n  })\n\n  protected readonly trackBindings = useTrackBindings(() =>\n    mergeProps(\n      this.inlineIconButtonApi().getRootBindings(),\n      qdsTableApi.getColumnFilterActionBindings({\n        canFilter: this.canFilter(),\n        header: this.header(),\n        isFiltered: this.isFiltered(),\n      }),\n    ),\n  )\n\n  ngOnInit() {\n    this.trackBindings()\n  }\n}\n","// Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.\n// SPDX-License-Identifier: BSD-3-Clause-Clear\n\nimport {Component, input, type OnInit} from \"@angular/core\"\n\nimport {useInlineIconButtonApi} from \"@qualcomm-ui/angular/inline-icon-button\"\nimport type {LucideIconOrString} from \"@qualcomm-ui/angular-core/lucide\"\nimport {useTrackBindings} from \"@qualcomm-ui/angular-core/machine\"\nimport {mergeProps} from \"@qualcomm-ui/utils/merge-props\"\n\nimport {qdsTableApi} from \"./qds-table-api\"\n\n@Component({\n  selector: \"[q-table-column-header-action]\",\n  standalone: false,\n  template: `\n    <svg\n      [q-bind]=\"inlineIconButtonApi().getIconBindings()\"\n      [qIcon]=\"icon()\"\n    ></svg>\n  `,\n})\nexport class TableColumnHeaderActionDirective implements OnInit {\n  /**\n   * Lucide icon to display inside the button.\n   */\n  readonly icon = input.required<LucideIconOrString>()\n\n  protected readonly inlineIconButtonApi = useInlineIconButtonApi({\n    emphasis: \"neutral\",\n    size: \"sm\",\n    variant: \"fixed\",\n  })\n\n  protected readonly trackBindings = useTrackBindings(() =>\n    mergeProps(\n      this.inlineIconButtonApi().getRootBindings(),\n      qdsTableApi.getColumnHeaderActionBindings(),\n    ),\n  )\n\n  ngOnInit() {\n    this.trackBindings()\n  }\n}\n","// Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.\n// SPDX-License-Identifier: BSD-3-Clause-Clear\n\nimport {Component, input, type OnInit} from \"@angular/core\"\nimport {UnfoldHorizontal} from \"lucide-angular\"\n\nimport {useInlineIconButtonApi} from \"@qualcomm-ui/angular/inline-icon-button\"\nimport {\n  type LucideIconOrString,\n  provideIcons,\n} from \"@qualcomm-ui/angular-core/lucide\"\nimport {useTrackBindings} from \"@qualcomm-ui/angular-core/machine\"\nimport type {SignalifyInput} from \"@qualcomm-ui/angular-core/signals\"\nimport type {Header} from \"@qualcomm-ui/core/table\"\nimport type {QdsTableColumnResizerProps} from \"@qualcomm-ui/qds-core/table\"\nimport {mergeProps} from \"@qualcomm-ui/utils/merge-props\"\n\nimport {qdsTableApi} from \"./qds-table-api\"\n\n@Component({\n  providers: [provideIcons({UnfoldHorizontal})],\n  selector: \"[q-table-column-resize-handle]\",\n  standalone: false,\n  template: `\n    <svg\n      [q-bind]=\"inlineIconButtonApi().getIconBindings()\"\n      [qIcon]=\"icon()\"\n    ></svg>\n  `,\n})\nexport class TableColumnResizeHandleDirective\n  implements OnInit, SignalifyInput<QdsTableColumnResizerProps>\n{\n  /**\n   * The column header associated with the resize handle.\n   */\n  readonly header = input.required<Header<any>>()\n\n  /**\n   * Lucide icon to display inside the button.\n   *\n   * @default \"UnfoldHorizontal\"\n   */\n  readonly icon = input<LucideIconOrString>(\"UnfoldHorizontal\")\n\n  protected readonly inlineIconButtonApi = useInlineIconButtonApi({\n    emphasis: \"neutral\",\n    size: \"sm\",\n    variant: \"fixed\",\n  })\n\n  protected readonly trackBindings = useTrackBindings(() =>\n    mergeProps(\n      this.inlineIconButtonApi().getRootBindings(),\n      qdsTableApi.getColumnResizerBindings({\n        header: this.header(),\n      }),\n    ),\n  )\n\n  ngOnInit() {\n    this.trackBindings()\n  }\n}\n","// Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.\n// SPDX-License-Identifier: BSD-3-Clause-Clear\n\nimport {Component, computed, input, type OnInit} from \"@angular/core\"\nimport {ArrowDownUp, ArrowUp} from \"lucide-angular\"\n\nimport {useInlineIconButtonApi} from \"@qualcomm-ui/angular/inline-icon-button\"\nimport {\n  type LucideIconOrString,\n  provideIcons,\n} from \"@qualcomm-ui/angular-core/lucide\"\nimport {useTrackBindings} from \"@qualcomm-ui/angular-core/machine\"\nimport type {SignalifyInput} from \"@qualcomm-ui/angular-core/signals\"\nimport type {Header, SortDirection} from \"@qualcomm-ui/core/table\"\nimport type {QdsTableColumnSortActionProps} from \"@qualcomm-ui/qds-core/table\"\nimport {mergeProps} from \"@qualcomm-ui/utils/merge-props\"\n\nimport {qdsTableApi} from \"./qds-table-api\"\n\n@Component({\n  providers: [provideIcons({ArrowDownUp, ArrowUp})],\n  selector: \"[q-table-column-sort-action]\",\n  standalone: false,\n  template: `\n    @if (canSort()) {\n      <svg\n        [q-bind]=\"inlineIconButtonApi().getIconBindings()\"\n        [qIcon]=\"sortIcon()\"\n      ></svg>\n    }\n  `,\n})\nexport class TableColumnSortActionDirective\n  implements OnInit, SignalifyInput<QdsTableColumnSortActionProps>\n{\n  /**\n   * Whether the column is sorted. Pass in the state from the column:\n   *\n   * @example\n   * ```angular-html\n   * <button\n   *   q-table-column-sort-action\n   *   [isSorted]=\"column.getIsSorted()\">\n   * </button>\n   * ```\n   */\n  readonly isSorted = input<false | SortDirection>(false)\n\n  /**\n   * The column header associated with the sort action.\n   */\n  readonly header = input.required<Header<any>>()\n\n  protected readonly canSort = computed(() => this.header().column.getCanSort())\n\n  protected readonly sortIcon = computed((): LucideIconOrString => {\n    const sortDirection = this.isSorted() || this.header().column.getIsSorted()\n    return sortDirection ? \"ArrowUp\" : \"ArrowDownUp\"\n  })\n\n  protected readonly inlineIconButtonApi = useInlineIconButtonApi({\n    emphasis: \"neutral\",\n    size: \"sm\",\n    variant: \"fixed\",\n  })\n\n  protected readonly trackBindings = useTrackBindings(() =>\n    mergeProps(\n      this.inlineIconButtonApi().getRootBindings(),\n      qdsTableApi.getColumnSortActionBindings({\n        header: this.header(),\n        isSorted: this.isSorted() || this.header().column.getIsSorted(),\n      }),\n    ),\n  )\n\n  ngOnInit() {\n    this.trackBindings()\n  }\n}\n","// Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.\n// SPDX-License-Identifier: BSD-3-Clause-Clear\n\nimport {Directive, type OnInit} from \"@angular/core\"\n\nimport {useTrackBindings} from \"@qualcomm-ui/angular-core/machine\"\n\nimport {qdsTableApi} from \"./qds-table-api\"\n\n@Directive({\n  selector: \"[q-table-footer]\",\n  standalone: false,\n})\nexport class TableFooterDirective implements OnInit {\n  protected readonly trackBindings = useTrackBindings(() => {\n    return qdsTableApi.getFooterBindings()\n  })\n\n  ngOnInit() {\n    this.trackBindings()\n  }\n}\n","// Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.\n// SPDX-License-Identifier: BSD-3-Clause-Clear\n\nimport {\n  booleanAttribute,\n  Directive,\n  input,\n  numberAttribute,\n  type OnInit,\n} from \"@angular/core\"\n\nimport {useTrackBindings} from \"@qualcomm-ui/angular-core/machine\"\nimport type {SignalifyInput} from \"@qualcomm-ui/angular-core/signals\"\nimport type {QdsTableHeaderCellProps} from \"@qualcomm-ui/qds-core/table\"\nimport type {Booleanish} from \"@qualcomm-ui/utils/coercion\"\n\nimport {qdsTableApi} from \"./qds-table-api\"\n\n@Directive({\n  selector: \"[q-table-header-cell]\",\n  standalone: false,\n})\nexport class TableHeaderCellDirective\n  implements OnInit, SignalifyInput<QdsTableHeaderCellProps>\n{\n  /**\n   * The order of this column header in the table.\n   */\n  readonly columnIndex = input<number | undefined, unknown>(undefined, {\n    transform: numberAttribute,\n  })\n\n  /**\n   * If `true`, the column header is currently being dragged.\n   */\n  readonly isDragging = input<boolean | undefined, Booleanish>(undefined, {\n    transform: booleanAttribute,\n  })\n\n  /**\n   * If `true`, another column header is being dragged over this header.\n   */\n  readonly isDraggingOver = input<boolean | undefined, Booleanish>(undefined, {\n    transform: booleanAttribute,\n  })\n\n  /**\n   * If `true`, the header is currently being resized.\n   */\n  readonly isResizing = input<boolean | undefined, Booleanish>(undefined, {\n    transform: booleanAttribute,\n  })\n\n  protected readonly trackBindings = useTrackBindings(() =>\n    qdsTableApi.getHeaderCellBindings({\n      columnIndex: this.columnIndex(),\n      isDragging: this.isDragging(),\n      isDraggingOver: this.isDraggingOver(),\n      isResizing: this.isResizing(),\n    }),\n  )\n\n  ngOnInit() {\n    this.trackBindings()\n  }\n}\n","// Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.\n// SPDX-License-Identifier: BSD-3-Clause-Clear\n\nimport {Directive, type OnInit} from \"@angular/core\"\n\nimport {useTrackBindings} from \"@qualcomm-ui/angular-core/machine\"\n\nimport {qdsTableApi} from \"./qds-table-api\"\n\n@Directive({\n  selector: \"[q-table-header]\",\n  standalone: false,\n})\nexport class TableHeaderDirective implements OnInit {\n  protected readonly trackBindings = useTrackBindings(() => {\n    return qdsTableApi.getHeaderBindings()\n  })\n\n  ngOnInit() {\n    this.trackBindings()\n  }\n}\n","// Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.\n// SPDX-License-Identifier: BSD-3-Clause-Clear\n\nimport {computed, Directive} from \"@angular/core\"\n\nimport {\n  PaginationRootDirective,\n  provideQdsPaginationContext,\n} from \"@qualcomm-ui/angular/pagination\"\nimport {providePaginationContext} from \"@qualcomm-ui/angular-core/pagination\"\n\nimport {qdsTableApi} from \"./qds-table-api\"\n\n@Directive({\n  providers: [providePaginationContext(), provideQdsPaginationContext()],\n  selector: \"[q-table-pagination]\",\n  standalone: false,\n})\nexport class TablePaginationDirective extends PaginationRootDirective {\n  constructor() {\n    super()\n    this.trackBindings.extendWith(\n      computed(() => qdsTableApi.getPaginationBindings()),\n    )\n  }\n}\n","// Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.\n// SPDX-License-Identifier: BSD-3-Clause-Clear\n\nimport {booleanAttribute, Directive, input, type OnInit} from \"@angular/core\"\n\nimport {useTrackBindings} from \"@qualcomm-ui/angular-core/machine\"\nimport type {SignalifyInput} from \"@qualcomm-ui/angular-core/signals\"\nimport {\n  type QdsTableApiProps,\n  type QdsTableSize,\n} from \"@qualcomm-ui/qds-core/table\"\nimport type {Booleanish} from \"@qualcomm-ui/utils/coercion\"\n\nimport {qdsTableApi} from \"./qds-table-api\"\n\n@Directive({\n  selector: \"[q-table-root]\",\n  standalone: false,\n})\nexport class TableRootDirective\n  implements OnInit, SignalifyInput<QdsTableApiProps>\n{\n  /**\n   * Whether to show column dividers\n   */\n  readonly showColumnDivider = input<boolean | undefined, Booleanish>(\n    undefined,\n    {\n      transform: booleanAttribute,\n    },\n  )\n\n  /**\n   * Governs the size and padding of table elements and text.\n   *\n   * @default 'md'\n   */\n  readonly size = input<QdsTableSize>()\n\n  protected readonly trackBindings = useTrackBindings(() =>\n    qdsTableApi.getRootBindings({\n      showColumnDivider: this.showColumnDivider(),\n      size: this.size(),\n    }),\n  )\n\n  ngOnInit() {\n    this.trackBindings()\n  }\n}\n","// Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.\n// SPDX-License-Identifier: BSD-3-Clause-Clear\n\nimport {Component, input, type OnInit} from \"@angular/core\"\nimport {GripHorizontal} from \"lucide-angular\"\n\nimport {useInlineIconButtonApi} from \"@qualcomm-ui/angular/inline-icon-button\"\nimport {\n  type LucideIconOrString,\n  provideIcons,\n} from \"@qualcomm-ui/angular-core/lucide\"\nimport {useTrackBindings} from \"@qualcomm-ui/angular-core/machine\"\nimport {mergeProps} from \"@qualcomm-ui/utils/merge-props\"\n\nimport {qdsTableApi} from \"./qds-table-api\"\n\n@Component({\n  providers: [provideIcons({GripHorizontal})],\n  selector: \"[q-table-row-drag-handle]\",\n  standalone: false,\n  template: `\n    <svg\n      [q-bind]=\"inlineIconButtonApi().getIconBindings()\"\n      [qIcon]=\"icon()\"\n    ></svg>\n  `,\n})\nexport class TableRowDragHandleDirective implements OnInit {\n  /**\n   * Lucide icon to display inside the button.\n   *\n   * @default \"GripHorizontal\"\n   */\n  readonly icon = input<LucideIconOrString>(\"GripHorizontal\")\n\n  protected readonly inlineIconButtonApi = useInlineIconButtonApi({\n    emphasis: \"neutral\",\n    size: \"sm\",\n    variant: \"fixed\",\n  })\n\n  protected readonly trackBindings = useTrackBindings(() =>\n    mergeProps(\n      this.inlineIconButtonApi().getRootBindings(),\n      qdsTableApi.getDragHandleBindings(),\n    ),\n  )\n\n  ngOnInit() {\n    this.trackBindings()\n  }\n}\n","// Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.\n// SPDX-License-Identifier: BSD-3-Clause-Clear\n\nimport {Directive, type OnInit} from \"@angular/core\"\n\nimport {useTrackBindings} from \"@qualcomm-ui/angular-core/machine\"\n\nimport {qdsTableApi} from \"./qds-table-api\"\n\n@Directive({\n  selector: \"[q-table-row-drag-preview]\",\n  standalone: false,\n})\nexport class TableRowDragPreviewDirective implements OnInit {\n  protected readonly trackBindings = useTrackBindings(() => {\n    return qdsTableApi.getRowDragPreviewBindings()\n  })\n\n  ngOnInit() {\n    this.trackBindings()\n  }\n}\n","// Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.\n// SPDX-License-Identifier: BSD-3-Clause-Clear\n\nimport {Directive, input, numberAttribute, type OnInit} from \"@angular/core\"\n\nimport {useTrackBindings} from \"@qualcomm-ui/angular-core/machine\"\nimport type {SignalifyInput} from \"@qualcomm-ui/angular-core/signals\"\nimport type {QdsTableRowDropIndicatorProps} from \"@qualcomm-ui/qds-core/table\"\n\nimport {qdsTableApi} from \"./qds-table-api\"\n\n@Directive({\n  selector: \"[q-table-row-drop-indicator]\",\n  standalone: false,\n})\nexport class TableRowDropIndicatorDirective\n  implements OnInit, SignalifyInput<QdsTableRowDropIndicatorProps>\n{\n  /**\n   * The closest edge of the row that the indicator is being dragged over.\n   */\n  readonly closestEdge = input<\n    \"top\" | \"bottom\" | \"left\" | \"right\" | undefined\n  >()\n\n  /**\n   * The index of the row that the indicator belongs to.\n   */\n  readonly rowIndex = input<number | undefined, unknown>(undefined, {\n    transform: numberAttribute,\n  })\n\n  /**\n   * The index of the row being dragged.\n   */\n  readonly sourceIndex = input<number | undefined, unknown>(undefined, {\n    transform: numberAttribute,\n  })\n\n  protected readonly trackBindings = useTrackBindings(() =>\n    qdsTableApi.getRowDropIndicatorBindings({\n      closestEdge: this.closestEdge(),\n      rowIndex: this.rowIndex(),\n      sourceIndex: this.sourceIndex(),\n    }),\n  )\n\n  ngOnInit() {\n    this.trackBindings()\n  }\n}\n","// Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.\n// SPDX-License-Identifier: BSD-3-Clause-Clear\n\nimport {booleanAttribute, Component, input, type OnInit} from \"@angular/core\"\nimport {ChevronRight} from \"lucide-angular\"\n\nimport {useInlineIconButtonApi} from \"@qualcomm-ui/angular/inline-icon-button\"\nimport {\n  type LucideIconOrString,\n  provideIcons,\n} from \"@qualcomm-ui/angular-core/lucide\"\nimport {useTrackBindings} from \"@qualcomm-ui/angular-core/machine\"\nimport type {SignalifyInput} from \"@qualcomm-ui/angular-core/signals\"\nimport type {Row} from \"@qualcomm-ui/core/table\"\nimport type {QdsTableRowExpandButtonProps} from \"@qualcomm-ui/qds-core/table\"\nimport type {Booleanish} from \"@qualcomm-ui/utils/coercion\"\nimport {mergeProps} from \"@qualcomm-ui/utils/merge-props\"\n\nimport {qdsTableApi} from \"./qds-table-api\"\n\n@Component({\n  providers: [provideIcons({ChevronRight})],\n  selector: \"[q-table-row-expand-button]\",\n  standalone: false,\n  template: `\n    <svg\n      [q-bind]=\"inlineIconButtonApi().getIconBindings()\"\n      [qIcon]=\"icon()\"\n    ></svg>\n  `,\n})\nexport class TableRowExpandButtonDirective\n  implements OnInit, SignalifyInput<QdsTableRowExpandButtonProps>\n{\n  /**\n   * Whether the row is expanded. Pass in the state from the row:\n   *\n   * @example\n   * ```angular-html\n   * <button\n   *   q-table-row-expand-button\n   *   [isExpanded]=\"row.getIsExpanded()\"\n   * ></button>\n   * ```\n   */\n  readonly isExpanded = input<boolean | undefined, Booleanish>(undefined, {\n    transform: booleanAttribute,\n  })\n\n  /**\n   * The row associated with the expand button.\n   */\n  readonly row = input.required<Row<any>>()\n\n  /**\n   * Lucide icon to display inside the button.\n   *\n   * @default \"ChevronRight\"\n   */\n  readonly icon = input<LucideIconOrString>(\"ChevronRight\")\n\n  protected readonly inlineIconButtonApi = useInlineIconButtonApi({\n    emphasis: \"neutral\",\n    size: \"sm\",\n    variant: \"fixed\",\n  })\n\n  protected readonly trackBindings = useTrackBindings(() =>\n    mergeProps(\n      this.inlineIconButtonApi().getRootBindings(),\n      qdsTableApi.getRowExpandButtonBindings({\n        isExpanded: this.isExpanded(),\n        row: this.row(),\n      }),\n    ),\n  )\n\n  ngOnInit() {\n    this.trackBindings()\n  }\n}\n","// Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.\n// SPDX-License-Identifier: BSD-3-Clause-Clear\n\nimport {booleanAttribute, Directive, input, type OnInit} from \"@angular/core\"\n\nimport {useTrackBindings} from \"@qualcomm-ui/angular-core/machine\"\nimport type {SignalifyInput} from \"@qualcomm-ui/angular-core/signals\"\nimport type {QdsTableRowProps} from \"@qualcomm-ui/qds-core/table\"\nimport type {Booleanish} from \"@qualcomm-ui/utils/coercion\"\n\nimport {qdsTableApi} from \"./qds-table-api\"\n\n@Directive({\n  selector: \"[q-table-row]\",\n  standalone: false,\n})\nexport class TableRowDirective\n  implements OnInit, SignalifyInput<QdsTableRowProps>\n{\n  /**\n   * If `true`, the row is currently being dragged.\n   */\n  readonly isDragging = input<boolean | undefined, Booleanish>(undefined, {\n    transform: booleanAttribute,\n  })\n\n  /**\n   * If `true`, another row is being dragged over this row.\n   */\n  readonly isDraggingOver = input<boolean | undefined, Booleanish>(undefined, {\n    transform: booleanAttribute,\n  })\n\n  /**\n   * If `true`, the row is currently selected.\n   */\n  readonly isSelected = input<boolean | undefined, Booleanish>(undefined, {\n    transform: booleanAttribute,\n  })\n\n  protected readonly trackBindings = useTrackBindings(() =>\n    qdsTableApi.getRowBindings({\n      isDragging: this.isDragging(),\n      isDraggingOver: this.isDraggingOver(),\n      isSelected: this.isSelected(),\n    }),\n  )\n\n  ngOnInit() {\n    this.trackBindings()\n  }\n}\n","// Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.\n// SPDX-License-Identifier: BSD-3-Clause-Clear\n\nimport {Directive, type OnInit} from \"@angular/core\"\n\nimport {useTrackBindings} from \"@qualcomm-ui/angular-core/machine\"\n\nimport {qdsTableApi} from \"./qds-table-api\"\n\n@Directive({\n  selector: \"[q-table-scroll-container]\",\n  standalone: false,\n})\nexport class TableScrollContainerDirective implements OnInit {\n  protected readonly trackBindings = useTrackBindings(() => {\n    return qdsTableApi.getScrollContainerBindings()\n  })\n\n  ngOnInit() {\n    this.trackBindings()\n  }\n}\n","// Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.\n// SPDX-License-Identifier: BSD-3-Clause-Clear\n\nimport {Directive, type OnInit} from \"@angular/core\"\n\nimport {useTrackBindings} from \"@qualcomm-ui/angular-core/machine\"\n\nimport {qdsTableApi} from \"./qds-table-api\"\n\n@Directive({\n  selector: \"[q-table-table]\",\n  standalone: false,\n})\nexport class TableTableDirective implements OnInit {\n  protected readonly trackBindings = useTrackBindings(() => {\n    return qdsTableApi.getTableBindings()\n  })\n\n  ngOnInit() {\n    this.trackBindings()\n  }\n}\n","// Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.\n// SPDX-License-Identifier: BSD-3-Clause-Clear\n\nimport {Directive, type OnInit} from \"@angular/core\"\n\nimport {useTrackBindings} from \"@qualcomm-ui/angular-core/machine\"\n\nimport {qdsTableApi} from \"./qds-table-api\"\n\n@Directive({\n  selector: \"[q-table-title-bar]\",\n  standalone: false,\n})\nexport class TableTitleBarDirective implements OnInit {\n  protected readonly trackBindings = useTrackBindings(() => {\n    return qdsTableApi.getTitleBarBindings()\n  })\n\n  ngOnInit() {\n    this.trackBindings()\n  }\n}\n","// Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.\n// SPDX-License-Identifier: BSD-3-Clause-Clear\n\nimport {NgModule} from \"@angular/core\"\n\nimport {IconDirective} from \"@qualcomm-ui/angular/icon\"\nimport {QBindDirective} from \"@qualcomm-ui/angular-core/machine\"\n\nimport {\n  RenderCellDirective,\n  RenderFooterDirective,\n  RenderHeaderDirective,\n} from \"./renderers\"\nimport {TableActionBarDirective} from \"./table-action-bar.directive\"\nimport {TableBodyDirective} from \"./table-body.directive\"\nimport {TableCellActionDirective} from \"./table-cell-action.directive\"\nimport {TableCellDirective} from \"./table-cell.directive\"\nimport {TableColumnDragHandleDirective} from \"./table-column-drag-handle.directive\"\nimport {TableColumnDragPreviewDirective} from \"./table-column-drag-preview.directive\"\nimport {TableColumnDropIndicatorDirective} from \"./table-column-drop-indicator.directive\"\nimport {TableColumnFilterActionDirective} from \"./table-column-filter-action.directive\"\nimport {TableColumnHeaderActionDirective} from \"./table-column-header-action.directive\"\nimport {TableColumnResizeHandleDirective} from \"./table-column-resize-handle.directive\"\nimport {TableColumnSortActionDirective} from \"./table-column-sort-action.directive\"\nimport {TableFooterDirective} from \"./table-footer.directive\"\nimport {TableHeaderCellDirective} from \"./table-header-cell.directive\"\nimport {TableHeaderDirective} from \"./table-header.directive\"\nimport {TablePaginationDirective} from \"./table-pagination.directive\"\nimport {TableRootDirective} from \"./table-root.directive\"\nimport {TableRowDragHandleDirective} from \"./table-row-drag-handle.directive\"\nimport {TableRowDragPreviewDirective} from \"./table-row-drag-preview.directive\"\nimport {TableRowDropIndicatorDirective} from \"./table-row-drop-indicator.directive\"\nimport {TableRowExpandButtonDirective} from \"./table-row-expand-button.directive\"\nimport {TableRowDirective} from \"./table-row.directive\"\nimport {TableScrollContainerDirective} from \"./table-scroll-container.directive\"\nimport {TableTableDirective} from \"./table-table.directive\"\nimport {TableTitleBarDirective} from \"./table-title-bar.directive\"\n\n@NgModule({\n  declarations: [\n    TableActionBarDirective,\n    TableBodyDirective,\n    TableCellActionDirective,\n    TableCellDirective,\n    TableColumnDragHandleDirective,\n    TableColumnDragPreviewDirective,\n    TableColumnDropIndicatorDirective,\n    TableColumnFilterActionDirective,\n    TableColumnHeaderActionDirective,\n    TableColumnResizeHandleDirective,\n    TableColumnSortActionDirective,\n    TableFooterDirective,\n    TableHeaderCellDirective,\n    TableHeaderDirective,\n    TablePaginationDirective,\n    TableRootDirective,\n    TableRowDirective,\n    TableRowDragHandleDirective,\n    TableRowDragPreviewDirective,\n    TableRowDropIndicatorDirective,\n    TableRowExpandButtonDirective,\n    TableScrollContainerDirective,\n    TableTableDirective,\n    TableTitleBarDirective,\n    RenderCellDirective,\n    RenderHeaderDirective,\n    RenderFooterDirective,\n  ],\n  exports: [\n    TableActionBarDirective,\n    TableBodyDirective,\n    TableCellActionDirective,\n    TableCellDirective,\n    TableColumnDragHandleDirective,\n    TableColumnDragPreviewDirective,\n    TableColumnDropIndicatorDirective,\n    TableColumnFilterActionDirective,\n    TableColumnHeaderActionDirective,\n    TableColumnResizeHandleDirective,\n    TableColumnSortActionDirective,\n    TableFooterDirective,\n    TableHeaderCellDirective,\n    TableHeaderDirective,\n    TablePaginationDirective,\n    TableRootDirective,\n    TableRowDirective,\n    TableRowDragHandleDirective,\n    TableRowDragPreviewDirective,\n    TableRowDropIndicatorDirective,\n    TableRowExpandButtonDirective,\n    TableScrollContainerDirective,\n    TableTableDirective,\n    TableTitleBarDirective,\n    RenderCellDirective,\n    RenderHeaderDirective,\n    RenderFooterDirective,\n  ],\n  imports: [QBindDirective, IconDirective],\n})\nexport class TableModule {}\n","// Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.\n// SPDX-License-Identifier: BSD-3-Clause-Clear\n\nimport {untracked} from \"@angular/core\"\n\n/**\n * Implementation from @tanstack/angular-query\n * {@link https://github.com/TanStack/query/blob/main/packages/angular-query-experimental/src/util/lazy-init/lazy-init.ts}\n */\nexport function lazyInit<T extends object>(initializer: () => T): T {\n  let object: T | null = null\n\n  const initializeObject = () => {\n    if (!object) {\n      object = untracked(() => initializer())\n    }\n  }\n\n  queueMicrotask(() => initializeObject())\n\n  const table = () => {}\n\n  return new Proxy<T>(table as T, {\n    apply(target: T, thisArg: any, argArray: any[]): any {\n      initializeObject()\n      if (typeof object === \"function\") {\n        return Reflect.apply(object, thisArg, argArray)\n      }\n      return Reflect.apply(target as any, thisArg, argArray)\n    },\n    get(_, prop, receiver) {\n      initializeObject()\n      return Reflect.get(object as T, prop, receiver)\n    },\n    getOwnPropertyDescriptor() {\n      return {\n        configurable: true,\n        enumerable: true,\n      }\n    },\n    has(_, prop) {\n      initializeObject()\n      return Reflect.has(object as T, prop)\n    },\n    ownKeys() {\n      initializeObject()\n      return Reflect.ownKeys(object as T)\n    },\n  })\n}\n","// Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.\n// SPDX-License-Identifier: BSD-3-Clause-Clear\n\nimport {computed, type Signal, untracked} from \"@angular/core\"\n\nimport type {TableInstance} from \"@qualcomm-ui/core/table\"\n\ntype TableSignal<T> = TableInstance<T> & Signal<TableInstance<T>>\n\nexport function proxifyTable<T>(\n  tableSignal: Signal<TableInstance<T>>,\n): TableInstance<T> & Signal<TableInstance<T>> {\n  const internalState = tableSignal as TableSignal<T>\n\n  return new Proxy(internalState, {\n    apply() {\n      return tableSignal()\n    },\n    get(target, property: keyof TableInstance<T>): any {\n      if (target[property]) {\n        return target[property]\n      }\n      const table = untracked(tableSignal)\n      /**\n       * Attempt to convert all accessors into computed ones, excluding handlers as\n       * they do not retain any reactive value\n       */\n      if (property.startsWith(\"get\") && !property.endsWith(\"Handler\")) {\n        const maybeFn = table[property] as () => void\n        if (typeof maybeFn === \"function\") {\n          Object.defineProperty(target, property, {\n            configurable: true,\n            enumerable: true,\n            value: toComputed(tableSignal, maybeFn),\n          })\n          return target[property]\n        }\n      }\n      // @ts-expect-error\n      return (target[property] = table[property])\n    },\n    getOwnPropertyDescriptor() {\n      return {\n        configurable: true,\n        enumerable: true,\n      }\n    },\n    has(_, prop: keyof TableInstance<T>) {\n      return !!untracked(tableSignal)[prop]\n    },\n    ownKeys() {\n      return Reflect.ownKeys(untracked(tableSignal))\n    },\n  })\n}\n\n/**\n * Here we'll handle all types of accessors:\n * - 0 argument -> table.getCanNextPage()\n * - 0~1 arguments -> table.getIsSomeRowsPinned(position?)\n * - 1 required argument -> table.getColumn(columnId)\n * - 1+ argument -> table.getRow(id, searchAll?)\n *\n * Since we are not able to detect the accessor parameters, we'll wrap all accessors\n * into a cached function wrapping a computed that return its value based on the\n * given parameters.\n */\nfunction toComputed<T>(\n  signal: Signal<TableInstance<T>>,\n  fn: (...args: any[]) => any,\n) {\n  const hasArgs = fn.length > 0\n  if (!hasArgs) {\n    return computed(() => {\n      void signal()\n      return fn()\n    })\n  }\n\n  const computedCache: Record<string, Signal<unknown>> = {}\n\n  return (...argsArray: any[]) => {\n    const serializedArgs = serializeArgs(...argsArray)\n    if (computedCache.hasOwnProperty(serializedArgs)) {\n      return computedCache[serializedArgs]?.()\n    }\n    const computedSignal = computed(() => {\n      void signal()\n      return fn(...argsArray)\n    })\n\n    computedCache[serializedArgs] = computedSignal\n\n    return computedSignal()\n  }\n}\n\nfunction serializeArgs(...args: any[]) {\n  return JSON.stringify(args)\n}\n","// Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.\n// SPDX-License-Identifier: BSD-3-Clause-Clear\n\nimport {computed, type Signal, signal} from \"@angular/core\"\n\nimport {\n  createTable,\n  type RowData,\n  type TableInstance,\n  type TableOptions,\n  type TableOptionsResolved,\n  type TableState,\n} from \"@qualcomm-ui/core/table\"\n\nimport {lazyInit} from \"./lazy-signal-initializer\"\nimport {proxifyTable} from \"./proxify-table\"\n\nexport interface AngularTable<TData extends RowData>\n  extends TableInstance<TData>,\n    Signal<TableInstance<TData>> {}\n\nexport function createAngularTable<TData extends RowData>(\n  options: () => TableOptions<TData>,\n): AngularTable<TData> {\n  return lazyInit(() => {\n    const resolvedOptions: any = {\n      onStateChange: () => {},\n      renderFallbackValue: null,\n      state: {},\n      ...options(),\n    }\n\n    const table = createTable(resolvedOptions)\n\n    // By default, manage table state here using the table's initial state\n    const state = signal<TableState>({\n      ...table.initialState,\n    })\n\n    // Compose table options using computed.\n    // This is to allow `tableSignal` to listen and set table options after the\n    // table has been created\n    const updatedOptions = computed<TableOptionsResolved<TData>>(() => {\n      // listen to table state changed\n      const tableState = state()\n      // listen to input options changed\n      const tableOptions = options()\n      return {\n        ...table.options,\n        ...resolvedOptions,\n        ...tableOptions,\n        onStateChange: (updater) => {\n          const value =\n            updater instanceof Function ? updater(tableState) : updater\n          state.set(value)\n          resolvedOptions.onStateChange?.(updater)\n        },\n        state: {...tableState, ...tableOptions.state},\n      }\n    })\n\n    // convert table instance to signal for proxify to listen to any table state and\n    // options changes\n    const tableSignal = computed(\n      () => {\n        table.setOptions(updatedOptions() as any)\n        return table\n      },\n      {\n        equal: () => false,\n      },\n    )\n\n    // proxify Table instance to enable reactive table state changes\n    return proxifyTable(tableSignal as any)\n  }) as any\n}\n","// Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.\n// SPDX-License-Identifier: BSD-3-Clause-Clear\n\nimport {computed, type Signal} from \"@angular/core\"\n\nimport type {RowData} from \"@qualcomm-ui/core/table\"\n\nimport type {AngularTable} from \"./create-angular-table\"\nimport {lazyInit} from \"./lazy-signal-initializer\"\n\nexport interface CreateTablePaginationOptions {\n  /**\n   * The total number of data items. When using manual pagination, you must provide\n   * this for accurate page counts.\n   */\n  totalCount?: Signal<number>\n}\n\nexport interface TablePagination {\n  count: Signal<number>\n  onPageChange: (page: number) => void\n  onPageSizeChange: (rows: number) => void\n  page: Signal<number>\n  pageSize: Signal<number>\n}\n\n/**\n * A helper function that creates an object. The properties on the object derive the\n * QUI Pagination state from the current table state, or update it.\n */\nexport function createTablePagination<TData extends RowData>(\n  table: AngularTable<TData>,\n  opts: CreateTablePaginationOptions = {},\n): TablePagination {\n  return lazyInit<TablePagination>(() => {\n    return {\n      count: computed(() => {\n        // recompute whenever state changes\n        table.getState()\n        const total = opts.totalCount?.()\n        const rows = table.getFilteredRowModel().rows\n        return total || rows.length\n      }),\n      onPageChange: (page: number) => table.setPageIndex(page - 1),\n      onPageSizeChange: table.setPageSize,\n      page: computed(() => table.getState().pagination.pageIndex + 1),\n      pageSize: computed(() => table.getState().pagination.pageSize),\n    }\n  })\n}\n","// Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.\n// SPDX-License-Identifier: BSD-3-Clause-Clear\n\nimport type {InputSignal} from \"@angular/core\"\n\nimport type {\n  CellContext,\n  ColumnMeta,\n  HeaderContext,\n} from \"@qualcomm-ui/core/table\"\n\nexport interface CellComponentContext<\n  TData extends object,\n  TValue = any,\n  TColumnMeta = ColumnMeta,\n> {\n  context:\n    | CellContext<TData, TValue, TColumnMeta>\n    | InputSignal<CellContext<TData, TValue, TColumnMeta>>\n}\n\nexport interface HeaderComponentContext<\n  TData extends object,\n  TValue = any,\n  TColumnMeta = ColumnMeta,\n> {\n  context:\n    | HeaderContext<TData, TValue, TColumnMeta>\n    | InputSignal<HeaderContext<TData, TValue, TColumnMeta>>\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}