@acontplus/ng-components 1.1.0 → 1.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +284 -49
- package/fesm2022/acontplus-ng-components.mjs +280 -252
- package/fesm2022/acontplus-ng-components.mjs.map +1 -1
- package/index.d.ts +178 -170
- package/package.json +23 -20
package/index.d.ts
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
import * as _angular_core from '@angular/core';
|
|
2
|
-
import { Type, AfterViewInit, OnDestroy, ViewContainerRef, ElementRef,
|
|
2
|
+
import { Type, AfterViewInit, OnDestroy, ViewContainerRef, ElementRef, TemplateRef, AfterContentInit, OnChanges, OnInit, SimpleChanges, PipeTransform } from '@angular/core';
|
|
3
3
|
import { MatDialogRef } from '@angular/material/dialog';
|
|
4
4
|
import { ScrollStrategy } from '@angular/cdk/overlay';
|
|
5
5
|
import { MatChipInputEvent, MatChipEditedEvent } from '@angular/material/chips';
|
|
6
6
|
import { LiveAnnouncer } from '@angular/cdk/a11y';
|
|
7
|
-
import { Tabulator } from 'tabulator-tables';
|
|
8
7
|
import * as _angular_material_paginator from '@angular/material/paginator';
|
|
9
8
|
import { PageEvent } from '@angular/material/paginator';
|
|
10
9
|
import { MatTableDataSource, MatHeaderRowDef, MatRowDef, MatFooterRowDef, MatColumnDef, MatTable } from '@angular/material/table';
|
|
11
10
|
import { SelectionModel } from '@angular/cdk/collections';
|
|
11
|
+
import { Tabulator } from 'tabulator-tables';
|
|
12
12
|
import * as rxjs from 'rxjs';
|
|
13
13
|
import { Observable } from 'rxjs';
|
|
14
14
|
import { ControlValueAccessor } from '@angular/forms';
|
|
@@ -30,7 +30,7 @@ import { ComponentType } from '@angular/cdk/portal';
|
|
|
30
30
|
* Card content goes here
|
|
31
31
|
* </acp-dynamic-card>
|
|
32
32
|
*/
|
|
33
|
-
declare class
|
|
33
|
+
declare class DynamicCard {
|
|
34
34
|
/**
|
|
35
35
|
* The title text to display in the card header.
|
|
36
36
|
* @default null
|
|
@@ -121,8 +121,8 @@ declare class DynamicCardComponent {
|
|
|
121
121
|
* @param event The click event
|
|
122
122
|
*/
|
|
123
123
|
handleCardClick(event: Event): void;
|
|
124
|
-
static ɵfac: _angular_core.ɵɵFactoryDeclaration<
|
|
125
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<
|
|
124
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<DynamicCard, never>;
|
|
125
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<DynamicCard, "acp-dynamic-card", never, { "cardTitle": { "alias": "cardTitle"; "required": false; "isSignal": true; }; "cardSubtitle": { "alias": "cardSubtitle"; "required": false; "isSignal": true; }; "avatarImageUrl": { "alias": "avatarImageUrl"; "required": false; "isSignal": true; }; "isHeaderVisible": { "alias": "isHeaderVisible"; "required": false; "isSignal": true; }; "contentPadding": { "alias": "contentPadding"; "required": false; "isSignal": true; }; "hasDivider": { "alias": "hasDivider"; "required": false; "isSignal": true; }; "areActionsVisible": { "alias": "areActionsVisible"; "required": false; "isSignal": true; }; "primaryButtonText": { "alias": "primaryButtonText"; "required": false; "isSignal": true; }; "secondaryButtonText": { "alias": "secondaryButtonText"; "required": false; "isSignal": true; }; "primaryButtonIcon": { "alias": "primaryButtonIcon"; "required": false; "isSignal": true; }; "secondaryButtonIcon": { "alias": "secondaryButtonIcon"; "required": false; "isSignal": true; }; "buttonsPosition": { "alias": "buttonsPosition"; "required": false; "isSignal": true; }; }, { "primaryButtonClicked": "primaryButtonClicked"; "secondaryButtonClicked": "secondaryButtonClicked"; "cardClicked": "cardClicked"; }, never, ["*"], true, never>;
|
|
126
126
|
}
|
|
127
127
|
|
|
128
128
|
type DialogSize = 'xs' | 'sm' | 'md' | 'lg' | 'xl' | 'xxl' | 'full';
|
|
@@ -163,7 +163,7 @@ interface MatCustomDialogConfig<T = unknown> {
|
|
|
163
163
|
exitAnimationDuration?: number | string;
|
|
164
164
|
}
|
|
165
165
|
/**
|
|
166
|
-
* Configuration interface for opening a dialog inside the custom `
|
|
166
|
+
* Configuration interface for opening a dialog inside the custom `DialogWrapper`.
|
|
167
167
|
* This interface defines the properties needed to configure the dialog wrapper.
|
|
168
168
|
*
|
|
169
169
|
* @interface DialogWrapperConfig
|
|
@@ -231,7 +231,7 @@ declare class AdvancedDialogService {
|
|
|
231
231
|
* @param matDialogConfig Standard MatDialog configuration (size, position, etc.).
|
|
232
232
|
* @returns A MatDialogRef instance pointing to the wrapper.
|
|
233
233
|
*/
|
|
234
|
-
openInWrapper<T, R = unknown>(wrapperConfig: DialogWrapperConfig<T>, matDialogConfig?: MatCustomDialogConfig<T>): Promise<MatDialogRef<
|
|
234
|
+
openInWrapper<T, R = unknown>(wrapperConfig: DialogWrapperConfig<T>, matDialogConfig?: MatCustomDialogConfig<T>): Promise<MatDialogRef<DialogWrapper, R>>;
|
|
235
235
|
/**
|
|
236
236
|
* Helper to open a dialog and only get an observable of the result.
|
|
237
237
|
*/
|
|
@@ -258,7 +258,7 @@ declare class OverlayService {
|
|
|
258
258
|
static ɵprov: _angular_core.ɵɵInjectableDeclaration<OverlayService>;
|
|
259
259
|
}
|
|
260
260
|
|
|
261
|
-
declare class
|
|
261
|
+
declare class ThemeSwitcher {
|
|
262
262
|
private readonly _darkMode;
|
|
263
263
|
private readonly platformId;
|
|
264
264
|
isDarkMode$: rxjs.Observable<boolean>;
|
|
@@ -266,8 +266,8 @@ declare class ThemeService {
|
|
|
266
266
|
loadMode(): void;
|
|
267
267
|
toggleDarkMode(): void;
|
|
268
268
|
private applyTheme;
|
|
269
|
-
static ɵfac: _angular_core.ɵɵFactoryDeclaration<
|
|
270
|
-
static ɵprov: _angular_core.ɵɵInjectableDeclaration<
|
|
269
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<ThemeSwitcher, never>;
|
|
270
|
+
static ɵprov: _angular_core.ɵɵInjectableDeclaration<ThemeSwitcher>;
|
|
271
271
|
}
|
|
272
272
|
|
|
273
273
|
interface AutocompleteWrapperItem {
|
|
@@ -458,8 +458,8 @@ declare class AutocompleteWrapperService {
|
|
|
458
458
|
* data: { message: 'This is some data passed to the dialog content component' }
|
|
459
459
|
* });
|
|
460
460
|
*/
|
|
461
|
-
declare class
|
|
462
|
-
dialogRef: MatDialogRef<
|
|
461
|
+
declare class DialogWrapper implements AfterViewInit, OnDestroy {
|
|
462
|
+
dialogRef: MatDialogRef<DialogWrapper, any>;
|
|
463
463
|
config: DialogWrapperConfig<unknown>;
|
|
464
464
|
/**
|
|
465
465
|
* A template reference that acts as an anchor for dynamic content.
|
|
@@ -481,7 +481,7 @@ declare class DialogWrapperComponent implements AfterViewInit, OnDestroy {
|
|
|
481
481
|
*/
|
|
482
482
|
private bringToFrontTimeoutId;
|
|
483
483
|
/**
|
|
484
|
-
* Creates an instance of
|
|
484
|
+
* Creates an instance of DialogWrapper.
|
|
485
485
|
*
|
|
486
486
|
* @param dialogRef Reference to the dialog opened via the Material Dialog service
|
|
487
487
|
* @param config Configuration for the dialog wrapper, injected from MAT_DIALOG_DATA
|
|
@@ -507,26 +507,26 @@ declare class DialogWrapperComponent implements AfterViewInit, OnDestroy {
|
|
|
507
507
|
* Called when the dialog header is clicked.
|
|
508
508
|
*/
|
|
509
509
|
bringToFront(): void;
|
|
510
|
-
static ɵfac: _angular_core.ɵɵFactoryDeclaration<
|
|
511
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<
|
|
510
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<DialogWrapper, never>;
|
|
511
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<DialogWrapper, "acp-dialog-wrapper", never, {}, {}, never, never, true, never>;
|
|
512
512
|
}
|
|
513
513
|
|
|
514
|
-
declare class
|
|
514
|
+
declare class UserIcon {
|
|
515
515
|
size: _angular_core.InputSignal<string>;
|
|
516
|
-
static ɵfac: _angular_core.ɵɵFactoryDeclaration<
|
|
517
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<
|
|
516
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<UserIcon, never>;
|
|
517
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<UserIcon, "acp-user-icon", never, { "size": { "alias": "size"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
518
518
|
}
|
|
519
519
|
|
|
520
|
-
declare class
|
|
520
|
+
declare class SvgIcon {
|
|
521
521
|
id: _angular_core.InputSignal<string>;
|
|
522
522
|
width: _angular_core.InputSignal<string>;
|
|
523
523
|
height: _angular_core.InputSignal<string>;
|
|
524
524
|
color: _angular_core.InputSignal<string>;
|
|
525
|
-
static ɵfac: _angular_core.ɵɵFactoryDeclaration<
|
|
526
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<
|
|
525
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<SvgIcon, never>;
|
|
526
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<SvgIcon, "acp-svg-icon", never, { "id": { "alias": "id"; "required": false; "isSignal": true; }; "width": { "alias": "width"; "required": false; "isSignal": true; }; "height": { "alias": "height"; "required": false; "isSignal": true; }; "color": { "alias": "color"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
527
527
|
}
|
|
528
528
|
|
|
529
|
-
declare class
|
|
529
|
+
declare class InputChip {
|
|
530
530
|
chips: _angular_core.InputSignal<string[]>;
|
|
531
531
|
labelText: _angular_core.InputSignal<string>;
|
|
532
532
|
placelholder: _angular_core.InputSignal<string>;
|
|
@@ -536,14 +536,15 @@ declare class InputChipComponent {
|
|
|
536
536
|
add(event: MatChipInputEvent): void;
|
|
537
537
|
remove(value: string): void;
|
|
538
538
|
edit(inputRaw: string, event: MatChipEditedEvent): void;
|
|
539
|
-
static ɵfac: _angular_core.ɵɵFactoryDeclaration<
|
|
540
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<
|
|
539
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<InputChip, never>;
|
|
540
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<InputChip, "acp-input-chip", never, { "chips": { "alias": "chips"; "required": true; "isSignal": true; }; "labelText": { "alias": "labelText"; "required": true; "isSignal": true; }; "placelholder": { "alias": "placelholder"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
541
541
|
}
|
|
542
542
|
|
|
543
|
-
type ButtonVariant = 'primary' | 'secondary' | 'success' | 'danger' | 'warning' | 'info' | 'dark';
|
|
544
543
|
type ButtonType = 'button' | 'submit' | 'reset';
|
|
544
|
+
type ButtonVariant = 'primary' | 'secondary' | 'success' | 'danger' | 'warning' | 'info' | 'dark';
|
|
545
545
|
type MaterialButtonStyle = 'text' | 'elevated' | 'outlined' | 'filled' | 'tonal' | 'icon' | 'fab' | 'mini-fab' | 'extended-fab';
|
|
546
|
-
|
|
546
|
+
|
|
547
|
+
declare class Button {
|
|
547
548
|
variant: _angular_core.InputSignal<ButtonVariant>;
|
|
548
549
|
text: _angular_core.InputSignal<string>;
|
|
549
550
|
icon: _angular_core.InputSignal<string>;
|
|
@@ -562,138 +563,13 @@ declare class ButtonComponent {
|
|
|
562
563
|
handleClick: _angular_core.OutputEmitterRef<unknown>;
|
|
563
564
|
getButtonClasses(): Record<string, boolean>;
|
|
564
565
|
getDisplayText(): string;
|
|
565
|
-
static ɵfac: _angular_core.ɵɵFactoryDeclaration<
|
|
566
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<
|
|
567
|
-
}
|
|
568
|
-
|
|
569
|
-
declare class SpinnerComponent {
|
|
570
|
-
static ɵfac: _angular_core.ɵɵFactoryDeclaration<SpinnerComponent, never>;
|
|
571
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<SpinnerComponent, "acp-spinner", never, {}, {}, never, never, true, never>;
|
|
566
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<Button, never>;
|
|
567
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<Button, "acp-button", never, { "variant": { "alias": "variant"; "required": false; "isSignal": true; }; "text": { "alias": "text"; "required": false; "isSignal": true; }; "icon": { "alias": "icon"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "type": { "alias": "type"; "required": false; "isSignal": true; }; "matStyle": { "alias": "matStyle"; "required": false; "isSignal": true; }; "customClass": { "alias": "customClass"; "required": false; "isSignal": true; }; "extended": { "alias": "extended"; "required": false; "isSignal": true; }; "title": { "alias": "title"; "required": false; "isSignal": true; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; "isSignal": true; }; "name": { "alias": "name"; "required": false; "isSignal": true; }; "id": { "alias": "id"; "required": false; "isSignal": true; }; "form": { "alias": "form"; "required": false; "isSignal": true; }; "tabIndex": { "alias": "tabIndex"; "required": false; "isSignal": true; }; "testId": { "alias": "testId"; "required": false; "isSignal": true; }; }, { "handleClick": "handleClick"; }, never, ["*"], true, never>;
|
|
572
568
|
}
|
|
573
569
|
|
|
574
|
-
|
|
575
|
-
|
|
576
|
-
|
|
577
|
-
width?: number | string;
|
|
578
|
-
minWidth?: number;
|
|
579
|
-
maxWidth?: number;
|
|
580
|
-
resizable?: boolean;
|
|
581
|
-
sortable?: boolean;
|
|
582
|
-
headerSort?: boolean;
|
|
583
|
-
editor?: string | boolean;
|
|
584
|
-
formatter?: string;
|
|
585
|
-
formatterParams?: Record<string, any>;
|
|
586
|
-
validator?: string | string[];
|
|
587
|
-
headerFilter?: string | boolean;
|
|
588
|
-
headerFilterParams?: Record<string, any>;
|
|
589
|
-
frozen?: boolean;
|
|
590
|
-
responsive?: number;
|
|
591
|
-
tooltip?: string | boolean;
|
|
592
|
-
cssClass?: string;
|
|
593
|
-
headerCssClass?: string;
|
|
594
|
-
mutator?: string;
|
|
595
|
-
accessor?: string;
|
|
596
|
-
download?: boolean;
|
|
597
|
-
titleDownload?: string;
|
|
598
|
-
visible?: boolean;
|
|
599
|
-
clipboard?: boolean;
|
|
600
|
-
}
|
|
601
|
-
interface TabulatorTheme {
|
|
602
|
-
name: 'default' | 'modern' | 'midnight' | 'simple' | 'site' | 'site-dark';
|
|
603
|
-
cssPath?: string;
|
|
604
|
-
}
|
|
605
|
-
interface TabulatorConfig {
|
|
606
|
-
data?: any[];
|
|
607
|
-
columns?: TabulatorColumn[];
|
|
608
|
-
height?: string | number | false;
|
|
609
|
-
minHeight?: number;
|
|
610
|
-
maxHeight?: number;
|
|
611
|
-
layout?: 'fitData' | 'fitColumns' | 'fitDataFill' | 'fitDataStretch';
|
|
612
|
-
layoutColumnsOnNewData?: boolean;
|
|
613
|
-
responsiveLayout?: boolean | 'hide' | 'collapse';
|
|
614
|
-
responsiveLayoutCollapseStartOpen?: boolean;
|
|
615
|
-
columnMinWidth?: number;
|
|
616
|
-
resizableColumns?: boolean;
|
|
617
|
-
movableColumns?: boolean;
|
|
618
|
-
columnHeaderVertAlign?: 'top' | 'middle' | 'bottom';
|
|
619
|
-
placeholder?: string;
|
|
620
|
-
footerElement?: string;
|
|
621
|
-
tooltips?: boolean | ((cell: any) => string);
|
|
622
|
-
tooltipGenerationMode?: 'load' | 'hover';
|
|
623
|
-
history?: boolean;
|
|
624
|
-
keybindings?: Record<string, string>;
|
|
625
|
-
reactiveData?: boolean;
|
|
626
|
-
autoResize?: boolean;
|
|
627
|
-
tableBuilding?: () => void;
|
|
628
|
-
tableBuilt?: () => void;
|
|
629
|
-
renderStarted?: () => void;
|
|
630
|
-
renderComplete?: () => void;
|
|
631
|
-
htmlImporting?: () => void;
|
|
632
|
-
htmlImported?: () => void;
|
|
633
|
-
dataLoading?: (data: any[]) => void;
|
|
634
|
-
dataLoaded?: (data: any[]) => void;
|
|
635
|
-
dataChanged?: (data: any[]) => void;
|
|
636
|
-
pageLoaded?: (pageno: number) => void;
|
|
637
|
-
dataSorting?: (sorters: any[]) => void;
|
|
638
|
-
dataSorted?: (sorters: any[], rows: any[]) => void;
|
|
639
|
-
dataFiltering?: (filters: any[]) => void;
|
|
640
|
-
dataFiltered?: (filters: any[], rows: any[]) => void;
|
|
641
|
-
validationFailed?: (cell: any, value: any, validators: any[]) => void;
|
|
642
|
-
clipboardCopyStyled?: (clipboard: string) => string;
|
|
643
|
-
clipboardCopyConfig?: Record<string, any>;
|
|
644
|
-
clipboardPasteParser?: string | ((clipboard: string) => any[][]);
|
|
645
|
-
clipboardPasteAction?: 'insert' | 'update' | 'replace';
|
|
646
|
-
printAsHtml?: boolean;
|
|
647
|
-
printFormatter?: (tableHtml: string, table: any) => string;
|
|
648
|
-
printHeader?: string;
|
|
649
|
-
printFooter?: string;
|
|
650
|
-
tabEndNewRow?: boolean | ((row: any) => any);
|
|
651
|
-
}
|
|
652
|
-
interface TabulatorEventHandlers {
|
|
653
|
-
onCellEdited?: (cell: any) => void;
|
|
654
|
-
onRowClick?: (e: Event, row: any) => void;
|
|
655
|
-
onRowSelected?: (row: any) => void;
|
|
656
|
-
onRowDeselected?: (row: any) => void;
|
|
657
|
-
onDataChanged?: (data: any[]) => void;
|
|
658
|
-
onTableReady?: (tabulator: any) => void;
|
|
659
|
-
}
|
|
660
|
-
|
|
661
|
-
declare class TabulatorTableComponent implements OnChanges, AfterViewInit, OnDestroy {
|
|
662
|
-
readonly data: _angular_core.InputSignal<any[]>;
|
|
663
|
-
readonly columns: _angular_core.InputSignal<any[]>;
|
|
664
|
-
readonly height: _angular_core.InputSignal<string | number | false>;
|
|
665
|
-
readonly layout: _angular_core.InputSignal<"fitData" | "fitColumns" | "fitDataFill" | "fitDataStretch">;
|
|
666
|
-
readonly dataTree: _angular_core.InputSignal<boolean>;
|
|
667
|
-
readonly dataTreeChildField: _angular_core.InputSignal<string>;
|
|
668
|
-
readonly dataTreeStartExpanded: _angular_core.InputSignal<boolean>;
|
|
669
|
-
readonly dataTreeSelectPropagate: _angular_core.InputSignal<boolean>;
|
|
670
|
-
readonly selectable: _angular_core.InputSignal<boolean>;
|
|
671
|
-
readonly reactiveData: _angular_core.InputSignal<boolean>;
|
|
672
|
-
readonly placeholder: _angular_core.InputSignal<string>;
|
|
673
|
-
readonly autoResize: _angular_core.InputSignal<boolean>;
|
|
674
|
-
readonly theme: _angular_core.InputSignal<TabulatorTheme>;
|
|
675
|
-
readonly customClass: _angular_core.InputSignal<string>;
|
|
676
|
-
readonly options: _angular_core.InputSignal<Record<string, any>>;
|
|
677
|
-
readonly cellEdited: _angular_core.OutputEmitterRef<any>;
|
|
678
|
-
readonly rowClick: _angular_core.OutputEmitterRef<any>;
|
|
679
|
-
readonly rowSelected: _angular_core.OutputEmitterRef<any>;
|
|
680
|
-
readonly tableReady: _angular_core.OutputEmitterRef<Tabulator>;
|
|
681
|
-
private _tabulator;
|
|
682
|
-
containerId: string;
|
|
683
|
-
ngAfterViewInit(): void;
|
|
684
|
-
ngOnChanges(changes: SimpleChanges): void;
|
|
685
|
-
ngOnDestroy(): void;
|
|
686
|
-
private initializeTable;
|
|
687
|
-
private applyTheme;
|
|
688
|
-
private applyCustomClass;
|
|
689
|
-
private registerEvents;
|
|
690
|
-
private updateData;
|
|
691
|
-
private updateColumns;
|
|
692
|
-
private destroyTable;
|
|
693
|
-
getInstance(): Tabulator;
|
|
694
|
-
redraw(): void;
|
|
695
|
-
static ɵfac: _angular_core.ɵɵFactoryDeclaration<TabulatorTableComponent, never>;
|
|
696
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<TabulatorTableComponent, "acp-tabulator", never, { "data": { "alias": "data"; "required": false; "isSignal": true; }; "columns": { "alias": "columns"; "required": false; "isSignal": true; }; "height": { "alias": "height"; "required": false; "isSignal": true; }; "layout": { "alias": "layout"; "required": false; "isSignal": true; }; "dataTree": { "alias": "dataTree"; "required": false; "isSignal": true; }; "dataTreeChildField": { "alias": "dataTreeChildField"; "required": false; "isSignal": true; }; "dataTreeStartExpanded": { "alias": "dataTreeStartExpanded"; "required": false; "isSignal": true; }; "dataTreeSelectPropagate": { "alias": "dataTreeSelectPropagate"; "required": false; "isSignal": true; }; "selectable": { "alias": "selectable"; "required": false; "isSignal": true; }; "reactiveData": { "alias": "reactiveData"; "required": false; "isSignal": true; }; "placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; "autoResize": { "alias": "autoResize"; "required": false; "isSignal": true; }; "theme": { "alias": "theme"; "required": false; "isSignal": true; }; "customClass": { "alias": "customClass"; "required": false; "isSignal": true; }; "options": { "alias": "options"; "required": false; "isSignal": true; }; }, { "cellEdited": "cellEdited"; "rowClick": "rowClick"; "rowSelected": "rowSelected"; "tableReady": "tableReady"; }, never, never, true, never>;
|
|
570
|
+
declare class Spinner {
|
|
571
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<Spinner, never>;
|
|
572
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<Spinner, "acp-spinner", never, {}, {}, never, never, true, never>;
|
|
697
573
|
}
|
|
698
574
|
|
|
699
575
|
interface DateRangeConfig<T = any> {
|
|
@@ -762,7 +638,12 @@ declare class TableCellIndex {
|
|
|
762
638
|
}
|
|
763
639
|
|
|
764
640
|
interface TableRow {
|
|
765
|
-
|
|
641
|
+
rowStyle?: {
|
|
642
|
+
backgroundColor?: string;
|
|
643
|
+
color?: string;
|
|
644
|
+
[key: string]: any;
|
|
645
|
+
};
|
|
646
|
+
disableSelection?: boolean;
|
|
766
647
|
[key: string]: any;
|
|
767
648
|
}
|
|
768
649
|
|
|
@@ -797,7 +678,7 @@ declare class Pagination {
|
|
|
797
678
|
updateFromPaginatorEvent(event: any): void;
|
|
798
679
|
}
|
|
799
680
|
|
|
800
|
-
declare class
|
|
681
|
+
declare class DynamicTable<T extends TableRow> implements AfterContentInit, OnChanges, OnInit, OnDestroy {
|
|
801
682
|
private componentRefs;
|
|
802
683
|
private embeddedViews;
|
|
803
684
|
private cdr;
|
|
@@ -808,6 +689,7 @@ declare class DynamicTableComponent<T extends TableRow> implements AfterContentI
|
|
|
808
689
|
visibleColumns: string[];
|
|
809
690
|
columnDefinitions: ColumnDefinition<T>[];
|
|
810
691
|
readonly showSelectBox: _angular_core.InputSignal<boolean>;
|
|
692
|
+
readonly multipleSelection: _angular_core.InputSignal<boolean>;
|
|
811
693
|
readonly tableData: _angular_core.InputSignal<T[]>;
|
|
812
694
|
readonly rowTemplate: _angular_core.InputSignal<TemplateRef<TableContext<T>> | null>;
|
|
813
695
|
expandedDetail: TemplateRef<TableContext<T>> | null;
|
|
@@ -846,19 +728,147 @@ declare class DynamicTableComponent<T extends TableRow> implements AfterContentI
|
|
|
846
728
|
checkboxLabel(row?: T): string;
|
|
847
729
|
selectRow(row: T): void;
|
|
848
730
|
onExpand(event: Event, element: T): void;
|
|
849
|
-
|
|
731
|
+
getRowStyle(element: T): Record<string, string>;
|
|
850
732
|
handlePageEvent(e: PageEvent): void;
|
|
851
|
-
static ɵfac: _angular_core.ɵɵFactoryDeclaration<
|
|
852
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<
|
|
733
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<DynamicTable<any>, never>;
|
|
734
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<DynamicTable<any>, "acp-dynamic-table", never, { "showExpand": { "alias": "showExpand"; "required": false; "isSignal": true; }; "showFooter": { "alias": "showFooter"; "required": false; "isSignal": true; }; "locale": { "alias": "locale"; "required": false; "isSignal": true; }; "highlightRowIndex": { "alias": "highlightRowIndex"; "required": false; "isSignal": true; }; "visibleColumns": { "alias": "visibleColumns"; "required": false; }; "columnDefinitions": { "alias": "columnDefinitions"; "required": false; }; "showSelectBox": { "alias": "showSelectBox"; "required": false; "isSignal": true; }; "multipleSelection": { "alias": "multipleSelection"; "required": false; "isSignal": true; }; "tableData": { "alias": "tableData"; "required": false; "isSignal": true; }; "rowTemplate": { "alias": "rowTemplate"; "required": false; "isSignal": true; }; "expandedDetail": { "alias": "expandedDetail"; "required": false; }; "enablePagination": { "alias": "enablePagination"; "required": false; "isSignal": true; }; "paginationConfig": { "alias": "paginationConfig"; "required": false; }; "isLoadingData": { "alias": "isLoadingData"; "required": false; "isSignal": true; }; }, { "rowSelected": "rowSelected"; "copyRow": "copyRow"; "showExpanded": "showExpanded"; "hideExpanded": "hideExpanded"; "pageEvent": "pageEvent"; }, ["headerRowDefs", "rowDefs", "footerRowDefs", "columnDefs", "rows"], never, true, never>;
|
|
853
735
|
}
|
|
854
736
|
|
|
855
|
-
|
|
737
|
+
interface TabulatorColumn {
|
|
738
|
+
title: string;
|
|
739
|
+
field: string;
|
|
740
|
+
width?: number | string;
|
|
741
|
+
minWidth?: number;
|
|
742
|
+
maxWidth?: number;
|
|
743
|
+
resizable?: boolean;
|
|
744
|
+
sortable?: boolean;
|
|
745
|
+
headerSort?: boolean;
|
|
746
|
+
editor?: string | boolean;
|
|
747
|
+
formatter?: string;
|
|
748
|
+
formatterParams?: Record<string, any>;
|
|
749
|
+
validator?: string | string[];
|
|
750
|
+
headerFilter?: string | boolean;
|
|
751
|
+
headerFilterParams?: Record<string, any>;
|
|
752
|
+
frozen?: boolean;
|
|
753
|
+
responsive?: number;
|
|
754
|
+
tooltip?: string | boolean;
|
|
755
|
+
cssClass?: string;
|
|
756
|
+
headerCssClass?: string;
|
|
757
|
+
mutator?: string;
|
|
758
|
+
accessor?: string;
|
|
759
|
+
download?: boolean;
|
|
760
|
+
titleDownload?: string;
|
|
761
|
+
visible?: boolean;
|
|
762
|
+
clipboard?: boolean;
|
|
763
|
+
}
|
|
764
|
+
interface TabulatorTheme {
|
|
765
|
+
name: 'default' | 'modern' | 'midnight' | 'simple' | 'site' | 'site-dark';
|
|
766
|
+
cssPath?: string;
|
|
767
|
+
}
|
|
768
|
+
interface TabulatorConfig {
|
|
769
|
+
data?: any[];
|
|
770
|
+
columns?: TabulatorColumn[];
|
|
771
|
+
height?: string | number | false;
|
|
772
|
+
minHeight?: number;
|
|
773
|
+
maxHeight?: number;
|
|
774
|
+
layout?: 'fitData' | 'fitColumns' | 'fitDataFill' | 'fitDataStretch';
|
|
775
|
+
layoutColumnsOnNewData?: boolean;
|
|
776
|
+
responsiveLayout?: boolean | 'hide' | 'collapse';
|
|
777
|
+
responsiveLayoutCollapseStartOpen?: boolean;
|
|
778
|
+
columnMinWidth?: number;
|
|
779
|
+
resizableColumns?: boolean;
|
|
780
|
+
movableColumns?: boolean;
|
|
781
|
+
columnHeaderVertAlign?: 'top' | 'middle' | 'bottom';
|
|
782
|
+
placeholder?: string;
|
|
783
|
+
footerElement?: string;
|
|
784
|
+
tooltips?: boolean | ((cell: any) => string);
|
|
785
|
+
tooltipGenerationMode?: 'load' | 'hover';
|
|
786
|
+
history?: boolean;
|
|
787
|
+
keybindings?: Record<string, string>;
|
|
788
|
+
reactiveData?: boolean;
|
|
789
|
+
autoResize?: boolean;
|
|
790
|
+
tableBuilding?: () => void;
|
|
791
|
+
tableBuilt?: () => void;
|
|
792
|
+
renderStarted?: () => void;
|
|
793
|
+
renderComplete?: () => void;
|
|
794
|
+
htmlImporting?: () => void;
|
|
795
|
+
htmlImported?: () => void;
|
|
796
|
+
dataLoading?: (data: any[]) => void;
|
|
797
|
+
dataLoaded?: (data: any[]) => void;
|
|
798
|
+
dataChanged?: (data: any[]) => void;
|
|
799
|
+
pageLoaded?: (pageno: number) => void;
|
|
800
|
+
dataSorting?: (sorters: any[]) => void;
|
|
801
|
+
dataSorted?: (sorters: any[], rows: any[]) => void;
|
|
802
|
+
dataFiltering?: (filters: any[]) => void;
|
|
803
|
+
dataFiltered?: (filters: any[], rows: any[]) => void;
|
|
804
|
+
validationFailed?: (cell: any, value: any, validators: any[]) => void;
|
|
805
|
+
clipboardCopyStyled?: (clipboard: string) => string;
|
|
806
|
+
clipboardCopyConfig?: Record<string, any>;
|
|
807
|
+
clipboardPasteParser?: string | ((clipboard: string) => any[][]);
|
|
808
|
+
clipboardPasteAction?: 'insert' | 'update' | 'replace';
|
|
809
|
+
printAsHtml?: boolean;
|
|
810
|
+
printFormatter?: (tableHtml: string, table: any) => string;
|
|
811
|
+
printHeader?: string;
|
|
812
|
+
printFooter?: string;
|
|
813
|
+
tabEndNewRow?: boolean | ((row: any) => any);
|
|
814
|
+
}
|
|
815
|
+
interface TabulatorEventHandlers {
|
|
816
|
+
onCellEdited?: (cell: any) => void;
|
|
817
|
+
onRowClick?: (e: Event, row: any) => void;
|
|
818
|
+
onRowSelected?: (row: any) => void;
|
|
819
|
+
onRowDeselected?: (row: any) => void;
|
|
820
|
+
onDataChanged?: (data: any[]) => void;
|
|
821
|
+
onTableReady?: (tabulator: any) => void;
|
|
822
|
+
}
|
|
823
|
+
|
|
824
|
+
declare class TabulatorTable implements OnChanges, AfterViewInit, OnDestroy {
|
|
825
|
+
readonly data: _angular_core.InputSignal<any[]>;
|
|
826
|
+
readonly columns: _angular_core.InputSignal<any[]>;
|
|
827
|
+
readonly height: _angular_core.InputSignal<string | number | false>;
|
|
828
|
+
readonly layout: _angular_core.InputSignal<"fitData" | "fitColumns" | "fitDataFill" | "fitDataStretch">;
|
|
829
|
+
readonly dataTree: _angular_core.InputSignal<boolean>;
|
|
830
|
+
readonly dataTreeChildField: _angular_core.InputSignal<string>;
|
|
831
|
+
readonly dataTreeStartExpanded: _angular_core.InputSignal<boolean>;
|
|
832
|
+
readonly dataTreeSelectPropagate: _angular_core.InputSignal<boolean>;
|
|
833
|
+
readonly selectable: _angular_core.InputSignal<boolean>;
|
|
834
|
+
readonly reactiveData: _angular_core.InputSignal<boolean>;
|
|
835
|
+
readonly placeholder: _angular_core.InputSignal<string>;
|
|
836
|
+
readonly autoResize: _angular_core.InputSignal<boolean>;
|
|
837
|
+
readonly theme: _angular_core.InputSignal<TabulatorTheme>;
|
|
838
|
+
readonly customClass: _angular_core.InputSignal<string>;
|
|
839
|
+
readonly rowFormatter: _angular_core.InputSignal<((row: any) => void | null) | undefined>;
|
|
840
|
+
readonly options: _angular_core.InputSignal<Record<string, any>>;
|
|
841
|
+
readonly cellEdited: _angular_core.OutputEmitterRef<any>;
|
|
842
|
+
readonly rowClick: _angular_core.OutputEmitterRef<any>;
|
|
843
|
+
readonly rowSelected: _angular_core.OutputEmitterRef<any>;
|
|
844
|
+
readonly tableReady: _angular_core.OutputEmitterRef<Tabulator>;
|
|
845
|
+
private _tabulator;
|
|
846
|
+
containerId: string;
|
|
847
|
+
ngAfterViewInit(): void;
|
|
848
|
+
ngOnChanges(changes: SimpleChanges): void;
|
|
849
|
+
ngOnDestroy(): void;
|
|
850
|
+
private initializeTable;
|
|
851
|
+
private applyTheme;
|
|
852
|
+
private applyCustomClass;
|
|
853
|
+
private registerEvents;
|
|
854
|
+
private updateData;
|
|
855
|
+
private updateColumns;
|
|
856
|
+
private destroyTable;
|
|
857
|
+
private updateRowFormatter;
|
|
858
|
+
getInstance(): Tabulator;
|
|
859
|
+
redraw(): void;
|
|
860
|
+
private getRowFormatter;
|
|
861
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<TabulatorTable, never>;
|
|
862
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<TabulatorTable, "acp-tabulator-table", never, { "data": { "alias": "data"; "required": false; "isSignal": true; }; "columns": { "alias": "columns"; "required": false; "isSignal": true; }; "height": { "alias": "height"; "required": false; "isSignal": true; }; "layout": { "alias": "layout"; "required": false; "isSignal": true; }; "dataTree": { "alias": "dataTree"; "required": false; "isSignal": true; }; "dataTreeChildField": { "alias": "dataTreeChildField"; "required": false; "isSignal": true; }; "dataTreeStartExpanded": { "alias": "dataTreeStartExpanded"; "required": false; "isSignal": true; }; "dataTreeSelectPropagate": { "alias": "dataTreeSelectPropagate"; "required": false; "isSignal": true; }; "selectable": { "alias": "selectable"; "required": false; "isSignal": true; }; "reactiveData": { "alias": "reactiveData"; "required": false; "isSignal": true; }; "placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; "autoResize": { "alias": "autoResize"; "required": false; "isSignal": true; }; "theme": { "alias": "theme"; "required": false; "isSignal": true; }; "customClass": { "alias": "customClass"; "required": false; "isSignal": true; }; "rowFormatter": { "alias": "rowFormatter"; "required": false; "isSignal": true; }; "options": { "alias": "options"; "required": false; "isSignal": true; }; }, { "cellEdited": "cellEdited"; "rowClick": "rowClick"; "rowSelected": "rowSelected"; "tableReady": "tableReady"; }, never, never, true, never>;
|
|
863
|
+
}
|
|
864
|
+
|
|
865
|
+
declare class ThemeToggle {
|
|
856
866
|
private themeService;
|
|
857
867
|
darkMode$: Observable<boolean>;
|
|
858
868
|
constructor();
|
|
859
869
|
toggleDarkMode(): void;
|
|
860
|
-
static ɵfac: _angular_core.ɵɵFactoryDeclaration<
|
|
861
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<
|
|
870
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<ThemeToggle, never>;
|
|
871
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<ThemeToggle, "acp-theme-toggle", never, {}, {}, never, never, true, never>;
|
|
862
872
|
}
|
|
863
873
|
|
|
864
874
|
declare class ReusableAutocompleteComponent implements OnInit, OnDestroy {
|
|
@@ -940,7 +950,7 @@ declare class ReusableAutocompleteComponent implements OnInit, OnDestroy {
|
|
|
940
950
|
static ɵcmp: _angular_core.ɵɵComponentDeclaration<ReusableAutocompleteComponent, "acp-autocomplete-wrapper", never, { "dataSource": { "alias": "dataSource"; "required": false; "isSignal": true; }; "config": { "alias": "config"; "required": false; }; "itemTemplate": { "alias": "itemTemplate"; "required": false; "isSignal": true; }; "searchFunction": { "alias": "searchFunction"; "required": false; "isSignal": true; }; "notFoundTemplate": { "alias": "notFoundTemplate"; "required": false; "isSignal": true; }; "overlayWidth": { "alias": "overlayWidth"; "required": false; "isSignal": true; }; "overlayMaxHeight": { "alias": "overlayMaxHeight"; "required": false; "isSignal": true; }; }, { "itemSelected": "itemSelected"; "searchChanged": "searchChanged"; "searchRequested": "searchRequested"; "pageChanged": "pageChanged"; "filterChanged": "filterChanged"; "advancedSearchClicked": "advancedSearchClicked"; "allResultsClicked": "allResultsClicked"; "createClicked": "createClicked"; }, never, never, true, never>;
|
|
941
951
|
}
|
|
942
952
|
|
|
943
|
-
declare class
|
|
953
|
+
declare class ToUpperCase implements ControlValueAccessor {
|
|
944
954
|
private el;
|
|
945
955
|
private renderer;
|
|
946
956
|
onInput(): void;
|
|
@@ -949,12 +959,10 @@ declare class ToUpperCaseDirective implements ControlValueAccessor {
|
|
|
949
959
|
writeValue(value: string): void;
|
|
950
960
|
registerOnChange(fn: (value: string) => void): void;
|
|
951
961
|
registerOnTouched(fn: () => void): void;
|
|
952
|
-
static ɵfac: _angular_core.ɵɵFactoryDeclaration<
|
|
953
|
-
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<
|
|
962
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<ToUpperCase, never>;
|
|
963
|
+
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<ToUpperCase, "[acpToUpperCase]", never, {}, {}, never, never, true, never>;
|
|
954
964
|
}
|
|
955
965
|
|
|
956
|
-
declare const DYNAMIC_INPUT: InjectionToken<unknown>;
|
|
957
|
-
|
|
958
966
|
declare class GetTotalPipe implements PipeTransform {
|
|
959
967
|
transform(colName: string, dataSource: any[]): any;
|
|
960
968
|
/**
|
|
@@ -985,5 +993,5 @@ declare class StatusDisplayPipe implements PipeTransform {
|
|
|
985
993
|
static ɵpipe: _angular_core.ɵɵPipeDeclaration<StatusDisplayPipe, "statusDisplay", true>;
|
|
986
994
|
}
|
|
987
995
|
|
|
988
|
-
export { AUTOCOMPLETE_WRAPPER_CUSTOMER_CONFIG, AUTOCOMPLETE_WRAPPER_DEFAULT_CONFIG, AUTOCOMPLETE_WRAPPER_LOCAL_CONFIG, AUTOCOMPLETE_WRAPPER_PAGINATED_CONFIG, AUTOCOMPLETE_WRAPPER_PRODUCT_CONFIG, AUTOCOMPLETE_WRAPPER_SIMPLE_CONFIG, AdvancedDialogService, AutocompleteWrapperService,
|
|
996
|
+
export { AUTOCOMPLETE_WRAPPER_CUSTOMER_CONFIG, AUTOCOMPLETE_WRAPPER_DEFAULT_CONFIG, AUTOCOMPLETE_WRAPPER_LOCAL_CONFIG, AUTOCOMPLETE_WRAPPER_PAGINATED_CONFIG, AUTOCOMPLETE_WRAPPER_PRODUCT_CONFIG, AUTOCOMPLETE_WRAPPER_SIMPLE_CONFIG, AdvancedDialogService, AutocompleteWrapperService, Button, ColumnDefinition, DialogWrapper, DynamicCard, DynamicTable, FieldDefinition, GetTotalPipe, InputChip, OverlayService, Pagination, ReusableAutocompleteComponent, Spinner, StatusDisplayPipe, SvgIcon, TableCellIndex, TabulatorTable, ThemeSwitcher, ThemeToggle, ToUpperCase, UserIcon, createAutocompleteWrapperConfig };
|
|
989
997
|
export type { AutocompleteWrapperActions, AutocompleteWrapperConfig, AutocompleteWrapperEventHandler, AutocompleteWrapperEvents, AutocompleteWrapperFilters, AutocompleteWrapperItem, AutocompleteWrapperItemProperty, AutocompleteWrapperPaginationInfo, AutocompleteWrapperSearchField, AutocompleteWrapperSearchFunction, AutocompleteWrapperSearchMode, AutocompleteWrapperSearchResult, AutocompleteWrapperState, AutocompleteWrapperStockOption, ButtonType, ButtonVariant, ColumnType, ControlType, DateRangeConfig, DialogSize, DialogWrapperConfig, FieldType, MatCustomDialogConfig, MaterialButtonStyle, OptionSearchConfig, ReusableAutocompleteWrapperComponent, TableContext, TableRow, TabulatorColumn, TabulatorConfig, TabulatorEventHandlers, TabulatorTheme };
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@acontplus/ng-components",
|
|
3
|
-
"version": "1.
|
|
4
|
-
"description": "Angular Material UI component library
|
|
3
|
+
"version": "1.3.0",
|
|
4
|
+
"description": "Comprehensive Angular Material UI component library featuring dynamic Tabulator tables, theme toggle with dark mode, dialog wrappers, autocomplete components, cards, buttons, icons, input chips, spinners, directives, pipes, and SCSS styling utilities.",
|
|
5
5
|
"peerDependencies": {
|
|
6
6
|
"@angular/cdk": "^20.2.5",
|
|
7
7
|
"@angular/common": "^20.3.2",
|
|
@@ -33,28 +33,31 @@
|
|
|
33
33
|
"angular-material",
|
|
34
34
|
"material-design",
|
|
35
35
|
"ui-components",
|
|
36
|
-
"
|
|
37
|
-
"
|
|
36
|
+
"tabulator-tables",
|
|
37
|
+
"dynamic-tables",
|
|
38
|
+
"data-tables",
|
|
38
39
|
"cards",
|
|
39
|
-
"dialog",
|
|
40
|
-
"
|
|
41
|
-
"theme",
|
|
42
|
-
"theming",
|
|
40
|
+
"dialog-wrapper",
|
|
41
|
+
"theme-toggle",
|
|
43
42
|
"dark-mode",
|
|
44
|
-
"
|
|
45
|
-
"
|
|
43
|
+
"theme-switcher",
|
|
44
|
+
"overlay-service",
|
|
45
|
+
"autocomplete-wrapper",
|
|
46
46
|
"spinner",
|
|
47
|
-
"
|
|
48
|
-
"
|
|
49
|
-
"
|
|
50
|
-
"
|
|
51
|
-
"
|
|
52
|
-
"
|
|
53
|
-
"
|
|
54
|
-
"
|
|
47
|
+
"buttons",
|
|
48
|
+
"icons",
|
|
49
|
+
"input-chip",
|
|
50
|
+
"to-uppercase-directive",
|
|
51
|
+
"status-display-pipe",
|
|
52
|
+
"get-total-pipe",
|
|
53
|
+
"pagination",
|
|
54
|
+
"scss-mixins",
|
|
55
|
+
"scss-variables",
|
|
56
|
+
"custom-dialog",
|
|
57
|
+
"mat-table",
|
|
55
58
|
"typescript",
|
|
56
|
-
"
|
|
57
|
-
"
|
|
59
|
+
"enterprise",
|
|
60
|
+
"frontend"
|
|
58
61
|
],
|
|
59
62
|
"author": "Ivan Paz <ifer343@gmail.com>",
|
|
60
63
|
"license": "MIT",
|