@acorex/components 7.11.6 → 7.12.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/button/lib/button.module.d.ts +1 -1
- package/calendar/lib/calendar.component.d.ts +1 -1
- package/chips/lib/chips.component.d.ts +2 -1
- package/common/lib/common.module.d.ts +1 -2
- package/common/lib/directives/ripple.directive.d.ts +1 -1
- package/esm2022/action-sheet/lib/action-sheet.component.mjs +2 -2
- package/esm2022/alert/lib/alert.component.mjs +2 -2
- package/esm2022/avatar/lib/avatar.component.mjs +2 -2
- package/esm2022/badge/lib/badge.component.mjs +2 -2
- package/esm2022/breadcrumbs/lib/breadcrumbs.component.mjs +2 -2
- package/esm2022/button/lib/button-item-list.component.mjs +2 -2
- package/esm2022/button/lib/button.component.mjs +2 -2
- package/esm2022/button/lib/button.module.mjs +5 -5
- package/esm2022/button-group/lib/button-group.component.mjs +2 -2
- package/esm2022/calendar/lib/calendar-range.component.mjs +2 -2
- package/esm2022/calendar/lib/calendar.component.mjs +10 -12
- package/esm2022/check-box/lib/check-box.component.mjs +2 -2
- package/esm2022/chips/lib/chips.component.mjs +6 -5
- package/esm2022/circular-progress/lib/circular-progress.component.mjs +2 -2
- package/esm2022/collapse/lib/collapse.component.mjs +3 -3
- package/esm2022/color-box/lib/color-box.component.mjs +2 -2
- package/esm2022/color-palette/lib/color-palette.component.mjs +2 -2
- package/esm2022/common/lib/common.module.mjs +4 -25
- package/esm2022/common/lib/directives/ripple.directive.mjs +4 -3
- package/esm2022/data-pager/lib/data-pager.component.mjs +2 -2
- package/esm2022/data-table/lib/columns/row-command-column.component.mjs +7 -8
- package/esm2022/data-table/lib/data-table.component.mjs +2 -2
- package/esm2022/datetime-picker/lib/datetime-picker.component.mjs +2 -2
- package/esm2022/dialog/lib/dialog.component.mjs +2 -2
- package/esm2022/drawer/lib/drawer.component.mjs +2 -2
- package/esm2022/dropdown/lib/dropdown-panel.component.mjs +2 -2
- package/esm2022/form/lib/form-field.component.mjs +2 -2
- package/esm2022/image/lib/image.component.mjs +2 -2
- package/esm2022/label/lib/label.component.mjs +2 -2
- package/esm2022/list/lib/list.component.mjs +2 -2
- package/esm2022/loading/lib/loading.component.mjs +2 -2
- package/esm2022/menu/lib/class/root-menu.class.mjs +1 -1
- package/esm2022/menu/lib/menu-item/menu-item.component.mjs +5 -10
- package/esm2022/menu/lib/menu.component.mjs +13 -47
- package/esm2022/menu/lib/menu.module.mjs +3 -14
- package/esm2022/navbar/lib/navbar.component.mjs +2 -2
- package/esm2022/notification/lib/notification.component.mjs +2 -2
- package/esm2022/number-box/lib/number-box.component.mjs +2 -2
- package/esm2022/otp/lib/otp.component.mjs +2 -2
- package/esm2022/picker/lib/picker.component.mjs +2 -2
- package/esm2022/popup/lib/popup.component.mjs +2 -2
- package/esm2022/progress-bar/lib/progress-bar.component.mjs +2 -2
- package/esm2022/radio/lib/radio.component.mjs +2 -2
- package/esm2022/range-slider/lib/range-slider.component.mjs +2 -2
- package/esm2022/result/lib/result.component.mjs +2 -2
- package/esm2022/routing-progress/lib/routing-progress.component.mjs +2 -2
- package/esm2022/scheduler/lib/scheduler.component.mjs +2 -2
- package/esm2022/search-box/lib/search-box.component.mjs +2 -2
- package/esm2022/select-box/lib/select-box.component.mjs +2 -2
- package/esm2022/selection-list/lib/selection-list.component.mjs +2 -2
- package/esm2022/side-menu/lib/side-menu.component.mjs +2 -2
- package/esm2022/side-menu/lib/side-menu.module.mjs +5 -5
- package/esm2022/skeleton/lib/skeleton.component.mjs +2 -2
- package/esm2022/switch/lib/switch.component.mjs +2 -2
- package/esm2022/tabs/lib/tabs.component.mjs +4 -4
- package/esm2022/tag/lib/tag.component.mjs +2 -2
- package/esm2022/text-area/lib/text-area.component.mjs +2 -2
- package/esm2022/toast/lib/toast.component.mjs +2 -2
- package/esm2022/toast/lib/toast.service.mjs +2 -3
- package/esm2022/tooltip/lib/tooltip.component.mjs +2 -2
- package/esm2022/uploader/lib/uploader-list.component.mjs +3 -3
- package/fesm2022/acorex-components-action-sheet.mjs +2 -2
- package/fesm2022/acorex-components-action-sheet.mjs.map +1 -1
- package/fesm2022/acorex-components-alert.mjs +2 -2
- package/fesm2022/acorex-components-alert.mjs.map +1 -1
- package/fesm2022/acorex-components-avatar.mjs +2 -2
- package/fesm2022/acorex-components-avatar.mjs.map +1 -1
- package/fesm2022/acorex-components-badge.mjs +2 -2
- package/fesm2022/acorex-components-badge.mjs.map +1 -1
- package/fesm2022/acorex-components-breadcrumbs.mjs +2 -2
- package/fesm2022/acorex-components-breadcrumbs.mjs.map +1 -1
- package/fesm2022/acorex-components-button-group.mjs +2 -2
- package/fesm2022/acorex-components-button-group.mjs.map +1 -1
- package/fesm2022/acorex-components-button.mjs +8 -8
- package/fesm2022/acorex-components-button.mjs.map +1 -1
- package/fesm2022/acorex-components-calendar.mjs +11 -13
- package/fesm2022/acorex-components-calendar.mjs.map +1 -1
- package/fesm2022/acorex-components-check-box.mjs +2 -2
- package/fesm2022/acorex-components-chips.mjs +5 -4
- package/fesm2022/acorex-components-chips.mjs.map +1 -1
- package/fesm2022/acorex-components-circular-progress.mjs +2 -2
- package/fesm2022/acorex-components-circular-progress.mjs.map +1 -1
- package/fesm2022/acorex-components-collapse.mjs +2 -2
- package/fesm2022/acorex-components-collapse.mjs.map +1 -1
- package/fesm2022/acorex-components-color-box.mjs +2 -2
- package/fesm2022/acorex-components-color-box.mjs.map +1 -1
- package/fesm2022/acorex-components-color-palette.mjs +2 -2
- package/fesm2022/acorex-components-color-palette.mjs.map +1 -1
- package/fesm2022/acorex-components-common.mjs +46 -65
- package/fesm2022/acorex-components-common.mjs.map +1 -1
- package/fesm2022/acorex-components-data-pager.mjs +2 -2
- package/fesm2022/acorex-components-data-pager.mjs.map +1 -1
- package/fesm2022/acorex-components-data-table.mjs +7 -8
- package/fesm2022/acorex-components-data-table.mjs.map +1 -1
- package/fesm2022/acorex-components-datetime-picker.mjs +2 -2
- package/fesm2022/acorex-components-datetime-picker.mjs.map +1 -1
- package/fesm2022/acorex-components-dialog.mjs +2 -2
- package/fesm2022/acorex-components-dialog.mjs.map +1 -1
- package/fesm2022/acorex-components-drawer.mjs +2 -2
- package/fesm2022/acorex-components-drawer.mjs.map +1 -1
- package/fesm2022/acorex-components-dropdown.mjs +2 -2
- package/fesm2022/acorex-components-dropdown.mjs.map +1 -1
- package/fesm2022/acorex-components-form.mjs +2 -2
- package/fesm2022/acorex-components-form.mjs.map +1 -1
- package/fesm2022/acorex-components-image.mjs +2 -2
- package/fesm2022/acorex-components-image.mjs.map +1 -1
- package/fesm2022/acorex-components-label.mjs +2 -2
- package/fesm2022/acorex-components-label.mjs.map +1 -1
- package/fesm2022/acorex-components-list.mjs +2 -2
- package/fesm2022/acorex-components-list.mjs.map +1 -1
- package/fesm2022/acorex-components-loading.mjs +2 -2
- package/fesm2022/acorex-components-loading.mjs.map +1 -1
- package/fesm2022/acorex-components-menu.mjs +17 -66
- package/fesm2022/acorex-components-menu.mjs.map +1 -1
- package/fesm2022/acorex-components-navbar.mjs +2 -2
- package/fesm2022/acorex-components-navbar.mjs.map +1 -1
- package/fesm2022/acorex-components-notification.mjs +2 -2
- package/fesm2022/acorex-components-notification.mjs.map +1 -1
- package/fesm2022/acorex-components-number-box.mjs +2 -2
- package/fesm2022/acorex-components-number-box.mjs.map +1 -1
- package/fesm2022/acorex-components-otp.mjs +2 -2
- package/fesm2022/acorex-components-otp.mjs.map +1 -1
- package/fesm2022/acorex-components-picker.mjs +2 -2
- package/fesm2022/acorex-components-picker.mjs.map +1 -1
- package/fesm2022/acorex-components-popup.mjs +2 -2
- package/fesm2022/acorex-components-popup.mjs.map +1 -1
- package/fesm2022/acorex-components-progress-bar.mjs +2 -2
- package/fesm2022/acorex-components-progress-bar.mjs.map +1 -1
- package/fesm2022/acorex-components-radio.mjs +2 -2
- package/fesm2022/acorex-components-range-slider.mjs +2 -2
- package/fesm2022/acorex-components-range-slider.mjs.map +1 -1
- package/fesm2022/acorex-components-result.mjs +2 -2
- package/fesm2022/acorex-components-result.mjs.map +1 -1
- package/fesm2022/acorex-components-routing-progress.mjs +2 -2
- package/fesm2022/acorex-components-routing-progress.mjs.map +1 -1
- package/fesm2022/acorex-components-scheduler.mjs +2 -2
- package/fesm2022/acorex-components-scheduler.mjs.map +1 -1
- package/fesm2022/acorex-components-search-box.mjs +1 -1
- package/fesm2022/acorex-components-search-box.mjs.map +1 -1
- package/fesm2022/acorex-components-select-box.mjs +2 -2
- package/fesm2022/acorex-components-select-box.mjs.map +1 -1
- package/fesm2022/acorex-components-selection-list.mjs +2 -2
- package/fesm2022/acorex-components-selection-list.mjs.map +1 -1
- package/fesm2022/acorex-components-side-menu.mjs +6 -6
- package/fesm2022/acorex-components-side-menu.mjs.map +1 -1
- package/fesm2022/acorex-components-skeleton.mjs +2 -2
- package/fesm2022/acorex-components-skeleton.mjs.map +1 -1
- package/fesm2022/acorex-components-switch.mjs +2 -2
- package/fesm2022/acorex-components-switch.mjs.map +1 -1
- package/fesm2022/acorex-components-tabs.mjs +3 -3
- package/fesm2022/acorex-components-tabs.mjs.map +1 -1
- package/fesm2022/acorex-components-tag.mjs +2 -2
- package/fesm2022/acorex-components-tag.mjs.map +1 -1
- package/fesm2022/acorex-components-text-area.mjs +2 -2
- package/fesm2022/acorex-components-text-area.mjs.map +1 -1
- package/fesm2022/acorex-components-toast.mjs +3 -4
- package/fesm2022/acorex-components-toast.mjs.map +1 -1
- package/fesm2022/acorex-components-tooltip.mjs +2 -2
- package/fesm2022/acorex-components-tooltip.mjs.map +1 -1
- package/fesm2022/acorex-components-uploader.mjs +2 -2
- package/fesm2022/acorex-components-uploader.mjs.map +1 -1
- package/menu/lib/class/root-menu.class.d.ts +1 -1
- package/menu/lib/menu-item/menu-item.component.d.ts +3 -4
- package/menu/lib/menu.component.d.ts +5 -12
- package/package.json +4 -4
- package/side-menu/lib/side-menu.module.d.ts +1 -1
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"acorex-components-data-table.mjs","sources":["../../../../libs/components/data-table/src/lib/columns/data-table-column.ts","../../../../libs/components/data-table/src/lib/columns/data-text-column.component.ts","../../../../libs/components/data-table/src/lib/data-table.component.ts","../../../../libs/components/data-table/src/lib/data-table.component.html","../../../../libs/components/data-table/src/lib/columns/row-index-column.component.ts","../../../../libs/components/data-table/src/lib/columns/row-select-column.component.ts","../../../../libs/components/data-table/src/lib/columns/row-command-column.component.ts","../../../../libs/components/data-table/src/lib/data-table.module.ts","../../../../libs/components/data-table/src/acorex-components-data-table.ts"],"sourcesContent":["import { AXSortOrder } from \"@acorex/components/common\";\nimport { Injectable, Input, TemplateRef } from \"@angular/core\";\n\n@Injectable()\nexport abstract class AXDataTableColumnComponent {\n\n @Input()\n caption: string;\n\n @Input()\n width: string | number = 'auto';\n\n\n @Input()\n fixed: 'start' | 'end' | undefined;\n\n @Input()\n allowSorting = false;\n\n\n @Input()\n sortIndex: number | undefined = undefined;\n\n @Input()\n sortOrder: AXSortOrder | undefined = undefined;\n\n\n @Input()\n headerTemplate?: TemplateRef<unknown>;\n\n @Input()\n cellTemplate?: TemplateRef<unknown>;\n\n abstract get template(): TemplateRef<unknown>;\n\n abstract get skeleton(): boolean;\n\n\n get cssClass(): string | undefined {\n return null;\n }\n}","import { ChangeDetectionStrategy, Component, Input, TemplateRef, ViewChild, ViewEncapsulation, inject } from \"@angular/core\";\nimport { AXDataTableColumnComponent } from \"./data-table-column\";\nimport { AXFormatService } from \"@acorex/core/format\";\nimport { Memorize } from \"@acorex/core/memorize\";\n\n@Component({\n selector: 'ax-text-column',\n template: `\n <ng-template let-row>\n {{getDisplayText(row.data,this.dataField)}}\n </ng-template>`,\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [{ provide: AXDataTableColumnComponent, useExisting: AXDataTableTextColumnComponent }],\n inputs: ['width', 'caption', 'headerTemplate', 'cellTemplate', 'allowSorting', 'fixed'],\n})\nexport class AXDataTableTextColumnComponent extends AXDataTableColumnComponent {\n\n @Input()\n dataField: string;\n\n @ViewChild(TemplateRef)\n private _template: TemplateRef<unknown>;\n\n get template(): TemplateRef<unknown> {\n return this._template;\n }\n\n get skeleton(): boolean {\n return true;\n }\n\n private formatService = inject(AXFormatService);\n\n\n @Memorize()\n protected getDisplayText(rowData: unknown, dataField: string): string {\n const value = rowData[dataField];\n const options = Array.isArray(this.formatOptions) ? this.formatOptions : [this.formatOptions];\n return !this.format ? value : this.formatService.format(value, this.format, ...options);\n }\n\n @Input()\n format: string;\n\n @Input()\n formatOptions: unknown;\n}","import {\n AXPagedComponent,\n AXValueChangedEvent,\n MXBaseComponent,\n AXListDataSource,\n convertArrayToDataSource,\n AXDataSource,\n AXEvent\n} from '@acorex/components/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n ContentChildren,\n ElementRef,\n EventEmitter,\n Input,\n Output,\n QueryList,\n TemplateRef,\n ViewChild,\n ViewEncapsulation,\n} from '@angular/core';\n\nimport { CdkVirtualForOf, CdkVirtualScrollViewport } from '@angular/cdk/scrolling';\nimport sum from 'lodash-es/sum';\nimport { AXDataTableColumnComponent } from './columns/data-table-column';\nimport { AXDataTableTextColumnComponent } from './columns/data-text-column.component';\n\nexport interface AXDataTableScrollIndexChanged extends AXEvent {\n index: number;\n}\n\n@Component({\n selector: 'ax-data-table',\n templateUrl: './data-table.component.html',\n styleUrls: ['./data-table.component.scss'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [{ provide: AXPagedComponent, useExisting: AXDataTableComponent }],\n})\nexport class AXDataTableComponent extends MXBaseComponent {\n @ContentChildren(AXDataTableColumnComponent)\n protected columns: QueryList<AXDataTableColumnComponent>;\n\n\n protected startFixedColumn(): AXDataTableColumnComponent[] {\n return this.columns?.toArray().filter(c => c.fixed == 'start') ?? [];\n }\n\n protected endFixedColumn(): AXDataTableColumnComponent[] {\n return this.columns?.toArray().filter(c => c.fixed == 'end') ?? [];\n }\n\n protected notFixedColumn(): AXDataTableColumnComponent[] {\n return this.columns?.toArray().filter(c => !c.fixed) ?? [];\n }\n\n protected notFixedColumnCount(): number {\n return this.columns?.toArray().filter(c => !c.fixed).length ?? 0;\n }\n\n protected fixedColumnCount(): number {\n return this.columns?.toArray().filter(c => c.fixed).length ?? 0;\n }\n\n\n\n @Output()\n onPageChanged: EventEmitter<AXValueChangedEvent<number>> = new EventEmitter<AXValueChangedEvent<number>>();\n\n @Input()\n rowTemplate?: TemplateRef<unknown>;\n\n @Input()\n emptyTemplate?: TemplateRef<unknown>;\n\n\n @Input()\n loadingTemplate: TemplateRef<unknown>;\n\n @Input()\n showHeader = true;\n\n @Input()\n fetchDataMode: 'auto' | 'manual' = 'auto';\n\n @Input()\n dataSource: AXDataSource<unknown> = convertArrayToDataSource([]);\n\n protected listDataSource: AXListDataSource<unknown>;\n protected isLoading = true;\n protected hasItems = false;\n protected totalRows = 0;\n protected currentPage = 0;\n protected totalPages = 0;\n protected startRowIndex = 0;\n private lastIndex = 0;\n\n\n @Output()\n focusedRowChange: EventEmitter<unknown> = new EventEmitter<unknown>();\n\n private _focusedRow: unknown;\n @Input()\n public get focusedRow(): unknown {\n return this._focusedRow;\n }\n public set focusedRow(v: unknown) {\n this._focusedRow = v;\n this.focusedRowChange.emit(v);\n }\n\n\n @Output()\n selectedRowsChange: EventEmitter<unknown[]> = new EventEmitter<unknown[]>();\n\n private _selectedRows: unknown[] = [];\n @Input()\n public get selectedRows(): unknown[] {\n return this._selectedRows;\n }\n public set selectedRows(v: unknown[]) {\n this._selectedRows = v;\n this.selectedRowsChange.emit(v);\n }\n\n\n public selectRows(...rows: unknown[]) {\n this.selectedRows = [...this.selectedRows, ...rows];\n }\n\n public unSelectRows(...rows: unknown[]) {\n this.selectedRows = this.selectedRows.filter(c => !rows.includes(c));\n }\n\n\n @Input()\n itemHeight: number | 'auto' = 40;\n\n protected width = \"100%\";\n protected height = \"100%\";\n\n\n @ViewChild(CdkVirtualScrollViewport, { static: true })\n private viewport: CdkVirtualScrollViewport;\n\n @Output()\n onScrolledIndexChanged: EventEmitter<AXDataTableScrollIndexChanged> =\n new EventEmitter<AXDataTableScrollIndexChanged>();\n\n trackByIdx(i) {\n return i;\n }\n\n ngOnInit() {\n super.ngOnInit();\n this.listDataSource = new AXListDataSource<unknown>({\n source: this.dataSource,\n });\n this.listDataSource.source\n .onLoadingChanged\n .subscribe((data) => {\n this.isLoading = data;\n });\n this.listDataSource.source\n .onChanged\n .subscribe((data) => {\n this.totalRows = data.totalCount;\n this.hasItems = data.totalCount > 0;\n setTimeout(() => {\n this.render();\n }, 100);\n });\n }\n @ViewChild('headerContainer') headerContainer: ElementRef<HTMLDivElement>;\n @ViewChild('footerContainer') footerContainer: ElementRef;\n\n protected _handleOnscrolledIndexChange(e: number) {\n this.lastIndex = e;\n this.onScrolledIndexChanged.emit({\n component: this,\n index: this.lastIndex,\n isUserInteraction: true,\n });\n }\n\n ngDoCheck() {\n //this.copyFixedColumns();\n if (this.headerContainer) {\n const headerContainer = this.headerContainer.nativeElement;\n const left = this.getHostElement().querySelector('.cdk-virtual-scrollable').scrollLeft;\n headerContainer.style.transform = `translateX(${-left}px)`\n }\n if (this.columns && this.columns.length) {\n const sumPx = sum(this.columns.toArray().map(c => typeof c.width == 'number' ? c.width : Number(c.width.replace('px', ''))));\n this.width = `${Math.max(sumPx, this.getHostElement().clientWidth - 5)}px`;\n }\n this.height = `calc(100% - ${((this.headerContainer?.nativeElement.clientHeight ?? 0) + (this.footerContainer?.nativeElement.clientHeight ?? 0))}px)`;\n\n this.startRowIndex = this.lastIndex;\n if (this.startRowIndex < 1)\n this.startRowIndex = 1;\n if (this.startRowIndex > this.totalRows)\n this.startRowIndex = this.totalRows\n }\n\n\n // Function to copy fixed columns\n private copyFixedColumns() {\n const originalRows = Array.from(this.viewport._contentWrapper.nativeElement.querySelectorAll('tr'));\n const fixedColumnTable = this.getHostElement().querySelector<HTMLTableElement>('.ax-body-fixed-columns > table > tbody');\n fixedColumnTable.querySelectorAll('tr').forEach(n => n.remove());\n for (const row of originalRows) {\n const fixedCells = Array.from(row.querySelectorAll('[data-fixed=\"start\"]'));\n const fixedRow = document.createElement('tr');\n for (const cell of fixedCells) {\n const clonedCell = cell.cloneNode(true);\n fixedRow.appendChild(clonedCell);\n }\n fixedColumnTable.appendChild(fixedRow);\n }\n const scrollTop = this.getHostElement().querySelector('.cdk-virtual-scrollable').scrollTop;\n fixedColumnTable.style.transform = `translateY(${-scrollTop}px)`\n }\n\n public render() {\n this.viewport.checkViewportSize();\n this.viewport.scrollToIndex(this.lastIndex);\n this.cdr.markForCheck();\n }\n\n public refresh() {\n this.lastIndex = 0;\n this.dataSource.refresh();\n }\n\n\n protected handleRowClick(e: MouseEvent, item: unknown) {\n if (this.focusedRow == item) {\n this.focusedRow = null;\n }\n else {\n this.focusedRow = item;\n }\n }\n\n handleColumnClick(e: MouseEvent, column: AXDataTableColumnComponent) {\n if (column instanceof AXDataTableTextColumnComponent) {\n const sort = this.dataSource.query.sort.find(c => c.field == column.dataField);\n if (!sort) {\n this.dataSource.query.sort.push({ field: column.dataField, dir: 'asc' })\n }\n else {\n if (sort.dir == 'asc') {\n sort.dir = 'desc'\n }\n else {\n this.dataSource.query.sort = this.dataSource.query.sort.filter(c => c != sort);\n }\n }\n this.refresh()\n }\n }\n\n\n protected getSort(column: AXDataTableColumnComponent): string | undefined {\n if (column instanceof AXDataTableTextColumnComponent) {\n const sort = this.dataSource.query.sort.find(c => c.field == column.dataField);\n return sort ? (sort.dir == 'asc' ? 'ax-icon-arrow-long-down' : 'ax-icon-arrow-long-up') : undefined;\n }\n return undefined\n }\n\n protected onViewChange(e) {\n console.log(e);\n }\n}\n","<ng-content select=\"ax-header\">\n</ng-content>\n<!------------------- Header contents ------------------->\n<div class=\"ax-header-content\" *ngIf=\"showHeader\">\n <div class=\"ax-header-columns ax-header-fixed-columns\" *ngIf=\"false\">\n <table tabindex=\"0\" [style.width]=\"width\">\n <colgroup>\n <!------------------- start fixed column ------------------->\n <col *ngFor=\"let c of startFixedColumn()\" [style.width]=\"c.width\">\n <!------------------- not fixed column ------------------->\n <col *ngFor=\"let c of notFixedColumn()\" [style.width]=\"c.width\">\n <col style=\"width: 10px;\">\n </colgroup>\n <thead>\n <tr>\n <!------------------- start fixed column ------------------->\n <th *ngFor=\"let c of startFixedColumn()\" [class.ax-interactive]=\"c.allowSorting\"\n (click)=\"c.allowSorting ? handleColumnClick($event,c) : null\" class=\"ax-column-fixed\">\n <ng-template [ngIf]=\"c.headerTemplate\" [ngIfElse]=\"captionTpl\">\n <ng-container *ngTemplateOutlet=\"c.headerTemplate\"></ng-container>\n </ng-template>\n <ng-template #captionTpl>\n <div class=\"ax-caption\">\n {{c.caption }}\n <ax-icon *ngIf=\"getSort(c)\" icon=\"ax-icon {{getSort(c)}}\"></ax-icon>\n </div>\n </ng-template>\n </th>\n <!------------------- not fixed column ------------------->\n <th [attr.colspan]=\"notFixedColumnCount()\">\n\n </th>\n </tr>\n </thead>\n </table>\n </div>\n <div class=\"ax-header-columns\">\n <table tabindex=\"0\" [style.width]=\"width\" #headerContainer>\n <colgroup>\n <col *ngFor=\"let c of startFixedColumn()\" [style.width]=\"c.width\">\n <col *ngFor=\"let c of notFixedColumn()\" [style.width]=\"c.width\">\n <col style=\"width: auto;\">\n </colgroup>\n <thead>\n <tr>\n <th *ngFor=\"let c of startFixedColumn()\">\n </th>\n <th *ngFor=\"let c of notFixedColumn()\" [class.ax-interactive]=\"c.allowSorting\"\n (click)=\"c.allowSorting ? handleColumnClick($event,c) : null\">\n <ng-template [ngIf]=\"c.headerTemplate\" [ngIfElse]=\"captionTpl\">\n <ng-container *ngTemplateOutlet=\"c.headerTemplate\"></ng-container>\n </ng-template>\n <ng-template #captionTpl>\n <div class=\"ax-caption\">\n {{c.caption}}\n <ax-icon *ngIf=\"getSort(c)\" icon=\"ax-icon {{getSort(c)}}\"></ax-icon>\n </div>\n </ng-template>\n </th>\n <th></th>\n </tr>\n </thead>\n </table>\n </div>\n</div>\n<!------------------- Body contents ------------------->\n<div [style.height]=\"height\" class=\"ax-body-content\">\n <div class=\"ax-body-columns ax-body-fixed-columns\" *ngIf=\"false\">\n <table tabindex=\"0\" class=\"ax-table-body\" [style.width]=\"width\">\n <colgroup>\n <!------------------- start fixed column ------------------->\n <col *ngFor=\"let c of startFixedColumn()\" [style.width]=\"c.width\">\n <!------------------- not fixed column ------------------->\n <col *ngFor=\"let c of notFixedColumn()\" [style.width]=\"c.width\">\n <col>\n </colgroup>\n <tbody>\n </tbody>\n </table>\n </div>\n <div class=\"ax-body-columns\">\n <div cdkVirtualScrollingElement [style.height]=\"'100%'\">\n <cdk-virtual-scroll-viewport [itemSize]=\"itemHeight\" [style.--item-height]=\"itemHeight+'px'\"\n (scrolledIndexChange)=\"_handleOnscrolledIndexChange($event)\">\n <table tabindex=\"0\" class=\"ax-table-body\" [style.width]=\"width\">\n <colgroup>\n <!------------------- start fixed column ------------------->\n <col *ngFor=\"let c of startFixedColumn()\" [style.width]=\"c.width\">\n <!------------------- not fixed column ------------------->\n <col *ngFor=\"let c of notFixedColumn()\" [style.width]=\"c.width\">\n <col>\n </colgroup>\n <tbody>\n <ng-container\n *cdkVirtualFor=\"let item of listDataSource; let i = index; trackBy: trackByIdx;let rIndex=index;\"\n (viewChange)=\"onViewChange($event)\">\n <ng-template [ngIf]=\"rowTemplate\" [ngIfElse]=\"rowTpl\">\n <ng-container *ngTemplateOutlet=\"rowTemplate;context: { $implicit: {data:item,rowIndex:rIndex} }\">\n </ng-container>\n </ng-template>\n <ng-template #rowTpl>\n <tr [class.ax-state-focused]=\"focusedRow && item===focusedRow\" [attr.data-index]=\"rIndex\"\n [class.ax-state-selected]=\"selectedRows.includes(item)\" (click)=\"handleRowClick($event,item)\">\n <!------------------- start fixed column ------------------->\n <ng-container *ngFor=\"let c of startFixedColumn()\">\n <ng-template [ngIf]=\"c.cellTemplate\" [ngIfElse]=\"cellTpl\">\n <div class=\"ax-content\">\n <ng-container\n *ngTemplateOutlet=\"c.cellTemplate;context: { $implicit: {data:item,rowIndex:rIndex} }\">\n </ng-container>\n </div>\n </ng-template>\n <ng-template #cellTpl>\n <td [attr.data-label]=\"c.caption\" tabindex=\"0\" [class]=\"c.cssClass\" [attr.data-fixed]=\"c.fixed\"\n class=\"ax-column-fixed\">\n <div class=\"ax-content\">\n <ng-container *ngIf=\"item || !c.skeleton;else loadingTpl\">\n <ng-container\n *ngTemplateOutlet=\"c.template; context: { $implicit: {data:item,rowIndex:rIndex} }\"></ng-container>\n </ng-container>\n </div>\n </td>\n </ng-template>\n </ng-container>\n <!------------------- Not fixed column ------------------->\n <ng-container *ngFor=\"let c of notFixedColumn()\">\n <ng-template [ngIf]=\"c.cellTemplate\" [ngIfElse]=\"cellTpl\">\n <div class=\"ax-content\">\n <ng-container\n *ngTemplateOutlet=\"c.cellTemplate;context: { $implicit: {data:item,rowIndex:rIndex} }\">\n </ng-container>\n </div>\n </ng-template>\n <ng-template #cellTpl>\n <td [attr.data-label]=\"c.caption\" tabindex=\"0\" [class]=\"c.cssClass\">\n <div class=\"ax-content\">\n <ng-container *ngIf=\"item || !c.skeleton;else loadingTpl\">\n <ng-container\n *ngTemplateOutlet=\"c.template; context: { $implicit: {data:item,rowIndex:rIndex} }\"></ng-container>\n </ng-container>\n </div>\n </td>\n </ng-template>\n </ng-container>\n <td></td>\n </tr>\n </ng-template>\n </ng-container>\n </tbody>\n </table>\n </cdk-virtual-scroll-viewport>\n </div>\n </div>\n</div>\n<div class=\"ax-table-footer\" #footerContainer>\n <div class=\"ax-table-info\">\n <div>\n Showing {{startRowIndex}} of {{totalRows}} items\n </div>\n <ax-button look=\"blank\" class=\"ax-sm\" (onClick)=\"refresh()\">\n <ax-icon icon=\"ax-icon ax-icon-refresh\"></ax-icon>\n </ax-button>\n </div>\n <ng-content select=\"ax-footer\">\n </ng-content>\n</div>\n\n<!-- Loading Template -->\n<ng-template #loadingTpl>\n <!-- Custom Loading Template -->\n <ng-container *ngIf=\"loadingTemplate;else defaultLoadingTpl\">\n <ng-container *ngTemplateOutlet=\"loadingTemplate\">\n </ng-container>\n </ng-container>\n <!-- Default Loading Template -->\n <ng-template #defaultLoadingTpl>\n <ax-skeleton [animated]=\"true\"></ax-skeleton>\n </ng-template>\n</ng-template>\n<!-- Empty Template -->\n<ng-template #emptyTpl>\n <tr>\n <td [attr.colspan]=\"columns.length\">\n <ng-template [ngIf]=\"emptyTemplate\" [ngIfElse]=\"defaultEmptyTemplate\">\n <ng-container *ngTemplateOutlet=\"emptyTemplate\"></ng-container>\n </ng-template>\n <ng-template #defaultEmptyTemplate>\n <ax-result type=\"empty\" caption=\" {{'common.no-result-found' | trans }}\"></ax-result>\n </ng-template>\n </td>\n </tr>\n</ng-template>","import { ChangeDetectionStrategy, Component, Input, OnInit, TemplateRef, ViewChild, ViewEncapsulation, inject } from \"@angular/core\";\nimport { AXDataTableColumnComponent } from \"./data-table-column\";\nimport { AXDataTableComponent } from \"../data-table.component\";\nimport { AXUnsubscriber } from \"@acorex/core/utils\";\n\n\n@Component({\n selector: 'ax-index-column',\n template: `\n <ng-template let-row>\n <span> {{(row.rowIndex + 1) | format:\"number\":\"D\"+formatCount}}</span>\n </ng-template>`,\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n AXUnsubscriber,\n { provide: AXDataTableColumnComponent, useExisting: AXRowIndexColumnComponent }\n ],\n inputs: ['width', 'caption', 'fixed'],\n\n})\nexport class AXRowIndexColumnComponent extends AXDataTableColumnComponent implements OnInit {\n\n private grid = inject(AXDataTableComponent);\n private unsubscriber = inject(AXUnsubscriber);\n\n @ViewChild(TemplateRef)\n private _template: TemplateRef<unknown>;\n\n get template(): TemplateRef<unknown> {\n return this._template;\n }\n\n get cssClass() {\n return 'ax-index-column';\n }\n\n @Input()\n padZero = false;\n\n protected formatCount = 1;\n\n ngOnInit() {\n if (this.padZero) {\n this.grid.dataSource.onChanged\n .pipe(this.unsubscriber.takeUntilDestroy)\n .subscribe(c => {\n this.formatCount = c.totalCount.toString().length;\n });\n }\n }\n\n\n allowSorting = false\n\n get skeleton(): boolean {\n return false;\n }\n}","import { ChangeDetectionStrategy, Component, TemplateRef, ViewChild, ViewEncapsulation, inject } from \"@angular/core\";\nimport { AXDataTableColumnComponent } from \"./data-table-column\";\nimport { AXDataTableComponent } from \"../data-table.component\";\n\n@Component({\n selector: 'ax-select-column',\n template: `\n <ng-template let-row>\n <input\n class=\"ax-checkbox\"\n type=\"checkbox\"\n [disabled]=\"!row.data\"\n (change)=\"handleChange(row.data)\"\n [checked]=\"isSelected(row.data)\"\n />\n </ng-template>`,\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [{ provide: AXDataTableColumnComponent, useExisting: AXRowSelectColumnComponent }],\n inputs: ['width', 'caption', 'fixed']\n})\nexport class AXRowSelectColumnComponent extends AXDataTableColumnComponent {\n\n private grid = inject(AXDataTableComponent);\n\n\n @ViewChild(TemplateRef)\n private _template: TemplateRef<unknown>;\n\n\n get template(): TemplateRef<unknown> {\n return this._template;\n }\n\n protected isSelected(item: unknown) {\n return item != null && this.grid.selectedRows.includes(item);\n }\n\n\n protected handleChange(item: unknown) {\n if (this.isSelected(item)) {\n this.grid.unSelectRows(item);\n }\n else {\n this.grid.selectRows(item);\n }\n }\n\n get skeleton(): boolean {\n return false;\n }\n\n}","import { ChangeDetectionStrategy, Component, EventEmitter, Input, TemplateRef, ViewChild, ViewEncapsulation, inject, ChangeDetectorRef } from \"@angular/core\";\nimport { AXItemClickEvent, AXButtonClickEvent } from \"@acorex/components/common\";\nimport { AXDataTableColumnComponent } from \"./data-table-column\";\nimport { AXButtonItemListItem, AXButtonItemComponent } from \"@acorex/components/button\";\nimport { AXDataTableComponent } from \"../data-table.component\";\n\nexport interface AXRowCommandItem extends AXButtonItemListItem {\n}\n\nexport interface AXRowCommandItemClickEvent extends AXButtonClickEvent {\n}\n\n\nexport abstract class AXBaseRowCommandColumnComponent extends AXDataTableColumnComponent {\n\n protected grid = inject(AXDataTableComponent);\n protected cdr = inject(ChangeDetectorRef);\n\n\n allowSorting = false\n\n get skeleton(): boolean {\n return false;\n }\n\n get cssClass() {\n return 'ax-command-column';\n }\n\n onItemClick: EventEmitter<AXRowCommandItemClickEvent> = new EventEmitter<AXRowCommandItemClickEvent>();\n}\n\n\n@Component({\n selector: 'ax-dropdown-command-column',\n template: `\n <ng-template let-row>\n <div *ngIf=\"row.data\">\n <button axRipple>\n <ax-icon icon=\"ax-icon ax-icon-more-horizontal\"></ax-icon>\n <ax-dropdown-panel [adaptivityEnabled]=\"true\" (onOpened)=\"handleOnOpened(row.data)\" (onClosed)=\"handleOnClosed()\">\n <ng-container *ngIf=\"_items.length;else loading\">\n <ax-button-item-list (onItemClick)=\"handleOnItemClick($event,row.data)\" [items]=\"_items\">\n </ax-button-item-list>\n </ng-container>\n <ng-template #loading>\n <div panel style=\"padding: 0.875rem;\">\n <ax-loading></ax-loading>\n </div>\n </ng-template>\n </ax-dropdown-panel>\n </button>\n </div>\n <ng-template #loading>\n <div panel style=\"padding: 0.875rem;\">\n <ax-loading></ax-loading>\n </div>\n </ng-template>\n </ng-template>`,\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [{ provide: AXDataTableColumnComponent, useExisting: AXRowDropdownCommandColumnComponent }],\n inputs: ['width', 'caption', 'fixed'],\n outputs: ['onItemClick']\n})\nexport class AXRowDropdownCommandColumnComponent extends AXBaseRowCommandColumnComponent {\n\n\n @ViewChild(TemplateRef)\n private _template: TemplateRef<unknown>;\n\n get template(): TemplateRef<unknown> {\n return this._template;\n }\n\n\n protected _items: AXRowCommandItem[] = [];\n\n\n @Input()\n items: AXRowCommandItem[] | ((rowData: unknown) => AXRowCommandItem[] | Promise<AXRowCommandItem[]>) = [];\n\n\n protected async handleOnOpened(rowData) {\n if (Array.isArray(this.items)) {\n this._items = this.items;\n }\n else (typeof this.items == 'function')\n {\n const result = (this['items'] as any)(rowData);\n if (Array.isArray(result)) {\n this._items = result;\n }\n else if (result instanceof Promise) {\n this._items = await result;\n }\n }\n this.cdr.detectChanges();\n }\n\n protected handleOnClosed() {\n this._items = [];\n }\n\n\n protected handleOnItemClick(e: AXItemClickEvent<AXButtonItemComponent>, data: unknown) {\n\n const args: AXRowCommandItemClickEvent = {\n component: this.grid,\n isUserInteraction: true,\n nativeEvent: e,\n data,\n name: e.name\n }\n this.onItemClick.emit(args)\n }\n}\n\n\n\n\n@Component({\n selector: 'ax-command-column',\n template: `\n <ng-template let-row>\n <div *ngIf=\"row.data\">\n <button \n [style.color]=\"'rgba(var(--ax-color-'+(item.color ?? 'primary')+'-500))'\" axRipple *ngFor=\"let item of getItems(row.data)\"\n (click)=\"handleOnItemClick($event,item,row.data)\">\n <ax-icon [icon]=\"item.icon\" ></ax-icon>\n </button>\n </div>\n </ng-template>`,\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [{ provide: AXDataTableColumnComponent, useExisting: AXRowCommandColumnComponent }],\n inputs: ['width', 'caption', 'fixed'],\n outputs: ['onItemClick']\n})\nexport class AXRowCommandColumnComponent extends AXBaseRowCommandColumnComponent {\n\n\n @ViewChild(TemplateRef)\n private _template: TemplateRef<unknown>;\n\n get template(): TemplateRef<unknown> {\n return this._template;\n }\n\n @Input()\n items: AXRowCommandItem[] | ((rowData: unknown) => AXRowCommandItem[]) = [];\n\n\n protected getItems(rowData: unknown): AXRowCommandItem[] {\n if (Array.isArray(this.items)) {\n return this.items;\n }\n else (typeof this.items == 'function')\n {\n return this.items(rowData);\n }\n return [];\n }\n\n\n protected handleOnItemClick(e: MouseEvent, item: AXRowCommandItem, data: unknown) {\n const args: AXRowCommandItemClickEvent = {\n component: this.grid,\n isUserInteraction: true,\n nativeEvent: e,\n data,\n name: item.name,\n }\n this.onItemClick.emit(args)\n }\n}","import { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXLoadingModule } from '@acorex/components/loading';\nimport { AXResultModule } from '@acorex/components/result';\nimport { AXTranslationModule } from '@acorex/core/translation';\nimport { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { AXDataTableComponent } from './data-table.component';\nimport { ScrollingModule } from '@angular/cdk/scrolling';\nimport { AXSkeletonModule } from '@acorex/components/skeleton';\nimport { AXButtonModule } from '@acorex/components/button';\nimport { AXDataTableTextColumnComponent } from './columns/data-text-column.component';\nimport { AXRowIndexColumnComponent } from './columns/row-index-column.component';\nimport { AXRowSelectColumnComponent } from './columns/row-select-column.component';\nimport { AXRowCommandColumnComponent, AXRowDropdownCommandColumnComponent } from './columns/row-command-column.component';\nimport { AXDropdownModule } from '@acorex/components/dropdown';\nimport { AXFormatModule } from '@acorex/core/format';\nimport { AXCommonModule } from '@acorex/components/common';\n\nconst COMPONENT = [\n AXDataTableComponent,\n AXDataTableTextColumnComponent,\n AXRowIndexColumnComponent,\n AXRowSelectColumnComponent,\n AXRowCommandColumnComponent,\n AXRowDropdownCommandColumnComponent\n];\nconst MODULES = [\n CommonModule,\n AXCommonModule,\n ScrollingModule,\n AXTranslationModule,\n AXResultModule,\n AXLoadingModule,\n AXDecoratorModule,\n AXSkeletonModule,\n AXButtonModule,\n AXDropdownModule,\n AXFormatModule\n];\n\n@NgModule({\n declarations: [...COMPONENT],\n imports: [...MODULES],\n exports: [...COMPONENT],\n providers: [],\n})\nexport class AXDataTableModule { }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1","i2","i3","i5","i6"],"mappings":"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"}
|
1
|
+
{"version":3,"file":"acorex-components-data-table.mjs","sources":["../../../../libs/components/data-table/src/lib/columns/data-table-column.ts","../../../../libs/components/data-table/src/lib/columns/data-text-column.component.ts","../../../../libs/components/data-table/src/lib/data-table.component.ts","../../../../libs/components/data-table/src/lib/data-table.component.html","../../../../libs/components/data-table/src/lib/columns/row-index-column.component.ts","../../../../libs/components/data-table/src/lib/columns/row-select-column.component.ts","../../../../libs/components/data-table/src/lib/columns/row-command-column.component.ts","../../../../libs/components/data-table/src/lib/data-table.module.ts","../../../../libs/components/data-table/src/acorex-components-data-table.ts"],"sourcesContent":["import { AXSortOrder } from \"@acorex/components/common\";\nimport { Injectable, Input, TemplateRef } from \"@angular/core\";\n\n@Injectable()\nexport abstract class AXDataTableColumnComponent {\n\n @Input()\n caption: string;\n\n @Input()\n width: string | number = 'auto';\n\n\n @Input()\n fixed: 'start' | 'end' | undefined;\n\n @Input()\n allowSorting = false;\n\n\n @Input()\n sortIndex: number | undefined = undefined;\n\n @Input()\n sortOrder: AXSortOrder | undefined = undefined;\n\n\n @Input()\n headerTemplate?: TemplateRef<unknown>;\n\n @Input()\n cellTemplate?: TemplateRef<unknown>;\n\n abstract get template(): TemplateRef<unknown>;\n\n abstract get skeleton(): boolean;\n\n\n get cssClass(): string | undefined {\n return null;\n }\n}","import { ChangeDetectionStrategy, Component, Input, TemplateRef, ViewChild, ViewEncapsulation, inject } from \"@angular/core\";\nimport { AXDataTableColumnComponent } from \"./data-table-column\";\nimport { AXFormatService } from \"@acorex/core/format\";\nimport { Memorize } from \"@acorex/core/memorize\";\n\n@Component({\n selector: 'ax-text-column',\n template: `\n <ng-template let-row>\n {{getDisplayText(row.data,this.dataField)}}\n </ng-template>`,\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [{ provide: AXDataTableColumnComponent, useExisting: AXDataTableTextColumnComponent }],\n inputs: ['width', 'caption', 'headerTemplate', 'cellTemplate', 'allowSorting', 'fixed'],\n})\nexport class AXDataTableTextColumnComponent extends AXDataTableColumnComponent {\n\n @Input()\n dataField: string;\n\n @ViewChild(TemplateRef)\n private _template: TemplateRef<unknown>;\n\n get template(): TemplateRef<unknown> {\n return this._template;\n }\n\n get skeleton(): boolean {\n return true;\n }\n\n private formatService = inject(AXFormatService);\n\n\n @Memorize()\n protected getDisplayText(rowData: unknown, dataField: string): string {\n const value = rowData[dataField];\n const options = Array.isArray(this.formatOptions) ? this.formatOptions : [this.formatOptions];\n return !this.format ? value : this.formatService.format(value, this.format, ...options);\n }\n\n @Input()\n format: string;\n\n @Input()\n formatOptions: unknown;\n}","import {\n AXPagedComponent,\n AXValueChangedEvent,\n MXBaseComponent,\n AXListDataSource,\n convertArrayToDataSource,\n AXDataSource,\n AXEvent\n} from '@acorex/components/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n ContentChildren,\n ElementRef,\n EventEmitter,\n Input,\n Output,\n QueryList,\n TemplateRef,\n ViewChild,\n ViewEncapsulation,\n} from '@angular/core';\n\nimport { CdkVirtualForOf, CdkVirtualScrollViewport } from '@angular/cdk/scrolling';\nimport sum from 'lodash-es/sum';\nimport { AXDataTableColumnComponent } from './columns/data-table-column';\nimport { AXDataTableTextColumnComponent } from './columns/data-text-column.component';\n\nexport interface AXDataTableScrollIndexChanged extends AXEvent {\n index: number;\n}\n\n@Component({\n selector: 'ax-data-table',\n templateUrl: './data-table.component.html',\n styleUrls: ['./data-table.component.scss'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [{ provide: AXPagedComponent, useExisting: AXDataTableComponent }],\n})\nexport class AXDataTableComponent extends MXBaseComponent {\n @ContentChildren(AXDataTableColumnComponent)\n protected columns: QueryList<AXDataTableColumnComponent>;\n\n\n protected startFixedColumn(): AXDataTableColumnComponent[] {\n return this.columns?.toArray().filter(c => c.fixed == 'start') ?? [];\n }\n\n protected endFixedColumn(): AXDataTableColumnComponent[] {\n return this.columns?.toArray().filter(c => c.fixed == 'end') ?? [];\n }\n\n protected notFixedColumn(): AXDataTableColumnComponent[] {\n return this.columns?.toArray().filter(c => !c.fixed) ?? [];\n }\n\n protected notFixedColumnCount(): number {\n return this.columns?.toArray().filter(c => !c.fixed).length ?? 0;\n }\n\n protected fixedColumnCount(): number {\n return this.columns?.toArray().filter(c => c.fixed).length ?? 0;\n }\n\n\n\n @Output()\n onPageChanged: EventEmitter<AXValueChangedEvent<number>> = new EventEmitter<AXValueChangedEvent<number>>();\n\n @Input()\n rowTemplate?: TemplateRef<unknown>;\n\n @Input()\n emptyTemplate?: TemplateRef<unknown>;\n\n\n @Input()\n loadingTemplate: TemplateRef<unknown>;\n\n @Input()\n showHeader = true;\n\n @Input()\n fetchDataMode: 'auto' | 'manual' = 'auto';\n\n @Input()\n dataSource: AXDataSource<unknown> = convertArrayToDataSource([]);\n\n protected listDataSource: AXListDataSource<unknown>;\n protected isLoading = true;\n protected hasItems = false;\n protected totalRows = 0;\n protected currentPage = 0;\n protected totalPages = 0;\n protected startRowIndex = 0;\n private lastIndex = 0;\n\n\n @Output()\n focusedRowChange: EventEmitter<unknown> = new EventEmitter<unknown>();\n\n private _focusedRow: unknown;\n @Input()\n public get focusedRow(): unknown {\n return this._focusedRow;\n }\n public set focusedRow(v: unknown) {\n this._focusedRow = v;\n this.focusedRowChange.emit(v);\n }\n\n\n @Output()\n selectedRowsChange: EventEmitter<unknown[]> = new EventEmitter<unknown[]>();\n\n private _selectedRows: unknown[] = [];\n @Input()\n public get selectedRows(): unknown[] {\n return this._selectedRows;\n }\n public set selectedRows(v: unknown[]) {\n this._selectedRows = v;\n this.selectedRowsChange.emit(v);\n }\n\n\n public selectRows(...rows: unknown[]) {\n this.selectedRows = [...this.selectedRows, ...rows];\n }\n\n public unSelectRows(...rows: unknown[]) {\n this.selectedRows = this.selectedRows.filter(c => !rows.includes(c));\n }\n\n\n @Input()\n itemHeight: number | 'auto' = 40;\n\n protected width = \"100%\";\n protected height = \"100%\";\n\n\n @ViewChild(CdkVirtualScrollViewport, { static: true })\n private viewport: CdkVirtualScrollViewport;\n\n @Output()\n onScrolledIndexChanged: EventEmitter<AXDataTableScrollIndexChanged> =\n new EventEmitter<AXDataTableScrollIndexChanged>();\n\n trackByIdx(i) {\n return i;\n }\n\n ngOnInit() {\n super.ngOnInit();\n this.listDataSource = new AXListDataSource<unknown>({\n source: this.dataSource,\n });\n this.listDataSource.source\n .onLoadingChanged\n .subscribe((data) => {\n this.isLoading = data;\n });\n this.listDataSource.source\n .onChanged\n .subscribe((data) => {\n this.totalRows = data.totalCount;\n this.hasItems = data.totalCount > 0;\n setTimeout(() => {\n this.render();\n }, 100);\n });\n }\n @ViewChild('headerContainer') headerContainer: ElementRef<HTMLDivElement>;\n @ViewChild('footerContainer') footerContainer: ElementRef;\n\n protected _handleOnscrolledIndexChange(e: number) {\n this.lastIndex = e;\n this.onScrolledIndexChanged.emit({\n component: this,\n index: this.lastIndex,\n isUserInteraction: true,\n });\n }\n\n ngDoCheck() {\n //this.copyFixedColumns();\n if (this.headerContainer) {\n const headerContainer = this.headerContainer.nativeElement;\n const left = this.getHostElement().querySelector('.cdk-virtual-scrollable').scrollLeft;\n headerContainer.style.transform = `translateX(${-left}px)`\n }\n if (this.columns && this.columns.length) {\n const sumPx = sum(this.columns.toArray().map(c => typeof c.width == 'number' ? c.width : Number(c.width.replace('px', ''))));\n this.width = `${Math.max(sumPx, this.getHostElement().clientWidth - 5)}px`;\n }\n this.height = `calc(100% - ${((this.headerContainer?.nativeElement.clientHeight ?? 0) + (this.footerContainer?.nativeElement.clientHeight ?? 0))}px)`;\n\n this.startRowIndex = this.lastIndex;\n if (this.startRowIndex < 1)\n this.startRowIndex = 1;\n if (this.startRowIndex > this.totalRows)\n this.startRowIndex = this.totalRows\n }\n\n\n // Function to copy fixed columns\n private copyFixedColumns() {\n const originalRows = Array.from(this.viewport._contentWrapper.nativeElement.querySelectorAll('tr'));\n const fixedColumnTable = this.getHostElement().querySelector<HTMLTableElement>('.ax-body-fixed-columns > table > tbody');\n fixedColumnTable.querySelectorAll('tr').forEach(n => n.remove());\n for (const row of originalRows) {\n const fixedCells = Array.from(row.querySelectorAll('[data-fixed=\"start\"]'));\n const fixedRow = document.createElement('tr');\n for (const cell of fixedCells) {\n const clonedCell = cell.cloneNode(true);\n fixedRow.appendChild(clonedCell);\n }\n fixedColumnTable.appendChild(fixedRow);\n }\n const scrollTop = this.getHostElement().querySelector('.cdk-virtual-scrollable').scrollTop;\n fixedColumnTable.style.transform = `translateY(${-scrollTop}px)`\n }\n\n public render() {\n this.viewport.checkViewportSize();\n this.viewport.scrollToIndex(this.lastIndex);\n this.cdr.markForCheck();\n }\n\n public refresh() {\n this.lastIndex = 0;\n this.dataSource.refresh();\n }\n\n\n protected handleRowClick(e: MouseEvent, item: unknown) {\n if (this.focusedRow == item) {\n this.focusedRow = null;\n }\n else {\n this.focusedRow = item;\n }\n }\n\n handleColumnClick(e: MouseEvent, column: AXDataTableColumnComponent) {\n if (column instanceof AXDataTableTextColumnComponent) {\n const sort = this.dataSource.query.sort.find(c => c.field == column.dataField);\n if (!sort) {\n this.dataSource.query.sort.push({ field: column.dataField, dir: 'asc' })\n }\n else {\n if (sort.dir == 'asc') {\n sort.dir = 'desc'\n }\n else {\n this.dataSource.query.sort = this.dataSource.query.sort.filter(c => c != sort);\n }\n }\n this.refresh()\n }\n }\n\n\n protected getSort(column: AXDataTableColumnComponent): string | undefined {\n if (column instanceof AXDataTableTextColumnComponent) {\n const sort = this.dataSource.query.sort.find(c => c.field == column.dataField);\n return sort ? (sort.dir == 'asc' ? 'ax-icon-arrow-long-down' : 'ax-icon-arrow-long-up') : undefined;\n }\n return undefined\n }\n\n protected onViewChange(e) {\n console.log(e);\n }\n}\n","<ng-content select=\"ax-header\">\n</ng-content>\n<!------------------- Header contents ------------------->\n<div class=\"ax-header-content\" *ngIf=\"showHeader\">\n <div class=\"ax-header-columns ax-header-fixed-columns\" *ngIf=\"false\">\n <table tabindex=\"0\" [style.width]=\"width\">\n <colgroup>\n <!------------------- start fixed column ------------------->\n <col *ngFor=\"let c of startFixedColumn()\" [style.width]=\"c.width\">\n <!------------------- not fixed column ------------------->\n <col *ngFor=\"let c of notFixedColumn()\" [style.width]=\"c.width\">\n <col style=\"width: 10px;\">\n </colgroup>\n <thead>\n <tr>\n <!------------------- start fixed column ------------------->\n <th *ngFor=\"let c of startFixedColumn()\" [class.ax-interactive]=\"c.allowSorting\"\n (click)=\"c.allowSorting ? handleColumnClick($event,c) : null\" class=\"ax-column-fixed\">\n <ng-template [ngIf]=\"c.headerTemplate\" [ngIfElse]=\"captionTpl\">\n <ng-container *ngTemplateOutlet=\"c.headerTemplate\"></ng-container>\n </ng-template>\n <ng-template #captionTpl>\n <div class=\"ax-caption\">\n {{c.caption }}\n <ax-icon *ngIf=\"getSort(c)\" icon=\"ax-icon {{getSort(c)}}\"></ax-icon>\n </div>\n </ng-template>\n </th>\n <!------------------- not fixed column ------------------->\n <th [attr.colspan]=\"notFixedColumnCount()\">\n\n </th>\n </tr>\n </thead>\n </table>\n </div>\n <div class=\"ax-header-columns\">\n <table tabindex=\"0\" [style.width]=\"width\" #headerContainer>\n <colgroup>\n <col *ngFor=\"let c of startFixedColumn()\" [style.width]=\"c.width\">\n <col *ngFor=\"let c of notFixedColumn()\" [style.width]=\"c.width\">\n <col style=\"width: auto;\">\n </colgroup>\n <thead>\n <tr>\n <th *ngFor=\"let c of startFixedColumn()\">\n </th>\n <th *ngFor=\"let c of notFixedColumn()\" [class.ax-interactive]=\"c.allowSorting\"\n (click)=\"c.allowSorting ? handleColumnClick($event,c) : null\">\n <ng-template [ngIf]=\"c.headerTemplate\" [ngIfElse]=\"captionTpl\">\n <ng-container *ngTemplateOutlet=\"c.headerTemplate\"></ng-container>\n </ng-template>\n <ng-template #captionTpl>\n <div class=\"ax-caption\">\n {{c.caption}}\n <ax-icon *ngIf=\"getSort(c)\" icon=\"ax-icon {{getSort(c)}}\"></ax-icon>\n </div>\n </ng-template>\n </th>\n <th></th>\n </tr>\n </thead>\n </table>\n </div>\n</div>\n<!------------------- Body contents ------------------->\n<div [style.height]=\"height\" class=\"ax-body-content\">\n <div class=\"ax-body-columns ax-body-fixed-columns\" *ngIf=\"false\">\n <table tabindex=\"0\" class=\"ax-table-body\" [style.width]=\"width\">\n <colgroup>\n <!------------------- start fixed column ------------------->\n <col *ngFor=\"let c of startFixedColumn()\" [style.width]=\"c.width\">\n <!------------------- not fixed column ------------------->\n <col *ngFor=\"let c of notFixedColumn()\" [style.width]=\"c.width\">\n <col>\n </colgroup>\n <tbody>\n </tbody>\n </table>\n </div>\n <div class=\"ax-body-columns\">\n <div cdkVirtualScrollingElement [style.height]=\"'100%'\">\n <cdk-virtual-scroll-viewport [itemSize]=\"itemHeight\" [style.--item-height]=\"itemHeight+'px'\"\n (scrolledIndexChange)=\"_handleOnscrolledIndexChange($event)\">\n <table tabindex=\"0\" class=\"ax-table-body\" [style.width]=\"width\">\n <colgroup>\n <!------------------- start fixed column ------------------->\n <col *ngFor=\"let c of startFixedColumn()\" [style.width]=\"c.width\">\n <!------------------- not fixed column ------------------->\n <col *ngFor=\"let c of notFixedColumn()\" [style.width]=\"c.width\">\n <col>\n </colgroup>\n <tbody>\n <ng-container\n *cdkVirtualFor=\"let item of listDataSource; let i = index; trackBy: trackByIdx;let rIndex=index;\"\n (viewChange)=\"onViewChange($event)\">\n <ng-template [ngIf]=\"rowTemplate\" [ngIfElse]=\"rowTpl\">\n <ng-container *ngTemplateOutlet=\"rowTemplate;context: { $implicit: {data:item,rowIndex:rIndex} }\">\n </ng-container>\n </ng-template>\n <ng-template #rowTpl>\n <tr [class.ax-state-focused]=\"focusedRow && item===focusedRow\" [attr.data-index]=\"rIndex\"\n [class.ax-state-selected]=\"selectedRows.includes(item)\" (click)=\"handleRowClick($event,item)\">\n <!------------------- start fixed column ------------------->\n <ng-container *ngFor=\"let c of startFixedColumn()\">\n <ng-template [ngIf]=\"c.cellTemplate\" [ngIfElse]=\"cellTpl\">\n <div class=\"ax-content\">\n <ng-container\n *ngTemplateOutlet=\"c.cellTemplate;context: { $implicit: {data:item,rowIndex:rIndex} }\">\n </ng-container>\n </div>\n </ng-template>\n <ng-template #cellTpl>\n <td [attr.data-label]=\"c.caption\" tabindex=\"0\" [class]=\"c.cssClass\" [attr.data-fixed]=\"c.fixed\"\n class=\"ax-column-fixed\">\n <div class=\"ax-content\">\n <ng-container *ngIf=\"item || !c.skeleton;else loadingTpl\">\n <ng-container\n *ngTemplateOutlet=\"c.template; context: { $implicit: {data:item,rowIndex:rIndex} }\"></ng-container>\n </ng-container>\n </div>\n </td>\n </ng-template>\n </ng-container>\n <!------------------- Not fixed column ------------------->\n <ng-container *ngFor=\"let c of notFixedColumn()\">\n <ng-template [ngIf]=\"c.cellTemplate\" [ngIfElse]=\"cellTpl\">\n <div class=\"ax-content\">\n <ng-container\n *ngTemplateOutlet=\"c.cellTemplate;context: { $implicit: {data:item,rowIndex:rIndex} }\">\n </ng-container>\n </div>\n </ng-template>\n <ng-template #cellTpl>\n <td [attr.data-label]=\"c.caption\" tabindex=\"0\" [class]=\"c.cssClass\">\n <div class=\"ax-content\">\n <ng-container *ngIf=\"item || !c.skeleton;else loadingTpl\">\n <ng-container\n *ngTemplateOutlet=\"c.template; context: { $implicit: {data:item,rowIndex:rIndex} }\"></ng-container>\n </ng-container>\n </div>\n </td>\n </ng-template>\n </ng-container>\n <td></td>\n </tr>\n </ng-template>\n </ng-container>\n </tbody>\n </table>\n </cdk-virtual-scroll-viewport>\n </div>\n </div>\n</div>\n<div class=\"ax-table-footer\" #footerContainer>\n <div class=\"ax-table-info\">\n <div>\n Showing {{startRowIndex}} of {{totalRows}} items\n </div>\n <ax-button look=\"blank\" class=\"ax-sm\" (onClick)=\"refresh()\">\n <ax-icon icon=\"ax-icon ax-icon-refresh\"></ax-icon>\n </ax-button>\n </div>\n <ng-content select=\"ax-footer\">\n </ng-content>\n</div>\n\n<!-- Loading Template -->\n<ng-template #loadingTpl>\n <!-- Custom Loading Template -->\n <ng-container *ngIf=\"loadingTemplate;else defaultLoadingTpl\">\n <ng-container *ngTemplateOutlet=\"loadingTemplate\">\n </ng-container>\n </ng-container>\n <!-- Default Loading Template -->\n <ng-template #defaultLoadingTpl>\n <ax-skeleton [animated]=\"true\"></ax-skeleton>\n </ng-template>\n</ng-template>\n<!-- Empty Template -->\n<ng-template #emptyTpl>\n <tr>\n <td [attr.colspan]=\"columns.length\">\n <ng-template [ngIf]=\"emptyTemplate\" [ngIfElse]=\"defaultEmptyTemplate\">\n <ng-container *ngTemplateOutlet=\"emptyTemplate\"></ng-container>\n </ng-template>\n <ng-template #defaultEmptyTemplate>\n <ax-result type=\"empty\" caption=\" {{'common.no-result-found' | trans }}\"></ax-result>\n </ng-template>\n </td>\n </tr>\n</ng-template>","import { ChangeDetectionStrategy, Component, Input, OnInit, TemplateRef, ViewChild, ViewEncapsulation, inject } from \"@angular/core\";\nimport { AXDataTableColumnComponent } from \"./data-table-column\";\nimport { AXDataTableComponent } from \"../data-table.component\";\nimport { AXUnsubscriber } from \"@acorex/core/utils\";\n\n\n@Component({\n selector: 'ax-index-column',\n template: `\n <ng-template let-row>\n <span> {{(row.rowIndex + 1) | format:\"number\":\"D\"+formatCount}}</span>\n </ng-template>`,\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n AXUnsubscriber,\n { provide: AXDataTableColumnComponent, useExisting: AXRowIndexColumnComponent }\n ],\n inputs: ['width', 'caption', 'fixed'],\n\n})\nexport class AXRowIndexColumnComponent extends AXDataTableColumnComponent implements OnInit {\n\n private grid = inject(AXDataTableComponent);\n private unsubscriber = inject(AXUnsubscriber);\n\n @ViewChild(TemplateRef)\n private _template: TemplateRef<unknown>;\n\n get template(): TemplateRef<unknown> {\n return this._template;\n }\n\n get cssClass() {\n return 'ax-index-column';\n }\n\n @Input()\n padZero = false;\n\n protected formatCount = 1;\n\n ngOnInit() {\n if (this.padZero) {\n this.grid.dataSource.onChanged\n .pipe(this.unsubscriber.takeUntilDestroy)\n .subscribe(c => {\n this.formatCount = c.totalCount.toString().length;\n });\n }\n }\n\n\n allowSorting = false\n\n get skeleton(): boolean {\n return false;\n }\n}","import { ChangeDetectionStrategy, Component, TemplateRef, ViewChild, ViewEncapsulation, inject } from \"@angular/core\";\nimport { AXDataTableColumnComponent } from \"./data-table-column\";\nimport { AXDataTableComponent } from \"../data-table.component\";\n\n@Component({\n selector: 'ax-select-column',\n template: `\n <ng-template let-row>\n <input\n class=\"ax-checkbox\"\n type=\"checkbox\"\n [disabled]=\"!row.data\"\n (change)=\"handleChange(row.data)\"\n [checked]=\"isSelected(row.data)\"\n />\n </ng-template>`,\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [{ provide: AXDataTableColumnComponent, useExisting: AXRowSelectColumnComponent }],\n inputs: ['width', 'caption', 'fixed']\n})\nexport class AXRowSelectColumnComponent extends AXDataTableColumnComponent {\n\n private grid = inject(AXDataTableComponent);\n\n\n @ViewChild(TemplateRef)\n private _template: TemplateRef<unknown>;\n\n\n get template(): TemplateRef<unknown> {\n return this._template;\n }\n\n protected isSelected(item: unknown) {\n return item != null && this.grid.selectedRows.includes(item);\n }\n\n\n protected handleChange(item: unknown) {\n if (this.isSelected(item)) {\n this.grid.unSelectRows(item);\n }\n else {\n this.grid.selectRows(item);\n }\n }\n\n get skeleton(): boolean {\n return false;\n }\n\n}","import { ChangeDetectionStrategy, Component, EventEmitter, Input, TemplateRef, ViewChild, ViewEncapsulation, inject, ChangeDetectorRef } from \"@angular/core\";\nimport { AXItemClickEvent, AXButtonClickEvent } from \"@acorex/components/common\";\nimport { AXDataTableColumnComponent } from \"./data-table-column\";\nimport { AXButtonItemListItem, AXButtonItemComponent } from \"@acorex/components/button\";\nimport { AXDataTableComponent } from \"../data-table.component\";\n\nexport interface AXRowCommandItem extends AXButtonItemListItem {\n}\n\nexport interface AXRowCommandItemClickEvent extends AXButtonClickEvent {\n}\n\n\nexport abstract class AXBaseRowCommandColumnComponent extends AXDataTableColumnComponent {\n\n protected grid = inject(AXDataTableComponent);\n protected cdr = inject(ChangeDetectorRef);\n\n\n allowSorting = false\n\n get skeleton(): boolean {\n return false;\n }\n\n get cssClass() {\n return 'ax-command-column';\n }\n\n onItemClick: EventEmitter<AXRowCommandItemClickEvent> = new EventEmitter<AXRowCommandItemClickEvent>();\n}\n\n\n@Component({\n selector: 'ax-dropdown-command-column',\n template: `\n <ng-template let-row>\n <div *ngIf=\"row.data\">\n <button axRipple>\n <ax-icon icon=\"ax-icon ax-icon-more-horizontal\"></ax-icon>\n <ax-dropdown-panel [adaptivityEnabled]=\"true\" (onOpened)=\"handleOnOpened(row.data)\" (onClosed)=\"handleOnClosed()\">\n <ng-container *ngIf=\"_items.length;else loading\">\n <ax-button-item-list (onItemClick)=\"handleOnItemClick($event,row.data)\" [items]=\"_items\">\n </ax-button-item-list>\n </ng-container>\n <ng-template #loading>\n <div panel style=\"padding: 0.875rem;\">\n <ax-loading></ax-loading>\n </div>\n </ng-template>\n </ax-dropdown-panel>\n </button>\n </div>\n <ng-template #loading>\n <div panel style=\"padding: 0.875rem;\">\n <ax-loading></ax-loading>\n </div>\n </ng-template>\n </ng-template>`,\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [{ provide: AXDataTableColumnComponent, useExisting: AXRowDropdownCommandColumnComponent }],\n inputs: ['width', 'caption', 'fixed'],\n outputs: ['onItemClick']\n})\nexport class AXRowDropdownCommandColumnComponent extends AXBaseRowCommandColumnComponent {\n\n\n @ViewChild(TemplateRef)\n private _template: TemplateRef<unknown>;\n\n get template(): TemplateRef<unknown> {\n return this._template;\n }\n\n\n protected _items: AXRowCommandItem[] = [];\n\n\n @Input()\n items: AXRowCommandItem[] | ((rowData: unknown) => AXRowCommandItem[] | Promise<AXRowCommandItem[]>) = [];\n\n\n protected async handleOnOpened(rowData) {\n if (Array.isArray(this.items)) {\n this._items = this.items;\n }\n else (typeof this.items == 'function')\n {\n const result = (this['items'] as any)(rowData);\n if (Array.isArray(result)) {\n this._items = result;\n }\n else if (result instanceof Promise) {\n this._items = await result;\n }\n }\n this.cdr.detectChanges();\n }\n\n protected handleOnClosed() {\n this._items = [];\n }\n\n\n protected handleOnItemClick(e: AXItemClickEvent<AXButtonItemComponent>, data: unknown) {\n\n const args: AXRowCommandItemClickEvent = {\n component: this.grid,\n isUserInteraction: true,\n nativeEvent: e,\n data,\n name: e.name\n }\n this.onItemClick.emit(args)\n }\n}\n\n\n\n\n@Component({\n selector: 'ax-command-column',\n template: `\n <ng-template let-row>\n <div *ngIf=\"row.data\">\n <button \n [style.color]=\"'rgba(var(--ax-color-'+(item.color ?? 'primary')+'-500))'\" axRipple *ngFor=\"let item of getItems(row.data)\"\n (click)=\"handleOnItemClick($event,item,row.data)\">\n <ax-icon [icon]=\"item.icon\" ></ax-icon>\n </button>\n </div>\n </ng-template>`,\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [{ provide: AXDataTableColumnComponent, useExisting: AXRowCommandColumnComponent }],\n inputs: ['width', 'caption', 'fixed'],\n outputs: ['onItemClick']\n})\nexport class AXRowCommandColumnComponent extends AXBaseRowCommandColumnComponent {\n\n\n @ViewChild(TemplateRef)\n private _template: TemplateRef<unknown>;\n\n get template(): TemplateRef<unknown> {\n return this._template;\n }\n\n @Input()\n items: AXRowCommandItem[] | ((rowData: unknown) => AXRowCommandItem[]) = [];\n\n\n protected getItems(rowData: unknown): AXRowCommandItem[] {\n if (Array.isArray(this.items)) {\n return this.items;\n }\n else (typeof this.items == 'function')\n {\n return this.items(rowData);\n }\n return [];\n }\n\n\n protected handleOnItemClick(e: MouseEvent, item: AXRowCommandItem, data: unknown) {\n const args: AXRowCommandItemClickEvent = {\n component: this.grid,\n isUserInteraction: true,\n nativeEvent: e,\n data,\n name: item.name,\n }\n this.onItemClick.emit(args)\n }\n}","import { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXLoadingModule } from '@acorex/components/loading';\nimport { AXResultModule } from '@acorex/components/result';\nimport { AXTranslationModule } from '@acorex/core/translation';\nimport { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { AXDataTableComponent } from './data-table.component';\nimport { ScrollingModule } from '@angular/cdk/scrolling';\nimport { AXSkeletonModule } from '@acorex/components/skeleton';\nimport { AXButtonModule } from '@acorex/components/button';\nimport { AXDataTableTextColumnComponent } from './columns/data-text-column.component';\nimport { AXRowIndexColumnComponent } from './columns/row-index-column.component';\nimport { AXRowSelectColumnComponent } from './columns/row-select-column.component';\nimport { AXRowCommandColumnComponent, AXRowDropdownCommandColumnComponent } from './columns/row-command-column.component';\nimport { AXDropdownModule } from '@acorex/components/dropdown';\nimport { AXFormatModule } from '@acorex/core/format';\nimport { AXCommonModule } from '@acorex/components/common';\n\nconst COMPONENT = [\n AXDataTableComponent,\n AXDataTableTextColumnComponent,\n AXRowIndexColumnComponent,\n AXRowSelectColumnComponent,\n AXRowCommandColumnComponent,\n AXRowDropdownCommandColumnComponent\n];\nconst MODULES = [\n CommonModule,\n AXCommonModule,\n ScrollingModule,\n AXTranslationModule,\n AXResultModule,\n AXLoadingModule,\n AXDecoratorModule,\n AXSkeletonModule,\n AXButtonModule,\n AXDropdownModule,\n AXFormatModule\n];\n\n@NgModule({\n declarations: [...COMPONENT],\n imports: [...MODULES],\n exports: [...COMPONENT],\n providers: [],\n})\nexport class AXDataTableModule { }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i4","i1","i2","i3","i5"],"mappings":"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"}
|
@@ -214,7 +214,7 @@ class AXDateTimePickerComponent extends classes(MXCalendarBaseComponent, (MXValu
|
|
214
214
|
useExisting: forwardRef(() => AXDateTimePickerComponent),
|
215
215
|
multi: true,
|
216
216
|
},
|
217
|
-
], viewQueries: [{ propertyName: "picker", first: true, predicate: AXPickerComponent, descendants: true }, { propertyName: "tabs", first: true, predicate: AXTabsComponent, descendants: true }], usesInheritance: true, ngImport: i0, template: "<div class=\"ax-header\" *ngIf=\"_hasDatePart && _hasTimePart\">\n <ax-tabs [look]=\"'default'\" [fitParent]=\"true\" [location]=\"'top'\" (onActiveTabChanged)=\"_handleViewChanged($event)\">\n <ax-tab-item text=\"Date\" [key]=\"'date'\" [disabled]=\"disabled\"></ax-tab-item>\n <ax-tab-item text=\"Time\" [key]=\"'time'\" [disabled]=\"disabled\"></ax-tab-item>\n </ax-tabs>\n</div>\n<div class=\"ax-content\">\n <div class=\"ax-calendar-part\" *ngIf=\"_activePart === 'date'\">\n <ax-calendar #calendar id=\"calendar\" [disabled]=\"disabled\" [readonly]=\"readonly\" [ngModel]=\"editingDateObj.date\"\n [minValue]=\"minValue\" [maxValue]=\"maxValue\" [disabledDates]=\"disabledDates\" [holidayDates]=\"holidayDates\"\n [depth]=\"depth\" (onNavigate)=\"_handleCalendarOnNavigate($event)\"\n (onValueChanged)=\"_handleCalendarOnValueChanged($event)\" [type]=\"type\">\n </ax-calendar>\n </div>\n <div class=\"ax-picker-part\" *ngIf=\"_activePart === 'time'\">\n <div class=\"ax-header\">\n {{ editingDateObj | axDate: format : type }}\n </div>\n <ax-picker>\n <ax-picker-column title=\"Hour\" [items]=\"hours\" [ngModel]=\"editingDateObj.hour\"\n (onValueChanged)=\"_handlePickerOnValueChanged($event, 'hour')\" [disabled]=\"disabled\" [readonly]=\"readonly\"\n *ngIf=\"_parts.hour.enabled\"></ax-picker-column>\n <ax-picker-column title=\"Minute\" [items]=\"minutes\" [ngModel]=\"editingDateObj.minute\"\n (onValueChanged)=\"_handlePickerOnValueChanged($event, 'minute')\" [step]=\"3\" [disabled]=\"disabled\"\n [readonly]=\"readonly\" *ngIf=\"_parts.minute.enabled\"></ax-picker-column>\n <ax-picker-column title=\"Second\" [items]=\"minutes\" [ngModel]=\"editingDateObj.second\"\n (onValueChanged)=\"_handlePickerOnValueChanged($event, 'second')\" [step]=\"3\" [disabled]=\"disabled\"\n [readonly]=\"readonly\" *ngIf=\"_parts.second.enabled\"></ax-picker-column>\n </ax-picker>\n </div>\n</div>\n<div class=\"ax-footer\" *ngIf=\"!disabled && !readonly && (currentTimeButton || _hasTimePart)\">\n <div>\n <ax-button [text]=\"_activePart === 'date' ? 'Today' : 'Now'\" class=\"ax-sm\" (onClick)=\"_handleNowClick($event)\"\n *ngIf=\"currentTimeButton\"></ax-button>\n </div>\n <div>\n <ax-button color=\"primary\" text=\"Set\" *ngIf=\"_hasTimePart\" class=\"ax-sm\"\n (onClick)=\"_handleSetClick($event)\"></ax-button>\n </div>\n</div>", styles: ["ax-datetime-picker{display:flex;flex-direction:column}ax-datetime-picker>.ax-header{display:flex;
|
217
|
+
], viewQueries: [{ propertyName: "picker", first: true, predicate: AXPickerComponent, descendants: true }, { propertyName: "tabs", first: true, predicate: AXTabsComponent, descendants: true }], usesInheritance: true, ngImport: i0, template: "<div class=\"ax-header\" *ngIf=\"_hasDatePart && _hasTimePart\">\n <ax-tabs [look]=\"'default'\" [fitParent]=\"true\" [location]=\"'top'\" (onActiveTabChanged)=\"_handleViewChanged($event)\">\n <ax-tab-item text=\"Date\" [key]=\"'date'\" [disabled]=\"disabled\"></ax-tab-item>\n <ax-tab-item text=\"Time\" [key]=\"'time'\" [disabled]=\"disabled\"></ax-tab-item>\n </ax-tabs>\n</div>\n<div class=\"ax-content\">\n <div class=\"ax-calendar-part\" *ngIf=\"_activePart === 'date'\">\n <ax-calendar #calendar id=\"calendar\" [disabled]=\"disabled\" [readonly]=\"readonly\" [ngModel]=\"editingDateObj.date\"\n [minValue]=\"minValue\" [maxValue]=\"maxValue\" [disabledDates]=\"disabledDates\" [holidayDates]=\"holidayDates\"\n [depth]=\"depth\" (onNavigate)=\"_handleCalendarOnNavigate($event)\"\n (onValueChanged)=\"_handleCalendarOnValueChanged($event)\" [type]=\"type\">\n </ax-calendar>\n </div>\n <div class=\"ax-picker-part\" *ngIf=\"_activePart === 'time'\">\n <div class=\"ax-header\">\n {{ editingDateObj | axDate: format : type }}\n </div>\n <ax-picker>\n <ax-picker-column title=\"Hour\" [items]=\"hours\" [ngModel]=\"editingDateObj.hour\"\n (onValueChanged)=\"_handlePickerOnValueChanged($event, 'hour')\" [disabled]=\"disabled\" [readonly]=\"readonly\"\n *ngIf=\"_parts.hour.enabled\"></ax-picker-column>\n <ax-picker-column title=\"Minute\" [items]=\"minutes\" [ngModel]=\"editingDateObj.minute\"\n (onValueChanged)=\"_handlePickerOnValueChanged($event, 'minute')\" [step]=\"3\" [disabled]=\"disabled\"\n [readonly]=\"readonly\" *ngIf=\"_parts.minute.enabled\"></ax-picker-column>\n <ax-picker-column title=\"Second\" [items]=\"minutes\" [ngModel]=\"editingDateObj.second\"\n (onValueChanged)=\"_handlePickerOnValueChanged($event, 'second')\" [step]=\"3\" [disabled]=\"disabled\"\n [readonly]=\"readonly\" *ngIf=\"_parts.second.enabled\"></ax-picker-column>\n </ax-picker>\n </div>\n</div>\n<div class=\"ax-footer\" *ngIf=\"!disabled && !readonly && (currentTimeButton || _hasTimePart)\">\n <div>\n <ax-button [text]=\"_activePart === 'date' ? 'Today' : 'Now'\" class=\"ax-sm\" (onClick)=\"_handleNowClick($event)\"\n *ngIf=\"currentTimeButton\"></ax-button>\n </div>\n <div>\n <ax-button color=\"primary\" text=\"Set\" *ngIf=\"_hasTimePart\" class=\"ax-sm\"\n (onClick)=\"_handleSetClick($event)\"></ax-button>\n </div>\n</div>", styles: ["ax-datetime-picker{display:flex;flex-direction:column}ax-datetime-picker>.ax-header{display:flex;justify-content:center;padding-left:.5rem;padding-right:.5rem;padding-top:.5rem}ax-datetime-picker>.ax-content{width:100%;overflow:hidden}@media (min-width: 768px){ax-datetime-picker>.ax-content{width:20rem}}ax-datetime-picker>.ax-content .ax-picker-part{display:flex;height:376px;width:100%;flex-direction:column}ax-datetime-picker>.ax-content .ax-picker-part>.ax-header{display:flex;justify-content:flex-start;padding:.5rem 1rem;font-size:.875rem;line-height:1.25rem;font-weight:500}ax-datetime-picker>.ax-content .ax-picker-part ax-picker{flex:1 1 0%}ax-datetime-picker>.ax-content .ax-calendar-part{padding-top:.25rem;padding-bottom:.25rem}ax-datetime-picker>.ax-content .ax-calendar-part ax-calendar{width:100%}ax-datetime-picker>.ax-footer{display:flex;justify-content:space-between;border-top-width:1px;border-color:rgba(var(--ax-color-border-default));padding:.5rem}ax-datetime-picker>.ax-footer ax-button{min-width:100px}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i3.AXTabsComponent, selector: "ax-tabs", inputs: ["look", "location", "fitParent", "minWidth", "content"], outputs: ["onActiveTabChanged"] }, { kind: "component", type: i3.AXTabItemComponent, selector: "ax-tab-item", inputs: ["disabled", "text", "key", "headerTemplate", "active"], outputs: ["disabledChange", "onClick", "onBlur", "onFocus", "activeChange"] }, { kind: "component", type: i4.AXButtonComponent, selector: "ax-button", inputs: ["disabled", "size", "tabIndex", "color", "look", "text", "toggleable", "selected", "type"], outputs: ["onBlur", "onFocus", "onClick", "selectedChange", "toggleableChange", "lookChange", "colorChange", "disabledChange"] }, { kind: "component", type: i5.AXCalendarComponent, selector: "ax-calendar", inputs: ["rtl", "readonly", "value", "name", "disabled", "depth", "activeView", "minValue", "maxValue", "disabledDates", "holidayDates", "type", "cellTemplate", "cellClass", "showNavigation", "count", "id"], outputs: ["onOptionChanged", "valueChange", "onValueChanged", "onBlur", "onFocus", "depthChange", "typeChange", "activeViewChange", "disabledDatesChange", "holidayDatesChange", "onNavigate", "onSlotClick", "countChange"] }, { kind: "component", type: i6.AXPickerComponent, selector: "ax-picker" }, { kind: "directive", type: i6.AXPickerColumnDirective, selector: "ax-picker-column", inputs: ["disabled", "readonly", "readonlyChange", "disabledChange", "valueField", "textField", "title", "step", "items"], outputs: ["onValueChanged", "itemsChange"] }, { kind: "pipe", type: i7.AXDateTimePipe, name: "axDate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
218
218
|
}
|
219
219
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.6", ngImport: i0, type: AXDateTimePickerComponent, decorators: [{
|
220
220
|
type: Component,
|
@@ -262,7 +262,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.6", ngImpor
|
|
262
262
|
useExisting: forwardRef(() => AXDateTimePickerComponent),
|
263
263
|
multi: true,
|
264
264
|
},
|
265
|
-
], template: "<div class=\"ax-header\" *ngIf=\"_hasDatePart && _hasTimePart\">\n <ax-tabs [look]=\"'default'\" [fitParent]=\"true\" [location]=\"'top'\" (onActiveTabChanged)=\"_handleViewChanged($event)\">\n <ax-tab-item text=\"Date\" [key]=\"'date'\" [disabled]=\"disabled\"></ax-tab-item>\n <ax-tab-item text=\"Time\" [key]=\"'time'\" [disabled]=\"disabled\"></ax-tab-item>\n </ax-tabs>\n</div>\n<div class=\"ax-content\">\n <div class=\"ax-calendar-part\" *ngIf=\"_activePart === 'date'\">\n <ax-calendar #calendar id=\"calendar\" [disabled]=\"disabled\" [readonly]=\"readonly\" [ngModel]=\"editingDateObj.date\"\n [minValue]=\"minValue\" [maxValue]=\"maxValue\" [disabledDates]=\"disabledDates\" [holidayDates]=\"holidayDates\"\n [depth]=\"depth\" (onNavigate)=\"_handleCalendarOnNavigate($event)\"\n (onValueChanged)=\"_handleCalendarOnValueChanged($event)\" [type]=\"type\">\n </ax-calendar>\n </div>\n <div class=\"ax-picker-part\" *ngIf=\"_activePart === 'time'\">\n <div class=\"ax-header\">\n {{ editingDateObj | axDate: format : type }}\n </div>\n <ax-picker>\n <ax-picker-column title=\"Hour\" [items]=\"hours\" [ngModel]=\"editingDateObj.hour\"\n (onValueChanged)=\"_handlePickerOnValueChanged($event, 'hour')\" [disabled]=\"disabled\" [readonly]=\"readonly\"\n *ngIf=\"_parts.hour.enabled\"></ax-picker-column>\n <ax-picker-column title=\"Minute\" [items]=\"minutes\" [ngModel]=\"editingDateObj.minute\"\n (onValueChanged)=\"_handlePickerOnValueChanged($event, 'minute')\" [step]=\"3\" [disabled]=\"disabled\"\n [readonly]=\"readonly\" *ngIf=\"_parts.minute.enabled\"></ax-picker-column>\n <ax-picker-column title=\"Second\" [items]=\"minutes\" [ngModel]=\"editingDateObj.second\"\n (onValueChanged)=\"_handlePickerOnValueChanged($event, 'second')\" [step]=\"3\" [disabled]=\"disabled\"\n [readonly]=\"readonly\" *ngIf=\"_parts.second.enabled\"></ax-picker-column>\n </ax-picker>\n </div>\n</div>\n<div class=\"ax-footer\" *ngIf=\"!disabled && !readonly && (currentTimeButton || _hasTimePart)\">\n <div>\n <ax-button [text]=\"_activePart === 'date' ? 'Today' : 'Now'\" class=\"ax-sm\" (onClick)=\"_handleNowClick($event)\"\n *ngIf=\"currentTimeButton\"></ax-button>\n </div>\n <div>\n <ax-button color=\"primary\" text=\"Set\" *ngIf=\"_hasTimePart\" class=\"ax-sm\"\n (onClick)=\"_handleSetClick($event)\"></ax-button>\n </div>\n</div>", styles: ["ax-datetime-picker{display:flex;flex-direction:column}ax-datetime-picker>.ax-header{display:flex;
|
265
|
+
], template: "<div class=\"ax-header\" *ngIf=\"_hasDatePart && _hasTimePart\">\n <ax-tabs [look]=\"'default'\" [fitParent]=\"true\" [location]=\"'top'\" (onActiveTabChanged)=\"_handleViewChanged($event)\">\n <ax-tab-item text=\"Date\" [key]=\"'date'\" [disabled]=\"disabled\"></ax-tab-item>\n <ax-tab-item text=\"Time\" [key]=\"'time'\" [disabled]=\"disabled\"></ax-tab-item>\n </ax-tabs>\n</div>\n<div class=\"ax-content\">\n <div class=\"ax-calendar-part\" *ngIf=\"_activePart === 'date'\">\n <ax-calendar #calendar id=\"calendar\" [disabled]=\"disabled\" [readonly]=\"readonly\" [ngModel]=\"editingDateObj.date\"\n [minValue]=\"minValue\" [maxValue]=\"maxValue\" [disabledDates]=\"disabledDates\" [holidayDates]=\"holidayDates\"\n [depth]=\"depth\" (onNavigate)=\"_handleCalendarOnNavigate($event)\"\n (onValueChanged)=\"_handleCalendarOnValueChanged($event)\" [type]=\"type\">\n </ax-calendar>\n </div>\n <div class=\"ax-picker-part\" *ngIf=\"_activePart === 'time'\">\n <div class=\"ax-header\">\n {{ editingDateObj | axDate: format : type }}\n </div>\n <ax-picker>\n <ax-picker-column title=\"Hour\" [items]=\"hours\" [ngModel]=\"editingDateObj.hour\"\n (onValueChanged)=\"_handlePickerOnValueChanged($event, 'hour')\" [disabled]=\"disabled\" [readonly]=\"readonly\"\n *ngIf=\"_parts.hour.enabled\"></ax-picker-column>\n <ax-picker-column title=\"Minute\" [items]=\"minutes\" [ngModel]=\"editingDateObj.minute\"\n (onValueChanged)=\"_handlePickerOnValueChanged($event, 'minute')\" [step]=\"3\" [disabled]=\"disabled\"\n [readonly]=\"readonly\" *ngIf=\"_parts.minute.enabled\"></ax-picker-column>\n <ax-picker-column title=\"Second\" [items]=\"minutes\" [ngModel]=\"editingDateObj.second\"\n (onValueChanged)=\"_handlePickerOnValueChanged($event, 'second')\" [step]=\"3\" [disabled]=\"disabled\"\n [readonly]=\"readonly\" *ngIf=\"_parts.second.enabled\"></ax-picker-column>\n </ax-picker>\n </div>\n</div>\n<div class=\"ax-footer\" *ngIf=\"!disabled && !readonly && (currentTimeButton || _hasTimePart)\">\n <div>\n <ax-button [text]=\"_activePart === 'date' ? 'Today' : 'Now'\" class=\"ax-sm\" (onClick)=\"_handleNowClick($event)\"\n *ngIf=\"currentTimeButton\"></ax-button>\n </div>\n <div>\n <ax-button color=\"primary\" text=\"Set\" *ngIf=\"_hasTimePart\" class=\"ax-sm\"\n (onClick)=\"_handleSetClick($event)\"></ax-button>\n </div>\n</div>", styles: ["ax-datetime-picker{display:flex;flex-direction:column}ax-datetime-picker>.ax-header{display:flex;justify-content:center;padding-left:.5rem;padding-right:.5rem;padding-top:.5rem}ax-datetime-picker>.ax-content{width:100%;overflow:hidden}@media (min-width: 768px){ax-datetime-picker>.ax-content{width:20rem}}ax-datetime-picker>.ax-content .ax-picker-part{display:flex;height:376px;width:100%;flex-direction:column}ax-datetime-picker>.ax-content .ax-picker-part>.ax-header{display:flex;justify-content:flex-start;padding:.5rem 1rem;font-size:.875rem;line-height:1.25rem;font-weight:500}ax-datetime-picker>.ax-content .ax-picker-part ax-picker{flex:1 1 0%}ax-datetime-picker>.ax-content .ax-calendar-part{padding-top:.25rem;padding-bottom:.25rem}ax-datetime-picker>.ax-content .ax-calendar-part ax-calendar{width:100%}ax-datetime-picker>.ax-footer{display:flex;justify-content:space-between;border-top-width:1px;border-color:rgba(var(--ax-color-border-default));padding:.5rem}ax-datetime-picker>.ax-footer ax-button{min-width:100px}\n"] }]
|
266
266
|
}], propDecorators: { currentTimeButton: [{
|
267
267
|
type: Input
|
268
268
|
}], picker: [{
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"acorex-components-datetime-picker.mjs","sources":["../../../../libs/components/datetime-picker/src/lib/datetime-picker.config.ts","../../../../libs/components/datetime-picker/src/lib/datetime-picker.component.ts","../../../../libs/components/datetime-picker/src/lib/datetime-picker.component.html","../../../../libs/components/datetime-picker/src/lib/datetime-picker.module.ts","../../../../libs/components/datetime-picker/src/acorex-components-datetime-picker.ts"],"sourcesContent":["import { AX_GLOBAL_CONFIG } from '@acorex/core/config';\nimport { InjectionToken, inject } from '@angular/core';\nimport { set } from 'lodash-es';\n\nexport interface AXDateTimePickerConfig {\n currentTimeButton: boolean;\n}\n\nexport const AX_DATETIME_PICKER_CONFIG = new InjectionToken<AXDateTimePickerConfig>(\n 'AX_DATETIME_PICKER_CONFIG',\n {\n providedIn: 'root',\n factory: () => {\n const global = inject(AX_GLOBAL_CONFIG);\n set(global, 'datetime-picker', AX_DATETIME_PICKER_CONFIG);\n return AXDateTimePickerDefaultConfig;\n },\n },\n);\n\nexport const AXDateTimePickerDefaultConfig: AXDateTimePickerConfig = {\n currentTimeButton: true,\n};\n\nexport type PartialDateTimePickerConfig = Partial<AXDateTimePickerConfig>;\n\nexport function dateTimePickerConfig(config: PartialDateTimePickerConfig = {}): AXDateTimePickerConfig {\n const result = {\n ...AXDateTimePickerDefaultConfig,\n ...config,\n };\n return result;\n}\n","import { AXCalendarNavigateEvent, MXCalendarBaseComponent } from '@acorex/components/calendar';\nimport {\n AXClickEvent,\n AXComponent,\n AXFocusableComponent,\n AXValuableComponent,\n AXValueChangedEvent,\n MXValueComponent,\n} from '@acorex/components/common';\nimport { AXPickerComponent } from '@acorex/components/picker';\nimport { AXTabStripChangedEvent, AXTabsComponent } from '@acorex/components/tabs';\nimport { AXCalendarService, AXDateTime, AXDateTimeParts, TimeUnit } from '@acorex/core/dateTime';\nimport {\n ChangeDetectionStrategy,\n Component,\n EventEmitter,\n Input,\n OnInit,\n Output,\n ViewChild,\n ViewEncapsulation,\n forwardRef,\n inject,\n} from '@angular/core';\nimport { NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { classes } from 'polytype';\nimport { AXDateTimePickerConfig, AX_DATETIME_PICKER_CONFIG } from './datetime-picker.config';\n@Component({\n selector: 'ax-datetime-picker',\n templateUrl: './datetime-picker.component.html',\n styleUrls: ['./datetime-picker.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n inputs: [\n 'disabled',\n 'readonly',\n 'tabIndex',\n 'placeholder',\n 'value',\n 'state',\n 'name',\n 'id',\n 'depth',\n 'activeView',\n 'minValue',\n 'maxValue',\n 'disabledDates',\n 'holidayDates',\n 'type',\n 'cellTemplate',\n 'cellClass',\n 'showNavigation',\n ],\n outputs: [\n 'valueChange',\n 'stateChange',\n 'onValueChanged',\n 'onBlur',\n 'onFocus',\n 'onClick',\n 'readonlyChange',\n 'disabledChange',\n 'depthChange',\n 'typeChange',\n 'activeViewChange',\n 'disabledDatesChange',\n 'holidayDatesChange',\n 'onNavigate',\n 'onSlotClick',\n ],\n providers: [\n { provide: AXComponent, useExisting: AXDateTimePickerComponent },\n { provide: AXFocusableComponent, useExisting: AXDateTimePickerComponent },\n { provide: AXValuableComponent, useExisting: AXDateTimePickerComponent },\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => AXDateTimePickerComponent),\n multi: true,\n },\n ],\n})\nexport class AXDateTimePickerComponent\n extends classes(MXCalendarBaseComponent, MXValueComponent<Date>)\n implements OnInit\n{\n private defaultConfig: AXDateTimePickerConfig = inject(AX_DATETIME_PICKER_CONFIG);\n\n private _currentTimeButton: boolean = this.defaultConfig.currentTimeButton;\n @Input()\n public get currentTimeButton(): boolean {\n return this._currentTimeButton;\n }\n public set currentTimeButton(v: boolean) {\n this.setOption({\n name: 'currentTimeButton',\n value: v,\n });\n }\n\n private _calendarService: AXCalendarService = inject(AXCalendarService);\n\n @ViewChild(AXPickerComponent)\n protected picker: AXPickerComponent;\n\n @ViewChild(AXTabsComponent)\n protected tabs: AXTabsComponent;\n\n protected hours: any[] = Array(24)\n .fill(0)\n .map((m, i) => ({ id: i, text: i }));\n minutes: any[] = Array(60)\n .fill(0)\n .map((m, i) => ({ id: i, text: i }));\n\n protected _parts: AXDateTimeParts = {\n year: {\n key: 'year',\n placeholder: 'yyyy',\n placeholders: ['YY', 'yy', 'YYYY', 'yyyy'],\n enabled: false,\n default: 2023,\n realValue: () => this.editingDateObj.format(this._parts.year.placeholder),\n },\n month: {\n key: 'month',\n placeholder: 'MM',\n placeholders: ['MMM', 'MMMM', 'MM', 'M'],\n enabled: false,\n default: 1,\n realValue: () => this.editingDateObj.format(this._parts.month.placeholder),\n },\n day: {\n key: 'day',\n placeholder: 'dd',\n placeholders: ['dd', 'd', 'dddd', 'DDDD'],\n enabled: false,\n default: 1,\n realValue: () => this.editingDateObj.format(this._parts.day.placeholder),\n },\n hour: {\n key: 'hour',\n placeholder: 'HH',\n placeholders: ['HH', 'H', 'hh', 'h'],\n enabled: false,\n default: 0,\n realValue: () => this.editingDateObj.format(this._parts.hour.placeholder),\n },\n minute: {\n key: 'minute',\n placeholder: 'mm',\n placeholders: ['mm', 'm'],\n enabled: false,\n default: 0,\n realValue: () => this.editingDateObj.format(this._parts.minute.placeholder),\n },\n second: {\n key: 'second',\n placeholder: 'ss',\n placeholders: ['ss', 's'],\n enabled: false,\n default: 0,\n realValue: () => this.editingDateObj.format(this._parts.second.placeholder),\n },\n };\n\n protected _activePart: 'date' | 'time' = 'date';\n\n protected get _hasDatePart(): boolean {\n return ['year', 'month', 'day'].some((k) => this._parts[k].enabled);\n }\n\n protected get _hasTimePart(): boolean {\n return ['hour', 'minute', 'second'].some((k) => this._parts[k].enabled);\n }\n\n private _editingDateObj: AXDateTime = this._calendarService.now(this.type);\n protected get editingDateObj(): AXDateTime {\n return this._editingDateObj;\n }\n\n @Output()\n formatChange = new EventEmitter<string>();\n\n private _format = this.calendarService.calendar.formats.dateTimeDisplay;\n @Input()\n public get format(): string {\n return this._format;\n }\n public set format(v: string) {\n this.setOption({\n name: 'format',\n value: v,\n afterCallback: (o, n) => {\n this._detectParts();\n },\n });\n }\n\n ngOnInit(): void {\n super.ngOnInit();\n this._detectParts();\n }\n\n public refresh() {\n this.picker?.refresh();\n }\n\n override internalValueChanged(value?: Date): void {\n if (value) {\n this._editingDateObj = this._calendarService.create(value);\n }\n }\n\n protected _handleViewChanged(e: AXTabStripChangedEvent) {\n this._activePart = e.tab.key as 'date' | 'time';\n this.cdr.detectChanges();\n }\n\n protected _handlePickerOnValueChanged(e: AXValueChangedEvent<Date>, part: string) {\n if (e.isUserInteraction) {\n this._editingDateObj = this._editingDateObj.set(part as TimeUnit, Number(e.value['id']));\n }\n }\n\n protected _handleCalendarOnNavigate(e: AXCalendarNavigateEvent) {\n this.onNavigate.emit(e);\n }\n\n protected _handleCalendarOnValueChanged(e: AXValueChangedEvent<Date>) {\n if (e.isUserInteraction) {\n const selectedValue = this.calendarService.create(e.value, this.type);\n const currentValue = this.calendarService\n .create(this.value ?? new Date(), this.type)\n .set('day', selectedValue.dayOfMonth)\n .set('month', selectedValue.monthOfYear)\n .set('year', selectedValue.year);\n\n this._editingDateObj = currentValue;\n if (this._hasTimePart) {\n this._activePart = 'time';\n if (this.tabs && this._hasDatePart && this._hasTimePart) {\n this.tabs.select(1);\n } else {\n this.commitValue(this.editingDateObj.date, true);\n }\n } else {\n this.commitValue(this.editingDateObj.date, true);\n }\n }\n }\n\n private _detectParts() {\n Object.values(this._parts).forEach((e) => {\n e.enabled = false;\n });\n const formatParts = this.format.split(/[^a-zA-Z]+/);\n formatParts.forEach((f) => {\n const found = Object.values(this._parts).find((c) => c.placeholders.some((d) => d == f));\n if (found) {\n found.enabled = true;\n found.placeholder = f;\n }\n });\n this._activePart = this._hasDatePart ? 'date' : 'time';\n this.cdr.markForCheck();\n }\n\n protected _handleSetClick(e: AXClickEvent) {\n this.commitValue(this.editingDateObj.date, true);\n }\n\n protected _handleNowClick(e: AXClickEvent) {\n this._editingDateObj = this._calendarService.now(this.type);\n this.commitValue(this.editingDateObj.date, true);\n }\n}\n","<div class=\"ax-header\" *ngIf=\"_hasDatePart && _hasTimePart\">\n <ax-tabs [look]=\"'default'\" [fitParent]=\"true\" [location]=\"'top'\" (onActiveTabChanged)=\"_handleViewChanged($event)\">\n <ax-tab-item text=\"Date\" [key]=\"'date'\" [disabled]=\"disabled\"></ax-tab-item>\n <ax-tab-item text=\"Time\" [key]=\"'time'\" [disabled]=\"disabled\"></ax-tab-item>\n </ax-tabs>\n</div>\n<div class=\"ax-content\">\n <div class=\"ax-calendar-part\" *ngIf=\"_activePart === 'date'\">\n <ax-calendar #calendar id=\"calendar\" [disabled]=\"disabled\" [readonly]=\"readonly\" [ngModel]=\"editingDateObj.date\"\n [minValue]=\"minValue\" [maxValue]=\"maxValue\" [disabledDates]=\"disabledDates\" [holidayDates]=\"holidayDates\"\n [depth]=\"depth\" (onNavigate)=\"_handleCalendarOnNavigate($event)\"\n (onValueChanged)=\"_handleCalendarOnValueChanged($event)\" [type]=\"type\">\n </ax-calendar>\n </div>\n <div class=\"ax-picker-part\" *ngIf=\"_activePart === 'time'\">\n <div class=\"ax-header\">\n {{ editingDateObj | axDate: format : type }}\n </div>\n <ax-picker>\n <ax-picker-column title=\"Hour\" [items]=\"hours\" [ngModel]=\"editingDateObj.hour\"\n (onValueChanged)=\"_handlePickerOnValueChanged($event, 'hour')\" [disabled]=\"disabled\" [readonly]=\"readonly\"\n *ngIf=\"_parts.hour.enabled\"></ax-picker-column>\n <ax-picker-column title=\"Minute\" [items]=\"minutes\" [ngModel]=\"editingDateObj.minute\"\n (onValueChanged)=\"_handlePickerOnValueChanged($event, 'minute')\" [step]=\"3\" [disabled]=\"disabled\"\n [readonly]=\"readonly\" *ngIf=\"_parts.minute.enabled\"></ax-picker-column>\n <ax-picker-column title=\"Second\" [items]=\"minutes\" [ngModel]=\"editingDateObj.second\"\n (onValueChanged)=\"_handlePickerOnValueChanged($event, 'second')\" [step]=\"3\" [disabled]=\"disabled\"\n [readonly]=\"readonly\" *ngIf=\"_parts.second.enabled\"></ax-picker-column>\n </ax-picker>\n </div>\n</div>\n<div class=\"ax-footer\" *ngIf=\"!disabled && !readonly && (currentTimeButton || _hasTimePart)\">\n <div>\n <ax-button [text]=\"_activePart === 'date' ? 'Today' : 'Now'\" class=\"ax-sm\" (onClick)=\"_handleNowClick($event)\"\n *ngIf=\"currentTimeButton\"></ax-button>\n </div>\n <div>\n <ax-button color=\"primary\" text=\"Set\" *ngIf=\"_hasTimePart\" class=\"ax-sm\"\n (onClick)=\"_handleSetClick($event)\"></ax-button>\n </div>\n</div>","import { AXButtonModule } from '@acorex/components/button';\nimport { AXCalendarModule } from '@acorex/components/calendar';\nimport { AXPickerModule } from '@acorex/components/picker';\nimport { AXTabsModule } from '@acorex/components/tabs';\nimport { AXDateTimeModule } from '@acorex/core/dateTime';\nimport { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { AXDateTimePickerComponent } from './datetime-picker.component';\n\nconst COMPONENT = [AXDateTimePickerComponent];\nconst MODULES = [\n CommonModule,\n FormsModule,\n AXTabsModule,\n AXDateTimeModule,\n AXButtonModule,\n AXCalendarModule,\n AXPickerModule,\n];\n\n@NgModule({\n declarations: [...COMPONENT],\n imports: [...MODULES],\n exports: [...COMPONENT],\n providers: [],\n})\nexport class AXDateTimePickerModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
1
|
+
{"version":3,"file":"acorex-components-datetime-picker.mjs","sources":["../../../../libs/components/datetime-picker/src/lib/datetime-picker.config.ts","../../../../libs/components/datetime-picker/src/lib/datetime-picker.component.ts","../../../../libs/components/datetime-picker/src/lib/datetime-picker.component.html","../../../../libs/components/datetime-picker/src/lib/datetime-picker.module.ts","../../../../libs/components/datetime-picker/src/acorex-components-datetime-picker.ts"],"sourcesContent":["import { AX_GLOBAL_CONFIG } from '@acorex/core/config';\nimport { InjectionToken, inject } from '@angular/core';\nimport { set } from 'lodash-es';\n\nexport interface AXDateTimePickerConfig {\n currentTimeButton: boolean;\n}\n\nexport const AX_DATETIME_PICKER_CONFIG = new InjectionToken<AXDateTimePickerConfig>(\n 'AX_DATETIME_PICKER_CONFIG',\n {\n providedIn: 'root',\n factory: () => {\n const global = inject(AX_GLOBAL_CONFIG);\n set(global, 'datetime-picker', AX_DATETIME_PICKER_CONFIG);\n return AXDateTimePickerDefaultConfig;\n },\n },\n);\n\nexport const AXDateTimePickerDefaultConfig: AXDateTimePickerConfig = {\n currentTimeButton: true,\n};\n\nexport type PartialDateTimePickerConfig = Partial<AXDateTimePickerConfig>;\n\nexport function dateTimePickerConfig(config: PartialDateTimePickerConfig = {}): AXDateTimePickerConfig {\n const result = {\n ...AXDateTimePickerDefaultConfig,\n ...config,\n };\n return result;\n}\n","import { AXCalendarNavigateEvent, MXCalendarBaseComponent } from '@acorex/components/calendar';\nimport {\n AXClickEvent,\n AXComponent,\n AXFocusableComponent,\n AXValuableComponent,\n AXValueChangedEvent,\n MXValueComponent,\n} from '@acorex/components/common';\nimport { AXPickerComponent } from '@acorex/components/picker';\nimport { AXTabStripChangedEvent, AXTabsComponent } from '@acorex/components/tabs';\nimport { AXCalendarService, AXDateTime, AXDateTimeParts, TimeUnit } from '@acorex/core/dateTime';\nimport {\n ChangeDetectionStrategy,\n Component,\n EventEmitter,\n Input,\n OnInit,\n Output,\n ViewChild,\n ViewEncapsulation,\n forwardRef,\n inject,\n} from '@angular/core';\nimport { NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { classes } from 'polytype';\nimport { AXDateTimePickerConfig, AX_DATETIME_PICKER_CONFIG } from './datetime-picker.config';\n@Component({\n selector: 'ax-datetime-picker',\n templateUrl: './datetime-picker.component.html',\n styleUrls: ['./datetime-picker.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n inputs: [\n 'disabled',\n 'readonly',\n 'tabIndex',\n 'placeholder',\n 'value',\n 'state',\n 'name',\n 'id',\n 'depth',\n 'activeView',\n 'minValue',\n 'maxValue',\n 'disabledDates',\n 'holidayDates',\n 'type',\n 'cellTemplate',\n 'cellClass',\n 'showNavigation',\n ],\n outputs: [\n 'valueChange',\n 'stateChange',\n 'onValueChanged',\n 'onBlur',\n 'onFocus',\n 'onClick',\n 'readonlyChange',\n 'disabledChange',\n 'depthChange',\n 'typeChange',\n 'activeViewChange',\n 'disabledDatesChange',\n 'holidayDatesChange',\n 'onNavigate',\n 'onSlotClick',\n ],\n providers: [\n { provide: AXComponent, useExisting: AXDateTimePickerComponent },\n { provide: AXFocusableComponent, useExisting: AXDateTimePickerComponent },\n { provide: AXValuableComponent, useExisting: AXDateTimePickerComponent },\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => AXDateTimePickerComponent),\n multi: true,\n },\n ],\n})\nexport class AXDateTimePickerComponent\n extends classes(MXCalendarBaseComponent, MXValueComponent<Date>)\n implements OnInit\n{\n private defaultConfig: AXDateTimePickerConfig = inject(AX_DATETIME_PICKER_CONFIG);\n\n private _currentTimeButton: boolean = this.defaultConfig.currentTimeButton;\n @Input()\n public get currentTimeButton(): boolean {\n return this._currentTimeButton;\n }\n public set currentTimeButton(v: boolean) {\n this.setOption({\n name: 'currentTimeButton',\n value: v,\n });\n }\n\n private _calendarService: AXCalendarService = inject(AXCalendarService);\n\n @ViewChild(AXPickerComponent)\n protected picker: AXPickerComponent;\n\n @ViewChild(AXTabsComponent)\n protected tabs: AXTabsComponent;\n\n protected hours: any[] = Array(24)\n .fill(0)\n .map((m, i) => ({ id: i, text: i }));\n minutes: any[] = Array(60)\n .fill(0)\n .map((m, i) => ({ id: i, text: i }));\n\n protected _parts: AXDateTimeParts = {\n year: {\n key: 'year',\n placeholder: 'yyyy',\n placeholders: ['YY', 'yy', 'YYYY', 'yyyy'],\n enabled: false,\n default: 2023,\n realValue: () => this.editingDateObj.format(this._parts.year.placeholder),\n },\n month: {\n key: 'month',\n placeholder: 'MM',\n placeholders: ['MMM', 'MMMM', 'MM', 'M'],\n enabled: false,\n default: 1,\n realValue: () => this.editingDateObj.format(this._parts.month.placeholder),\n },\n day: {\n key: 'day',\n placeholder: 'dd',\n placeholders: ['dd', 'd', 'dddd', 'DDDD'],\n enabled: false,\n default: 1,\n realValue: () => this.editingDateObj.format(this._parts.day.placeholder),\n },\n hour: {\n key: 'hour',\n placeholder: 'HH',\n placeholders: ['HH', 'H', 'hh', 'h'],\n enabled: false,\n default: 0,\n realValue: () => this.editingDateObj.format(this._parts.hour.placeholder),\n },\n minute: {\n key: 'minute',\n placeholder: 'mm',\n placeholders: ['mm', 'm'],\n enabled: false,\n default: 0,\n realValue: () => this.editingDateObj.format(this._parts.minute.placeholder),\n },\n second: {\n key: 'second',\n placeholder: 'ss',\n placeholders: ['ss', 's'],\n enabled: false,\n default: 0,\n realValue: () => this.editingDateObj.format(this._parts.second.placeholder),\n },\n };\n\n protected _activePart: 'date' | 'time' = 'date';\n\n protected get _hasDatePart(): boolean {\n return ['year', 'month', 'day'].some((k) => this._parts[k].enabled);\n }\n\n protected get _hasTimePart(): boolean {\n return ['hour', 'minute', 'second'].some((k) => this._parts[k].enabled);\n }\n\n private _editingDateObj: AXDateTime = this._calendarService.now(this.type);\n protected get editingDateObj(): AXDateTime {\n return this._editingDateObj;\n }\n\n @Output()\n formatChange = new EventEmitter<string>();\n\n private _format = this.calendarService.calendar.formats.dateTimeDisplay;\n @Input()\n public get format(): string {\n return this._format;\n }\n public set format(v: string) {\n this.setOption({\n name: 'format',\n value: v,\n afterCallback: (o, n) => {\n this._detectParts();\n },\n });\n }\n\n ngOnInit(): void {\n super.ngOnInit();\n this._detectParts();\n }\n\n public refresh() {\n this.picker?.refresh();\n }\n\n override internalValueChanged(value?: Date): void {\n if (value) {\n this._editingDateObj = this._calendarService.create(value);\n }\n }\n\n protected _handleViewChanged(e: AXTabStripChangedEvent) {\n this._activePart = e.tab.key as 'date' | 'time';\n this.cdr.detectChanges();\n }\n\n protected _handlePickerOnValueChanged(e: AXValueChangedEvent<Date>, part: string) {\n if (e.isUserInteraction) {\n this._editingDateObj = this._editingDateObj.set(part as TimeUnit, Number(e.value['id']));\n }\n }\n\n protected _handleCalendarOnNavigate(e: AXCalendarNavigateEvent) {\n this.onNavigate.emit(e);\n }\n\n protected _handleCalendarOnValueChanged(e: AXValueChangedEvent<Date>) {\n if (e.isUserInteraction) {\n const selectedValue = this.calendarService.create(e.value, this.type);\n const currentValue = this.calendarService\n .create(this.value ?? new Date(), this.type)\n .set('day', selectedValue.dayOfMonth)\n .set('month', selectedValue.monthOfYear)\n .set('year', selectedValue.year);\n\n this._editingDateObj = currentValue;\n if (this._hasTimePart) {\n this._activePart = 'time';\n if (this.tabs && this._hasDatePart && this._hasTimePart) {\n this.tabs.select(1);\n } else {\n this.commitValue(this.editingDateObj.date, true);\n }\n } else {\n this.commitValue(this.editingDateObj.date, true);\n }\n }\n }\n\n private _detectParts() {\n Object.values(this._parts).forEach((e) => {\n e.enabled = false;\n });\n const formatParts = this.format.split(/[^a-zA-Z]+/);\n formatParts.forEach((f) => {\n const found = Object.values(this._parts).find((c) => c.placeholders.some((d) => d == f));\n if (found) {\n found.enabled = true;\n found.placeholder = f;\n }\n });\n this._activePart = this._hasDatePart ? 'date' : 'time';\n this.cdr.markForCheck();\n }\n\n protected _handleSetClick(e: AXClickEvent) {\n this.commitValue(this.editingDateObj.date, true);\n }\n\n protected _handleNowClick(e: AXClickEvent) {\n this._editingDateObj = this._calendarService.now(this.type);\n this.commitValue(this.editingDateObj.date, true);\n }\n}\n","<div class=\"ax-header\" *ngIf=\"_hasDatePart && _hasTimePart\">\n <ax-tabs [look]=\"'default'\" [fitParent]=\"true\" [location]=\"'top'\" (onActiveTabChanged)=\"_handleViewChanged($event)\">\n <ax-tab-item text=\"Date\" [key]=\"'date'\" [disabled]=\"disabled\"></ax-tab-item>\n <ax-tab-item text=\"Time\" [key]=\"'time'\" [disabled]=\"disabled\"></ax-tab-item>\n </ax-tabs>\n</div>\n<div class=\"ax-content\">\n <div class=\"ax-calendar-part\" *ngIf=\"_activePart === 'date'\">\n <ax-calendar #calendar id=\"calendar\" [disabled]=\"disabled\" [readonly]=\"readonly\" [ngModel]=\"editingDateObj.date\"\n [minValue]=\"minValue\" [maxValue]=\"maxValue\" [disabledDates]=\"disabledDates\" [holidayDates]=\"holidayDates\"\n [depth]=\"depth\" (onNavigate)=\"_handleCalendarOnNavigate($event)\"\n (onValueChanged)=\"_handleCalendarOnValueChanged($event)\" [type]=\"type\">\n </ax-calendar>\n </div>\n <div class=\"ax-picker-part\" *ngIf=\"_activePart === 'time'\">\n <div class=\"ax-header\">\n {{ editingDateObj | axDate: format : type }}\n </div>\n <ax-picker>\n <ax-picker-column title=\"Hour\" [items]=\"hours\" [ngModel]=\"editingDateObj.hour\"\n (onValueChanged)=\"_handlePickerOnValueChanged($event, 'hour')\" [disabled]=\"disabled\" [readonly]=\"readonly\"\n *ngIf=\"_parts.hour.enabled\"></ax-picker-column>\n <ax-picker-column title=\"Minute\" [items]=\"minutes\" [ngModel]=\"editingDateObj.minute\"\n (onValueChanged)=\"_handlePickerOnValueChanged($event, 'minute')\" [step]=\"3\" [disabled]=\"disabled\"\n [readonly]=\"readonly\" *ngIf=\"_parts.minute.enabled\"></ax-picker-column>\n <ax-picker-column title=\"Second\" [items]=\"minutes\" [ngModel]=\"editingDateObj.second\"\n (onValueChanged)=\"_handlePickerOnValueChanged($event, 'second')\" [step]=\"3\" [disabled]=\"disabled\"\n [readonly]=\"readonly\" *ngIf=\"_parts.second.enabled\"></ax-picker-column>\n </ax-picker>\n </div>\n</div>\n<div class=\"ax-footer\" *ngIf=\"!disabled && !readonly && (currentTimeButton || _hasTimePart)\">\n <div>\n <ax-button [text]=\"_activePart === 'date' ? 'Today' : 'Now'\" class=\"ax-sm\" (onClick)=\"_handleNowClick($event)\"\n *ngIf=\"currentTimeButton\"></ax-button>\n </div>\n <div>\n <ax-button color=\"primary\" text=\"Set\" *ngIf=\"_hasTimePart\" class=\"ax-sm\"\n (onClick)=\"_handleSetClick($event)\"></ax-button>\n </div>\n</div>","import { AXButtonModule } from '@acorex/components/button';\nimport { AXCalendarModule } from '@acorex/components/calendar';\nimport { AXPickerModule } from '@acorex/components/picker';\nimport { AXTabsModule } from '@acorex/components/tabs';\nimport { AXDateTimeModule } from '@acorex/core/dateTime';\nimport { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { AXDateTimePickerComponent } from './datetime-picker.component';\n\nconst COMPONENT = [AXDateTimePickerComponent];\nconst MODULES = [\n CommonModule,\n FormsModule,\n AXTabsModule,\n AXDateTimeModule,\n AXButtonModule,\n AXCalendarModule,\n AXPickerModule,\n];\n\n@NgModule({\n declarations: [...COMPONENT],\n imports: [...MODULES],\n exports: [...COMPONENT],\n providers: [],\n})\nexport class AXDateTimePickerModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
@@ -47,7 +47,7 @@ class AXDialogComponent extends MXBaseComponent {
|
|
47
47
|
provide: AXClosbaleComponent,
|
48
48
|
useExisting: AXDialogComponent,
|
49
49
|
},
|
50
|
-
], usesInheritance: true, ngImport: i0, template: "<div\n class=\"ax-dialog ax-{{ data.type }}-default ax-orientation-{{ data.orientation }}\"\n cdkDrag\n cdkDragHandle\n tabindex=\"-1\"\n>\n <div class=\"ax-dialog-content-wrapper\">\n <div class=\"ax-dialog-icon-side\" *ngIf=\"data.icon !== 'none'\">\n <i class=\"ax-dialog-icon {{ data.icon }}\"></i>\n </div>\n <div class=\"ax-dialog-content-side\">\n <div class=\"ax-dialog-title\">{{ data.title }}</div>\n <div class=\"ax-dialog-content\">{{ data.content }}</div>\n </div>\n <div class=\"ax-dialog-dismiss-icon\">\n <i class=\"ax-icon ax-icon-close\" *ngIf=\"data.closeButton\"></i>\n </div>\n </div>\n <ax-footer>\n <ng-container *ngFor=\"let button of data.buttons; let i = index\">\n <ax-button\n [text]=\"button.text\"\n [tabindex]=\"i\"\n [axHotkey]=\"button.hotkey\"\n [axAutoFocus]=\"_hasAutoFocus(button)\"\n (onClick)=\"_handleButtonClick(button)\"\n [look]=\"button.look\"\n [disabled]=\"button.disabled\"\n [color]=\"button.color\"\n >\n <ax-loading *ngIf=\"button.loading\"></ax-loading>\n </ax-button>\n </ng-container>\n </ax-footer>\n</div>\n", styles: [".ax-dark .ax-dialog.ax-primary-default .ax-dialog-icon{background-color:rgba(var(--ax-color-primary-
|
50
|
+
], usesInheritance: true, ngImport: i0, template: "<div\n class=\"ax-dialog ax-{{ data.type }}-default ax-orientation-{{ data.orientation }}\"\n cdkDrag\n cdkDragHandle\n tabindex=\"-1\"\n>\n <div class=\"ax-dialog-content-wrapper\">\n <div class=\"ax-dialog-icon-side\" *ngIf=\"data.icon !== 'none'\">\n <i class=\"ax-dialog-icon {{ data.icon }}\"></i>\n </div>\n <div class=\"ax-dialog-content-side\">\n <div class=\"ax-dialog-title\">{{ data.title }}</div>\n <div class=\"ax-dialog-content\">{{ data.content }}</div>\n </div>\n <div class=\"ax-dialog-dismiss-icon\">\n <i class=\"ax-icon ax-icon-close\" *ngIf=\"data.closeButton\"></i>\n </div>\n </div>\n <ax-footer>\n <ng-container *ngFor=\"let button of data.buttons; let i = index\">\n <ax-button\n [text]=\"button.text\"\n [tabindex]=\"i\"\n [axHotkey]=\"button.hotkey\"\n [axAutoFocus]=\"_hasAutoFocus(button)\"\n (onClick)=\"_handleButtonClick(button)\"\n [look]=\"button.look\"\n [disabled]=\"button.disabled\"\n [color]=\"button.color\"\n >\n <ax-loading *ngIf=\"button.loading\"></ax-loading>\n </ax-button>\n </ng-container>\n </ax-footer>\n</div>\n", styles: [".ax-dark .ax-dialog.ax-primary-default .ax-dialog-icon{--tw-bg-opacity: 1;background-color:rgba(var(--ax-color-primary),var(--tw-bg-opacity));--tw-text-opacity: 1;color:rgba(var(--ax-color-primary-fore),var(--tw-text-opacity))}.ax-dark .ax-dialog.ax-secondary-default .ax-dialog-icon{--tw-bg-opacity: 1;background-color:rgba(var(--ax-color-secondary),var(--tw-bg-opacity));--tw-text-opacity: 1;color:rgba(var(--ax-color-secondary-fore),var(--tw-text-opacity))}.ax-dark .ax-dialog.ax-success-default .ax-dialog-icon{--tw-bg-opacity: 1;background-color:rgba(var(--ax-color-success),var(--tw-bg-opacity));--tw-text-opacity: 1;color:rgba(var(--ax-color-success-fore),var(--tw-text-opacity))}.ax-dark .ax-dialog.ax-warning-default .ax-dialog-icon{--tw-bg-opacity: 1;background-color:rgba(var(--ax-color-warning),var(--tw-bg-opacity));--tw-text-opacity: 1;color:rgba(var(--ax-color-warning-fore),var(--tw-text-opacity))}.ax-dark .ax-dialog.ax-danger-default .ax-dialog-icon{--tw-bg-opacity: 1;background-color:rgba(var(--ax-color-danger),var(--tw-bg-opacity));--tw-text-opacity: 1;color:rgba(var(--ax-color-danger-fore),var(--tw-text-opacity))}.ax-dark .ax-dialog.ax-info-default .ax-dialog-icon{--tw-bg-opacity: 1;background-color:rgba(var(--ax-color-info),var(--tw-bg-opacity));--tw-text-opacity: 1;color:rgba(var(--ax-color-info-fore),var(--tw-text-opacity))}.ax-dialog{position:relative;display:flex;width:93vw;flex-direction:column;overflow:hidden;border-radius:var(--ax-rounded-border-default);border-width:1px;--tw-bg-opacity: 1;background-color:rgba(var(--ax-color-surface),var(--tw-bg-opacity));--tw-text-opacity: 1;color:rgba(var(--ax-color-surface-fore),var(--tw-text-opacity));outline:2px solid transparent;outline-offset:2px}@media (min-width: 768px){.ax-dialog{width:75vw}}@media (min-width: 1024px){.ax-dialog{width:50vw}}@media (min-width: 1280px){.ax-dialog{width:35vw}}@media (min-width: 1536px){.ax-dialog{width:25vw}}.ax-dialog.ax-orientation-horizontal .ax-dialog-content-wrapper{flex-direction:row}.ax-dialog.ax-orientation-vertical .ax-dialog-content-wrapper{flex-direction:column;align-items:center}.ax-dialog.ax-orientation-vertical .ax-dialog-content-wrapper .ax-dialog-icon-side{margin-bottom:1rem}.ax-dialog.ax-orientation-vertical .ax-dialog-content-wrapper .ax-dialog-content-side{margin:0;text-align:center}.ax-dialog.ax-orientation-vertical ax-footer ax-button{flex:1 1 0%}.ax-dialog .ax-dialog-content-wrapper{display:flex;gap:.5rem;padding:1.5rem 1.5rem 1rem}.ax-dialog .ax-dialog-content-wrapper .ax-dialog-icon-side .ax-dialog-icon{display:flex;height:3rem;width:3rem;cursor:move;align-items:center;justify-content:center;border-radius:9999px;font-size:1.5rem;line-height:2rem}.ax-dialog .ax-dialog-content-wrapper .ax-dialog-content-side{margin-inline-start:1rem;flex:1 1 0%}.ax-dialog .ax-dialog-content-wrapper .ax-dialog-content-side .ax-dialog-title{margin-bottom:.5rem;font-size:1.125rem;font-weight:500;line-height:1.5rem}.ax-dialog .ax-dialog-content-wrapper .ax-dialog-content-side .ax-dialog-content{font-size:.875rem;line-height:1.25rem}.ax-dialog ax-footer{justify-content:flex-end;padding:.75rem 1.5rem}.ax-dialog.ax-primary-default .ax-dialog-icon{--tw-bg-opacity: 1;background-color:color-mix(in srgb,rgba(var(--ax-color-primary),var(--tw-bg-opacity)) 10%,white);--tw-text-opacity: 1;color:color-mix(in srgb,rgba(var(--ax-color-primary),var(--tw-text-opacity)),black 30%)}.ax-dialog.ax-secondary-default .ax-dialog-icon{--tw-bg-opacity: 1;background-color:color-mix(in srgb,rgba(var(--ax-color-secondary),var(--tw-bg-opacity)) 10%,white);--tw-text-opacity: 1;color:color-mix(in srgb,rgba(var(--ax-color-secondary),var(--tw-text-opacity)),black 30%)}.ax-dialog.ax-success-default .ax-dialog-icon{--tw-bg-opacity: 1;background-color:color-mix(in srgb,rgba(var(--ax-color-success),var(--tw-bg-opacity)) 10%,white);--tw-text-opacity: 1;color:color-mix(in srgb,rgba(var(--ax-color-success),var(--tw-text-opacity)),black 30%)}.ax-dialog.ax-warning-default .ax-dialog-icon{--tw-bg-opacity: 1;background-color:color-mix(in srgb,rgba(var(--ax-color-warning),var(--tw-bg-opacity)) 10%,white);--tw-text-opacity: 1;color:color-mix(in srgb,rgba(var(--ax-color-warning),var(--tw-text-opacity)),black 30%)}.ax-dialog.ax-danger-default .ax-dialog-icon{--tw-bg-opacity: 1;background-color:color-mix(in srgb,rgba(var(--ax-color-danger),var(--tw-bg-opacity)) 10%,white);--tw-text-opacity: 1;color:color-mix(in srgb,rgba(var(--ax-color-danger),var(--tw-text-opacity)),black 30%)}.ax-dialog.ax-info-default .ax-dialog-icon{--tw-bg-opacity: 1;background-color:color-mix(in srgb,rgba(var(--ax-color-info),var(--tw-bg-opacity)) 10%,white);--tw-text-opacity: 1;color:color-mix(in srgb,rgba(var(--ax-color-info),var(--tw-text-opacity)),black 30%)}\n"], dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.AXAutoFocusDirective, selector: "[axAutoFocus]", inputs: ["axAutoFocus", "focus-time"] }, { kind: "directive", type: i3.AXHotkeyDirective, selector: "[axHotkey]", inputs: ["axHotkey"] }, { kind: "directive", type: i4.CdkDrag, selector: "[cdkDrag]", inputs: ["cdkDragData", "cdkDragLockAxis", "cdkDragRootElement", "cdkDragBoundary", "cdkDragStartDelay", "cdkDragFreeDragPosition", "cdkDragDisabled", "cdkDragConstrainPosition", "cdkDragPreviewClass", "cdkDragPreviewContainer"], outputs: ["cdkDragStarted", "cdkDragReleased", "cdkDragEnded", "cdkDragEntered", "cdkDragExited", "cdkDragDropped", "cdkDragMoved"], exportAs: ["cdkDrag"] }, { kind: "directive", type: i4.CdkDragHandle, selector: "[cdkDragHandle]", inputs: ["cdkDragHandleDisabled"] }, { kind: "component", type: i5.AXButtonComponent, selector: "ax-button", inputs: ["disabled", "size", "tabIndex", "color", "look", "text", "toggleable", "selected", "type"], outputs: ["onBlur", "onFocus", "onClick", "selectedChange", "toggleableChange", "lookChange", "colorChange", "disabledChange"] }, { kind: "component", type: i6.AXDecoratorGenericComponent, selector: "ax-footer, ax-header, ax-content, ax-divider, ax-form-hint, ax-prefix, ax-suffix, ax-text, ax-title , ax-sub-title" }, { kind: "component", type: i7.AXLoadingComponent, selector: "ax-loading", inputs: ["visible", "type", "context"], outputs: ["visibleChange"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
51
51
|
}
|
52
52
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.6", ngImport: i0, type: AXDialogComponent, decorators: [{
|
53
53
|
type: Component,
|
@@ -56,7 +56,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.6", ngImpor
|
|
56
56
|
provide: AXClosbaleComponent,
|
57
57
|
useExisting: AXDialogComponent,
|
58
58
|
},
|
59
|
-
], template: "<div\n class=\"ax-dialog ax-{{ data.type }}-default ax-orientation-{{ data.orientation }}\"\n cdkDrag\n cdkDragHandle\n tabindex=\"-1\"\n>\n <div class=\"ax-dialog-content-wrapper\">\n <div class=\"ax-dialog-icon-side\" *ngIf=\"data.icon !== 'none'\">\n <i class=\"ax-dialog-icon {{ data.icon }}\"></i>\n </div>\n <div class=\"ax-dialog-content-side\">\n <div class=\"ax-dialog-title\">{{ data.title }}</div>\n <div class=\"ax-dialog-content\">{{ data.content }}</div>\n </div>\n <div class=\"ax-dialog-dismiss-icon\">\n <i class=\"ax-icon ax-icon-close\" *ngIf=\"data.closeButton\"></i>\n </div>\n </div>\n <ax-footer>\n <ng-container *ngFor=\"let button of data.buttons; let i = index\">\n <ax-button\n [text]=\"button.text\"\n [tabindex]=\"i\"\n [axHotkey]=\"button.hotkey\"\n [axAutoFocus]=\"_hasAutoFocus(button)\"\n (onClick)=\"_handleButtonClick(button)\"\n [look]=\"button.look\"\n [disabled]=\"button.disabled\"\n [color]=\"button.color\"\n >\n <ax-loading *ngIf=\"button.loading\"></ax-loading>\n </ax-button>\n </ng-container>\n </ax-footer>\n</div>\n", styles: [".ax-dark .ax-dialog.ax-primary-default .ax-dialog-icon{background-color:rgba(var(--ax-color-primary-
|
59
|
+
], template: "<div\n class=\"ax-dialog ax-{{ data.type }}-default ax-orientation-{{ data.orientation }}\"\n cdkDrag\n cdkDragHandle\n tabindex=\"-1\"\n>\n <div class=\"ax-dialog-content-wrapper\">\n <div class=\"ax-dialog-icon-side\" *ngIf=\"data.icon !== 'none'\">\n <i class=\"ax-dialog-icon {{ data.icon }}\"></i>\n </div>\n <div class=\"ax-dialog-content-side\">\n <div class=\"ax-dialog-title\">{{ data.title }}</div>\n <div class=\"ax-dialog-content\">{{ data.content }}</div>\n </div>\n <div class=\"ax-dialog-dismiss-icon\">\n <i class=\"ax-icon ax-icon-close\" *ngIf=\"data.closeButton\"></i>\n </div>\n </div>\n <ax-footer>\n <ng-container *ngFor=\"let button of data.buttons; let i = index\">\n <ax-button\n [text]=\"button.text\"\n [tabindex]=\"i\"\n [axHotkey]=\"button.hotkey\"\n [axAutoFocus]=\"_hasAutoFocus(button)\"\n (onClick)=\"_handleButtonClick(button)\"\n [look]=\"button.look\"\n [disabled]=\"button.disabled\"\n [color]=\"button.color\"\n >\n <ax-loading *ngIf=\"button.loading\"></ax-loading>\n </ax-button>\n </ng-container>\n </ax-footer>\n</div>\n", styles: [".ax-dark .ax-dialog.ax-primary-default .ax-dialog-icon{--tw-bg-opacity: 1;background-color:rgba(var(--ax-color-primary),var(--tw-bg-opacity));--tw-text-opacity: 1;color:rgba(var(--ax-color-primary-fore),var(--tw-text-opacity))}.ax-dark .ax-dialog.ax-secondary-default .ax-dialog-icon{--tw-bg-opacity: 1;background-color:rgba(var(--ax-color-secondary),var(--tw-bg-opacity));--tw-text-opacity: 1;color:rgba(var(--ax-color-secondary-fore),var(--tw-text-opacity))}.ax-dark .ax-dialog.ax-success-default .ax-dialog-icon{--tw-bg-opacity: 1;background-color:rgba(var(--ax-color-success),var(--tw-bg-opacity));--tw-text-opacity: 1;color:rgba(var(--ax-color-success-fore),var(--tw-text-opacity))}.ax-dark .ax-dialog.ax-warning-default .ax-dialog-icon{--tw-bg-opacity: 1;background-color:rgba(var(--ax-color-warning),var(--tw-bg-opacity));--tw-text-opacity: 1;color:rgba(var(--ax-color-warning-fore),var(--tw-text-opacity))}.ax-dark .ax-dialog.ax-danger-default .ax-dialog-icon{--tw-bg-opacity: 1;background-color:rgba(var(--ax-color-danger),var(--tw-bg-opacity));--tw-text-opacity: 1;color:rgba(var(--ax-color-danger-fore),var(--tw-text-opacity))}.ax-dark .ax-dialog.ax-info-default .ax-dialog-icon{--tw-bg-opacity: 1;background-color:rgba(var(--ax-color-info),var(--tw-bg-opacity));--tw-text-opacity: 1;color:rgba(var(--ax-color-info-fore),var(--tw-text-opacity))}.ax-dialog{position:relative;display:flex;width:93vw;flex-direction:column;overflow:hidden;border-radius:var(--ax-rounded-border-default);border-width:1px;--tw-bg-opacity: 1;background-color:rgba(var(--ax-color-surface),var(--tw-bg-opacity));--tw-text-opacity: 1;color:rgba(var(--ax-color-surface-fore),var(--tw-text-opacity));outline:2px solid transparent;outline-offset:2px}@media (min-width: 768px){.ax-dialog{width:75vw}}@media (min-width: 1024px){.ax-dialog{width:50vw}}@media (min-width: 1280px){.ax-dialog{width:35vw}}@media (min-width: 1536px){.ax-dialog{width:25vw}}.ax-dialog.ax-orientation-horizontal .ax-dialog-content-wrapper{flex-direction:row}.ax-dialog.ax-orientation-vertical .ax-dialog-content-wrapper{flex-direction:column;align-items:center}.ax-dialog.ax-orientation-vertical .ax-dialog-content-wrapper .ax-dialog-icon-side{margin-bottom:1rem}.ax-dialog.ax-orientation-vertical .ax-dialog-content-wrapper .ax-dialog-content-side{margin:0;text-align:center}.ax-dialog.ax-orientation-vertical ax-footer ax-button{flex:1 1 0%}.ax-dialog .ax-dialog-content-wrapper{display:flex;gap:.5rem;padding:1.5rem 1.5rem 1rem}.ax-dialog .ax-dialog-content-wrapper .ax-dialog-icon-side .ax-dialog-icon{display:flex;height:3rem;width:3rem;cursor:move;align-items:center;justify-content:center;border-radius:9999px;font-size:1.5rem;line-height:2rem}.ax-dialog .ax-dialog-content-wrapper .ax-dialog-content-side{margin-inline-start:1rem;flex:1 1 0%}.ax-dialog .ax-dialog-content-wrapper .ax-dialog-content-side .ax-dialog-title{margin-bottom:.5rem;font-size:1.125rem;font-weight:500;line-height:1.5rem}.ax-dialog .ax-dialog-content-wrapper .ax-dialog-content-side .ax-dialog-content{font-size:.875rem;line-height:1.25rem}.ax-dialog ax-footer{justify-content:flex-end;padding:.75rem 1.5rem}.ax-dialog.ax-primary-default .ax-dialog-icon{--tw-bg-opacity: 1;background-color:color-mix(in srgb,rgba(var(--ax-color-primary),var(--tw-bg-opacity)) 10%,white);--tw-text-opacity: 1;color:color-mix(in srgb,rgba(var(--ax-color-primary),var(--tw-text-opacity)),black 30%)}.ax-dialog.ax-secondary-default .ax-dialog-icon{--tw-bg-opacity: 1;background-color:color-mix(in srgb,rgba(var(--ax-color-secondary),var(--tw-bg-opacity)) 10%,white);--tw-text-opacity: 1;color:color-mix(in srgb,rgba(var(--ax-color-secondary),var(--tw-text-opacity)),black 30%)}.ax-dialog.ax-success-default .ax-dialog-icon{--tw-bg-opacity: 1;background-color:color-mix(in srgb,rgba(var(--ax-color-success),var(--tw-bg-opacity)) 10%,white);--tw-text-opacity: 1;color:color-mix(in srgb,rgba(var(--ax-color-success),var(--tw-text-opacity)),black 30%)}.ax-dialog.ax-warning-default .ax-dialog-icon{--tw-bg-opacity: 1;background-color:color-mix(in srgb,rgba(var(--ax-color-warning),var(--tw-bg-opacity)) 10%,white);--tw-text-opacity: 1;color:color-mix(in srgb,rgba(var(--ax-color-warning),var(--tw-text-opacity)),black 30%)}.ax-dialog.ax-danger-default .ax-dialog-icon{--tw-bg-opacity: 1;background-color:color-mix(in srgb,rgba(var(--ax-color-danger),var(--tw-bg-opacity)) 10%,white);--tw-text-opacity: 1;color:color-mix(in srgb,rgba(var(--ax-color-danger),var(--tw-text-opacity)),black 30%)}.ax-dialog.ax-info-default .ax-dialog-icon{--tw-bg-opacity: 1;background-color:color-mix(in srgb,rgba(var(--ax-color-info),var(--tw-bg-opacity)) 10%,white);--tw-text-opacity: 1;color:color-mix(in srgb,rgba(var(--ax-color-info),var(--tw-text-opacity)),black 30%)}\n"] }]
|
60
60
|
}], ctorParameters: function () { return [{ type: undefined, decorators: [{
|
61
61
|
type: Inject,
|
62
62
|
args: [DIALOG_DATA]
|