@noatgnu/cupcake-vanilla 1.3.16 → 1.3.18

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": "@noatgnu/cupcake-vanilla",
3
- "version": "1.3.16",
3
+ "version": "1.3.18",
4
4
  "description": "An extension for cupcake-core that provides additional api and interfaces for facility to manage and compose metadata.",
5
5
  "author": "Toan Phung",
6
6
  "license": "MIT",
@@ -1,7 +1,7 @@
1
1
  import * as _angular_core from '@angular/core';
2
- import { OnInit, EventEmitter, OnChanges, SimpleChanges, OnDestroy, ElementRef, AfterViewInit, Renderer2 } from '@angular/core';
2
+ import { OnInit, EventEmitter, OnChanges, SimpleChanges, Signal, OnDestroy, ElementRef, AfterViewInit, Renderer2 } from '@angular/core';
3
3
  import { Observable, OperatorFunction } from 'rxjs';
4
- import { BaseApiService, NotificationService as NotificationService$1, AsyncTaskQueryParams, PaginatedResponse as PaginatedResponse$1, AsyncTaskStatus, DownloadUrlResponse, MetadataExportRequest, AsyncTaskCreateResponse, BulkExportRequest, BulkExcelExportRequest, MetadataImportRequest, ValidationSchema, MetadataValidationRequest, SdrfFileValidationRequest, ChunkedImportRequest, WebSocketService, WebSocketMessage, DesktopRuntime, User, AuthService, LabGroupService, LabGroup, MetadataValidationConfig, TaskType, TaskStatus, LabGroupQueryResponse, ToastService, ResourceVisibility } from '@noatgnu/cupcake-core';
4
+ import { BaseApiService, NotificationService as NotificationService$1, AsyncTaskQueryParams, PaginatedResponse as PaginatedResponse$1, AsyncTaskStatus, DownloadUrlResponse, MetadataExportRequest, AsyncTaskCreateResponse, BulkExportRequest, BulkExcelExportRequest, MetadataImportRequest, ValidationSchema, MetadataValidationRequest, SdrfFileValidationRequest, ChunkedImportRequest, WebSocketService, WebSocketMessage, DesktopRuntime, User, AuthService, LabGroupService, LabGroup, MetadataValidationConfig, ConfirmDialogService, TaskType, TaskStatus, LabGroupQueryResponse, ToastService, ResourceVisibility } from '@noatgnu/cupcake-core';
5
5
  export { WebSocketMessage } from '@noatgnu/cupcake-core';
6
6
  import * as _angular_forms from '@angular/forms';
7
7
  import { FormGroup, FormBuilder } from '@angular/forms';
@@ -2334,7 +2334,7 @@ declare class SdrfAgeInput implements OnInit {
2334
2334
  private fb;
2335
2335
  private sdrfSyntax;
2336
2336
  ageForm: FormGroup;
2337
- isRange: boolean;
2337
+ isRange: _angular_core.WritableSignal<boolean>;
2338
2338
  constructor();
2339
2339
  ngOnInit(): void;
2340
2340
  private parseAndSetValue;
@@ -2509,6 +2509,7 @@ declare class MetadataValueEditModal implements OnInit {
2509
2509
  sampleIndices: number[];
2510
2510
  }>;
2511
2511
  editForm: FormGroup;
2512
+ editFormInvalid: Signal<boolean>;
2512
2513
  isLoading: _angular_core.WritableSignal<boolean>;
2513
2514
  isLoadingSuggestions: _angular_core.WritableSignal<boolean>;
2514
2515
  searchType: _angular_core.WritableSignal<"icontains" | "istartswith">;
@@ -2641,6 +2642,7 @@ declare class MetadataValidationModal implements OnInit {
2641
2642
  skip_ontology: _angular_forms.FormControl<boolean | null>;
2642
2643
  include_pools: _angular_forms.FormControl<boolean | null>;
2643
2644
  }>;
2645
+ readonly validationFormInvalid: Signal<boolean>;
2644
2646
  ngOnInit(): void;
2645
2647
  loadAvailableSchemas(): void;
2646
2648
  toggleSchema(schemaName: string): void;
@@ -2658,14 +2660,16 @@ declare class MetadataTableEditModal implements OnInit {
2658
2660
  private modalService;
2659
2661
  private metadataTableService;
2660
2662
  private labGroupService;
2663
+ private confirmDialog;
2661
2664
  table?: MetadataTable;
2662
2665
  isCreateMode: boolean;
2663
2666
  tableSaved: EventEmitter<MetadataTable>;
2664
2667
  editForm: FormGroup;
2668
+ editFormInvalid: Signal<boolean>;
2665
2669
  isLoading: _angular_core.WritableSignal<boolean>;
2666
2670
  availableLabGroups: _angular_core.WritableSignal<LabGroup[]>;
2667
2671
  isLoadingLabGroups: _angular_core.WritableSignal<boolean>;
2668
- constructor(fb: FormBuilder, activeModal: NgbActiveModal, modalService: NgbModal, metadataTableService: MetadataTableService, labGroupService: LabGroupService);
2672
+ constructor(fb: FormBuilder, activeModal: NgbActiveModal, modalService: NgbModal, metadataTableService: MetadataTableService, labGroupService: LabGroupService, confirmDialog: ConfirmDialogService);
2669
2673
  ngOnInit(): void;
2670
2674
  loadLabGroups(): void;
2671
2675
  onSubmit(): void;
@@ -2747,6 +2751,7 @@ declare class MetadataTableTemplates implements OnInit {
2747
2751
  private modalService;
2748
2752
  private toastService;
2749
2753
  private asyncTaskService;
2754
+ private confirmDialog;
2750
2755
  searchForm: FormGroup;
2751
2756
  private searchParams;
2752
2757
  private labGroupParams;
@@ -2766,7 +2771,7 @@ declare class MetadataTableTemplates implements OnInit {
2766
2771
  showLabGroupsPagination: _angular_core.Signal<boolean>;
2767
2772
  availableSchemas: _angular_core.WritableSignal<any[]>;
2768
2773
  isLoadingSchemas: _angular_core.WritableSignal<boolean>;
2769
- constructor(fb: FormBuilder, metadataTableTemplateService: MetadataTableTemplateService, labGroupService: LabGroupService, modalService: NgbModal, toastService: ToastService, asyncTaskService: AsyncTaskUIService);
2774
+ constructor(fb: FormBuilder, metadataTableTemplateService: MetadataTableTemplateService, labGroupService: LabGroupService, modalService: NgbModal, toastService: ToastService, asyncTaskService: AsyncTaskUIService, confirmDialog: ConfirmDialogService);
2770
2775
  ngOnInit(): void;
2771
2776
  private loadInitialData;
2772
2777
  private loadLabGroupsWithParams;
@@ -2779,7 +2784,7 @@ declare class MetadataTableTemplates implements OnInit {
2779
2784
  onLabGroupsPageChange(page: number): void;
2780
2785
  createTemplate(): void;
2781
2786
  editTemplate(template: MetadataTableTemplate): void;
2782
- deleteTemplate(template: MetadataTableTemplate): void;
2787
+ deleteTemplate(template: MetadataTableTemplate): Promise<void>;
2783
2788
  duplicateTemplate(template: MetadataTableTemplate): void;
2784
2789
  private openTemplateModal;
2785
2790
  private handleTemplateSave;
@@ -2803,7 +2808,7 @@ declare class MetadataTableTemplates implements OnInit {
2803
2808
  * Sync template columns from linked schemas.
2804
2809
  * Updates columns with latest ontology settings and adds new columns from schemas.
2805
2810
  */
2806
- syncTemplateFromSchemas(template: MetadataTableTemplate): void;
2811
+ syncTemplateFromSchemas(template: MetadataTableTemplate): Promise<void>;
2807
2812
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<MetadataTableTemplates, never>;
2808
2813
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<MetadataTableTemplates, "ccv-metadata-table-templates", never, {}, {}, never, never, true, never>;
2809
2814
  }
@@ -2815,23 +2820,25 @@ declare class MetadataTableTemplateEditModal implements OnInit {
2815
2820
  private metadataTableTemplateService;
2816
2821
  private metadataColumnService;
2817
2822
  private toastService;
2823
+ private confirmDialog;
2818
2824
  template: MetadataTableTemplate | null;
2819
2825
  labGroups: LabGroup[];
2820
2826
  isEdit: boolean;
2821
2827
  templateSaved: EventEmitter<Partial<MetadataTableTemplate>>;
2822
2828
  editForm: FormGroup;
2829
+ editFormInvalid: Signal<boolean>;
2823
2830
  isLoading: _angular_core.WritableSignal<boolean>;
2824
2831
  _templateColumns: _angular_core.WritableSignal<MetadataColumn[]>;
2825
2832
  selectedColumnIds: _angular_core.WritableSignal<Set<number>>;
2826
2833
  recentlyModifiedColumnId: _angular_core.WritableSignal<number | null>;
2827
- templateColumns: _angular_core.Signal<MetadataColumn[]>;
2828
- allColumnsSelected: _angular_core.Signal<boolean>;
2829
- someColumnsSelected: _angular_core.Signal<boolean>;
2834
+ templateColumns: Signal<MetadataColumn[]>;
2835
+ allColumnsSelected: Signal<boolean>;
2836
+ someColumnsSelected: Signal<boolean>;
2830
2837
  visibilityOptions: {
2831
2838
  value: ResourceVisibility;
2832
2839
  label: string;
2833
2840
  }[];
2834
- constructor(fb: FormBuilder, activeModal: NgbActiveModal, modalService: NgbModal, metadataTableTemplateService: MetadataTableTemplateService, metadataColumnService: MetadataColumnService, toastService: ToastService);
2841
+ constructor(fb: FormBuilder, activeModal: NgbActiveModal, modalService: NgbModal, metadataTableTemplateService: MetadataTableTemplateService, metadataColumnService: MetadataColumnService, toastService: ToastService, confirmDialog: ConfirmDialogService);
2835
2842
  ngOnInit(): void;
2836
2843
  private populateForm;
2837
2844
  onSubmit(): void;
@@ -2844,11 +2851,11 @@ declare class MetadataTableTemplateEditModal implements OnInit {
2844
2851
  addColumnWithAutoReorder(): void;
2845
2852
  editColumn(column: MetadataColumn): void;
2846
2853
  duplicateColumn(column: MetadataColumn): void;
2847
- removeColumn(column: MetadataColumn): void;
2854
+ removeColumn(column: MetadataColumn): Promise<void>;
2848
2855
  toggleColumnSelection(columnId: number): void;
2849
2856
  toggleAllColumns(): void;
2850
2857
  bulkToggleStaffOnly(staffOnly: boolean): void;
2851
- bulkDeleteColumns(): void;
2858
+ bulkDeleteColumns(): Promise<void>;
2852
2859
  onColumnDrop(event: CdkDragDrop<MetadataColumn[]>): void;
2853
2860
  private openColumnModal;
2854
2861
  private handleColumnSave;
@@ -2876,6 +2883,7 @@ declare class ColumnEditModal implements OnInit {
2876
2883
  isEdit: boolean;
2877
2884
  columnSaved: EventEmitter<Partial<MetadataColumn>>;
2878
2885
  editForm: FormGroup;
2886
+ editFormInvalid: Signal<boolean>;
2879
2887
  isLoading: _angular_core.WritableSignal<boolean>;
2880
2888
  showAdvancedMode: _angular_core.WritableSignal<boolean>;
2881
2889
  selectedOntologyConfig: OntologyTypeConfig | null;
@@ -3003,6 +3011,7 @@ declare class TableCreationModalComponent implements OnInit {
3003
3011
  selectedLabGroup?: number;
3004
3012
  tableCreated: EventEmitter<TableCreationData>;
3005
3013
  tableForm: FormGroup;
3014
+ tableFormInvalid: Signal<boolean>;
3006
3015
  isCreating: boolean;
3007
3016
  errorMessage: string | null;
3008
3017
  constructor(fb: FormBuilder, activeModal: NgbActiveModal);
@@ -3053,6 +3062,7 @@ declare class ColumnTemplates implements OnInit {
3053
3062
  private labGroupService;
3054
3063
  private schemaService;
3055
3064
  private modalService;
3065
+ private confirmDialog;
3056
3066
  searchForm: FormGroup;
3057
3067
  private searchParams;
3058
3068
  private labGroupParams;
@@ -3095,7 +3105,7 @@ declare class ColumnTemplates implements OnInit {
3095
3105
  hasGroupedTemplates: _angular_core.Signal<boolean>;
3096
3106
  showGroupedPagination: _angular_core.Signal<boolean>;
3097
3107
  filteredTemplates: _angular_core.Signal<MetadataColumnTemplate[]>;
3098
- constructor(fb: FormBuilder, metadataColumnTemplateService: MetadataColumnTemplateService, labGroupService: LabGroupService, schemaService: SchemaService, modalService: NgbModal);
3108
+ constructor(fb: FormBuilder, metadataColumnTemplateService: MetadataColumnTemplateService, labGroupService: LabGroupService, schemaService: SchemaService, modalService: NgbModal, confirmDialog: ConfirmDialogService);
3099
3109
  ngOnInit(): void;
3100
3110
  private loadInitialData;
3101
3111
  private loadSchemas;
@@ -3125,7 +3135,7 @@ declare class ColumnTemplates implements OnInit {
3125
3135
  editTemplate(template: MetadataColumnTemplate): void;
3126
3136
  private openTemplateModal;
3127
3137
  private handleTemplateSave;
3128
- deleteTemplate(template: MetadataColumnTemplate): void;
3138
+ deleteTemplate(template: MetadataColumnTemplate): Promise<void>;
3129
3139
  duplicateTemplate(template: MetadataColumnTemplate): void;
3130
3140
  private refreshTemplates;
3131
3141
  setViewMode(mode: 'flat' | 'grouped'): void;
@@ -3153,6 +3163,7 @@ declare class ColumnTemplateEditModal implements OnInit {
3153
3163
  isEdit: boolean;
3154
3164
  templateSaved: EventEmitter<Partial<MetadataColumnTemplate>>;
3155
3165
  editForm: FormGroup;
3166
+ editFormInvalid: Signal<boolean>;
3156
3167
  isLoading: _angular_core.WritableSignal<boolean>;
3157
3168
  isLoadingSuggestions: _angular_core.WritableSignal<boolean>;
3158
3169
  Object: ObjectConstructor;
@@ -3194,13 +3205,14 @@ declare class FavoriteManagement implements OnInit {
3194
3205
  scopeFilter: _angular_core.WritableSignal<string>;
3195
3206
  labGroupFilter: _angular_core.WritableSignal<string>;
3196
3207
  columnTypeFilter: _angular_core.WritableSignal<string>;
3197
- filteredFavorites: _angular_core.Signal<FavouriteMetadataOption[]>;
3208
+ filteredFavorites: Signal<FavouriteMetadataOption[]>;
3198
3209
  currentPage: _angular_core.WritableSignal<number>;
3199
3210
  pageSize: _angular_core.WritableSignal<number>;
3200
- paginatedFavorites: _angular_core.Signal<FavouriteMetadataOption[]>;
3201
- totalPages: _angular_core.Signal<number>;
3211
+ paginatedFavorites: Signal<FavouriteMetadataOption[]>;
3212
+ totalPages: Signal<number>;
3202
3213
  searchForm: FormGroup;
3203
3214
  editForm: FormGroup;
3215
+ editFormInvalid: Signal<boolean>;
3204
3216
  isEditMode: _angular_core.WritableSignal<boolean>;
3205
3217
  editingFavorite: _angular_core.WritableSignal<FavouriteMetadataOption | null>;
3206
3218
  showEditModal: _angular_core.WritableSignal<boolean>;
@@ -3212,12 +3224,13 @@ declare class FavoriteManagement implements OnInit {
3212
3224
  private toastService;
3213
3225
  private modalService;
3214
3226
  private authService;
3227
+ private confirmDialog;
3215
3228
  specialSyntaxType: _angular_core.WritableSignal<SyntaxType | null>;
3216
3229
  showSpecialInput: _angular_core.WritableSignal<boolean>;
3217
3230
  specialInputValue: _angular_core.WritableSignal<string>;
3218
3231
  currentUser: _angular_core.Signal<User | null>;
3219
- isAdmin: _angular_core.Signal<boolean>;
3220
- currentUserId: _angular_core.Signal<number | null>;
3232
+ isAdmin: Signal<boolean>;
3233
+ currentUserId: Signal<number | null>;
3221
3234
  userLabGroups: _angular_core.WritableSignal<LabGroup[]>;
3222
3235
  userLabGroupsLoaded: _angular_core.WritableSignal<boolean>;
3223
3236
  selectedOntologyValue: string | null;
@@ -3243,7 +3256,7 @@ declare class FavoriteManagement implements OnInit {
3243
3256
  openCreateModal(): void;
3244
3257
  openEditModal(favorite: FavouriteMetadataOption): void;
3245
3258
  saveFavorite(): void;
3246
- deleteFavorite(favorite: FavouriteMetadataOption): void;
3259
+ deleteFavorite(favorite: FavouriteMetadataOption): Promise<void>;
3247
3260
  closeEditModal(): void;
3248
3261
  onPageChange(page: number): void;
3249
3262
  onPageSizeChange(size: number): void;
@@ -3305,6 +3318,7 @@ declare class SearchReplaceModal {
3305
3318
  activeModal: NgbActiveModal;
3306
3319
  config: SearchReplaceConfig;
3307
3320
  searchReplaceForm: FormGroup;
3321
+ searchReplaceFormInvalid: Signal<boolean>;
3308
3322
  isProcessing: _angular_core.WritableSignal<boolean>;
3309
3323
  result: _angular_core.WritableSignal<{
3310
3324
  message: string;
@@ -3339,6 +3353,7 @@ declare class MetadataTableDetails implements OnInit, OnDestroy {
3339
3353
  private asyncTaskService;
3340
3354
  private modalService;
3341
3355
  private officialColumnCache;
3356
+ private confirmDialog;
3342
3357
  private destroy$;
3343
3358
  fileInput: ElementRef<HTMLInputElement>;
3344
3359
  excelInput: ElementRef<HTMLInputElement>;
@@ -3370,7 +3385,7 @@ declare class MetadataTableDetails implements OnInit, OnDestroy {
3370
3385
  poolTableRows: _angular_core.Signal<any[]>;
3371
3386
  paginatedRows: _angular_core.Signal<any[]>;
3372
3387
  totalPages: _angular_core.Signal<number>;
3373
- constructor(route: ActivatedRoute, router: Router, metadataTableService: MetadataTableService, asyncExportService: AsyncExportService, chunkedUploadService: ChunkedUploadService, samplePoolService: SamplePoolService, metadataColumnService: MetadataColumnService, toastService: ToastService, asyncTaskService: AsyncTaskUIService, modalService: NgbModal, officialColumnCache: OfficialColumnCacheService);
3388
+ constructor(route: ActivatedRoute, router: Router, metadataTableService: MetadataTableService, asyncExportService: AsyncExportService, chunkedUploadService: ChunkedUploadService, samplePoolService: SamplePoolService, metadataColumnService: MetadataColumnService, toastService: ToastService, asyncTaskService: AsyncTaskUIService, modalService: NgbModal, officialColumnCache: OfficialColumnCacheService, confirmDialog: ConfirmDialogService);
3374
3389
  ngOnInit(): void;
3375
3390
  ngOnDestroy(): void;
3376
3391
  private setupAsyncTaskRefreshListener;
@@ -3383,13 +3398,13 @@ declare class MetadataTableDetails implements OnInit, OnDestroy {
3383
3398
  editTable(): void;
3384
3399
  triggerFileInput(): void;
3385
3400
  triggerExcelInput(): void;
3386
- importSdrf(event: Event): void;
3387
- importExcel(event: Event): void;
3401
+ importSdrf(event: Event): Promise<void>;
3402
+ importExcel(event: Event): Promise<void>;
3388
3403
  exportToSdrf(format?: 'sdrf' | 'excel'): void;
3389
3404
  private performExcelExport;
3390
3405
  private performSdrfExport;
3391
3406
  private handleExportRequest;
3392
- deleteTable(): void;
3407
+ deleteTable(): Promise<void>;
3393
3408
  getTableStatusBadge(): string;
3394
3409
  getTableStatusClass(): string;
3395
3410
  getColumnTypeIcon(column: MetadataColumn): string;
@@ -3408,7 +3423,7 @@ declare class MetadataTableDetails implements OnInit, OnDestroy {
3408
3423
  viewPoolDetails(pool: SamplePool): void;
3409
3424
  editPool(pool: SamplePool): void;
3410
3425
  createPool(): void;
3411
- deletePool(pool: SamplePool): void;
3426
+ deletePool(pool: SamplePool): Promise<void>;
3412
3427
  editColumnValue(column: MetadataColumn): void;
3413
3428
  toggleColumnHidden(column: MetadataColumn): void;
3414
3429
  autofillColumnValues(column: MetadataColumn): void;
@@ -3420,7 +3435,7 @@ declare class MetadataTableDetails implements OnInit, OnDestroy {
3420
3435
  editPoolColumnValue(pool: SamplePool, column: any): void;
3421
3436
  editSampleColumnValue(column: MetadataColumn, sampleIndex: number): void;
3422
3437
  private getSampleColumnValue;
3423
- removeColumn(column: MetadataColumn): void;
3438
+ removeColumn(column: MetadataColumn): Promise<void>;
3424
3439
  /**
3425
3440
  * Open modal to add a new column with automatic reordering
3426
3441
  */
@@ -3462,6 +3477,7 @@ declare class SamplePoolEditModal implements OnInit {
3462
3477
  maxSampleCount: number;
3463
3478
  poolSaved: EventEmitter<SamplePool>;
3464
3479
  editForm: FormGroup;
3480
+ editFormInvalid: Signal<boolean>;
3465
3481
  isLoading: _angular_core.WritableSignal<boolean>;
3466
3482
  private fb;
3467
3483
  private activeModal;
@@ -3497,6 +3513,7 @@ declare class SamplePoolCreateModal implements OnInit {
3497
3513
  poolCreated: EventEmitter<SamplePool>;
3498
3514
  Math: Math;
3499
3515
  createForm: FormGroup;
3516
+ createFormInvalid: Signal<boolean>;
3500
3517
  isLoading: _angular_core.WritableSignal<boolean>;
3501
3518
  samples: _angular_core.WritableSignal<SampleSelectionItem[]>;
3502
3519
  pooledOnlySamples: _angular_core.WritableSignal<number[]>;
@@ -3504,10 +3521,10 @@ declare class SamplePoolCreateModal implements OnInit {
3504
3521
  selectionMode: _angular_core.WritableSignal<"range" | "manual">;
3505
3522
  currentPage: _angular_core.WritableSignal<number>;
3506
3523
  samplesPerPage: number;
3507
- sourceNameColumn: _angular_core.Signal<MetadataColumn | undefined>;
3508
- assayNameColumn: _angular_core.Signal<MetadataColumn | undefined>;
3509
- fractionIdentifierColumn: _angular_core.Signal<MetadataColumn | undefined>;
3510
- labelColumn: _angular_core.Signal<MetadataColumn | undefined>;
3524
+ sourceNameColumn: Signal<MetadataColumn | undefined>;
3525
+ assayNameColumn: Signal<MetadataColumn | undefined>;
3526
+ fractionIdentifierColumn: Signal<MetadataColumn | undefined>;
3527
+ labelColumn: Signal<MetadataColumn | undefined>;
3511
3528
  constructor(fb: FormBuilder, activeModal: NgbActiveModal, samplePoolService: SamplePoolService, toastService: ToastService);
3512
3529
  ngOnInit(): void;
3513
3530
  private initializeSamples;