cloud-ide-element 1.0.66 → 1.0.68

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/index.d.ts CHANGED
@@ -546,10 +546,12 @@ interface FileUploadData {
546
546
  tags?: string[];
547
547
  /** Status of the file (e.g., 'active', 'pending', 'archived') */
548
548
  fileStatus?: "file_manager_file_status_active";
549
+ /** Group ID for multiple file uploads */
550
+ groupId?: string;
549
551
  /** Allow additional properties with proper typing */
550
552
  [key: string]: string | number | string[] | undefined;
551
553
  }
552
- declare class CideEleFileInputComponent implements ControlValueAccessor, OnDestroy, OnInit, Validator {
554
+ declare class CideEleFileInputComponent implements ControlValueAccessor, OnDestroy, OnInit, OnChanges, Validator {
553
555
  private readonly fileManagerService;
554
556
  private readonly notificationService;
555
557
  private readonly elementService;
@@ -570,6 +572,7 @@ declare class CideEleFileInputComponent implements ControlValueAccessor, OnDestr
570
572
  placeholderIcon: string;
571
573
  autoUpload: boolean;
572
574
  uploadData: FileUploadData;
575
+ multipleFileUpload: boolean;
573
576
  fileChange: EventEmitter<FileList | null>;
574
577
  uploadSuccess: EventEmitter<string>;
575
578
  uploadError: EventEmitter<string>;
@@ -590,15 +593,17 @@ declare class CideEleFileInputComponent implements ControlValueAccessor, OnDestr
590
593
  readonly placeholderIconSignal: _angular_core.WritableSignal<string>;
591
594
  readonly autoUploadSignal: _angular_core.WritableSignal<boolean>;
592
595
  readonly uploadDataSignal: _angular_core.WritableSignal<FileUploadData>;
596
+ readonly multipleFileUploadSignal: _angular_core.WritableSignal<boolean>;
593
597
  readonly id: _angular_core.WritableSignal<string>;
594
598
  readonly isUploading: _angular_core.WritableSignal<boolean>;
595
599
  readonly uploadProgress: _angular_core.WritableSignal<number>;
596
- readonly uploadStatus: _angular_core.WritableSignal<"error" | "start" | "success" | "uploading" | "idle">;
600
+ readonly uploadStatus: _angular_core.WritableSignal<"uploading" | "error" | "idle" | "start" | "success">;
597
601
  readonly files: _angular_core.WritableSignal<FileList | null>;
598
602
  readonly fileNames: _angular_core.WritableSignal<string[]>;
599
603
  readonly previewUrls: _angular_core.WritableSignal<string[]>;
600
604
  readonly uploadNotificationId: _angular_core.WritableSignal<string | null>;
601
605
  readonly isDragOver: _angular_core.WritableSignal<boolean>;
606
+ readonly groupId: _angular_core.WritableSignal<string | null>;
602
607
  readonly hasFiles: _angular_core.Signal<boolean>;
603
608
  readonly canUpload: _angular_core.Signal<boolean>;
604
609
  readonly isInErrorState: _angular_core.Signal<boolean>;
@@ -614,6 +619,7 @@ declare class CideEleFileInputComponent implements ControlValueAccessor, OnDestr
614
619
  readonly isImagePreviewAvailable: _angular_core.Signal<boolean>;
615
620
  constructor();
616
621
  ngOnInit(): void;
622
+ ngOnChanges(changes: SimpleChanges): void;
617
623
  writeValue(value: FileList | string | null): void;
618
624
  registerOnChange(fn: (value: FileList | string | null) => void): void;
619
625
  registerOnTouched(fn: () => void): void;
@@ -622,6 +628,19 @@ declare class CideEleFileInputComponent implements ControlValueAccessor, OnDestr
622
628
  onFileSelected(event: Event): void;
623
629
  clearFiles(): void;
624
630
  private uploadFile;
631
+ /**
632
+ * Upload multiple files with group ID support
633
+ * Generates a group ID if not provided and uploads all files with the same group ID
634
+ */
635
+ private uploadMultipleFiles;
636
+ /**
637
+ * Start uploading multiple files with the provided group ID
638
+ */
639
+ private startMultipleFileUpload;
640
+ /**
641
+ * Handle completion of multiple file upload
642
+ */
643
+ private handleMultipleUploadComplete;
625
644
  private generatePreviews;
626
645
  private clearPreviews;
627
646
  private isImageFile;
@@ -657,7 +676,7 @@ declare class CideEleFileInputComponent implements ControlValueAccessor, OnDestr
657
676
  multiple: boolean;
658
677
  showPreview: boolean;
659
678
  autoUpload: boolean;
660
- uploadStatus: "error" | "start" | "success" | "uploading" | "idle";
679
+ uploadStatus: "uploading" | "error" | "idle" | "start" | "success";
661
680
  isUploading: boolean;
662
681
  uploadProgress: number;
663
682
  files: {
@@ -680,7 +699,7 @@ declare class CideEleFileInputComponent implements ControlValueAccessor, OnDestr
680
699
  getControlData(): Promise<void>;
681
700
  validate(control: AbstractControl): ValidationErrors | null;
682
701
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<CideEleFileInputComponent, never>;
683
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<CideEleFileInputComponent, "cide-ele-file-input", never, { "label": { "alias": "label"; "required": false; }; "accept": { "alias": "accept"; "required": false; }; "multiple": { "alias": "multiple"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "required": { "alias": "required"; "required": false; }; "helperText": { "alias": "helperText"; "required": false; }; "errorText": { "alias": "errorText"; "required": false; }; "showPreview": { "alias": "showPreview"; "required": false; }; "previewWidth": { "alias": "previewWidth"; "required": false; }; "previewHeight": { "alias": "previewHeight"; "required": false; }; "previewBoxMode": { "alias": "previewBoxMode"; "required": false; }; "showFileName": { "alias": "showFileName"; "required": false; }; "placeholderText": { "alias": "placeholderText"; "required": false; }; "placeholderIcon": { "alias": "placeholderIcon"; "required": false; }; "autoUpload": { "alias": "autoUpload"; "required": false; }; "uploadData": { "alias": "uploadData"; "required": false; }; }, { "fileChange": "fileChange"; "uploadSuccess": "uploadSuccess"; "uploadError": "uploadError"; "uploadProgressChange": "uploadProgressChange"; }, never, never, true, never>;
702
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<CideEleFileInputComponent, "cide-ele-file-input", never, { "label": { "alias": "label"; "required": false; }; "accept": { "alias": "accept"; "required": false; }; "multiple": { "alias": "multiple"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "required": { "alias": "required"; "required": false; }; "helperText": { "alias": "helperText"; "required": false; }; "errorText": { "alias": "errorText"; "required": false; }; "showPreview": { "alias": "showPreview"; "required": false; }; "previewWidth": { "alias": "previewWidth"; "required": false; }; "previewHeight": { "alias": "previewHeight"; "required": false; }; "previewBoxMode": { "alias": "previewBoxMode"; "required": false; }; "showFileName": { "alias": "showFileName"; "required": false; }; "placeholderText": { "alias": "placeholderText"; "required": false; }; "placeholderIcon": { "alias": "placeholderIcon"; "required": false; }; "autoUpload": { "alias": "autoUpload"; "required": false; }; "uploadData": { "alias": "uploadData"; "required": false; }; "multipleFileUpload": { "alias": "multipleFileUpload"; "required": false; }; }, { "fileChange": "fileChange"; "uploadSuccess": "uploadSuccess"; "uploadError": "uploadError"; "uploadProgressChange": "uploadProgressChange"; }, never, never, true, never>;
684
703
  }
685
704
 
686
705
  declare class CideTextareaComponent implements ControlValueAccessor, Validator, OnInit, OnChanges {
@@ -1071,6 +1090,14 @@ declare class CideEleDataGridComponent<T = Record<string, unknown>> implements O
1071
1090
  */
1072
1091
  private refreshOrderTracking;
1073
1092
  private applyFilters;
1093
+ /**
1094
+ * Preserve tree expansion state from current data
1095
+ */
1096
+ private preserveTreeExpansionState;
1097
+ /**
1098
+ * Apply preserved tree expansion state to new data
1099
+ */
1100
+ private applyTreeExpansionState;
1074
1101
  /**
1075
1102
  * Transform flat data to tree structure based on foreign key relationships
1076
1103
  */
@@ -1174,20 +1201,29 @@ declare class CideEleDataGridComponent<T = Record<string, unknown>> implements O
1174
1201
  private checkIfOrderChanged;
1175
1202
  /**
1176
1203
  * Reset the row order map to original positions (for reset action)
1204
+ * Includes all items from hierarchical structure (parents and children)
1177
1205
  */
1178
1206
  private resetRowOrderMap;
1179
1207
  /**
1180
1208
  * Update the row order map baseline to current positions (for save action)
1209
+ * Includes all items from hierarchical structure (parents and children)
1181
1210
  */
1182
1211
  private updateRowOrderMapBaseline;
1183
1212
  /**
1184
1213
  * Get the current order array from the row order map
1214
+ * Includes all items from hierarchical structure (parents and children)
1185
1215
  */
1186
1216
  private getCurrentOrderFromMap;
1187
1217
  /**
1188
1218
  * Get only the items that have actually changed order
1219
+ * Includes all items from hierarchical structure (parents and children)
1189
1220
  */
1190
1221
  private getChangedOrders;
1222
+ /**
1223
+ * Flatten all data for order tracking (includes all hierarchical children)
1224
+ * This method ensures that all items (parents and children) are included in order tracking
1225
+ */
1226
+ private flattenAllDataForOrderTracking;
1191
1227
  /**
1192
1228
  * Update local data order for visual reordering (LOCAL ONLY)
1193
1229
  */
@@ -1543,6 +1579,8 @@ interface ICoreCyfm {
1543
1579
  cyfm_tags?: string[];
1544
1580
  cyfm_version?: number;
1545
1581
  cyfm_file_status_sygmt?: string;
1582
+ cyfm_group_id?: string;
1583
+ cyfm_ismultiple?: boolean;
1546
1584
  cyfm_isactive?: boolean;
1547
1585
  }
1548
1586
  interface ICoreFileManager extends ICoreCyfm {
@@ -1557,6 +1595,8 @@ interface ICoreFileManager extends ICoreCyfm {
1557
1595
  cyfm_tags: string[];
1558
1596
  cyfm_version: number;
1559
1597
  cyfm_file_status_sygmt: string;
1598
+ cyfm_group_id?: string;
1599
+ cyfm_ismultiple?: boolean;
1560
1600
  cyfm_isactive: boolean;
1561
1601
  }
1562
1602
  interface controllerResponse {
@@ -1594,6 +1634,7 @@ declare class ICoreCyfmSave implements ICoreCyfm {
1594
1634
  cyfm_tags?: string[];
1595
1635
  cyfm_version?: number;
1596
1636
  cyfm_file_status_sygmt?: string;
1637
+ cyfm_group_id?: string;
1597
1638
  cyfm_isactive?: boolean;
1598
1639
  cyfm_file_base64: string;
1599
1640
  cyfm_temp_unique_id: string;
@@ -1707,6 +1748,7 @@ interface FileUploadOptions {
1707
1748
  permissions?: string[];
1708
1749
  tags?: string[];
1709
1750
  fileStatus?: string;
1751
+ groupId?: string;
1710
1752
  retryAttempts?: number;
1711
1753
  timeout?: number;
1712
1754
  [key: string]: string | number | string[] | undefined;
@@ -1727,11 +1769,13 @@ declare class CideEleFileManagerService {
1727
1769
  private readonly http;
1728
1770
  private readonly destroyRef;
1729
1771
  private readonly _baseUrl;
1772
+ private readonly _userId;
1730
1773
  private readonly _isUploading;
1731
1774
  private readonly _uploadQueue;
1732
1775
  private readonly _activeUploads;
1733
1776
  private readonly _error;
1734
1777
  readonly baseUrl: _angular_core.Signal<string>;
1778
+ readonly userId: _angular_core.Signal<string>;
1735
1779
  readonly isUploading: _angular_core.Signal<boolean>;
1736
1780
  readonly uploadQueue: _angular_core.Signal<string[]>;
1737
1781
  readonly activeUploads: _angular_core.Signal<Map<string, UploadProgress>>;
@@ -1760,6 +1804,20 @@ declare class CideEleFileManagerService {
1760
1804
  * @param url The base URL for the API
1761
1805
  */
1762
1806
  setBaseUrl(url: string): void;
1807
+ /**
1808
+ * Set the user ID for file uploads
1809
+ * Angular 20: Using signal-based state management
1810
+ * @param userId The user ID to associate with uploaded files
1811
+ */
1812
+ setUserId(userId: string): void;
1813
+ /**
1814
+ * Generate Object ID for group uploads
1815
+ * Calls the backend API to generate a unique ObjectId for grouping multiple files
1816
+ * @returns Observable with the generated ObjectId
1817
+ */
1818
+ generateObjectId(): Observable<{
1819
+ objectId: string;
1820
+ }>;
1763
1821
  /**
1764
1822
  * Angular 20: Helper methods for state management
1765
1823
  */
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "cloud-ide-element",
3
- "version": "1.0.66",
3
+ "version": "1.0.68",
4
4
  "peerDependencies": {
5
5
  "@angular/common": "^20.1.0",
6
6
  "@angular/core": "^20.1.0"