cloud-ide-layout 1.0.128 → 1.0.130
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/fesm2022/{cloud-ide-layout-cloud-ide-layout-rUYm3HK3.mjs → cloud-ide-layout-cloud-ide-layout-BbNpkUNq.mjs} +46 -24
- package/fesm2022/cloud-ide-layout-cloud-ide-layout-BbNpkUNq.mjs.map +1 -0
- package/fesm2022/cloud-ide-layout-dashboard-cards.service-BbJ4rb2S.mjs.map +1 -1
- package/fesm2022/{cloud-ide-layout-dashboard-manager.component-B07pZGyf.mjs → cloud-ide-layout-dashboard-manager.component-Cet1zc7W.mjs} +308 -308
- package/fesm2022/cloud-ide-layout-dashboard-manager.component-Cet1zc7W.mjs.map +1 -0
- package/fesm2022/{cloud-ide-layout-drawer-theme.component-BEZtWw5o.mjs → cloud-ide-layout-drawer-theme.component-Gdug6J1K.mjs} +2 -2
- package/fesm2022/{cloud-ide-layout-drawer-theme.component-BEZtWw5o.mjs.map → cloud-ide-layout-drawer-theme.component-Gdug6J1K.mjs.map} +1 -1
- package/fesm2022/{cloud-ide-layout-floating-entity-selection.component-BKoJPKEE.mjs → cloud-ide-layout-floating-entity-selection.component-C6e-ATZ_.mjs} +2 -2
- package/fesm2022/{cloud-ide-layout-floating-entity-selection.component-BKoJPKEE.mjs.map → cloud-ide-layout-floating-entity-selection.component-C6e-ATZ_.mjs.map} +1 -1
- package/fesm2022/cloud-ide-layout-home-wrapper.component-CeuB9Nsb.mjs +272 -0
- package/fesm2022/cloud-ide-layout-home-wrapper.component-CeuB9Nsb.mjs.map +1 -0
- package/fesm2022/{cloud-ide-layout-sidedrawer-notes.component-CaFNYLdT.mjs → cloud-ide-layout-sidedrawer-notes.component-DMlbYKSS.mjs} +2 -2
- package/fesm2022/{cloud-ide-layout-sidedrawer-notes.component-CaFNYLdT.mjs.map → cloud-ide-layout-sidedrawer-notes.component-DMlbYKSS.mjs.map} +1 -1
- package/fesm2022/cloud-ide-layout.mjs +1 -1
- package/package.json +1 -1
- package/fesm2022/cloud-ide-layout-cloud-ide-layout-rUYm3HK3.mjs.map +0 -1
- package/fesm2022/cloud-ide-layout-dashboard-manager.component-B07pZGyf.mjs.map +0 -1
- package/fesm2022/cloud-ide-layout-home-wrapper.component-Cwzqvnkc.mjs +0 -272
- package/fesm2022/cloud-ide-layout-home-wrapper.component-Cwzqvnkc.mjs.map +0 -1
|
@@ -3,7 +3,7 @@ import { inject, signal, computed, Component } from '@angular/core';
|
|
|
3
3
|
import { CommonModule } from '@angular/common';
|
|
4
4
|
import * as i1 from '@angular/forms';
|
|
5
5
|
import { FormsModule } from '@angular/forms';
|
|
6
|
-
import { C as CideLytSharedWrapperComponent } from './cloud-ide-layout-cloud-ide-layout-
|
|
6
|
+
import { C as CideLytSharedWrapperComponent } from './cloud-ide-layout-cloud-ide-layout-BbNpkUNq.mjs';
|
|
7
7
|
import { D as DashboardCardsService } from './cloud-ide-layout-dashboard-cards.service-BbJ4rb2S.mjs';
|
|
8
8
|
import { NotificationService, ConfirmationService, CideEleDataGridComponent, CideEleButtonComponent, CideInputComponent, CideSelectComponent } from 'cloud-ide-element';
|
|
9
9
|
|
|
@@ -323,159 +323,159 @@ class DashboardManagerComponent {
|
|
|
323
323
|
this.cardForm.apiEndpoint = String(value);
|
|
324
324
|
}
|
|
325
325
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.7", ngImport: i0, type: DashboardManagerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
326
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.1.7", type: DashboardManagerComponent, isStandalone: true, selector: "cide-lyt-dashboard-manager", ngImport: i0, template: `
|
|
327
|
-
<cide-lyt-shared-wrapper [shared_wrapper_setup_param]="shared_wrapper_setup_param">
|
|
328
|
-
<div class="tw-p-4 tw-space-y-4">
|
|
329
|
-
<!-- Header -->
|
|
330
|
-
<div class="tw-flex tw-justify-between tw-items-center">
|
|
331
|
-
<h2 class="tw-text-2xl tw-font-bold">Dashboard Manager</h2>
|
|
332
|
-
<cide-ele-button
|
|
333
|
-
[label]="'Add New Card'"
|
|
334
|
-
leftIcon="add"
|
|
335
|
-
(click)="openAddCardModal()"
|
|
336
|
-
variant="primary">
|
|
337
|
-
</cide-ele-button>
|
|
338
|
-
</div>
|
|
339
|
-
|
|
340
|
-
<!-- Cards Grid -->
|
|
341
|
-
<cide-ele-data-grid
|
|
342
|
-
[config]="gridConfig()"
|
|
343
|
-
(gridEvent)="onGridEvent($event)">
|
|
344
|
-
</cide-ele-data-grid>
|
|
345
|
-
|
|
346
|
-
<!-- Add/Edit Card Modal -->
|
|
347
|
-
@if (showModal()) {
|
|
348
|
-
<div class="tw-fixed tw-inset-0 tw-bg-black tw-bg-opacity-50 tw-flex tw-items-center tw-justify-center tw-z-50">
|
|
349
|
-
<div class="tw-bg-white tw-rounded-lg tw-p-6 tw-max-w-2xl tw-w-full tw-max-h-[90vh] tw-overflow-y-auto">
|
|
350
|
-
<h3 class="tw-text-xl tw-font-bold tw-mb-4">
|
|
351
|
-
{{ editingCard() ? 'Edit Card' : 'Add New Card' }}
|
|
352
|
-
</h3>
|
|
353
|
-
|
|
354
|
-
<form (ngSubmit)="saveCard()" class="tw-space-y-4">
|
|
355
|
-
<div class="tw-grid tw-grid-cols-2 tw-gap-4">
|
|
356
|
-
<div>
|
|
357
|
-
<label class="tw-block tw-text-sm tw-font-medium tw-mb-1">Title</label>
|
|
358
|
-
<cide-ele-input
|
|
359
|
-
[(ngModel)]="cardForm.title"
|
|
360
|
-
[name]="'title'"
|
|
361
|
-
[required]="true"
|
|
362
|
-
[placeholder]="'Enter card title'">
|
|
363
|
-
</cide-ele-input>
|
|
364
|
-
</div>
|
|
365
|
-
|
|
366
|
-
<div>
|
|
367
|
-
<label class="tw-block tw-text-sm tw-font-medium tw-mb-1">Type</label>
|
|
368
|
-
<cide-ele-select
|
|
369
|
-
[ngModel]="cardForm.type || 'custom'"
|
|
370
|
-
(ngModelChange)="onTypeChange($event)"
|
|
371
|
-
[options]="cardTypes"
|
|
372
|
-
[required]="true">
|
|
373
|
-
</cide-ele-select>
|
|
374
|
-
</div>
|
|
375
|
-
</div>
|
|
376
|
-
|
|
377
|
-
<div>
|
|
378
|
-
<label class="tw-block tw-text-sm tw-font-medium tw-mb-1">Description</label>
|
|
379
|
-
<cide-ele-input
|
|
380
|
-
[(ngModel)]="cardForm.description"
|
|
381
|
-
[name]="'description'"
|
|
382
|
-
[type]="'text'"
|
|
383
|
-
[placeholder]="'Enter card description'">
|
|
384
|
-
</cide-ele-input>
|
|
385
|
-
</div>
|
|
386
|
-
|
|
387
|
-
<div>
|
|
388
|
-
<label class="tw-block tw-text-sm tw-font-medium tw-mb-1">API Endpoint</label>
|
|
389
|
-
<cide-ele-select
|
|
390
|
-
[ngModel]="cardForm.apiEndpoint"
|
|
391
|
-
(ngModelChange)="onApiEndpointChange($event)"
|
|
392
|
-
[options]="apiEndpointsOptions()"
|
|
393
|
-
[placeholder]="'Select API endpoint'">
|
|
394
|
-
</cide-ele-select>
|
|
395
|
-
</div>
|
|
396
|
-
|
|
397
|
-
<div class="tw-grid tw-grid-cols-2 tw-gap-4">
|
|
398
|
-
<div>
|
|
399
|
-
<label class="tw-block tw-text-sm tw-font-medium tw-mb-1">Icon</label>
|
|
400
|
-
<cide-ele-input
|
|
401
|
-
[(ngModel)]="cardForm.icon"
|
|
402
|
-
[name]="'icon'"
|
|
403
|
-
[placeholder]="'e.g., dashboard, analytics'">
|
|
404
|
-
</cide-ele-input>
|
|
405
|
-
</div>
|
|
406
|
-
|
|
407
|
-
<div>
|
|
408
|
-
<label class="tw-block tw-text-sm tw-font-medium tw-mb-1">Color</label>
|
|
409
|
-
<cide-ele-input
|
|
410
|
-
[(ngModel)]="cardForm.color"
|
|
411
|
-
[name]="'color'"
|
|
412
|
-
[type]="'text'"
|
|
413
|
-
[placeholder]="'#3B82F6'">
|
|
414
|
-
</cide-ele-input>
|
|
415
|
-
</div>
|
|
416
|
-
</div>
|
|
417
|
-
|
|
418
|
-
<div class="tw-grid tw-grid-cols-4 tw-gap-4">
|
|
419
|
-
<div>
|
|
420
|
-
<label class="tw-block tw-text-sm tw-font-medium tw-mb-1">Row</label>
|
|
421
|
-
<cide-ele-input
|
|
422
|
-
[(ngModel)]="cardForm.position.row"
|
|
423
|
-
[name]="'row'"
|
|
424
|
-
[type]="'number'"
|
|
425
|
-
[min]="1">
|
|
426
|
-
</cide-ele-input>
|
|
427
|
-
</div>
|
|
428
|
-
|
|
429
|
-
<div>
|
|
430
|
-
<label class="tw-block tw-text-sm tw-font-medium tw-mb-1">Col</label>
|
|
431
|
-
<cide-ele-input
|
|
432
|
-
[(ngModel)]="cardForm.position.col"
|
|
433
|
-
[name]="'col'"
|
|
434
|
-
[type]="'number'"
|
|
435
|
-
[min]="1">
|
|
436
|
-
</cide-ele-input>
|
|
437
|
-
</div>
|
|
438
|
-
|
|
439
|
-
<div>
|
|
440
|
-
<label class="tw-block tw-text-sm tw-font-medium tw-mb-1">Col Span</label>
|
|
441
|
-
<cide-ele-input
|
|
442
|
-
[(ngModel)]="cardForm.position.colspan"
|
|
443
|
-
[name]="'colspan'"
|
|
444
|
-
[type]="'number'"
|
|
445
|
-
[min]="1"
|
|
446
|
-
[max]="12">
|
|
447
|
-
</cide-ele-input>
|
|
448
|
-
</div>
|
|
449
|
-
|
|
450
|
-
<div>
|
|
451
|
-
<label class="tw-block tw-text-sm tw-font-medium tw-mb-1">Row Span</label>
|
|
452
|
-
<cide-ele-input
|
|
453
|
-
[(ngModel)]="cardForm.position.rowspan"
|
|
454
|
-
[name]="'rowspan'"
|
|
455
|
-
[type]="'number'"
|
|
456
|
-
[min]="1">
|
|
457
|
-
</cide-ele-input>
|
|
458
|
-
</div>
|
|
459
|
-
</div>
|
|
460
|
-
|
|
461
|
-
<div class="tw-flex tw-gap-2 tw-pt-4">
|
|
462
|
-
<cide-ele-button
|
|
463
|
-
[label]="'Cancel'"
|
|
464
|
-
variant="secondary"
|
|
465
|
-
(click)="closeModal()">
|
|
466
|
-
</cide-ele-button>
|
|
467
|
-
<cide-ele-button
|
|
468
|
-
[label]="'Save'"
|
|
469
|
-
variant="primary"
|
|
470
|
-
[type]="'submit'">
|
|
471
|
-
</cide-ele-button>
|
|
472
|
-
</div>
|
|
473
|
-
</form>
|
|
474
|
-
</div>
|
|
475
|
-
</div>
|
|
476
|
-
}
|
|
477
|
-
</div>
|
|
478
|
-
</cide-lyt-shared-wrapper>
|
|
326
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.1.7", type: DashboardManagerComponent, isStandalone: true, selector: "cide-lyt-dashboard-manager", ngImport: i0, template: `
|
|
327
|
+
<cide-lyt-shared-wrapper [shared_wrapper_setup_param]="shared_wrapper_setup_param">
|
|
328
|
+
<div class="tw-p-4 tw-space-y-4">
|
|
329
|
+
<!-- Header -->
|
|
330
|
+
<div class="tw-flex tw-justify-between tw-items-center">
|
|
331
|
+
<h2 class="tw-text-2xl tw-font-bold">Dashboard Manager</h2>
|
|
332
|
+
<cide-ele-button
|
|
333
|
+
[label]="'Add New Card'"
|
|
334
|
+
leftIcon="add"
|
|
335
|
+
(click)="openAddCardModal()"
|
|
336
|
+
variant="primary">
|
|
337
|
+
</cide-ele-button>
|
|
338
|
+
</div>
|
|
339
|
+
|
|
340
|
+
<!-- Cards Grid -->
|
|
341
|
+
<cide-ele-data-grid
|
|
342
|
+
[config]="gridConfig()"
|
|
343
|
+
(gridEvent)="onGridEvent($event)">
|
|
344
|
+
</cide-ele-data-grid>
|
|
345
|
+
|
|
346
|
+
<!-- Add/Edit Card Modal -->
|
|
347
|
+
@if (showModal()) {
|
|
348
|
+
<div class="tw-fixed tw-inset-0 tw-bg-black tw-bg-opacity-50 tw-flex tw-items-center tw-justify-center tw-z-50">
|
|
349
|
+
<div class="tw-bg-white tw-rounded-lg tw-p-6 tw-max-w-2xl tw-w-full tw-max-h-[90vh] tw-overflow-y-auto">
|
|
350
|
+
<h3 class="tw-text-xl tw-font-bold tw-mb-4">
|
|
351
|
+
{{ editingCard() ? 'Edit Card' : 'Add New Card' }}
|
|
352
|
+
</h3>
|
|
353
|
+
|
|
354
|
+
<form (ngSubmit)="saveCard()" class="tw-space-y-4">
|
|
355
|
+
<div class="tw-grid tw-grid-cols-2 tw-gap-4">
|
|
356
|
+
<div>
|
|
357
|
+
<label class="tw-block tw-text-sm tw-font-medium tw-mb-1">Title</label>
|
|
358
|
+
<cide-ele-input
|
|
359
|
+
[(ngModel)]="cardForm.title"
|
|
360
|
+
[name]="'title'"
|
|
361
|
+
[required]="true"
|
|
362
|
+
[placeholder]="'Enter card title'">
|
|
363
|
+
</cide-ele-input>
|
|
364
|
+
</div>
|
|
365
|
+
|
|
366
|
+
<div>
|
|
367
|
+
<label class="tw-block tw-text-sm tw-font-medium tw-mb-1">Type</label>
|
|
368
|
+
<cide-ele-select
|
|
369
|
+
[ngModel]="cardForm.type || 'custom'"
|
|
370
|
+
(ngModelChange)="onTypeChange($event)"
|
|
371
|
+
[options]="cardTypes"
|
|
372
|
+
[required]="true">
|
|
373
|
+
</cide-ele-select>
|
|
374
|
+
</div>
|
|
375
|
+
</div>
|
|
376
|
+
|
|
377
|
+
<div>
|
|
378
|
+
<label class="tw-block tw-text-sm tw-font-medium tw-mb-1">Description</label>
|
|
379
|
+
<cide-ele-input
|
|
380
|
+
[(ngModel)]="cardForm.description"
|
|
381
|
+
[name]="'description'"
|
|
382
|
+
[type]="'text'"
|
|
383
|
+
[placeholder]="'Enter card description'">
|
|
384
|
+
</cide-ele-input>
|
|
385
|
+
</div>
|
|
386
|
+
|
|
387
|
+
<div>
|
|
388
|
+
<label class="tw-block tw-text-sm tw-font-medium tw-mb-1">API Endpoint</label>
|
|
389
|
+
<cide-ele-select
|
|
390
|
+
[ngModel]="cardForm.apiEndpoint"
|
|
391
|
+
(ngModelChange)="onApiEndpointChange($event)"
|
|
392
|
+
[options]="apiEndpointsOptions()"
|
|
393
|
+
[placeholder]="'Select API endpoint'">
|
|
394
|
+
</cide-ele-select>
|
|
395
|
+
</div>
|
|
396
|
+
|
|
397
|
+
<div class="tw-grid tw-grid-cols-2 tw-gap-4">
|
|
398
|
+
<div>
|
|
399
|
+
<label class="tw-block tw-text-sm tw-font-medium tw-mb-1">Icon</label>
|
|
400
|
+
<cide-ele-input
|
|
401
|
+
[(ngModel)]="cardForm.icon"
|
|
402
|
+
[name]="'icon'"
|
|
403
|
+
[placeholder]="'e.g., dashboard, analytics'">
|
|
404
|
+
</cide-ele-input>
|
|
405
|
+
</div>
|
|
406
|
+
|
|
407
|
+
<div>
|
|
408
|
+
<label class="tw-block tw-text-sm tw-font-medium tw-mb-1">Color</label>
|
|
409
|
+
<cide-ele-input
|
|
410
|
+
[(ngModel)]="cardForm.color"
|
|
411
|
+
[name]="'color'"
|
|
412
|
+
[type]="'text'"
|
|
413
|
+
[placeholder]="'#3B82F6'">
|
|
414
|
+
</cide-ele-input>
|
|
415
|
+
</div>
|
|
416
|
+
</div>
|
|
417
|
+
|
|
418
|
+
<div class="tw-grid tw-grid-cols-4 tw-gap-4">
|
|
419
|
+
<div>
|
|
420
|
+
<label class="tw-block tw-text-sm tw-font-medium tw-mb-1">Row</label>
|
|
421
|
+
<cide-ele-input
|
|
422
|
+
[(ngModel)]="cardForm.position.row"
|
|
423
|
+
[name]="'row'"
|
|
424
|
+
[type]="'number'"
|
|
425
|
+
[min]="1">
|
|
426
|
+
</cide-ele-input>
|
|
427
|
+
</div>
|
|
428
|
+
|
|
429
|
+
<div>
|
|
430
|
+
<label class="tw-block tw-text-sm tw-font-medium tw-mb-1">Col</label>
|
|
431
|
+
<cide-ele-input
|
|
432
|
+
[(ngModel)]="cardForm.position.col"
|
|
433
|
+
[name]="'col'"
|
|
434
|
+
[type]="'number'"
|
|
435
|
+
[min]="1">
|
|
436
|
+
</cide-ele-input>
|
|
437
|
+
</div>
|
|
438
|
+
|
|
439
|
+
<div>
|
|
440
|
+
<label class="tw-block tw-text-sm tw-font-medium tw-mb-1">Col Span</label>
|
|
441
|
+
<cide-ele-input
|
|
442
|
+
[(ngModel)]="cardForm.position.colspan"
|
|
443
|
+
[name]="'colspan'"
|
|
444
|
+
[type]="'number'"
|
|
445
|
+
[min]="1"
|
|
446
|
+
[max]="12">
|
|
447
|
+
</cide-ele-input>
|
|
448
|
+
</div>
|
|
449
|
+
|
|
450
|
+
<div>
|
|
451
|
+
<label class="tw-block tw-text-sm tw-font-medium tw-mb-1">Row Span</label>
|
|
452
|
+
<cide-ele-input
|
|
453
|
+
[(ngModel)]="cardForm.position.rowspan"
|
|
454
|
+
[name]="'rowspan'"
|
|
455
|
+
[type]="'number'"
|
|
456
|
+
[min]="1">
|
|
457
|
+
</cide-ele-input>
|
|
458
|
+
</div>
|
|
459
|
+
</div>
|
|
460
|
+
|
|
461
|
+
<div class="tw-flex tw-gap-2 tw-pt-4">
|
|
462
|
+
<cide-ele-button
|
|
463
|
+
[label]="'Cancel'"
|
|
464
|
+
variant="secondary"
|
|
465
|
+
(click)="closeModal()">
|
|
466
|
+
</cide-ele-button>
|
|
467
|
+
<cide-ele-button
|
|
468
|
+
[label]="'Save'"
|
|
469
|
+
variant="primary"
|
|
470
|
+
[type]="'submit'">
|
|
471
|
+
</cide-ele-button>
|
|
472
|
+
</div>
|
|
473
|
+
</form>
|
|
474
|
+
</div>
|
|
475
|
+
</div>
|
|
476
|
+
}
|
|
477
|
+
</div>
|
|
478
|
+
</cide-lyt-shared-wrapper>
|
|
479
479
|
`, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i1.NgForm, selector: "form:not([ngNoForm]):not([formGroup]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "component", type: CideLytSharedWrapperComponent, selector: "cide-lyt-shared-wrapper", inputs: ["shared_wrapper_setup_param", "breadcrumb_data"] }, { kind: "component", type: CideEleDataGridComponent, selector: "cide-ele-data-grid", inputs: ["config", "templateRenderers", "customFormatters", "actionHandlers", "serverSidePagination", "totalServerItems", "currentServerPage", "currentServerPageSize", "dragDropEnabled"], outputs: ["gridEvent"] }, { kind: "component", type: CideEleButtonComponent, selector: "button[cideEleButton], a[cideEleButton], cide-ele-button", inputs: ["label", "variant", "size", "type", "shape", "elevation", "disabled", "id", "loading", "fullWidth", "leftIcon", "rightIcon", "customClass", "tooltip", "ariaLabel", "testId", "routerLink", "routerExtras", "preventDoubleClick", "animated"], outputs: ["btnClick", "doubleClick"] }, { kind: "component", type: CideInputComponent, selector: "cide-ele-input", inputs: ["fill", "label", "labelHide", "disabled", "clearInput", "labelPlacement", "labelDir", "placeholder", "leadingIcon", "trailingIcon", "helperText", "helperTextCollapse", "hideHelperAndErrorText", "errorText", "maxlength", "minlength", "required", "autocapitalize", "autocomplete", "type", "width", "id", "ngModel", "option", "min", "max", "step", "size"], outputs: ["ngModelChange"] }, { kind: "component", type: CideSelectComponent, selector: "cide-ele-select", inputs: ["label", "labelHide", "placeholder", "helperText", "errorText", "required", "disabled", "id", "ngModel", "size", "fill", "labelPlacement", "labelDir", "leadingIcon", "trailingIcon", "clearInput", "options", "multiple", "searchable", "showSearchInput", "loading", "valueKey", "labelKey", "treeView"], outputs: ["ngModelChange", "change", "searchChange"] }] });
|
|
480
480
|
}
|
|
481
481
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.7", ngImport: i0, type: DashboardManagerComponent, decorators: [{
|
|
@@ -492,162 +492,162 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.7", ngImpor
|
|
|
492
492
|
CideInputComponent,
|
|
493
493
|
CideSelectComponent
|
|
494
494
|
],
|
|
495
|
-
template: `
|
|
496
|
-
<cide-lyt-shared-wrapper [shared_wrapper_setup_param]="shared_wrapper_setup_param">
|
|
497
|
-
<div class="tw-p-4 tw-space-y-4">
|
|
498
|
-
<!-- Header -->
|
|
499
|
-
<div class="tw-flex tw-justify-between tw-items-center">
|
|
500
|
-
<h2 class="tw-text-2xl tw-font-bold">Dashboard Manager</h2>
|
|
501
|
-
<cide-ele-button
|
|
502
|
-
[label]="'Add New Card'"
|
|
503
|
-
leftIcon="add"
|
|
504
|
-
(click)="openAddCardModal()"
|
|
505
|
-
variant="primary">
|
|
506
|
-
</cide-ele-button>
|
|
507
|
-
</div>
|
|
508
|
-
|
|
509
|
-
<!-- Cards Grid -->
|
|
510
|
-
<cide-ele-data-grid
|
|
511
|
-
[config]="gridConfig()"
|
|
512
|
-
(gridEvent)="onGridEvent($event)">
|
|
513
|
-
</cide-ele-data-grid>
|
|
514
|
-
|
|
515
|
-
<!-- Add/Edit Card Modal -->
|
|
516
|
-
@if (showModal()) {
|
|
517
|
-
<div class="tw-fixed tw-inset-0 tw-bg-black tw-bg-opacity-50 tw-flex tw-items-center tw-justify-center tw-z-50">
|
|
518
|
-
<div class="tw-bg-white tw-rounded-lg tw-p-6 tw-max-w-2xl tw-w-full tw-max-h-[90vh] tw-overflow-y-auto">
|
|
519
|
-
<h3 class="tw-text-xl tw-font-bold tw-mb-4">
|
|
520
|
-
{{ editingCard() ? 'Edit Card' : 'Add New Card' }}
|
|
521
|
-
</h3>
|
|
522
|
-
|
|
523
|
-
<form (ngSubmit)="saveCard()" class="tw-space-y-4">
|
|
524
|
-
<div class="tw-grid tw-grid-cols-2 tw-gap-4">
|
|
525
|
-
<div>
|
|
526
|
-
<label class="tw-block tw-text-sm tw-font-medium tw-mb-1">Title</label>
|
|
527
|
-
<cide-ele-input
|
|
528
|
-
[(ngModel)]="cardForm.title"
|
|
529
|
-
[name]="'title'"
|
|
530
|
-
[required]="true"
|
|
531
|
-
[placeholder]="'Enter card title'">
|
|
532
|
-
</cide-ele-input>
|
|
533
|
-
</div>
|
|
534
|
-
|
|
535
|
-
<div>
|
|
536
|
-
<label class="tw-block tw-text-sm tw-font-medium tw-mb-1">Type</label>
|
|
537
|
-
<cide-ele-select
|
|
538
|
-
[ngModel]="cardForm.type || 'custom'"
|
|
539
|
-
(ngModelChange)="onTypeChange($event)"
|
|
540
|
-
[options]="cardTypes"
|
|
541
|
-
[required]="true">
|
|
542
|
-
</cide-ele-select>
|
|
543
|
-
</div>
|
|
544
|
-
</div>
|
|
545
|
-
|
|
546
|
-
<div>
|
|
547
|
-
<label class="tw-block tw-text-sm tw-font-medium tw-mb-1">Description</label>
|
|
548
|
-
<cide-ele-input
|
|
549
|
-
[(ngModel)]="cardForm.description"
|
|
550
|
-
[name]="'description'"
|
|
551
|
-
[type]="'text'"
|
|
552
|
-
[placeholder]="'Enter card description'">
|
|
553
|
-
</cide-ele-input>
|
|
554
|
-
</div>
|
|
555
|
-
|
|
556
|
-
<div>
|
|
557
|
-
<label class="tw-block tw-text-sm tw-font-medium tw-mb-1">API Endpoint</label>
|
|
558
|
-
<cide-ele-select
|
|
559
|
-
[ngModel]="cardForm.apiEndpoint"
|
|
560
|
-
(ngModelChange)="onApiEndpointChange($event)"
|
|
561
|
-
[options]="apiEndpointsOptions()"
|
|
562
|
-
[placeholder]="'Select API endpoint'">
|
|
563
|
-
</cide-ele-select>
|
|
564
|
-
</div>
|
|
565
|
-
|
|
566
|
-
<div class="tw-grid tw-grid-cols-2 tw-gap-4">
|
|
567
|
-
<div>
|
|
568
|
-
<label class="tw-block tw-text-sm tw-font-medium tw-mb-1">Icon</label>
|
|
569
|
-
<cide-ele-input
|
|
570
|
-
[(ngModel)]="cardForm.icon"
|
|
571
|
-
[name]="'icon'"
|
|
572
|
-
[placeholder]="'e.g., dashboard, analytics'">
|
|
573
|
-
</cide-ele-input>
|
|
574
|
-
</div>
|
|
575
|
-
|
|
576
|
-
<div>
|
|
577
|
-
<label class="tw-block tw-text-sm tw-font-medium tw-mb-1">Color</label>
|
|
578
|
-
<cide-ele-input
|
|
579
|
-
[(ngModel)]="cardForm.color"
|
|
580
|
-
[name]="'color'"
|
|
581
|
-
[type]="'text'"
|
|
582
|
-
[placeholder]="'#3B82F6'">
|
|
583
|
-
</cide-ele-input>
|
|
584
|
-
</div>
|
|
585
|
-
</div>
|
|
586
|
-
|
|
587
|
-
<div class="tw-grid tw-grid-cols-4 tw-gap-4">
|
|
588
|
-
<div>
|
|
589
|
-
<label class="tw-block tw-text-sm tw-font-medium tw-mb-1">Row</label>
|
|
590
|
-
<cide-ele-input
|
|
591
|
-
[(ngModel)]="cardForm.position.row"
|
|
592
|
-
[name]="'row'"
|
|
593
|
-
[type]="'number'"
|
|
594
|
-
[min]="1">
|
|
595
|
-
</cide-ele-input>
|
|
596
|
-
</div>
|
|
597
|
-
|
|
598
|
-
<div>
|
|
599
|
-
<label class="tw-block tw-text-sm tw-font-medium tw-mb-1">Col</label>
|
|
600
|
-
<cide-ele-input
|
|
601
|
-
[(ngModel)]="cardForm.position.col"
|
|
602
|
-
[name]="'col'"
|
|
603
|
-
[type]="'number'"
|
|
604
|
-
[min]="1">
|
|
605
|
-
</cide-ele-input>
|
|
606
|
-
</div>
|
|
607
|
-
|
|
608
|
-
<div>
|
|
609
|
-
<label class="tw-block tw-text-sm tw-font-medium tw-mb-1">Col Span</label>
|
|
610
|
-
<cide-ele-input
|
|
611
|
-
[(ngModel)]="cardForm.position.colspan"
|
|
612
|
-
[name]="'colspan'"
|
|
613
|
-
[type]="'number'"
|
|
614
|
-
[min]="1"
|
|
615
|
-
[max]="12">
|
|
616
|
-
</cide-ele-input>
|
|
617
|
-
</div>
|
|
618
|
-
|
|
619
|
-
<div>
|
|
620
|
-
<label class="tw-block tw-text-sm tw-font-medium tw-mb-1">Row Span</label>
|
|
621
|
-
<cide-ele-input
|
|
622
|
-
[(ngModel)]="cardForm.position.rowspan"
|
|
623
|
-
[name]="'rowspan'"
|
|
624
|
-
[type]="'number'"
|
|
625
|
-
[min]="1">
|
|
626
|
-
</cide-ele-input>
|
|
627
|
-
</div>
|
|
628
|
-
</div>
|
|
629
|
-
|
|
630
|
-
<div class="tw-flex tw-gap-2 tw-pt-4">
|
|
631
|
-
<cide-ele-button
|
|
632
|
-
[label]="'Cancel'"
|
|
633
|
-
variant="secondary"
|
|
634
|
-
(click)="closeModal()">
|
|
635
|
-
</cide-ele-button>
|
|
636
|
-
<cide-ele-button
|
|
637
|
-
[label]="'Save'"
|
|
638
|
-
variant="primary"
|
|
639
|
-
[type]="'submit'">
|
|
640
|
-
</cide-ele-button>
|
|
641
|
-
</div>
|
|
642
|
-
</form>
|
|
643
|
-
</div>
|
|
644
|
-
</div>
|
|
645
|
-
}
|
|
646
|
-
</div>
|
|
647
|
-
</cide-lyt-shared-wrapper>
|
|
495
|
+
template: `
|
|
496
|
+
<cide-lyt-shared-wrapper [shared_wrapper_setup_param]="shared_wrapper_setup_param">
|
|
497
|
+
<div class="tw-p-4 tw-space-y-4">
|
|
498
|
+
<!-- Header -->
|
|
499
|
+
<div class="tw-flex tw-justify-between tw-items-center">
|
|
500
|
+
<h2 class="tw-text-2xl tw-font-bold">Dashboard Manager</h2>
|
|
501
|
+
<cide-ele-button
|
|
502
|
+
[label]="'Add New Card'"
|
|
503
|
+
leftIcon="add"
|
|
504
|
+
(click)="openAddCardModal()"
|
|
505
|
+
variant="primary">
|
|
506
|
+
</cide-ele-button>
|
|
507
|
+
</div>
|
|
508
|
+
|
|
509
|
+
<!-- Cards Grid -->
|
|
510
|
+
<cide-ele-data-grid
|
|
511
|
+
[config]="gridConfig()"
|
|
512
|
+
(gridEvent)="onGridEvent($event)">
|
|
513
|
+
</cide-ele-data-grid>
|
|
514
|
+
|
|
515
|
+
<!-- Add/Edit Card Modal -->
|
|
516
|
+
@if (showModal()) {
|
|
517
|
+
<div class="tw-fixed tw-inset-0 tw-bg-black tw-bg-opacity-50 tw-flex tw-items-center tw-justify-center tw-z-50">
|
|
518
|
+
<div class="tw-bg-white tw-rounded-lg tw-p-6 tw-max-w-2xl tw-w-full tw-max-h-[90vh] tw-overflow-y-auto">
|
|
519
|
+
<h3 class="tw-text-xl tw-font-bold tw-mb-4">
|
|
520
|
+
{{ editingCard() ? 'Edit Card' : 'Add New Card' }}
|
|
521
|
+
</h3>
|
|
522
|
+
|
|
523
|
+
<form (ngSubmit)="saveCard()" class="tw-space-y-4">
|
|
524
|
+
<div class="tw-grid tw-grid-cols-2 tw-gap-4">
|
|
525
|
+
<div>
|
|
526
|
+
<label class="tw-block tw-text-sm tw-font-medium tw-mb-1">Title</label>
|
|
527
|
+
<cide-ele-input
|
|
528
|
+
[(ngModel)]="cardForm.title"
|
|
529
|
+
[name]="'title'"
|
|
530
|
+
[required]="true"
|
|
531
|
+
[placeholder]="'Enter card title'">
|
|
532
|
+
</cide-ele-input>
|
|
533
|
+
</div>
|
|
534
|
+
|
|
535
|
+
<div>
|
|
536
|
+
<label class="tw-block tw-text-sm tw-font-medium tw-mb-1">Type</label>
|
|
537
|
+
<cide-ele-select
|
|
538
|
+
[ngModel]="cardForm.type || 'custom'"
|
|
539
|
+
(ngModelChange)="onTypeChange($event)"
|
|
540
|
+
[options]="cardTypes"
|
|
541
|
+
[required]="true">
|
|
542
|
+
</cide-ele-select>
|
|
543
|
+
</div>
|
|
544
|
+
</div>
|
|
545
|
+
|
|
546
|
+
<div>
|
|
547
|
+
<label class="tw-block tw-text-sm tw-font-medium tw-mb-1">Description</label>
|
|
548
|
+
<cide-ele-input
|
|
549
|
+
[(ngModel)]="cardForm.description"
|
|
550
|
+
[name]="'description'"
|
|
551
|
+
[type]="'text'"
|
|
552
|
+
[placeholder]="'Enter card description'">
|
|
553
|
+
</cide-ele-input>
|
|
554
|
+
</div>
|
|
555
|
+
|
|
556
|
+
<div>
|
|
557
|
+
<label class="tw-block tw-text-sm tw-font-medium tw-mb-1">API Endpoint</label>
|
|
558
|
+
<cide-ele-select
|
|
559
|
+
[ngModel]="cardForm.apiEndpoint"
|
|
560
|
+
(ngModelChange)="onApiEndpointChange($event)"
|
|
561
|
+
[options]="apiEndpointsOptions()"
|
|
562
|
+
[placeholder]="'Select API endpoint'">
|
|
563
|
+
</cide-ele-select>
|
|
564
|
+
</div>
|
|
565
|
+
|
|
566
|
+
<div class="tw-grid tw-grid-cols-2 tw-gap-4">
|
|
567
|
+
<div>
|
|
568
|
+
<label class="tw-block tw-text-sm tw-font-medium tw-mb-1">Icon</label>
|
|
569
|
+
<cide-ele-input
|
|
570
|
+
[(ngModel)]="cardForm.icon"
|
|
571
|
+
[name]="'icon'"
|
|
572
|
+
[placeholder]="'e.g., dashboard, analytics'">
|
|
573
|
+
</cide-ele-input>
|
|
574
|
+
</div>
|
|
575
|
+
|
|
576
|
+
<div>
|
|
577
|
+
<label class="tw-block tw-text-sm tw-font-medium tw-mb-1">Color</label>
|
|
578
|
+
<cide-ele-input
|
|
579
|
+
[(ngModel)]="cardForm.color"
|
|
580
|
+
[name]="'color'"
|
|
581
|
+
[type]="'text'"
|
|
582
|
+
[placeholder]="'#3B82F6'">
|
|
583
|
+
</cide-ele-input>
|
|
584
|
+
</div>
|
|
585
|
+
</div>
|
|
586
|
+
|
|
587
|
+
<div class="tw-grid tw-grid-cols-4 tw-gap-4">
|
|
588
|
+
<div>
|
|
589
|
+
<label class="tw-block tw-text-sm tw-font-medium tw-mb-1">Row</label>
|
|
590
|
+
<cide-ele-input
|
|
591
|
+
[(ngModel)]="cardForm.position.row"
|
|
592
|
+
[name]="'row'"
|
|
593
|
+
[type]="'number'"
|
|
594
|
+
[min]="1">
|
|
595
|
+
</cide-ele-input>
|
|
596
|
+
</div>
|
|
597
|
+
|
|
598
|
+
<div>
|
|
599
|
+
<label class="tw-block tw-text-sm tw-font-medium tw-mb-1">Col</label>
|
|
600
|
+
<cide-ele-input
|
|
601
|
+
[(ngModel)]="cardForm.position.col"
|
|
602
|
+
[name]="'col'"
|
|
603
|
+
[type]="'number'"
|
|
604
|
+
[min]="1">
|
|
605
|
+
</cide-ele-input>
|
|
606
|
+
</div>
|
|
607
|
+
|
|
608
|
+
<div>
|
|
609
|
+
<label class="tw-block tw-text-sm tw-font-medium tw-mb-1">Col Span</label>
|
|
610
|
+
<cide-ele-input
|
|
611
|
+
[(ngModel)]="cardForm.position.colspan"
|
|
612
|
+
[name]="'colspan'"
|
|
613
|
+
[type]="'number'"
|
|
614
|
+
[min]="1"
|
|
615
|
+
[max]="12">
|
|
616
|
+
</cide-ele-input>
|
|
617
|
+
</div>
|
|
618
|
+
|
|
619
|
+
<div>
|
|
620
|
+
<label class="tw-block tw-text-sm tw-font-medium tw-mb-1">Row Span</label>
|
|
621
|
+
<cide-ele-input
|
|
622
|
+
[(ngModel)]="cardForm.position.rowspan"
|
|
623
|
+
[name]="'rowspan'"
|
|
624
|
+
[type]="'number'"
|
|
625
|
+
[min]="1">
|
|
626
|
+
</cide-ele-input>
|
|
627
|
+
</div>
|
|
628
|
+
</div>
|
|
629
|
+
|
|
630
|
+
<div class="tw-flex tw-gap-2 tw-pt-4">
|
|
631
|
+
<cide-ele-button
|
|
632
|
+
[label]="'Cancel'"
|
|
633
|
+
variant="secondary"
|
|
634
|
+
(click)="closeModal()">
|
|
635
|
+
</cide-ele-button>
|
|
636
|
+
<cide-ele-button
|
|
637
|
+
[label]="'Save'"
|
|
638
|
+
variant="primary"
|
|
639
|
+
[type]="'submit'">
|
|
640
|
+
</cide-ele-button>
|
|
641
|
+
</div>
|
|
642
|
+
</form>
|
|
643
|
+
</div>
|
|
644
|
+
</div>
|
|
645
|
+
}
|
|
646
|
+
</div>
|
|
647
|
+
</cide-lyt-shared-wrapper>
|
|
648
648
|
`
|
|
649
649
|
}]
|
|
650
650
|
}] });
|
|
651
651
|
|
|
652
652
|
export { DashboardManagerComponent };
|
|
653
|
-
//# sourceMappingURL=cloud-ide-layout-dashboard-manager.component-
|
|
653
|
+
//# sourceMappingURL=cloud-ide-layout-dashboard-manager.component-Cet1zc7W.mjs.map
|