merging code

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
Nitesh Yadav
2026-04-20 14:26:25 +05:30
co-authored by Claude Sonnet 4.6
322 changed files with 28779 additions and 4976 deletions
@@ -46,9 +46,14 @@ $gray-900: #202124;
border-color: $border !important;
color: $gray-500 !important;
i { margin-right: 6px; }
i {
margin-right: 6px;
}
&:hover { color: $primary !important; border-color: $primary !important; }
&:hover {
color: $primary !important;
border-color: $primary !important;
}
}
.ac-card {
@@ -92,7 +97,9 @@ $gray-900: #202124;
gap: 4px 16px;
padding: 16px 24px;
@media (max-width: 600px) { grid-template-columns: 1fr !important; }
@media (width <= 600px) {
grid-template-columns: 1fr !important;
}
}
.ac-field {
@@ -123,7 +130,10 @@ $gray-900: #202124;
height: 36px !important;
box-shadow: 0 1px 3px rgba($primary, 0.3) !important;
i { margin-right: 6px; font-size: 12px; }
i {
margin-right: 6px;
font-size: 12px;
}
}
}
}
@@ -21,7 +21,13 @@
<input matInput (keyup)="applyFilter($event.target.value)" />
</mat-form-field>
<div class="table-buttons">
<button mat-flat-button color="primary" class="btn-create" [routerLink]="['create']" *mifosxHasPermission="'CREATE_CASHIERS_FOR_TELLER'">
<button
mat-flat-button
color="primary"
class="btn-create"
[routerLink]="['create']"
*mifosxHasPermission="'CREATE_CASHIERS_FOR_TELLER'"
>
<fa-icon icon="plus" class="m-r-10"></fa-icon>
{{ 'labels.buttons.New Cashier' | translate }}
</button>
@@ -24,7 +24,9 @@ $primary: #1353a0;
border-radius: 6px;
font-size: 12px;
cursor: pointer;
transition: opacity 0.15s, transform 0.15s;
transition:
opacity 0.15s,
transform 0.15s;
text-decoration: none;
&:hover {
@@ -105,7 +105,9 @@
@if (!createCashierForm.value.isFullDay) {
<div class="cc-time-row">
<mat-form-field appearance="outline" class="cc-time-field">
<mat-label>{{ 'labels.inputs.Start Time' | translate }} ({{ 'labels.inputs.Hour' | translate }})</mat-label>
<mat-label
>{{ 'labels.inputs.Start Time' | translate }} ({{ 'labels.inputs.Hour' | translate }})</mat-label
>
<mat-select formControlName="hourStartTime">
@for (hour of hours; track hour) {
<mat-option [value]="hour">{{ hour }}</mat-option>
@@ -113,7 +115,9 @@
</mat-select>
</mat-form-field>
<mat-form-field appearance="outline" class="cc-time-field">
<mat-label>{{ 'labels.inputs.Start Time' | translate }} ({{ 'labels.inputs.Minute' | translate }})</mat-label>
<mat-label
>{{ 'labels.inputs.Start Time' | translate }} ({{ 'labels.inputs.Minute' | translate }})</mat-label
>
<mat-select formControlName="minStartTime">
@for (minute of minutes; track minute) {
<mat-option [value]="minute">{{ minute }}</mat-option>
@@ -123,7 +127,9 @@
</div>
<div class="cc-time-row">
<mat-form-field appearance="outline" class="cc-time-field">
<mat-label>{{ 'labels.inputs.End Time' | translate }} ({{ 'labels.inputs.Hour' | translate }})</mat-label>
<mat-label
>{{ 'labels.inputs.End Time' | translate }} ({{ 'labels.inputs.Hour' | translate }})</mat-label
>
<mat-select formControlName="hourEndTime">
@for (hour of hours; track hour) {
<mat-option [value]="hour">{{ hour }}</mat-option>
@@ -131,7 +137,9 @@
</mat-select>
</mat-form-field>
<mat-form-field appearance="outline" class="cc-time-field">
<mat-label>{{ 'labels.inputs.End Time' | translate }} ({{ 'labels.inputs.Minute' | translate }})</mat-label>
<mat-label
>{{ 'labels.inputs.End Time' | translate }} ({{ 'labels.inputs.Minute' | translate }})</mat-label
>
<mat-select formControlName="minEndTime">
@for (minute of minutes; track minute) {
<mat-option [value]="minute">{{ minute }}</mat-option>
@@ -46,9 +46,14 @@ $gray-900: #202124;
border-color: $border !important;
color: $gray-500 !important;
i { margin-right: 6px; }
i {
margin-right: 6px;
}
&:hover { color: $primary !important; border-color: $primary !important; }
&:hover {
color: $primary !important;
border-color: $primary !important;
}
}
.cc-card {
@@ -92,7 +97,9 @@ $gray-900: #202124;
gap: 4px 16px;
padding: 16px 24px;
@media (max-width: 600px) { grid-template-columns: 1fr !important; }
@media (width <= 600px) {
grid-template-columns: 1fr !important;
}
}
.cc-field {
@@ -107,7 +114,10 @@ $gray-900: #202124;
display: flex !important;
gap: 12px;
@media (max-width: 600px) { flex-direction: column; gap: 4px; }
@media (width <= 600px) {
flex-direction: column;
gap: 4px;
}
}
.cc-time-field {
@@ -148,7 +158,10 @@ $gray-900: #202124;
height: 36px !important;
box-shadow: 0 1px 3px rgba($primary, 0.3) !important;
i { margin-right: 6px; font-size: 12px; }
i {
margin-right: 6px;
font-size: 12px;
}
}
}
}
@@ -112,7 +112,9 @@
@if (!editCashierForm.value.isFullDay) {
<div class="ec-time-row">
<mat-form-field appearance="outline" class="ec-time-field">
<mat-label>{{ 'labels.inputs.Start Time' | translate }} ({{ 'labels.inputs.Hour' | translate }})</mat-label>
<mat-label
>{{ 'labels.inputs.Start Time' | translate }} ({{ 'labels.inputs.Hour' | translate }})</mat-label
>
<mat-select formControlName="hourStartTime">
@for (hour of hours; track hour) {
<mat-option [value]="hour">{{ hour }}</mat-option>
@@ -120,7 +122,9 @@
</mat-select>
</mat-form-field>
<mat-form-field appearance="outline" class="ec-time-field">
<mat-label>{{ 'labels.inputs.Start Time' | translate }} ({{ 'labels.inputs.Minute' | translate }})</mat-label>
<mat-label
>{{ 'labels.inputs.Start Time' | translate }} ({{ 'labels.inputs.Minute' | translate }})</mat-label
>
<mat-select formControlName="minStartTime">
@for (minute of minutes; track minute) {
<mat-option [value]="minute">{{ minute }}</mat-option>
@@ -130,7 +134,9 @@
</div>
<div class="ec-time-row">
<mat-form-field appearance="outline" class="ec-time-field">
<mat-label>{{ 'labels.inputs.End Time' | translate }} ({{ 'labels.inputs.Hour' | translate }})</mat-label>
<mat-label
>{{ 'labels.inputs.End Time' | translate }} ({{ 'labels.inputs.Hour' | translate }})</mat-label
>
<mat-select formControlName="hourEndTime">
@for (hour of hours; track hour) {
<mat-option [value]="hour">{{ hour }}</mat-option>
@@ -138,7 +144,9 @@
</mat-select>
</mat-form-field>
<mat-form-field appearance="outline" class="ec-time-field">
<mat-label>{{ 'labels.inputs.End Time' | translate }} ({{ 'labels.inputs.Minute' | translate }})</mat-label>
<mat-label
>{{ 'labels.inputs.End Time' | translate }} ({{ 'labels.inputs.Minute' | translate }})</mat-label
>
<mat-select formControlName="minEndTime">
@for (minute of minutes; track minute) {
<mat-option [value]="minute">{{ minute }}</mat-option>
@@ -46,9 +46,14 @@ $gray-900: #202124;
border-color: $border !important;
color: $gray-500 !important;
i { margin-right: 6px; }
i {
margin-right: 6px;
}
&:hover { color: $primary !important; border-color: $primary !important; }
&:hover {
color: $primary !important;
border-color: $primary !important;
}
}
.ec-card {
@@ -92,7 +97,9 @@ $gray-900: #202124;
gap: 4px 16px;
padding: 16px 24px;
@media (max-width: 600px) { grid-template-columns: 1fr !important; }
@media (width <= 600px) {
grid-template-columns: 1fr !important;
}
}
.ec-field {
@@ -107,7 +114,10 @@ $gray-900: #202124;
display: flex !important;
gap: 12px;
@media (max-width: 600px) { flex-direction: column; gap: 4px; }
@media (width <= 600px) {
flex-direction: column;
gap: 4px;
}
}
.ec-time-field {
@@ -148,7 +158,10 @@ $gray-900: #202124;
height: 36px !important;
box-shadow: 0 1px 3px rgba($primary, 0.3) !important;
i { margin-right: 6px; font-size: 12px; }
i {
margin-right: 6px;
font-size: 12px;
}
}
}
}
@@ -46,9 +46,14 @@ $gray-900: #202124;
border-color: $border !important;
color: $gray-500 !important;
i { margin-right: 6px; }
i {
margin-right: 6px;
}
&:hover { color: $primary !important; border-color: $primary !important; }
&:hover {
color: $primary !important;
border-color: $primary !important;
}
}
.sc-card {
@@ -92,7 +97,9 @@ $gray-900: #202124;
gap: 4px 16px;
padding: 16px 24px;
@media (max-width: 600px) { grid-template-columns: 1fr !important; }
@media (width <= 600px) {
grid-template-columns: 1fr !important;
}
}
.sc-field {
@@ -123,7 +130,10 @@ $gray-900: #202124;
height: 36px !important;
box-shadow: 0 1px 3px rgba($primary, 0.3) !important;
i { margin-right: 6px; font-size: 12px; }
i {
margin-right: 6px;
font-size: 12px;
}
}
}
}
@@ -16,11 +16,22 @@
</div>
<div class="table-actions">
<div class="table-buttons">
<button mat-flat-button color="primary" class="btn-create" [routerLink]="['../allocate']" *mifosxHasPermission="'ALLOCATECASHIER_TELLER'">
<button
mat-flat-button
color="primary"
class="btn-create"
[routerLink]="['../allocate']"
*mifosxHasPermission="'ALLOCATECASHIER_TELLER'"
>
<fa-icon icon="arrow-up" class="m-r-10"></fa-icon>
{{ 'labels.buttons.Allocate Cash' | translate }}
</button>
<button mat-stroked-button class="btn-import" [routerLink]="['../settle']" *mifosxHasPermission="'SETTLECASHFROMCASHIER_TELLER'">
<button
mat-stroked-button
class="btn-import"
[routerLink]="['../settle']"
*mifosxHasPermission="'SETTLECASHFROMCASHIER_TELLER'"
>
<fa-icon icon="arrow-down" class="m-r-10"></fa-icon>
{{ 'labels.buttons.Settle Cash' | translate }}
</button>
@@ -44,19 +55,21 @@
</div>
<div class="txn-summary__item">
<span class="txn-summary__label">{{ 'labels.inputs.Net Cash' | translate }}</span>
<span class="txn-summary__value txn-summary__value--highlight">{{ cashierData.netCash | formatNumber }} [{{ currencySelector.value }}]</span>
<span class="txn-summary__value txn-summary__value--highlight"
>{{ cashierData.netCash | formatNumber }} [{{ currencySelector.value }}]</span
>
</div>
</div>
}
<div class="table-actions" style="margin-bottom: 12px;">
<div class="table-actions" style="margin-bottom: 12px">
<mat-form-field class="table-search" appearance="outline">
<i matPrefix class="fas fa-search"></i>
<mat-label>{{ 'labels.inputs.Filter' | translate }}</mat-label>
<input matInput (keyup)="applyFilter($event.target.value)" />
</mat-form-field>
<mat-form-field appearance="outline" class="table-search" style="max-width: 220px;">
<mat-form-field appearance="outline" class="table-search" style="max-width: 220px">
<mat-label>{{ 'labels.inputs.Select Currency' | translate }}</mat-label>
<mat-select [formControl]="currencySelector" required>
@for (currency of currencyData; track currency) {
@@ -27,7 +27,7 @@ $gray-900: #202124;
border-radius: 10px;
margin-bottom: 16px;
@media (max-width: 768px) {
@media (width <= 768px) {
grid-template-columns: repeat(2, 1fr);
}
@@ -13,10 +13,22 @@
</button>
<h2 class="vc-header__title">{{ cashierData.staffName }}</h2>
<div class="vc-header__spacer"></div>
<button mat-flat-button color="primary" [routerLink]="['edit']" class="vc-header__action" *mifosxHasPermission="'UPDATE_CASHIER'">
<button
mat-flat-button
color="primary"
[routerLink]="['edit']"
class="vc-header__action"
*mifosxHasPermission="'UPDATE_CASHIER'"
>
<i class="fas fa-pen"></i> {{ 'labels.buttons.Edit' | translate }}
</button>
<button mat-stroked-button color="warn" (click)="deleteCashier()" class="vc-header__delete" *mifosxHasPermission="'DELETECASHIER_TELLER'">
<button
mat-stroked-button
color="warn"
(click)="deleteCashier()"
class="vc-header__delete"
*mifosxHasPermission="'DELETECASHIER_TELLER'"
>
<i class="fas fa-trash-alt"></i> {{ 'labels.buttons.Delete' | translate }}
</button>
</div>
@@ -49,7 +49,10 @@ $gray-900: #202124;
height: 32px !important;
box-shadow: 0 1px 3px rgba($primary, 0.3) !important;
i { margin-right: 6px; font-size: 12px; }
i {
margin-right: 6px;
font-size: 12px;
}
}
&__delete {
@@ -58,7 +61,10 @@ $gray-900: #202124;
font-weight: 600 !important;
height: 32px !important;
i { margin-right: 6px; font-size: 12px; }
i {
margin-right: 6px;
font-size: 12px;
}
}
}
@@ -70,9 +76,14 @@ $gray-900: #202124;
border-color: $border !important;
color: $gray-500 !important;
i { margin-right: 6px; }
i {
margin-right: 6px;
}
&:hover { color: $primary !important; border-color: $primary !important; }
&:hover {
color: $primary !important;
border-color: $primary !important;
}
}
.vc-card {
@@ -112,7 +123,9 @@ $gray-900: #202124;
gap: 16px;
padding: 20px 24px;
@media (max-width: 600px) { grid-template-columns: 1fr !important; }
@media (width <= 600px) {
grid-template-columns: 1fr !important;
}
}
.vc-detail {