@nova-design-system/nova-angular-19 3.23.0 → 3.24.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/dist/nova-components/fesm2022/nova-components.mjs +201 -56
- package/dist/nova-components/fesm2022/nova-components.mjs.map +1 -1
- package/dist/nova-components/lib/components/nv-datatable.component.d.ts +15 -7
- package/dist/nova-components/lib/nova-components.module.d.ts +2 -2
- package/dist/nova-components/lib/stencil-generated/component-value-accessors.d.ts +7 -0
- package/dist/nova-components/lib/stencil-generated/components.d.ts +44 -1
- package/dist/nova-components/lib/stencil-generated/index.d.ts +1 -1
- package/package.json +1 -1
|
@@ -528,6 +528,93 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.5", ngImpor
|
|
|
528
528
|
standalone: false
|
|
529
529
|
}]
|
|
530
530
|
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }] });
|
|
531
|
+
let NvDrawer = class NvDrawer {
|
|
532
|
+
constructor(c, r, z) {
|
|
533
|
+
this.z = z;
|
|
534
|
+
this.openChanged = new EventEmitter();
|
|
535
|
+
c.detach();
|
|
536
|
+
this.el = r.nativeElement;
|
|
537
|
+
}
|
|
538
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.5", ngImport: i0, type: NvDrawer, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
539
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.1.5", type: NvDrawer, isStandalone: false, selector: "nv-drawer", inputs: { autofocus: "autofocus", clickOutside: "clickOutside", controlled: "controlled", open: "open", side: "side", size: "size", swipeToOpen: "swipeToOpen", undismissable: "undismissable", width: "width" }, outputs: { openChanged: "openChanged" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
540
|
+
};
|
|
541
|
+
NvDrawer = __decorate([
|
|
542
|
+
ProxyCmp({
|
|
543
|
+
inputs: ['autofocus', 'clickOutside', 'controlled', 'open', 'side', 'size', 'swipeToOpen', 'undismissable', 'width'],
|
|
544
|
+
methods: ['show', 'close']
|
|
545
|
+
})
|
|
546
|
+
], NvDrawer);
|
|
547
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.5", ngImport: i0, type: NvDrawer, decorators: [{
|
|
548
|
+
type: Component,
|
|
549
|
+
args: [{
|
|
550
|
+
selector: 'nv-drawer',
|
|
551
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
552
|
+
template: '<ng-content></ng-content>',
|
|
553
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
554
|
+
inputs: ['autofocus', 'clickOutside', 'controlled', 'open', 'side', 'size', 'swipeToOpen', 'undismissable', 'width'],
|
|
555
|
+
outputs: ['openChanged'],
|
|
556
|
+
standalone: false
|
|
557
|
+
}]
|
|
558
|
+
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }], propDecorators: { openChanged: [{
|
|
559
|
+
type: Output
|
|
560
|
+
}] } });
|
|
561
|
+
let NvDrawerfooter = class NvDrawerfooter {
|
|
562
|
+
constructor(c, r, z) {
|
|
563
|
+
this.z = z;
|
|
564
|
+
this.drawerCanceled = new EventEmitter();
|
|
565
|
+
this.drawerPrimaryClicked = new EventEmitter();
|
|
566
|
+
c.detach();
|
|
567
|
+
this.el = r.nativeElement;
|
|
568
|
+
}
|
|
569
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.5", ngImport: i0, type: NvDrawerfooter, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
570
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.1.5", type: NvDrawerfooter, isStandalone: false, selector: "nv-drawerfooter", inputs: { cancelLabel: "cancelLabel", danger: "danger", disabled: "disabled", form: "form", leadingIcon: "leadingIcon", primaryButtonType: "primaryButtonType", primaryLabel: "primaryLabel", trailingIcon: "trailingIcon", undismissable: "undismissable" }, outputs: { drawerCanceled: "drawerCanceled", drawerPrimaryClicked: "drawerPrimaryClicked" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
571
|
+
};
|
|
572
|
+
NvDrawerfooter = __decorate([
|
|
573
|
+
ProxyCmp({
|
|
574
|
+
inputs: ['cancelLabel', 'danger', 'disabled', 'form', 'leadingIcon', 'primaryButtonType', 'primaryLabel', 'trailingIcon', 'undismissable']
|
|
575
|
+
})
|
|
576
|
+
], NvDrawerfooter);
|
|
577
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.5", ngImport: i0, type: NvDrawerfooter, decorators: [{
|
|
578
|
+
type: Component,
|
|
579
|
+
args: [{
|
|
580
|
+
selector: 'nv-drawerfooter',
|
|
581
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
582
|
+
template: '<ng-content></ng-content>',
|
|
583
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
584
|
+
inputs: ['cancelLabel', 'danger', 'disabled', 'form', 'leadingIcon', 'primaryButtonType', 'primaryLabel', 'trailingIcon', 'undismissable'],
|
|
585
|
+
outputs: ['drawerCanceled', 'drawerPrimaryClicked'],
|
|
586
|
+
standalone: false
|
|
587
|
+
}]
|
|
588
|
+
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }], propDecorators: { drawerCanceled: [{
|
|
589
|
+
type: Output
|
|
590
|
+
}], drawerPrimaryClicked: [{
|
|
591
|
+
type: Output
|
|
592
|
+
}] } });
|
|
593
|
+
let NvDrawerheader = class NvDrawerheader {
|
|
594
|
+
constructor(c, r, z) {
|
|
595
|
+
this.z = z;
|
|
596
|
+
c.detach();
|
|
597
|
+
this.el = r.nativeElement;
|
|
598
|
+
}
|
|
599
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.5", ngImport: i0, type: NvDrawerheader, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
600
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.1.5", type: NvDrawerheader, isStandalone: false, selector: "nv-drawerheader", inputs: { heading: "heading", subheading: "subheading" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
601
|
+
};
|
|
602
|
+
NvDrawerheader = __decorate([
|
|
603
|
+
ProxyCmp({
|
|
604
|
+
inputs: ['heading', 'subheading']
|
|
605
|
+
})
|
|
606
|
+
], NvDrawerheader);
|
|
607
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.5", ngImport: i0, type: NvDrawerheader, decorators: [{
|
|
608
|
+
type: Component,
|
|
609
|
+
args: [{
|
|
610
|
+
selector: 'nv-drawerheader',
|
|
611
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
612
|
+
template: '<ng-content></ng-content>',
|
|
613
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
614
|
+
inputs: ['heading', 'subheading'],
|
|
615
|
+
standalone: false
|
|
616
|
+
}]
|
|
617
|
+
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }] });
|
|
531
618
|
let NvFieldcheckbox = class NvFieldcheckbox {
|
|
532
619
|
constructor(c, r, z) {
|
|
533
620
|
this.z = z;
|
|
@@ -1711,6 +1798,9 @@ const DIRECTIVES = [
|
|
|
1711
1798
|
NvDialog,
|
|
1712
1799
|
NvDialogfooter,
|
|
1713
1800
|
NvDialogheader,
|
|
1801
|
+
NvDrawer,
|
|
1802
|
+
NvDrawerfooter,
|
|
1803
|
+
NvDrawerheader,
|
|
1714
1804
|
NvFieldcheckbox,
|
|
1715
1805
|
NvFielddate,
|
|
1716
1806
|
NvFielddaterange,
|
|
@@ -2563,6 +2653,12 @@ class NvDatatable {
|
|
|
2563
2653
|
this.columns = input([]);
|
|
2564
2654
|
/** Row data */
|
|
2565
2655
|
this.rows = input([]);
|
|
2656
|
+
/**
|
|
2657
|
+
* Data handling mode for sorting and filtering operations.
|
|
2658
|
+
* - 'client': All operations handled in browser (default)
|
|
2659
|
+
* - 'server': Operations trigger callbacks for server-side handling
|
|
2660
|
+
*/
|
|
2661
|
+
this.mode = input('client');
|
|
2566
2662
|
/** Optional pagination configuration */
|
|
2567
2663
|
this.pagination = input(undefined);
|
|
2568
2664
|
/** Optional sorting configuration */
|
|
@@ -2591,7 +2687,7 @@ class NvDatatable {
|
|
|
2591
2687
|
/** Intersection observer for infinite scroll */
|
|
2592
2688
|
this.observer = null;
|
|
2593
2689
|
/** Helper to check if using infinite scroll */
|
|
2594
|
-
this.isInfiniteScroll = computed(() => this.pagination()?.
|
|
2690
|
+
this.isInfiniteScroll = computed(() => this.pagination()?.infinite === true);
|
|
2595
2691
|
/** Computed table columns with proper typing and filtering. */
|
|
2596
2692
|
this.tableColumns = computed(() => {
|
|
2597
2693
|
const templateMap = this.cellTemplateMap();
|
|
@@ -2654,21 +2750,24 @@ class NvDatatable {
|
|
|
2654
2750
|
this.tableInstance = createAngularTable(() => {
|
|
2655
2751
|
const paginationConfig = this.pagination();
|
|
2656
2752
|
const sortingConfig = this.sorting();
|
|
2753
|
+
const componentMode = this.mode();
|
|
2754
|
+
const isServerMode = componentMode === 'server';
|
|
2755
|
+
const isInfinite = paginationConfig?.infinite === true;
|
|
2657
2756
|
// Determine base table configuration with sorting
|
|
2658
2757
|
const getBaseTableConfig = () => {
|
|
2659
2758
|
const baseConfig = {
|
|
2660
2759
|
data: this.rows(),
|
|
2661
2760
|
columns: this.tableColumns(),
|
|
2662
2761
|
getCoreRowModel: getCoreRowModel(),
|
|
2663
|
-
// Sorting configuration
|
|
2762
|
+
// Sorting configuration - uses top-level mode
|
|
2664
2763
|
...(sortingConfig && {
|
|
2665
2764
|
state: {
|
|
2666
|
-
sorting:
|
|
2765
|
+
sorting: isServerMode && sortingConfig.sortState
|
|
2667
2766
|
? sortingConfig.sortState
|
|
2668
2767
|
: this.sortingState(),
|
|
2669
2768
|
},
|
|
2670
2769
|
onSortingChange: (updaterOrValue) => {
|
|
2671
|
-
const currentSort =
|
|
2770
|
+
const currentSort = isServerMode && sortingConfig.sortState
|
|
2672
2771
|
? sortingConfig.sortState
|
|
2673
2772
|
: this.sortingState();
|
|
2674
2773
|
const newSort = typeof updaterOrValue === 'function'
|
|
@@ -2677,12 +2776,11 @@ class NvDatatable {
|
|
|
2677
2776
|
// Always update internal state for reactivity
|
|
2678
2777
|
this.sortingState.set(newSort);
|
|
2679
2778
|
// For server-side sorting, also call the callback
|
|
2680
|
-
if (
|
|
2681
|
-
sortingConfig.onSortingChange) {
|
|
2779
|
+
if (isServerMode && sortingConfig.onSortingChange) {
|
|
2682
2780
|
sortingConfig.onSortingChange(newSort);
|
|
2683
2781
|
}
|
|
2684
2782
|
},
|
|
2685
|
-
manualSorting:
|
|
2783
|
+
manualSorting: isServerMode,
|
|
2686
2784
|
enableSorting: true,
|
|
2687
2785
|
enableMultiSort: sortingConfig.enableMultiSort ?? false,
|
|
2688
2786
|
enableSortingRemoval: sortingConfig.enableSortingRemoval ?? true,
|
|
@@ -2692,17 +2790,22 @@ class NvDatatable {
|
|
|
2692
2790
|
isMultiSortEvent: sortingConfig.enableMultiSort
|
|
2693
2791
|
? () => true
|
|
2694
2792
|
: undefined,
|
|
2695
|
-
getSortedRowModel:
|
|
2793
|
+
getSortedRowModel: !isServerMode ? getSortedRowModel() : undefined,
|
|
2696
2794
|
}),
|
|
2697
2795
|
};
|
|
2698
2796
|
return baseConfig;
|
|
2699
2797
|
};
|
|
2700
|
-
|
|
2701
|
-
|
|
2798
|
+
// Infinite scroll mode (requires server mode)
|
|
2799
|
+
if (isInfinite) {
|
|
2800
|
+
// No pagination row model for infinite scroll - simple config
|
|
2702
2801
|
return getBaseTableConfig();
|
|
2703
2802
|
}
|
|
2704
|
-
|
|
2705
|
-
|
|
2803
|
+
// No pagination configured
|
|
2804
|
+
if (!paginationConfig) {
|
|
2805
|
+
return getBaseTableConfig();
|
|
2806
|
+
}
|
|
2807
|
+
// Client-side pagination
|
|
2808
|
+
if (!isServerMode) {
|
|
2706
2809
|
return {
|
|
2707
2810
|
...getBaseTableConfig(),
|
|
2708
2811
|
getPaginationRowModel: getPaginationRowModel(),
|
|
@@ -2714,37 +2817,35 @@ class NvDatatable {
|
|
|
2714
2817
|
},
|
|
2715
2818
|
};
|
|
2716
2819
|
}
|
|
2717
|
-
|
|
2718
|
-
|
|
2719
|
-
|
|
2720
|
-
|
|
2721
|
-
|
|
2722
|
-
|
|
2723
|
-
|
|
2724
|
-
|
|
2725
|
-
|
|
2726
|
-
|
|
2727
|
-
|
|
2728
|
-
|
|
2729
|
-
|
|
2730
|
-
|
|
2731
|
-
|
|
2732
|
-
|
|
2733
|
-
|
|
2734
|
-
|
|
2735
|
-
|
|
2736
|
-
|
|
2737
|
-
|
|
2738
|
-
|
|
2739
|
-
|
|
2740
|
-
|
|
2741
|
-
|
|
2742
|
-
|
|
2743
|
-
|
|
2744
|
-
|
|
2745
|
-
|
|
2746
|
-
};
|
|
2747
|
-
}
|
|
2820
|
+
// Server-side pagination - manual pagination with reactive state
|
|
2821
|
+
const baseConfig = getBaseTableConfig();
|
|
2822
|
+
const pageSize = this.paginationState().pageSize;
|
|
2823
|
+
return {
|
|
2824
|
+
...baseConfig,
|
|
2825
|
+
manualPagination: true,
|
|
2826
|
+
pageCount: paginationConfig.totalPageCount !== undefined
|
|
2827
|
+
? paginationConfig.totalPageCount
|
|
2828
|
+
: paginationConfig.totalRowCount !== undefined
|
|
2829
|
+
? Math.ceil(paginationConfig.totalRowCount / pageSize)
|
|
2830
|
+
: -1,
|
|
2831
|
+
state: {
|
|
2832
|
+
pagination: this.paginationState(),
|
|
2833
|
+
...(baseConfig.state && { sorting: baseConfig.state.sorting }),
|
|
2834
|
+
},
|
|
2835
|
+
onPaginationChange: (updaterOrValue) => {
|
|
2836
|
+
const newState = typeof updaterOrValue === 'function'
|
|
2837
|
+
? updaterOrValue(this.paginationState())
|
|
2838
|
+
: updaterOrValue;
|
|
2839
|
+
this.paginationState.set(newState);
|
|
2840
|
+
// Call user's callback for server-side pagination
|
|
2841
|
+
if (paginationConfig.onPaginationChange) {
|
|
2842
|
+
paginationConfig.onPaginationChange({
|
|
2843
|
+
pageIndex: newState.pageIndex,
|
|
2844
|
+
pageSize: newState.pageSize,
|
|
2845
|
+
});
|
|
2846
|
+
}
|
|
2847
|
+
},
|
|
2848
|
+
};
|
|
2748
2849
|
});
|
|
2749
2850
|
/** Build pagination API for template */
|
|
2750
2851
|
this.paginationAPI = computed(() => {
|
|
@@ -2752,10 +2853,13 @@ class NvDatatable {
|
|
|
2752
2853
|
if (!paginationConfig) {
|
|
2753
2854
|
return null;
|
|
2754
2855
|
}
|
|
2856
|
+
const componentMode = this.mode();
|
|
2857
|
+
const isServerMode = componentMode === 'server';
|
|
2858
|
+
const isInfinite = paginationConfig.infinite === true;
|
|
2755
2859
|
const table = this.table();
|
|
2756
2860
|
const tablePaginationState = table.getState().pagination;
|
|
2757
2861
|
const pageCount = table.getPageCount();
|
|
2758
|
-
const rowCount =
|
|
2862
|
+
const rowCount = isServerMode
|
|
2759
2863
|
? paginationConfig.totalRowCount || this.rows().length
|
|
2760
2864
|
: this.rows().length;
|
|
2761
2865
|
return {
|
|
@@ -2771,25 +2875,31 @@ class NvDatatable {
|
|
|
2771
2875
|
setPageSize: (size) => table.setPageSize(size),
|
|
2772
2876
|
canPreviousPage: table.getCanPreviousPage(),
|
|
2773
2877
|
canNextPage: table.getCanNextPage(),
|
|
2774
|
-
isLoading: paginationConfig.
|
|
2775
|
-
|
|
2776
|
-
: undefined,
|
|
2777
|
-
hasMore: paginationConfig.mode === 'infinite'
|
|
2778
|
-
? paginationConfig.hasMore
|
|
2779
|
-
: undefined,
|
|
2878
|
+
isLoading: isInfinite ? paginationConfig.isLoading : undefined,
|
|
2879
|
+
hasMore: isInfinite ? paginationConfig.hasMore : undefined,
|
|
2780
2880
|
};
|
|
2781
2881
|
});
|
|
2882
|
+
// Validate infinite scroll requires server mode
|
|
2883
|
+
effect(() => {
|
|
2884
|
+
const paginationConfig = this.pagination();
|
|
2885
|
+
const componentMode = this.mode();
|
|
2886
|
+
if (paginationConfig?.infinite === true && componentMode !== 'server') {
|
|
2887
|
+
console.warn('[NvDatatable] pagination.infinite=true requires mode="server". ' +
|
|
2888
|
+
'Infinite scroll relies on server-side data loading.');
|
|
2889
|
+
}
|
|
2890
|
+
});
|
|
2782
2891
|
// Set up intersection observer for infinite scroll
|
|
2783
2892
|
effect(() => {
|
|
2784
2893
|
const paginationConfig = this.pagination();
|
|
2785
2894
|
const rows = this.rows(); // Track rows changes
|
|
2895
|
+
const isInfinite = paginationConfig?.infinite === true;
|
|
2786
2896
|
// Clean up existing observer
|
|
2787
2897
|
if (this.observer) {
|
|
2788
2898
|
this.observer.disconnect();
|
|
2789
2899
|
this.observer = null;
|
|
2790
2900
|
}
|
|
2791
2901
|
// Only set up observer for infinite scroll mode
|
|
2792
|
-
if (
|
|
2902
|
+
if (!isInfinite || rows.length === 0) {
|
|
2793
2903
|
return;
|
|
2794
2904
|
}
|
|
2795
2905
|
// Use setTimeout to ensure DOM is updated
|
|
@@ -2804,7 +2914,6 @@ class NvDatatable {
|
|
|
2804
2914
|
this.observer = new IntersectionObserver((entries) => {
|
|
2805
2915
|
const entry = entries[0];
|
|
2806
2916
|
if (entry.isIntersecting &&
|
|
2807
|
-
paginationConfig.mode === 'infinite' &&
|
|
2808
2917
|
paginationConfig.hasMore &&
|
|
2809
2918
|
!paginationConfig.isLoading &&
|
|
2810
2919
|
paginationConfig.onLoadMore) {
|
|
@@ -2837,7 +2946,7 @@ class NvDatatable {
|
|
|
2837
2946
|
}
|
|
2838
2947
|
}
|
|
2839
2948
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.5", ngImport: i0, type: NvDatatable, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
2840
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.1.5", type: NvDatatable, isStandalone: true, selector: "nv-datatable", inputs: { columns: { classPropertyName: "columns", publicName: "columns", isSignal: true, isRequired: false, transformFunction: null }, rows: { classPropertyName: "rows", publicName: "rows", isSignal: true, isRequired: false, transformFunction: null }, pagination: { classPropertyName: "pagination", publicName: "pagination", isSignal: true, isRequired: false, transformFunction: null }, sorting: { classPropertyName: "sorting", publicName: "sorting", isSignal: true, isRequired: false, transformFunction: null }, stickyHeader: { classPropertyName: "stickyHeader", publicName: "stickyHeader", isSignal: true, isRequired: false, transformFunction: null } }, queries: [{ propertyName: "paginationTemplate", first: true, predicate: ["paginationTemplate"], descendants: true, read: TemplateRef }, { propertyName: "cellTemplates", predicate: NvDatatableCellDirective }], viewQueries: [{ propertyName: "tableRows", first: true, predicate: ["tableRow"], descendants: true, isSignal: true }], ngImport: i0, template: `
|
|
2949
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.1.5", type: NvDatatable, isStandalone: true, selector: "nv-datatable", inputs: { columns: { classPropertyName: "columns", publicName: "columns", isSignal: true, isRequired: false, transformFunction: null }, rows: { classPropertyName: "rows", publicName: "rows", isSignal: true, isRequired: false, transformFunction: null }, mode: { classPropertyName: "mode", publicName: "mode", isSignal: true, isRequired: false, transformFunction: null }, pagination: { classPropertyName: "pagination", publicName: "pagination", isSignal: true, isRequired: false, transformFunction: null }, sorting: { classPropertyName: "sorting", publicName: "sorting", isSignal: true, isRequired: false, transformFunction: null }, stickyHeader: { classPropertyName: "stickyHeader", publicName: "stickyHeader", isSignal: true, isRequired: false, transformFunction: null } }, queries: [{ propertyName: "paginationTemplate", first: true, predicate: ["paginationTemplate"], descendants: true, read: TemplateRef }, { propertyName: "cellTemplates", predicate: NvDatatableCellDirective }], viewQueries: [{ propertyName: "tableRows", first: true, predicate: ["tableRow"], descendants: true, isSignal: true }], ngImport: i0, template: `
|
|
2841
2950
|
<nv-table>
|
|
2842
2951
|
<table>
|
|
2843
2952
|
<thead [attr.data-sticky-top]="stickyHeader() ? 'true' : null">
|
|
@@ -3251,6 +3360,41 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.5", ngImpor
|
|
|
3251
3360
|
type: HostListener,
|
|
3252
3361
|
args: ['openChanged', ['$event']]
|
|
3253
3362
|
}] } });
|
|
3363
|
+
class NvDrawerValueAccessor extends ValueAccessor {
|
|
3364
|
+
constructor(el) {
|
|
3365
|
+
super(el);
|
|
3366
|
+
}
|
|
3367
|
+
handleOpenChanged(event) {
|
|
3368
|
+
this.handleChangeEvent(event.target.open);
|
|
3369
|
+
}
|
|
3370
|
+
writeValue(value) {
|
|
3371
|
+
this.el.nativeElement.open = this.lastValue = value;
|
|
3372
|
+
}
|
|
3373
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.5", ngImport: i0, type: NvDrawerValueAccessor, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
3374
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.1.5", type: NvDrawerValueAccessor, isStandalone: true, selector: "nv-drawer", host: { listeners: { "openChanged": "handleOpenChanged($event)" } }, providers: [
|
|
3375
|
+
{
|
|
3376
|
+
provide: NG_VALUE_ACCESSOR,
|
|
3377
|
+
useExisting: NvDrawerValueAccessor,
|
|
3378
|
+
multi: true,
|
|
3379
|
+
},
|
|
3380
|
+
], usesInheritance: true, ngImport: i0 }); }
|
|
3381
|
+
}
|
|
3382
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.5", ngImport: i0, type: NvDrawerValueAccessor, decorators: [{
|
|
3383
|
+
type: Directive,
|
|
3384
|
+
args: [{
|
|
3385
|
+
selector: 'nv-drawer',
|
|
3386
|
+
providers: [
|
|
3387
|
+
{
|
|
3388
|
+
provide: NG_VALUE_ACCESSOR,
|
|
3389
|
+
useExisting: NvDrawerValueAccessor,
|
|
3390
|
+
multi: true,
|
|
3391
|
+
},
|
|
3392
|
+
],
|
|
3393
|
+
}]
|
|
3394
|
+
}], ctorParameters: () => [{ type: i0.ElementRef }], propDecorators: { handleOpenChanged: [{
|
|
3395
|
+
type: HostListener,
|
|
3396
|
+
args: ['openChanged', ['$event']]
|
|
3397
|
+
}] } });
|
|
3254
3398
|
class NvFieldcheckboxValueAccessor extends ValueAccessor {
|
|
3255
3399
|
constructor(el) {
|
|
3256
3400
|
super(el);
|
|
@@ -3922,6 +4066,7 @@ const VALUE_ACCESSORS = [
|
|
|
3922
4066
|
NvCalendarValueAccessor,
|
|
3923
4067
|
NvDatagridValueAccessor,
|
|
3924
4068
|
NvDialogValueAccessor,
|
|
4069
|
+
NvDrawerValueAccessor,
|
|
3925
4070
|
NvFieldcheckboxValueAccessor,
|
|
3926
4071
|
NvFielddateValueAccessor,
|
|
3927
4072
|
NvFielddaterangeValueAccessor,
|
|
@@ -3945,7 +4090,7 @@ const VALUE_ACCESSORS = [
|
|
|
3945
4090
|
|
|
3946
4091
|
class NovaComponentsModule {
|
|
3947
4092
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.5", ngImport: i0, type: NovaComponentsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
3948
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.1.5", ngImport: i0, type: NovaComponentsModule, declarations: [NvAccordion, NvAccordionItem, NvAlert, NvAvatar, NvBadge, NvBreadcrumb, NvBreadcrumbs, NvButton, NvButtongroup, NvCalendar, NvCol, NvDatagrid, NvDatagridcolumn, NvDialog, NvDialogfooter, NvDialogheader, NvFieldcheckbox, NvFielddate, NvFielddaterange, NvFielddropdown, NvFielddropdownitem, NvFielddropdownitemcheck, NvFieldmultiselect, NvFieldnumber, NvFieldpassword, NvFieldradio, NvFieldselect, NvFieldslider, NvFieldtext, NvFieldtextarea, NvFieldtime, NvIcon, NvIconbutton, NvLoader, NvMenu, NvMenuitem, NvNotification, NvNotificationBullet, NvNotificationcontainer, NvPopover, NvRow, NvSidebar, NvSidebarcontent, NvSidebardivider, NvSidebarfooter, NvSidebargroup, NvSidebarheader, NvSidebarlogo, NvSidebarnavitem, NvSidebarnavsubitem, NvSplit, NvStack, NvTable, NvTableheader, NvToggle, NvTogglebutton, NvTogglebuttongroup, NvTooltip], imports: [NvDatatable], exports: [NvAccordion, NvAccordionItem, NvAlert, NvAvatar, NvBadge, NvBreadcrumb, NvBreadcrumbs, NvButton, NvButtongroup, NvCalendar, NvCol, NvDatagrid, NvDatagridcolumn, NvDialog, NvDialogfooter, NvDialogheader, NvFieldcheckbox, NvFielddate, NvFielddaterange, NvFielddropdown, NvFielddropdownitem, NvFielddropdownitemcheck, NvFieldmultiselect, NvFieldnumber, NvFieldpassword, NvFieldradio, NvFieldselect, NvFieldslider, NvFieldtext, NvFieldtextarea, NvFieldtime, NvIcon, NvIconbutton, NvLoader, NvMenu, NvMenuitem, NvNotification, NvNotificationBullet, NvNotificationcontainer, NvPopover, NvRow, NvSidebar, NvSidebarcontent, NvSidebardivider, NvSidebarfooter, NvSidebargroup, NvSidebarheader, NvSidebarlogo, NvSidebarnavitem, NvSidebarnavsubitem, NvSplit, NvStack, NvTable, NvTableheader, NvToggle, NvTogglebutton, NvTogglebuttongroup, NvTooltip, NvDatatable] }); }
|
|
4093
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.1.5", ngImport: i0, type: NovaComponentsModule, declarations: [NvAccordion, NvAccordionItem, NvAlert, NvAvatar, NvBadge, NvBreadcrumb, NvBreadcrumbs, NvButton, NvButtongroup, NvCalendar, NvCol, NvDatagrid, NvDatagridcolumn, NvDialog, NvDialogfooter, NvDialogheader, NvDrawer, NvDrawerfooter, NvDrawerheader, NvFieldcheckbox, NvFielddate, NvFielddaterange, NvFielddropdown, NvFielddropdownitem, NvFielddropdownitemcheck, NvFieldmultiselect, NvFieldnumber, NvFieldpassword, NvFieldradio, NvFieldselect, NvFieldslider, NvFieldtext, NvFieldtextarea, NvFieldtime, NvIcon, NvIconbutton, NvLoader, NvMenu, NvMenuitem, NvNotification, NvNotificationBullet, NvNotificationcontainer, NvPopover, NvRow, NvSidebar, NvSidebarcontent, NvSidebardivider, NvSidebarfooter, NvSidebargroup, NvSidebarheader, NvSidebarlogo, NvSidebarnavitem, NvSidebarnavsubitem, NvSplit, NvStack, NvTable, NvTableheader, NvToggle, NvTogglebutton, NvTogglebuttongroup, NvTooltip], imports: [NvDatatable], exports: [NvAccordion, NvAccordionItem, NvAlert, NvAvatar, NvBadge, NvBreadcrumb, NvBreadcrumbs, NvButton, NvButtongroup, NvCalendar, NvCol, NvDatagrid, NvDatagridcolumn, NvDialog, NvDialogfooter, NvDialogheader, NvDrawer, NvDrawerfooter, NvDrawerheader, NvFieldcheckbox, NvFielddate, NvFielddaterange, NvFielddropdown, NvFielddropdownitem, NvFielddropdownitemcheck, NvFieldmultiselect, NvFieldnumber, NvFieldpassword, NvFieldradio, NvFieldselect, NvFieldslider, NvFieldtext, NvFieldtextarea, NvFieldtime, NvIcon, NvIconbutton, NvLoader, NvMenu, NvMenuitem, NvNotification, NvNotificationBullet, NvNotificationcontainer, NvPopover, NvRow, NvSidebar, NvSidebarcontent, NvSidebardivider, NvSidebarfooter, NvSidebargroup, NvSidebarheader, NvSidebarlogo, NvSidebarnavitem, NvSidebarnavsubitem, NvSplit, NvStack, NvTable, NvTableheader, NvToggle, NvTogglebutton, NvTogglebuttongroup, NvTooltip, NvDatatable] }); }
|
|
3949
4094
|
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.1.5", ngImport: i0, type: NovaComponentsModule, imports: [NvDatatable] }); }
|
|
3950
4095
|
}
|
|
3951
4096
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.5", ngImport: i0, type: NovaComponentsModule, decorators: [{
|
|
@@ -3958,7 +4103,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.5", ngImpor
|
|
|
3958
4103
|
}] });
|
|
3959
4104
|
class NovaComponentsValueAccessorModule {
|
|
3960
4105
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.5", ngImport: i0, type: NovaComponentsValueAccessorModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
3961
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.1.5", ngImport: i0, type: NovaComponentsValueAccessorModule, imports: [NvAccordionValueAccessor, NvAlertValueAccessor, NvCalendarValueAccessor, NvDatagridValueAccessor, NvDialogValueAccessor, NvFieldcheckboxValueAccessor, NvFielddateValueAccessor, NvFielddaterangeValueAccessor, NvFielddropdownValueAccessor, NvFieldmultiselectValueAccessor, NvFieldnumberValueAccessor, NvFieldpasswordValueAccessor, NvFieldradioValueAccessor, NvFieldselectValueAccessor, NvFieldsliderValueAccessor, NvFieldtextValueAccessor, NvFieldtextareaValueAccessor, NvFieldtimeValueAccessor, NvNotificationValueAccessor, NvPopoverValueAccessor, NvSidebarValueAccessor, NvSplitValueAccessor, NvToggleValueAccessor, NvTogglebuttongroupValueAccessor], exports: [NvAccordionValueAccessor, NvAlertValueAccessor, NvCalendarValueAccessor, NvDatagridValueAccessor, NvDialogValueAccessor, NvFieldcheckboxValueAccessor, NvFielddateValueAccessor, NvFielddaterangeValueAccessor, NvFielddropdownValueAccessor, NvFieldmultiselectValueAccessor, NvFieldnumberValueAccessor, NvFieldpasswordValueAccessor, NvFieldradioValueAccessor, NvFieldselectValueAccessor, NvFieldsliderValueAccessor, NvFieldtextValueAccessor, NvFieldtextareaValueAccessor, NvFieldtimeValueAccessor, NvNotificationValueAccessor, NvPopoverValueAccessor, NvSidebarValueAccessor, NvSplitValueAccessor, NvToggleValueAccessor, NvTogglebuttongroupValueAccessor] }); }
|
|
4106
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.1.5", ngImport: i0, type: NovaComponentsValueAccessorModule, imports: [NvAccordionValueAccessor, NvAlertValueAccessor, NvCalendarValueAccessor, NvDatagridValueAccessor, NvDialogValueAccessor, NvDrawerValueAccessor, NvFieldcheckboxValueAccessor, NvFielddateValueAccessor, NvFielddaterangeValueAccessor, NvFielddropdownValueAccessor, NvFieldmultiselectValueAccessor, NvFieldnumberValueAccessor, NvFieldpasswordValueAccessor, NvFieldradioValueAccessor, NvFieldselectValueAccessor, NvFieldsliderValueAccessor, NvFieldtextValueAccessor, NvFieldtextareaValueAccessor, NvFieldtimeValueAccessor, NvNotificationValueAccessor, NvPopoverValueAccessor, NvSidebarValueAccessor, NvSplitValueAccessor, NvToggleValueAccessor, NvTogglebuttongroupValueAccessor], exports: [NvAccordionValueAccessor, NvAlertValueAccessor, NvCalendarValueAccessor, NvDatagridValueAccessor, NvDialogValueAccessor, NvDrawerValueAccessor, NvFieldcheckboxValueAccessor, NvFielddateValueAccessor, NvFielddaterangeValueAccessor, NvFielddropdownValueAccessor, NvFieldmultiselectValueAccessor, NvFieldnumberValueAccessor, NvFieldpasswordValueAccessor, NvFieldradioValueAccessor, NvFieldselectValueAccessor, NvFieldsliderValueAccessor, NvFieldtextValueAccessor, NvFieldtextareaValueAccessor, NvFieldtimeValueAccessor, NvNotificationValueAccessor, NvPopoverValueAccessor, NvSidebarValueAccessor, NvSplitValueAccessor, NvToggleValueAccessor, NvTogglebuttongroupValueAccessor] }); }
|
|
3962
4107
|
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.1.5", ngImport: i0, type: NovaComponentsValueAccessorModule }); }
|
|
3963
4108
|
}
|
|
3964
4109
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.5", ngImport: i0, type: NovaComponentsValueAccessorModule, decorators: [{
|
|
@@ -4318,5 +4463,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.5", ngImpor
|
|
|
4318
4463
|
* Generated bundle index. Do not edit.
|
|
4319
4464
|
*/
|
|
4320
4465
|
|
|
4321
|
-
export { NotificationService, NotificationServiceComponent, NovaComponentsModule, NovaComponentsValueAccessorModule, NvAccordion, NvAccordionItem, NvAccordionValueAccessor, NvAlert, NvAlertValueAccessor, NvAvatar, NvBadge, NvBreadcrumb, NvBreadcrumbs, NvButton, NvButtongroup, NvCalendar, NvCalendarValueAccessor, NvCol, NvDatagrid, NvDatagridValueAccessor, NvDatagridcolumn, NvDatatable, NvDatatableCellDirective, NvDialog, NvDialogValueAccessor, NvDialogfooter, NvDialogheader, NvFieldcheckbox, NvFieldcheckboxValueAccessor, NvFielddate, NvFielddateValueAccessor, NvFielddaterange, NvFielddaterangeValueAccessor, NvFielddropdown, NvFielddropdownValueAccessor, NvFielddropdownitem, NvFielddropdownitemcheck, NvFieldmultiselect, NvFieldmultiselectValueAccessor, NvFieldnumber, NvFieldnumberValueAccessor, NvFieldpassword, NvFieldpasswordValueAccessor, NvFieldradio, NvFieldradioValueAccessor, NvFieldselect, NvFieldselectValueAccessor, NvFieldslider, NvFieldsliderValueAccessor, NvFieldtext, NvFieldtextValueAccessor, NvFieldtextarea, NvFieldtextareaValueAccessor, NvFieldtime, NvFieldtimeValueAccessor, NvIcon, NvIconbutton, NvLoader, NvMenu, NvMenuitem, NvNotification, NvNotificationBullet, NvNotificationValueAccessor, NvNotificationcontainer, NvPopover, NvPopoverValueAccessor, NvRow, NvSidebar, NvSidebarValueAccessor, NvSidebarcontent, NvSidebardivider, NvSidebarfooter, NvSidebargroup, NvSidebarheader, NvSidebarlogo, NvSidebarnavitem, NvSidebarnavsubitem, NvSplit, NvSplitValueAccessor, NvStack, NvTable, NvTableheader, NvToggle, NvToggleValueAccessor, NvTogglebutton, NvTogglebuttongroup, NvTogglebuttongroupValueAccessor, NvTooltip, VALUE_ACCESSORS, makeColumn, flexRenderComponent as nvDatatableRenderComponent };
|
|
4466
|
+
export { NotificationService, NotificationServiceComponent, NovaComponentsModule, NovaComponentsValueAccessorModule, NvAccordion, NvAccordionItem, NvAccordionValueAccessor, NvAlert, NvAlertValueAccessor, NvAvatar, NvBadge, NvBreadcrumb, NvBreadcrumbs, NvButton, NvButtongroup, NvCalendar, NvCalendarValueAccessor, NvCol, NvDatagrid, NvDatagridValueAccessor, NvDatagridcolumn, NvDatatable, NvDatatableCellDirective, NvDialog, NvDialogValueAccessor, NvDialogfooter, NvDialogheader, NvDrawer, NvDrawerValueAccessor, NvDrawerfooter, NvDrawerheader, NvFieldcheckbox, NvFieldcheckboxValueAccessor, NvFielddate, NvFielddateValueAccessor, NvFielddaterange, NvFielddaterangeValueAccessor, NvFielddropdown, NvFielddropdownValueAccessor, NvFielddropdownitem, NvFielddropdownitemcheck, NvFieldmultiselect, NvFieldmultiselectValueAccessor, NvFieldnumber, NvFieldnumberValueAccessor, NvFieldpassword, NvFieldpasswordValueAccessor, NvFieldradio, NvFieldradioValueAccessor, NvFieldselect, NvFieldselectValueAccessor, NvFieldslider, NvFieldsliderValueAccessor, NvFieldtext, NvFieldtextValueAccessor, NvFieldtextarea, NvFieldtextareaValueAccessor, NvFieldtime, NvFieldtimeValueAccessor, NvIcon, NvIconbutton, NvLoader, NvMenu, NvMenuitem, NvNotification, NvNotificationBullet, NvNotificationValueAccessor, NvNotificationcontainer, NvPopover, NvPopoverValueAccessor, NvRow, NvSidebar, NvSidebarValueAccessor, NvSidebarcontent, NvSidebardivider, NvSidebarfooter, NvSidebargroup, NvSidebarheader, NvSidebarlogo, NvSidebarnavitem, NvSidebarnavsubitem, NvSplit, NvSplitValueAccessor, NvStack, NvTable, NvTableheader, NvToggle, NvToggleValueAccessor, NvTogglebutton, NvTogglebuttongroup, NvTogglebuttongroupValueAccessor, NvTooltip, VALUE_ACCESSORS, makeColumn, flexRenderComponent as nvDatatableRenderComponent };
|
|
4322
4467
|
//# sourceMappingURL=nova-components.mjs.map
|