@verisoft/ui-primeng 21.0.11 → 21.0.13

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.
@@ -1,9 +1,9 @@
1
1
  import * as i0 from '@angular/core';
2
- import { inject, Input, Optional, Self, Component, forwardRef, ChangeDetectionStrategy, Pipe, input, computed, ViewEncapsulation, Inject, Injectable, EventEmitter, ViewChild, Output, NgModule, ChangeDetectorRef, ContentChild, ContentChildren, reflectComponentType, Injector, ViewContainerRef, Directive, InjectionToken } from '@angular/core';
2
+ import { inject, Input, Optional, Self, Component, forwardRef, ChangeDetectionStrategy, Pipe, input, computed, ViewEncapsulation, Inject, Injectable, EventEmitter, ViewChild, Output, NgModule, ChangeDetectorRef, ContentChild, ContentChildren, reflectComponentType, Injector, ViewContainerRef, Directive } from '@angular/core';
3
3
  import * as i1 from '@angular/forms';
4
4
  import { ReactiveFormsModule, UntypedFormGroup, UntypedFormControl, FormGroup, NG_VALUE_ACCESSOR } from '@angular/forms';
5
5
  import * as i1$6 from '@verisoft/ui-core';
6
- import { BaseFormInputComponent, WarningPipe, BaseInputControls, INPUT_GROUP_COMPONENT_TOKEN, ControlSeverity, SlotPosition, FieldSize, FieldType, TEXTFIELD_COMPONENT_TOKEN, BreadcrumbCoreComponent, BREADCRUMB_COMPONENT_TOKEN, CHECKBOX_COMPONENT_TOKEN, CALENDAR_COMPONENT_TOKEN, PASSWORD_COMPONENT_TOKEN, IconPosition, BUTTON_COMPONENT_TOKEN, SECTION_COMPONENT_TOKEN, DROPDOWN_BUTTON_COMPONENT_TOKEN, RADIOBUTTON_COMPONENT_TOKEN, NUMBER_INPUT_COMPONENT_TOKEN, SETTINGS_MENU, UnsubscribeComponent, HEADER_COMPONENT_TOKEN, TEXTAREA_COMPONENT_TOKEN, LOADER_COMPONENT_TOKEN, SNACKBAR_COMPONENT_TOKEN, SideMenuService, ScreenSizeService, MENU_TOKEN, SideMenuProviderService, SIDE_MENU_COMPONENT_TOKEN, SIDE_MENU_STATE_TOKEN, ColumnModel, RowModel, TABLE_COLUMN_PROVIDER, TABLE_COMPONENT_TOKEN, ACTION_BUTTON_GROUP_COMPONENT_TOKEN, queryListChanged, DROPDOWN_COMPONENT_TOKEN, MULTISELECT_COMPONENT_TOKEN, GenericFieldType, DatasourceDirective, GENERIC_FIELD_COMPONENT_TOKEN, PageHeaderCoreComponent, PAGE_HEADER_COMPONENT_TOKEN, LayoutType, STEPPER_COMPONENT_TOKEN, SLIDER_COMPONENT_TOKEN, CONFIRM_DIALOG_COMPONENT_TOKEN, SWITCH_COMPONENT_TOKEN, TAB_VIEW_COMPONENT_TOKEN, DEFAULT_DEBOUNCE_TIME, DialogService, isFilterEmpty, ButtonShortCutDirective, FILTER_COMPONENT_TOKEN, MAX_COLUMN_CHAR_COUNT, TableSelectionMode, downloadFile, TableDatasourceDirective, TableFilterDirective, TableColumnDirective, TAG_COMPONENT_TOKEN, IconsComponent } from '@verisoft/ui-core';
6
+ import { BaseFormInputComponent, WarningPipe, BaseInputControls, INPUT_GROUP_COMPONENT_TOKEN, ControlSeverity, SlotPosition, FieldSize, FieldType, TEXTFIELD_COMPONENT_TOKEN, BreadcrumbCoreComponent, BREADCRUMB_COMPONENT_TOKEN, CHECKBOX_COMPONENT_TOKEN, CALENDAR_COMPONENT_TOKEN, PASSWORD_COMPONENT_TOKEN, IconPosition, BUTTON_COMPONENT_TOKEN, SECTION_COMPONENT_TOKEN, DROPDOWN_BUTTON_COMPONENT_TOKEN, RADIOBUTTON_COMPONENT_TOKEN, NUMBER_INPUT_COMPONENT_TOKEN, SETTINGS_MENU, UnsubscribeComponent, HEADER_COMPONENT_TOKEN, TEXTAREA_COMPONENT_TOKEN, LOADER_COMPONENT_TOKEN, SNACKBAR_COMPONENT_TOKEN, SideMenuService, ScreenSizeService, MENU_TOKEN, SideMenuProviderService, SIDE_MENU_COMPONENT_TOKEN, SIDE_MENU_STATE_TOKEN, ColumnModel, RowModel, TABLE_COLUMN_PROVIDER, TABLE_COMPONENT_TOKEN, ACTION_BUTTON_GROUP_COMPONENT_TOKEN, queryListChanged, DROPDOWN_COMPONENT_TOKEN, MULTISELECT_COMPONENT_TOKEN, GenericFieldType, DatasourceDirective, GENERIC_FIELD_COMPONENT_TOKEN, PageHeaderCoreComponent, PAGE_HEADER_COMPONENT_TOKEN, LayoutType, STEPPER_COMPONENT_TOKEN, SLIDER_COMPONENT_TOKEN, CONFIRM_DIALOG_COMPONENT_TOKEN, SWITCH_COMPONENT_TOKEN, TAB_VIEW_COMPONENT_TOKEN, DEFAULT_DEBOUNCE_TIME, DialogService, isFilterEmpty, ButtonShortCutDirective, FILTER_COMPONENT_TOKEN, MAX_COLUMN_CHAR_COUNT, TableSelectionMode, downloadFile, TableDatasourceDirective, TableFilterDirective, FeatureListFilterPipe, FEATURE_LIST_COLUMN_PROVIDER, FeatureListFilterFieldDirective, FEATURE_LIST_COMPONENT_TOKEN, FEATURE_LIST_PAGE_CONFIG_PROPERTY, TAG_COMPONENT_TOKEN, IconsComponent } from '@verisoft/ui-core';
7
7
  import * as i3$1 from 'primeng/inputgroup';
8
8
  import { InputGroupModule } from 'primeng/inputgroup';
9
9
  import * as i2$1 from 'primeng/inputgroupaddon';
@@ -705,11 +705,17 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.3", ngImpor
705
705
  class NumberInputComponent extends BaseFormInputComponent {
706
706
  constructor(ngControl) {
707
707
  super(ngControl);
708
- this.step = 1;
708
+ this.decimals = 0;
709
709
  this.errorMessage = 'test';
710
710
  }
711
+ computeStep() {
712
+ if (this.step !== undefined) {
713
+ return this.step;
714
+ }
715
+ return this.decimals > 0 ? Math.pow(10, -this.decimals) : 1;
716
+ }
711
717
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.3", ngImport: i0, type: NumberInputComponent, deps: [{ token: i1.NgControl, optional: true, self: true }], target: i0.ɵɵFactoryTarget.Component }); }
712
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.1.3", type: NumberInputComponent, isStandalone: true, selector: "v-number-input", inputs: { mode: "mode", currency: "currency", min: "min", max: "max", step: "step", errorMessage: "errorMessage" }, providers: [
718
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.1.3", type: NumberInputComponent, isStandalone: true, selector: "v-number-input", inputs: { decimals: "decimals", currency: "currency", min: "min", max: "max", step: "step", errorMessage: "errorMessage" }, providers: [
713
719
  {
714
720
  provide: BaseInputControls,
715
721
  useExisting: forwardRef(() => NumberInputComponent),
@@ -718,7 +724,7 @@ class NumberInputComponent extends BaseFormInputComponent {
718
724
  provide: NUMBER_INPUT_COMPONENT_TOKEN,
719
725
  useExisting: NumberInputComponent,
720
726
  },
721
- ], usesInheritance: true, ngImport: i0, template: "<div class=\"v-number-input\">\n <v-form-field\n class=\"w-100\"\n [label]=\"label\"\n [tooltip]=\"tooltip\"\n [required]=\"isRequired()\"\n [testId]=\"testId\"\n >\n <p-inputNumber\n class=\"w-100\"\n [formControl]=\"formControl\"\n [showButtons]=\"true\"\n [inputId]=\"inputId\"\n [mode]=\"mode\"\n [min]=\"min\"\n [max]=\"max\"\n [step]=\"step\"\n [currency]=\"currency\"\n />\n <v-validation-message [ngControl]=\"ngControl\"></v-validation-message>\n </v-form-field>\n</div>\n", dependencies: [{ kind: "ngmodule", type: InputNumberModule }, { kind: "component", type: i2$5.InputNumber, selector: "p-inputNumber, p-inputnumber, p-input-number", inputs: ["showButtons", "format", "buttonLayout", "inputId", "styleClass", "placeholder", "tabindex", "title", "ariaLabelledBy", "ariaDescribedBy", "ariaLabel", "ariaRequired", "autocomplete", "incrementButtonClass", "decrementButtonClass", "incrementButtonIcon", "decrementButtonIcon", "readonly", "allowEmpty", "locale", "localeMatcher", "mode", "currency", "currencyDisplay", "useGrouping", "minFractionDigits", "maxFractionDigits", "prefix", "suffix", "inputStyle", "inputStyleClass", "showClear", "autofocus"], outputs: ["onInput", "onFocus", "onBlur", "onKeyDown", "onClear"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: FormFieldComponent, selector: "v-form-field", inputs: ["display", "variant"] }, { kind: "component", type: ErrorComponent, selector: "v-validation-message", inputs: ["ngControl", "errorSlot", "messageSlot", "variant", "severity"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
727
+ ], usesInheritance: true, ngImport: i0, template: "<div class=\"v-number-input\">\n <v-form-field\n class=\"w-100\"\n [label]=\"label\"\n [tooltip]=\"tooltip\"\n [required]=\"isRequired()\"\n [testId]=\"testId\"\n >\n <p-inputNumber\n class=\"w-100\"\n [formControl]=\"formControl\"\n [showButtons]=\"true\"\n [inputId]=\"inputId\"\n [mode]=\"decimals > 0 ? 'decimal' : (currency ? 'currency' : undefined)\"\n [min]=\"min\"\n [max]=\"max\"\n [minFractionDigits]=\"decimals\"\n [step]=\"computeStep()\"\n [currency]=\"currency\"\n />\n <v-validation-message [ngControl]=\"ngControl\"></v-validation-message>\n </v-form-field>\n</div>\n", dependencies: [{ kind: "ngmodule", type: InputNumberModule }, { kind: "component", type: i2$5.InputNumber, selector: "p-inputNumber, p-inputnumber, p-input-number", inputs: ["showButtons", "format", "buttonLayout", "inputId", "styleClass", "placeholder", "tabindex", "title", "ariaLabelledBy", "ariaDescribedBy", "ariaLabel", "ariaRequired", "autocomplete", "incrementButtonClass", "decrementButtonClass", "incrementButtonIcon", "decrementButtonIcon", "readonly", "allowEmpty", "locale", "localeMatcher", "mode", "currency", "currencyDisplay", "useGrouping", "minFractionDigits", "maxFractionDigits", "prefix", "suffix", "inputStyle", "inputStyleClass", "showClear", "autofocus"], outputs: ["onInput", "onFocus", "onBlur", "onKeyDown", "onClear"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: FormFieldComponent, selector: "v-form-field", inputs: ["display", "variant"] }, { kind: "component", type: ErrorComponent, selector: "v-validation-message", inputs: ["ngControl", "errorSlot", "messageSlot", "variant", "severity"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
722
728
  }
723
729
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.3", ngImport: i0, type: NumberInputComponent, decorators: [{
724
730
  type: Component,
@@ -736,12 +742,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.3", ngImpor
736
742
  provide: NUMBER_INPUT_COMPONENT_TOKEN,
737
743
  useExisting: NumberInputComponent,
738
744
  },
739
- ], template: "<div class=\"v-number-input\">\n <v-form-field\n class=\"w-100\"\n [label]=\"label\"\n [tooltip]=\"tooltip\"\n [required]=\"isRequired()\"\n [testId]=\"testId\"\n >\n <p-inputNumber\n class=\"w-100\"\n [formControl]=\"formControl\"\n [showButtons]=\"true\"\n [inputId]=\"inputId\"\n [mode]=\"mode\"\n [min]=\"min\"\n [max]=\"max\"\n [step]=\"step\"\n [currency]=\"currency\"\n />\n <v-validation-message [ngControl]=\"ngControl\"></v-validation-message>\n </v-form-field>\n</div>\n" }]
745
+ ], template: "<div class=\"v-number-input\">\n <v-form-field\n class=\"w-100\"\n [label]=\"label\"\n [tooltip]=\"tooltip\"\n [required]=\"isRequired()\"\n [testId]=\"testId\"\n >\n <p-inputNumber\n class=\"w-100\"\n [formControl]=\"formControl\"\n [showButtons]=\"true\"\n [inputId]=\"inputId\"\n [mode]=\"decimals > 0 ? 'decimal' : (currency ? 'currency' : undefined)\"\n [min]=\"min\"\n [max]=\"max\"\n [minFractionDigits]=\"decimals\"\n [step]=\"computeStep()\"\n [currency]=\"currency\"\n />\n <v-validation-message [ngControl]=\"ngControl\"></v-validation-message>\n </v-form-field>\n</div>\n" }]
740
746
  }], ctorParameters: () => [{ type: i1.NgControl, decorators: [{
741
747
  type: Optional
742
748
  }, {
743
749
  type: Self
744
- }] }], propDecorators: { mode: [{
750
+ }] }], propDecorators: { decimals: [{
745
751
  type: Input
746
752
  }], currency: [{
747
753
  type: Input
@@ -1173,6 +1179,9 @@ class TableFilterPipe {
1173
1179
  if (key === 'searchField') {
1174
1180
  key = 'global';
1175
1181
  }
1182
+ else {
1183
+ key = `row.${key}`;
1184
+ }
1176
1185
  currentFilter[key] = filterValue;
1177
1186
  }
1178
1187
  return currentFilter;
@@ -1214,11 +1223,14 @@ function convertToFilter(value) {
1214
1223
  const filter = {};
1215
1224
  Object.keys(value).map((key) => {
1216
1225
  const filterValue = value[key];
1226
+ const originalFilterKey = key?.startsWith('row.')
1227
+ ? key.slice(4)
1228
+ : key;
1217
1229
  if (filterValue != undefined && typeof filterValue === 'object') {
1218
- filter[key] = filterValue.value;
1230
+ filter[originalFilterKey] = filterValue.value;
1219
1231
  }
1220
1232
  else {
1221
- filter[key] = filterValue;
1233
+ filter[originalFilterKey] = filterValue;
1222
1234
  }
1223
1235
  });
1224
1236
  return filter;
@@ -2454,6 +2466,7 @@ class FilterComponent extends UnsubscribeComponent {
2454
2466
  this.filters = [];
2455
2467
  this.fulltextFieldName = 'searchField';
2456
2468
  this.showFulltext = true;
2469
+ this.filterDetailShowFulltext = true;
2457
2470
  this.showFilters = true;
2458
2471
  this.autoBind = true;
2459
2472
  this.debounceTime = DEFAULT_DEBOUNCE_TIME;
@@ -2484,7 +2497,8 @@ class FilterComponent extends UnsubscribeComponent {
2484
2497
  const fieldDeclaratios$ = this.fieldDeclarations.changes.pipe(startWith({}), map(() => this.fieldDeclarations.toArray()));
2485
2498
  this.fieldDefinitios$ = this.inputFields$.pipe(combineLatestWith(fieldDeclaratios$), map(([inputs, views]) => {
2486
2499
  this.searchField.name = this.fulltextFieldName;
2487
- this.lastFormFields = [this.searchField, ...(inputs ?? []), ...views];
2500
+ const fields = [...(inputs ?? []), ...views];
2501
+ this.lastFormFields = this.filterDetailShowFulltext ? [this.searchField, ...fields] : fields;
2488
2502
  return this.lastFormFields;
2489
2503
  }));
2490
2504
  this.simpleFormFieldDefinitions$ = this.fieldDefinitios$.pipe(map((fields) => {
@@ -2556,7 +2570,7 @@ class FilterComponent extends UnsubscribeComponent {
2556
2570
  return value;
2557
2571
  }
2558
2572
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.3", ngImport: i0, type: FilterComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
2559
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.1.3", type: FilterComponent, isStandalone: true, selector: "v-filter", inputs: { filterDetailTitle: "filterDetailTitle", applyButtonLabel: "applyButtonLabel", clearButtonLabel: "clearButtonLabel", fields: "fields", filters: "filters", title: "title", fulltextFieldName: "fulltextFieldName", showFulltext: "showFulltext", showFilters: "showFilters", autoBind: "autoBind", debounceTime: "debounceTime" }, providers: [
2573
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.1.3", type: FilterComponent, isStandalone: true, selector: "v-filter", inputs: { filterDetailTitle: "filterDetailTitle", applyButtonLabel: "applyButtonLabel", clearButtonLabel: "clearButtonLabel", fields: "fields", filters: "filters", title: "title", fulltextFieldName: "fulltextFieldName", showFulltext: "showFulltext", filterDetailShowFulltext: "filterDetailShowFulltext", showFilters: "showFilters", autoBind: "autoBind", debounceTime: "debounceTime" }, providers: [
2560
2574
  {
2561
2575
  provide: NG_VALUE_ACCESSOR,
2562
2576
  useExisting: forwardRef(() => FilterComponent),
@@ -2607,6 +2621,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.3", ngImpor
2607
2621
  type: Input
2608
2622
  }], showFulltext: [{
2609
2623
  type: Input
2624
+ }], filterDetailShowFulltext: [{
2625
+ type: Input
2610
2626
  }], showFilters: [{
2611
2627
  type: Input
2612
2628
  }], autoBind: [{
@@ -2615,91 +2631,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.3", ngImpor
2615
2631
  type: Input
2616
2632
  }] } });
2617
2633
 
2618
- class FeatureListFilterFieldDirective extends FilterFieldDirective {
2619
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.3", ngImport: i0, type: FeatureListFilterFieldDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
2620
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.1.3", type: FeatureListFilterFieldDirective, isStandalone: true, selector: "v-feature-list-filter-field", usesInheritance: true, ngImport: i0 }); }
2621
- }
2622
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.3", ngImport: i0, type: FeatureListFilterFieldDirective, decorators: [{
2623
- type: Directive,
2624
- args: [{
2625
- // eslint-disable-next-line @angular-eslint/directive-selector
2626
- selector: 'v-feature-list-filter-field',
2627
- standalone: true,
2628
- }]
2629
- }] });
2630
-
2631
- class FeatureListFilterPipe {
2632
- transform(value) {
2633
- if (!value) {
2634
- return undefined;
2635
- }
2636
- return value.filter(x => x.filter).map((x, index) => ({
2637
- name: x.id,
2638
- label: typeof x.headerName === 'function' ? x.headerName(x.id, index) : x.headerName ?? '',
2639
- type: x.type,
2640
- }));
2641
- }
2642
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.3", ngImport: i0, type: FeatureListFilterPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
2643
- static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "21.1.3", ngImport: i0, type: FeatureListFilterPipe, isStandalone: true, name: "featureListColumn" }); }
2644
- }
2645
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.3", ngImport: i0, type: FeatureListFilterPipe, decorators: [{
2646
- type: Pipe,
2647
- args: [{
2648
- name: 'featureListColumn',
2649
- standalone: true,
2650
- }]
2651
- }] });
2652
-
2653
- class FeatureListPageComponent {
2654
- constructor() {
2655
- this.activatedRoute = inject(ActivatedRoute);
2656
- this.config =
2657
- this.activatedRoute.snapshot.data[FEATURE_LIST_PAGE_CONFIG_PROPERTY];
2658
- }
2659
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.3", ngImport: i0, type: FeatureListPageComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
2660
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.1.3", type: FeatureListPageComponent, isStandalone: true, selector: "v-feature-list-page", ngImport: i0, template: `
2661
- <v-feature-list
2662
- [title]="config.title"
2663
- [tableName]="config.tableName"
2664
- [showAdd]="config.showAdd ?? true"
2665
- [showDownload]="config.showDownload ?? true"
2666
- [showDelete]="config.showDelete ?? true"
2667
- >
2668
- </v-feature-list>
2669
- `, isInline: true, dependencies: [{ kind: "component", type: FeatureListComponent, selector: "v-feature-list", inputs: ["autoBind", "title", "columns", "filters", "maxVisibleActions", "tableName", "ngrxFeatureKey", "maxVisibleMobileActions", "showExtendedFilter", "showDownload", "showDelete", "showAdd", "canDownload", "canDelete", "canAdd", "useRouterFilter", "fulltextFieldName", "showFulltext", "deleteConfirmMessage", "autoDeleteEnabled", "autoDownloadEnabled", "downloadFileName", "datasource", "extraFilter", "disableCustomClicks", "maximumColumnLength", "filterDetailTitle", "applyButtonLabel", "clearButtonLabel", "selectionMode"], outputs: ["addClick", "downloadClick", "deleteClick", "selectionChange"] }] }); }
2670
- }
2671
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.3", ngImport: i0, type: FeatureListPageComponent, decorators: [{
2672
- type: Component,
2673
- args: [{
2674
- selector: 'v-feature-list-page',
2675
- imports: [FeatureListComponent],
2676
- template: `
2677
- <v-feature-list
2678
- [title]="config.title"
2679
- [tableName]="config.tableName"
2680
- [showAdd]="config.showAdd ?? true"
2681
- [showDownload]="config.showDownload ?? true"
2682
- [showDelete]="config.showDelete ?? true"
2683
- >
2684
- </v-feature-list>
2685
- `
2686
- }]
2687
- }], ctorParameters: () => [] });
2688
-
2689
- const FEATURE_LIST_PAGE_CONFIG_PROPERTY = 'feature_list_config';
2690
- function addFeatureListPage(value) {
2691
- const { config, ...route } = value;
2692
- return {
2693
- component: FeatureListPageComponent,
2694
- ...route,
2695
- data: {
2696
- [FEATURE_LIST_PAGE_CONFIG_PROPERTY]: config,
2697
- ...(route.data ?? {}),
2698
- },
2699
- };
2700
- }
2701
- const FEATURE_LIST_COLUMN_PROVIDER = new InjectionToken('FEATURE_LIST_COLUMN_PROVIDER');
2702
-
2703
2634
  class FeatureListComponent {
2704
2635
  constructor() {
2705
2636
  this.autoBind = true;
@@ -2715,6 +2646,7 @@ class FeatureListComponent {
2715
2646
  this.useRouterFilter = true;
2716
2647
  this.fulltextFieldName = 'searchField';
2717
2648
  this.showFulltext = true;
2649
+ this.filterDialogShowFulltext = true;
2718
2650
  this.autoDeleteEnabled = true;
2719
2651
  this.autoDownloadEnabled = true;
2720
2652
  this.downloadFileName = 'export.csv';
@@ -2723,6 +2655,8 @@ class FeatureListComponent {
2723
2655
  this.filterDetailTitle = 'Set filters';
2724
2656
  this.applyButtonLabel = 'Apply';
2725
2657
  this.clearButtonLabel = 'Clear all';
2658
+ this.pageSize = DEFAULT_SEARCH_LIMIT;
2659
+ this.showPaginator = true;
2726
2660
  this.addClick = new EventEmitter();
2727
2661
  this.downloadClick = new EventEmitter();
2728
2662
  this.deleteClick = new EventEmitter();
@@ -2878,7 +2812,12 @@ class FeatureListComponent {
2878
2812
  return new Blob([csvData], { type: 'text/csv' });
2879
2813
  }
2880
2814
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.3", ngImport: i0, type: FeatureListComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
2881
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.1.3", type: FeatureListComponent, isStandalone: true, selector: "v-feature-list", inputs: { autoBind: "autoBind", title: "title", columns: "columns", filters: "filters", maxVisibleActions: "maxVisibleActions", tableName: "tableName", ngrxFeatureKey: "ngrxFeatureKey", maxVisibleMobileActions: "maxVisibleMobileActions", showExtendedFilter: "showExtendedFilter", showDownload: "showDownload", showDelete: "showDelete", showAdd: "showAdd", canDownload: "canDownload", canDelete: "canDelete", canAdd: "canAdd", useRouterFilter: "useRouterFilter", fulltextFieldName: "fulltextFieldName", showFulltext: "showFulltext", deleteConfirmMessage: "deleteConfirmMessage", autoDeleteEnabled: "autoDeleteEnabled", autoDownloadEnabled: "autoDownloadEnabled", downloadFileName: "downloadFileName", datasource: "datasource", extraFilter: "extraFilter", disableCustomClicks: "disableCustomClicks", maximumColumnLength: "maximumColumnLength", filterDetailTitle: "filterDetailTitle", applyButtonLabel: "applyButtonLabel", clearButtonLabel: "clearButtonLabel", selectionMode: "selectionMode" }, outputs: { addClick: "addClick", downloadClick: "downloadClick", deleteClick: "deleteClick", selectionChange: "selectionChange" }, queries: [{ propertyName: "viewColumns", predicate: FEATURE_LIST_COLUMN_PROVIDER }, { propertyName: "fieldDeclarations", predicate: FeatureListFilterFieldDirective }], viewQueries: [{ propertyName: "tableDatasourceDirective", first: true, predicate: TableDatasourceDirective, descendants: true }], ngImport: i0, template: "<div class=\"feature-list__container full-height-container\">\n <v-filter\n #filter\n [title]=\"title\"\n [fields]=\"columns | featureListColumn\"\n [filters]=\"filters\"\n [fulltextFieldName]=\"fulltextFieldName\"\n [showFulltext]=\"showFulltext\"\n [showFilters]=\"showExtendedFilter\"\n [applyButtonLabel]=\"applyButtonLabel\"\n [clearButtonLabel]=\"clearButtonLabel\"\n [filterDetailTitle]=\"filterDetailTitle\"\n >\n <v-action-button-group\n [maxItems]=\"maxVisibleActions\"\n [maxItemsMobile]=\"maxVisibleMobileActions\"\n >\n @if (showAdd) {\n <v-action-button\n [icon]=\"icons.add\"\n label=\"Add\"\n [disabled]=\"!canAdd\"\n (click)=\"addClick.emit()\"\n ></v-action-button>\n } @if (showDelete){\n <v-action-button\n [icon]=\"icons.delete\"\n label=\"Delete\"\n [disabled]=\"!canDelete || !selection.length\"\n (click)=\"startDeleteItems()\"\n ></v-action-button>\n } @if (showDownload){\n <v-action-button\n [icon]=\"icons.download\"\n label=\"Download\"\n [disabled]=\"!canDownload\"\n (click)=\"startDownload()\"\n ></v-action-button>\n }\n </v-action-button-group>\n </v-filter>\n <div class=\"feature-list__table-container full-height-container\">\n <div class=\"full-height-container\">\n <v-table\n useDatasource\n useFilter\n [filterComponent]=\"filter\"\n class=\"full-height-container\"\n [selectionMode]=\"selectionMode\"\n [tableName]=\"tableName\"\n [autoBind]=\"true\"\n [datasource]=\"datasource\"\n [columns]=\"columns\"\n [extraFilter]=\"extraFilter\"\n [maximumColumnLength]=\"maximumColumnLength\"\n [disableCustomClicks]=\"disableCustomClicks\"\n (selectionChange)=\"selectItems($event)\"\n >\n </v-table>\n </div>\n </div>\n</div>\n", styles: [".full-height-container,:host{display:flex;flex-direction:column;flex-grow:1;height:100%}\n"], dependencies: [{ kind: "component", type: TableComponent, selector: "v-table", inputs: ["data", "total", "filter", "loading", "scrollable", "pageSize", "currentPage", "showPaginator", "sortMultiple", "lazy", "selectionMode", "showPageSizePicker", "entityKey", "maximumColumnLength", "disableCustomClicks", "columns", "selection"], outputs: ["pageSizeChange", "selectionChange", "pageChange", "sortChange", "lazyLoad"] }, { kind: "directive", type: TableDatasourceDirective, selector: "v-table[useDatasource]", inputs: ["autoBind", "tableName", "debounceTime", "datasource", "extraFilter", "transformFn"], exportAs: ["useDatasource"] }, { kind: "component", type: FilterComponent, selector: "v-filter", inputs: ["filterDetailTitle", "applyButtonLabel", "clearButtonLabel", "fields", "filters", "title", "fulltextFieldName", "showFulltext", "showFilters", "autoBind", "debounceTime"] }, { kind: "directive", type: TableFilterDirective, selector: "v-table[useFilter]", inputs: ["filterComponent"], exportAs: ["tableFilterDirective"] }, { kind: "component", type: ActionButtonGroupComponent, selector: "v-action-button-group", inputs: ["maxItems", "maxItemsMobile", "items", "menuIconPos", "menuIcon", "label", "showLabels", "icon"] }, { kind: "component", type: ActionButtonComponent, selector: "v-action-button", inputs: ["disabled", "toolTip", "id", "icon", "outlined", "raised", "severity", "label", "size"], outputs: ["click"] }, { kind: "pipe", type: FeatureListFilterPipe, name: "featureListColumn" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
2815
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.1.3", type: FeatureListComponent, isStandalone: true, selector: "v-feature-list", inputs: { autoBind: "autoBind", title: "title", columns: "columns", filters: "filters", maxVisibleActions: "maxVisibleActions", tableName: "tableName", ngrxFeatureKey: "ngrxFeatureKey", maxVisibleMobileActions: "maxVisibleMobileActions", showExtendedFilter: "showExtendedFilter", showDownload: "showDownload", showDelete: "showDelete", showAdd: "showAdd", canDownload: "canDownload", canDelete: "canDelete", canAdd: "canAdd", useRouterFilter: "useRouterFilter", fulltextFieldName: "fulltextFieldName", showFulltext: "showFulltext", filterDialogShowFulltext: "filterDialogShowFulltext", deleteConfirmMessage: "deleteConfirmMessage", autoDeleteEnabled: "autoDeleteEnabled", autoDownloadEnabled: "autoDownloadEnabled", downloadFileName: "downloadFileName", datasource: "datasource", extraFilter: "extraFilter", disableCustomClicks: "disableCustomClicks", maximumColumnLength: "maximumColumnLength", filterDetailTitle: "filterDetailTitle", applyButtonLabel: "applyButtonLabel", clearButtonLabel: "clearButtonLabel", pageSize: "pageSize", showPaginator: "showPaginator", selectionMode: "selectionMode" }, outputs: { addClick: "addClick", downloadClick: "downloadClick", deleteClick: "deleteClick", selectionChange: "selectionChange" }, providers: [
2816
+ {
2817
+ provide: FEATURE_LIST_COMPONENT_TOKEN,
2818
+ useExisting: FeatureListComponent,
2819
+ },
2820
+ ], queries: [{ propertyName: "viewColumns", predicate: FEATURE_LIST_COLUMN_PROVIDER }, { propertyName: "fieldDeclarations", predicate: FeatureListFilterFieldDirective }], viewQueries: [{ propertyName: "tableDatasourceDirective", first: true, predicate: TableDatasourceDirective, descendants: true }], ngImport: i0, template: "<div class=\"feature-list__container full-height-container\">\n <v-filter\n #filter\n [title]=\"title\"\n [fields]=\"columns | featureListColumn\"\n [filters]=\"filters\"\n [fulltextFieldName]=\"fulltextFieldName\"\n [showFulltext]=\"showFulltext\"\n [filterDetailShowFulltext]=\"filterDialogShowFulltext\"\n [showFilters]=\"showExtendedFilter\"\n [applyButtonLabel]=\"applyButtonLabel\"\n [clearButtonLabel]=\"clearButtonLabel\"\n [filterDetailTitle]=\"filterDetailTitle\"\n >\n <v-action-button-group\n [maxItems]=\"maxVisibleActions\"\n [maxItemsMobile]=\"maxVisibleMobileActions\"\n >\n @if (showAdd) {\n <v-action-button\n [icon]=\"icons.add\"\n label=\"Add\"\n [disabled]=\"!canAdd\"\n (click)=\"addClick.emit()\"\n ></v-action-button>\n } @if (showDelete){\n <v-action-button\n [icon]=\"icons.delete\"\n label=\"Delete\"\n [disabled]=\"!canDelete || !selection.length\"\n (click)=\"startDeleteItems()\"\n ></v-action-button>\n } @if (showDownload){\n <v-action-button\n [icon]=\"icons.download\"\n label=\"Download\"\n [disabled]=\"!canDownload\"\n (click)=\"startDownload()\"\n ></v-action-button>\n }\n </v-action-button-group>\n </v-filter>\n <div class=\"feature-list__table-container full-height-container\">\n <div class=\"full-height-container\">\n <v-table\n useDatasource\n useFilter\n [filterComponent]=\"filter\"\n class=\"full-height-container\"\n [selectionMode]=\"selectionMode\"\n [tableName]=\"tableName\"\n [autoBind]=\"true\"\n [datasource]=\"datasource\"\n [columns]=\"columns\"\n [extraFilter]=\"extraFilter\"\n [maximumColumnLength]=\"maximumColumnLength\"\n [disableCustomClicks]=\"disableCustomClicks\"\n [pageSize]=\"pageSize\"\n [showPaginator]=\"showPaginator\"\n (selectionChange)=\"selectItems($event)\"\n >\n </v-table>\n </div>\n </div>\n</div>\n", styles: [".full-height-container,:host{display:flex;flex-direction:column;flex-grow:1;height:100%}\n"], dependencies: [{ kind: "component", type: TableComponent, selector: "v-table", inputs: ["data", "total", "filter", "loading", "scrollable", "pageSize", "currentPage", "showPaginator", "sortMultiple", "lazy", "selectionMode", "showPageSizePicker", "entityKey", "maximumColumnLength", "disableCustomClicks", "columns", "selection"], outputs: ["pageSizeChange", "selectionChange", "pageChange", "sortChange", "lazyLoad"] }, { kind: "directive", type: TableDatasourceDirective, selector: "v-table[useDatasource]", inputs: ["autoBind", "tableName", "debounceTime", "datasource", "extraFilter", "transformFn"], exportAs: ["useDatasource"] }, { kind: "component", type: FilterComponent, selector: "v-filter", inputs: ["filterDetailTitle", "applyButtonLabel", "clearButtonLabel", "fields", "filters", "title", "fulltextFieldName", "showFulltext", "filterDetailShowFulltext", "showFilters", "autoBind", "debounceTime"] }, { kind: "directive", type: TableFilterDirective, selector: "v-table[useFilter]", inputs: ["filterComponent"], exportAs: ["tableFilterDirective"] }, { kind: "component", type: ActionButtonGroupComponent, selector: "v-action-button-group", inputs: ["maxItems", "maxItemsMobile", "items", "menuIconPos", "menuIcon", "label", "showLabels", "icon"] }, { kind: "component", type: ActionButtonComponent, selector: "v-action-button", inputs: ["disabled", "toolTip", "id", "icon", "outlined", "raised", "severity", "label", "size"], outputs: ["click"] }, { kind: "pipe", type: FeatureListFilterPipe, name: "featureListColumn" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
2882
2821
  }
2883
2822
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.3", ngImport: i0, type: FeatureListComponent, decorators: [{
2884
2823
  type: Component,
@@ -2890,7 +2829,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.3", ngImpor
2890
2829
  ActionButtonGroupComponent,
2891
2830
  ActionButtonComponent,
2892
2831
  FeatureListFilterPipe,
2893
- ], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"feature-list__container full-height-container\">\n <v-filter\n #filter\n [title]=\"title\"\n [fields]=\"columns | featureListColumn\"\n [filters]=\"filters\"\n [fulltextFieldName]=\"fulltextFieldName\"\n [showFulltext]=\"showFulltext\"\n [showFilters]=\"showExtendedFilter\"\n [applyButtonLabel]=\"applyButtonLabel\"\n [clearButtonLabel]=\"clearButtonLabel\"\n [filterDetailTitle]=\"filterDetailTitle\"\n >\n <v-action-button-group\n [maxItems]=\"maxVisibleActions\"\n [maxItemsMobile]=\"maxVisibleMobileActions\"\n >\n @if (showAdd) {\n <v-action-button\n [icon]=\"icons.add\"\n label=\"Add\"\n [disabled]=\"!canAdd\"\n (click)=\"addClick.emit()\"\n ></v-action-button>\n } @if (showDelete){\n <v-action-button\n [icon]=\"icons.delete\"\n label=\"Delete\"\n [disabled]=\"!canDelete || !selection.length\"\n (click)=\"startDeleteItems()\"\n ></v-action-button>\n } @if (showDownload){\n <v-action-button\n [icon]=\"icons.download\"\n label=\"Download\"\n [disabled]=\"!canDownload\"\n (click)=\"startDownload()\"\n ></v-action-button>\n }\n </v-action-button-group>\n </v-filter>\n <div class=\"feature-list__table-container full-height-container\">\n <div class=\"full-height-container\">\n <v-table\n useDatasource\n useFilter\n [filterComponent]=\"filter\"\n class=\"full-height-container\"\n [selectionMode]=\"selectionMode\"\n [tableName]=\"tableName\"\n [autoBind]=\"true\"\n [datasource]=\"datasource\"\n [columns]=\"columns\"\n [extraFilter]=\"extraFilter\"\n [maximumColumnLength]=\"maximumColumnLength\"\n [disableCustomClicks]=\"disableCustomClicks\"\n (selectionChange)=\"selectItems($event)\"\n >\n </v-table>\n </div>\n </div>\n</div>\n", styles: [".full-height-container,:host{display:flex;flex-direction:column;flex-grow:1;height:100%}\n"] }]
2832
+ ], providers: [
2833
+ {
2834
+ provide: FEATURE_LIST_COMPONENT_TOKEN,
2835
+ useExisting: FeatureListComponent,
2836
+ },
2837
+ ], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"feature-list__container full-height-container\">\n <v-filter\n #filter\n [title]=\"title\"\n [fields]=\"columns | featureListColumn\"\n [filters]=\"filters\"\n [fulltextFieldName]=\"fulltextFieldName\"\n [showFulltext]=\"showFulltext\"\n [filterDetailShowFulltext]=\"filterDialogShowFulltext\"\n [showFilters]=\"showExtendedFilter\"\n [applyButtonLabel]=\"applyButtonLabel\"\n [clearButtonLabel]=\"clearButtonLabel\"\n [filterDetailTitle]=\"filterDetailTitle\"\n >\n <v-action-button-group\n [maxItems]=\"maxVisibleActions\"\n [maxItemsMobile]=\"maxVisibleMobileActions\"\n >\n @if (showAdd) {\n <v-action-button\n [icon]=\"icons.add\"\n label=\"Add\"\n [disabled]=\"!canAdd\"\n (click)=\"addClick.emit()\"\n ></v-action-button>\n } @if (showDelete){\n <v-action-button\n [icon]=\"icons.delete\"\n label=\"Delete\"\n [disabled]=\"!canDelete || !selection.length\"\n (click)=\"startDeleteItems()\"\n ></v-action-button>\n } @if (showDownload){\n <v-action-button\n [icon]=\"icons.download\"\n label=\"Download\"\n [disabled]=\"!canDownload\"\n (click)=\"startDownload()\"\n ></v-action-button>\n }\n </v-action-button-group>\n </v-filter>\n <div class=\"feature-list__table-container full-height-container\">\n <div class=\"full-height-container\">\n <v-table\n useDatasource\n useFilter\n [filterComponent]=\"filter\"\n class=\"full-height-container\"\n [selectionMode]=\"selectionMode\"\n [tableName]=\"tableName\"\n [autoBind]=\"true\"\n [datasource]=\"datasource\"\n [columns]=\"columns\"\n [extraFilter]=\"extraFilter\"\n [maximumColumnLength]=\"maximumColumnLength\"\n [disableCustomClicks]=\"disableCustomClicks\"\n [pageSize]=\"pageSize\"\n [showPaginator]=\"showPaginator\"\n (selectionChange)=\"selectItems($event)\"\n >\n </v-table>\n </div>\n </div>\n</div>\n", styles: [".full-height-container,:host{display:flex;flex-direction:column;flex-grow:1;height:100%}\n"] }]
2894
2838
  }], propDecorators: { viewColumns: [{
2895
2839
  type: ContentChildren,
2896
2840
  args: [FEATURE_LIST_COLUMN_PROVIDER]
@@ -2937,6 +2881,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.3", ngImpor
2937
2881
  type: Input
2938
2882
  }], showFulltext: [{
2939
2883
  type: Input
2884
+ }], filterDialogShowFulltext: [{
2885
+ type: Input
2940
2886
  }], deleteConfirmMessage: [{
2941
2887
  type: Input
2942
2888
  }], autoDeleteEnabled: [{
@@ -2959,6 +2905,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.3", ngImpor
2959
2905
  type: Input
2960
2906
  }], clearButtonLabel: [{
2961
2907
  type: Input
2908
+ }], pageSize: [{
2909
+ type: Input
2910
+ }], showPaginator: [{
2911
+ type: Input
2962
2912
  }], addClick: [{
2963
2913
  type: Output
2964
2914
  }], downloadClick: [{
@@ -2971,47 +2921,53 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.3", ngImpor
2971
2921
  type: Input
2972
2922
  }] } });
2973
2923
 
2974
- class FeatureListColumnDirective extends TableColumnDirective {
2924
+ class FeatureListPageComponent {
2975
2925
  constructor() {
2976
- super(...arguments);
2977
- this.filter = false;
2978
- this.type = GenericFieldType.text;
2979
- }
2980
- getDefinition() {
2981
- const definition = super.getDefinition();
2982
- definition.filter = this.filter;
2983
- definition.type = this.type;
2984
- definition.format = this.format;
2985
- return definition;
2926
+ this.activatedRoute = inject(ActivatedRoute);
2927
+ this.config =
2928
+ this.activatedRoute.snapshot.data[FEATURE_LIST_PAGE_CONFIG_PROPERTY];
2986
2929
  }
2987
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.3", ngImport: i0, type: FeatureListColumnDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
2988
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.1.3", type: FeatureListColumnDirective, isStandalone: true, selector: "v-feature-list-column", inputs: { filter: "filter", type: "type" }, providers: [
2989
- {
2990
- provide: FEATURE_LIST_COLUMN_PROVIDER,
2991
- useExisting: FeatureListColumnDirective,
2992
- multi: true,
2993
- },
2994
- ], usesInheritance: true, ngImport: i0 }); }
2930
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.3", ngImport: i0, type: FeatureListPageComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
2931
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.1.3", type: FeatureListPageComponent, isStandalone: true, selector: "v-feature-list-page", ngImport: i0, template: `
2932
+ <v-feature-list
2933
+ [title]="config.title"
2934
+ [tableName]="config.tableName"
2935
+ [showAdd]="config.showAdd ?? true"
2936
+ [showDownload]="config.showDownload ?? true"
2937
+ [showDelete]="config.showDelete ?? true"
2938
+ >
2939
+ </v-feature-list>
2940
+ `, isInline: true, dependencies: [{ kind: "component", type: FeatureListComponent, selector: "v-feature-list", inputs: ["autoBind", "title", "columns", "filters", "maxVisibleActions", "tableName", "ngrxFeatureKey", "maxVisibleMobileActions", "showExtendedFilter", "showDownload", "showDelete", "showAdd", "canDownload", "canDelete", "canAdd", "useRouterFilter", "fulltextFieldName", "showFulltext", "filterDialogShowFulltext", "deleteConfirmMessage", "autoDeleteEnabled", "autoDownloadEnabled", "downloadFileName", "datasource", "extraFilter", "disableCustomClicks", "maximumColumnLength", "filterDetailTitle", "applyButtonLabel", "clearButtonLabel", "pageSize", "showPaginator", "selectionMode"], outputs: ["addClick", "downloadClick", "deleteClick", "selectionChange"] }] }); }
2995
2941
  }
2996
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.3", ngImport: i0, type: FeatureListColumnDirective, decorators: [{
2997
- type: Directive,
2942
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.3", ngImport: i0, type: FeatureListPageComponent, decorators: [{
2943
+ type: Component,
2998
2944
  args: [{
2999
- // eslint-disable-next-line @angular-eslint/directive-selector
3000
- selector: 'v-feature-list-column',
3001
- standalone: true,
3002
- providers: [
3003
- {
3004
- provide: FEATURE_LIST_COLUMN_PROVIDER,
3005
- useExisting: FeatureListColumnDirective,
3006
- multi: true,
3007
- },
3008
- ],
2945
+ selector: 'v-feature-list-page',
2946
+ imports: [FeatureListComponent],
2947
+ template: `
2948
+ <v-feature-list
2949
+ [title]="config.title"
2950
+ [tableName]="config.tableName"
2951
+ [showAdd]="config.showAdd ?? true"
2952
+ [showDownload]="config.showDownload ?? true"
2953
+ [showDelete]="config.showDelete ?? true"
2954
+ >
2955
+ </v-feature-list>
2956
+ `
3009
2957
  }]
3010
- }], propDecorators: { filter: [{
3011
- type: Input
3012
- }], type: [{
3013
- type: Input
3014
- }] } });
2958
+ }], ctorParameters: () => [] });
2959
+
2960
+ function addFeatureListPage(value) {
2961
+ const { config, ...route } = value;
2962
+ return {
2963
+ component: FeatureListPageComponent,
2964
+ ...route,
2965
+ data: {
2966
+ [FEATURE_LIST_PAGE_CONFIG_PROPERTY]: config,
2967
+ ...(route.data ?? {}),
2968
+ },
2969
+ };
2970
+ }
3015
2971
 
3016
2972
  class TooltipComponent {
3017
2973
  constructor() {
@@ -3190,5 +3146,5 @@ const VerisoftTheme = definePreset(Aura, {
3190
3146
  * Generated bundle index. Do not edit.
3191
3147
  */
3192
3148
 
3193
- export { ActionButtonComponent, ActionButtonGroupComponent, BreadcrumbComponent, ButtonComponent, CalendarComponent, CheckboxComponent, ConfirmDialogComponent, DropdownButtonComponent, DropdownComponent, DynamicComponent, DynamicComponentFactoryService, FEATURE_LIST_COLUMN_PROVIDER, FEATURE_LIST_PAGE_CONFIG_PROPERTY, FeatureListColumnDirective, FeatureListComponent, FeatureListFilterFieldDirective, FeatureListFilterPipe, FilterComponent, FilterFieldDirective, FormFieldComponent, GenericFieldComponent, GenericFormComponent, HeaderComponent, HeaderProviderService, HttpErrorMessageInterceptor, IconComponent, Icons, InputGroupComponent, LoaderComponent, MultiselectComponent, NumberInputComponent, PageHeaderComponent, PasswordComponent, RadioButtonComponent, SectionComponent, SideMenuComponent, SideMenuModule, SliderComponent, SnackbarComponent, SnackbarService, StepperComponent, SwitchComponent, TabViewComponent, TabViewItemComponent, TableComponent, TagComponent, TextareaComponent, TextfieldComponent, TooltipComponent, VerisoftTheme, addFeatureListPage, generateFormGroup, getColumnClass };
3149
+ export { ActionButtonComponent, ActionButtonGroupComponent, BreadcrumbComponent, ButtonComponent, CalendarComponent, CheckboxComponent, ConfirmDialogComponent, DropdownButtonComponent, DropdownComponent, DynamicComponent, DynamicComponentFactoryService, FeatureListComponent, FilterComponent, FilterFieldDirective, FormFieldComponent, GenericFieldComponent, GenericFormComponent, HeaderComponent, HeaderProviderService, HttpErrorMessageInterceptor, IconComponent, Icons, InputGroupComponent, LoaderComponent, MultiselectComponent, NumberInputComponent, PageHeaderComponent, PasswordComponent, RadioButtonComponent, SectionComponent, SideMenuComponent, SideMenuModule, SliderComponent, SnackbarComponent, SnackbarService, StepperComponent, SwitchComponent, TabViewComponent, TabViewItemComponent, TableComponent, TagComponent, TextareaComponent, TextfieldComponent, TooltipComponent, VerisoftTheme, addFeatureListPage, generateFormGroup, getColumnClass };
3194
3150
  //# sourceMappingURL=verisoft-ui-primeng.mjs.map