osl-base-extended 7.6.0 → 8.0.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.6.0",
3
+ "version": "8.0.0",
4
4
  "peerDependencies": {
5
5
  "@angular/common": "^21.2.0",
6
6
  "@angular/core": "^21.2.0"
@@ -7,7 +7,7 @@ import * as i24 from '@angular/forms';
7
7
  import { FormControl } from '@angular/forms';
8
8
  import * as _angular_platform_browser from '@angular/platform-browser';
9
9
  import * as i34 from '@angular/cdk/drag-drop';
10
- import { CdkDragDrop } from '@angular/cdk/drag-drop';
10
+ import { CdkDragDrop, CdkDragStart, CdkDragEnd, CdkDragEnter, CdkDragExit } from '@angular/cdk/drag-drop';
11
11
  import * as i36 from '@angular/cdk/overlay';
12
12
  import { Overlay } from '@angular/cdk/overlay';
13
13
  import * as i23 from '@angular/common';
@@ -837,6 +837,36 @@ interface OslFormGridRowEvent {
837
837
  row: any;
838
838
  index: number;
839
839
  }
840
+ interface DragItem {
841
+ id: string;
842
+ label: string;
843
+ icon?: string;
844
+ description?: string;
845
+ data?: any;
846
+ }
847
+ interface DragColumn {
848
+ field: string;
849
+ header: string;
850
+ }
851
+ interface DragDropPayload {
852
+ item: DragItem | any;
853
+ previousIndex: number;
854
+ currentIndex: number;
855
+ previousContainer: string;
856
+ currentContainer: string;
857
+ row?: any;
858
+ column?: any;
859
+ }
860
+ interface PanelSearchEvent {
861
+ searchValue: string;
862
+ page: number;
863
+ pageSize: number;
864
+ }
865
+ interface PanelPageEvent {
866
+ page: number;
867
+ pageSize: number;
868
+ searchValue: string;
869
+ }
840
870
  declare class OslFormGrid {
841
871
  columns: OslFormGridColumn[];
842
872
  datasource: any[];
@@ -850,6 +880,42 @@ declare class OslFormGrid {
850
880
  footerColumns: OslFormGridFooterColumn[];
851
881
  rowAdd: EventEmitter<any>;
852
882
  rowDelete: EventEmitter<OslFormGridRowEvent>;
883
+ enableDragDrop: boolean;
884
+ draggingList: DragItem[];
885
+ draggingColumns: DragColumn[];
886
+ leftPanelWidth: number;
887
+ dragTitle: string;
888
+ showSearch: boolean;
889
+ allowReorder: boolean;
890
+ allowRemove: boolean;
891
+ /** 'Local' filters draggingList in the component. 'Api' emits (panelSearch) for the parent to handle. */
892
+ panelSearchType: 'Local' | 'Api';
893
+ /** Show a loading skeleton in the panel (useful in Api mode while the parent fetches data). */
894
+ panelLoading: boolean;
895
+ /** Total records available from the API (used to decide whether to show "Load More"). */
896
+ panelTotalRecords: number;
897
+ /** Number of items per page when calling the API. */
898
+ panelPageSize: number;
899
+ dragStarted: EventEmitter<DragDropPayload>;
900
+ dragEnded: EventEmitter<DragDropPayload>;
901
+ dragEntered: EventEmitter<DragDropPayload>;
902
+ dragExited: EventEmitter<DragDropPayload>;
903
+ itemDropped: EventEmitter<DragDropPayload>;
904
+ itemMoved: EventEmitter<DragDropPayload>;
905
+ itemRemoved: EventEmitter<DragDropPayload>;
906
+ itemSelected: EventEmitter<DragDropPayload>;
907
+ gridChanged: EventEmitter<any[]>;
908
+ /** Emitted (debounced 350 ms) when the user types in the panel search box and panelSearchType='Api'. */
909
+ panelSearch: EventEmitter<PanelSearchEvent>;
910
+ /** Emitted when the user clicks "Load More" in the panel. Parent should append items to draggingList. */
911
+ panelPageChange: EventEmitter<PanelPageEvent>;
912
+ isDragging: boolean;
913
+ isDraggingFromPanel: boolean;
914
+ dragSearchQuery: string;
915
+ panelCurrentPage: number;
916
+ private _panelSearchDebounce;
917
+ get filteredDraggingList(): DragItem[];
918
+ get panelHasMore(): boolean;
853
919
  get hasActions(): boolean;
854
920
  currentPage: number;
855
921
  pageSizeOptions: number[];
@@ -869,8 +935,21 @@ declare class OslFormGrid {
869
935
  isLoading(row: any, elem: elements): boolean;
870
936
  colRequired(col: OslFormGridColumn): boolean;
871
937
  onSelectChange(col: OslFormGridColumn, row: any, i: number, value: any): void;
938
+ onPanelSearchChange(value: string): void;
939
+ clearPanelSearch(): void;
940
+ loadMorePanelItems(): void;
941
+ /** Called when a panel item is dropped onto the grid overlay — always appends to end. */
942
+ onPanelDrop(event: CdkDragDrop<never[]>): void;
943
+ /** Called when a grid row is dropped within the grid — reorders only. */
944
+ onGridReorder(event: CdkDragDrop<any[]>): void;
945
+ removeGridRow(pagedIndex: number): void;
946
+ selectGridItem(row: any, pagedIndex: number): void;
947
+ onDragStartedEvent(_event: CdkDragStart, item: DragItem | any, source: string): void;
948
+ onDragEndedEvent(_event: CdkDragEnd, item: DragItem | any, source: string): void;
949
+ onDragEnteredEvent(event: CdkDragEnter, target: string): void;
950
+ onDragExitedEvent(event: CdkDragExit, target: string): void;
872
951
  static ɵfac: i0.ɵɵFactoryDeclaration<OslFormGrid, never>;
873
- static ɵcmp: i0.ɵɵComponentDeclaration<OslFormGrid, "osl-form-grid", never, { "columns": { "alias": "columns"; "required": false; }; "datasource": { "alias": "datasource"; "required": false; }; "isPaginated": { "alias": "isPaginated"; "required": false; }; "pageSize": { "alias": "pageSize"; "required": false; }; "canAdd": { "alias": "canAdd"; "required": false; }; "canDelete": { "alias": "canDelete"; "required": false; }; "loading": { "alias": "loading"; "required": false; }; "tableHeight": { "alias": "tableHeight"; "required": false; }; "footerColumns": { "alias": "footerColumns"; "required": false; }; }, { "datasourceChange": "datasourceChange"; "rowAdd": "rowAdd"; "rowDelete": "rowDelete"; }, never, never, false, never>;
952
+ static ɵcmp: i0.ɵɵComponentDeclaration<OslFormGrid, "osl-form-grid", never, { "columns": { "alias": "columns"; "required": false; }; "datasource": { "alias": "datasource"; "required": false; }; "isPaginated": { "alias": "isPaginated"; "required": false; }; "pageSize": { "alias": "pageSize"; "required": false; }; "canAdd": { "alias": "canAdd"; "required": false; }; "canDelete": { "alias": "canDelete"; "required": false; }; "loading": { "alias": "loading"; "required": false; }; "tableHeight": { "alias": "tableHeight"; "required": false; }; "footerColumns": { "alias": "footerColumns"; "required": false; }; "enableDragDrop": { "alias": "enableDragDrop"; "required": false; }; "draggingList": { "alias": "draggingList"; "required": false; }; "draggingColumns": { "alias": "draggingColumns"; "required": false; }; "leftPanelWidth": { "alias": "leftPanelWidth"; "required": false; }; "dragTitle": { "alias": "dragTitle"; "required": false; }; "showSearch": { "alias": "showSearch"; "required": false; }; "allowReorder": { "alias": "allowReorder"; "required": false; }; "allowRemove": { "alias": "allowRemove"; "required": false; }; "panelSearchType": { "alias": "panelSearchType"; "required": false; }; "panelLoading": { "alias": "panelLoading"; "required": false; }; "panelTotalRecords": { "alias": "panelTotalRecords"; "required": false; }; "panelPageSize": { "alias": "panelPageSize"; "required": false; }; }, { "datasourceChange": "datasourceChange"; "rowAdd": "rowAdd"; "rowDelete": "rowDelete"; "dragStarted": "dragStarted"; "dragEnded": "dragEnded"; "dragEntered": "dragEntered"; "dragExited": "dragExited"; "itemDropped": "itemDropped"; "itemMoved": "itemMoved"; "itemRemoved": "itemRemoved"; "itemSelected": "itemSelected"; "gridChanged": "gridChanged"; "panelSearch": "panelSearch"; "panelPageChange": "panelPageChange"; }, never, never, false, never>;
874
953
  }
875
954
 
876
955
  interface oslListerData {
@@ -2326,4 +2405,4 @@ declare class ErrorDialog {
2326
2405
  }
2327
2406
 
2328
2407
  export { array_util_d as ArrayUtil, date_util_d as DateUtil, DeleteConfirmation, DeleteConfirmationData, Dialog, DialogWrapper, DirtyStateService, DynamicForm, ErrorDialog, FormStructureModule, Httpbase, number_util_d as NumberUtil, object_util_d as ObjectUtil, OslAutocomplete, OslAutocompleteLister, OslBaseExtended, OslButton, OslCheckbox, OslDatepicker, OslDatetimepicker, OslDocumentUploader, OslFileUpload, OslFormGrid, OslGrid, OslMenu, OslMenuTriggerFor, OslRadio, OslReportForm, OslReportGrid, OslSearchbar, OslSelect, OslSetup, OslSkeletonDirective, OslSkeletonModule, OslSkeletonThemeService, OslSlideToggle, OslTooltipDirective, OslUserLog, Oslinput, Osltextarea, storage_util_d as StorageUtil, string_util_d as StringUtil, UnsavedChangesDialog, validation_util_d as ValidationUtil, baseComponent, unsavedChangesGuard };
2329
- export type { ButtonSize, ButtonVariant, DateInputType, ErrorDialogData, FlatRow, HttpResponse, InputType, InternalColumn, OslDisplayType, OslFileValue, OslFormGridColumn, OslFormGridFooterColumn, OslFormGridRowEvent, OslGridColumn, OslMenuAction, OslMenuPosition, OslPageEvent, OslPdfConfig, OslReportColumn, OslReportPageEvent, OslReportSortEvent, OslSavedDocument, OslSetupSaveEvent, OslSortEvent, PasswordOptions, ReportGenerateType, SkeletonAnimation, SkeletonTheme, SkeletonType, TextareaResize, UnsavedChangesDialogData, UserLogMeta, elements, myParams, oslListerData };
2408
+ export type { ButtonSize, ButtonVariant, DateInputType, DragColumn, DragDropPayload, DragItem, ErrorDialogData, FlatRow, HttpResponse, InputType, InternalColumn, OslDisplayType, OslFileValue, OslFormGridColumn, OslFormGridFooterColumn, OslFormGridRowEvent, OslGridColumn, OslMenuAction, OslMenuPosition, OslPageEvent, OslPdfConfig, OslReportColumn, OslReportPageEvent, OslReportSortEvent, OslSavedDocument, OslSetupSaveEvent, OslSortEvent, PanelPageEvent, PanelSearchEvent, PasswordOptions, ReportGenerateType, SkeletonAnimation, SkeletonTheme, SkeletonType, TextareaResize, UnsavedChangesDialogData, UserLogMeta, elements, myParams, oslListerData };