cax-design-system 2.2.0 → 2.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/api/public_api.d.ts +1 -0
- package/api/themegeneratorservice.d.ts +12 -0
- package/calendar/calendar.d.ts +2 -1
- package/esm2022/accordion/accordion.mjs +3 -3
- package/esm2022/api/public_api.mjs +2 -1
- package/esm2022/api/themegeneratorservice.mjs +109 -0
- package/esm2022/autocomplete/autocomplete.mjs +3 -3
- package/esm2022/calendar/calendar.mjs +8 -3
- package/esm2022/image/image.mjs +3 -3
- package/esm2022/inputnumber/inputnumber.mjs +11 -5
- package/esm2022/logo/logo.mjs +1 -1
- package/esm2022/navigation/navigation.mjs +33 -6
- package/esm2022/overlaypanel/overlaypanel.mjs +2 -2
- package/esm2022/paginator/paginator.mjs +1 -1
- package/esm2022/splitbutton/splitbutton.mjs +2 -2
- package/esm2022/table/components/column-filter-form-element/column-filter-form-element.mjs +2 -2
- package/esm2022/tableconfiguration/cax-design-system-tableconfiguration.mjs +5 -0
- package/esm2022/tableconfiguration/public_api.mjs +3 -0
- package/esm2022/tableconfiguration/tableconfiguration.mjs +55 -0
- package/esm2022/tableconfiguration/tableconfiguration.module.mjs +16 -0
- package/esm2022/toggleswitch/toggleswitch.mjs +3 -3
- package/fesm2022/cax-design-system-accordion.mjs +2 -2
- package/fesm2022/cax-design-system-accordion.mjs.map +1 -1
- package/fesm2022/cax-design-system-api.mjs +108 -1
- package/fesm2022/cax-design-system-api.mjs.map +1 -1
- package/fesm2022/cax-design-system-autocomplete.mjs +2 -2
- package/fesm2022/cax-design-system-autocomplete.mjs.map +1 -1
- package/fesm2022/cax-design-system-calendar.mjs +7 -2
- package/fesm2022/cax-design-system-calendar.mjs.map +1 -1
- package/fesm2022/cax-design-system-image.mjs +2 -2
- package/fesm2022/cax-design-system-image.mjs.map +1 -1
- package/fesm2022/cax-design-system-inputnumber.mjs +10 -4
- package/fesm2022/cax-design-system-inputnumber.mjs.map +1 -1
- package/fesm2022/cax-design-system-logo.mjs.map +1 -1
- package/fesm2022/cax-design-system-navigation.mjs +32 -5
- package/fesm2022/cax-design-system-navigation.mjs.map +1 -1
- package/fesm2022/cax-design-system-overlaypanel.mjs +2 -2
- package/fesm2022/cax-design-system-paginator.mjs +1 -1
- package/fesm2022/cax-design-system-paginator.mjs.map +1 -1
- package/fesm2022/cax-design-system-splitbutton.mjs +2 -2
- package/fesm2022/cax-design-system-splitbutton.mjs.map +1 -1
- package/fesm2022/cax-design-system-table.mjs +1 -1
- package/fesm2022/cax-design-system-table.mjs.map +1 -1
- package/fesm2022/cax-design-system-tableconfiguration.mjs +75 -0
- package/fesm2022/cax-design-system-tableconfiguration.mjs.map +1 -0
- package/fesm2022/cax-design-system-toggleswitch.mjs +2 -2
- package/fesm2022/cax-design-system-toggleswitch.mjs.map +1 -1
- package/image/image.d.ts +2 -2
- package/inputnumber/inputnumber.d.ts +6 -1
- package/logo/logo.d.ts +1 -1
- package/navigation/navigation.d.ts +11 -1
- package/package.json +288 -282
- package/resources/cax.min.scss +1 -1
- package/resources/cax.scss +743 -355
- package/resources/components/accordion/accordion.scss +2 -0
- package/resources/components/autocomplete/autocomplete.scss +7 -13
- package/resources/components/calendar/calendar.scss +19 -2
- package/resources/components/image/image.scss +4 -9
- package/resources/components/inputnumber/inputnumber.scss +2 -9
- package/resources/components/navigation/navigation.scss +16 -42
- package/resources/components/overlaypanel/overlaypanel.scss +1 -1
- package/resources/components/splitbutton/splitbutton.scss +4 -2
- package/resources/components/tableconfiguration/tableconfiguration.scss +115 -0
- package/resources/logo/dataX-dark.svg +11 -11
- package/resources/logo/dataX-icon-dark.svg +4 -5
- package/resources/logo/dataX-icon.svg +4 -5
- package/resources/logo/dataX.svg +11 -11
- package/tableconfiguration/index.d.ts +5 -0
- package/tableconfiguration/public_api.d.ts +2 -0
- package/tableconfiguration/tableconfiguration.d.ts +15 -0
- package/tableconfiguration/tableconfiguration.module.d.ts +7 -0
- package/resources/logo/usercard.png +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cax-design-system-paginator.mjs","sources":["../../src/app/components/paginator/paginator.ts","../../src/app/components/paginator/paginator.html","../../src/app/components/paginator/paginator.module.ts","../../src/app/components/paginator/cax-design-system-paginator.ts"],"sourcesContent":["import {\n AfterContentInit,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ContentChildren,\n ElementRef,\n EventEmitter,\n Input,\n NgModule,\n OnChanges,\n OnInit,\n Output,\n QueryList,\n SimpleChanges,\n TemplateRef,\n ViewEncapsulation,\n booleanAttribute,\n numberAttribute\n} from '@angular/core';\nimport { Aria, caxConfig, CaxTemplate, SelectItem, SharedModule } from 'cax-design-system/api';\nimport { DropdownChangeEvent } from 'cax-design-system/dropdown';\nimport { Nullable } from 'cax-design-system/ts-helpers';\nimport { PaginatorState } from './paginator.interface';\n\n/**\n * Paginator is a generic component to display content in paged format.\n * @group Components\n */\n@Component({\n selector: 'cax-paginator',\n templateUrl: './paginator.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n styleUrls: ['./paginator.scss'],\n host: {\n class: 'cax-element'\n }\n})\nexport class Paginator implements OnInit, AfterContentInit, OnChanges {\n /**\n * Number of page links to display.\n * @group Props\n */\n @Input({ transform: numberAttribute }) pageLinkSize: number = 5;\n\n /**\n * Inline style of the component.\n * @group Props\n */\n @Input() style: { [klass: string]: any } | null | undefined;\n\n /**\n * Style class of the component.\n * @group Props\n */\n @Input() styleClass: string | undefined;\n\n /**\n * Whether to show it even there is only one page.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) alwaysShow: boolean = true;\n\n /**\n * Target element to attach the dropdown overlay, valid values are \"body\" or a local ng-template variable of another element.\n * @group Props\n */\n @Input() dropdownAppendTo: HTMLElement | ElementRef | TemplateRef<any> | string | null | undefined | any;\n\n /**\n * Template instance to inject into the left side of the paginator.\n * @param {PaginatorState} context - Paginator state.\n * @group Props\n */\n @Input() templateLeft: TemplateRef<PaginatorState> | undefined;\n\n /**\n * Template instance to inject into the right side of the paginator.\n * @param {PaginatorState} context - Paginator state.\n * @group Props\n */\n @Input() templateRight: TemplateRef<PaginatorState> | undefined;\n\n /**\n * Target element to attach the dropdown overlay\n * @group Props\n */\n @Input() appendTo: HTMLElement | ElementRef | TemplateRef<any> | string | null | undefined | any;\n\n /**\n * Dropdown height of the viewport in pixels\n * @group Props\n */\n @Input() dropdownScrollHeight: string = '200px';\n\n /**\n * Template of the current page report element. Available placeholders are {currentPage},{totalPages},{rows},{first},{last} and {totalRecords}\n * @group Props\n */\n @Input() currentPageReportTemplate: string = '{currentPage} of {totalPages}';\n\n /**\n * Whether to display current page report.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) showCurrentPageReport: boolean | undefined;\n\n /**\n * When enabled, icons are displayed on paginator to go first and last page.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) showFirstLastIcon: boolean = true;\n\n /**\n * Number of total records.\n * @group Props\n */\n @Input({ transform: numberAttribute }) totalRecords: number = 0;\n\n /**\n * Data count to display per page.\n * @group Props\n */\n @Input({ transform: numberAttribute }) rows: number = 0;\n\n /**\n * Array of integer/object values to display inside rows per page dropdown.\n * @group Props\n */\n @Input() rowsPerPageOptions: any[] | undefined;\n\n /**\n * Whether to display a dropdown to navigate to any page.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) showJumpToPageDropdown: boolean | undefined;\n\n /**\n * Whether to display an input to navigate to any page.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) showJumpToPageInput: boolean | undefined;\n\n /**\n * Template instance to inject into the jump to page dropdown item.\n * @param {Object} context - item instance.\n * @group Props\n */\n @Input() jumpToPageItemTemplate: TemplateRef<{ $implicit: any }> | undefined;\n\n /**\n * Whether to show page links.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) showPageLinks: boolean = true;\n\n /**\n * Locale to be used in formatting.\n * @group Props\n */\n @Input() locale: string | undefined;\n\n /**\n * Template instance to inject into the rows per page dropdown item.\n * @param {Object} context - item instance.\n * @group Props\n */\n @Input() dropdownItemTemplate: TemplateRef<{ $implicit: any }> | undefined;\n\n /**\n * Zero-relative number of the first row to be displayed.\n * @group Props\n */\n @Input() get first(): number {\n return this._first;\n }\n set first(val: number) {\n this._first = val;\n }\n\n /**\n * Callback to invoke when page changes, the event object contains information about the new state.\n * @param {PaginatorState} event - Paginator state.\n * @group Emits\n */\n @Output() onPageChange: EventEmitter<PaginatorState> = new EventEmitter<PaginatorState>();\n\n @ContentChildren(CaxTemplate) templates: Nullable<QueryList<any>>;\n\n dropdownIconTemplate: Nullable<TemplateRef<any>>;\n firstPageLinkIconTemplate: Nullable<TemplateRef<any>>;\n previousPageLinkIconTemplate: Nullable<TemplateRef<any>>;\n lastPageLinkIconTemplate: Nullable<TemplateRef<any>>;\n nextPageLinkIconTemplate: Nullable<TemplateRef<any>>;\n\n pageLinks: number[] | undefined;\n pageItems: SelectItem[] | undefined;\n rowsPerPageItems: SelectItem[] | undefined;\n paginatorState: any;\n\n _first: number = 0;\n _page: number = 0;\n\n constructor(\n private cd: ChangeDetectorRef,\n private config: caxConfig\n ) {}\n\n ngOnInit() {\n this.updatePaginatorState();\n }\n\n getAriaLabel(labelType: keyof Aria): string | undefined {\n return this.config.translation.aria ? this.config.translation.aria[labelType] : undefined;\n }\n\n getPageAriaLabel(value: number): string | undefined {\n return this.config.translation.aria ? this.config.translation.aria.pageLabel.replace(/{page}/g, `${value}`) : undefined;\n }\n\n getLocalization(digit: number): string {\n const numerals = [...new Intl.NumberFormat(this.locale, { useGrouping: false }).format(9876543210)].reverse();\n const index = new Map(numerals.map((d, i) => [i, d]));\n if (digit > 9) {\n const numbers = String(digit).split('');\n return numbers.map((number) => index.get(Number(number))).join('');\n } else {\n return index.get(digit);\n }\n }\n\n ngAfterContentInit(): void {\n (this.templates as QueryList<CaxTemplate>).forEach((item) => {\n switch (item.getType()) {\n case 'dropdownicon':\n this.dropdownIconTemplate = item.template;\n break;\n case 'firstpagelinkicon':\n this.firstPageLinkIconTemplate = item.template;\n break;\n case 'previouspagelinkicon':\n this.previousPageLinkIconTemplate = item.template;\n break;\n case 'lastpagelinkicon':\n this.lastPageLinkIconTemplate = item.template;\n break;\n case 'nextpagelinkicon':\n this.nextPageLinkIconTemplate = item.template;\n break;\n }\n });\n }\n\n ngOnChanges(simpleChange: SimpleChanges): void {\n if (simpleChange.totalRecords) {\n this.updatePageLinks();\n this.updatePaginatorState();\n this.updateFirst();\n this.updateRowsPerPageOptions();\n }\n\n if (simpleChange.first) {\n this._first = simpleChange.first.currentValue;\n this.updatePageLinks();\n this.updatePaginatorState();\n }\n\n if (simpleChange.rows) {\n this.updatePageLinks();\n this.updatePaginatorState();\n }\n\n if (simpleChange.rowsPerPageOptions) {\n this.updateRowsPerPageOptions();\n }\n\n if (simpleChange.pageLinkSize) {\n this.updatePageLinks();\n }\n }\n\n updateRowsPerPageOptions(): void {\n if (this.rowsPerPageOptions) {\n this.rowsPerPageItems = [];\n for (let opt of this.rowsPerPageOptions) {\n if (typeof opt == 'object' && opt['showAll']) {\n this.rowsPerPageItems.unshift({ label: opt['showAll'], value: this.totalRecords });\n } else {\n this.rowsPerPageItems.push({ label: String(this.getLocalization(opt)), value: opt });\n }\n }\n }\n }\n\n isFirstPage(): boolean {\n return this.getPage() === 0;\n }\n\n isLastPage(): boolean {\n return this.getPage() === this.getPageCount() - 1;\n }\n\n getPageCount(): number {\n return Math.ceil(this.totalRecords / this.rows);\n }\n\n calculatePageLinkBoundaries(): [number, number] {\n let numberOfPages = this.getPageCount(),\n visiblePages = Math.min(this.pageLinkSize, numberOfPages);\n\n //calculate range, keep current in middle if necessary\n let start = Math.max(0, Math.ceil(this.getPage() - visiblePages / 2)),\n end = Math.min(numberOfPages - 1, start + visiblePages - 1);\n\n //check when approaching to last page\n var delta = this.pageLinkSize - (end - start + 1);\n start = Math.max(0, start - delta);\n\n return [start, end];\n }\n\n updatePageLinks(): void {\n this.pageLinks = [];\n let boundaries = this.calculatePageLinkBoundaries(),\n start = boundaries[0],\n end = boundaries[1];\n\n for (let i = start; i <= end; i++) {\n this.pageLinks.push(i + 1);\n }\n\n if (this.showJumpToPageDropdown) {\n this.pageItems = [];\n for (let i = 0; i < this.getPageCount(); i++) {\n this.pageItems.push({ label: String(i + 1), value: i });\n }\n }\n }\n\n changePage(p: number): void {\n var pc = this.getPageCount();\n\n if (p >= 0 && p < pc) {\n this._first = this.rows * p;\n var state = {\n page: p,\n first: this.first,\n rows: this.rows,\n pageCount: pc\n };\n this.updatePageLinks();\n\n this.onPageChange.emit(state);\n this.updatePaginatorState();\n }\n }\n\n updateFirst(): void {\n const page = this.getPage();\n if (page > 0 && this.totalRecords && this.first >= this.totalRecords) {\n Promise.resolve(null).then(() => this.changePage(page - 1));\n }\n }\n\n getPage(): number {\n return Math.floor(this.first / this.rows);\n }\n\n changePageToFirst(event: Event): void {\n if (!this.isFirstPage()) {\n this.changePage(0);\n }\n\n event.preventDefault();\n }\n\n changePageToPrev(event: Event): void {\n this.changePage(this.getPage() - 1);\n event.preventDefault();\n }\n\n changePageToNext(event: Event): void {\n this.changePage(this.getPage() + 1);\n event.preventDefault();\n }\n\n changePageToLast(event: Event): void {\n if (!this.isLastPage()) {\n this.changePage(this.getPageCount() - 1);\n }\n\n event.preventDefault();\n }\n\n onPageLinkClick(event: Event, page: number): void {\n this.changePage(page);\n event.preventDefault();\n }\n\n onRppChange(event: Event): void {\n this.changePage(this.getPage());\n }\n\n onPageDropdownChange(event: DropdownChangeEvent): void {\n this.changePage(event.value);\n }\n\n updatePaginatorState(): void {\n this.paginatorState = {\n page: this.getPage(),\n pageCount: this.getPageCount(),\n rows: this.rows,\n first: this.first,\n totalRecords: this.totalRecords\n };\n }\n\n empty(): boolean {\n return this.getPageCount() === 0;\n }\n\n currentPage(): number {\n return this.getPageCount() > 0 ? this.getPage() + 1 : 0;\n }\n\n get currentPageReport(): string {\n return this.currentPageReportTemplate\n .replace('{currentPage}', String(this.currentPage()))\n .replace('{totalPages}', String(this.getPageCount()))\n .replace('{first}', String(this.totalRecords > 0 ? this._first + 1 : 0))\n .replace('{last}', String(Math.min(this._first + this.rows, this.totalRecords)))\n .replace('{rows}', String(this.rows))\n .replace('{totalRecords}', String(this.totalRecords));\n }\n @Input({ transform: booleanAttribute }) rightAligned: boolean = false;\n isSinglePage(): boolean {\n return this.getPageCount() <= 1;\n }\n\n getPositionClass(): string {\n let positions = [];\n if (this.isSinglePage()) {\n positions.push('single-page');\n } else {\n if (this.isFirstPage()) positions.push('at-first-page');\n if (this.isLastPage()) positions.push('at-last-page');\n }\n if (this.rightAligned) positions.push('right-aligned');\n return positions.join(' ');\n }\n}\n","<div [class]=\"styleClass\" [ngStyle]=\"style\" [ngClass]=\"['cax-paginator cax-component', getPositionClass()]\" *ngIf=\"alwaysShow ? true : pageLinks && pageLinks.length > 1\" [attr.data-pc-section]=\"'paginator'\" [attr.data-pc-section]=\"'root'\">\r\n <div class=\"cax-paginator-left-content\" *ngIf=\"templateLeft\" [attr.data-pc-section]=\"'start'\">\r\n <ng-container *ngTemplateOutlet=\"templateLeft; context: { $implicit: paginatorState }\"></ng-container>\r\n </div>\r\n <span class=\"cax-paginator-current\" *ngIf=\"showCurrentPageReport\">{{ currentPageReport }}</span>\r\n <button\r\n *ngIf=\"showFirstLastIcon\"\r\n type=\"button\"\r\n [disabled]=\"isFirstPage() || empty()\"\r\n (click)=\"changePageToFirst($event)\"\r\n caxRipple\r\n class=\"cax-paginator-first cax-paginator-element cax-link\"\r\n [ngClass]=\"{ 'cax-disabled': isFirstPage() || empty() }\"\r\n [attr.aria-label]=\"getAriaLabel('firstPageLabel')\"\r\n >\r\n <AngleDoubleLeftIcon *ngIf=\"!firstPageLinkIconTemplate\" [styleClass]=\"'cax-paginator-icon'\" />\r\n <span class=\"cax-paginator-icon\" *ngIf=\"firstPageLinkIconTemplate\">\r\n <ng-template *ngTemplateOutlet=\"firstPageLinkIconTemplate\"></ng-template>\r\n </span>\r\n </button>\r\n <button\r\n type=\"button\"\r\n [disabled]=\"isFirstPage() || empty()\"\r\n (click)=\"changePageToPrev($event)\"\r\n caxRipple\r\n class=\"cax-paginator-prev cax-paginator-element cax-link\"\r\n [ngClass]=\"{ 'cax-disabled': isFirstPage() || empty() }\"\r\n [attr.aria-label]=\"getAriaLabel('prevPageLabel')\"\r\n >\r\n <AngleLeftIcon *ngIf=\"!previousPageLinkIconTemplate\" [styleClass]=\"'cax-paginator-icon'\" />\r\n <span class=\"cax-paginator-icon\" *ngIf=\"previousPageLinkIconTemplate\">\r\n <ng-template *ngTemplateOutlet=\"previousPageLinkIconTemplate\"></ng-template>\r\n </span>\r\n </button>\r\n <span class=\"cax-paginator-pages\" *ngIf=\"showPageLinks\">\r\n <button\r\n type=\"button\"\r\n *ngFor=\"let pageLink of pageLinks\"\r\n class=\"cax-paginator-page cax-paginator-element cax-link\"\r\n [ngClass]=\"{ 'cax-highlight': pageLink - 1 == getPage() }\"\r\n [attr.aria-label]=\"getPageAriaLabel(pageLink)\"\r\n [attr.aria-current]=\"pageLink - 1 == getPage() ? 'page' : undefined\"\r\n (click)=\"onPageLinkClick($event, pageLink - 1)\"\r\n caxRipple\r\n >\r\n {{ getLocalization(pageLink) }}\r\n </button>\r\n </span>\r\n <cax-dropdown\r\n [options]=\"pageItems\"\r\n [ngModel]=\"getPage()\"\r\n *ngIf=\"showJumpToPageDropdown\"\r\n [disabled]=\"empty()\"\r\n [attr.aria-label]=\"getAriaLabel('jumpToPageDropdownLabel')\"\r\n styleClass=\"cax-paginator-page-options\"\r\n (onChange)=\"onPageDropdownChange($event)\"\r\n [appendTo]=\"dropdownAppendTo\"\r\n [scrollHeight]=\"dropdownScrollHeight\"\r\n >\r\n <ng-template caxTemplate=\"selectedItem\">{{ currentPageReport }}</ng-template>\r\n <ng-container *ngIf=\"jumpToPageItemTemplate\">\r\n <ng-template let-item caxTemplate=\"item\">\r\n <ng-container *ngTemplateOutlet=\"jumpToPageItemTemplate; context: { $implicit: item }\"> </ng-container>\r\n </ng-template>\r\n </ng-container>\r\n <ng-template caxTemplate=\"dropdownicon\" *ngIf=\"dropdownIconTemplate\">\r\n <ng-container *ngTemplateOutlet=\"dropdownIconTemplate\"></ng-container>\r\n </ng-template>\r\n </cax-dropdown>\r\n <button\r\n type=\"button\"\r\n [disabled]=\"isLastPage() || empty()\"\r\n (click)=\"changePageToNext($event)\"\r\n caxRipple\r\n class=\"cax-paginator-next cax-paginator-element cax-link\"\r\n [ngClass]=\"{ 'cax-disabled': isLastPage() || empty() }\"\r\n [attr.aria-label]=\"getAriaLabel('nextPageLabel')\"\r\n >\r\n <AngleRightIcon *ngIf=\"!nextPageLinkIconTemplate\" [styleClass]=\"'cax-paginator-icon'\" />\r\n <span class=\"cax-paginator-icon\" *ngIf=\"nextPageLinkIconTemplate\">\r\n <ng-template *ngTemplateOutlet=\"nextPageLinkIconTemplate\"></ng-template>\r\n </span>\r\n </button>\r\n <button\r\n *ngIf=\"showFirstLastIcon\"\r\n type=\"button\"\r\n [disabled]=\"isLastPage() || empty()\"\r\n (click)=\"changePageToLast($event)\"\r\n caxRipple\r\n class=\"cax-paginator-last cax-paginator-element cax-link\"\r\n [ngClass]=\"{ 'cax-disabled': isLastPage() || empty() }\"\r\n [attr.aria-label]=\"getAriaLabel('lastPageLabel')\"\r\n >\r\n <AngleDoubleRightIcon *ngIf=\"!lastPageLinkIconTemplate\" [styleClass]=\"'cax-paginator-icon'\" />\r\n <span class=\"cax-paginator-icon\" *ngIf=\"lastPageLinkIconTemplate\">\r\n <ng-template *ngTemplateOutlet=\"lastPageLinkIconTemplate\"></ng-template>\r\n </span>\r\n </button>\r\n <span class=\"cax-paginator-page-label\" *ngIf=\"showJumpToPageInput\">Go to page</span>\r\n <cax-inputNumber *ngIf=\"showJumpToPageInput\" [ngModel]=\"currentPage()\" class=\"cax-paginator-page-input\" [disabled]=\"empty()\" (ngModelChange)=\"changePage($event - 1)\"></cax-inputNumber>\r\n <cax-dropdown\r\n [options]=\"rowsPerPageItems\"\r\n [(ngModel)]=\"rows\"\r\n *ngIf=\"rowsPerPageOptions\"\r\n styleClass=\"cax-paginator-rpp-options\"\r\n [disabled]=\"empty()\"\r\n (onChange)=\"onRppChange($event)\"\r\n [appendTo]=\"dropdownAppendTo\"\r\n [scrollHeight]=\"dropdownScrollHeight\"\r\n [ariaLabel]=\"getAriaLabel('rowsPerPageLabel')\"\r\n >\r\n <ng-container *ngIf=\"dropdownItemTemplate\"> \r\n <ng-template let-item caxTemplate=\"item\">\r\n <ng-container *ngTemplateOutlet=\"dropdownItemTemplate; context: { $implicit: item }\"> </ng-container>\r\n </ng-template>\r\n </ng-container>\r\n <ng-template caxTemplate=\"dropdownicon\" *ngIf=\"dropdownIconTemplate\">\r\n <ng-container *ngTemplateOutlet=\"dropdownIconTemplate\"></ng-container>\r\n </ng-template>\r\n </cax-dropdown>\r\n <div class=\"cax-paginator-right-content\" *ngIf=\"templateRight\" [attr.data-pc-section]=\"'end'\">\r\n <ng-container *ngTemplateOutlet=\"templateRight; context: { $implicit: paginatorState }\"></ng-container>\r\n </div>\r\n</div>","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { FormsModule } from '@angular/forms';\nimport { DropdownModule } from 'cax-design-system/dropdown';\nimport { InputNumberModule } from 'cax-design-system/inputnumber';\nimport { SharedModule } from 'cax-design-system/api';\nimport { RippleModule } from 'cax-design-system/ripple';\nimport { AngleDoubleLeftIcon } from 'cax-design-system/icons/angledoubleleft';\nimport { AngleDoubleRightIcon } from 'cax-design-system/icons/angledoubleright';\nimport { AngleLeftIcon } from 'cax-design-system/icons/angleleft';\nimport { AngleRightIcon } from 'cax-design-system/icons/angleright';\n\nimport { Paginator } from './paginator';\n\n@NgModule({\n imports: [CommonModule, DropdownModule, InputNumberModule, FormsModule, SharedModule, RippleModule, AngleDoubleLeftIcon, AngleDoubleRightIcon, AngleLeftIcon, AngleRightIcon],\n exports: [Paginator, DropdownModule, InputNumberModule, FormsModule, SharedModule],\n declarations: [Paginator]\n})\nexport class PaginatorModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"cax-design-system-paginator.mjs","sources":["../../src/app/components/paginator/paginator.ts","../../src/app/components/paginator/paginator.html","../../src/app/components/paginator/paginator.module.ts","../../src/app/components/paginator/cax-design-system-paginator.ts"],"sourcesContent":["import {\n AfterContentInit,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ContentChildren,\n ElementRef,\n EventEmitter,\n Input,\n NgModule,\n OnChanges,\n OnInit,\n Output,\n QueryList,\n SimpleChanges,\n TemplateRef,\n ViewEncapsulation,\n booleanAttribute,\n numberAttribute\n} from '@angular/core';\nimport { Aria, caxConfig, CaxTemplate, SelectItem, SharedModule } from 'cax-design-system/api';\nimport { DropdownChangeEvent } from 'cax-design-system/dropdown';\nimport { Nullable } from 'cax-design-system/ts-helpers';\nimport { PaginatorState } from './paginator.interface';\n\n/**\n * Paginator is a generic component to display content in paged format.\n * @group Components\n */\n@Component({\n selector: 'cax-paginator',\n templateUrl: './paginator.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n styleUrls: ['./paginator.scss'],\n host: {\n class: 'cax-element'\n }\n})\nexport class Paginator implements OnInit, AfterContentInit, OnChanges {\n /**\n * Number of page links to display.\n * @group Props\n */\n @Input({ transform: numberAttribute }) pageLinkSize: number = 5;\n\n /**\n * Inline style of the component.\n * @group Props\n */\n @Input() style: { [klass: string]: any } | null | undefined;\n\n /**\n * Style class of the component.\n * @group Props\n */\n @Input() styleClass: string | undefined;\n\n /**\n * Whether to show it even there is only one page.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) alwaysShow: boolean = true;\n\n /**\n * Target element to attach the dropdown overlay, valid values are \"body\" or a local ng-template variable of another element.\n * @group Props\n */\n @Input() dropdownAppendTo: HTMLElement | ElementRef | TemplateRef<any> | string | null | undefined | any;\n\n /**\n * Template instance to inject into the left side of the paginator.\n * @param {PaginatorState} context - Paginator state.\n * @group Props\n */\n @Input() templateLeft: TemplateRef<PaginatorState> | undefined;\n\n /**\n * Template instance to inject into the right side of the paginator.\n * @param {PaginatorState} context - Paginator state.\n * @group Props\n */\n @Input() templateRight: TemplateRef<PaginatorState> | undefined;\n\n /**\n * Target element to attach the dropdown overlay\n * @group Props\n */\n @Input() appendTo: HTMLElement | ElementRef | TemplateRef<any> | string | null | undefined | any;\n\n /**\n * Dropdown height of the viewport in pixels\n * @group Props\n */\n @Input() dropdownScrollHeight: string = '200px';\n\n /**\n * Template of the current page report element. Available placeholders are {currentPage},{totalPages},{rows},{first},{last} and {totalRecords}\n * @group Props\n */\n @Input() currentPageReportTemplate: string = '{currentPage} of {totalPages}';\n\n /**\n * Whether to display current page report.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) showCurrentPageReport: boolean | undefined;\n\n /**\n * When enabled, icons are displayed on paginator to go first and last page.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) showFirstLastIcon: boolean = true;\n\n /**\n * Number of total records.\n * @group Props\n */\n @Input({ transform: numberAttribute }) totalRecords: number = 0;\n\n /**\n * Data count to display per page.\n * @group Props\n */\n @Input({ transform: numberAttribute }) rows: number = 0;\n\n /**\n * Array of integer/object values to display inside rows per page dropdown.\n * @group Props\n */\n @Input() rowsPerPageOptions: any[] | undefined;\n\n /**\n * Whether to display a dropdown to navigate to any page.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) showJumpToPageDropdown: boolean | undefined;\n\n /**\n * Whether to display an input to navigate to any page.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) showJumpToPageInput: boolean | undefined;\n\n /**\n * Template instance to inject into the jump to page dropdown item.\n * @param {Object} context - item instance.\n * @group Props\n */\n @Input() jumpToPageItemTemplate: TemplateRef<{ $implicit: any }> | undefined;\n\n /**\n * Whether to show page links.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) showPageLinks: boolean = true;\n\n /**\n * Locale to be used in formatting.\n * @group Props\n */\n @Input() locale: string | undefined;\n\n /**\n * Template instance to inject into the rows per page dropdown item.\n * @param {Object} context - item instance.\n * @group Props\n */\n @Input() dropdownItemTemplate: TemplateRef<{ $implicit: any }> | undefined;\n\n /**\n * Zero-relative number of the first row to be displayed.\n * @group Props\n */\n @Input() get first(): number {\n return this._first;\n }\n set first(val: number) {\n this._first = val;\n }\n\n /**\n * Callback to invoke when page changes, the event object contains information about the new state.\n * @param {PaginatorState} event - Paginator state.\n * @group Emits\n */\n @Output() onPageChange: EventEmitter<PaginatorState> = new EventEmitter<PaginatorState>();\n\n @ContentChildren(CaxTemplate) templates: Nullable<QueryList<any>>;\n\n dropdownIconTemplate: Nullable<TemplateRef<any>>;\n firstPageLinkIconTemplate: Nullable<TemplateRef<any>>;\n previousPageLinkIconTemplate: Nullable<TemplateRef<any>>;\n lastPageLinkIconTemplate: Nullable<TemplateRef<any>>;\n nextPageLinkIconTemplate: Nullable<TemplateRef<any>>;\n\n pageLinks: number[] | undefined;\n pageItems: SelectItem[] | undefined;\n rowsPerPageItems: SelectItem[] | undefined;\n paginatorState: any;\n\n _first: number = 0;\n _page: number = 0;\n\n constructor(\n private cd: ChangeDetectorRef,\n private config: caxConfig\n ) {}\n\n ngOnInit() {\n this.updatePaginatorState();\n }\n\n getAriaLabel(labelType: keyof Aria): string | undefined {\n return this.config.translation.aria ? this.config.translation.aria[labelType] : undefined;\n }\n\n getPageAriaLabel(value: number): string | undefined {\n return this.config.translation.aria ? this.config.translation.aria.pageLabel.replace(/{page}/g, `${value}`) : undefined;\n }\n\n getLocalization(digit: number): string {\n const numerals = [...new Intl.NumberFormat(this.locale, { useGrouping: false }).format(9876543210)].reverse();\n const index = new Map(numerals.map((d, i) => [i, d]));\n if (digit > 9) {\n const numbers = String(digit).split('');\n return numbers.map((number) => index.get(Number(number))).join('');\n } else {\n return index.get(digit);\n }\n }\n\n ngAfterContentInit(): void {\n (this.templates as QueryList<CaxTemplate>).forEach((item) => {\n switch (item.getType()) {\n case 'dropdownicon':\n this.dropdownIconTemplate = item.template;\n break;\n case 'firstpagelinkicon':\n this.firstPageLinkIconTemplate = item.template;\n break;\n case 'previouspagelinkicon':\n this.previousPageLinkIconTemplate = item.template;\n break;\n case 'lastpagelinkicon':\n this.lastPageLinkIconTemplate = item.template;\n break;\n case 'nextpagelinkicon':\n this.nextPageLinkIconTemplate = item.template;\n break;\n }\n });\n }\n\n ngOnChanges(simpleChange: SimpleChanges): void {\n if (simpleChange.totalRecords) {\n this.updatePageLinks();\n this.updatePaginatorState();\n this.updateFirst();\n this.updateRowsPerPageOptions();\n }\n\n if (simpleChange.first) {\n this._first = simpleChange.first.currentValue;\n this.updatePageLinks();\n this.updatePaginatorState();\n }\n\n if (simpleChange.rows) {\n this.updatePageLinks();\n this.updatePaginatorState();\n }\n\n if (simpleChange.rowsPerPageOptions) {\n this.updateRowsPerPageOptions();\n }\n\n if (simpleChange.pageLinkSize) {\n this.updatePageLinks();\n }\n }\n\n updateRowsPerPageOptions(): void {\n if (this.rowsPerPageOptions) {\n this.rowsPerPageItems = [];\n for (let opt of this.rowsPerPageOptions) {\n if (typeof opt == 'object' && opt['showAll']) {\n this.rowsPerPageItems.unshift({ label: opt['showAll'], value: this.totalRecords });\n } else {\n this.rowsPerPageItems.push({ label: String(this.getLocalization(opt)), value: opt });\n }\n }\n }\n }\n\n isFirstPage(): boolean {\n return this.getPage() === 0;\n }\n\n isLastPage(): boolean {\n return this.getPage() === this.getPageCount() - 1;\n }\n\n getPageCount(): number {\n return Math.ceil(this.totalRecords / this.rows);\n }\n\n calculatePageLinkBoundaries(): [number, number] {\n let numberOfPages = this.getPageCount(),\n visiblePages = Math.min(this.pageLinkSize, numberOfPages);\n\n //calculate range, keep current in middle if necessary\n let start = Math.max(0, Math.ceil(this.getPage() - visiblePages / 2)),\n end = Math.min(numberOfPages - 1, start + visiblePages - 1);\n\n //check when approaching to last page\n var delta = this.pageLinkSize - (end - start + 1);\n start = Math.max(0, start - delta);\n\n return [start, end];\n }\n\n updatePageLinks(): void {\n this.pageLinks = [];\n let boundaries = this.calculatePageLinkBoundaries(),\n start = boundaries[0],\n end = boundaries[1];\n\n for (let i = start; i <= end; i++) {\n this.pageLinks.push(i + 1);\n }\n\n if (this.showJumpToPageDropdown) {\n this.pageItems = [];\n for (let i = 0; i < this.getPageCount(); i++) {\n this.pageItems.push({ label: String(i + 1), value: i });\n }\n }\n }\n\n changePage(p: number): void {\n var pc = this.getPageCount();\n\n if (p >= 0 && p < pc) {\n this._first = this.rows * p;\n var state = {\n page: p,\n first: this.first,\n rows: this.rows,\n pageCount: pc\n };\n this.updatePageLinks();\n\n this.onPageChange.emit(state);\n this.updatePaginatorState();\n }\n }\n\n updateFirst(): void {\n const page = this.getPage();\n if (page > 0 && this.totalRecords && this.first >= this.totalRecords) {\n Promise.resolve(null).then(() => this.changePage(page - 1));\n }\n }\n\n getPage(): number {\n return Math.floor(this.first / this.rows);\n }\n\n changePageToFirst(event: Event): void {\n if (!this.isFirstPage()) {\n this.changePage(0);\n }\n\n event.preventDefault();\n }\n\n changePageToPrev(event: Event): void {\n this.changePage(this.getPage() - 1);\n event.preventDefault();\n }\n\n changePageToNext(event: Event): void {\n this.changePage(this.getPage() + 1);\n event.preventDefault();\n }\n\n changePageToLast(event: Event): void {\n if (!this.isLastPage()) {\n this.changePage(this.getPageCount() - 1);\n }\n\n event.preventDefault();\n }\n\n onPageLinkClick(event: Event, page: number): void {\n this.changePage(page);\n event.preventDefault();\n }\n\n onRppChange(event: Event): void {\n this.changePage(this.getPage());\n }\n\n onPageDropdownChange(event: DropdownChangeEvent): void {\n this.changePage(event.value);\n }\n\n updatePaginatorState(): void {\n this.paginatorState = {\n page: this.getPage(),\n pageCount: this.getPageCount(),\n rows: this.rows,\n first: this.first,\n totalRecords: this.totalRecords\n };\n }\n\n empty(): boolean {\n return this.getPageCount() === 0;\n }\n\n currentPage(): number {\n return this.getPageCount() > 0 ? this.getPage() + 1 : 0;\n }\n\n get currentPageReport(): string {\n return this.currentPageReportTemplate\n .replace('{currentPage}', String(this.currentPage()))\n .replace('{totalPages}', String(this.getPageCount()))\n .replace('{first}', String(this.totalRecords > 0 ? this._first + 1 : 0))\n .replace('{last}', String(Math.min(this._first + this.rows, this.totalRecords)))\n .replace('{rows}', String(this.rows))\n .replace('{totalRecords}', String(this.totalRecords));\n }\n @Input({ transform: booleanAttribute }) rightAligned: boolean = false;\n isSinglePage(): boolean {\n return this.getPageCount() <= 1;\n }\n\n getPositionClass(): string {\n let positions = [];\n if (this.isSinglePage()) {\n positions.push('single-page');\n } else {\n if (this.isFirstPage()) positions.push('at-first-page');\n if (this.isLastPage()) positions.push('at-last-page');\n }\n if (this.rightAligned) positions.push('right-aligned');\n return positions.join(' ');\n }\n}\n","<div [class]=\"styleClass\" [ngStyle]=\"style\" [ngClass]=\"['cax-paginator cax-component', getPositionClass()]\" *ngIf=\"alwaysShow ? true : pageLinks && pageLinks.length > 1\" [attr.data-pc-section]=\"'paginator'\" [attr.data-pc-section]=\"'root'\">\r\n <div class=\"cax-paginator-left-content\" *ngIf=\"templateLeft\" [attr.data-pc-section]=\"'start'\">\r\n <ng-container *ngTemplateOutlet=\"templateLeft; context: { $implicit: paginatorState }\"></ng-container>\r\n </div>\r\n <span class=\"cax-paginator-current\" *ngIf=\"showCurrentPageReport\">{{ currentPageReport }}</span>\r\n <button\r\n *ngIf=\"showFirstLastIcon\"\r\n type=\"button\"\r\n [disabled]=\"isFirstPage() || empty()\"\r\n (click)=\"changePageToFirst($event)\"\r\n caxRipple\r\n class=\"cax-paginator-first cax-paginator-element cax-link\"\r\n [ngClass]=\"{ 'cax-disabled': isFirstPage() || empty() }\"\r\n [attr.aria-label]=\"getAriaLabel('firstPageLabel')\"\r\n >\r\n <AngleDoubleLeftIcon *ngIf=\"!firstPageLinkIconTemplate\" [styleClass]=\"'cax-paginator-icon'\" />\r\n <span class=\"cax-paginator-icon\" *ngIf=\"firstPageLinkIconTemplate\">\r\n <ng-template *ngTemplateOutlet=\"firstPageLinkIconTemplate\"></ng-template>\r\n </span>\r\n </button>\r\n <button\r\n type=\"button\"\r\n [disabled]=\"isFirstPage() || empty()\"\r\n (click)=\"changePageToPrev($event)\"\r\n caxRipple\r\n class=\"cax-paginator-prev cax-paginator-element cax-link\"\r\n [ngClass]=\"{ 'cax-disabled': isFirstPage() || empty() }\"\r\n [attr.aria-label]=\"getAriaLabel('prevPageLabel')\"\r\n >\r\n <AngleLeftIcon *ngIf=\"!previousPageLinkIconTemplate\" [styleClass]=\"'cax-paginator-icon'\" />\r\n <span class=\"cax-paginator-icon\" *ngIf=\"previousPageLinkIconTemplate\">\r\n <ng-template *ngTemplateOutlet=\"previousPageLinkIconTemplate\"></ng-template>\r\n </span>\r\n </button>\r\n <span class=\"cax-paginator-pages\" *ngIf=\"showPageLinks\">\r\n <button\r\n type=\"button\"\r\n *ngFor=\"let pageLink of pageLinks\"\r\n class=\"cax-paginator-page cax-paginator-element cax-link\"\r\n [ngClass]=\"{ 'cax-highlight': pageLink - 1 == getPage() }\"\r\n [attr.aria-label]=\"getPageAriaLabel(pageLink)\"\r\n [attr.aria-current]=\"pageLink - 1 == getPage() ? 'page' : undefined\"\r\n (click)=\"onPageLinkClick($event, pageLink - 1)\"\r\n caxRipple\r\n >\r\n {{ getLocalization(pageLink) }}\r\n </button>\r\n </span>\r\n <cax-dropdown\r\n [options]=\"pageItems\"\r\n [ngModel]=\"getPage()\"\r\n *ngIf=\"showJumpToPageDropdown\"\r\n [disabled]=\"empty()\"\r\n [attr.aria-label]=\"getAriaLabel('jumpToPageDropdownLabel')\"\r\n styleClass=\"cax-paginator-page-options\"\r\n (onChange)=\"onPageDropdownChange($event)\"\r\n [appendTo]=\"dropdownAppendTo\"\r\n [scrollHeight]=\"dropdownScrollHeight\"\r\n >\r\n <ng-template caxTemplate=\"selectedItem\">{{ currentPageReport }}</ng-template>\r\n <ng-container *ngIf=\"jumpToPageItemTemplate\">\r\n <ng-template let-item caxTemplate=\"item\">\r\n <ng-container *ngTemplateOutlet=\"jumpToPageItemTemplate; context: { $implicit: item }\"> </ng-container>\r\n </ng-template>\r\n </ng-container>\r\n <ng-template caxTemplate=\"dropdownicon\" *ngIf=\"dropdownIconTemplate\">\r\n <ng-container *ngTemplateOutlet=\"dropdownIconTemplate\"></ng-container>\r\n </ng-template>\r\n </cax-dropdown>\r\n <button\r\n type=\"button\"\r\n [disabled]=\"isLastPage() || empty()\"\r\n (click)=\"changePageToNext($event)\"\r\n caxRipple\r\n class=\"cax-paginator-next cax-paginator-element cax-link\"\r\n [ngClass]=\"{ 'cax-disabled': isLastPage() || empty() }\"\r\n [attr.aria-label]=\"getAriaLabel('nextPageLabel')\"\r\n >\r\n <AngleRightIcon *ngIf=\"!nextPageLinkIconTemplate\" [styleClass]=\"'cax-paginator-icon'\" />\r\n <span class=\"cax-paginator-icon\" *ngIf=\"nextPageLinkIconTemplate\">\r\n <ng-template *ngTemplateOutlet=\"nextPageLinkIconTemplate\"></ng-template>\r\n </span>\r\n </button>\r\n <button\r\n *ngIf=\"showFirstLastIcon\"\r\n type=\"button\"\r\n [disabled]=\"isLastPage() || empty()\"\r\n (click)=\"changePageToLast($event)\"\r\n caxRipple\r\n class=\"cax-paginator-last cax-paginator-element cax-link\"\r\n [ngClass]=\"{ 'cax-disabled': isLastPage() || empty() }\"\r\n [attr.aria-label]=\"getAriaLabel('lastPageLabel')\"\r\n >\r\n <AngleDoubleRightIcon *ngIf=\"!lastPageLinkIconTemplate\" [styleClass]=\"'cax-paginator-icon'\" />\r\n <span class=\"cax-paginator-icon\" *ngIf=\"lastPageLinkIconTemplate\">\r\n <ng-template *ngTemplateOutlet=\"lastPageLinkIconTemplate\"></ng-template>\r\n </span>\r\n </button>\r\n <span class=\"cax-paginator-page-label\" *ngIf=\"showJumpToPageInput\">Go to page</span>\r\n <cax-inputNumber *ngIf=\"showJumpToPageInput\" [ngModel]=\"currentPage()\" class=\"cax-paginator-page-input\" [disabled]=\"empty()\" (ngModelChange)=\"changePage($event - 1)\"></cax-inputNumber>\r\n <cax-dropdown\r\n [options]=\"rowsPerPageItems\"\r\n [(ngModel)]=\"rows\"\r\n *ngIf=\"rowsPerPageOptions\"\r\n styleClass=\"cax-paginator-rpp-options\"\r\n [disabled]=\"empty()\"\r\n (onChange)=\"onRppChange($event)\"\r\n [appendTo]=\"dropdownAppendTo\"\r\n [scrollHeight]=\"dropdownScrollHeight\"\r\n [ariaLabel]=\"getAriaLabel('rowsPerPageLabel')\"\r\n >\r\n <ng-container *ngIf=\"dropdownItemTemplate\"> \r\n <ng-template let-item caxTemplate=\"item\">\r\n <ng-container *ngTemplateOutlet=\"dropdownItemTemplate; context: { $implicit: item }\"> </ng-container>\r\n </ng-template>\r\n </ng-container>\r\n <ng-template caxTemplate=\"dropdownicon\" *ngIf=\"dropdownIconTemplate\">\r\n <ng-container *ngTemplateOutlet=\"dropdownIconTemplate\"></ng-container>\r\n </ng-template>\r\n </cax-dropdown>\r\n <div class=\"cax-paginator-right-content\" *ngIf=\"templateRight\" [attr.data-pc-section]=\"'end'\">\r\n <ng-container *ngTemplateOutlet=\"templateRight; context: { $implicit: paginatorState }\"></ng-container>\r\n </div>\r\n</div>","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { FormsModule } from '@angular/forms';\nimport { DropdownModule } from 'cax-design-system/dropdown';\nimport { InputNumberModule } from 'cax-design-system/inputnumber';\nimport { SharedModule } from 'cax-design-system/api';\nimport { RippleModule } from 'cax-design-system/ripple';\nimport { AngleDoubleLeftIcon } from 'cax-design-system/icons/angledoubleleft';\nimport { AngleDoubleRightIcon } from 'cax-design-system/icons/angledoubleright';\nimport { AngleLeftIcon } from 'cax-design-system/icons/angleleft';\nimport { AngleRightIcon } from 'cax-design-system/icons/angleright';\n\nimport { Paginator } from './paginator';\n\n@NgModule({\n imports: [CommonModule, DropdownModule, InputNumberModule, FormsModule, SharedModule, RippleModule, AngleDoubleLeftIcon, AngleDoubleRightIcon, AngleLeftIcon, AngleRightIcon],\n exports: [Paginator, DropdownModule, InputNumberModule, FormsModule, SharedModule],\n declarations: [Paginator]\n})\nexport class PaginatorModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
|
|
@@ -278,13 +278,13 @@ class SplitButton {
|
|
|
278
278
|
this.onMenuShow.emit();
|
|
279
279
|
}
|
|
280
280
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.9", ngImport: i0, type: SplitButton, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
281
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "18.2.9", type: SplitButton, selector: "cax-splitButton", inputs: { model: "model", severity: "severity", raised: ["raised", "raised", booleanAttribute], rounded: ["rounded", "rounded", booleanAttribute], text: ["text", "text", booleanAttribute], outlined: ["outlined", "outlined", booleanAttribute], size: "size", plain: ["plain", "plain", booleanAttribute], icon: "icon", iconPos: "iconPos", label: "label", tooltip: "tooltip", tooltipOptions: "tooltipOptions", style: "style", styleClass: "styleClass", menuStyle: "menuStyle", menuStyleClass: "menuStyleClass", appendTo: "appendTo", dir: "dir", expandAriaLabel: "expandAriaLabel", showTransitionOptions: "showTransitionOptions", hideTransitionOptions: "hideTransitionOptions", buttonProps: "buttonProps", menuButtonProps: "menuButtonProps", autofocus: ["autofocus", "autofocus", booleanAttribute], disabled: ["disabled", "disabled", booleanAttribute], tabindex: ["tabindex", "tabindex", numberAttribute], menuButtonDisabled: "menuButtonDisabled", buttonDisabled: "buttonDisabled" }, outputs: { onClick: "onClick", onMenuHide: "onMenuHide", onMenuShow: "onMenuShow", onDropdownClick: "onDropdownClick" }, host: { classAttribute: "cax-element" }, queries: [{ propertyName: "templates", predicate: CaxTemplate }], viewQueries: [{ propertyName: "containerViewChild", first: true, predicate: ["container"], descendants: true }, { propertyName: "buttonViewChild", first: true, predicate: ["defaultbtn"], descendants: true }, { propertyName: "menu", first: true, predicate: ["menu"], descendants: true }], ngImport: i0, template: "<div #container [ngClass]=\"containerClass\" [class]=\"styleClass\" [ngStyle]=\"style\">\r\n <ng-container *ngIf=\"contentTemplate; else defaultButton\">\r\n <button\r\n class=\"cax-splitbutton-defaultbutton\"\r\n type=\"button\"\r\n caxButton\r\n [severity]=\"severity\"\r\n [text]=\"text\"\r\n [outlined]=\"outlined\"\r\n [size]=\"size\"\r\n [icon]=\"icon\"\r\n [iconPos]=\"iconPos\"\r\n (click)=\"onDefaultButtonClick($event)\"\r\n [disabled]=\"disabled\"\r\n [attr.tabindex]=\"tabindex\"\r\n [ariaLabel]=\"buttonProps?.['ariaLabel'] || label\"\r\n caxAutoFocus\r\n [autofocus]=\"autofocus\"\r\n [caxTooltip]=\"tooltip\"\r\n [tooltipOptions]=\"tooltipOptions\"\r\n >\r\n <ng-container *ngTemplateOutlet=\"contentTemplate\"></ng-container>\r\n </button>\r\n </ng-container>\r\n <ng-template #defaultButton>\r\n <button\r\n #defaultbtn\r\n class=\"cax-splitbutton-defaultbutton\"\r\n type=\"button\"\r\n caxButton\r\n [severity]=\"severity\"\r\n [text]=\"text\"\r\n [outlined]=\"outlined\"\r\n [size]=\"size\"\r\n [icon]=\"icon\"\r\n [iconPos]=\"iconPos\"\r\n [label]=\"label\"\r\n (click)=\"onDefaultButtonClick($event)\"\r\n [disabled]=\"buttonDisabled\"\r\n [attr.tabindex]=\"tabindex\"\r\n [ariaLabel]=\"buttonProps?.['ariaLabel']\"\r\n caxAutoFocus\r\n [autofocus]=\"autofocus\"\r\n [caxTooltip]=\"tooltip\"\r\n [tooltipOptions]=\"tooltipOptions\"\r\n ></button>\r\n </ng-template>\r\n <div class=\"cax-splitbutton-divider\"></div>\r\n <button\r\n type=\"button\"\r\n caxButton\r\n [size]=\"size\"\r\n [severity]=\"severity\"\r\n [text]=\"text\"\r\n [outlined]=\"outlined\"\r\n class=\"cax-splitbutton-menubutton cax-button-icon-only\"\r\n (click)=\"onDropdownButtonClick($event)\"\r\n (keydown)=\"onDropdownButtonKeydown($event)\"\r\n [ariaLabel]=\"menuButtonProps?.['ariaLabel'] || expandAriaLabel\"\r\n [attr.aria-haspopup]=\"menuButtonProps?.['ariaHasPopup'] || true\"\r\n [attr.aria-expanded]=\"menuButtonProps?.['ariaExpanded'] || isExpanded()\"\r\n [attr.aria-controls]=\"menuButtonProps?.['ariaControls'] || ariaId\"\r\n >\r\n <ChevronDownIcon *ngIf=\"!dropdownIconTemplate && !isMenuOpen\" />\r\n <ChevronUpIcon *ngIf=\"!dropdownIconTemplate && isMenuOpen\" />\r\n <ng-template *ngTemplateOutlet=\"dropdownIconTemplate\"></ng-template>\r\n </button>\r\n <cax-tieredMenu\r\n [id]=\"ariaId\"\r\n #menu\r\n [ngStyle]=\"{ 'position': 'fixed', 'z-index': '9999' }\"\r\n [popup]=\"true\"\r\n [model]=\"model\"\r\n [style]=\"menuStyle\"\r\n [styleClass]=\"menuStyleClass\"\r\n [appendTo]=\"appendTo\"\r\n [showTransitionOptions]=\"showTransitionOptions\"\r\n [hideTransitionOptions]=\"hideTransitionOptions\"\r\n (onHide)=\"onHide()\"\r\n (onShow)=\"onShow()\"\r\n ></cax-tieredMenu>\r\n</div>\r\n", styles: ["@layer cax{.cax-splitbutton{display:inline-flex;position:relative}.cax-splitbutton .cax-splitbutton-defaultbutton,.cax-splitbutton.cax-button-rounded>.cax-splitbutton-defaultbutton.cax-button,.cax-splitbutton.cax-button-outlined>.cax-splitbutton-defaultbutton.cax-button{flex:1 1 auto;padding:var(--space-100) var(--space-150) var(--space-100) var(--space-150)!important;border-top-left-radius:var(--radius-100)!important;border-top-right-radius:0!important;border-bottom-right-radius:0!important;border-bottom-left-radius:var(--radius-100)!important;border-right:0 none}.cax-splitbutton-menubutton,.cax-splitbutton.cax-button-rounded>.cax-splitbutton-menubutton.cax-button,.cax-splitbutton.cax-button-outlined>.cax-splitbutton-menubutton.cax-button{display:flex;align-items:center;justify-content:center;border-top-left-radius:0;border-bottom-left-radius:0}.cax-splitbutton .cax-menu{min-width:100%}.cax-fluid .cax-splitbutton{display:flex}.cax-splitbutton-divider{width:8px;display:inline-block}.cax-splitbutton-divider{width:0px;height:100%;background-color:#dcdcdc;margin:0 1px;display:inline-block;vertical-align:middle}}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: i2.ButtonDirective, selector: "[caxButton]", inputs: ["iconPos", "loadingIcon", "label", "icon", "loading", "severity", "raised", "rounded", "text", "outlined", "size", "plain"] }, { kind: "component", type: i3.TieredMenu, selector: "cax-tieredMenu", inputs: ["model", "popup", "style", "styleClass", "appendTo", "autoZIndex", "baseZIndex", "autoDisplay", "showTransitionOptions", "hideTransitionOptions", "id", "ariaLabel", "ariaLabelledBy", "disabled", "tabindex"], outputs: ["onShow", "onHide"] }, { kind: "directive", type: i4.Tooltip, selector: "[caxTooltip]", inputs: ["tooltipPosition", "tooltipEvent", "appendTo", "positionStyle", "tooltipStyleClass", "tooltipZIndex", "escape", "showDelay", "hideDelay", "life", "positionTop", "positionLeft", "autoHide", "fitContent", "hideOnEscape", "caxTooltip", "tooltipDisabled", "tooltipOptions", "linkUrl", "linkText"] }, { kind: "directive", type: i5.AutoFocus, selector: "[caxAutoFocus]", inputs: ["autofocus"] }, { kind: "component", type: i6.ChevronDownIcon, selector: "ChevronDownIcon" }, { kind: "component", type: i7.ChevronUpIcon, selector: "ChevronUpIcon" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
281
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "18.2.9", type: SplitButton, selector: "cax-splitButton", inputs: { model: "model", severity: "severity", raised: ["raised", "raised", booleanAttribute], rounded: ["rounded", "rounded", booleanAttribute], text: ["text", "text", booleanAttribute], outlined: ["outlined", "outlined", booleanAttribute], size: "size", plain: ["plain", "plain", booleanAttribute], icon: "icon", iconPos: "iconPos", label: "label", tooltip: "tooltip", tooltipOptions: "tooltipOptions", style: "style", styleClass: "styleClass", menuStyle: "menuStyle", menuStyleClass: "menuStyleClass", appendTo: "appendTo", dir: "dir", expandAriaLabel: "expandAriaLabel", showTransitionOptions: "showTransitionOptions", hideTransitionOptions: "hideTransitionOptions", buttonProps: "buttonProps", menuButtonProps: "menuButtonProps", autofocus: ["autofocus", "autofocus", booleanAttribute], disabled: ["disabled", "disabled", booleanAttribute], tabindex: ["tabindex", "tabindex", numberAttribute], menuButtonDisabled: "menuButtonDisabled", buttonDisabled: "buttonDisabled" }, outputs: { onClick: "onClick", onMenuHide: "onMenuHide", onMenuShow: "onMenuShow", onDropdownClick: "onDropdownClick" }, host: { classAttribute: "cax-element" }, queries: [{ propertyName: "templates", predicate: CaxTemplate }], viewQueries: [{ propertyName: "containerViewChild", first: true, predicate: ["container"], descendants: true }, { propertyName: "buttonViewChild", first: true, predicate: ["defaultbtn"], descendants: true }, { propertyName: "menu", first: true, predicate: ["menu"], descendants: true }], ngImport: i0, template: "<div #container [ngClass]=\"containerClass\" [class]=\"styleClass\" [ngStyle]=\"style\">\r\n <ng-container *ngIf=\"contentTemplate; else defaultButton\">\r\n <button\r\n class=\"cax-splitbutton-defaultbutton\"\r\n type=\"button\"\r\n caxButton\r\n [severity]=\"severity\"\r\n [text]=\"text\"\r\n [outlined]=\"outlined\"\r\n [size]=\"size\"\r\n [icon]=\"icon\"\r\n [iconPos]=\"iconPos\"\r\n (click)=\"onDefaultButtonClick($event)\"\r\n [disabled]=\"disabled\"\r\n [attr.tabindex]=\"tabindex\"\r\n [ariaLabel]=\"buttonProps?.['ariaLabel'] || label\"\r\n caxAutoFocus\r\n [autofocus]=\"autofocus\"\r\n [caxTooltip]=\"tooltip\"\r\n [tooltipOptions]=\"tooltipOptions\"\r\n >\r\n <ng-container *ngTemplateOutlet=\"contentTemplate\"></ng-container>\r\n </button>\r\n </ng-container>\r\n <ng-template #defaultButton>\r\n <button\r\n #defaultbtn\r\n class=\"cax-splitbutton-defaultbutton\"\r\n type=\"button\"\r\n caxButton\r\n [severity]=\"severity\"\r\n [text]=\"text\"\r\n [outlined]=\"outlined\"\r\n [size]=\"size\"\r\n [icon]=\"icon\"\r\n [iconPos]=\"iconPos\"\r\n [label]=\"label\"\r\n (click)=\"onDefaultButtonClick($event)\"\r\n [disabled]=\"buttonDisabled\"\r\n [attr.tabindex]=\"tabindex\"\r\n [ariaLabel]=\"buttonProps?.['ariaLabel']\"\r\n caxAutoFocus\r\n [autofocus]=\"autofocus\"\r\n [caxTooltip]=\"tooltip\"\r\n [tooltipOptions]=\"tooltipOptions\"\r\n ></button>\r\n </ng-template>\r\n <div class=\"cax-splitbutton-divider\"></div>\r\n <button\r\n type=\"button\"\r\n caxButton\r\n [size]=\"size\"\r\n [severity]=\"severity\"\r\n [text]=\"text\"\r\n [outlined]=\"outlined\"\r\n class=\"cax-splitbutton-menubutton cax-button-icon-only\"\r\n (click)=\"onDropdownButtonClick($event)\"\r\n (keydown)=\"onDropdownButtonKeydown($event)\"\r\n [ariaLabel]=\"menuButtonProps?.['ariaLabel'] || expandAriaLabel\"\r\n [attr.aria-haspopup]=\"menuButtonProps?.['ariaHasPopup'] || true\"\r\n [attr.aria-expanded]=\"menuButtonProps?.['ariaExpanded'] || isExpanded()\"\r\n [attr.aria-controls]=\"menuButtonProps?.['ariaControls'] || ariaId\"\r\n >\r\n <ChevronDownIcon *ngIf=\"!dropdownIconTemplate && !isMenuOpen\" />\r\n <ChevronUpIcon *ngIf=\"!dropdownIconTemplate && isMenuOpen\" />\r\n <ng-template *ngTemplateOutlet=\"dropdownIconTemplate\"></ng-template>\r\n </button>\r\n <cax-tieredMenu\r\n [id]=\"ariaId\"\r\n #menu\r\n [ngStyle]=\"{ 'position': 'fixed', 'z-index': '9999' }\"\r\n [popup]=\"true\"\r\n [model]=\"model\"\r\n [style]=\"menuStyle\"\r\n [styleClass]=\"menuStyleClass\"\r\n [appendTo]=\"appendTo\"\r\n [showTransitionOptions]=\"showTransitionOptions\"\r\n [hideTransitionOptions]=\"hideTransitionOptions\"\r\n (onHide)=\"onHide()\"\r\n (onShow)=\"onShow()\"\r\n ></cax-tieredMenu>\r\n</div>\r\n", styles: ["@layer cax{.cax-splitbutton{display:inline-flex;position:relative}.cax-splitbutton .cax-splitbutton-defaultbutton,.cax-splitbutton.cax-button-rounded>.cax-splitbutton-defaultbutton.cax-button,.cax-splitbutton.cax-button-outlined>.cax-splitbutton-defaultbutton.cax-button{flex:1 1 auto;padding:var(--space-100) var(--space-150) var(--space-100) var(--space-150)!important;border-top-left-radius:var(--radius-100)!important;border-top-right-radius:0!important;border-bottom-right-radius:0!important;border-bottom-left-radius:var(--radius-100)!important;border-right:0 none}.cax-splitbutton-menubutton,.cax-splitbutton.cax-button-rounded>.cax-splitbutton-menubutton.cax-button,.cax-splitbutton.cax-button-outlined>.cax-splitbutton-menubutton.cax-button{display:flex;align-items:center;justify-content:center;border-top-left-radius:0!important;border-top-right-radius:var(--radius-100)!important;border-bottom-right-radius:var(--radius-100)!important;border-bottom-left-radius:0!important}.cax-splitbutton .cax-menu{min-width:100%}.cax-fluid .cax-splitbutton{display:flex}.cax-splitbutton-divider{width:8px;display:inline-block}.cax-splitbutton-divider{width:0px;height:100%;background-color:#dcdcdc;margin:0 1px;display:inline-block;vertical-align:middle}}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: i2.ButtonDirective, selector: "[caxButton]", inputs: ["iconPos", "loadingIcon", "label", "icon", "loading", "severity", "raised", "rounded", "text", "outlined", "size", "plain"] }, { kind: "component", type: i3.TieredMenu, selector: "cax-tieredMenu", inputs: ["model", "popup", "style", "styleClass", "appendTo", "autoZIndex", "baseZIndex", "autoDisplay", "showTransitionOptions", "hideTransitionOptions", "id", "ariaLabel", "ariaLabelledBy", "disabled", "tabindex"], outputs: ["onShow", "onHide"] }, { kind: "directive", type: i4.Tooltip, selector: "[caxTooltip]", inputs: ["tooltipPosition", "tooltipEvent", "appendTo", "positionStyle", "tooltipStyleClass", "tooltipZIndex", "escape", "showDelay", "hideDelay", "life", "positionTop", "positionLeft", "autoHide", "fitContent", "hideOnEscape", "caxTooltip", "tooltipDisabled", "tooltipOptions", "linkUrl", "linkText"] }, { kind: "directive", type: i5.AutoFocus, selector: "[caxAutoFocus]", inputs: ["autofocus"] }, { kind: "component", type: i6.ChevronDownIcon, selector: "ChevronDownIcon" }, { kind: "component", type: i7.ChevronUpIcon, selector: "ChevronUpIcon" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
282
282
|
}
|
|
283
283
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.9", ngImport: i0, type: SplitButton, decorators: [{
|
|
284
284
|
type: Component,
|
|
285
285
|
args: [{ selector: 'cax-splitButton', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, host: {
|
|
286
286
|
class: 'cax-element'
|
|
287
|
-
}, template: "<div #container [ngClass]=\"containerClass\" [class]=\"styleClass\" [ngStyle]=\"style\">\r\n <ng-container *ngIf=\"contentTemplate; else defaultButton\">\r\n <button\r\n class=\"cax-splitbutton-defaultbutton\"\r\n type=\"button\"\r\n caxButton\r\n [severity]=\"severity\"\r\n [text]=\"text\"\r\n [outlined]=\"outlined\"\r\n [size]=\"size\"\r\n [icon]=\"icon\"\r\n [iconPos]=\"iconPos\"\r\n (click)=\"onDefaultButtonClick($event)\"\r\n [disabled]=\"disabled\"\r\n [attr.tabindex]=\"tabindex\"\r\n [ariaLabel]=\"buttonProps?.['ariaLabel'] || label\"\r\n caxAutoFocus\r\n [autofocus]=\"autofocus\"\r\n [caxTooltip]=\"tooltip\"\r\n [tooltipOptions]=\"tooltipOptions\"\r\n >\r\n <ng-container *ngTemplateOutlet=\"contentTemplate\"></ng-container>\r\n </button>\r\n </ng-container>\r\n <ng-template #defaultButton>\r\n <button\r\n #defaultbtn\r\n class=\"cax-splitbutton-defaultbutton\"\r\n type=\"button\"\r\n caxButton\r\n [severity]=\"severity\"\r\n [text]=\"text\"\r\n [outlined]=\"outlined\"\r\n [size]=\"size\"\r\n [icon]=\"icon\"\r\n [iconPos]=\"iconPos\"\r\n [label]=\"label\"\r\n (click)=\"onDefaultButtonClick($event)\"\r\n [disabled]=\"buttonDisabled\"\r\n [attr.tabindex]=\"tabindex\"\r\n [ariaLabel]=\"buttonProps?.['ariaLabel']\"\r\n caxAutoFocus\r\n [autofocus]=\"autofocus\"\r\n [caxTooltip]=\"tooltip\"\r\n [tooltipOptions]=\"tooltipOptions\"\r\n ></button>\r\n </ng-template>\r\n <div class=\"cax-splitbutton-divider\"></div>\r\n <button\r\n type=\"button\"\r\n caxButton\r\n [size]=\"size\"\r\n [severity]=\"severity\"\r\n [text]=\"text\"\r\n [outlined]=\"outlined\"\r\n class=\"cax-splitbutton-menubutton cax-button-icon-only\"\r\n (click)=\"onDropdownButtonClick($event)\"\r\n (keydown)=\"onDropdownButtonKeydown($event)\"\r\n [ariaLabel]=\"menuButtonProps?.['ariaLabel'] || expandAriaLabel\"\r\n [attr.aria-haspopup]=\"menuButtonProps?.['ariaHasPopup'] || true\"\r\n [attr.aria-expanded]=\"menuButtonProps?.['ariaExpanded'] || isExpanded()\"\r\n [attr.aria-controls]=\"menuButtonProps?.['ariaControls'] || ariaId\"\r\n >\r\n <ChevronDownIcon *ngIf=\"!dropdownIconTemplate && !isMenuOpen\" />\r\n <ChevronUpIcon *ngIf=\"!dropdownIconTemplate && isMenuOpen\" />\r\n <ng-template *ngTemplateOutlet=\"dropdownIconTemplate\"></ng-template>\r\n </button>\r\n <cax-tieredMenu\r\n [id]=\"ariaId\"\r\n #menu\r\n [ngStyle]=\"{ 'position': 'fixed', 'z-index': '9999' }\"\r\n [popup]=\"true\"\r\n [model]=\"model\"\r\n [style]=\"menuStyle\"\r\n [styleClass]=\"menuStyleClass\"\r\n [appendTo]=\"appendTo\"\r\n [showTransitionOptions]=\"showTransitionOptions\"\r\n [hideTransitionOptions]=\"hideTransitionOptions\"\r\n (onHide)=\"onHide()\"\r\n (onShow)=\"onShow()\"\r\n ></cax-tieredMenu>\r\n</div>\r\n", styles: ["@layer cax{.cax-splitbutton{display:inline-flex;position:relative}.cax-splitbutton .cax-splitbutton-defaultbutton,.cax-splitbutton.cax-button-rounded>.cax-splitbutton-defaultbutton.cax-button,.cax-splitbutton.cax-button-outlined>.cax-splitbutton-defaultbutton.cax-button{flex:1 1 auto;padding:var(--space-100) var(--space-150) var(--space-100) var(--space-150)!important;border-top-left-radius:var(--radius-100)!important;border-top-right-radius:0!important;border-bottom-right-radius:0!important;border-bottom-left-radius:var(--radius-100)!important;border-right:0 none}.cax-splitbutton-menubutton,.cax-splitbutton.cax-button-rounded>.cax-splitbutton-menubutton.cax-button,.cax-splitbutton.cax-button-outlined>.cax-splitbutton-menubutton.cax-button{display:flex;align-items:center;justify-content:center;border-top-left-radius:0;border-bottom-left-radius:0}.cax-splitbutton .cax-menu{min-width:100%}.cax-fluid .cax-splitbutton{display:flex}.cax-splitbutton-divider{width:8px;display:inline-block}.cax-splitbutton-divider{width:0px;height:100%;background-color:#dcdcdc;margin:0 1px;display:inline-block;vertical-align:middle}}\n"] }]
|
|
287
|
+
}, template: "<div #container [ngClass]=\"containerClass\" [class]=\"styleClass\" [ngStyle]=\"style\">\r\n <ng-container *ngIf=\"contentTemplate; else defaultButton\">\r\n <button\r\n class=\"cax-splitbutton-defaultbutton\"\r\n type=\"button\"\r\n caxButton\r\n [severity]=\"severity\"\r\n [text]=\"text\"\r\n [outlined]=\"outlined\"\r\n [size]=\"size\"\r\n [icon]=\"icon\"\r\n [iconPos]=\"iconPos\"\r\n (click)=\"onDefaultButtonClick($event)\"\r\n [disabled]=\"disabled\"\r\n [attr.tabindex]=\"tabindex\"\r\n [ariaLabel]=\"buttonProps?.['ariaLabel'] || label\"\r\n caxAutoFocus\r\n [autofocus]=\"autofocus\"\r\n [caxTooltip]=\"tooltip\"\r\n [tooltipOptions]=\"tooltipOptions\"\r\n >\r\n <ng-container *ngTemplateOutlet=\"contentTemplate\"></ng-container>\r\n </button>\r\n </ng-container>\r\n <ng-template #defaultButton>\r\n <button\r\n #defaultbtn\r\n class=\"cax-splitbutton-defaultbutton\"\r\n type=\"button\"\r\n caxButton\r\n [severity]=\"severity\"\r\n [text]=\"text\"\r\n [outlined]=\"outlined\"\r\n [size]=\"size\"\r\n [icon]=\"icon\"\r\n [iconPos]=\"iconPos\"\r\n [label]=\"label\"\r\n (click)=\"onDefaultButtonClick($event)\"\r\n [disabled]=\"buttonDisabled\"\r\n [attr.tabindex]=\"tabindex\"\r\n [ariaLabel]=\"buttonProps?.['ariaLabel']\"\r\n caxAutoFocus\r\n [autofocus]=\"autofocus\"\r\n [caxTooltip]=\"tooltip\"\r\n [tooltipOptions]=\"tooltipOptions\"\r\n ></button>\r\n </ng-template>\r\n <div class=\"cax-splitbutton-divider\"></div>\r\n <button\r\n type=\"button\"\r\n caxButton\r\n [size]=\"size\"\r\n [severity]=\"severity\"\r\n [text]=\"text\"\r\n [outlined]=\"outlined\"\r\n class=\"cax-splitbutton-menubutton cax-button-icon-only\"\r\n (click)=\"onDropdownButtonClick($event)\"\r\n (keydown)=\"onDropdownButtonKeydown($event)\"\r\n [ariaLabel]=\"menuButtonProps?.['ariaLabel'] || expandAriaLabel\"\r\n [attr.aria-haspopup]=\"menuButtonProps?.['ariaHasPopup'] || true\"\r\n [attr.aria-expanded]=\"menuButtonProps?.['ariaExpanded'] || isExpanded()\"\r\n [attr.aria-controls]=\"menuButtonProps?.['ariaControls'] || ariaId\"\r\n >\r\n <ChevronDownIcon *ngIf=\"!dropdownIconTemplate && !isMenuOpen\" />\r\n <ChevronUpIcon *ngIf=\"!dropdownIconTemplate && isMenuOpen\" />\r\n <ng-template *ngTemplateOutlet=\"dropdownIconTemplate\"></ng-template>\r\n </button>\r\n <cax-tieredMenu\r\n [id]=\"ariaId\"\r\n #menu\r\n [ngStyle]=\"{ 'position': 'fixed', 'z-index': '9999' }\"\r\n [popup]=\"true\"\r\n [model]=\"model\"\r\n [style]=\"menuStyle\"\r\n [styleClass]=\"menuStyleClass\"\r\n [appendTo]=\"appendTo\"\r\n [showTransitionOptions]=\"showTransitionOptions\"\r\n [hideTransitionOptions]=\"hideTransitionOptions\"\r\n (onHide)=\"onHide()\"\r\n (onShow)=\"onShow()\"\r\n ></cax-tieredMenu>\r\n</div>\r\n", styles: ["@layer cax{.cax-splitbutton{display:inline-flex;position:relative}.cax-splitbutton .cax-splitbutton-defaultbutton,.cax-splitbutton.cax-button-rounded>.cax-splitbutton-defaultbutton.cax-button,.cax-splitbutton.cax-button-outlined>.cax-splitbutton-defaultbutton.cax-button{flex:1 1 auto;padding:var(--space-100) var(--space-150) var(--space-100) var(--space-150)!important;border-top-left-radius:var(--radius-100)!important;border-top-right-radius:0!important;border-bottom-right-radius:0!important;border-bottom-left-radius:var(--radius-100)!important;border-right:0 none}.cax-splitbutton-menubutton,.cax-splitbutton.cax-button-rounded>.cax-splitbutton-menubutton.cax-button,.cax-splitbutton.cax-button-outlined>.cax-splitbutton-menubutton.cax-button{display:flex;align-items:center;justify-content:center;border-top-left-radius:0!important;border-top-right-radius:var(--radius-100)!important;border-bottom-right-radius:var(--radius-100)!important;border-bottom-left-radius:0!important}.cax-splitbutton .cax-menu{min-width:100%}.cax-fluid .cax-splitbutton{display:flex}.cax-splitbutton-divider{width:8px;display:inline-block}.cax-splitbutton-divider{width:0px;height:100%;background-color:#dcdcdc;margin:0 1px;display:inline-block;vertical-align:middle}}\n"] }]
|
|
288
288
|
}], propDecorators: { model: [{
|
|
289
289
|
type: Input
|
|
290
290
|
}], severity: [{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cax-design-system-splitbutton.mjs","sources":["../../src/app/components/splitbutton/splitbutton.ts","../../src/app/components/splitbutton/splitbutton.html","../../src/app/components/splitbutton/splitbutton.module.ts","../../src/app/components/splitbutton/cax-design-system-splitbutton.ts"],"sourcesContent":["import { ChangeDetectionStrategy, Component, ContentChildren, ElementRef, EventEmitter, Input, NgModule, Output, QueryList, TemplateRef, ViewChild, ViewEncapsulation, booleanAttribute, numberAttribute, signal } from '@angular/core';\nimport { MenuItem, CaxTemplate } from 'cax-design-system/api';\nimport { TieredMenu } from 'cax-design-system/tieredmenu';\nimport { UniqueComponentId } from 'cax-design-system/utils';\n\nimport { ButtonProps, MenuButtonProps } from './splitbutton.interface';\n\ntype SplitButtonIconPosition = 'left' | 'right';\n/**\n * SplitButton groups a set of commands in an overlay with a default command.\n * @group Components\n */\n@Component({\n selector: 'cax-splitButton',\n templateUrl: './splitbutton.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n styleUrls: ['./splitbutton.scss'],\n host: {\n class: 'cax-element'\n }\n})\nexport class SplitButton {\n /**\n * MenuModel instance to define the overlay items.\n * @group Props\n */\n @Input() model: MenuItem[] | undefined;\n /**\n * Defines the style of the button.\n * @group Props\n */\n @Input() severity: 'success' | 'info' | 'warning' | 'danger' | 'help' | 'primary' | 'secondary' | 'contrast' | null | undefined;\n /**\n * Add a shadow to indicate elevation.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) raised: boolean = false;\n /**\n * Add a circular border radius to the button.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) rounded: boolean = false;\n /**\n * Add a textual class to the button without a background initially.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) text: boolean = false;\n /**\n * Add a border class without a background initially.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) outlined: boolean = false;\n /**\n * Defines the size of the button.\n * @group Props\n */\n @Input() size: 'small' | 'large' | undefined | null = null;\n /**\n * Add a plain textual class to the button without a background initially.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) plain: boolean = false;\n /**\n * Name of the icon.\n * @group Props\n */\n @Input() icon: string | undefined;\n /**\n * Position of the icon.\n * @group Props\n */\n @Input() iconPos: SplitButtonIconPosition = 'left';\n /**\n * Text of the button.\n * @group Props\n */\n @Input() label: string | undefined;\n /**\n * Tooltip for the main button.\n * @group Props\n */\n @Input() tooltip: string | undefined;\n /**\n * Tooltip options for the main button.\n * @group Props\n */\n @Input() tooltipOptions: string | undefined;\n /**\n * Inline style of the element.\n * @group Props\n */\n @Input() style: { [klass: string]: any } | null | undefined;\n /**\n * Class of the element.\n * @group Props\n */\n @Input() styleClass: string | undefined;\n /**\n * Inline style of the overlay menu.\n * @group Props\n */\n @Input() menuStyle: { [klass: string]: any } | null | undefined;\n /**\n * Style class of the overlay menu.\n * @group Props\n */\n @Input() menuStyleClass: string | undefined;\n\n /**\n * Target element to attach the overlay, valid values are \"body\" or a local ng-template variable of another element (note: use binding with brackets for template variables, e.g. [appendTo]=\"mydiv\" for a div element having #mydiv as variable name).\n * @group Props\n */\n @Input() appendTo: HTMLElement | ElementRef | TemplateRef<any> | string | null | undefined | any;\n /**\n * Indicates the direction of the element.\n * @group Props\n */\n @Input() dir: string | undefined;\n /**\n * Defines a string that labels the expand button for accessibility.\n * @group Props\n */\n @Input() expandAriaLabel: string | undefined;\n /**\n * Transition options of the show animation.\n * @group Props\n */\n @Input() showTransitionOptions: string = '.12s cubic-bezier(0, 0, 0.2, 1)';\n /**\n * Transition options of the hide animation.\n * @group Props\n */\n @Input() hideTransitionOptions: string = '.1s linear';\n /**\n * Button Props\n */\n @Input() buttonProps: ButtonProps | undefined;\n /**\n * Menu Button Props\n */\n @Input() menuButtonProps: MenuButtonProps | undefined;\n /**\n * When present, it specifies that the component should automatically get focus on load.\n * @group Props\n */\n isMenuOpen: boolean = false;\n @Input({ transform: booleanAttribute }) autofocus: boolean | undefined;\n /**\n * When present, it specifies that the element should be disabled.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) set disabled(v: boolean | undefined) {\n this._disabled = v;\n this._buttonDisabled = v;\n this.menuButtonDisabled = v;\n }\n public get disabled(): boolean | undefined {\n return this._disabled;\n }\n /**\n * Index of the element in tabbing order.\n * @group Props\n */\n @Input({ transform: numberAttribute }) tabindex: number | undefined;\n /**\n * When present, it specifies that the menu button element should be disabled.\n * @group Props\n */\n @Input('menuButtonDisabled') set menuButtonDisabled(v: boolean | undefined) {\n if (this.disabled) {\n this._menuButtonDisabled = this.disabled;\n } else this._menuButtonDisabled = v;\n }\n public get menuButtonDisabled(): boolean | undefined {\n return this._menuButtonDisabled;\n }\n /**\n * When present, it specifies that the button element should be disabled.\n * @group Props\n */\n @Input() set buttonDisabled(v: boolean | undefined) {\n if (this.disabled) {\n this.buttonDisabled = this.disabled;\n } else this._buttonDisabled = v;\n }\n public get buttonDisabled(): boolean {\n return this._buttonDisabled;\n }\n /**\n * Callback to invoke when default command button is clicked.\n * @param {MouseEvent} event - Mouse event.\n * @group Emits\n */\n @Output() onClick: EventEmitter<MouseEvent> = new EventEmitter<MouseEvent>();\n /**\n * Callback to invoke when overlay menu is hidden.\n * @group Emits\n */\n @Output() onMenuHide: EventEmitter<any> = new EventEmitter<any>();\n /**\n * Callback to invoke when overlay menu is shown.\n * @group Emits\n */\n @Output() onMenuShow: EventEmitter<any> = new EventEmitter<any>();\n /**\n * Callback to invoke when dropdown button is clicked.\n * @param {MouseEvent} event - Mouse event.\n * @group Emits\n */\n @Output() onDropdownClick: EventEmitter<MouseEvent> = new EventEmitter<MouseEvent>();\n\n @ViewChild('container') containerViewChild: ElementRef | undefined;\n\n @ViewChild('defaultbtn') buttonViewChild: ElementRef | undefined;\n\n @ViewChild('menu') menu: TieredMenu | undefined;\n\n @ContentChildren(CaxTemplate) templates: QueryList<CaxTemplate> | undefined;\n\n contentTemplate: TemplateRef<any> | undefined;\n\n dropdownIconTemplate: TemplateRef<any> | undefined;\n\n ariaId: string | undefined;\n\n isExpanded = signal<boolean>(false);\n\n private _disabled: boolean | undefined;\n\n private _buttonDisabled: boolean | undefined;\n\n private _menuButtonDisabled: boolean | undefined;\n\n ngOnInit() {\n this.ariaId = UniqueComponentId();\n }\n\n ngAfterContentInit() {\n this.templates?.forEach((item) => {\n switch (item.getType()) {\n case 'content':\n this.contentTemplate = item.template;\n break;\n\n case 'dropdownicon':\n this.dropdownIconTemplate = item.template;\n break;\n\n default:\n this.contentTemplate = item.template;\n break;\n }\n });\n }\n\n get containerClass() {\n const cls = {\n 'cax-splitbutton cax-component': true,\n 'cax-button-raised': this.raised,\n 'cax-button-rounded': this.rounded,\n 'cax-button-outlined': this.outlined,\n 'cax-button-text': this.text,\n [`cax-button-${this.size === 'small' ? 'sm' : 'lg'}`]: this.size\n };\n\n return { ...cls };\n }\n\n onDefaultButtonClick(event: MouseEvent) {\n this.onClick.emit(event);\n this.menu.hide();\n }\n\n onDropdownButtonClick(event?: MouseEvent) {\n this.isMenuOpen = !this.isMenuOpen;\n this.onDropdownClick.emit(event);\n this.menu?.toggle({ currentTarget: this.containerViewChild?.nativeElement, relativeAlign: this.appendTo == null });\n }\n\n onDropdownButtonKeydown(event: KeyboardEvent) {\n if (event.code === 'ArrowDown' || event.code === 'ArrowUp') {\n this.onDropdownButtonClick();\n event.preventDefault();\n }\n }\n\n onHide() {\n this.isMenuOpen = false;\n this.isExpanded.set(false);\n this.onMenuHide.emit();\n }\n\n onShow() {\n this.isMenuOpen = true;\n this.isExpanded.set(true);\n this.onMenuShow.emit();\n }\n}\n","<div #container [ngClass]=\"containerClass\" [class]=\"styleClass\" [ngStyle]=\"style\">\r\n <ng-container *ngIf=\"contentTemplate; else defaultButton\">\r\n <button\r\n class=\"cax-splitbutton-defaultbutton\"\r\n type=\"button\"\r\n caxButton\r\n [severity]=\"severity\"\r\n [text]=\"text\"\r\n [outlined]=\"outlined\"\r\n [size]=\"size\"\r\n [icon]=\"icon\"\r\n [iconPos]=\"iconPos\"\r\n (click)=\"onDefaultButtonClick($event)\"\r\n [disabled]=\"disabled\"\r\n [attr.tabindex]=\"tabindex\"\r\n [ariaLabel]=\"buttonProps?.['ariaLabel'] || label\"\r\n caxAutoFocus\r\n [autofocus]=\"autofocus\"\r\n [caxTooltip]=\"tooltip\"\r\n [tooltipOptions]=\"tooltipOptions\"\r\n >\r\n <ng-container *ngTemplateOutlet=\"contentTemplate\"></ng-container>\r\n </button>\r\n </ng-container>\r\n <ng-template #defaultButton>\r\n <button\r\n #defaultbtn\r\n class=\"cax-splitbutton-defaultbutton\"\r\n type=\"button\"\r\n caxButton\r\n [severity]=\"severity\"\r\n [text]=\"text\"\r\n [outlined]=\"outlined\"\r\n [size]=\"size\"\r\n [icon]=\"icon\"\r\n [iconPos]=\"iconPos\"\r\n [label]=\"label\"\r\n (click)=\"onDefaultButtonClick($event)\"\r\n [disabled]=\"buttonDisabled\"\r\n [attr.tabindex]=\"tabindex\"\r\n [ariaLabel]=\"buttonProps?.['ariaLabel']\"\r\n caxAutoFocus\r\n [autofocus]=\"autofocus\"\r\n [caxTooltip]=\"tooltip\"\r\n [tooltipOptions]=\"tooltipOptions\"\r\n ></button>\r\n </ng-template>\r\n <div class=\"cax-splitbutton-divider\"></div>\r\n <button\r\n type=\"button\"\r\n caxButton\r\n [size]=\"size\"\r\n [severity]=\"severity\"\r\n [text]=\"text\"\r\n [outlined]=\"outlined\"\r\n class=\"cax-splitbutton-menubutton cax-button-icon-only\"\r\n (click)=\"onDropdownButtonClick($event)\"\r\n (keydown)=\"onDropdownButtonKeydown($event)\"\r\n [ariaLabel]=\"menuButtonProps?.['ariaLabel'] || expandAriaLabel\"\r\n [attr.aria-haspopup]=\"menuButtonProps?.['ariaHasPopup'] || true\"\r\n [attr.aria-expanded]=\"menuButtonProps?.['ariaExpanded'] || isExpanded()\"\r\n [attr.aria-controls]=\"menuButtonProps?.['ariaControls'] || ariaId\"\r\n >\r\n <ChevronDownIcon *ngIf=\"!dropdownIconTemplate && !isMenuOpen\" />\r\n <ChevronUpIcon *ngIf=\"!dropdownIconTemplate && isMenuOpen\" />\r\n <ng-template *ngTemplateOutlet=\"dropdownIconTemplate\"></ng-template>\r\n </button>\r\n <cax-tieredMenu\r\n [id]=\"ariaId\"\r\n #menu\r\n [ngStyle]=\"{ 'position': 'fixed', 'z-index': '9999' }\"\r\n [popup]=\"true\"\r\n [model]=\"model\"\r\n [style]=\"menuStyle\"\r\n [styleClass]=\"menuStyleClass\"\r\n [appendTo]=\"appendTo\"\r\n [showTransitionOptions]=\"showTransitionOptions\"\r\n [hideTransitionOptions]=\"hideTransitionOptions\"\r\n (onHide)=\"onHide()\"\r\n (onShow)=\"onShow()\"\r\n ></cax-tieredMenu>\r\n</div>\r\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { ButtonModule } from 'cax-design-system/button';\nimport { AutoFocusModule } from 'cax-design-system/autofocus';\nimport { ChevronDownIcon } from 'cax-design-system/icons/chevrondown';\nimport { SplitButton } from './splitbutton';\nimport { TieredMenuModule } from 'cax-design-system/tieredmenu';\nimport { ChevronUpIcon } from 'cax-design-system/icons/chevronup';\n\n@NgModule({\n imports: [CommonModule, ButtonModule, TieredMenuModule, AutoFocusModule, ChevronDownIcon, ChevronUpIcon],\n exports: [SplitButton, ButtonModule, TieredMenuModule],\n declarations: [SplitButton]\n})\nexport class SplitButtonModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"cax-design-system-splitbutton.mjs","sources":["../../src/app/components/splitbutton/splitbutton.ts","../../src/app/components/splitbutton/splitbutton.html","../../src/app/components/splitbutton/splitbutton.module.ts","../../src/app/components/splitbutton/cax-design-system-splitbutton.ts"],"sourcesContent":["import { ChangeDetectionStrategy, Component, ContentChildren, ElementRef, EventEmitter, Input, NgModule, Output, QueryList, TemplateRef, ViewChild, ViewEncapsulation, booleanAttribute, numberAttribute, signal } from '@angular/core';\nimport { MenuItem, CaxTemplate } from 'cax-design-system/api';\nimport { TieredMenu } from 'cax-design-system/tieredmenu';\nimport { UniqueComponentId } from 'cax-design-system/utils';\n\nimport { ButtonProps, MenuButtonProps } from './splitbutton.interface';\n\ntype SplitButtonIconPosition = 'left' | 'right';\n/**\n * SplitButton groups a set of commands in an overlay with a default command.\n * @group Components\n */\n@Component({\n selector: 'cax-splitButton',\n templateUrl: './splitbutton.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n styleUrls: ['./splitbutton.scss'],\n host: {\n class: 'cax-element'\n }\n})\nexport class SplitButton {\n /**\n * MenuModel instance to define the overlay items.\n * @group Props\n */\n @Input() model: MenuItem[] | undefined;\n /**\n * Defines the style of the button.\n * @group Props\n */\n @Input() severity: 'success' | 'info' | 'warning' | 'danger' | 'help' | 'primary' | 'secondary' | 'contrast' | null | undefined;\n /**\n * Add a shadow to indicate elevation.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) raised: boolean = false;\n /**\n * Add a circular border radius to the button.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) rounded: boolean = false;\n /**\n * Add a textual class to the button without a background initially.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) text: boolean = false;\n /**\n * Add a border class without a background initially.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) outlined: boolean = false;\n /**\n * Defines the size of the button.\n * @group Props\n */\n @Input() size: 'small' | 'large' | undefined | null = null;\n /**\n * Add a plain textual class to the button without a background initially.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) plain: boolean = false;\n /**\n * Name of the icon.\n * @group Props\n */\n @Input() icon: string | undefined;\n /**\n * Position of the icon.\n * @group Props\n */\n @Input() iconPos: SplitButtonIconPosition = 'left';\n /**\n * Text of the button.\n * @group Props\n */\n @Input() label: string | undefined;\n /**\n * Tooltip for the main button.\n * @group Props\n */\n @Input() tooltip: string | undefined;\n /**\n * Tooltip options for the main button.\n * @group Props\n */\n @Input() tooltipOptions: string | undefined;\n /**\n * Inline style of the element.\n * @group Props\n */\n @Input() style: { [klass: string]: any } | null | undefined;\n /**\n * Class of the element.\n * @group Props\n */\n @Input() styleClass: string | undefined;\n /**\n * Inline style of the overlay menu.\n * @group Props\n */\n @Input() menuStyle: { [klass: string]: any } | null | undefined;\n /**\n * Style class of the overlay menu.\n * @group Props\n */\n @Input() menuStyleClass: string | undefined;\n\n /**\n * Target element to attach the overlay, valid values are \"body\" or a local ng-template variable of another element (note: use binding with brackets for template variables, e.g. [appendTo]=\"mydiv\" for a div element having #mydiv as variable name).\n * @group Props\n */\n @Input() appendTo: HTMLElement | ElementRef | TemplateRef<any> | string | null | undefined | any;\n /**\n * Indicates the direction of the element.\n * @group Props\n */\n @Input() dir: string | undefined;\n /**\n * Defines a string that labels the expand button for accessibility.\n * @group Props\n */\n @Input() expandAriaLabel: string | undefined;\n /**\n * Transition options of the show animation.\n * @group Props\n */\n @Input() showTransitionOptions: string = '.12s cubic-bezier(0, 0, 0.2, 1)';\n /**\n * Transition options of the hide animation.\n * @group Props\n */\n @Input() hideTransitionOptions: string = '.1s linear';\n /**\n * Button Props\n */\n @Input() buttonProps: ButtonProps | undefined;\n /**\n * Menu Button Props\n */\n @Input() menuButtonProps: MenuButtonProps | undefined;\n /**\n * When present, it specifies that the component should automatically get focus on load.\n * @group Props\n */\n isMenuOpen: boolean = false;\n @Input({ transform: booleanAttribute }) autofocus: boolean | undefined;\n /**\n * When present, it specifies that the element should be disabled.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) set disabled(v: boolean | undefined) {\n this._disabled = v;\n this._buttonDisabled = v;\n this.menuButtonDisabled = v;\n }\n public get disabled(): boolean | undefined {\n return this._disabled;\n }\n /**\n * Index of the element in tabbing order.\n * @group Props\n */\n @Input({ transform: numberAttribute }) tabindex: number | undefined;\n /**\n * When present, it specifies that the menu button element should be disabled.\n * @group Props\n */\n @Input('menuButtonDisabled') set menuButtonDisabled(v: boolean | undefined) {\n if (this.disabled) {\n this._menuButtonDisabled = this.disabled;\n } else this._menuButtonDisabled = v;\n }\n public get menuButtonDisabled(): boolean | undefined {\n return this._menuButtonDisabled;\n }\n /**\n * When present, it specifies that the button element should be disabled.\n * @group Props\n */\n @Input() set buttonDisabled(v: boolean | undefined) {\n if (this.disabled) {\n this.buttonDisabled = this.disabled;\n } else this._buttonDisabled = v;\n }\n public get buttonDisabled(): boolean {\n return this._buttonDisabled;\n }\n /**\n * Callback to invoke when default command button is clicked.\n * @param {MouseEvent} event - Mouse event.\n * @group Emits\n */\n @Output() onClick: EventEmitter<MouseEvent> = new EventEmitter<MouseEvent>();\n /**\n * Callback to invoke when overlay menu is hidden.\n * @group Emits\n */\n @Output() onMenuHide: EventEmitter<any> = new EventEmitter<any>();\n /**\n * Callback to invoke when overlay menu is shown.\n * @group Emits\n */\n @Output() onMenuShow: EventEmitter<any> = new EventEmitter<any>();\n /**\n * Callback to invoke when dropdown button is clicked.\n * @param {MouseEvent} event - Mouse event.\n * @group Emits\n */\n @Output() onDropdownClick: EventEmitter<MouseEvent> = new EventEmitter<MouseEvent>();\n\n @ViewChild('container') containerViewChild: ElementRef | undefined;\n\n @ViewChild('defaultbtn') buttonViewChild: ElementRef | undefined;\n\n @ViewChild('menu') menu: TieredMenu | undefined;\n\n @ContentChildren(CaxTemplate) templates: QueryList<CaxTemplate> | undefined;\n\n contentTemplate: TemplateRef<any> | undefined;\n\n dropdownIconTemplate: TemplateRef<any> | undefined;\n\n ariaId: string | undefined;\n\n isExpanded = signal<boolean>(false);\n\n private _disabled: boolean | undefined;\n\n private _buttonDisabled: boolean | undefined;\n\n private _menuButtonDisabled: boolean | undefined;\n\n ngOnInit() {\n this.ariaId = UniqueComponentId();\n }\n\n ngAfterContentInit() {\n this.templates?.forEach((item) => {\n switch (item.getType()) {\n case 'content':\n this.contentTemplate = item.template;\n break;\n\n case 'dropdownicon':\n this.dropdownIconTemplate = item.template;\n break;\n\n default:\n this.contentTemplate = item.template;\n break;\n }\n });\n }\n\n get containerClass() {\n const cls = {\n 'cax-splitbutton cax-component': true,\n 'cax-button-raised': this.raised,\n 'cax-button-rounded': this.rounded,\n 'cax-button-outlined': this.outlined,\n 'cax-button-text': this.text,\n [`cax-button-${this.size === 'small' ? 'sm' : 'lg'}`]: this.size\n };\n\n return { ...cls };\n }\n\n onDefaultButtonClick(event: MouseEvent) {\n this.onClick.emit(event);\n this.menu.hide();\n }\n\n onDropdownButtonClick(event?: MouseEvent) {\n this.isMenuOpen = !this.isMenuOpen;\n this.onDropdownClick.emit(event);\n this.menu?.toggle({ currentTarget: this.containerViewChild?.nativeElement, relativeAlign: this.appendTo == null });\n }\n\n onDropdownButtonKeydown(event: KeyboardEvent) {\n if (event.code === 'ArrowDown' || event.code === 'ArrowUp') {\n this.onDropdownButtonClick();\n event.preventDefault();\n }\n }\n\n onHide() {\n this.isMenuOpen = false;\n this.isExpanded.set(false);\n this.onMenuHide.emit();\n }\n\n onShow() {\n this.isMenuOpen = true;\n this.isExpanded.set(true);\n this.onMenuShow.emit();\n }\n}\n","<div #container [ngClass]=\"containerClass\" [class]=\"styleClass\" [ngStyle]=\"style\">\r\n <ng-container *ngIf=\"contentTemplate; else defaultButton\">\r\n <button\r\n class=\"cax-splitbutton-defaultbutton\"\r\n type=\"button\"\r\n caxButton\r\n [severity]=\"severity\"\r\n [text]=\"text\"\r\n [outlined]=\"outlined\"\r\n [size]=\"size\"\r\n [icon]=\"icon\"\r\n [iconPos]=\"iconPos\"\r\n (click)=\"onDefaultButtonClick($event)\"\r\n [disabled]=\"disabled\"\r\n [attr.tabindex]=\"tabindex\"\r\n [ariaLabel]=\"buttonProps?.['ariaLabel'] || label\"\r\n caxAutoFocus\r\n [autofocus]=\"autofocus\"\r\n [caxTooltip]=\"tooltip\"\r\n [tooltipOptions]=\"tooltipOptions\"\r\n >\r\n <ng-container *ngTemplateOutlet=\"contentTemplate\"></ng-container>\r\n </button>\r\n </ng-container>\r\n <ng-template #defaultButton>\r\n <button\r\n #defaultbtn\r\n class=\"cax-splitbutton-defaultbutton\"\r\n type=\"button\"\r\n caxButton\r\n [severity]=\"severity\"\r\n [text]=\"text\"\r\n [outlined]=\"outlined\"\r\n [size]=\"size\"\r\n [icon]=\"icon\"\r\n [iconPos]=\"iconPos\"\r\n [label]=\"label\"\r\n (click)=\"onDefaultButtonClick($event)\"\r\n [disabled]=\"buttonDisabled\"\r\n [attr.tabindex]=\"tabindex\"\r\n [ariaLabel]=\"buttonProps?.['ariaLabel']\"\r\n caxAutoFocus\r\n [autofocus]=\"autofocus\"\r\n [caxTooltip]=\"tooltip\"\r\n [tooltipOptions]=\"tooltipOptions\"\r\n ></button>\r\n </ng-template>\r\n <div class=\"cax-splitbutton-divider\"></div>\r\n <button\r\n type=\"button\"\r\n caxButton\r\n [size]=\"size\"\r\n [severity]=\"severity\"\r\n [text]=\"text\"\r\n [outlined]=\"outlined\"\r\n class=\"cax-splitbutton-menubutton cax-button-icon-only\"\r\n (click)=\"onDropdownButtonClick($event)\"\r\n (keydown)=\"onDropdownButtonKeydown($event)\"\r\n [ariaLabel]=\"menuButtonProps?.['ariaLabel'] || expandAriaLabel\"\r\n [attr.aria-haspopup]=\"menuButtonProps?.['ariaHasPopup'] || true\"\r\n [attr.aria-expanded]=\"menuButtonProps?.['ariaExpanded'] || isExpanded()\"\r\n [attr.aria-controls]=\"menuButtonProps?.['ariaControls'] || ariaId\"\r\n >\r\n <ChevronDownIcon *ngIf=\"!dropdownIconTemplate && !isMenuOpen\" />\r\n <ChevronUpIcon *ngIf=\"!dropdownIconTemplate && isMenuOpen\" />\r\n <ng-template *ngTemplateOutlet=\"dropdownIconTemplate\"></ng-template>\r\n </button>\r\n <cax-tieredMenu\r\n [id]=\"ariaId\"\r\n #menu\r\n [ngStyle]=\"{ 'position': 'fixed', 'z-index': '9999' }\"\r\n [popup]=\"true\"\r\n [model]=\"model\"\r\n [style]=\"menuStyle\"\r\n [styleClass]=\"menuStyleClass\"\r\n [appendTo]=\"appendTo\"\r\n [showTransitionOptions]=\"showTransitionOptions\"\r\n [hideTransitionOptions]=\"hideTransitionOptions\"\r\n (onHide)=\"onHide()\"\r\n (onShow)=\"onShow()\"\r\n ></cax-tieredMenu>\r\n</div>\r\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { ButtonModule } from 'cax-design-system/button';\nimport { AutoFocusModule } from 'cax-design-system/autofocus';\nimport { ChevronDownIcon } from 'cax-design-system/icons/chevrondown';\nimport { SplitButton } from './splitbutton';\nimport { TieredMenuModule } from 'cax-design-system/tieredmenu';\nimport { ChevronUpIcon } from 'cax-design-system/icons/chevronup';\n\n@NgModule({\n imports: [CommonModule, ButtonModule, TieredMenuModule, AutoFocusModule, ChevronDownIcon, ChevronUpIcon],\n exports: [SplitButton, ButtonModule, TieredMenuModule],\n declarations: [SplitButton]\n})\nexport class SplitButtonModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
|
|
@@ -3402,7 +3402,7 @@ class ColumnFilterFormElement {
|
|
|
3402
3402
|
}
|
|
3403
3403
|
}
|
|
3404
3404
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.9", ngImport: i0, type: ColumnFilterFormElement, deps: [{ token: Table }, { token: ColumnFilter }], target: i0.ɵɵFactoryTarget.Component });
|
|
3405
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "18.2.9", type: ColumnFilterFormElement, isStandalone: true, selector: "cax-columnFilterFormElement", inputs: { field: "field", type: "type", filterConstraint: "filterConstraint", filterTemplate: "filterTemplate", placeholder: "placeholder", minFractionDigits: ["minFractionDigits", "minFractionDigits", (value) => numberAttribute(value, null)], maxFractionDigits: ["maxFractionDigits", "maxFractionDigits", (value) => numberAttribute(value, null)], prefix: "prefix", suffix: "suffix", locale: "locale", localeMatcher: "localeMatcher", currency: "currency", currencyDisplay: "currencyDisplay", useGrouping: ["useGrouping", "useGrouping", booleanAttribute], ariaLabel: "ariaLabel" }, host: { classAttribute: "cax-element" }, ngImport: i0, template: "<ng-container *ngIf=\"filterTemplate; else builtInElement\">\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n filterTemplate;\r\n context: {\r\n $implicit: filterConstraint.value,\r\n filterCallback: filterCallback,\r\n type: type,\r\n field: field,\r\n filterConstraint: filterConstraint,\r\n placeholder: placeholder,\r\n minFractionDigits: minFractionDigits,\r\n maxFractionDigits: maxFractionDigits,\r\n prefix: prefix,\r\n suffix: suffix,\r\n locale: locale,\r\n localeMatcher: localeMatcher,\r\n currency: currency,\r\n currencyDisplay: currencyDisplay,\r\n useGrouping: useGrouping,\r\n showButtons: showButtons\r\n }\r\n \"\r\n ></ng-container>\r\n</ng-container>\r\n<ng-template #builtInElement>\r\n <ng-container [ngSwitch]=\"type\">\r\n <input *ngSwitchCase=\"'text'\" type=\"text\" [ariaLabel]=\"ariaLabel\" pInputText [value]=\"filterConstraint?.value\" (input)=\"onModelChange($event.target.value)\" (keydown.enter)=\"onTextInputEnterKeyDown($event)\" [attr.placeholder]=\"placeholder\" />\r\n <cax-inputNumber\r\n *ngSwitchCase=\"'numeric'\"\r\n [ngModel]=\"filterConstraint?.value\"\r\n (ngModelChange)=\"onModelChange($event)\"\r\n (onKeyDown)=\"onNumericInputKeyDown($event)\"\r\n [showButtons]=\"showButtons\"\r\n [minFractionDigits]=\"minFractionDigits\"\r\n [maxFractionDigits]=\"maxFractionDigits\"\r\n [ariaLabel]=\"ariaLabel\"\r\n [prefix]=\"prefix\"\r\n [suffix]=\"suffix\"\r\n [placeholder]=\"placeholder\"\r\n [mode]=\"currency ? 'currency' : 'decimal'\"\r\n [locale]=\"locale\"\r\n [localeMatcher]=\"localeMatcher\"\r\n [currency]=\"currency\"\r\n [currencyDisplay]=\"currencyDisplay\"\r\n [useGrouping]=\"useGrouping\"\r\n ></cax-inputNumber>\r\n <cax-triStateCheckbox [ariaLabel]=\"ariaLabel\" *ngSwitchCase=\"'boolean'\" [ngModel]=\"filterConstraint?.value\" (ngModelChange)=\"onModelChange($event)\"></cax-triStateCheckbox>\r\n <cax-calendar [ariaLabel]=\"ariaLabel\" *ngSwitchCase=\"'date'\" [placeholder]=\"placeholder\" [ngModel]=\"filterConstraint?.value\" (ngModelChange)=\"onModelChange($event)\" appendTo=\"body\"></cax-calendar>\r\n </ng-container>\r\n</ng-template>\r\n", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i3.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i3.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "ngmodule", type: InputTextModule }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: CalendarModule }, { kind: "component", type: i5$1.Calendar, selector: "cax-calendar", inputs: ["iconDisplay", "style", "styleClass", "inputStyle", "inputId", "name", "inputStyleClass", "placeholder", "ariaLabelledBy", "ariaLabel", "iconAriaLabel", "disabled", "dateFormat", "multipleSeparator", "rangeSeparator", "inline", "showOtherMonths", "selectOtherMonths", "showIcon", "icon", "appendTo", "readonlyInput", "shortYearCutoff", "monthNavigator", "yearNavigator", "hourFormat", "timeOnly", "stepYearPicker", "stepHour", "stepMinute", "stepSecond", "showSeconds", "required", "showOnFocus", "showWeek", "startWeekFromFirstDayOfYear", "showClear", "dataType", "selectionMode", "maxDateCount", "showButtonBar", "todayButtonStyleClass", "clearButtonStyleClass", "autofocus", "autoZIndex", "baseZIndex", "panelStyleClass", "panelStyle", "keepInvalid", "hideOnDateTimeSelect", "touchUI", "timeSeparator", "focusTrap", "showTransitionOptions", "hideTransitionOptions", "tabindex", "variant", "minDate", "maxDate", "disabledDates", "disabledDays", "yearRange", "showTime", "responsiveOptions", "numberOfMonths", "firstDayOfWeek", "locale", "view", "defaultDate"], outputs: ["onFocus", "onBlur", "onClose", "onSelect", "onClear", "onInput", "onTodayClick", "onClearClick", "onMonthChange", "onYearChange", "onClickOutside", "onShow"] }, { kind: "ngmodule", type: InputNumberModule }, { kind: "component", type: i6$1.InputNumber, selector: "cax-inputNumber", inputs: ["showButtons", "format", "buttonLayout", "inputId", "styleClass", "style", "placeholder", "size", "maxlength", "tabindex", "title", "ariaLabelledBy", "ariaLabel", "ariaRequired", "name", "required", "autocomplete", "min", "max", "incrementButtonClass", "decrementButtonClass", "incrementButtonIcon", "decrementButtonIcon", "readonly", "step", "allowEmpty", "locale", "localeMatcher", "mode", "currency", "currencyDisplay", "useGrouping", "variant", "minFractionDigits", "maxFractionDigits", "prefix", "suffix", "inputStyle", "inputStyleClass", "showClear", "autofocus", "disabled"], outputs: ["onInput", "onFocus", "onBlur", "onKeyDown", "onClear"] }, { kind: "ngmodule", type: TriStateCheckboxModule }, { kind: "component", type: i7.TriStateCheckbox, selector: "cax-triStateCheckbox", inputs: ["disabled", "name", "ariaLabel", "ariaLabelledBy", "variant", "tabindex", "inputId", "style", "styleClass", "label", "readonly", "checkboxTrueIcon", "checkboxFalseIcon", "autofocus"], outputs: ["onChange"] }], encapsulation: i0.ViewEncapsulation.None });
|
|
3405
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "18.2.9", type: ColumnFilterFormElement, isStandalone: true, selector: "cax-columnFilterFormElement", inputs: { field: "field", type: "type", filterConstraint: "filterConstraint", filterTemplate: "filterTemplate", placeholder: "placeholder", minFractionDigits: ["minFractionDigits", "minFractionDigits", (value) => numberAttribute(value, null)], maxFractionDigits: ["maxFractionDigits", "maxFractionDigits", (value) => numberAttribute(value, null)], prefix: "prefix", suffix: "suffix", locale: "locale", localeMatcher: "localeMatcher", currency: "currency", currencyDisplay: "currencyDisplay", useGrouping: ["useGrouping", "useGrouping", booleanAttribute], ariaLabel: "ariaLabel" }, host: { classAttribute: "cax-element" }, ngImport: i0, template: "<ng-container *ngIf=\"filterTemplate; else builtInElement\">\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n filterTemplate;\r\n context: {\r\n $implicit: filterConstraint.value,\r\n filterCallback: filterCallback,\r\n type: type,\r\n field: field,\r\n filterConstraint: filterConstraint,\r\n placeholder: placeholder,\r\n minFractionDigits: minFractionDigits,\r\n maxFractionDigits: maxFractionDigits,\r\n prefix: prefix,\r\n suffix: suffix,\r\n locale: locale,\r\n localeMatcher: localeMatcher,\r\n currency: currency,\r\n currencyDisplay: currencyDisplay,\r\n useGrouping: useGrouping,\r\n showButtons: showButtons\r\n }\r\n \"\r\n ></ng-container>\r\n</ng-container>\r\n<ng-template #builtInElement>\r\n <ng-container [ngSwitch]=\"type\">\r\n <input *ngSwitchCase=\"'text'\" type=\"text\" [ariaLabel]=\"ariaLabel\" pInputText [value]=\"filterConstraint?.value\" (input)=\"onModelChange($event.target.value)\" (keydown.enter)=\"onTextInputEnterKeyDown($event)\" [attr.placeholder]=\"placeholder\" />\r\n <cax-inputNumber\r\n *ngSwitchCase=\"'numeric'\"\r\n [ngModel]=\"filterConstraint?.value\"\r\n (ngModelChange)=\"onModelChange($event)\"\r\n (onKeyDown)=\"onNumericInputKeyDown($event)\"\r\n [showButtons]=\"showButtons\"\r\n [minFractionDigits]=\"minFractionDigits\"\r\n [maxFractionDigits]=\"maxFractionDigits\"\r\n [ariaLabel]=\"ariaLabel\"\r\n [prefix]=\"prefix\"\r\n [suffix]=\"suffix\"\r\n [placeholder]=\"placeholder\"\r\n [mode]=\"currency ? 'currency' : 'decimal'\"\r\n [locale]=\"locale\"\r\n [localeMatcher]=\"localeMatcher\"\r\n [currency]=\"currency\"\r\n [currencyDisplay]=\"currencyDisplay\"\r\n [useGrouping]=\"useGrouping\"\r\n ></cax-inputNumber>\r\n <cax-triStateCheckbox [ariaLabel]=\"ariaLabel\" *ngSwitchCase=\"'boolean'\" [ngModel]=\"filterConstraint?.value\" (ngModelChange)=\"onModelChange($event)\"></cax-triStateCheckbox>\r\n <cax-calendar [ariaLabel]=\"ariaLabel\" *ngSwitchCase=\"'date'\" [placeholder]=\"placeholder\" [ngModel]=\"filterConstraint?.value\" (ngModelChange)=\"onModelChange($event)\" appendTo=\"body\"></cax-calendar>\r\n </ng-container>\r\n</ng-template>\r\n", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i3.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i3.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "ngmodule", type: InputTextModule }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: CalendarModule }, { kind: "component", type: i5$1.Calendar, selector: "cax-calendar", inputs: ["iconDisplay", "style", "styleClass", "inputStyle", "inputId", "name", "inputStyleClass", "placeholder", "ariaLabelledBy", "ariaLabel", "iconAriaLabel", "disabled", "dateFormat", "multipleSeparator", "rangeSeparator", "inline", "showOtherMonths", "selectOtherMonths", "showIcon", "icon", "appendTo", "readonlyInput", "shortYearCutoff", "monthNavigator", "yearNavigator", "hourFormat", "timeOnly", "stepYearPicker", "stepHour", "stepMinute", "stepSecond", "showSeconds", "required", "showOnFocus", "showWeek", "startWeekFromFirstDayOfYear", "showClear", "dataType", "selectionMode", "maxDateCount", "showButtonBar", "todayButtonStyleClass", "clearButtonStyleClass", "autofocus", "autoZIndex", "baseZIndex", "panelStyleClass", "panelStyle", "keepInvalid", "hideOnDateTimeSelect", "touchUI", "timeSeparator", "leftIcon", "focusTrap", "showTransitionOptions", "hideTransitionOptions", "tabindex", "variant", "minDate", "maxDate", "disabledDates", "disabledDays", "yearRange", "showTime", "responsiveOptions", "numberOfMonths", "firstDayOfWeek", "locale", "view", "defaultDate"], outputs: ["onFocus", "onBlur", "onClose", "onSelect", "onClear", "onInput", "onTodayClick", "onClearClick", "onMonthChange", "onYearChange", "onClickOutside", "onShow"] }, { kind: "ngmodule", type: InputNumberModule }, { kind: "component", type: i6$1.InputNumber, selector: "cax-inputNumber", inputs: ["showButtons", "format", "buttonLayout", "inputId", "styleClass", "style", "placeholder", "size", "maxlength", "tabindex", "title", "ariaLabelledBy", "ariaLabel", "ariaRequired", "name", "required", "autocomplete", "min", "max", "incrementButtonClass", "decrementButtonClass", "incrementButtonIcon", "decrementButtonIcon", "readonly", "step", "allowEmpty", "locale", "localeMatcher", "mode", "currency", "currencyDisplay", "useGrouping", "variant", "minFractionDigits", "maxFractionDigits", "prefixIcon", "prefix", "suffix", "inputStyle", "inputStyleClass", "showClear", "autofocus", "disabled"], outputs: ["onInput", "onFocus", "onBlur", "onKeyDown", "onClear"] }, { kind: "ngmodule", type: TriStateCheckboxModule }, { kind: "component", type: i7.TriStateCheckbox, selector: "cax-triStateCheckbox", inputs: ["disabled", "name", "ariaLabel", "ariaLabelledBy", "variant", "tabindex", "inputId", "style", "styleClass", "label", "readonly", "checkboxTrueIcon", "checkboxFalseIcon", "autofocus"], outputs: ["onChange"] }], encapsulation: i0.ViewEncapsulation.None });
|
|
3406
3406
|
}
|
|
3407
3407
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.9", ngImport: i0, type: ColumnFilterFormElement, decorators: [{
|
|
3408
3408
|
type: Component,
|