This commit is contained in:
Çetin
2025-01-03 11:41:08 +03:00
parent 713260a6a6
commit 37396b1550
5 changed files with 49 additions and 33 deletions

View File

@@ -23,7 +23,7 @@ export class RevenueStreamWidget {
constructor(public layoutService: LayoutService) { constructor(public layoutService: LayoutService) {
this.subscription = this.layoutService.configUpdate$ this.subscription = this.layoutService.configUpdate$
.pipe(debounceTime(25)) .pipe(debounceTime(25))
.subscribe((config) => { .subscribe(() => {
this.initChart(); this.initChart();
}); });
} }

View File

@@ -2,7 +2,7 @@ import { Component, computed, inject } from '@angular/core';
import { ButtonModule } from 'primeng/button'; import { ButtonModule } from 'primeng/button';
import { StyleClassModule } from 'primeng/styleclass'; import { StyleClassModule } from 'primeng/styleclass';
import { AppConfigurator } from '@/src/layout/appconfigurator'; import { AppConfigurator } from '@/src/layout/appconfigurator';
import { AppConfigService } from '@/src/service/appconfigservice'; import { LayoutService } from '@/src/service/applayoutservice';
@Component({ @Component({
selector: 'floating-configurator', selector: 'floating-configurator',
@@ -28,11 +28,11 @@ import { AppConfigService } from '@/src/service/appconfigservice';
`, `,
}) })
export class FloatingConfigurator { export class FloatingConfigurator {
configService = inject(AppConfigService); LayoutService = inject(LayoutService);
isDarkTheme = computed(() => this.configService.appState().darkTheme); isDarkTheme = computed(() => this.LayoutService.layoutConfig().darkTheme);
toggleDarkMode() { toggleDarkMode() {
this.configService.appState.update((state) => ({ ...state, darkTheme: !state.darkTheme })); this.LayoutService.layoutConfig.update((state) => ({ ...state, darkTheme: !state.darkTheme }));
} }
} }

View File

@@ -72,7 +72,7 @@ export class ChartDoc {
constructor(private layoutService: LayoutService) { constructor(private layoutService: LayoutService) {
this.subscription = this.layoutService.configUpdate$ this.subscription = this.layoutService.configUpdate$
.pipe(debounceTime(25)) .pipe(debounceTime(25))
.subscribe((config) => { .subscribe(() => {
this.initCharts(); this.initCharts();
}); });
} }

View File

@@ -126,6 +126,8 @@ export class MediaDoc implements OnInit {
return 'warn'; return 'warn';
case 'OUTOFSTOCK': case 'OUTOFSTOCK':
return 'danger'; return 'danger';
default:
return 'success';
} }
} }

View File

@@ -6,12 +6,15 @@ import { ButtonModule } from 'primeng/button';
import { DialogModule } from 'primeng/dialog'; import { DialogModule } from 'primeng/dialog';
import { ToastModule } from 'primeng/toast'; import { ToastModule } from 'primeng/toast';
import { DrawerModule } from 'primeng/drawer'; import { DrawerModule } from 'primeng/drawer';
import { PopoverModule } from 'primeng/popover'; import { Popover, PopoverModule } from 'primeng/popover';
import { ConfirmPopupModule } from 'primeng/confirmpopup'; import { ConfirmPopupModule } from 'primeng/confirmpopup';
import { OverlayPanel } from 'primeng/overlaypanel';
import { InputText, InputTextModule } from 'primeng/inputtext';
import { FormsModule } from '@angular/forms';
@Component({ @Component({
standalone: true, standalone: true,
imports:[ToastModule,DialogModule,ButtonModule,DrawerModule, PopoverModule, ConfirmPopupModule], imports:[ToastModule, DialogModule, ButtonModule, DrawerModule, PopoverModule, ConfirmPopupModule, InputTextModule, FormsModule],
template:` template:`
<div class="flex flex-col md:flex-row gap-8"> <div class="flex flex-col md:flex-row gap-8">
<div class="md:w-1/2"> <div class="md:w-1/2">
@@ -32,10 +35,10 @@ import { ConfirmPopupModule } from 'primeng/confirmpopup';
<div class="card"> <div class="card">
<div class="font-semibold text-xl mb-4">Popover</div> <div class="font-semibold text-xl mb-4">Popover</div>
<div class="flex flex-wrap gap-2"> <div class="flex flex-wrap gap-2">
<p-button type="button" label="Show" (click)="toggleDataTable()" /> <p-button type="button" label="Show" (click)="toggleDataTable(op2, $event)" />
<p-popover ref="op2" id="overlay_panel" [style]="{width: '450px'}"> <p-popover #op2 id="overlay_panel" [style]="{width: '450px'}">
<!-- TABLE --> <!-- TABLE -->
</p-popover> </p-popover>
</div> </div>
</div> </div>
@@ -55,35 +58,35 @@ import { ConfirmPopupModule } from 'primeng/confirmpopup';
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo
consequat. consequat.
</p> </p>
</p-drawer> </p-drawer>
<p-drawer [(visible)]="visibleRight" header="Drawer" position="right"> <p-drawer [(visible)]="visibleRight" header="Drawer" position="right">
<p> <p>
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo
consequat. consequat.
</p> </p>
</p-drawer> </p-drawer>
<p-drawer [(visible)]="visibleTop" header="Drawer" position="top"> <p-drawer [(visible)]="visibleTop" header="Drawer" position="top">
<p> <p>
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo
consequat. consequat.
</p> </p>
</p-drawer> </p-drawer>
<p-drawer [(visible)]="visibleBottom" header="Drawer" position="bottom"> <p-drawer [(visible)]="visibleBottom" header="Drawer" position="bottom">
<p> <p>
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo
consequat. consequat.
</p> </p>
</p-drawer> </p-drawer>
<p-drawer [(visible)]="visibleFull" header="Drawer" position="full"> <p-drawer [(visible)]="visibleFull" header="Drawer" position="full">
<p> <p>
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo
consequat. consequat.
</p> </p>
</p-drawer> </p-drawer>
<p-button icon="pi pi-arrow-right" (click)="visibleLeft = true" [style]="{marginRight: '0.25em'}" /> <p-button icon="pi pi-arrow-right" (click)="visibleLeft = true" [style]="{marginRight: '0.25em'}" />
<p-button icon="pi pi-arrow-left" (click)="visibleRight = true" [style]="{marginRight: '0.25em'}" /> <p-button icon="pi pi-arrow-left" (click)="visibleRight = true" [style]="{marginRight: '0.25em'}" />
@@ -95,7 +98,7 @@ import { ConfirmPopupModule } from 'primeng/confirmpopup';
<div class="card"> <div class="card">
<div class="font-semibold text-xl mb-4">ConfirmPopup</div> <div class="font-semibold text-xl mb-4">ConfirmPopup</div>
<p-confirmpopup></p-confirmpopup> <p-confirmpopup></p-confirmpopup>
<p-button ref="popup" (click)="confirm($event)" icon="pi pi-check" label="Confirm" class="mr-2"></p-button> <p-button #popup (click)="confirm($event)" icon="pi pi-check" label="Confirm" class="mr-2"></p-button>
</div> </div>
<div class="card"> <div class="card">
@@ -124,8 +127,6 @@ export class OverlayDoc implements OnInit {
products: Product[] = []; products: Product[] = [];
selectedProduct: Product = {};
visibleLeft: boolean = false; visibleLeft: boolean = false;
visibleRight: boolean = false; visibleRight: boolean = false;
@@ -162,14 +163,7 @@ export class OverlayDoc implements OnInit {
}); });
} }
confirm1() { confirm(event: Event) {
this.confirmationService.confirm({
key: 'confirm1',
message: 'Are you sure to perform this action?'
});
}
confirm2(event: Event) {
this.confirmationService.confirm({ this.confirmationService.confirm({
key: 'confirm2', key: 'confirm2',
target: event.target || new EventTarget, target: event.target || new EventTarget,
@@ -184,8 +178,28 @@ export class OverlayDoc implements OnInit {
}); });
} }
formatCurrency(value: number) { open() {
return value.toLocaleString('en-US', { style: 'currency', currency: 'USD' }); this.display = true;
} }
close() {
this.display = false;
}
toggleDataTable(op: Popover, event: any) {
op.toggle(event);
}
onProductSelect(op, event: any) {
op.hide();
this.messageService.add({ severity: 'info', summary: 'Product Selected', detail: event?.data.name, life: 3000 });
}
openConfirmation() {
this.displayConfirmation = true;
}
closeConfirmation() {
this.displayConfirmation = false;
}
} }