Browse Source

refactoring

pull/22829/head
erdemcaygor 1 year ago
parent
commit
48dbc01e58
  1. 7
      npm/ng-packs/packages/account/src/lib/components/change-password/change-password.component.ts
  2. 16
      npm/ng-packs/packages/account/src/lib/components/login/login.component.ts
  3. 1
      npm/ng-packs/packages/components/page/src/page-part.directive.ts
  4. 3
      npm/ng-packs/packages/components/page/src/page-parts.component.ts
  5. 5
      npm/ng-packs/packages/components/page/src/page.component.ts
  6. 11
      npm/ng-packs/packages/components/page/src/page.module.ts
  7. 59
      npm/ng-packs/packages/core/src/lib/core.module.ts
  8. 1
      npm/ng-packs/packages/core/src/lib/utils/index.ts
  9. 8
      npm/ng-packs/packages/feature-management/src/lib/components/feature-management/feature-management.component.ts
  10. 5
      npm/ng-packs/packages/feature-management/src/lib/feature-management.module.ts
  11. 38
      npm/ng-packs/packages/identity/src/lib/components/users/users.component.ts
  12. 23
      npm/ng-packs/packages/permission-management/src/lib/components/permission-management.component.ts
  13. 5
      npm/ng-packs/packages/setting-management/src/lib/components/setting-management.component.ts
  14. 4
      npm/ng-packs/packages/setting-management/src/lib/setting-management.module.ts
  15. 43
      npm/ng-packs/packages/tenant-management/src/lib/components/tenants/tenants.component.ts
  16. 26
      npm/ng-packs/packages/theme-basic/src/lib/theme-basic.module.ts
  17. 6
      npm/ng-packs/packages/theme-shared/src/lib/components/breadcrumb-items/breadcrumb-items.component.ts
  18. 3
      npm/ng-packs/packages/theme-shared/src/lib/components/breadcrumb/breadcrumb.component.ts
  19. 2
      npm/ng-packs/packages/theme-shared/src/lib/components/button/button.component.ts
  20. 6
      npm/ng-packs/packages/theme-shared/src/lib/components/checkbox/checkbox.component.ts
  21. 6
      npm/ng-packs/packages/theme-shared/src/lib/components/confirmation/confirmation.component.ts
  22. 6
      npm/ng-packs/packages/theme-shared/src/lib/components/form-input/form-input.component.ts
  23. 4
      npm/ng-packs/packages/theme-shared/src/lib/components/http-error-wrapper/http-error-wrapper.component.ts
  24. 4
      npm/ng-packs/packages/theme-shared/src/lib/components/loader-bar/loader-bar.component.ts
  25. 3
      npm/ng-packs/packages/theme-shared/src/lib/components/loading/loading.component.ts
  26. 8
      npm/ng-packs/packages/theme-shared/src/lib/components/modal/modal.component.ts
  27. 6
      npm/ng-packs/packages/theme-shared/src/lib/components/password/password.component.ts
  28. 3
      npm/ng-packs/packages/theme-shared/src/lib/components/toast-container/toast-container.component.ts
  29. 7
      npm/ng-packs/packages/theme-shared/src/lib/components/toast/toast.component.ts
  30. 2
      npm/ng-packs/packages/theme-shared/src/lib/directives/loading.directive.ts
  31. 46
      npm/ng-packs/packages/theme-shared/src/lib/theme-shared.module.ts

7
npm/ng-packs/packages/account/src/lib/components/change-password/change-password.component.ts

@ -8,12 +8,11 @@ import {
UntypedFormGroup,
Validators,
} from '@angular/forms';
import { comparePasswords, Validation } from '@ngx-validate/core';
import { finalize } from 'rxjs/operators';
import { Account } from '../../models/account';
import { ManageProfileStateService } from '../../services/manage-profile.state.service';
import { Account } from '../../models';
import { ManageProfileStateService } from '../../services';
import { comparePasswords, NgxValidateCoreModule, Validation } from '@ngx-validate/core';
import { LocalizationPipe } from '@abp/ng.core';
const { required } = Validators;
const PASSWORD_FIELDS = ['newPassword', 'repeatNewPassword'];

16
npm/ng-packs/packages/account/src/lib/components/login/login.component.ts

@ -1,5 +1,3 @@
import { AuthService, ConfigStateService, LocalizationPipe } from '@abp/ng.core';
import { ButtonComponent, ToasterService } from '@abp/ng.theme.shared';
import { Component, Injector, OnInit, inject } from '@angular/core';
import {
ReactiveFormsModule,
@ -7,12 +5,18 @@ import {
UntypedFormGroup,
Validators,
} from '@angular/forms';
import { RouterModule } from '@angular/router';
import { throwError } from 'rxjs';
import { catchError, finalize } from 'rxjs/operators';
import { eAccountComponents } from '../../enums/components';
import { getRedirectUrl } from '../../utils/auth-utils';
import { NgxValidateCoreModule } from '@ngx-validate/core';
import { RouterModule } from '@angular/router';
import {
AuthService,
ConfigStateService,
LocalizationPipe,
NgxValidateCoreModule,
} from '@abp/ng.core';
import { ButtonComponent, ToasterService } from '@abp/ng.theme.shared';
import { eAccountComponents } from '../../enums';
import { getRedirectUrl } from '../../utils';
const { maxLength, required } = Validators;

1
npm/ng-packs/packages/components/page/src/page-part.directive.ts

@ -25,7 +25,6 @@ export interface PageRenderStrategy {
export const PAGE_RENDER_STRATEGY = new InjectionToken<PageRenderStrategy>('PAGE_RENDER_STRATEGY');
@Directive({
standalone: false,
selector: '[abpPagePart]',
})
export class PagePartDirective implements OnInit, OnDestroy, OnChanges {

3
npm/ng-packs/packages/components/page/src/page-parts.component.ts

@ -7,7 +7,6 @@ export enum PageParts {
}
@Component({
standalone: false,
selector: 'abp-page-title-container',
template: ` <ng-content></ng-content> `,
encapsulation: ViewEncapsulation.None,
@ -15,7 +14,6 @@ export enum PageParts {
export class PageTitleContainerComponent {}
@Component({
standalone: false,
selector: 'abp-page-breadcrumb-container',
template: ` <ng-content></ng-content> `,
encapsulation: ViewEncapsulation.None,
@ -23,7 +21,6 @@ export class PageTitleContainerComponent {}
export class PageBreadcrumbContainerComponent {}
@Component({
standalone: false,
selector: 'abp-page-toolbar-container',
template: ` <ng-content></ng-content> `,
encapsulation: ViewEncapsulation.None,

5
npm/ng-packs/packages/components/page/src/page.component.ts

@ -5,12 +5,15 @@ import {
PageToolbarContainerComponent,
PageParts,
} from './page-parts.component';
import { BreadcrumbComponent } from '@abp/ng.theme.shared';
import { PageToolbarComponent } from '@abp/ng.components/extensible';
import { PagePartDirective } from './page-part.directive';
@Component({
standalone: false,
selector: 'abp-page',
templateUrl: './page.component.html',
encapsulation: ViewEncapsulation.None,
imports: [BreadcrumbComponent, PageToolbarComponent, PagePartDirective],
})
export class PageComponent {
@Input() title?: string;

11
npm/ng-packs/packages/components/page/src/page.module.ts

@ -1,5 +1,3 @@
import { CoreModule } from '@abp/ng.core';
import { ThemeSharedModule } from '@abp/ng.theme.shared';
import { NgModule } from '@angular/core';
import { PagePartDirective } from './page-part.directive';
import {
@ -8,9 +6,8 @@ import {
PageToolbarContainerComponent,
} from './page-parts.component';
import { PageComponent } from './page.component';
import {PageToolbarComponent} from "@abp/ng.components/extensible";
const exportedDeclarations = [
export const PAGE_EXPORTS = [
PageComponent,
PageTitleContainerComponent,
PageBreadcrumbContainerComponent,
@ -19,8 +16,8 @@ const exportedDeclarations = [
];
@NgModule({
declarations: [...exportedDeclarations],
imports: [CoreModule, ThemeSharedModule, PageToolbarComponent],
exports: [...exportedDeclarations],
declarations: [],
imports: [...PAGE_EXPORTS],
exports: [...PAGE_EXPORTS],
})
export class PageModule {}

59
npm/ng-packs/packages/core/src/lib/core.module.ts

@ -8,30 +8,37 @@ import {
import { ModuleWithProviders, NgModule } from '@angular/core';
import { FormsModule, ReactiveFormsModule } from '@angular/forms';
import { RouterModule } from '@angular/router';
import { AbstractNgModelComponent } from './abstracts/ng-model.component';
import { DynamicLayoutComponent } from './components/dynamic-layout.component';
import { ReplaceableRouteContainerComponent } from './components/replaceable-route-container.component';
import { RouterOutletComponent } from './components/router-outlet.component';
import { AutofocusDirective } from './directives/autofocus.directive';
import { InputEventDebounceDirective } from './directives/debounce.directive';
import { ForDirective } from './directives/for.directive';
import { FormSubmitDirective } from './directives/form-submit.directive';
import { InitDirective } from './directives/init.directive';
import { PermissionDirective } from './directives/permission.directive';
import { ReplaceableTemplateDirective } from './directives/replaceable-template.directive';
import { StopPropagationDirective } from './directives/stop-propagation.directive';
import { LocalizationModule } from './localization.module';
import { AbstractNgModelComponent } from './abstracts';
import {
DynamicLayoutComponent,
ReplaceableRouteContainerComponent,
RouterOutletComponent,
} from './components';
import { NgxValidateCoreModule } from '@ngx-validate/core';
import {
StopPropagationDirective,
ReplaceableTemplateDirective,
PermissionDirective,
InitDirective,
ForDirective,
InputEventDebounceDirective,
AutofocusDirective,
FormSubmitDirective,
} from './directives';
import { ABP } from './models/common';
import { LocalizationPipe } from './pipes/localization.pipe';
import { SortPipe } from './pipes/sort.pipe';
import { ToInjectorPipe } from './pipes/to-injector.pipe';
import './utils/date-extensions';
import { ShortDateTimePipe } from './pipes/short-date-time.pipe';
import { ShortTimePipe } from './pipes/short-time.pipe';
import { ShortDatePipe } from './pipes/short-date.pipe';
import { SafeHtmlPipe } from './pipes/safe-html.pipe';
import { provideAbpCoreChild, provideAbpCore, withOptions } from './providers';
import { UtcToLocalPipe } from './pipes';
import {
LazyLocalizationPipe,
UtcToLocalPipe,
SafeHtmlPipe,
ShortDatePipe,
ShortTimePipe,
ShortDateTimePipe,
ToInjectorPipe,
SortPipe,
LocalizationPipe,
} from './pipes';
const CORE_DIRECTIVES = [
AutofocusDirective,
@ -52,6 +59,8 @@ const CORE_PIPES = [
ShortTimePipe,
ShortDatePipe,
ToInjectorPipe,
UtcToLocalPipe,
LazyLocalizationPipe,
];
const CORE_COMPONENTS = [
@ -72,7 +81,7 @@ const CORE_COMPONENTS = [
FormsModule,
ReactiveFormsModule,
RouterModule,
LocalizationModule,
NgxValidateCoreModule,
...CORE_DIRECTIVES,
...CORE_PIPES,
...CORE_COMPONENTS,
@ -82,7 +91,7 @@ const CORE_COMPONENTS = [
FormsModule,
ReactiveFormsModule,
RouterModule,
LocalizationModule,
NgxValidateCoreModule,
...CORE_DIRECTIVES,
...CORE_PIPES,
...CORE_COMPONENTS,
@ -97,8 +106,8 @@ export class BaseCoreModule {}
* and it introduces imports useful at root level (e.g. NGXS)
*/
@NgModule({
exports: [BaseCoreModule, LocalizationModule],
imports: [BaseCoreModule, LocalizationModule],
exports: [BaseCoreModule],
imports: [BaseCoreModule],
providers: [
provideHttpClient(
withXsrfConfiguration({

1
npm/ng-packs/packages/core/src/lib/utils/index.ts

@ -18,3 +18,4 @@ export * from './queue';
export * from './route-utils';
export * from './string-utils';
export * from './tree-utils';
export { NgxValidateCoreModule, Validation } from '@ngx-validate/core';

8
npm/ng-packs/packages/feature-management/src/lib/components/feature-management/feature-management.component.ts

@ -1,3 +1,6 @@
import { Component, EventEmitter, Input, Output, inject } from '@angular/core';
import { CommonModule, NgTemplateOutlet } from '@angular/common';
import { FormsModule } from '@angular/forms';
import { ConfigStateService, LocalizationPipe, TrackByService } from '@abp/ng.core';
import {
FeatureDto,
@ -13,13 +16,10 @@ import {
ModalComponent,
ToasterService,
} from '@abp/ng.theme.shared';
import { Component, EventEmitter, Input, Output, inject } from '@angular/core';
import { CommonModule, NgTemplateOutlet } from '@angular/common';
import { FormsModule } from '@angular/forms';
import { NgbNavModule } from '@ng-bootstrap/ng-bootstrap';
import { finalize } from 'rxjs/operators';
import { FreeTextInputDirective } from '../../directives';
import { FeatureManagement } from '../../models/feature-management';
import { FeatureManagement } from '../../models';
enum ValueTypes {
ToggleStringValueType = 'ToggleStringValueType',

5
npm/ng-packs/packages/feature-management/src/lib/feature-management.module.ts

@ -1,8 +1,7 @@
import { ModuleWithProviders, NgModule } from '@angular/core';
import { FeatureManagementComponent } from './components/feature-management/feature-management.component';
import { FreeTextInputDirective } from './directives/free-text-input.directive';
import { FreeTextInputDirective } from './directives';
import { provideFeatureManagementConfig } from './providers';
import { FeatureManagementTabComponent } from './components';
import { FeatureManagementTabComponent, FeatureManagementComponent } from './components';
export const FEATURE_MANAGEMENT_EXPORTS = [
FeatureManagementComponent,

38
npm/ng-packs/packages/identity/src/lib/components/users/users.component.ts

@ -1,4 +1,10 @@
import { CoreModule, ListService, PagedResultDto } from '@abp/ng.core';
import {
InitDirective,
ListService,
LocalizationPipe,
PagedResultDto,
ReplaceableTemplateDirective,
} from '@abp/ng.core';
import {
GetIdentityUsersInput,
IdentityRoleDto,
@ -10,14 +16,18 @@ import {
PermissionManagementModule,
} from '@abp/ng.permission-management';
import {
ButtonComponent,
Confirmation,
ConfirmationService,
eFormComponets,
ThemeSharedModule,
FormCheckboxComponent,
ModalCloseDirective,
ModalComponent,
ToasterService,
} from '@abp/ng.theme.shared';
import {
ExtensibleModule,
ExtensibleFormComponent,
ExtensibleTableComponent,
EXTENSIONS_IDENTIFIER,
FormPropData,
generateFormFromProps,
@ -33,14 +43,15 @@ import {
} from '@angular/core';
import {
AbstractControl,
FormsModule,
ReactiveFormsModule,
UntypedFormArray,
UntypedFormBuilder,
UntypedFormGroup,
} from '@angular/forms';
import { finalize, switchMap, tap } from 'rxjs/operators';
import { eIdentityComponents } from '../../enums/components';
import { CommonModule } from '@angular/common';
import { PageModule } from '@abp/ng.components/page';
import { PageComponent } from '@abp/ng.components/page';
import { NgbDropdownModule, NgbNavModule } from '@ng-bootstrap/ng-bootstrap';
import { NgxValidateCoreModule } from '@ngx-validate/core';
@ -55,15 +66,22 @@ import { NgxValidateCoreModule } from '@ngx-validate/core';
},
],
imports: [
CommonModule,
PageModule,
CoreModule,
ThemeSharedModule,
ExtensibleModule,
ReactiveFormsModule,
FormsModule,
PermissionManagementModule,
PageComponent,
NgbNavModule,
NgbDropdownModule,
NgxValidateCoreModule,
LocalizationPipe,
ExtensibleTableComponent,
ModalComponent,
ExtensibleFormComponent,
FormCheckboxComponent,
ButtonComponent,
ReplaceableTemplateDirective,
ModalCloseDirective,
InitDirective,
],
})
export class UsersComponent implements OnInit {

23
npm/ng-packs/packages/permission-management/src/lib/components/permission-management.component.ts

@ -1,5 +1,11 @@
import { ConfigStateService, CoreModule, CurrentUserDto } from '@abp/ng.core';
import { LocaleDirection, ThemeSharedModule, ToasterService } from '@abp/ng.theme.shared';
import { ConfigStateService, CurrentUserDto, LocalizationPipe } from '@abp/ng.core';
import {
ButtonComponent,
LocaleDirection,
ModalCloseDirective,
ModalComponent,
ToasterService,
} from '@abp/ng.theme.shared';
import {
GetPermissionListResultDto,
PermissionGrantInfoDto,
@ -23,9 +29,9 @@ import {
} from '@angular/core';
import { concat, of } from 'rxjs';
import { finalize, switchMap, take, tap } from 'rxjs/operators';
import { PermissionManagement } from '../models/permission-management';
import { PermissionManagement } from '../models';
import { CommonModule } from '@angular/common';
import { PageModule } from '@abp/ng.components/page';
import { FormsModule } from '@angular/forms';
type PermissionWithStyle = PermissionGrantInfoDto & {
style: string;
@ -86,7 +92,14 @@ type PermissionWithGroupName = PermissionGrantInfoDto & {
}
`,
],
imports: [CommonModule, CoreModule, ThemeSharedModule],
imports: [
FormsModule,
CommonModule,
ModalComponent,
LocalizationPipe,
ButtonComponent,
ModalCloseDirective,
],
})
export class PermissionManagementComponent
implements

5
npm/ng-packs/packages/setting-management/src/lib/components/setting-management.component.ts

@ -1,15 +1,14 @@
import { ABP, CoreModule } from '@abp/ng.core';
import { ABP, LocalizationPipe, PermissionDirective } from '@abp/ng.core';
import { SettingTabsService } from '@abp/ng.setting-management/config';
import { Component, OnDestroy, OnInit, TrackByFunction } from '@angular/core';
import { Subscription } from 'rxjs';
import { CommonModule } from '@angular/common';
import { ThemeSharedModule } from '@abp/ng.theme.shared';
import { PageModule } from '@abp/ng.components/page';
@Component({
selector: 'abp-setting-management',
templateUrl: './setting-management.component.html',
imports: [CommonModule, CoreModule, ThemeSharedModule, PageModule],
imports: [CommonModule, PageModule, LocalizationPipe, PermissionDirective],
})
export class SettingManagementComponent implements OnDestroy, OnInit {
private subscription = new Subscription();

4
npm/ng-packs/packages/setting-management/src/lib/setting-management.module.ts

@ -3,10 +3,12 @@ import { ModuleWithProviders, NgModule, NgModuleFactory } from '@angular/core';
import { SettingManagementRoutingModule } from './setting-management-routing.module';
import { SettingManagementComponent } from './components/setting-management.component';
export const SETTING_MANAGEMENT_MODULE_EXPORTS = [SettingManagementComponent];
@NgModule({
declarations: [],
exports: [],
imports: [SettingManagementRoutingModule, SettingManagementComponent],
imports: [SettingManagementRoutingModule, ...SETTING_MANAGEMENT_MODULE_EXPORTS],
})
export class SettingManagementModule {
static forChild(): ModuleWithProviders<SettingManagementModule> {

43
npm/ng-packs/packages/tenant-management/src/lib/components/tenants/tenants.component.ts

@ -1,29 +1,40 @@
import { CoreModule, ListService, PagedResultDto } from '@abp/ng.core';
import {
ListService,
LocalizationPipe,
PagedResultDto,
ReplaceableTemplateDirective,
} from '@abp/ng.core';
import {
eFeatureManagementComponents,
FeatureManagementComponent,
FeatureManagementModule,
provideFeatureManagementConfig,
} from '@abp/ng.feature-management';
import { GetTenantsInput, TenantDto, TenantService } from '@abp/ng.tenant-management/proxy';
import {
ButtonComponent,
Confirmation,
ConfirmationService,
ThemeSharedModule,
ModalCloseDirective,
ModalComponent,
ToasterService,
} from '@abp/ng.theme.shared';
import {
ExtensibleModule,
ExtensibleFormComponent,
ExtensibleTableComponent,
EXTENSIONS_IDENTIFIER,
FormPropData,
generateFormFromProps,
} from '@abp/ng.components/extensible';
import { Component, inject, Injector, OnInit } from '@angular/core';
import { UntypedFormBuilder, UntypedFormGroup } from '@angular/forms';
import {
FormsModule,
ReactiveFormsModule,
UntypedFormBuilder,
UntypedFormGroup,
} from '@angular/forms';
import { finalize } from 'rxjs/operators';
import { eTenantManagementComponents } from '../../enums/components';
import { CommonModule } from '@angular/common';
import { PageModule } from '@abp/ng.components/page';
import { PageComponent } from '@abp/ng.components/page';
import { NgxValidateCoreModule } from '@ngx-validate/core';
@Component({
selector: 'abp-tenants',
@ -36,12 +47,18 @@ import { PageModule } from '@abp/ng.components/page';
},
],
imports: [
CommonModule,
CoreModule,
ThemeSharedModule,
PageModule,
ExtensibleModule,
FormsModule,
ReactiveFormsModule,
PageComponent,
LocalizationPipe,
ExtensibleTableComponent,
ModalComponent,
FeatureManagementComponent,
ButtonComponent,
ReplaceableTemplateDirective,
ExtensibleFormComponent,
ModalCloseDirective,
NgxValidateCoreModule,
],
})
export class TenantsComponent implements OnInit {

26
npm/ng-packs/packages/theme-basic/src/lib/theme-basic.module.ts

@ -1,16 +1,18 @@
import { ModuleWithProviders, NgModule } from '@angular/core';
import { AccountLayoutComponent } from './components/account-layout/account-layout.component';
import { AuthWrapperComponent } from './components/account-layout/auth-wrapper/auth-wrapper.component';
import { TenantBoxComponent } from './components/account-layout/tenant-box/tenant-box.component';
import { ApplicationLayoutComponent } from './components/application-layout/application-layout.component';
import { EmptyLayoutComponent } from './components/empty-layout/empty-layout.component';
import { LogoComponent } from './components/logo/logo.component';
import { CurrentUserComponent } from './components/nav-items/current-user.component';
import { LanguagesComponent } from './components/nav-items/languages.component';
import { NavItemsComponent } from './components/nav-items/nav-items.component';
import { PageAlertContainerComponent } from './components/page-alert-container/page-alert-container.component';
import { RoutesComponent } from './components/routes/routes.component';
import { ValidationErrorComponent } from './components/validation-error/validation-error.component';
import {
AccountLayoutComponent,
AuthWrapperComponent,
TenantBoxComponent,
ApplicationLayoutComponent,
EmptyLayoutComponent,
LogoComponent,
CurrentUserComponent,
LanguagesComponent,
NavItemsComponent,
PageAlertContainerComponent,
RoutesComponent,
ValidationErrorComponent,
} from './components';
import { provideThemeBasicConfig } from './providers';
export const LAYOUTS = [ApplicationLayoutComponent, AccountLayoutComponent, EmptyLayoutComponent];

6
npm/ng-packs/packages/theme-shared/src/lib/components/breadcrumb-items/breadcrumb-items.component.ts

@ -1,12 +1,12 @@
import { ABP, CoreModule } from '@abp/ng.core';
import { Component, Input } from '@angular/core';
import { CommonModule } from '@angular/common';
import { RouterModule } from '@angular/router';
import { CommonModule } from '@angular/common';
import { ABP, LocalizationPipe } from '@abp/ng.core';
@Component({
selector: 'abp-breadcrumb-items',
templateUrl: './breadcrumb-items.component.html',
imports: [CommonModule, RouterModule, CoreModule],
imports: [CommonModule, RouterModule, LocalizationPipe],
})
export class BreadcrumbItemsComponent {
@Input() items: Partial<ABP.Route>[] = [];

3
npm/ng-packs/packages/theme-shared/src/lib/components/breadcrumb/breadcrumb.component.ts

@ -10,7 +10,6 @@ import { ChangeDetectionStrategy, ChangeDetectorRef, Component, OnInit } from '@
import { Router } from '@angular/router';
import { map, startWith } from 'rxjs/operators';
import { eThemeSharedRouteNames } from '../../enums/route-names';
import { CommonModule } from '@angular/common';
import { BreadcrumbItemsComponent } from '../breadcrumb-items/breadcrumb-items.component';
@Component({
@ -18,7 +17,7 @@ import { BreadcrumbItemsComponent } from '../breadcrumb-items/breadcrumb-items.c
templateUrl: './breadcrumb.component.html',
changeDetection: ChangeDetectionStrategy.OnPush,
providers: [SubscriptionService],
imports: [CommonModule, BreadcrumbItemsComponent],
imports: [BreadcrumbItemsComponent],
})
export class BreadcrumbComponent implements OnInit {
segments: Partial<ABP.Route>[] = [];

2
npm/ng-packs/packages/theme-shared/src/lib/components/button/button.component.ts

@ -1,5 +1,4 @@
/* eslint-disable @angular-eslint/no-output-native */
import { ABP } from '@abp/ng.core';
import {
Component,
ElementRef,
@ -11,6 +10,7 @@ import {
ViewChild,
} from '@angular/core';
import { CommonModule } from '@angular/common';
import { ABP } from '@abp/ng.core';
@Component({
selector: 'abp-button',

6
npm/ng-packs/packages/theme-shared/src/lib/components/checkbox/checkbox.component.ts

@ -1,7 +1,7 @@
import { AbstractNgModelComponent, CoreModule } from '@abp/ng.core';
import { Component, EventEmitter, forwardRef, Input, Output } from '@angular/core';
import { NG_VALUE_ACCESSOR } from '@angular/forms';
import { NG_VALUE_ACCESSOR, FormsModule } from '@angular/forms';
import { CommonModule } from '@angular/common';
import { AbstractNgModelComponent, LocalizationPipe } from '@abp/ng.core';
@Component({
selector: 'abp-checkbox',
@ -31,7 +31,7 @@ import { CommonModule } from '@angular/common';
multi: true,
},
],
imports: [CommonModule, CoreModule],
imports: [CommonModule, FormsModule, LocalizationPipe],
})
export class FormCheckboxComponent extends AbstractNgModelComponent {
@Input() label?: string;

6
npm/ng-packs/packages/theme-shared/src/lib/components/confirmation/confirmation.component.ts

@ -1,15 +1,15 @@
import { Component, Inject } from '@angular/core';
import { CommonModule } from '@angular/common';
import { ReplaySubject } from 'rxjs';
import { Confirmation } from '../../models/confirmation';
import { CONFIRMATION_ICONS, ConfirmationIcons } from '../../tokens/confirmation-icons.token';
import { CommonModule } from '@angular/common';
import { CoreModule } from '@abp/ng.core';
import { LocalizationPipe } from '@abp/ng.core';
@Component({
selector: 'abp-confirmation',
templateUrl: './confirmation.component.html',
styleUrls: ['./confirmation.component.scss'],
imports: [CommonModule, CoreModule],
imports: [CommonModule, LocalizationPipe],
})
export class ConfirmationComponent {
constructor(@Inject(CONFIRMATION_ICONS) private icons: ConfirmationIcons) {}

6
npm/ng-packs/packages/theme-shared/src/lib/components/form-input/form-input.component.ts

@ -1,7 +1,7 @@
import { AbstractNgModelComponent, CoreModule } from '@abp/ng.core';
import { Component, EventEmitter, forwardRef, Input, Output } from '@angular/core';
import { NG_VALUE_ACCESSOR } from '@angular/forms';
import { FormsModule, NG_VALUE_ACCESSOR } from '@angular/forms';
import { CommonModule } from '@angular/common';
import { AbstractNgModelComponent, LocalizationPipe } from '@abp/ng.core';
@Component({
selector: 'abp-form-input',
@ -32,7 +32,7 @@ import { CommonModule } from '@angular/common';
multi: true,
},
],
imports: [CommonModule, CoreModule],
imports: [CommonModule, LocalizationPipe, FormsModule],
})
export class FormInputComponent extends AbstractNgModelComponent {
@Input() inputId!: string;

4
npm/ng-packs/packages/theme-shared/src/lib/components/http-error-wrapper/http-error-wrapper.component.ts

@ -18,14 +18,14 @@ import { CommonModule, DOCUMENT } from '@angular/common';
import { Router } from '@angular/router';
import { fromEvent, Subject } from 'rxjs';
import { debounceTime, filter } from 'rxjs/operators';
import { CoreModule, LocalizationParam } from '@abp/ng.core';
import { LocalizationParam, LocalizationPipe } from '@abp/ng.core';
import { ErrorScreenErrorCodes } from '../../models';
@Component({
selector: 'abp-http-error-wrapper',
templateUrl: './http-error-wrapper.component.html',
styleUrls: ['http-error-wrapper.component.scss'],
imports: [CommonModule, CoreModule],
imports: [CommonModule, LocalizationPipe],
})
export class HttpErrorWrapperComponent implements OnInit, AfterViewInit, OnDestroy {
protected readonly destroyRef = inject(DestroyRef);

4
npm/ng-packs/packages/theme-shared/src/lib/components/loader-bar/loader-bar.component.ts

@ -1,8 +1,8 @@
import { HttpWaitService, RouterWaitService, SubscriptionService } from '@abp/ng.core';
import { ChangeDetectorRef, Component, Input, OnDestroy, OnInit } from '@angular/core';
import { Router } from '@angular/router';
import { combineLatest, Subscription, timer } from 'rxjs';
import { CommonModule } from '@angular/common';
import { combineLatest, Subscription, timer } from 'rxjs';
import { HttpWaitService, RouterWaitService, SubscriptionService } from '@abp/ng.core';
@Component({
selector: 'abp-loader-bar',

3
npm/ng-packs/packages/theme-shared/src/lib/components/loading/loading.component.ts

@ -1,5 +1,4 @@
import { Component, ViewEncapsulation } from '@angular/core';
import { CommonModule } from '@angular/common';
@Component({
selector: 'abp-loading',
@ -33,6 +32,6 @@ import { CommonModule } from '@angular/common';
}
`,
],
imports: [CommonModule],
imports: [],
})
export class LoadingComponent {}

8
npm/ng-packs/packages/theme-shared/src/lib/components/modal/modal.component.ts

@ -1,4 +1,3 @@
import { SubscriptionService, uuid } from '@abp/ng.core';
import {
Component,
DestroyRef,
@ -13,16 +12,17 @@ import {
output,
viewChild,
} from '@angular/core';
import { CommonModule } from '@angular/common';
import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
import { SubscriptionService, uuid } from '@abp/ng.core';
import { NgbModal, NgbModalOptions, NgbModalRef } from '@ng-bootstrap/ng-bootstrap';
import { fromEvent } from 'rxjs';
import { debounceTime, filter } from 'rxjs/operators';
import { Confirmation } from '../../models/confirmation';
import { ConfirmationService } from '../../services/confirmation.service';
import { Confirmation } from '../../models';
import { ConfirmationService } from '../../services';
import { SUPPRESS_UNSAVED_CHANGES_WARNING } from '../../tokens/suppress-unsaved-changes-warning.token';
import { ButtonComponent } from '../button/button.component';
import { DismissableModal, ModalDismissMode, ModalRefService } from './modal-ref.service';
import { CommonModule } from '@angular/common';
export type ModalSize = 'sm' | 'md' | 'lg' | 'xl';

6
npm/ng-packs/packages/theme-shared/src/lib/components/password/password.component.ts

@ -1,7 +1,7 @@
import { Component, forwardRef, Input } from '@angular/core';
import { AbstractNgModelComponent } from '@abp/ng.core';
import { FormsModule, NG_VALUE_ACCESSOR } from '@angular/forms';
import { FormsModule, NG_VALUE_ACCESSOR, ReactiveFormsModule } from '@angular/forms';
import { CommonModule } from '@angular/common';
import { AbstractNgModelComponent } from '@abp/ng.core';
/**
* @deprecated use ShowPasswordDirective directive
@ -9,7 +9,7 @@ import { CommonModule } from '@angular/common';
*/
@Component({
selector: 'abp-password',
imports: [CommonModule, FormsModule],
imports: [CommonModule, FormsModule, ReactiveFormsModule],
templateUrl: `./password.component.html`,
providers: [
{

3
npm/ng-packs/packages/theme-shared/src/lib/components/toast-container/toast-container.component.ts

@ -2,7 +2,6 @@ import { Component, HostListener, Input, OnInit } from '@angular/core';
import { ReplaySubject } from 'rxjs';
import { toastInOut } from '../../animations/toast.animations';
import { Toaster } from '../../models/toaster';
import { CommonModule } from '@angular/common';
import { ToastComponent } from '../toast/toast.component';
@Component({
@ -10,7 +9,7 @@ import { ToastComponent } from '../toast/toast.component';
templateUrl: './toast-container.component.html',
styleUrls: ['./toast-container.component.scss'],
animations: [toastInOut],
imports: [CommonModule, ToastComponent],
imports: [ToastComponent],
})
export class ToastContainerComponent implements OnInit {
toasts$!: ReplaySubject<Toaster.Toast[]>;

7
npm/ng-packs/packages/theme-shared/src/lib/components/toast/toast.component.ts

@ -1,12 +1,13 @@
import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';
import { Toaster } from '../../models/toaster';
import { CommonModule } from '@angular/common';
import { CoreModule } from '@abp/ng.core';
import { Toaster } from '../../models/toaster';
import { LocalizationPipe } from '@abp/ng.core';
@Component({
selector: 'abp-toast',
templateUrl: './toast.component.html',
styleUrls: ['./toast.component.scss'],
imports: [CommonModule, CoreModule],
imports: [CommonModule, LocalizationPipe],
})
export class ToastComponent implements OnInit {
@Input()

2
npm/ng-packs/packages/theme-shared/src/lib/directives/loading.directive.ts

@ -14,7 +14,7 @@ import {
} from '@angular/core';
import { Subscription, timer } from 'rxjs';
import { take } from 'rxjs/operators';
import { LoadingComponent } from '../components/loading/loading.component';
import { LoadingComponent } from '../components';
@Directive({
selector: '[abpLoading]',

46
npm/ng-packs/packages/theme-shared/src/lib/theme-shared.module.ts

@ -1,22 +1,31 @@
import { DatePipe } from '@angular/common';
import { ModuleWithProviders, NgModule } from '@angular/core';
import { NgxValidateCoreModule } from '@ngx-validate/core';
import { NgxDatatableModule } from '@swimlane/ngx-datatable';
import { BreadcrumbItemsComponent } from './components/breadcrumb-items/breadcrumb-items.component';
import { BreadcrumbComponent } from './components/breadcrumb/breadcrumb.component';
import { ButtonComponent } from './components/button/button.component';
import { ConfirmationComponent } from './components/confirmation/confirmation.component';
import { HttpErrorWrapperComponent } from './components/http-error-wrapper/http-error-wrapper.component';
import { LoaderBarComponent } from './components/loader-bar/loader-bar.component';
import { LoadingComponent } from './components/loading/loading.component';
import { ModalCloseDirective } from './components/modal/modal-close.directive';
import { ModalComponent } from './components/modal/modal.component';
import { ToastContainerComponent } from './components/toast-container/toast-container.component';
import { ToastComponent } from './components/toast/toast.component';
import { LoadingDirective } from './directives/loading.directive';
import { NgxDatatableDefaultDirective } from './directives/ngx-datatable-default.directive';
import { NgxDatatableListDirective } from './directives/ngx-datatable-list.directive';
import { RootParams } from './models/common';
import {
BreadcrumbItemsComponent,
BreadcrumbComponent,
ButtonComponent,
ConfirmationComponent,
HttpErrorWrapperComponent,
LoaderBarComponent,
LoadingComponent,
ModalComponent,
ToastContainerComponent,
ToastComponent,
ModalCloseDirective,
PasswordComponent,
CardModule,
FormInputComponent,
FormCheckboxComponent,
} from './components';
import {
LoadingDirective,
NgxDatatableDefaultDirective,
NgxDatatableListDirective,
AbpVisibleDirective,
DisabledDirective,
} from './directives';
import { RootParams } from './models';
import {
provideAbpThemeShared,
withConfirmationIcon,
@ -25,11 +34,6 @@ import {
withValidationBluePrint,
withValidationMapErrorsFn,
} from './providers';
import { PasswordComponent } from './components/password/password.component';
import { CardModule } from './components/card/card.module';
import { AbpVisibleDirective, DisabledDirective } from './directives';
import { FormInputComponent } from './components/form-input/form-input.component';
import { FormCheckboxComponent } from './components/checkbox/checkbox.component';
export const THEME_SHARED_EXPORTS = [
BreadcrumbComponent,

Loading…
Cancel
Save