@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.
@@ -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()?.mode === 'infinite');
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: sortingConfig.mode === 'server' && sortingConfig.sortState
2765
+ sorting: isServerMode && sortingConfig.sortState
2667
2766
  ? sortingConfig.sortState
2668
2767
  : this.sortingState(),
2669
2768
  },
2670
2769
  onSortingChange: (updaterOrValue) => {
2671
- const currentSort = sortingConfig.mode === 'server' && sortingConfig.sortState
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 (sortingConfig?.mode === 'server' &&
2681
- sortingConfig.onSortingChange) {
2779
+ if (isServerMode && sortingConfig.onSortingChange) {
2682
2780
  sortingConfig.onSortingChange(newSort);
2683
2781
  }
2684
2782
  },
2685
- manualSorting: sortingConfig.mode === 'server',
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: sortingConfig.mode === 'client' ? getSortedRowModel() : undefined,
2793
+ getSortedRowModel: !isServerMode ? getSortedRowModel() : undefined,
2696
2794
  }),
2697
2795
  };
2698
2796
  return baseConfig;
2699
2797
  };
2700
- if (!paginationConfig || paginationConfig.mode === 'infinite') {
2701
- // No pagination or infinite scroll - simple config
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
- else if (paginationConfig.mode === 'client') {
2705
- // Client-side pagination
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
- else {
2718
- // Server-side pagination - manual pagination with reactive state
2719
- const baseConfig = getBaseTableConfig();
2720
- const pageSize = this.paginationState().pageSize;
2721
- return {
2722
- ...baseConfig,
2723
- manualPagination: true,
2724
- pageCount: paginationConfig.totalPageCount !== undefined
2725
- ? paginationConfig.totalPageCount
2726
- : paginationConfig.totalRowCount !== undefined
2727
- ? Math.ceil(paginationConfig.totalRowCount / pageSize)
2728
- : -1,
2729
- state: {
2730
- pagination: this.paginationState(),
2731
- ...(baseConfig.state && { sorting: baseConfig.state.sorting }),
2732
- },
2733
- onPaginationChange: (updaterOrValue) => {
2734
- const newState = typeof updaterOrValue === 'function'
2735
- ? updaterOrValue(this.paginationState())
2736
- : updaterOrValue;
2737
- this.paginationState.set(newState);
2738
- // Call user's callback for server-side pagination
2739
- if (paginationConfig.onPaginationChange) {
2740
- paginationConfig.onPaginationChange({
2741
- pageIndex: newState.pageIndex,
2742
- pageSize: newState.pageSize,
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 = paginationConfig.mode === 'server'
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.mode === 'infinite'
2775
- ? paginationConfig.isLoading
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 (paginationConfig?.mode !== 'infinite' || rows.length === 0) {
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