cloud-ide-core 2.0.20 → 2.0.22

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
@@ -1,17 +1,1793 @@
1
1
  import { Route } from '@angular/router';
2
- import * as i0 from '@angular/core';
2
+ import * as _angular_core from '@angular/core';
3
+ import { TemplateRef, OnInit } from '@angular/core';
4
+ import * as _angular_forms from '@angular/forms';
5
+ import { FormGroup, FormArray } from '@angular/forms';
6
+ import { ICoreSyme, ICoreSygms, MMenuListPayload, menuListControllerResponse, menuByIdControllerResponse, menuDeleteControllerResponse, MMenuChangeSequencePayload, menuChangeSequenceControllerResponse, ICoreSydept, MDepartment, departmentControllerResponse, departmentByIdControllerResponse, departmentDeleteControllerResponse, MDepartmentToggleStatusPayload, departmentToggleStatusControllerResponse, ICoreSydsg, ICoreSydsgl, MDesignation, designationControllerResponse, designationInsertUpdateControllerResponse, designationByIdControllerResponse, designationDeleteControllerResponse, designationToggleStatusControllerResponse, MGradeLevel, gradeLevelControllerResponse, MGradeLevelGetByIdPayload, gradeLevelByIdControllerResponse, gradeLevelDeleteControllerResponse, gradeLevelToggleStatusControllerResponse, MGradeLevelChangeSequencePayload, gradeLevelChangeSequenceControllerResponse, ICoreSypg, ICoreSytm, ICoreSythDrawer, ICoreSype, MSystemPages, systemPagesControllerResponse, MSystemPagesInsertUpdatePayload, systemPagesInsertUpdateControllerResponse, systemPagesByIdControllerResponse, systemPagesDeleteControllerResponse, MSystemPagesToggleStatusPayload, systemPagesToggleStatusControllerResponse, MSystemPagesCheckCodeExistsPayload, systemPagesCheckCodeExistsControllerResponse, MSystemPagesTheme, systemPagesThemeControllerResponse, MSystemPagesThemeInsertUpdatePayload, systemPagesThemeInsertUpdateControllerResponse, systemPagesThemeByIdControllerResponse, systemPagesThemeByPageIdControllerResponse, systemPagesThemeDeleteControllerResponse, MSystemPagesThemeToggleStatusPayload, systemPagesThemeToggleStatusControllerResponse, MPageElements, pageElementsControllerResponse, MPageElementsInsertUpdatePayload, pageElementsInsertUpdateControllerResponse, pageElementsByIdControllerResponse, pageElementsByPageIdControllerResponse, pageElementsMappingByPageIdControllerResponse, MPageElementsMappingInsertUpdatePayload, pageElementsMappingInsertUpdateControllerResponse, pageElementsMappingDeleteControllerResponse, pageElementsDeleteControllerResponse, MPageElementsToggleStatusPayload, pageElementsToggleStatusControllerResponse } from 'cloud-ide-lms-model';
7
+ import { TemplateContext, GridConfiguration, GridEvent, DropdownItem, FileUploadData } from 'cloud-ide-element';
8
+ import { HttpClient } from '@angular/common/http';
9
+ import { Observable } from 'rxjs';
3
10
 
4
11
  declare const coreRoutes: Route[];
5
12
 
6
13
  declare class CloudIdeCoreService {
7
14
  constructor();
8
- static ɵfac: i0.ɵɵFactoryDeclaration<CloudIdeCoreService, never>;
9
- static ɵprov: i0.ɵɵInjectableDeclaration<CloudIdeCoreService>;
15
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<CloudIdeCoreService, never>;
16
+ static ɵprov: _angular_core.ɵɵInjectableDeclaration<CloudIdeCoreService>;
10
17
  }
11
18
 
12
19
  declare class CloudIdeCoreComponent {
13
- static ɵfac: i0.ɵɵFactoryDeclaration<CloudIdeCoreComponent, never>;
14
- static ɵcmp: i0.ɵɵComponentDeclaration<CloudIdeCoreComponent, "cide-core", never, {}, {}, never, never, true, never>;
20
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<CloudIdeCoreComponent, never>;
21
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<CloudIdeCoreComponent, "cide-core", never, {}, {}, never, never, true, never>;
15
22
  }
16
23
 
17
- export { CloudIdeCoreComponent, CloudIdeCoreService, coreRoutes };
24
+ declare class MenuListComponent {
25
+ private destroyRef;
26
+ private menuService;
27
+ private generalMasterService;
28
+ private generalMasterTypeService;
29
+ private notificationService;
30
+ private fb;
31
+ private router;
32
+ menuDetailsRendererTemplate: _angular_core.Signal<TemplateRef<TemplateContext<ICoreSyme>>>;
33
+ menuTypeRendererTemplate: _angular_core.Signal<TemplateRef<TemplateContext<ICoreSyme>>>;
34
+ permissionsRendererTemplate: _angular_core.Signal<TemplateRef<TemplateContext<ICoreSyme>>>;
35
+ actionsDropdownRendererTemplate: _angular_core.Signal<TemplateRef<TemplateContext<ICoreSyme>>>;
36
+ Math: Math;
37
+ menuItems: _angular_core.WritableSignal<ICoreSyme[]>;
38
+ loading: _angular_core.WritableSignal<boolean>;
39
+ error: _angular_core.WritableSignal<string | null>;
40
+ selectedItems: _angular_core.WritableSignal<string[]>;
41
+ permissions: _angular_core.WritableSignal<ICoreSygms[]>;
42
+ userRightsTypeId: _angular_core.WritableSignal<string | null>;
43
+ searchTerm: _angular_core.WritableSignal<string>;
44
+ selectedParentItem: _angular_core.WritableSignal<ICoreSyme | null>;
45
+ retrievedMenuItem: _angular_core.WritableSignal<ICoreSyme | null>;
46
+ isEditMode: _angular_core.WritableSignal<boolean>;
47
+ originalOrder: _angular_core.WritableSignal<ICoreSyme[]>;
48
+ hasOrderChanged: _angular_core.WritableSignal<boolean>;
49
+ currentPage: _angular_core.WritableSignal<number>;
50
+ pageSize: _angular_core.WritableSignal<number>;
51
+ totalItems: _angular_core.WritableSignal<number>;
52
+ quickAddForm: _angular_forms.FormGroup<{
53
+ syme_title: _angular_forms.FormControl<string>;
54
+ syme_desc: _angular_forms.FormControl<string>;
55
+ syme_type: _angular_forms.FormControl<"module" | "section" | "menu" | "title">;
56
+ syme_id_syme: _angular_forms.FormControl<string>;
57
+ syme_path: _angular_forms.FormControl<string>;
58
+ syme_icon: _angular_forms.FormControl<string>;
59
+ syme_link: _angular_forms.FormControl<string>;
60
+ syme_isactive: _angular_forms.FormControl<boolean>;
61
+ syme_order_by: _angular_forms.FormControl<number>;
62
+ syme_permissions_id_sygms: _angular_forms.FormControl<string[]>;
63
+ }>;
64
+ menuTypeOptions: _angular_core.Signal<{
65
+ value: string;
66
+ label: string;
67
+ }[]>;
68
+ permissionOptions: _angular_core.Signal<{
69
+ value: string;
70
+ label: string;
71
+ }[]>;
72
+ gridConfig: _angular_core.WritableSignal<GridConfiguration<ICoreSyme>>;
73
+ templateRenderers: _angular_core.Signal<Record<string, TemplateRef<TemplateContext<ICoreSyme>>>>;
74
+ /**
75
+ * Get template renderers for data grid
76
+ * These templates are available for enhanced data grid components
77
+ */
78
+ getTemplateRenderers(): Record<string, TemplateRef<TemplateContext<ICoreSyme>>>;
79
+ customRenderers: _angular_core.Signal<{
80
+ [x: string]: TemplateRef<TemplateContext<ICoreSyme>>;
81
+ }>;
82
+ /**
83
+ * Get custom renderers adapted for current data grid compatibility
84
+ * Uses template-based renderers converted to string functions
85
+ */
86
+ getCustomRenderers(): Record<string, (value: unknown, row: ICoreSyme) => string>;
87
+ actionHandlers: {
88
+ onEditMenuItem: (row: ICoreSyme) => void;
89
+ onToggleMenuItem: (row: ICoreSyme) => void;
90
+ onDeleteMenuItem: (row: ICoreSyme) => void;
91
+ onMenuItemRowClick: (row: ICoreSyme) => void;
92
+ onMenuItemRefresh: () => void;
93
+ onAddChild: (row: ICoreSyme) => void;
94
+ resetOrder: () => void;
95
+ saveOrder: () => void;
96
+ };
97
+ hasSelection: _angular_core.Signal<boolean>;
98
+ totalPages: _angular_core.Signal<number>;
99
+ hasNextPage: _angular_core.Signal<boolean>;
100
+ hasPreviousPage: _angular_core.Signal<boolean>;
101
+ constructor();
102
+ /**
103
+ * Initialize component with modern patterns
104
+ */
105
+ private initializeComponent;
106
+ /**
107
+ * Setup event listeners for dropdown interactions
108
+ */
109
+ private setupEventListeners;
110
+ /**
111
+ * Cleanup event listeners
112
+ */
113
+ private cleanupEventListeners;
114
+ /**
115
+ * Expose global functions for dropdown interactions
116
+ */
117
+ private exposeGlobalFunctions;
118
+ /**
119
+ * Get default type based on parent selection (computed for reactivity)
120
+ */
121
+ private getDefaultType;
122
+ /**
123
+ * Load menu items from service
124
+ */
125
+ loadMenuItems(): void;
126
+ /**
127
+ * Handle click outside dropdown
128
+ */
129
+ private handleClickOutside;
130
+ /**
131
+ * Handle dropdown action clicks
132
+ */
133
+ private handleDropdownAction;
134
+ /**
135
+ * Update grid data
136
+ */
137
+ private updateGridData;
138
+ /**
139
+ * Handle grid events
140
+ */
141
+ onGridEvent(event: GridEvent<ICoreSyme>): void;
142
+ /**
143
+ * Handle menu item search
144
+ */
145
+ /**
146
+ * Handle menu item refresh
147
+ */
148
+ onMenuItemRefresh(): void;
149
+ /**
150
+ * Handle menu item row click
151
+ */
152
+ onMenuItemRowClick(menuItem: ICoreSyme): void;
153
+ /**
154
+ * Handle row reorder event
155
+ */
156
+ onRowReorder(data: {
157
+ sourceIndex: number;
158
+ targetIndex: number;
159
+ newOrder: ICoreSyme[];
160
+ allOrders?: ICoreSyme[];
161
+ }): void;
162
+ /**
163
+ * Update grid data after reordering
164
+ */
165
+ private updateGridDataAfterReorder;
166
+ /**
167
+ * Save menu order using the change sequence API
168
+ * This method is called by the data grid when save-order action is triggered
169
+ * Handles both single-level and multi-level (hierarchical) menu structures
170
+ */
171
+ saveMenuOrder(): void;
172
+ /**
173
+ * Get all menu items including children from the current data structure
174
+ * This handles both hierarchical and flat menu structures
175
+ */
176
+ private getAllMenuItemsIncludingChildren;
177
+ /**
178
+ * Check if the data structure is flat (no children property) or hierarchical
179
+ */
180
+ private isFlatDataStructure;
181
+ /**
182
+ * Reset drag order to original state
183
+ */
184
+ resetDragOrder(): void;
185
+ /**
186
+ * Check if order has changed
187
+ */
188
+ hasOrderChanges(): boolean;
189
+ /**
190
+ * Toggle item selection
191
+ */
192
+ toggleItemSelection(itemId: string): void;
193
+ /**
194
+ * Select all items on current page
195
+ */
196
+ selectAllOnPage(): void;
197
+ /**
198
+ * Clear all selections
199
+ */
200
+ clearSelection(): void;
201
+ /**
202
+ * Navigate to edit menu form
203
+ */
204
+ editMenuItem(itemId: string): void;
205
+ /**
206
+ * Get menu item by ID using the API
207
+ * GET ${coreRoutesUrl?.menu}/byId/:query - payload: MCoreSymeGetByIdPayload, response: menuByIdControllerResponse
208
+ */
209
+ getMenuItemById(itemId: string): void;
210
+ /**
211
+ * Populate form with menu item data for editing
212
+ */
213
+ populateFormForEdit(menuItem: ICoreSyme): void;
214
+ /**
215
+ * Delete menu item
216
+ */
217
+ deleteMenuItem(itemId: string): void;
218
+ /**
219
+ * Delete multiple selected items
220
+ */
221
+ deleteSelectedItems(): void;
222
+ /**
223
+ * Toggle menu item status
224
+ */
225
+ toggleItemStatus(itemId: string): void;
226
+ /**
227
+ * Update search term
228
+ */
229
+ onSearchChange(event: Event): void;
230
+ /**
231
+ * Navigate to specific page
232
+ */
233
+ goToPage(): void;
234
+ /**
235
+ * Get menu type display name
236
+ */
237
+ getMenuTypeDisplay(type: string): string;
238
+ /**
239
+ * Get status display
240
+ */
241
+ getStatusDisplay(isActive: boolean): string;
242
+ /**
243
+ * Get status class for styling
244
+ */
245
+ getStatusClass(isActive: boolean): string;
246
+ /**
247
+ * Get menu type class for styling
248
+ */
249
+ getMenuTypeClass(type: string): string;
250
+ /**
251
+ * Check if item is selected
252
+ */
253
+ isItemSelected(itemId: string): boolean;
254
+ /**
255
+ * Check if all items on current page are selected
256
+ */
257
+ isAllSelectedOnPage(): boolean;
258
+ /**
259
+ * Get pagination range
260
+ */
261
+ getPaginationRange(): number[];
262
+ /**
263
+ * Track by function for ngFor
264
+ */
265
+ trackByItemId(index: number, item: ICoreSyme): string;
266
+ /**
267
+ * Quick add or update menu item using reactive form
268
+ */
269
+ quickAddMenuItem(): void;
270
+ /**
271
+ * Reset the quick add form to default values
272
+ */
273
+ resetQuickAddForm(): void;
274
+ /**
275
+ * Handle add child button click from row action
276
+ */
277
+ onAddChild(parentItem: ICoreSyme): void;
278
+ /**
279
+ * Handle row reorder event
280
+ */
281
+ /**
282
+ * Toggle dropdown visibility
283
+ */
284
+ toggleDropdown(itemId: string): void;
285
+ /**
286
+ * Handle menu action clicks
287
+ */
288
+ handleMenuAction(action: string, itemId: string): void;
289
+ /**
290
+ * Add child menu item - sets parent and scrolls to form
291
+ */
292
+ addChildMenuItem(parentId: string, parentItem: ICoreSyme): void;
293
+ /**
294
+ * Clear selected parent
295
+ */
296
+ clearSelectedParent(): void;
297
+ /**
298
+ * Helper methods for templates
299
+ */
300
+ getMenuTypeLabel(type: string): string;
301
+ /**
302
+ * Test method to load sample data for debugging
303
+ */
304
+ loadTestData(): void;
305
+ /**
306
+ * Load user rights type ID from general master types
307
+ */
308
+ private loadUserRightsTypeId;
309
+ /**
310
+ * Load permissions from general master
311
+ */
312
+ private loadPermissions;
313
+ /**
314
+ * Get permission names from permission IDs
315
+ */
316
+ getPermissionNames(permissionIds: string[]): string;
317
+ /**
318
+ * Get permission by ID
319
+ */
320
+ getPermissionById(permissionId: string): ICoreSygms | undefined;
321
+ /**
322
+ * Get all permission names for tooltip
323
+ */
324
+ getAllPermissionNames(permissionIds: string[]): string;
325
+ /**
326
+ * Handle menu type change - clear permissions for non-menu types
327
+ */
328
+ onMenuTypeChange(): void;
329
+ /**
330
+ * Get dropdown items for menu actions
331
+ */
332
+ getDropdownItems(menuItem: ICoreSyme): DropdownItem[];
333
+ /**
334
+ * Handle dropdown item click
335
+ */
336
+ onDropdownItemClick(item: DropdownItem, menuItem: ICoreSyme): void;
337
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<MenuListComponent, never>;
338
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<MenuListComponent, "cide-core-app-menu-list", never, {}, {}, never, never, true, never>;
339
+ }
340
+
341
+ declare class MenuManagementService {
342
+ private http;
343
+ private apiUrl;
344
+ private menuListSubject;
345
+ menuList$: Observable<ICoreSyme[]>;
346
+ constructor(http: HttpClient);
347
+ /**
348
+ * Get menu list from API
349
+ */
350
+ getMenuList(body: MMenuListPayload): Observable<menuListControllerResponse>;
351
+ /**
352
+ * Get menu list from cache (if available)
353
+ */
354
+ getMenuListFromCache(): ICoreSyme[];
355
+ /**
356
+ * Create new menu item
357
+ * POST ${coreRoutesUrl?.menu} - payload: MCoreSymeInsertUpdatePayload, response: menuInsertUpdateControllerResponse
358
+ */
359
+ createMenuItem(menuItem: ICoreSyme): Observable<menuListControllerResponse>;
360
+ /**
361
+ * Update existing menu item
362
+ * POST ${coreRoutesUrl?.menu} - payload: MCoreSymeInsertUpdatePayload, response: menuInsertUpdateControllerResponse
363
+ */
364
+ updateMenuItem(id: string, menuItem: ICoreSyme): Observable<menuListControllerResponse>;
365
+ /**
366
+ * Get menu item by ID
367
+ * GET ${coreRoutesUrl?.menu}/byId/:query - payload: MCoreSymeGetByIdPayload, response: menuByIdControllerResponse
368
+ * TODO: Update to use MCoreSymeGetByIdPayload and menuByIdControllerResponse when available
369
+ */
370
+ getMenuItemById(id: string): Observable<menuByIdControllerResponse>;
371
+ /**
372
+ * Delete menu item
373
+ * DELETE ${coreRoutesUrl?.menu}/:query - payload: MCoreSymeDeletePayload, response: menuDeleteControllerResponse
374
+ * TODO: Update to use MCoreSymeDeletePayload and menuDeleteControllerResponse when available
375
+ */
376
+ deleteMenuItem(id: string): Observable<menuDeleteControllerResponse>;
377
+ /**
378
+ * Delete multiple menu items
379
+ * DELETE ${coreRoutesUrl?.menu}/:query - payload: MCoreSymeDeletePayload, response: menuDeleteControllerResponse
380
+ * TODO: Update to use MCoreSymeDeletePayload and menuDeleteControllerResponse when available
381
+ */
382
+ deleteMultipleMenuItems(ids: string[]): Observable<{
383
+ success: boolean;
384
+ message?: string;
385
+ data?: unknown;
386
+ }>;
387
+ /**
388
+ * Toggle menu item active status
389
+ */
390
+ toggleMenuItemStatus(id: string): Observable<menuListControllerResponse>;
391
+ /**
392
+ * Change menu sequence
393
+ * PATCH ${coreRoutesUrl?.menu}/change-sequence - payload: menu sequence data, response: menuChangeSequenceControllerResponse
394
+ */
395
+ changeMenuSequence(payload: MMenuChangeSequencePayload): Observable<menuChangeSequenceControllerResponse>;
396
+ /**
397
+ * Get available menu types
398
+ */
399
+ getMenuTypes(): Observable<string[]>;
400
+ /**
401
+ * Get available icons
402
+ */
403
+ getAvailableIcons(): Observable<string[]>;
404
+ /**
405
+ * Find menu item by ID (including nested items)
406
+ */
407
+ findMenuItemById(id: string, items?: ICoreSyme[]): ICoreSyme | null;
408
+ /**
409
+ * Get parent menu items for dropdown selection
410
+ */
411
+ getParentMenuItems(excludeId?: string): ICoreSyme[];
412
+ /**
413
+ * Refresh menu list from server
414
+ */
415
+ private refreshMenuList;
416
+ /**
417
+ * Handle errors
418
+ */
419
+ private handleError;
420
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<MenuManagementService, never>;
421
+ static ɵprov: _angular_core.ɵɵInjectableDeclaration<MenuManagementService>;
422
+ }
423
+
424
+ declare class CideCoreDepartmentListComponent {
425
+ private destroyRef;
426
+ private departmentService;
427
+ private appState;
428
+ private fb;
429
+ private router;
430
+ private confirmationService;
431
+ private notificationService;
432
+ departmentDetailsRendererTemplate: _angular_core.Signal<TemplateRef<TemplateContext<Record<string, unknown>>>>;
433
+ departmentStatusRendererTemplate: _angular_core.Signal<TemplateRef<TemplateContext<Record<string, unknown>>>>;
434
+ actionsDropdownRendererTemplate: _angular_core.Signal<TemplateRef<TemplateContext<Record<string, unknown>>>>;
435
+ Math: Math;
436
+ departments: _angular_core.WritableSignal<ICoreSydept[]>;
437
+ loading: _angular_core.WritableSignal<boolean>;
438
+ error: _angular_core.WritableSignal<string | null>;
439
+ selectedItems: _angular_core.WritableSignal<string[]>;
440
+ searchTerm: _angular_core.WritableSignal<string>;
441
+ selectedParentDepartment: _angular_core.WritableSignal<ICoreSydept | null>;
442
+ retrievedDepartment: _angular_core.WritableSignal<ICoreSydept | null>;
443
+ isEditMode: _angular_core.WritableSignal<boolean>;
444
+ currentPage: _angular_core.WritableSignal<number>;
445
+ pageSize: _angular_core.WritableSignal<number>;
446
+ totalItems: _angular_core.WritableSignal<number>;
447
+ quickAddForm: _angular_forms.FormGroup<{
448
+ sydept_code: _angular_forms.FormControl<string>;
449
+ sydept_name: _angular_forms.FormControl<string>;
450
+ sydept_description: _angular_forms.FormControl<string>;
451
+ sydept_isactive: _angular_forms.FormControl<boolean>;
452
+ sydept_department_id_sydept: _angular_forms.FormControl<string>;
453
+ sydept_entity_id_syen: _angular_forms.FormControl<string>;
454
+ }>;
455
+ gridConfig: _angular_core.WritableSignal<GridConfiguration<ICoreSydept>>;
456
+ templateRenderers: _angular_core.Signal<Record<string, TemplateRef<TemplateContext<Record<string, unknown>>>>>;
457
+ /**
458
+ * Get template renderers for data grid
459
+ */
460
+ getTemplateRenderers(): Record<string, TemplateRef<TemplateContext>>;
461
+ customRenderers: _angular_core.Signal<{
462
+ [x: string]: TemplateRef<TemplateContext<Record<string, unknown>>>;
463
+ }>;
464
+ /**
465
+ * Get custom renderers adapted for current data grid compatibility
466
+ */
467
+ getCustomRenderers(): Record<string, (value: unknown, row: ICoreSydept) => string>;
468
+ actionHandlers: {
469
+ onEditDepartment: (row: ICoreSydept) => void;
470
+ onToggleDepartment: (row: ICoreSydept) => void;
471
+ onDeleteDepartment: (row: ICoreSydept) => Promise<void>;
472
+ onDepartmentRowClick: (row: ICoreSydept) => void;
473
+ onDepartmentRefresh: () => void;
474
+ onAddChild: (row: ICoreSydept) => void;
475
+ };
476
+ filteredItems: _angular_core.Signal<ICoreSydept[]>;
477
+ hasSelection: _angular_core.Signal<boolean>;
478
+ totalPages: _angular_core.Signal<number>;
479
+ hasNextPage: _angular_core.Signal<boolean>;
480
+ hasPreviousPage: _angular_core.Signal<boolean>;
481
+ constructor();
482
+ /**
483
+ * Initialize component with modern patterns
484
+ */
485
+ private initializeComponent;
486
+ /**
487
+ * Setup event listeners for dropdown interactions
488
+ */
489
+ private setupEventListeners;
490
+ /**
491
+ * Cleanup event listeners
492
+ */
493
+ private cleanupEventListeners;
494
+ /**
495
+ * Expose global functions for dropdown interactions
496
+ */
497
+ private exposeGlobalFunctions;
498
+ /**
499
+ * Load departments from service
500
+ */
501
+ loadDepartments(): void;
502
+ /**
503
+ * Update grid data
504
+ */
505
+ private updateGridData;
506
+ /**
507
+ * Handle grid events
508
+ */
509
+ onGridEvent(event: GridEvent<ICoreSydept>): void;
510
+ /**
511
+ * Handle department refresh
512
+ */
513
+ onDepartmentRefresh(): void;
514
+ /**
515
+ * Handle department row click
516
+ */
517
+ onDepartmentRowClick(department: ICoreSydept): void;
518
+ /**
519
+ * Navigate to edit department form
520
+ */
521
+ editDepartment(itemId: string): void;
522
+ /**
523
+ * Get department by ID using the API
524
+ */
525
+ getDepartmentById(itemId: string): void;
526
+ /**
527
+ * Populate form with department data for editing
528
+ */
529
+ populateFormForEdit(department: ICoreSydept): void;
530
+ /**
531
+ * Delete department
532
+ */
533
+ deleteDepartment(itemId: string): Promise<void>;
534
+ /**
535
+ * Toggle department status
536
+ */
537
+ toggleDepartmentStatus(itemId: string): void;
538
+ /**
539
+ * Quick add or update department using reactive form
540
+ */
541
+ quickAddDepartment(): void;
542
+ /**
543
+ * Reset the quick add form to default values
544
+ */
545
+ resetQuickAddForm(): void;
546
+ /**
547
+ * Handle adding a child department
548
+ */
549
+ onAddChild(parentItem: ICoreSydept): void;
550
+ /**
551
+ * Clear selected parent department
552
+ */
553
+ clearSelectedParent(): void;
554
+ /**
555
+ * Handle click outside dropdown
556
+ */
557
+ private handleClickOutside;
558
+ /**
559
+ * Handle dropdown action clicks
560
+ */
561
+ private handleDropdownAction;
562
+ /**
563
+ * Toggle dropdown visibility
564
+ */
565
+ toggleDropdown(itemId: string): void;
566
+ /**
567
+ * Handle department action clicks
568
+ */
569
+ handleDepartmentAction(action: string, itemId: string): void;
570
+ /**
571
+ * Get status display
572
+ */
573
+ getStatusDisplay(isActive: boolean): string;
574
+ /**
575
+ * Get status class for styling
576
+ */
577
+ getStatusClass(isActive: boolean): string;
578
+ /**
579
+ * Generate dropdown items for department actions
580
+ */
581
+ getDropdownItems(row: ICoreSydept): DropdownItem[];
582
+ /**
583
+ * Handle dropdown item click
584
+ */
585
+ onDropdownItemClick(item: DropdownItem, row: ICoreSydept): void;
586
+ /**
587
+ * Close all dropdowns
588
+ */
589
+ private closeAllDropdowns;
590
+ /**
591
+ * Track by function for ngFor
592
+ */
593
+ trackByItemId(index: number, item: ICoreSydept): string;
594
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<CideCoreDepartmentListComponent, never>;
595
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<CideCoreDepartmentListComponent, "cide-core-department-list", never, {}, {}, never, never, true, never>;
596
+ }
597
+
598
+ declare class CideCoreDepartmentManagementService {
599
+ private http;
600
+ private departmentListSubject;
601
+ departmentList$: Observable<ICoreSydept[]>;
602
+ constructor(http: HttpClient);
603
+ /**
604
+ * Get department list from API
605
+ */
606
+ getDepartmentList(body: MDepartment): Observable<departmentControllerResponse>;
607
+ /**
608
+ * Get department list from cache (if available)
609
+ */
610
+ getDepartmentListFromCache(): ICoreSydept[];
611
+ /**
612
+ * Create new department
613
+ * POST ${coreRoutesUrl?.department} - payload: MDepartmentInsertUpdatePayload, response: departmentInsertUpdateControllerResponse
614
+ */
615
+ createDepartment(department: ICoreSydept): Observable<departmentControllerResponse>;
616
+ /**
617
+ * Update existing department
618
+ * POST ${coreRoutesUrl?.department} - payload: MDepartmentInsertUpdatePayload, response: departmentInsertUpdateControllerResponse
619
+ */
620
+ updateDepartment(id: string, department: ICoreSydept): Observable<departmentControllerResponse>;
621
+ /**
622
+ * Get department by ID
623
+ * GET ${coreRoutesUrl?.department}/byId/:query - payload: MDepartmentGetByIdPayload, response: departmentByIdControllerResponse
624
+ */
625
+ getDepartmentById(id: string): Observable<departmentByIdControllerResponse>;
626
+ /**
627
+ * Delete department
628
+ * DELETE ${coreRoutesUrl?.department}/:query - payload: MDepartmentDeletePayload, response: departmentDeleteControllerResponse
629
+ */
630
+ deleteDepartment(id: string): Observable<departmentDeleteControllerResponse>;
631
+ /**
632
+ * Delete multiple departments
633
+ */
634
+ deleteMultipleDepartments(ids: string[]): Observable<{
635
+ success: boolean;
636
+ message?: string;
637
+ data?: unknown;
638
+ }>;
639
+ /**
640
+ * Toggle department active status
641
+ */
642
+ toggleDepartmentStatus(payload: MDepartmentToggleStatusPayload): Observable<departmentToggleStatusControllerResponse>;
643
+ /**
644
+ * Find department by ID
645
+ */
646
+ findDepartmentById(id: string, items?: ICoreSydept[]): ICoreSydept | null;
647
+ /**
648
+ * Get parent departments for dropdown selection
649
+ */
650
+ getParentDepartments(excludeId?: string): ICoreSydept[];
651
+ /**
652
+ * Refresh department list from server
653
+ */
654
+ private refreshDepartmentList;
655
+ /**
656
+ * Handle errors
657
+ */
658
+ private handleError;
659
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<CideCoreDepartmentManagementService, never>;
660
+ static ɵprov: _angular_core.ɵɵInjectableDeclaration<CideCoreDepartmentManagementService>;
661
+ }
662
+
663
+ interface HierarchicalNode {
664
+ _id: string;
665
+ name: string;
666
+ code: string;
667
+ description: string;
668
+ type: 'department' | 'designation';
669
+ level: number;
670
+ expanded: boolean;
671
+ hasChildren: boolean;
672
+ children: HierarchicalNode[];
673
+ status: boolean;
674
+ grade_level: string;
675
+ parentId: string | null;
676
+ }
677
+ declare class CideCoreDesignationListComponent {
678
+ private destroyRef;
679
+ private designationService;
680
+ private gradeLevelService;
681
+ private departmentService;
682
+ private appState;
683
+ private fb;
684
+ private router;
685
+ private notificationService;
686
+ private confirmationService;
687
+ designationDetailsRendererTemplate: _angular_core.Signal<TemplateRef<TemplateContext<Record<string, unknown>>>>;
688
+ designationStatusRendererTemplate: _angular_core.Signal<TemplateRef<TemplateContext<Record<string, unknown>>>>;
689
+ actionsDropdownRendererTemplate: _angular_core.Signal<TemplateRef<TemplateContext<Record<string, unknown>>>>;
690
+ Math: Math;
691
+ designations: _angular_core.WritableSignal<ICoreSydsg[]>;
692
+ departments: _angular_core.WritableSignal<ICoreSydept[]>;
693
+ gradeLevels: _angular_core.WritableSignal<ICoreSydsgl[]>;
694
+ loading: _angular_core.WritableSignal<boolean>;
695
+ error: _angular_core.WritableSignal<string | null>;
696
+ selectedItems: _angular_core.WritableSignal<string[]>;
697
+ searchTerm: _angular_core.WritableSignal<string>;
698
+ selectedParentDesignation: _angular_core.WritableSignal<ICoreSydsg | null>;
699
+ selectedParentDepartment: _angular_core.WritableSignal<ICoreSydept | null>;
700
+ retrievedDesignation: _angular_core.WritableSignal<ICoreSydsg | null>;
701
+ isEditMode: _angular_core.WritableSignal<boolean>;
702
+ currentPage: _angular_core.WritableSignal<number>;
703
+ pageSize: _angular_core.WritableSignal<number>;
704
+ totalItems: _angular_core.WritableSignal<number>;
705
+ quickAddForm: _angular_forms.FormGroup<{
706
+ sydsg_name: _angular_forms.FormControl<string>;
707
+ sydsg_code: _angular_forms.FormControl<string>;
708
+ sydsg_description: _angular_forms.FormControl<string>;
709
+ sydsg_prent_id_desg: _angular_forms.FormControl<string>;
710
+ sydsg_department_id_sydpt: _angular_forms.FormControl<string>;
711
+ sydsg_grade_level_id_sydsgl: _angular_forms.FormControl<string>;
712
+ sydsg_isactive: _angular_forms.FormControl<boolean>;
713
+ desg_entity_id_syen: _angular_forms.FormControl<string>;
714
+ }>;
715
+ gridConfig: _angular_core.WritableSignal<GridConfiguration<ICoreSydsg>>;
716
+ templateRenderers: _angular_core.Signal<Record<string, TemplateRef<TemplateContext<Record<string, unknown>>>>>;
717
+ /**
718
+ * Get template renderers for data grid
719
+ */
720
+ getTemplateRenderers(): Record<string, TemplateRef<TemplateContext>>;
721
+ customRenderers: _angular_core.Signal<{
722
+ [x: string]: TemplateRef<TemplateContext<Record<string, unknown>>>;
723
+ }>;
724
+ /**
725
+ * Get custom renderers adapted for current data grid compatibility
726
+ */
727
+ getCustomRenderers(): Record<string, (value: unknown, row: ICoreSydsg) => string>;
728
+ actionHandlers: {
729
+ onEditDesignation: (row: ICoreSydsg) => void;
730
+ onToggleDesignation: (row: ICoreSydsg) => void;
731
+ onDeleteDesignation: (row: ICoreSydsg) => Promise<void>;
732
+ onDesignationRowClick: (row: ICoreSydsg) => void;
733
+ onDesignationRefresh: () => void;
734
+ onAddChild: (row: ICoreSydsg) => void;
735
+ };
736
+ filteredItems: _angular_core.Signal<ICoreSydsg[]>;
737
+ hasSelection: _angular_core.Signal<boolean>;
738
+ totalPages: _angular_core.Signal<number>;
739
+ hasNextPage: _angular_core.Signal<boolean>;
740
+ hasPreviousPage: _angular_core.Signal<boolean>;
741
+ gradeLevelOptions: _angular_core.Signal<{
742
+ value: string;
743
+ label: string;
744
+ }[]>;
745
+ departmentOptions: _angular_core.Signal<{
746
+ value: string;
747
+ label: string;
748
+ }[]>;
749
+ constructor();
750
+ /**
751
+ * Initialize component with modern patterns
752
+ */
753
+ private initializeComponent;
754
+ /**
755
+ * Setup event listeners for dropdown interactions
756
+ */
757
+ private setupEventListeners;
758
+ /**
759
+ * Cleanup event listeners
760
+ */
761
+ private cleanupEventListeners;
762
+ /**
763
+ * Expose global functions for dropdown interactions
764
+ */
765
+ private exposeGlobalFunctions;
766
+ /**
767
+ * Load designations from service
768
+ */
769
+ loadDesignations(): void;
770
+ /**
771
+ * Load departments from service
772
+ */
773
+ loadDepartments(): void;
774
+ /**
775
+ * Load grade levels from service
776
+ */
777
+ loadGradeLevels(): void;
778
+ /**
779
+ * Build hierarchical tree structure from departments and designations
780
+ * Based on FK relationships: _id (PK) -> sydsg_prent_id_desg (FK) OR sydsg_department_id_sydpt (FK)
781
+ */
782
+ private buildHierarchicalData;
783
+ /**
784
+ * Extract and set departments and grade levels from populated designation data
785
+ */
786
+ private extractAndSetDepartmentsAndGradeLevels;
787
+ /**
788
+ * Extract unique departments from designation data (since department data is populated in API response)
789
+ */
790
+ private extractDepartmentsFromDesignations;
791
+ /**
792
+ * Build and add designation hierarchy to department hierarchy
793
+ * This method handles the complete designation hierarchy and adds it to the appropriate departments
794
+ */
795
+ private buildAndAddDesignationHierarchy;
796
+ /**
797
+ * Build designation hierarchy based on FK relationships
798
+ * PK: _id, FK: sydsg_prent_id_desg (if set) OR sydsg_department_id_sydpt (if no parent designation)
799
+ */
800
+ private buildDesignationHierarchy;
801
+ /**
802
+ * Build department hierarchy with parent-child relationships
803
+ */
804
+ private buildDepartmentHierarchy;
805
+ /**
806
+ * Add designation hierarchy to department hierarchy
807
+ * Designations with department as parent (sydsg_department_id_sydpt) will be added to departments
808
+ */
809
+ private addDesignationHierarchyToDepartments;
810
+ /**
811
+ * Recursively add children designations to a parent designation
812
+ */
813
+ private addDesignationChildren;
814
+ /**
815
+ * Get grade level name by ID or from designation data
816
+ */
817
+ private getGradeLevelName;
818
+ /**
819
+ * Update grid data with hierarchical structure based on FK relationships
820
+ */
821
+ private updateGridData;
822
+ /**
823
+ * Flatten hierarchical data for grid display
824
+ */
825
+ private flattenHierarchicalData;
826
+ /**
827
+ * Handle grid events
828
+ */
829
+ onGridEvent(event: GridEvent<ICoreSydsg>): void;
830
+ /**
831
+ * Handle designation refresh
832
+ */
833
+ onDesignationRefresh(): void;
834
+ /**
835
+ * Handle designation row click
836
+ */
837
+ onDesignationRowClick(designation: ICoreSydsg): void;
838
+ /**
839
+ * Navigate to edit designation form
840
+ */
841
+ editDesignation(itemId: string): void;
842
+ /**
843
+ * Get designation by ID using the API
844
+ */
845
+ getDesignationById(itemId: string): void;
846
+ /**
847
+ * Populate form with designation data for editing
848
+ */
849
+ populateFormForEdit(designation: ICoreSydsg): void;
850
+ /**
851
+ * Delete designation with confirmation modal
852
+ */
853
+ deleteDesignation(itemId: string): Promise<void>;
854
+ /**
855
+ * Toggle designation status
856
+ */
857
+ toggleDesignationStatus(itemId: string): void;
858
+ /**
859
+ * Rename designation
860
+ */
861
+ renameDesignation(itemId: string, currentName: string): void;
862
+ /**
863
+ * Quick add or update designation using reactive form
864
+ */
865
+ quickAddDesignation(): void;
866
+ /**
867
+ * Reset the quick add form to default values
868
+ */
869
+ resetQuickAddForm(): void;
870
+ /**
871
+ * Handle adding a child designation
872
+ */
873
+ onAddChild(parentItem: ICoreSydsg): void;
874
+ /**
875
+ * Clear selected parent designation
876
+ */
877
+ clearSelectedParent(): void;
878
+ /**
879
+ * Clear selected parent department
880
+ */
881
+ clearSelectedParentDepartment(): void;
882
+ /**
883
+ * Handle department selection
884
+ */
885
+ onDepartmentSelect(department: ICoreSydept): void;
886
+ /**
887
+ * Handle click outside dropdown
888
+ */
889
+ private handleClickOutside;
890
+ /**
891
+ * Handle dropdown action clicks
892
+ */
893
+ private handleDropdownAction;
894
+ /**
895
+ * Toggle dropdown visibility
896
+ */
897
+ toggleDropdown(itemId: string): void;
898
+ /**
899
+ * Handle designation action clicks
900
+ */
901
+ handleDesignationAction(action: string, itemId: string): void;
902
+ /**
903
+ * Get status display
904
+ */
905
+ getStatusDisplay(isActive: boolean): string;
906
+ /**
907
+ * Get status class for styling
908
+ */
909
+ getStatusClass(isActive: boolean): string;
910
+ /**
911
+ * Generate dropdown items for designation actions
912
+ */
913
+ getDropdownItems(row: HierarchicalNode): DropdownItem[];
914
+ /**
915
+ * Handle dropdown item click
916
+ */
917
+ onDropdownItemClick(item: DropdownItem, row: HierarchicalNode): void;
918
+ /**
919
+ * Close all dropdowns
920
+ */
921
+ private closeAllDropdowns;
922
+ /**
923
+ * Track by function for ngFor
924
+ */
925
+ trackByItemId(index: number, item: ICoreSydsg): string;
926
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<CideCoreDesignationListComponent, never>;
927
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<CideCoreDesignationListComponent, "cide-core-designation-list", never, {}, {}, never, never, true, never>;
928
+ }
929
+
930
+ declare class CideCoreDesignationManagementService {
931
+ private http;
932
+ private apiUrl;
933
+ private designationListSubject;
934
+ designationList$: Observable<ICoreSydsg[]>;
935
+ constructor(http: HttpClient);
936
+ /**
937
+ * Get designation list from API
938
+ */
939
+ getDesignationList(body: MDesignation): Observable<designationControllerResponse>;
940
+ /**
941
+ * Get designation list from cache (if available)
942
+ */
943
+ getDesignationListFromCache(): ICoreSydsg[];
944
+ /**
945
+ * Create new designation
946
+ * POST ${coreRoutesUrl?.designation} - payload: MDesignationInsertUpdatePayload, response: designationInsertUpdateControllerResponse
947
+ */
948
+ createDesignation(designation: ICoreSydsg): Observable<designationInsertUpdateControllerResponse>;
949
+ /**
950
+ * Update existing designation
951
+ * POST ${coreRoutesUrl?.designation} - payload: MDesignationInsertUpdatePayload, response: designationInsertUpdateControllerResponse
952
+ */
953
+ updateDesignation(id: string, designation: ICoreSydsg): Observable<designationInsertUpdateControllerResponse>;
954
+ /**
955
+ * Get designation by ID
956
+ * GET ${coreRoutesUrl?.designation}/byId/:query - payload: MDesignationGetByIdPayload, response: designationByIdControllerResponse
957
+ */
958
+ getDesignationById(id: string): Observable<designationByIdControllerResponse>;
959
+ /**
960
+ * Delete designation
961
+ * DELETE ${coreRoutesUrl?.designation}/:query - payload: MDesignationDeletePayload, response: designationDeleteControllerResponse
962
+ */
963
+ deleteDesignation(id: string): Observable<designationDeleteControllerResponse>;
964
+ /**
965
+ * Delete multiple designations
966
+ */
967
+ deleteMultipleDesignations(ids: string[]): Observable<{
968
+ success: boolean;
969
+ message?: string;
970
+ data?: unknown;
971
+ }>;
972
+ /**
973
+ * Toggle designation active status
974
+ */
975
+ toggleDesignationStatus(id: string): Observable<designationToggleStatusControllerResponse>;
976
+ /**
977
+ * Find designation by ID
978
+ */
979
+ findDesignationById(id: string, items?: ICoreSydsg[]): ICoreSydsg | null;
980
+ /**
981
+ * Get parent designations for dropdown selection
982
+ */
983
+ getParentDesignations(excludeId?: string): ICoreSydsg[];
984
+ /**
985
+ * Refresh designation list from server
986
+ */
987
+ private refreshDesignationList;
988
+ /**
989
+ * Handle errors
990
+ */
991
+ private handleError;
992
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<CideCoreDesignationManagementService, never>;
993
+ static ɵprov: _angular_core.ɵɵInjectableDeclaration<CideCoreDesignationManagementService>;
994
+ }
995
+
996
+ declare class CideCoreGradeLevelListComponent {
997
+ private destroyRef;
998
+ private gradeLevelService;
999
+ private appState;
1000
+ private fb;
1001
+ private router;
1002
+ private notificationService;
1003
+ private confirmationService;
1004
+ dragHandleRendererTemplate: _angular_core.Signal<TemplateRef<TemplateContext<Record<string, unknown>>>>;
1005
+ gradeLevelDetailsRendererTemplate: _angular_core.Signal<TemplateRef<TemplateContext<Record<string, unknown>>>>;
1006
+ gradeLevelStatusRendererTemplate: _angular_core.Signal<TemplateRef<TemplateContext<Record<string, unknown>>>>;
1007
+ actionsDropdownRendererTemplate: _angular_core.Signal<TemplateRef<TemplateContext<Record<string, unknown>>>>;
1008
+ Math: Math;
1009
+ gradeLevels: _angular_core.WritableSignal<ICoreSydsgl[]>;
1010
+ loading: _angular_core.WritableSignal<boolean>;
1011
+ error: _angular_core.WritableSignal<string | null>;
1012
+ selectedItems: _angular_core.WritableSignal<string[]>;
1013
+ searchTerm: _angular_core.WritableSignal<string>;
1014
+ retrievedGradeLevel: _angular_core.WritableSignal<ICoreSydsgl | null>;
1015
+ isEditMode: _angular_core.WritableSignal<boolean>;
1016
+ hasOrderChanged: _angular_core.WritableSignal<boolean>;
1017
+ currentPage: _angular_core.WritableSignal<number>;
1018
+ pageSize: _angular_core.WritableSignal<number>;
1019
+ totalItems: _angular_core.WritableSignal<number>;
1020
+ quickAddForm: _angular_forms.FormGroup<{
1021
+ sydsgl_name: _angular_forms.FormControl<string>;
1022
+ sydsgl_description: _angular_forms.FormControl<string>;
1023
+ sydsgl_order: _angular_forms.FormControl<number>;
1024
+ sydsgl_isactive: _angular_forms.FormControl<boolean>;
1025
+ sydsgl_entity_id_syen: _angular_forms.FormControl<string>;
1026
+ }>;
1027
+ gridConfig: _angular_core.WritableSignal<GridConfiguration<ICoreSydsgl>>;
1028
+ templateRenderers: _angular_core.Signal<Record<string, TemplateRef<TemplateContext<Record<string, unknown>>>>>;
1029
+ /**
1030
+ * Get template renderers for data grid
1031
+ */
1032
+ getTemplateRenderers(): Record<string, TemplateRef<TemplateContext>>;
1033
+ customRenderers: _angular_core.Signal<{
1034
+ [x: string]: TemplateRef<TemplateContext<Record<string, unknown>>>;
1035
+ }>;
1036
+ /**
1037
+ * Get custom renderers adapted for current data grid compatibility
1038
+ */
1039
+ getCustomRenderers(): Record<string, (value: unknown, row: ICoreSydsgl) => string>;
1040
+ actionHandlers: {
1041
+ onEditGradeLevel: (row: ICoreSydsgl) => void;
1042
+ onToggleGradeLevel: (row: ICoreSydsgl) => void;
1043
+ onDeleteGradeLevel: (row: ICoreSydsgl) => Promise<void>;
1044
+ onGradeLevelRowClick: (row: ICoreSydsgl) => void;
1045
+ onGradeLevelRefresh: () => void;
1046
+ resetOrder: () => void;
1047
+ saveOrder: () => void;
1048
+ };
1049
+ filteredItems: _angular_core.Signal<ICoreSydsgl[]>;
1050
+ hasSelection: _angular_core.Signal<boolean>;
1051
+ totalPages: _angular_core.Signal<number>;
1052
+ hasNextPage: _angular_core.Signal<boolean>;
1053
+ hasPreviousPage: _angular_core.Signal<boolean>;
1054
+ nextOrder: _angular_core.Signal<number>;
1055
+ constructor();
1056
+ /**
1057
+ * Initialize component with modern patterns
1058
+ */
1059
+ private initializeComponent;
1060
+ /**
1061
+ * Setup event listeners for dropdown interactions
1062
+ */
1063
+ private setupEventListeners;
1064
+ /**
1065
+ * Cleanup event listeners
1066
+ */
1067
+ private cleanupEventListeners;
1068
+ /**
1069
+ * Expose global functions for dropdown interactions
1070
+ */
1071
+ private exposeGlobalFunctions;
1072
+ /**
1073
+ * Load grade levels from service
1074
+ */
1075
+ loadGradeLevels(): void;
1076
+ /**
1077
+ * Update grid data
1078
+ */
1079
+ private updateGridData;
1080
+ /**
1081
+ * Handle grid events
1082
+ */
1083
+ onGridEvent(event: GridEvent<ICoreSydsgl>): void;
1084
+ /**
1085
+ * Handle grade level refresh
1086
+ */
1087
+ onGradeLevelRefresh(): void;
1088
+ /**
1089
+ * Handle grade level reorder via drag and drop
1090
+ */
1091
+ onGradeLevelReorder(data: {
1092
+ sourceIndex: number;
1093
+ targetIndex: number;
1094
+ newOrder: ICoreSydsgl[];
1095
+ allOrders?: ICoreSydsgl[];
1096
+ }): void;
1097
+ /**
1098
+ * Update grid data after reordering
1099
+ */
1100
+ private updateGridDataAfterReorder;
1101
+ /**
1102
+ * Save grade level order using the change sequence API
1103
+ * This method is called by the data grid when save-order action is triggered
1104
+ */
1105
+ saveGradeLevelOrder(): void;
1106
+ /**
1107
+ * Reset drag order to original state
1108
+ */
1109
+ resetDragOrder(): void;
1110
+ /**
1111
+ * Check if order has changed
1112
+ */
1113
+ hasOrderChanges(): boolean;
1114
+ /**
1115
+ * Handle grade level row click
1116
+ */
1117
+ onGradeLevelRowClick(gradeLevel: ICoreSydsgl): void;
1118
+ /**
1119
+ * Navigate to edit grade level form
1120
+ */
1121
+ editGradeLevel(itemId: string): void;
1122
+ /**
1123
+ * Get grade level by ID using the API
1124
+ */
1125
+ getGradeLevelById(itemId: string): void;
1126
+ /**
1127
+ * Populate form with grade level data for editing
1128
+ */
1129
+ populateFormForEdit(gradeLevel: ICoreSydsgl): void;
1130
+ /**
1131
+ * Delete grade level with confirmation dialog
1132
+ */
1133
+ deleteGradeLevel(itemId: string): Promise<void>;
1134
+ /**
1135
+ * Delete multiple grade levels with confirmation dialog
1136
+ */
1137
+ deleteMultipleGradeLevels(): Promise<void>;
1138
+ /**
1139
+ * Toggle grade level status
1140
+ */
1141
+ toggleGradeLevelStatus(itemId: string): void;
1142
+ /**
1143
+ * Quick add or update grade level using reactive form
1144
+ */
1145
+ quickAddGradeLevel(): void;
1146
+ /**
1147
+ * Calculate the highest order from existing grade levels
1148
+ */
1149
+ private calculateNextOrder;
1150
+ /**
1151
+ * Reset the quick add form to default values
1152
+ */
1153
+ resetQuickAddForm(): void;
1154
+ /**
1155
+ * Handle click outside dropdown
1156
+ */
1157
+ private handleClickOutside;
1158
+ /**
1159
+ * Handle dropdown action clicks
1160
+ */
1161
+ private handleDropdownAction;
1162
+ /**
1163
+ * Toggle dropdown visibility
1164
+ */
1165
+ toggleDropdown(itemId: string): void;
1166
+ /**
1167
+ * Handle grade level action clicks
1168
+ */
1169
+ handleGradeLevelAction(action: string, itemId: string): void;
1170
+ /**
1171
+ * Get status display
1172
+ */
1173
+ getStatusDisplay(isActive: boolean): string;
1174
+ /**
1175
+ * Get status class for styling
1176
+ */
1177
+ getStatusClass(isActive: boolean): string;
1178
+ /**
1179
+ * Generate dropdown items for grade level actions
1180
+ */
1181
+ getDropdownItems(row: ICoreSydsgl): DropdownItem[];
1182
+ /**
1183
+ * Handle dropdown item click
1184
+ */
1185
+ onDropdownItemClick(item: DropdownItem, row: ICoreSydsgl): void;
1186
+ /**
1187
+ * Close all dropdowns
1188
+ */
1189
+ private closeAllDropdowns;
1190
+ /**
1191
+ * Track by function for ngFor
1192
+ */
1193
+ trackByItemId(index: number, item: ICoreSydsgl): string;
1194
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<CideCoreGradeLevelListComponent, never>;
1195
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<CideCoreGradeLevelListComponent, "cide-core-grade-level-list", never, {}, {}, never, never, true, never>;
1196
+ }
1197
+
1198
+ declare class CideCoreGradeLevelManagementService {
1199
+ private http;
1200
+ private apiUrl;
1201
+ private gradeLevelListSubject;
1202
+ gradeLevelList$: Observable<ICoreSydsgl[]>;
1203
+ constructor(http: HttpClient);
1204
+ /**
1205
+ * Get grade level list from API
1206
+ */
1207
+ getGradeLevelList(body: MGradeLevel): Observable<gradeLevelControllerResponse>;
1208
+ /**
1209
+ * Get grade level list from cache (if available)
1210
+ */
1211
+ getGradeLevelListFromCache(): ICoreSydsgl[];
1212
+ /**
1213
+ * Create new grade level
1214
+ * POST ${coreRoutesUrl?.gradeLevel} - payload: MGradeLevel, response: gradeLevelInsertUpdateControllerResponse
1215
+ */
1216
+ createGradeLevel(gradeLevel: ICoreSydsgl): Observable<gradeLevelControllerResponse>;
1217
+ /**
1218
+ * Update existing grade level
1219
+ * POST ${coreRoutesUrl?.gradeLevel} - payload: MGradeLevel, response: gradeLevelInsertUpdateControllerResponse
1220
+ */
1221
+ updateGradeLevel(id: string, gradeLevel: ICoreSydsgl): Observable<gradeLevelControllerResponse>;
1222
+ /**
1223
+ * Get grade level by ID
1224
+ * GET ${coreRoutesUrl?.gradeLevel}/byId/:query - payload: { id }, response: gradeLevelByIdControllerResponse
1225
+ */
1226
+ getGradeLevelById(payload: MGradeLevelGetByIdPayload): Observable<gradeLevelByIdControllerResponse>;
1227
+ /**
1228
+ * Delete grade level
1229
+ * DELETE ${coreRoutesUrl?.gradeLevel}/:query - payload: { id }, response: { success: boolean }
1230
+ */
1231
+ deleteGradeLevel(id: string): Observable<gradeLevelDeleteControllerResponse>;
1232
+ /**
1233
+ * Delete multiple grade levels
1234
+ */
1235
+ deleteMultipleGradeLevels(ids: string[]): Observable<{
1236
+ success: boolean;
1237
+ message?: string;
1238
+ data?: unknown;
1239
+ }>;
1240
+ /**
1241
+ * Toggle grade level active status
1242
+ * PATCH ${coreRoutesUrl?.gradeLevel}/toggle-status - payload: { id }, response: gradeLevelToggleStatusControllerResponse
1243
+ */
1244
+ toggleGradeLevelStatus(id: string): Observable<gradeLevelToggleStatusControllerResponse>;
1245
+ /**
1246
+ * Change grade level sequence
1247
+ * PATCH ${coreRoutesUrl?.gradeLevel}/change-sequence - payload: MGradeLevelChangeSequencePayload, response: gradeLevelChangeSequenceControllerResponse
1248
+ */
1249
+ changeGradeLevelSequence(payload: MGradeLevelChangeSequencePayload): Observable<gradeLevelChangeSequenceControllerResponse>;
1250
+ /**
1251
+ * Find grade level by ID
1252
+ */
1253
+ findGradeLevelById(id: string, items?: ICoreSydsgl[]): ICoreSydsgl | null;
1254
+ /**
1255
+ * Refresh grade level list from server
1256
+ */
1257
+ private refreshGradeLevelList;
1258
+ /**
1259
+ * Handle errors
1260
+ */
1261
+ private handleError;
1262
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<CideCoreGradeLevelManagementService, never>;
1263
+ static ɵprov: _angular_core.ɵɵInjectableDeclaration<CideCoreGradeLevelManagementService>;
1264
+ }
1265
+
1266
+ declare class CideCorePageListComponent {
1267
+ private destroyRef;
1268
+ private pageService;
1269
+ private appState;
1270
+ private router;
1271
+ pageDetailsRendererTemplate: _angular_core.Signal<TemplateRef<TemplateContext<Record<string, unknown>>>>;
1272
+ pageStatusRendererTemplate: _angular_core.Signal<TemplateRef<TemplateContext<Record<string, unknown>>>>;
1273
+ actionsDropdownRendererTemplate: _angular_core.Signal<TemplateRef<TemplateContext<Record<string, unknown>>>>;
1274
+ Math: Math;
1275
+ pages: _angular_core.WritableSignal<ICoreSypg[]>;
1276
+ loading: _angular_core.WritableSignal<boolean>;
1277
+ error: _angular_core.WritableSignal<string | null>;
1278
+ selectedItems: _angular_core.WritableSignal<string[]>;
1279
+ searchTerm: _angular_core.WritableSignal<string>;
1280
+ currentPage: _angular_core.WritableSignal<number>;
1281
+ pageSize: _angular_core.WritableSignal<number>;
1282
+ totalItems: _angular_core.WritableSignal<number>;
1283
+ gridConfig: _angular_core.WritableSignal<GridConfiguration<ICoreSypg>>;
1284
+ actionHandlers: {
1285
+ onEdit: (item: ICoreSypg) => void;
1286
+ onDelete: (item: ICoreSypg) => void;
1287
+ onToggleStatus: (item: ICoreSypg) => void;
1288
+ onManageThemes: (item: ICoreSypg) => void;
1289
+ onManageControls: (item: ICoreSypg) => void;
1290
+ };
1291
+ constructor();
1292
+ /**
1293
+ * Initialize component
1294
+ */
1295
+ private initializeComponent;
1296
+ /**
1297
+ * Load pages from API
1298
+ */
1299
+ private loadPages;
1300
+ /**
1301
+ * Update grid data
1302
+ */
1303
+ private updateGridData;
1304
+ /**
1305
+ * Get template renderers for grid
1306
+ */
1307
+ getTemplateRenderers(): Record<string, TemplateRef<TemplateContext>>;
1308
+ /**
1309
+ * Handle grid events
1310
+ */
1311
+ onGridEvent(event: GridEvent<ICoreSypg>): void;
1312
+ /**
1313
+ * Navigate to create page
1314
+ */
1315
+ createPage(): void;
1316
+ /**
1317
+ * Edit page - navigate to edit page
1318
+ */
1319
+ editPage(page: ICoreSypg): void;
1320
+ /**
1321
+ * Delete page
1322
+ */
1323
+ deletePage(page: ICoreSypg): void;
1324
+ /**
1325
+ * Toggle page status
1326
+ */
1327
+ togglePageStatus(page: ICoreSypg): void;
1328
+ /**
1329
+ * Manage themes for a page
1330
+ */
1331
+ manageThemes(page: ICoreSypg): void;
1332
+ /**
1333
+ * Manage controls for a page
1334
+ */
1335
+ manageControls(page: ICoreSypg): void;
1336
+ /**
1337
+ * Get dropdown items for actions
1338
+ */
1339
+ getActionDropdownItems(page: ICoreSypg): DropdownItem[];
1340
+ /**
1341
+ * Handle dropdown item click
1342
+ * This method handles clicks on dropdown menu items in the actions column
1343
+ */
1344
+ onDropdownItemClick(item: DropdownItem, row: ICoreSypg): void;
1345
+ /**
1346
+ * Close all dropdowns
1347
+ */
1348
+ private closeAllDropdowns;
1349
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<CideCorePageListComponent, never>;
1350
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<CideCorePageListComponent, "cide-core-page-list", never, {}, {}, never, never, true, never>;
1351
+ }
1352
+
1353
+ declare class CideCorePageThemeComponent implements OnInit {
1354
+ private destroyRef;
1355
+ private themeService;
1356
+ private appState;
1357
+ private fb;
1358
+ private router;
1359
+ private route;
1360
+ themeDetailsRendererTemplate: _angular_core.Signal<TemplateRef<TemplateContext<Record<string, unknown>>>>;
1361
+ themeStatusRendererTemplate: _angular_core.Signal<TemplateRef<TemplateContext<Record<string, unknown>>>>;
1362
+ actionsDropdownRendererTemplate: _angular_core.Signal<TemplateRef<TemplateContext<Record<string, unknown>>>>;
1363
+ Math: Math;
1364
+ themes: _angular_core.WritableSignal<ICoreSytm[]>;
1365
+ loading: _angular_core.WritableSignal<boolean>;
1366
+ error: _angular_core.WritableSignal<string | null>;
1367
+ selectedItems: _angular_core.WritableSignal<string[]>;
1368
+ searchTerm: _angular_core.WritableSignal<string>;
1369
+ filteredThemes: _angular_core.Signal<ICoreSytm[]>;
1370
+ onGallerySearchInput(event: Event): void;
1371
+ pageId: _angular_core.WritableSignal<string>;
1372
+ pageTitle: _angular_core.WritableSignal<string>;
1373
+ isEditMode: _angular_core.WritableSignal<boolean>;
1374
+ editingThemeId: _angular_core.WritableSignal<string | null>;
1375
+ retrievedTheme: _angular_core.WritableSignal<ICoreSytm | null>;
1376
+ currentPage: _angular_core.WritableSignal<number>;
1377
+ pageSize: _angular_core.WritableSignal<number>;
1378
+ totalItems: _angular_core.WritableSignal<number>;
1379
+ themeForm: FormGroup<{
1380
+ sytm_title: _angular_forms.FormControl<string>;
1381
+ sytm_desc: _angular_forms.FormControl<string>;
1382
+ sytm_theme_code: _angular_forms.FormControl<string>;
1383
+ sytm_preview_id_fm: _angular_forms.FormControl<string>;
1384
+ sytm_sub_title: _angular_forms.FormControl<string>;
1385
+ sytm_configuration: _angular_forms.FormControl<string>;
1386
+ sytm_entity_id_syen: _angular_forms.FormControl<string>;
1387
+ sytm_isselected: _angular_forms.FormControl<boolean>;
1388
+ sytm_layout: FormGroup<{
1389
+ sytm_layout_sidebar: FormGroup<{
1390
+ status: _angular_forms.FormControl<boolean>;
1391
+ }>;
1392
+ sytm_layout_header: FormGroup<{
1393
+ status: _angular_forms.FormControl<boolean>;
1394
+ }>;
1395
+ sytm_layout_footer: FormGroup<{
1396
+ status: _angular_forms.FormControl<boolean>;
1397
+ }>;
1398
+ sytm_layout_breadcrumb: FormGroup<{
1399
+ status: _angular_forms.FormControl<boolean>;
1400
+ }>;
1401
+ sytm_layout_console: FormGroup<{
1402
+ status: _angular_forms.FormControl<boolean>;
1403
+ }>;
1404
+ sytm_layout_request: FormGroup<{
1405
+ status: _angular_forms.FormControl<boolean>;
1406
+ }>;
1407
+ sytm_layout_drawer: FormArray<_angular_forms.FormControl<ICoreSythDrawer>>;
1408
+ }>;
1409
+ sytm_isactive: _angular_forms.FormControl<boolean>;
1410
+ }>;
1411
+ isFormDirty: _angular_core.Signal<boolean>;
1412
+ layoutOptions: readonly [{
1413
+ readonly value: "sidebar";
1414
+ readonly label: "Sidebar";
1415
+ }, {
1416
+ readonly value: "header";
1417
+ readonly label: "Header";
1418
+ }, {
1419
+ readonly value: "footer";
1420
+ readonly label: "Footer";
1421
+ }, {
1422
+ readonly value: "breadcrumb";
1423
+ readonly label: "Breadcrumb";
1424
+ }, {
1425
+ readonly value: "console";
1426
+ readonly label: "Console";
1427
+ }, {
1428
+ readonly value: "request";
1429
+ readonly label: "Request";
1430
+ }];
1431
+ enabledLayoutSelections(): string[];
1432
+ onEnabledLayoutChange(values: string[]): void;
1433
+ gridConfig: _angular_core.WritableSignal<GridConfiguration<ICoreSytm>>;
1434
+ actionHandlers: {
1435
+ onEdit: (item: ICoreSytm) => void;
1436
+ onDelete: (item: ICoreSytm) => void;
1437
+ onToggleStatus: (item: ICoreSytm) => void;
1438
+ };
1439
+ ngOnInit(): void;
1440
+ /**
1441
+ * Initialize component
1442
+ */
1443
+ private initializeComponent;
1444
+ /**
1445
+ * Load themes from API
1446
+ */
1447
+ private loadThemes;
1448
+ /**
1449
+ * Setup form subscriptions
1450
+ */
1451
+ private setupFormSubscriptions;
1452
+ /**
1453
+ * Update grid data
1454
+ */
1455
+ private updateGridData;
1456
+ /**
1457
+ * Get custom renderers for grid
1458
+ */
1459
+ /**
1460
+ * Get template renderers for grid
1461
+ */
1462
+ getTemplateRenderers(): Record<string, TemplateRef<TemplateContext>>;
1463
+ /**
1464
+ * Handle grid events
1465
+ */
1466
+ onGridEvent(event: GridEvent<ICoreSytm>): void;
1467
+ /**
1468
+ * Create new theme
1469
+ */
1470
+ createTheme(): void;
1471
+ /**
1472
+ * Update existing theme
1473
+ */
1474
+ updateTheme(): void;
1475
+ /**
1476
+ * Edit theme
1477
+ */
1478
+ editTheme(theme: ICoreSytm): void;
1479
+ /**
1480
+ * Delete theme
1481
+ */
1482
+ deleteTheme(theme: ICoreSytm): void;
1483
+ /**
1484
+ * Toggle theme status
1485
+ */
1486
+ toggleThemeStatus(theme: ICoreSytm): void;
1487
+ /**
1488
+ * Save theme (create or update)
1489
+ */
1490
+ saveTheme(): void;
1491
+ /**
1492
+ * Cancel form
1493
+ */
1494
+ cancelForm(): void;
1495
+ /**
1496
+ * Go back to page list
1497
+ */
1498
+ goBack(): void;
1499
+ /**
1500
+ * Reset form
1501
+ */
1502
+ private resetForm;
1503
+ /**
1504
+ * Mark form as touched to trigger validation display
1505
+ */
1506
+ private markFormAsTouched;
1507
+ /**
1508
+ * Get dropdown items for actions
1509
+ */
1510
+ getActionDropdownItems(theme: ICoreSytm): DropdownItem[];
1511
+ /**
1512
+ * Handle dropdown item click
1513
+ * This method handles clicks on dropdown menu items in the actions column
1514
+ */
1515
+ onDropdownItemClick(item: DropdownItem, row: ICoreSytm): void;
1516
+ /**
1517
+ * Close all dropdowns
1518
+ */
1519
+ private closeAllDropdowns;
1520
+ drawerConfigOptions: {
1521
+ value: string;
1522
+ label: string;
1523
+ }[];
1524
+ get drawerArray(): FormArray<FormGroup>;
1525
+ private createDrawerGroup;
1526
+ addDrawer(): void;
1527
+ removeDrawer(index: number): void;
1528
+ /**
1529
+ * Set selected theme (only one can be selected per page)
1530
+ */
1531
+ setSelectedTheme(theme: ICoreSytm): void;
1532
+ getPreviewImageUploadData(): FileUploadData;
1533
+ onPreviewImageUploadSuccess(fileId: string): void;
1534
+ onPreviewImageUploadError(error: string): void;
1535
+ onPreviewImageUploadProgress(progress: number): void;
1536
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<CideCorePageThemeComponent, never>;
1537
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<CideCorePageThemeComponent, "cide-core-page-theme", never, {}, {}, never, never, true, never>;
1538
+ }
1539
+
1540
+ declare class CideCorePageControlsComponent implements OnInit {
1541
+ private destroyRef;
1542
+ private controlsService;
1543
+ private appState;
1544
+ private fb;
1545
+ private router;
1546
+ private route;
1547
+ Math: Math;
1548
+ controls: _angular_core.WritableSignal<ICoreSype[]>;
1549
+ loading: _angular_core.WritableSignal<boolean>;
1550
+ error: _angular_core.WritableSignal<string | null>;
1551
+ selectedItems: _angular_core.WritableSignal<string[]>;
1552
+ searchTerm: _angular_core.WritableSignal<string>;
1553
+ pageId: _angular_core.WritableSignal<string>;
1554
+ pageTitle: _angular_core.WritableSignal<string>;
1555
+ isEditMode: _angular_core.WritableSignal<boolean>;
1556
+ editingControlId: _angular_core.WritableSignal<string | null>;
1557
+ retrievedControl: _angular_core.WritableSignal<ICoreSype | null>;
1558
+ selectedControlId: _angular_core.WritableSignal<string | null>;
1559
+ currentPage: _angular_core.WritableSignal<number>;
1560
+ pageSize: _angular_core.WritableSignal<number>;
1561
+ totalItems: _angular_core.WritableSignal<number>;
1562
+ controlForm: _angular_forms.FormGroup<{
1563
+ sype_key: _angular_forms.FormControl<string>;
1564
+ sype_label: _angular_forms.FormControl<string>;
1565
+ sype_label_hide: _angular_forms.FormControl<boolean>;
1566
+ sype_auto_complete: _angular_forms.FormControl<boolean>;
1567
+ sype_hide_helper_and_error_text: _angular_forms.FormControl<boolean>;
1568
+ sype_type: _angular_forms.FormControl<string>;
1569
+ sype_option_key: _angular_forms.FormControl<string>;
1570
+ sype_placeholder: _angular_forms.FormControl<string>;
1571
+ sype_min_length: _angular_forms.FormControl<number>;
1572
+ sype_max_length: _angular_forms.FormControl<number>;
1573
+ sype_regex: _angular_forms.FormControl<string>;
1574
+ sype_required: _angular_forms.FormControl<boolean>;
1575
+ sype_disabled: _angular_forms.FormControl<boolean>;
1576
+ sype_width: _angular_forms.FormControl<string>;
1577
+ sype_height: _angular_forms.FormControl<string>;
1578
+ sype_label_placement: _angular_forms.FormControl<"fixed" | "floating">;
1579
+ sype_helper_text_collapse: _angular_forms.FormControl<boolean>;
1580
+ sype_default: _angular_forms.FormControl<string | number | boolean>;
1581
+ sype_tooltip: _angular_forms.FormControl<string>;
1582
+ sype_size: _angular_forms.FormControl<"xs" | "sm" | "md" | "lg" | "xl" | "3xs" | "2xs" | "xxl">;
1583
+ sype_leading_icon: _angular_forms.FormControl<string>;
1584
+ sype_isactive: _angular_forms.FormControl<boolean>;
1585
+ sype_entity_id_syen: _angular_forms.FormControl<string>;
1586
+ }>;
1587
+ isFormDirty: _angular_core.Signal<boolean>;
1588
+ ngOnInit(): void;
1589
+ /**
1590
+ * Initialize component
1591
+ */
1592
+ private initializeComponent;
1593
+ /**
1594
+ * Set entity ID from app state - auto-assigned internally
1595
+ */
1596
+ private setEntityIdFromAppState;
1597
+ /**
1598
+ * Load controls from API
1599
+ */
1600
+ private loadControls;
1601
+ /**
1602
+ * Setup form subscriptions
1603
+ */
1604
+ private setupFormSubscriptions;
1605
+ /**
1606
+ * Create new control
1607
+ */
1608
+ createControl(): void;
1609
+ /**
1610
+ * Update existing control
1611
+ */
1612
+ updateControl(): void;
1613
+ /**
1614
+ * Edit control
1615
+ */
1616
+ editControl(control: ICoreSype): void;
1617
+ /**
1618
+ * Delete control
1619
+ */
1620
+ deleteControl(control: ICoreSype): void;
1621
+ /**
1622
+ * Toggle control status
1623
+ */
1624
+ toggleControlStatus(control: ICoreSype): void;
1625
+ /**
1626
+ * Save control (create or update)
1627
+ */
1628
+ saveControl(): void;
1629
+ /**
1630
+ * Cancel form
1631
+ */
1632
+ cancelForm(): void;
1633
+ /**
1634
+ * Go back to page list
1635
+ */
1636
+ goBack(): void;
1637
+ /**
1638
+ * Reset form
1639
+ */
1640
+ private resetForm;
1641
+ /**
1642
+ * Mark form as touched to trigger validation display
1643
+ */
1644
+ private markFormAsTouched;
1645
+ /**
1646
+ * Get dropdown items for actions
1647
+ */
1648
+ getActionDropdownItems(control: ICoreSype): DropdownItem[];
1649
+ /**
1650
+ * Handle dropdown item click
1651
+ */
1652
+ onDropdownItemClick(item: DropdownItem, control: ICoreSype): void;
1653
+ /**
1654
+ * Close all dropdowns
1655
+ */
1656
+ closeAllDropdowns(): void;
1657
+ selectControl(control: ICoreSype): void;
1658
+ trackByControlId(index: number, control: ICoreSype): string;
1659
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<CideCorePageControlsComponent, never>;
1660
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<CideCorePageControlsComponent, "cide-core-page-controls", never, {}, {}, never, never, true, never>;
1661
+ }
1662
+
1663
+ declare class CideCorePageManagementService {
1664
+ private http;
1665
+ constructor(http: HttpClient);
1666
+ /**
1667
+ * Get page list from API
1668
+ */
1669
+ getPageList(body: MSystemPages): Observable<systemPagesControllerResponse>;
1670
+ /**
1671
+ * Create or update page using single API endpoint
1672
+ */
1673
+ createOrUpdatePage(payload: MSystemPagesInsertUpdatePayload): Observable<systemPagesInsertUpdateControllerResponse>;
1674
+ /**
1675
+ * Get page by ID
1676
+ */
1677
+ getPageById(id: string): Observable<systemPagesByIdControllerResponse>;
1678
+ /**
1679
+ * Delete page
1680
+ */
1681
+ deletePage(id: string): Observable<systemPagesDeleteControllerResponse>;
1682
+ /**
1683
+ * Toggle page active status
1684
+ */
1685
+ togglePageStatus(payload: MSystemPagesToggleStatusPayload): Observable<systemPagesToggleStatusControllerResponse>;
1686
+ /**
1687
+ * Find page by ID using API
1688
+ */
1689
+ findPageById(payload: MSystemPagesCheckCodeExistsPayload): Observable<systemPagesCheckCodeExistsControllerResponse>;
1690
+ /**
1691
+ * Check if page code already exists
1692
+ */
1693
+ checkPageCodeExists(payload: MSystemPagesCheckCodeExistsPayload): Observable<boolean>;
1694
+ /**
1695
+ * Handle errors
1696
+ */
1697
+ private handleError;
1698
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<CideCorePageManagementService, never>;
1699
+ static ɵprov: _angular_core.ɵɵInjectableDeclaration<CideCorePageManagementService>;
1700
+ }
1701
+
1702
+ declare class CideCorePageThemeService {
1703
+ private http;
1704
+ private apiUrl;
1705
+ constructor(http: HttpClient);
1706
+ /**
1707
+ * Get theme list from API
1708
+ */
1709
+ getThemeList(body: MSystemPagesTheme): Observable<systemPagesThemeControllerResponse>;
1710
+ /**
1711
+ * Create new theme
1712
+ */
1713
+ createTheme(payload: MSystemPagesThemeInsertUpdatePayload): Observable<systemPagesThemeInsertUpdateControllerResponse>;
1714
+ /**
1715
+ * Update existing theme
1716
+ */
1717
+ updateTheme(payload: MSystemPagesThemeInsertUpdatePayload): Observable<systemPagesThemeInsertUpdateControllerResponse>;
1718
+ /**
1719
+ * Get theme by ID
1720
+ */
1721
+ getThemeById(id: string): Observable<systemPagesThemeByIdControllerResponse>;
1722
+ /**
1723
+ * Get themes by page ID
1724
+ */
1725
+ getThemesByPageId(pageId: string): Observable<systemPagesThemeByPageIdControllerResponse>;
1726
+ /**
1727
+ * Delete theme
1728
+ */
1729
+ deleteTheme(id: string): Observable<systemPagesThemeDeleteControllerResponse>;
1730
+ /**
1731
+ * Toggle theme active status
1732
+ */
1733
+ toggleThemeStatus(payload: MSystemPagesThemeToggleStatusPayload): Observable<systemPagesThemeToggleStatusControllerResponse>;
1734
+ /**
1735
+ * Handle errors
1736
+ */
1737
+ private handleError;
1738
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<CideCorePageThemeService, never>;
1739
+ static ɵprov: _angular_core.ɵɵInjectableDeclaration<CideCorePageThemeService>;
1740
+ }
1741
+
1742
+ declare class CideCorePageControlsService {
1743
+ private http;
1744
+ constructor(http: HttpClient);
1745
+ /**
1746
+ * Get control list from API
1747
+ */
1748
+ getControlList(body: MPageElements): Observable<pageElementsControllerResponse>;
1749
+ /**
1750
+ * Create new control
1751
+ */
1752
+ createControl(payload: MPageElementsInsertUpdatePayload): Observable<pageElementsInsertUpdateControllerResponse>;
1753
+ /**
1754
+ * Update existing control
1755
+ */
1756
+ updateControl(payload: MPageElementsInsertUpdatePayload): Observable<pageElementsInsertUpdateControllerResponse>;
1757
+ /**
1758
+ * Get control by ID
1759
+ */
1760
+ getControlById(id: string): Observable<pageElementsByIdControllerResponse>;
1761
+ /**
1762
+ * Get controls by page ID
1763
+ */
1764
+ getControlsByPageId(pageId: string): Observable<pageElementsByPageIdControllerResponse>;
1765
+ /**
1766
+ * Get control mappings by page ID
1767
+ */
1768
+ getControlMappingsByPageId(pageId: string): Observable<pageElementsMappingByPageIdControllerResponse>;
1769
+ /**
1770
+ * Create control mapping
1771
+ */
1772
+ createControlMapping(payload: MPageElementsMappingInsertUpdatePayload): Observable<pageElementsMappingInsertUpdateControllerResponse>;
1773
+ /**
1774
+ * Delete control mapping
1775
+ */
1776
+ deleteControlMapping(id: string): Observable<pageElementsMappingDeleteControllerResponse>;
1777
+ /**
1778
+ * Delete control
1779
+ */
1780
+ deleteControl(id: string): Observable<pageElementsDeleteControllerResponse>;
1781
+ /**
1782
+ * Toggle control active status
1783
+ */
1784
+ toggleControlStatus(payload: MPageElementsToggleStatusPayload): Observable<pageElementsToggleStatusControllerResponse>;
1785
+ /**
1786
+ * Handle errors
1787
+ */
1788
+ private handleError;
1789
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<CideCorePageControlsService, never>;
1790
+ static ɵprov: _angular_core.ɵɵInjectableDeclaration<CideCorePageControlsService>;
1791
+ }
1792
+
1793
+ export { CideCoreDepartmentListComponent, CideCoreDepartmentManagementService, CideCoreDesignationListComponent, CideCoreDesignationManagementService, CideCoreGradeLevelListComponent, CideCoreGradeLevelManagementService, CideCorePageControlsComponent, CideCorePageControlsService, CideCorePageListComponent, CideCorePageManagementService, CideCorePageThemeComponent, CideCorePageThemeService, CloudIdeCoreComponent, CloudIdeCoreService, MenuListComponent, MenuManagementService, coreRoutes };