@@ -62,4 +62,4 @@
-
+}
diff --git a/npm/ng-packs/packages/theme-basic/src/lib/components/application-layout/application-layout.component.html b/npm/ng-packs/packages/theme-basic/src/lib/components/application-layout/application-layout.component.html
index c41cfb3d31..d27bc23ceb 100644
--- a/npm/ng-packs/packages/theme-basic/src/lib/components/application-layout/application-layout.component.html
+++ b/npm/ng-packs/packages/theme-basic/src/lib/components/application-layout/application-layout.component.html
@@ -13,12 +13,18 @@
>
+
-
-
-
+ @if (service.smallScreen) {
+
+
+
+ }
-
+ @if (appInfo.logoUrl) {
+
+ } @else {
+ {{ appInfo.name }}
+ }
-
-
- {{ appInfo.name }}
-
`,
})
export class LogoComponent {
diff --git a/npm/ng-packs/packages/theme-basic/src/lib/components/nav-items/current-user.component.html b/npm/ng-packs/packages/theme-basic/src/lib/components/nav-items/current-user.component.html
index 8dab9ea8fd..7837bf5b0a 100644
--- a/npm/ng-packs/packages/theme-basic/src/lib/components/nav-items/current-user.component.html
+++ b/npm/ng-packs/packages/theme-basic/src/lib/components/nav-items/current-user.component.html
@@ -1,65 +1,65 @@
-
- {{
- 'AbpAccount::Login' | abpLocalization
- }}
-
-
-
+@if ((currentUser$ | async)?.isAuthenticated) {
-
+} @else {
+
+ {{
+ 'AbpAccount::Login' | abpLocalization
+ }}
+
+}
diff --git a/npm/ng-packs/packages/theme-basic/src/lib/components/nav-items/languages.component.ts b/npm/ng-packs/packages/theme-basic/src/lib/components/nav-items/languages.component.ts
index 9dd27b28e1..bc98729274 100644
--- a/npm/ng-packs/packages/theme-basic/src/lib/components/nav-items/languages.component.ts
+++ b/npm/ng-packs/packages/theme-basic/src/lib/components/nav-items/languages.component.ts
@@ -6,39 +6,36 @@ import { map } from 'rxjs/operators';
@Component({
selector: 'abp-languages',
template: `
- 0"
- class="dropdown"
- ngbDropdown
- #languageDropdown="ngbDropdown"
- display="static"
- >
-
-
+ @if (((dropdownLanguages$ | async)?.length || 0) > 0) {
+
-
+ }
`,
})
export class LanguagesComponent {
@@ -69,7 +66,10 @@ export class LanguagesComponent {
return this.sessionState.getLanguage();
}
- constructor(private sessionState: SessionStateService, private configState: ConfigStateService) {}
+ constructor(
+ private sessionState: SessionStateService,
+ private configState: ConfigStateService,
+ ) {}
onChangeLang(cultureName: string) {
this.sessionState.setLanguage(cultureName);
diff --git a/npm/ng-packs/packages/theme-basic/src/lib/components/nav-items/nav-items.component.html b/npm/ng-packs/packages/theme-basic/src/lib/components/nav-items/nav-items.component.html
index 67db85efd4..c5e54a62f2 100644
--- a/npm/ng-packs/packages/theme-basic/src/lib/components/nav-items/nav-items.component.html
+++ b/npm/ng-packs/packages/theme-basic/src/lib/components/nav-items/nav-items.component.html
@@ -1,18 +1,16 @@
-
-
+ @for (item of navItems.items$ | async; track $index) {
+
-
-
-
+ @if (item.component) {
+
+ } @else {
-
+ }
-
-
\ No newline at end of file
+ }
+
diff --git a/npm/ng-packs/packages/theme-basic/src/lib/components/page-alert-container/page-alert-container.component.html b/npm/ng-packs/packages/theme-basic/src/lib/components/page-alert-container/page-alert-container.component.html
index 914e803f95..86e9d40177 100644
--- a/npm/ng-packs/packages/theme-basic/src/lib/components/page-alert-container/page-alert-container.component.html
+++ b/npm/ng-packs/packages/theme-basic/src/lib/components/page-alert-container/page-alert-container.component.html
@@ -1,24 +1,26 @@
-
+@for (alert of service.alerts$ | async; track i; let i = $index) {
-
+ @if (alert.title) {
+
+ }
-
+ @if (alert.dismissible) {
+
+ }
-
+}
diff --git a/npm/ng-packs/packages/theme-basic/src/lib/components/routes/routes.component.html b/npm/ng-packs/packages/theme-basic/src/lib/components/routes/routes.component.html
index c3a7aa46f4..e537c26f34 100644
--- a/npm/ng-packs/packages/theme-basic/src/lib/components/routes/routes.component.html
+++ b/npm/ng-packs/packages/theme-basic/src/lib/components/routes/routes.component.html
@@ -1,22 +1,25 @@
-
-
+ @for (route of routesService.visible$ | async; track $index) {
+
+
+ }
-
- {{ route.name | abpLocalization }}
+
+ @if (route.iconClass) {
+
+ }
+ {{ route.name | abpLocalization }}
+
-
+ @if (route.children?.length) {
-
+ @if (route.iconClass) {
+
+ }
{{ route.name | abpLocalization }}
-
+ }
-
+ @for (child of route.children; track $index) {
-
+ }
-
+ @if (child.path) {
-
+ }
@@ -87,7 +94,9 @@
role="button"
class="btn d-block text-start dropdown-toggle"
>
-
+ @if (child.iconClass) {
+
+ }
{{ child.name | abpLocalization }}
diff --git a/npm/ng-packs/packages/theme-basic/src/lib/components/validation-error/validation-error.component.ts b/npm/ng-packs/packages/theme-basic/src/lib/components/validation-error/validation-error.component.ts
index e1532ba743..f9a5b8de6d 100644
--- a/npm/ng-packs/packages/theme-basic/src/lib/components/validation-error/validation-error.component.ts
+++ b/npm/ng-packs/packages/theme-basic/src/lib/components/validation-error/validation-error.component.ts
@@ -4,9 +4,11 @@ import { Validation, ValidationErrorComponent as ErrorComponent } from '@ngx-val
@Component({
selector: 'abp-validation-error',
template: `
-
- {{ error.message | abpLocalization: error.interpoliteParams }}
-
+ @for (error of abpErrors; track $index) {
+
+ {{ error.message | abpLocalization: error.interpoliteParams }}
+
+ }
`,
changeDetection: ChangeDetectionStrategy.OnPush,
encapsulation: ViewEncapsulation.None,
diff --git a/npm/ng-packs/packages/theme-shared/src/lib/components/breadcrumb-items/breadcrumb-items.component.html b/npm/ng-packs/packages/theme-shared/src/lib/components/breadcrumb-items/breadcrumb-items.component.html
index 598f3638a5..4b2dbf611d 100644
--- a/npm/ng-packs/packages/theme-shared/src/lib/components/breadcrumb-items/breadcrumb-items.component.html
+++ b/npm/ng-packs/packages/theme-shared/src/lib/components/breadcrumb-items/breadcrumb-items.component.html
@@ -1,18 +1,17 @@
-
-
-
-
-
-
-
-
+@if (items.length) {
+
+
+
+
+ @for (item of items; track $index; let last = $last) {
+
+
+
+ }
+
+}
{{ item.name | abpLocalization }}
diff --git a/npm/ng-packs/packages/theme-shared/src/lib/components/checkbox/checkbox.component.ts b/npm/ng-packs/packages/theme-shared/src/lib/components/checkbox/checkbox.component.ts
index 89766ce992..9f10b2317f 100644
--- a/npm/ng-packs/packages/theme-shared/src/lib/components/checkbox/checkbox.component.ts
+++ b/npm/ng-packs/packages/theme-shared/src/lib/components/checkbox/checkbox.component.ts
@@ -16,9 +16,11 @@ import { NG_VALUE_ACCESSOR } from '@angular/forms';
(blur)="checkboxBlur.next()"
(focus)="checkboxFocus.next()"
/>
-
- {{ label | abpLocalization }}
-
+ @if (label) {
+
+ {{ label | abpLocalization }}
+
+ }
`,
providers: [
diff --git a/npm/ng-packs/packages/theme-shared/src/lib/components/confirmation/confirmation.component.html b/npm/ng-packs/packages/theme-shared/src/lib/components/confirmation/confirmation.component.html
index 1ec6dcb9be..ef3ce65819 100644
--- a/npm/ng-packs/packages/theme-shared/src/lib/components/confirmation/confirmation.component.html
+++ b/npm/ng-packs/packages/theme-shared/src/lib/components/confirmation/confirmation.component.html
@@ -1,42 +1,51 @@
-
-
-
-
-
-
+}
diff --git a/npm/ng-packs/packages/theme-shared/src/lib/components/form-input/form-input.component.ts b/npm/ng-packs/packages/theme-shared/src/lib/components/form-input/form-input.component.ts
index d759163a0d..fd5f579b5d 100644
--- a/npm/ng-packs/packages/theme-shared/src/lib/components/form-input/form-input.component.ts
+++ b/npm/ng-packs/packages/theme-shared/src/lib/components/form-input/form-input.component.ts
@@ -6,9 +6,11 @@ import { NG_VALUE_ACCESSOR } from '@angular/forms';
selector: 'abp-form-input',
template: `
-
- {{ label | abpLocalization }}
-
+ @if (label) {
+
+ {{ label | abpLocalization }}
+
+ }
-
+ @if (!hideCloseIcon) {
+
+ }
-
-
-
-
{{ statusText }} {{ title | abpLocalization }}
-
- {{ details | abpLocalization }}
-
-
+ }
diff --git a/npm/ng-packs/packages/theme-shared/src/lib/components/modal/modal.component.html b/npm/ng-packs/packages/theme-shared/src/lib/components/modal/modal.component.html
index 82c27d2518..cdf6728fca 100644
--- a/npm/ng-packs/packages/theme-shared/src/lib/components/modal/modal.component.html
+++ b/npm/ng-packs/packages/theme-shared/src/lib/components/modal/modal.component.html
@@ -1,21 +1,27 @@
-
-
-
-
-
+ @if (abpHeader) {
+
+ }
+ @if (abpBody) {
+
+
+
+ }
+ @if (abpFooter) {
+
+ }
diff --git a/npm/ng-packs/packages/theme-shared/src/lib/components/toast-container/toast-container.component.html b/npm/ng-packs/packages/theme-shared/src/lib/components/toast-container/toast-container.component.html
index a58fecc9e6..70fdaa5ebd 100644
--- a/npm/ng-packs/packages/theme-shared/src/lib/components/toast-container/toast-container.component.html
+++ b/npm/ng-packs/packages/theme-shared/src/lib/components/toast-container/toast-container.component.html
@@ -7,9 +7,10 @@
[style.display]="toasts.length ? 'flex' : 'none'"
[@toastInOut]="toasts.length"
>
-
+ @for (toast of toasts; track toast.options?.id) {
+
+ }
diff --git a/npm/ng-packs/packages/theme-shared/src/lib/components/toast/toast.component.html b/npm/ng-packs/packages/theme-shared/src/lib/components/toast/toast.component.html
index 5e6902ed27..0f123fdadd 100644
--- a/npm/ng-packs/packages/theme-shared/src/lib/components/toast/toast.component.html
+++ b/npm/ng-packs/packages/theme-shared/src/lib/components/toast/toast.component.html
@@ -3,9 +3,11 @@
-
-
-
+ @if (toast.options?.closable) {
+
+
+
+ }
{{ toast.title | abpLocalization: toast.options?.titleLocalizationParams }}