osl-base-extended 7.0.0 → 7.1.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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "osl-base-extended",
3
- "version": "7.0.0",
3
+ "version": "7.1.0",
4
4
  "peerDependencies": {
5
5
  "@angular/common": "^21.2.0",
6
6
  "@angular/core": "^21.2.0"
@@ -25,4 +25,4 @@
25
25
  "module": "fesm2022/osl-base-extended.mjs",
26
26
  "typings": "types/osl-base-extended.d.ts",
27
27
  "type": "module"
28
- }
28
+ }
@@ -5,11 +5,9 @@ import { MatDialogRef } from '@angular/material/dialog';
5
5
  import { HttpHeaders, HttpClient } from '@angular/common/http';
6
6
  import * as i24 from '@angular/forms';
7
7
  import { FormControl } from '@angular/forms';
8
- import * as i34 from '@angular/cdk/scrolling';
9
- import { CdkVirtualScrollViewport } from '@angular/cdk/scrolling';
10
- import * as i35 from '@angular/cdk/drag-drop';
8
+ import * as i34 from '@angular/cdk/drag-drop';
11
9
  import { CdkDragDrop } from '@angular/cdk/drag-drop';
12
- import * as i37 from '@angular/cdk/overlay';
10
+ import * as i36 from '@angular/cdk/overlay';
13
11
  import { Overlay } from '@angular/cdk/overlay';
14
12
  import * as i23 from '@angular/common';
15
13
  import * as i25 from '@angular/material/form-field';
@@ -19,9 +17,9 @@ import * as i29 from '@angular/material/button';
19
17
  import * as rxjs from 'rxjs';
20
18
  import * as i32 from '@angular/material/datepicker';
21
19
  import * as i33 from '@angular/material/menu';
22
- import * as i36 from '@angular/material/tooltip';
23
- import * as i38 from '@angular/cdk/portal';
24
- import * as i39 from '@ngxmc/datetime-picker';
20
+ import * as i35 from '@angular/material/tooltip';
21
+ import * as i37 from '@angular/cdk/portal';
22
+ import * as i38 from '@ngxmc/datetime-picker';
25
23
  import { CanDeactivateFn } from '@angular/router';
26
24
 
27
25
  declare class OslBaseExtended {
@@ -597,6 +595,7 @@ interface OslSetupState {
597
595
 
598
596
  type OslDisplayType = 'date' | 'datetime' | 'time' | 'link' | 'customDateFormat' | 'boolean';
599
597
  interface OslGridColumn {
598
+ col?: number;
600
599
  key: string;
601
600
  label: string;
602
601
  enums?: {
@@ -723,7 +722,6 @@ declare class OslSetup implements OnInit, OnChanges, AfterViewInit {
723
722
  customFooterWrapperTpl: TemplateRef<any>;
724
723
  searchbar?: OslSearchbar;
725
724
  gridRef: OslGrid | undefined;
726
- cardViewport?: CdkVirtualScrollViewport;
727
725
  title: string | undefined;
728
726
  columns: OslGridColumn[];
729
727
  datasource: any[];
@@ -748,12 +746,12 @@ declare class OslSetup implements OnInit, OnChanges, AfterViewInit {
748
746
  stateKey: string;
749
747
  primaryKey: string;
750
748
  onSave: ((row?: any) => boolean | undefined) | undefined;
751
- /** Fixed page size used for card view infinite scroll. Defaults to pageSize. */
749
+ /** Fixed page size used for card view pagination. Defaults to pageSize. */
752
750
  cardPageSize?: number;
753
751
  /** Optional custom card template. Context: { $implicit: row, index: number } */
754
752
  cardTemplate?: TemplateRef<any>;
755
- /** Height (px) of each card row used by the virtual scroll engine. Default: 70. */
756
- cardHeightForVirtualscroll: number;
753
+ /** Bootstrap col-* class number for each field in the card body. Default: 3 (4 per row). */
754
+ cardCol: number;
757
755
  onSearch: EventEmitter<string>;
758
756
  onAdd: EventEmitter<void>;
759
757
  onEdit: EventEmitter<any>;
@@ -767,17 +765,13 @@ declare class OslSetup implements OnInit, OnChanges, AfterViewInit {
767
765
  dialogMode: 'add' | 'edit';
768
766
  _dialogRef: MatDialogRef<any> | null;
769
767
  viewMode: 'table' | 'card';
770
- cardDatasource: any[];
771
- cardPage: number;
772
- allCardsLoaded: boolean;
768
+ cardCurrentPage: number;
769
+ cardPageSizeOptions: number[];
773
770
  cardOpenMenuIndex: number | null;
774
771
  cardMenuPosition: {
775
772
  top: number;
776
773
  left: number;
777
774
  };
778
- private _cardExpectedPage;
779
- private _cardRestoreTargetPage;
780
- private _needsInitialCardLoad;
781
775
  onDocumentClick(): void;
782
776
  get hasForm(): boolean;
783
777
  get _effectiveCardPageSize(): number;
@@ -785,19 +779,22 @@ declare class OslSetup implements OnInit, OnChanges, AfterViewInit {
785
779
  get cardTitleColumn(): OslGridColumn | undefined;
786
780
  get cardBodyColumns(): OslGridColumn[];
787
781
  get skeletonCardRows(): number[];
788
- trackByCard: (_: number, row: any) => any;
782
+ get _cardTotal(): number;
783
+ get cardTotalPages(): number;
784
+ get cardPagedData(): any[];
785
+ get cardPageNumbers(): number[];
786
+ get cardStartRecord(): number;
787
+ get cardEndRecord(): number;
788
+ cardGoToPage(page: number): void;
789
+ cardOnPageSizeChange(size: number): void;
789
790
  ngOnInit(): void;
790
791
  ngAfterViewInit(): void;
791
792
  ngOnChanges(changes: SimpleChanges): void;
792
793
  private _getViewKey;
793
794
  private _loadViewMode;
794
795
  toggleView(mode: 'table' | 'card'): void;
795
- private _startCardLoad;
796
- private _loadCardPageLocally;
797
- loadMoreCards(): void;
798
- onVirtualScrollIndexChange(firstIndex: number): void;
799
- isHighlightedCard(row: any): boolean;
800
796
  toggleCardMenu(index: number, event: Event): void;
797
+ isHighlightedCard(row: any): boolean;
801
798
  getCellValue(row: any, col: OslGridColumn): string;
802
799
  getCardInitial(row: any): string;
803
800
  hasVisibleActions(row: any): boolean;
@@ -812,7 +809,7 @@ declare class OslSetup implements OnInit, OnChanges, AfterViewInit {
812
809
  saveDialog(): Promise<void>;
813
810
  private _openDialog;
814
811
  static ɵfac: i0.ɵɵFactoryDeclaration<OslSetup, never>;
815
- static ɵcmp: i0.ɵɵComponentDeclaration<OslSetup, "osl-setup", never, { "title": { "alias": "title"; "required": false; }; "columns": { "alias": "columns"; "required": false; }; "datasource": { "alias": "datasource"; "required": false; }; "isPaginated": { "alias": "isPaginated"; "required": false; }; "pageSize": { "alias": "pageSize"; "required": false; }; "autoMode": { "alias": "autoMode"; "required": false; }; "tableHeight": { "alias": "tableHeight"; "required": false; }; "totalRecords": { "alias": "totalRecords"; "required": false; }; "loading": { "alias": "loading"; "required": false; }; "dialogWidth": { "alias": "dialogWidth"; "required": false; }; "formElements": { "alias": "formElements"; "required": false; }; "beforeDisplay": { "alias": "beforeDisplay"; "required": false; }; "onAddEditFn": { "alias": "onAddEditFn"; "required": false; }; "isLister": { "alias": "isLister"; "required": false; }; "canAdd": { "alias": "canAdd"; "required": false; }; "canEdit": { "alias": "canEdit"; "required": false; }; "canDelete": { "alias": "canDelete"; "required": false; }; "moreMenuActions": { "alias": "moreMenuActions"; "required": false; }; "customFormFooter": { "alias": "customFormFooter"; "required": false; }; "customHeaderTemp": { "alias": "customHeaderTemp"; "required": false; }; "partialCustomHeaderTemp": { "alias": "partialCustomHeaderTemp"; "required": false; }; "stateKey": { "alias": "stateKey"; "required": false; }; "primaryKey": { "alias": "primaryKey"; "required": false; }; "onSave": { "alias": "onSave"; "required": false; }; "cardPageSize": { "alias": "cardPageSize"; "required": false; }; "cardTemplate": { "alias": "cardTemplate"; "required": false; }; "cardHeightForVirtualscroll": { "alias": "cardHeightForVirtualscroll"; "required": false; }; }, { "onSearch": "onSearch"; "onAdd": "onAdd"; "onEdit": "onEdit"; "onDelete": "onDelete"; "pageChange": "pageChange"; "pageSizeChange": "pageSizeChange"; "sortChange": "sortChange"; "onRowClick": "onRowClick"; "onStateRestored": "onStateRestored"; }, never, never, false, never>;
812
+ static ɵcmp: i0.ɵɵComponentDeclaration<OslSetup, "osl-setup", never, { "title": { "alias": "title"; "required": false; }; "columns": { "alias": "columns"; "required": false; }; "datasource": { "alias": "datasource"; "required": false; }; "isPaginated": { "alias": "isPaginated"; "required": false; }; "pageSize": { "alias": "pageSize"; "required": false; }; "autoMode": { "alias": "autoMode"; "required": false; }; "tableHeight": { "alias": "tableHeight"; "required": false; }; "totalRecords": { "alias": "totalRecords"; "required": false; }; "loading": { "alias": "loading"; "required": false; }; "dialogWidth": { "alias": "dialogWidth"; "required": false; }; "formElements": { "alias": "formElements"; "required": false; }; "beforeDisplay": { "alias": "beforeDisplay"; "required": false; }; "onAddEditFn": { "alias": "onAddEditFn"; "required": false; }; "isLister": { "alias": "isLister"; "required": false; }; "canAdd": { "alias": "canAdd"; "required": false; }; "canEdit": { "alias": "canEdit"; "required": false; }; "canDelete": { "alias": "canDelete"; "required": false; }; "moreMenuActions": { "alias": "moreMenuActions"; "required": false; }; "customFormFooter": { "alias": "customFormFooter"; "required": false; }; "customHeaderTemp": { "alias": "customHeaderTemp"; "required": false; }; "partialCustomHeaderTemp": { "alias": "partialCustomHeaderTemp"; "required": false; }; "stateKey": { "alias": "stateKey"; "required": false; }; "primaryKey": { "alias": "primaryKey"; "required": false; }; "onSave": { "alias": "onSave"; "required": false; }; "cardPageSize": { "alias": "cardPageSize"; "required": false; }; "cardTemplate": { "alias": "cardTemplate"; "required": false; }; "cardCol": { "alias": "cardCol"; "required": false; }; }, { "onSearch": "onSearch"; "onAdd": "onAdd"; "onEdit": "onEdit"; "onDelete": "onDelete"; "pageChange": "pageChange"; "pageSizeChange": "pageSizeChange"; "sortChange": "sortChange"; "onRowClick": "onRowClick"; "onStateRestored": "onStateRestored"; }, never, never, false, never>;
816
813
  }
817
814
 
818
815
  interface OslFormGridColumn {
@@ -1412,7 +1409,7 @@ declare class OslTooltipDirective implements OnDestroy {
1412
1409
 
1413
1410
  declare class FormStructureModule {
1414
1411
  static ɵfac: i0.ɵɵFactoryDeclaration<FormStructureModule, never>;
1415
- static ɵmod: i0.ɵɵNgModuleDeclaration<FormStructureModule, [typeof DynamicForm, typeof Oslinput, typeof Osltextarea, typeof OslSelect, typeof OslRadio, typeof OslSlideToggle, typeof OslAutocomplete, typeof OslFileUpload, typeof OslDatepicker, typeof OslDatetimepicker, typeof OslCheckbox, typeof OslButton, typeof OslSetup, typeof OslSearchbar, typeof OslGrid, typeof OslFormGrid, typeof OslAutocompleteLister, typeof OslReportGrid, typeof OslReportForm, typeof OslUserLog, typeof OslMenu, typeof OslMenuTriggerFor, typeof OslDocumentUploader], [typeof i23.NgTemplateOutlet, typeof i23.NgStyle, typeof i23.NgClass, typeof i23.DatePipe, typeof i23.DecimalPipe, typeof i23.UpperCasePipe, typeof i24.FormsModule, typeof i24.ReactiveFormsModule, typeof i25.MatFormFieldModule, typeof i26.MatInputModule, typeof i25.MatHint, typeof i27.MatIconModule, typeof i28.MatDialogModule, typeof i29.MatButtonModule, typeof OslSkeletonModule, typeof OslTooltipDirective, typeof i32.MatDatepickerModule, typeof i33.MatMenuModule, typeof i34.ScrollingModule, typeof i35.DragDropModule, typeof i36.MatTooltipModule, typeof i37.OverlayModule, typeof i38.PortalModule, typeof i39.NgxMatDatetimepicker, typeof i39.NgxMatDatepickerInput], [typeof DynamicForm, typeof OslSetup, typeof OslGrid, typeof OslFormGrid, typeof Oslinput, typeof OslUserLog, typeof Osltextarea, typeof OslSelect, typeof OslRadio, typeof OslSlideToggle, typeof OslAutocomplete, typeof OslFileUpload, typeof OslDatepicker, typeof OslDatetimepicker, typeof OslCheckbox, typeof OslButton, typeof OslSetup, typeof OslSearchbar, typeof OslAutocompleteLister, typeof OslReportGrid, typeof OslReportForm, typeof OslMenu, typeof OslMenuTriggerFor, typeof OslDocumentUploader, typeof OslTooltipDirective]>;
1412
+ static ɵmod: i0.ɵɵNgModuleDeclaration<FormStructureModule, [typeof DynamicForm, typeof Oslinput, typeof Osltextarea, typeof OslSelect, typeof OslRadio, typeof OslSlideToggle, typeof OslAutocomplete, typeof OslFileUpload, typeof OslDatepicker, typeof OslDatetimepicker, typeof OslCheckbox, typeof OslButton, typeof OslSetup, typeof OslSearchbar, typeof OslGrid, typeof OslFormGrid, typeof OslAutocompleteLister, typeof OslReportGrid, typeof OslReportForm, typeof OslUserLog, typeof OslMenu, typeof OslMenuTriggerFor, typeof OslDocumentUploader], [typeof i23.NgTemplateOutlet, typeof i23.NgStyle, typeof i23.NgClass, typeof i23.DatePipe, typeof i23.DecimalPipe, typeof i23.UpperCasePipe, typeof i24.FormsModule, typeof i24.ReactiveFormsModule, typeof i25.MatFormFieldModule, typeof i26.MatInputModule, typeof i25.MatHint, typeof i27.MatIconModule, typeof i28.MatDialogModule, typeof i29.MatButtonModule, typeof OslSkeletonModule, typeof OslTooltipDirective, typeof i32.MatDatepickerModule, typeof i33.MatMenuModule, typeof i34.DragDropModule, typeof i35.MatTooltipModule, typeof i36.OverlayModule, typeof i37.PortalModule, typeof i38.NgxMatDatetimepicker, typeof i38.NgxMatDatepickerInput], [typeof DynamicForm, typeof OslSetup, typeof OslGrid, typeof OslFormGrid, typeof Oslinput, typeof OslUserLog, typeof Osltextarea, typeof OslSelect, typeof OslRadio, typeof OslSlideToggle, typeof OslAutocomplete, typeof OslFileUpload, typeof OslDatepicker, typeof OslDatetimepicker, typeof OslCheckbox, typeof OslButton, typeof OslSetup, typeof OslSearchbar, typeof OslAutocompleteLister, typeof OslReportGrid, typeof OslReportForm, typeof OslMenu, typeof OslMenuTriggerFor, typeof OslDocumentUploader, typeof OslTooltipDirective]>;
1416
1413
  static ɵinj: i0.ɵɵInjectorDeclaration<FormStructureModule>;
1417
1414
  }
1418
1415